求助移动物件到坐标值取整后的位置
本帖最后由 alwtyp 于 2013-1-25 21:25 编辑工作经常碰到各种图形物件的坐标尺寸不是整数的,通常都是每个物件单独移动一下。现在写一个程序,如附件中,把所选听物件移动到取整后的坐标值。
但是执行后物件完全没有移动,请各位高手帮忙指点一下,问题出在哪里?
(defun C:Mk(/ Osmode Dec All N Ment Ent Ptmax Ptmin Ptmin-X Ptmin-Y Nmin)
(setvar 'Cmdecho 1)
(setq Osmode (Getvar "Osmode"))
(setvar 'Osmode 1)
(setq Dec (Getint "\n 请输入小数字数:"))
(princ "\n 请选择聚合线:")
(setq All (ssget) N 0)
(repeat (sslength All)
(setq Ment (ssname All N)
Ent (entget Ment))
(vla-getboundingbox (vlax-ename->vla-object Ment) 'Minpoint 'Maxpoint)
(setq Ptmin (vlax-safearray->list Minpoint));取得聚合线的最小包围点
(setq Ptmin-X (atof (rtos (car Ptmin) 2 Dec))
Ptmin-Y (atof (rtos (cadr Ptmin) 2 Dec))
Nmin (list Ptmin-X Ptmin-Y 0));得到修改精度后的坐标
(vl-cmdf ".Move" Ment "" "non" Ptmin "non" Nmin)
(setq N (1+ N))
)
(setvar 'Osmode Osmode)
(setvar 'Cmdecho 1)
(princ)
)
ZZXXQQ 发表于 2013-1-25 22:52 static/image/common/back.gif
Z版,没有效果
页:
[1]