网站seo教材,东莞服务行业推广软件,110平米三室一厅简装,wordpress免费主题演示数据在CAD编程中往往需要用选择集#xff0c;我们往往不知道相应图元对应的名称具体名字。比如我想选择所有的圆#xff0c;ftype0,fdata应该是什么呢#xff1f;是circle#xff0c;acdbcircle#xff0c;还是acadcircle?
circle是一个对象#xff0c;circle的vba类名为Ac… 在CAD编程中往往需要用选择集我们往往不知道相应图元对应的名称具体名字。比如我想选择所有的圆ftype0,fdata应该是什么呢是circleacdbcircle还是acadcircle?
circle是一个对象circle的vba类名为AcadCircle。 这时我们只需在命令栏输入以下lisp代码按下空格键在选择图元即可。
(setq en_data(entget(car(entsel)))) 命令: (setq en_data(entget(car(entsel)))) 选择对象: ((-1 . 图元名: -155b58) (0 . CIRCLE) (330 . 图元名: -157308) (5 . 26ED) (100 . AcDbEntity) (67 . 0) (410 . Model) (8 . 0) (100 . AcDbCircle) (10 5.2 3.9 0.0) (40 . 4682.73) (210 0.0 0.0 1.0))
由此可知在选择集选择圆时,fadata应为circle 。
上图信息中还有个AcDbCircle对比circleacadcircle,看着这三个是不是感觉有点懵什么时候用哪个
acadcircle 是在vba语言中特有的类名它的上级对象是acadentity我们在定义对象时需要用的名称。如下图 而AcDbCircle是此图元在cad文件数据库中的名称在vba中msgbox ent.objectname方法可弹出ent的类名关于cad数据库本博主另有文章详细讲解。 由此可见在选择集名称中用circle在定义对象时用acadcircle而在代码中的调用objectname属性时用acdbcircle。好吧确实有点乱希望大家不要用错了。