关于代理图形的问题,可能很多人都不清楚代理图形是什么。下面把我知道的一点东西写下来,希望能对大家有帮助。
有时我们在打开别人发过来的CAD图纸,会弹出一个“代理信息”提示框,问是否显示代理图形,如下图所示:
从提示对话框中信息可以看出,图形中包含了由objectARX应用程序创建的自定义对象,无法正常显示,让你选择代理图形的显示方式。
那到底什么是自定义对象,什么又是代理图形呢?
在CAD中提供了一些基本的对象,例如直线、圆、弧、多段线等等,当我们选中这些对象后,打开属性框(CTRL+1)可以看到这些对象的类型和相关参数,并可以通过调整参数来编辑图形。
为了扩展CAD行业应用和提高操作效率,CAD提供了二次开发接口,开发者可以根据特定行业的需求开发一些工具,利用这些工具可以创建出由基本图形组合而成的复杂图形或进行一些特殊编辑操作。开发者可以定义一些与基本对象类似的参数化对象,这样的对象就是自定义对象。
国内比较常用的天正建筑、浩辰建筑等都使用了自定义对象的技术,这些专业软件中的墙体、门窗,甚至标注、符号等都采用了自定义对象。以浩辰建筑的墙体为例,下图是选中墙体后夹点和特性的显示。
从属性框可以看到墙体不仅有宽、高的参数,还有墙体的外形、特征、用途、材料的信息,而且不同材质的墙体的优先级不同,这会决定不同材质墙体相交时哪种墙体会被打断。墙体还增加了一些三角形的夹点,通过拖动这些夹点可以改变墙体的宽度、长度等,而且修改的时候,关联的墙体和门窗也会联动。
专业软件充分利用自定义对象和反应器相关的技术,使得绘制和修改图纸效率成倍提高。但自定义对象也会带来负作用,那就是兼容性问题。
如果安装了相应的专业软件或解释器(Enabler)插件,自定义对象的可以正常显示和打印,也可以很方便地进行参数化编辑。但如果CAD里没有安装相应的解释器,CAD将无法识别这些自定义对象,不仅无法进行参数化编辑,有时甚至还会无法显示。
没有解释器时自定义对象是否能正确显示取决于是否设置了代理图形(PROXY或者叫替代显示图形),代理图形通常跟自定义对象的显示效果是相同的。如果设置了代理图形,那图形的显示和打印都基本正常,但如果没有定义代理图形,这些图形将不会显示。
天正建筑早期版本的自定义对象就没有定义代理图形,因此在纯CAD上打开时会发现很多图形都看不到了,如下图所示。
对比图纸预览和打开后图纸的显示,会发现很多图形都消失,那些没有显示的图形就是没有代理图形的自定义对象。
浩辰建筑的自定义对象一开始就定义了代理图形,在纯CAD上打开时显示效果基本正常。天正建筑的高版本才添加了选项,可以设置是否生成代理图形。
选中图中的代理图形后,属性框中显示的对象类型是:ACAD_PROXY_ENTITY(ACAD代理实体),代理实体无法进行移动、复制等基本操作,不能作为修剪边界修剪其他图形,能做的操作就是删除、炸开。
代理实体炸开后就会变成基本图形,可以用常规的修改命令进行编辑。但是代理实体一旦炸开并保存后,就无法再返回原来的状态了,即使到有解释器的CAD软件上也无法再进行参数化编辑了。
当打开图纸时出现“代理信息”提对话框时,如果想编辑这些图形,最好能先在CAD上安装相应的解释器或专业软件。向下拖动“代理信息”提示对话框右侧的滚动条,可以看到代理实体的详细信息,如下图所示。
在对话框中会显示自定义对象的相关信息,例如应用程序名,网址等,通过这些信息我们可以知道需要什么解释器或插件,到哪儿去找这个专业软件和插件。
除了设置是否显示代理图形外,还可以选择“显示代理边框”,设置不同选项的效果对比如下:
不显示代理图形 显示代理图形 显示代理边框
在AUTOCAD的选项(OP)对话框中可以设置是否显示“代理信息”并设置默认的显示选项,如下图所示。