几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量

几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量 (http://www.dimcax.com/hust/index.php)
-   ObjectARX(AutoLISP) (http://www.dimcax.com/hust/forumdisplay.php?f=178)
-   -   为什么是这样子呢 (http://www.dimcax.com/hust/showthread.php?t=11534)

yang686526 2009-04-26 04:35 PM

为什么是这样子呢
 
为什么是这样子呢
www.dimcax.com
为什么是这样子呢
各位大师,小弟给一个程序,搞的头都疼啦,,二维多段线转成多段线后,我用了这个;;判断多段线是否有圆弧(凸度/=0)的子段
(defun ko-get->tornil-checkarc (ename)这个程序,提示( 错误: activex 服务器返回错误: 未知名称: coordinates)
;;判断多段线是否有圆弧(凸度/=0)的子段
(defun ko-get->tornil-checkarc (ename)
(vl-load-com)
(setq obj (vlax-ename->vla-object ename))
(setq plist (vlax-safearray->list
(vlax-variant-value
(vla-get-coordinates obj))))
(setq n 0 bu nil)
(repeat (/ (length plist) 2)
(if (/= (vla-getbulge obj n) 0)
(setq bu t)
)
(setq n (+ n 1))
)
bu
)
;;把二维多段线变成多段线,如果是多段线则返回多段线,最后函数返回图元名
(defun ko-convert-pline (ena / pe la ena newss)
(if (= (cdr (assoc 0 (entget ena))) "polyline")
(progn
(cmd0)
(setq pe (getvar "peditaccept"))
(setvar "peditaccept" 0)
(if (= (getvar "plinetype") 0) (setvar "plinetype" 2))
(setq la (entlast))
(command "explode" ena)
(setq ena (ssget "p"))
(setq newss (ssadd))
(command "._pedit" "m" ena "" "y" "j" "0.5" "")
(while (setq la (entnext la)) (ssadd la newss))
(setq ena (ssname newss 0))
(setvar "peditaccept" pe)
)
ena
)
(cmd1)
ena
)
d


所有的时间均为北京时间。 现在的时间是 09:39 PM.