小弟通过自己尝试,写出来了,献上代码,跟我一样的新人们一起互相学习
 - (defun c:bkl()
- (setq breakl (car(entsel)))
- (Setq p1 (Vlax-Get (Vlax-Ename->Vla-Object breakl) 'EndPoint ))
- (Setq p2 (Vlax-Get (Vlax-Ename->Vla-Object breakl) 'StartPoint ))
- (setq brkptss (ssget "F" (list p1 p2)))
- (setq brkptlen (sslength brkptss))
- (setq j 0)
- (repeat brkptlen
- (setq interl (ssname brkptss j))
- (Setq pa (Vlax-Get (Vlax-Ename->Vla-Object interl) 'EndPoint ))
- (Setq pb (Vlax-Get (Vlax-Ename->Vla-Object interl) 'StartPoint ))
- (setq interp (inters p1 p2 pa pb))
- (command "_.break" breakl interp "@")
- (setq lastl (entlast))
- (Setq pa (Vlax-Get (Vlax-Ename->Vla-Object lastl) 'EndPoint ))
- (Setq pb (Vlax-Get (Vlax-Ename->Vla-Object lastl) 'StartPoint ))
- (setq j (+ j 1))
- )
- )
|