用 DeepDraw 几何引擎开发建筑设计软件(六):创建画线工具

用 DeepDraw 几何引擎开发建筑设计软件(六):创建画线工具

系列文章

  1. SketchUp 替代
  2. 下载DeepDraw
  3. 用代码绘制线段
  4. 用代码绘制面
  5. 创建选择工具
  6. 创建画线工具(本文)
  7. 创建矩形工具
  8. 创建删除工具

介绍

铅笔工具,是用来在场景里任意2点画线的,当然也包括了吸附到顶点/中点/面/交差点的能力,这里要用到另一个类,CInputPointFinder,拾取工具是用来选择对象的,而这个类是用来选择吸附点的,并且这个类最终也调用了CPickHelper的功能

创建SelectTool

直接上源代码,这是最简单的一个工具类,目的是演示,如何使用CPickHelper

python 复制代码
    def do_input_inference(self, px, py):
        self.input.Reset()
        
        self.snap_axis = 8
        
        #=======================
        # Pick
        if su_algo.USE_SNAP_MODE:
            ok = self.input.Inference(px, py, None, None )
        else:
            if self.prev_point and self.first_point and not self.prev_point.IsEqul(self.first_point):
                self.input.AddRefPoint(self.first_point)
            ok = self.input.Inference(px, py, None, self.prev_point )
        assert ok
        new_point = self.input.Position()
        
        return new_point
相关推荐
AI 编程助手GPT1 小时前
Python 备份 SQLite:为什么复制了 .db,恢复后还是少数据?
人工智能·python·ai·chatgpt
狗都不学爬虫_1 小时前
AI逆向 - 天御无感点击验证(补+纯)
爬虫·python·网络爬虫
529宝宝起名网2 小时前
用 Python 开发历史名字查询与起名灵感工具:从古籍人物数据库到名字文化故事生成
开发语言·前端·python
用户298698530142 小时前
Python 将 HTML 转换为 Word 文档的实践指南
python·html·api
维克兜率天2 小时前
【维克】模块3总结:从一行空数据,到一个能跑的模型
python·深度学习·算法
飞Link2 小时前
定积分理论与 Python 仿真完全指南
python·算法
小静AI工程实验室2 小时前
Python 爬虫翻页为何重复、漏数据?SQLite 复现 OFFSET、复合游标与快照的 8 项检查
爬虫·python·sqlite
夜雪一千2 小时前
如何使用Python实现音频转文本(ASR语音识别)
python
SunnyDays10113 小时前
使用 Python 将 PowerPoint 转换为视频(无需安装 Microsoft PowerPoint)
python·powerpoint·ppt 转 动画·ppt 转 mp4·ppt 转 wmv·幻灯片转动画·幻灯片转 mp4