本帖最后由 437271963 于 2016-3-8 19:31 编辑
 - (defun c:tes ( / #os1 &k1 &kw1 &ob1 &p1 @p1 @p2)
- (if (null vlax-dump-object) (vl-load-com) )
- (setq #os1 (getvar "osmode"))
- (if (setq &kw1 (ssget '((0 . "LWPOLYLINE"))))
- (progn
- (setvar "osmode" 0)
- (while (setq &k1 (ssname &kw1 0))
- (setq &kw1 (ssdel &k1 &kw1) &ob1 (vlax-ename->vla-object &k1))
- (foreach &p1 (list (vlax-curve-getStartPoint &ob1);起点
- (vlax-curve-getEndPoint &ob1);端点
- )
- (setq @p1 (polar &p1 (* 1.25 pi) (* (expt 2 0.5) 0.5))
- @p2 (polar &p1 (* 0.25 pi) (* (expt 2 0.5) 0.5)))
- (if (< (sslength (ssget "c" @p1 @p2 '((0 . "LINE,LWPOLYLINE")))) 2);如果少于2线
- (entmake (list '(0 . "CIRCLE") '(62 . 1) (cons 10 &p1) '(40 . 50)));绘制红色,半径50的圆
- );if
- );foreach
- );while
- (setvar "osmode" #os1)
- )
- )
- (princ)
- )
|