在CAD的二次开发中,有时会使用JIG技术来实现操作的动态性、交互,最常见的比如说是在CAD中定制自己的移动和复制,当然要保持CAD中原有的动态显示效果。

在JIG中我们可以继承EntityJig和DrawJig,对于这两个类,那这两个类有什么区别呢?他们的使用场合又有什么区别呢?

其实,他们之间在操作一些简单的实体的时候是没有多大区别的,硬要说区别的话,那就是在实现一个相同功能时DrawJig比EntityJig的代码简单一些。(注意:是指在操作简单的实体的时候,比如实体的数量就一个)。

EntityJig:一般用于图元实体的拖动,要求先生成实体Entity

protected override bool Update()
        {
            throw new NotImplementedException();
        }

protected override SamplerStatus Sampler(JigPrompts prompts)
        {
            throw new NotImplementedException();
        }

DrawJig:一般用于复杂图形的拖动

protected override bool WorldDraw(Autodesk.AutoCAD.GraphicsInterface.WorldDraw draw)
        {
            throw new NotImplementedException();
        }

protected override SamplerStatus Sampler(JigPrompts prompts)
        {
            throw new NotImplementedException();
        }

在拖动一个实体的时候,不管是用EntityJig还是DrawJig效果都一样,但是当我们在处理多个实体的移动,我们要求鼠标可以实时动态显示要拖动的多个实体,这点,EntityJig却无法实现了,但如果是DrawJig却很容易实现。(下图是用DrawJig实现)

而且对于动态生成实体(比如指定一个圆心,动态生成一个圆),用DrawJig中的WorlDraw可以灵活控制实现生成。

相比之下,是不是发现DrawJig优胜于EntityJig(个人理解).

下面贴出上图实现的代码:

代码

 1    #region  DrawJig动态拖动多个实体
 2       public   class  DrawJigEnt : DrawJig
 3      {
 4           // 变量
 5          Point3d oldPt; // 实体移动之前的位置
 6          Point3d newPt; // 实体移动之后的位置
 7          Vector3d v; // 实体移动的向量
 8 
 9          List < Entity >  ents </

CAD(C#)——浅谈JIG之EntityJigDrawJig相关推荐

  1. 计算机辅助设计对提升产品质量,浅谈CAD技术与计算机辅助设计的应用

    浅谈CAD技术与计算机辅助设计的应用 来源:用户上传 作者: 杨思宇 [摘 要]随着社会经济的不断发展与进步,各领域的技术也不断的进行着革新.本文以计算机辅助设计当中的开发出的成组技术为主,对成组技术 ...

  2. 当代计算机技术在建筑设备中的应用,计算机技术在建筑设计中应用浅谈.doc

    计算机技术在建筑设计中应用浅谈 计算机技术在建筑设计中应用浅谈 [摘要]计算机技术在建筑设计中的应用有效地提高建筑设计工作效率和设计的准确度.本文就当前建筑设计中比较常用的计算机技术进行了浅谈,以期能 ...

  3. 微型计算机在机械设计中的应用,浅谈计算机技术在机械设计制造及自动化中的应用.docx...

    浅谈计算机技术在机械设计制造及自动化中的应用 当前科学技术与机械制造与自动化技术相互融合,将多种学科中的复合型技术加以整合,形成综合性的机械设计制造自动化学科.作为机械制造的核心内容,自动化在人们的生 ...

  4. 学习笔记--浅谈LoRa与LoRaWAN

    浅谈LoRa与LoRaWAN 1.什么是LoRa LoRa是semtech公司创建的低功耗局域网无线标准,低功耗一般很难覆盖远距离,远距离一般功耗高,要想马儿不吃草还要跑得远,好像难以办到. LoRa ...

  5. 单一修改高程值lisp_浅谈AutoCAD中修改高程的四种方法

    浅谈 AutoCAD 中修改高程的四种方法 摘 要: 在使用 AutoCAD 进行数字化成图工作中,经常遇到线划的标高不为零,及高程点的值与实地不符,需要对其进行修改等情况,结合实 际工作经验,简单介 ...

  6. 计算机集成制造系统C MS论文,浅谈自动化机械制造及发展毕业论文.docx

    文档介绍: 浅谈自动化机械制造及发展毕业论文.docx浅谈自动化机械制造及发展毕业论文目录第1章绪论 21.1制造背景 21」」按规模大小FMS可分为如下4类 3第2章自动化技术 41自动化关键技术 ...

  7. 【JY】浅谈有限元分析中的力学与工程思维

    前不久,受邀请希望我针对有限元计算中的工程思维这个主题写点东西,拿到题目后突然意识到这个"命题作文"比较难写. 一方面,有限元分析应用面很广,涉及行业众多,各行业关注的具体问题包罗 ...

  8. 浅谈之互联网赚钱的方法

    在互联网上赚钱,努力做得的人都成功了,不过还是有很多人只是把互联网当作一个娱乐的工具看待,却没有想过它能帮你赚钱,即使我们有正经的工作职业,也可以在下班之余利用互联网来赚点生活费.下面可以看看一些互联 ...

  9. 数字化时代 需要利用计算机辅助,浅谈计算机辅助工业设计中的人机交互

    浅谈计算机辅助工业设计中的人机交互 论文关键词:工业设计 计算机辅助工业设计 人机交互 论文摘要:计算机辅助工业设计是工业设计未来的发展方向,本文从工业设计及计算机辅助工业设计的一般含义出发,探究计算 ...

最新文章

  1. 求表达式 f(n)的结果
  2. HTML-DIV布局
  3. eclipse-python插件。如果online update的话,经常会失败,所以offline比较靠谱
  4. 成功解决ModuleNotFoundError: No module named ‘torch._C‘
  5. EJBCA使用之注册用户及创建证书
  6. android——fragment长时间home或者锁屏java.lang.IllegalArgumentException:No view found for id for.......
  7. SQL基础操作_8_基础概念
  8. android黑色半透明dialog背景,Android开发中Dialog半透明背景消失
  9. gcc参数 -i, -L, -l, -include
  10. server 2008 R2+IIS7.5安装cacti实验
  11. uefi能重置系统吗_无惧UEFI, Win10也能玩转一键自动还原
  12. python可以下载百度文库_用Python爬取百度文库0下载券的免费文档详细步骤,附可执行软件...
  13. 其实就是为了能有字幕特效,用MeGUI + AVS压制PSP MP4AVC视频02 - 安装准备篇
  14. 福州市2020计算机专业高中排名,2019-2020全国计算机专业大学排名
  15. [Excel 替换数字/数值格式混乱] ,txt协助解决
  16. Fiducial marker (Aruco)
  17. 力扣 旋转字符串 C语言 题解
  18. 商汤实习面试-见习视觉研究员面试
  19. 原生JS制作最简单轮播图(超清晰思路)
  20. 万字详解5G车联网技术

热门文章

  1. Interval Bound Propagation (IBP)
  2. Verilog 和VHDL有符号数和无符号数相关运算
  3. 《京东技术解密》有奖试读,大奖等你来拿!--已结束
  4. poj 3233 矩阵乘法(分块矩阵)
  5. Java编程开发好学吗 怎样才能学好Java编程
  6. ZOJ1654.Place the Robots放置机器人——最大独立集
  7. linux的命令vim,Linux命令:vi | vim命令
  8. Android最好用的底部导航栏开发
  9. 【PC大变身】Android+Win8.1双系统
  10. 数据库关键字作为字段如何处理