liminnet 发表于 2008-6-17 19:50:00

hzj526 发表于 2008-6-18 11:13:00

楼主这是什么意思?

pipi2 发表于 2008-6-18 11:47:00

?????没搞懂

liminnet 发表于 2008-6-18 17:28:00

caoyin 发表于 2008-6-18 17:45:00

<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (COND<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ((= newTolerance 0)(setq newTolerance acDimPrecisionZero))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ((= newTolerance 1)(setq newTolerance acDimPrecisionOne))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ((= newTolerance 2)(setq newTolerance acDimPrecisionTwo))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ((= newTolerance 3)(setq newTolerance acDimPrecisionThree))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ((= newTolerance 4)(setq newTolerance acDimPrecisionFour))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ((= newTolerance 5)(setq newTolerance acDimPrecisionFive))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ((= newTolerance 6)(setq newTolerance acDimPrecisionSix))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ((= newTolerance 7)(setq newTolerance acDimPrecisionSeven))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ((= newTolerance 8)(setq newTolerance acDimPrecisionEight))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (t(progn (princ "标注精度未改变")(VL-EXIT-WITH-VALUE 0)))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )</p><p>上面的代码为什么这么复杂,直接改为</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (if (not (and newTolerance<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (&gt;= newTolerance 0)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (&lt;= newTolerance 8)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (progn (princ "标注精度未改变")(VL-EXIT-WITH-VALUE 0))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )</p><p>就可以了,因为</p><p>acDimPrecisionZero=0</p><p>acDimPrecisionOne=1</p><p>...</p>

caoyin 发表于 2008-6-18 17:47:00

本帖最后由 作者 于 2008-6-18 18:03:23 编辑

学会怎么将选择集转换为图元列表,自己就可以改了

liminnet 发表于 2008-6-18 17:53:00

ZZXXQQ 发表于 2008-6-18 22:57:00

本帖最后由 作者 于 2008-6-20 16:15:23 编辑


(defun C:djd ()
(VL-LOAD-COM)
(princ"\n程序功能:标注尺寸中数字的小数位精度"); 在模型空间中选择标注对象
(if (and (setq newTolerance (getint "\n输入标注新的公差精度: "))
          (<= 0 newTolerance 8)) (progn
(princ "标注精度已经设定为: ")
(princ newTolerance)
(princ "位小数")
(if (and (princ "\n选择要修改精度的尺寸标注: ")
         (setq ss (ssget '((0 . "DIMENSION"))))) (progn
   (setq i 0)
   (repeat (sslength ss)
    (setq dimObj (ssname ss i) i (1+ i))
    (setq dimObj (vlax-ename->vla-object dimObj))
    (vla-put-PrimaryUnitsPrecision dimObj newTolerance); 确定公差精度的改变
    (vla-put-SuppressTrailingZeros dimObj :vlax-false);;; 读取并显示替代标注公差精度
    (setq newTolerance (vla-get-PrimaryUnitsPrecision dimObj))
   )
))
)
(princ "标注精度未改变")
)
(princ)
)

liminnet 发表于 2008-6-20 10:15:00

danxingpen 发表于 2008-6-20 15:01:00

(&gt;= 8  newTolerance 0)
页: [1] 2
查看完整版本: 还是这个版块的版主好,求改可以框选的lsp,在另外一个版块晒了好几天啦,人都没见过