如何用lisp程序提取尺寸标注的数值内容
我使用(setq ed1(entget (car(entsel"hi:"))))语句可以得到尺寸标注的数据列表:<BR>((-1 . <图元名: 40062eb0>) (0 . "DIMENSION") (330 . <图元名: 40062cf8>) (5 . "7E") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "0") (100 . "AcDbDimension") (2 . "*D2") (10 12.0 4.21388 0.0) (11 6.0 6.08888 0.0) (12 0.0 0.0 0.0) (70 . 32) (1 . "") (71 . 5) (72 . 1) (41 . 1.0) (42 . 12.0) (52 . 0.0) (53 . 0.0) (54 . 0.0) (51 . 0.0) (210 0.0 0.0 1.0) (3 . "ISO-25") (100 . "AcDbAlignedDimension") (13 0.0 -0.625 0.0) (14 12.0 -0.625 0.0) (15 0.0 0.0 0.0) (16 0.0 0.0 0.0) (40 . 0.0) (50 . 0.0) (100 . "AcDbRotatedDimension"))<BR>但是其中没有显示出标注的数值。<BR>用什么方法可以得到标注的数值呢?<BR>谢谢! 用VLISP函数可以实现(setq obj (vlax-Ename->Vla-Object (car (entsel))))<BR>(setq len (vla-get-Measurement obj)) (42 . 12.0)
这个不是标注的数值吗? 谢谢二位的帮助。
还要加强对数据表的理解。帮助中的说明太难懂了,哪里有通俗的讲解呢? <p>如果尺寸的值被修改了,如</p><p>原来实际尺寸为1200, 可被人为修改为2500,</p><p>用2楼的方法,提取出来的还是1200!</p><p>请问:用VLISP函数可以把2500提取出来吗?!</p> jaminth发表于2008-7-22 23:36:00static/image/common/back.gif如果尺寸的值被修改了,如原来实际尺寸为1200, 可被人为修改为2500,用2楼的方法,提取出来的还是1200!请问:用VLISP函数可以把2500提取出来吗?!
<p>(setq len (vla-get-textoverride obj))</p> <p>用VLISP函数可以直接修改尺寸的值(文字)吗?!</p><p>比如测量尺寸是1200,我想直接用VLISP函数改成1300?!</p> <p>这个问题刚好我提过类似的,已经有人解答,目前我也正在用,你可以参考下下</p><p><a href="http://bbs.mjtd.com/forum.php?mod=viewthread&tid=68788&replyID=100302&skin=1">http://bbs.mjtd.com/forum.php?mod=viewthread&tid=68788&replyID=100302&skin=1</a></p><p>里面有个小问题我在回帖也说明了,只要增加个条件判断就可以解决了</p>
页:
[1]