1,引 言

autocad有非常强大的图形编辑功能,但是与gis系统软件arc/info、mapinfo相比,其属性库功能相对较弱。在autocad数据库中,只是记录着表示图形元素的几何位置、形状、大小的几何坐标和表示图形元素性质(如颜色、层号等)的辅助数据。如果能将图形元素的其它属性数据添加到数据库中,将大大提高autocad的内部属性库功能,从而更有效的对autocad图形数据进行管理。而应用扩展图元数据就可以圆满完成这一功能。

2 扩展图元数据  利用扩展图元数据,或称xdata,用户能将用户定义数据添加到任何autocad图元中。用户可以用xdata向存在图元增添数据位或有效地创建唯一类型的图元。  作为一个应用程序,autocad处理许多类型的信息,包括字符串、点、实数和整数。数据类型作为一个小囊(capsule),保存相关信息,这样构造图元或管理其在图形中的用途。autocad支持在基本图元信息里保存每类原始数据,可是通用图元数据的数据组里的数值和类型是有限的,而xdata能够消除这些限制并使用户能够定义自己的数据类型。这样就可以与图元一起保存用户自己的信息,从而为定制autolisp提供了强有力的手段。2.1 扩展图元数据码  autocad提供对所有普通数据类型的存储支持,以及对autocad有特殊意义的类型(如dxf)的支持,xdata的dxf组与基本图元数据的dfx组相比,其基本部分相同,但xdata的dfx组用高于1000的组码(见附表)。

附表 扩展图元数据dfx组码

将新xdata数据表接在原图元数据表后,并连接到edx.

command:(entmod edx)

以联合后的表数据更新图元,并返回该表。

2.3 访问扩展图元数据  访问扩展图元数据时,必须为entget函数提供应用程序名appid。如不提供,则只返回常用图元数据。应用程序名包含在一个表里,所以可以给entget函数提供几个应用程序名。当提供给entget函数一个或多个应用程序名时,常用图元数据和所有应用程序名的扩展图元数据都将返回。还可用通配符,如solar,获取所有以solar开始的应用程序的xdata数据,或用来获取所有应用程序的xdata。例如:command:(entget(entlast))  返回上一个实体的图元数据表,但无xdata.command:(entget(entlast)′(″solar5″))  返回上一个实体的应用程序名为solar5的图元数据表和xdata.command:(entget′(″*″)  返回所有应用程序的图元数据表和xdata.3 扩展图元数据的应用  扩展图元数据几乎能做到autocad图形中的任何事情。一旦扩展数据附加在图元数据上,许多程序可以查询、更新或分析信息。

a 利用扩展图元数据,可以实现图形数据与属性数据的连接,从而可以实现信息的管理、查询、分析、决策,大大弥补cad系统图形编辑功能强大,而属性库功能相对较弱的不足。例如:在地形图或地籍图中,可以给控制点符号添加扩展数据,如点号、等级、通视点号、x坐标、y坐标、h高程、点位精度等。之后,就可以以各种方式对控制点进行条件查询、修改等操作。

b 利用扩展图元数据,可以自动生成各类图元,从而达到绘图自动化,大大减少人工干预,提高工作效率。例如:可以将待填充区域的边界附加上扩展数据,如bj1—1、bj1—2等,用以标定区域边界及边界序号属性,然后用程序搜寻出属性为bj1—?的边界线,就可以将该区域以选定图案进行自动填充。

c 利用扩展图元数据,可以自动判别地物(图元)的属性,从而达到制图自动综合。例如:将1∶500地形图或地籍图进行1∶5000或更小比例尺缩绘时,一些扩展数据类型注为“普通地物”,且长度、面积在一定范围之内的,可以自动舍弃;而另一些扩展数据类型注为“独立地物”的,无论其大小,都要保留。又如,在1∶500,1∶1000,1∶2000等比例尺的地形图、地籍图之间进行缩绘时,陡坎(以未加固陡坎为例)是不能按比例缩绘的。陡坎的上沿实线可以按比例绘制,而与上沿实线垂直的陡坎投影线却有固定尺寸,高1mm,间距1.5mm。如果给陡坎附加上扩展数据,用dk1—1表示陡坎1的上沿实线, 以dk1—2表示陡坎1的投影线,那么在缩绘时,就可以用程序判定出哪些是陡坎1的上沿实线,并且按比例绘制:判定出哪些是陡坎1的投影线,并且删除,然后依据陡坎1的上沿实线按高度、间距尺寸自动生成投影线,并且附以扩展数据dk1—2。如上所说,利用扩展图元数据就可以实现陡坎等地物的制图自动综合了。  本文探讨了autocad中扩展图元数据dxf组码的形式,扩展图元数据的添加、访问和使用,展望其应用前景,认为扩展图元数据为autocad应用程序的开发提供了前所未有的威力。用adata数据可以让用户的应用程序从数据类型束缚中解放出来,使应用程序能够完成更多、更加先进的新功能。作者在实际中工作中利用xdata开发了一些应用程序,获得了令人满意的效果。在实践过程中如果善用xdata,可以开发出许多新功能,在地图制图和信息工程等领域将具有广阔的应用前景。

原创文章版权归作者所有。本平台对转载的内容持中立观点,仅供读者参考,本平台将不承担任何责任。如文章图片涉及版权问题,请与我们联系,我们将在第一时间处理,谢谢!点 关注 置顶公众号,更多精彩的内容等着你。