你好
就这么简单。
- (defun c:test (/ pck sel int ent get bnm)
- (and
- (setq pck (car (entsel "\nPick on the target block :")))
- (or (and (= (cdr (assoc 0 (setq get (entget pck)))) "INSERT")
- (null (assoc 66 get))
- )
- (alert "Invalid object. Try again.<!>")
- )
- (princ
- (strcat "\nSelect Polyline/Line(s) to place <"
- (setq bnm (vla-get-effectivename (vlax-ename->vla-object pck)))
- "> at their Endpoints :"
- )
- )
- (setq int -1
- sel (ssget '((0 . "LINE,LWPOLYLINE")))
- )
- (while (setq ent (ssname sel (setq int (1+ int))))
- (foreach p (list (vlax-curve-getstartpoint ent) (vlax-curve-getendpoint ent))
- (entmake (list '(0 . "INSERT") (cons 2 bnm) (cons 10 (trans p 0 1))))
- )
- )
- )
- (princ)
- ) (vl-load-com)
|