200853006
发表于 2014-5-8 16:36:53
赶紧占楼!
429014673
发表于 2014-5-8 17:24:33
先占个位置。
xyp1964
发表于 2014-5-8 19:46:42
;; spline、arc 、块内实体、dxf 210码不正常等等的实体——待后续研究
;; zzgl(Z轴归零)
;; 测试实例
(defun c:zzgl ()
(princ "\n选择归零实体: ")
(if (setq ss (ssget))
(setq lst (xyp-Ss2List ss)
lst (mapcar 'xyp-Zzgl lst)
)
)
(princ)
)
;; Z轴归零主函数 xyp-Zzgl
(defun xyp-Zzgl (s1 / p10)
;; 属性块实体: 先移位后属性实体归零
(if (and (xyp-Etype s1 "insert")
(= (xyp-Dxf 66 s1) 1)
)
(progn
(setq p10 (xyp-Dxf 10 s1))
(xyp-Move s1 p10 (list (car p10) (cadr p10) 0))
(foreach ob (xyp-AttList s1)
(xyp-Zzgl (vlax-vla-object->ename ob))
)
)
)
;; 一般实体
(foreach a '(10 11 12 13 14)
(xyp-Zzgl-Dxf s1 a)
)
;; 有38码的实体
(if (/= (setq pt (xyp-Dxf 38 s1)) 0)
(xyp-SubUpd s1 38 0)
)
;; spline实体、arc 实体、块内实体、dxf 210码不正常的实体
)
liuhaixin88
发表于 2014-5-8 20:04:41
xyp1964 发表于 2014-5-8 19:46 static/image/common/back.gif
;; spline、arc 、块内实体、dxf 210码不正常等等的实体——待后续研究
好像不支持块吧,用在块上无效,但是炸开块,就可以用了
xyp1964
发表于 2014-5-8 22:15:52
;; 来个平面spline的;; zzgl(Z轴归零);; 测试实例
(defun c:zzgl ()
(princ "\n选择归零实体: ")
(if (setq ss (ssget))
(setq lst (xyp-Ss2List ss)
lst (mapcar 'xyp-Zzgl lst)
)
)
(princ)
)
;; Z轴归零主函数 xyp-Zzgl
;; arc、块内实体、dxf210码不正常的实体等等,待后续研究
(defun xyp-Zzgl (s1 / p10)
;; 属性块实体: 先移位后属性实体归零
(cond ((and (xyp-Etype s1 "insert")
(= (xyp-Dxf 66 s1) 1)
)
(setq p10 (xyp-Dxf 10 s1))
(xyp-Move s1 p10 (list (car p10) (cadr p10) 0))
(foreach ob (xyp-AttList s1)
(xyp-Zzgl (vlax-vla-object->ename ob))
)
)
((xyp-etype s1 "spline") (xyp-Zzgl-Spline s1))
)
;; 一般实体
(foreach a '(10 11 12 13 14)
(xyp-Zzgl-Dxf s1 a)
)
;; 有38码的实体
(if (/= (setq pt (xyp-Dxf 38 s1)) 0)
(xyp-SubUpd s1 38 0)
)
)
vlisp2012
发表于 2014-5-9 08:03:51
院长要悬壶济世了!
vlisp2012
发表于 2014-5-9 08:06:56
哪位英文好,是不是得给桌子公司提个建议啊。
把0.001(一定容差范围)之类的全部归零的命令啊。
USER2128
发表于 2014-5-9 11:04:21
支持院长!向您学习!向您致敬!
donghuidong2003
发表于 2014-5-9 12:34:11
好像秋枫大侠也做过这样一个归零的东西,版权归秋枫所有;另外还有一个不知名的归零,一同上传来与大家分享,算是与院长的来一个集合吧。
yiqisese
发表于 2014-5-9 12:42:37
好像不支持天正块