程序还没写完,写到这里,运行,最后提示参数太多,不知道为什么
(defun c:sss ()(vl-load-com)
(setvar "cmdecho" 0) ;关闭回显
(setq os (getvar "osmode"))
(setvar "osmode" 0)
(setq l1 (entsel "\nSelect line:")
l2 (entsel "\nSelect line:")
)
(setq p2 (cadr l1)
l1 (car l1)
p3 (cadr l2)
l2 (car l2)
)
(setq obj1 (vlax-ename->vla-object l1))
(setq obj2 (vlax-ename->vla-object l2))
(setq p1 (vlax-invoke obj1 'IntersectWith obj2 acExtendNone))
(setq r (getdist "\nInput r:"))
(setq p4 (polar p1 (angle p1 p2) r)
p5 (polar p1 (angle p1 p3) r)
)
(setq yuanhu (entmake
'(0. "arc")
(cons 8 "0")
(cons 10 p1)
(cons 40 r)
(cons 50 (angle p1 p2))
(cons 51 (angle p1 p3))
)
)
(setvar "osmode" os)
(setvar "cmdecho" 1)
(princ)
)
有谁能帮我看看,到底是怎么回事?
目的是要在两条垂直相交线处,以交点为中心,画一个内凹的圆角。 感觉问题就出在entmake那块了 (setq yuanhu (entmakex
(list
'(0 . "arc")
(cons 8 "0")
(cons 10 p1)
(cons 40 r)
(cons 50 (angle p1 p2))
(cons 51 (angle p1 p3))
)
)
)
这样就可以了。 (cons 50 (angle p1 p2))
(cons 51 (angle p1 p3))
改成
(cons 50 (Vlax-Get obj1 'Angle ))
(cons 51 (Vlax-Get obj2 'Angle ))
更好 q3_2006 发表于 2013-11-13 13:37 static/image/common/back.gif
(cons 50 (angle p1 p2))
(cons 51 (angle p1 p3))
改成
谢谢!我改改试一试。
页:
[1]