77077 发表于 2015-7-16 17:17 
不错不错,不过能不能改一下,不一定只是在屁股上加点,从头上去加呢,从肚子上区添加呢?
(entsel "\n选 ...
 - (defun C:y(/ e p a);;;多线段任意位置加点,据测试结果比CASS的Y命令好使
- (if(and(setq e(car(entsel "\n选择要加点的多线段")))
- (sssetfirst nil (ssadd e))
- (setq e(vlax-ename->vla-object e))
- (=(vla-get-objectname e)"AcDbPolyline"))
- (while(setq P(getpoint "\n指定新顶点: "))
- (setq P(trans P 1 0)
- a(vlax-curve-getparamatpoint e(vlax-curve-getclosestpointto e p)))
- (vlax-invoke e'ADDVERTEX(if(> a 0)(1+(fix a))a)(mapcar'+'(0 0)p))))
- (sssetfirst nil))
|