CAD标注舍入的相关问题~~
本帖最后由 sky__tion 于 2011-10-6 16:41 编辑不能使用文字代替
目的:使线性/对齐标注所显示结果如:32.965显示32.96;0.089显示0.08;0.081显示0.08……(不要经过四舍五入,直接显示小数点后2位)
方法:本人想要利用“特性”中标注舍入的功能通过计算达到目的。
问题:取得“线性标注”的属性列表中,貌似没有标注舍入啊……
设定标注舍入值为0.0095,取得的属性列表中无0.0095一项……
((-1 . <图元名: 7ef036f8>) (0 . "DIMENSION") (5 . "257") (102 .
"{ACAD_XDICTIONARY") (360 . <图元名: 7ef03760>) (102 . "}") (102 .
"{ACAD_REACTORS") (330 . <图元名: 7ef037b0>) (102 . "}") (330 . <图元名: 7ef01cf8>)
(100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "0") (100 . "AcDbDimension")
(280 . 0) (2 . "*D3") (10 2411.15 854.081 0.0) (11 2156.67 867.206 0.0) (12 0.0
0.0 0.0) (70 . 32) (1 . "") (71 . 5) (72 . 1) (41 . 1.0) (42 . 508.964) (73 .
0) (74 . 0) (75 . 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 1902.19 827.971 0.0) (14
2411.15 827.971 0.0) (15 0.0 0.0 0.0) (16 0.0 0.0 0.0) (40 . 0.0) (50 . 0.0)
(100 . "AcDbRotatedDimension"))
询问:
①舍入的代码是多少?如果没有代码,该如何查找替换?
②除了标注舍入的方法,禁用文字代替,还有没有其他方法可以令“32.965”示为“32.96”?
用系统变量dimrnd就可以了
……………………求高手啊 试试(/(fix (*(cdr (assoc 42(setq s1 (entget (car(entsel))))))100))100.0) gbhsu 发表于 2011-10-6 22:03 static/image/common/back.gif
用系统变量dimrnd就可以了
我是要将已经标注的舍入修改?请问这个怎么通过系统变量达到此目的? gbhsu 发表于 2011-10-6 22:03 static/image/common/back.gif
用系统变量dimrnd就可以了
就是修改已标注好的系统变量“dimrnd"…… yjr111 发表于 2011-10-6 21:56 static/image/common/back.gif
试试(/(fix (*(cdr (assoc 42(setq s1 (entget (car(entsel))))))100))100.0)
比如说原有的42群码为(42 . 850.474),我成功修改了其中的数值,变为(42 . 666.512).经过entmod之后没啥变化啊…… 本帖最后由 sky__tion 于 2011-10-7 12:55 编辑
yjr111 发表于 2011-10-6 21:56 http://bbs.mjtd.com/static/image/common/back.gif
试试(/(fix (*(cdr (assoc 42(setq s1 (entget (car(entsel))))))100))100.0)
原:
((-1 . <图元名: 7ef036f8>) (0 . "DIMENSION") (5 . "257") (102 .
"{ACAD_XDICTIONARY") (360 . <图元名: 7ef03760>) (102 . "}") (102 .
"{ACAD_REACTORS") (330 . <图元名: 7ef037b0>) (102 . "}") (330 . <图元名: 7ef01cf8>)
(100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "0") (100 . "AcDbDimension")
(280 . 0) (2 . "*D3") (10 2411.15 854.081 0.0) (11 2156.67 867.206 0.0) (12 0.0
0.0 0.0) (70 . 32) (1 . "") (71 . 5) (72 . 1) (41 . 1.0) (42 . 508.964) (73 .
0) (74 . 0) (75 . 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 1902.19 827.971 0.0) (14
2411.15 827.971 0.0) (15 0.0 0.0 0.0) (16 0.0 0.0 0.0) (40 . 0.0) (50 . 0.0)
(100 . "AcDbRotatedDimension"))
修改后:
((-1 . <图元名: 7ef036f8>) (0 . "DIMENSION") (5 . "257") (102 .
"{ACAD_XDICTIONARY") (360 . <图元名: 7ef03760>) (102 . "}") (102 .
"{ACAD_REACTORS") (330 . <图元名: 7ef037b0>) (102 . "}") (330 . <图元名: 7ef01cf8>)
(100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "0") (100 . "AcDbDimension")
(280 . 0) (2 . "*D3") (10 2411.15 854.081 0.0) (11 2156.67 867.206 0.0) (12 0.0
0.0 0.0) (70 . 32) (1 . "") (71 . 5) (72 . 1) (41 . 1.0) (42 . 895.964) (73 .
0) (74 . 0) (75 . 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 1902.19 827.971 0.0) (14
2411.15 827.971 0.0) (15 0.0 0.0 0.0) (16 0.0 0.0 0.0) (40 . 0.0) (50 . 0.0)
(100 . "AcDbRotatedDimension"))
可最后还是显示
508.964
以上是不是就是“1组码”啊??
(defun c:test ()(/(fix (*(cdr (assoc 42(setq s1 (entget(setq e1 (car(entsel)))))))100))100.0) (entmod s1)(entupd e1))
页:
[1]
2