明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2020|回复: 10

CAD标注舍入的相关问题~~

[复制链接]
发表于 2011-10-6 16:36:18 | 显示全部楼层 |阅读模式
本帖最后由 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”?

发表于 2011-10-6 22:03:20 | 显示全部楼层
用系统变量dimrnd就可以了
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2011-10-6 16:38:14 | 显示全部楼层





 楼主| 发表于 2011-10-6 18:37:13 | 显示全部楼层
……………………求高手啊
发表于 2011-10-6 21:56:17 | 显示全部楼层
试试(/(fix (*(cdr (assoc 42(setq s1 (entget (car(entsel))))))100))100.0)
 楼主| 发表于 2011-10-7 00:13:41 | 显示全部楼层
gbhsu 发表于 2011-10-6 22:03
用系统变量dimrnd就可以了

我是要将已经标注的舍入修改?请问这个怎么通过系统变量达到此目的?
 楼主| 发表于 2011-10-7 00:14:52 | 显示全部楼层
gbhsu 发表于 2011-10-6 22:03
用系统变量dimrnd就可以了

就是修改已标注好的系统变量“dimrnd"……
 楼主| 发表于 2011-10-7 00:17:08 | 显示全部楼层
yjr111 发表于 2011-10-6 21:56
试试(/(fix (*(cdr (assoc 42(setq s1 (entget (car(entsel))))))100))100.0)

比如说原有的42群码为(42 . 850.474),我成功修改了其中的数值,变为(42 . 666.512).经过entmod之后没啥变化啊……

点评

修改后就要取1组码了  发表于 2011-10-7 09:44
 楼主| 发表于 2011-10-7 12:54:30 | 显示全部楼层
本帖最后由 sky__tion 于 2011-10-7 12:55 编辑
yjr111 发表于 2011-10-6 21:56
试试(/(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组码”啊??

点评

有没有entmod和entupd过?  发表于 2011-10-7 13:16
发表于 2011-10-7 13:18:20 | 显示全部楼层
(defun c:test ()(/(fix (*(cdr (assoc 42(setq s1 (entget(setq e1 (car(entsel)))))))100))100.0) (entmod s1)(entupd e1))
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-1-22 18:58 , Processed in 0.229019 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表