-
- (defun c:test (/ CreateList _grAngle adoc Plines obj cnt ent ObjectPointList
- PtAngleList Xpoint gr NewLine
- )
- ;;; pBe April 2011 ;;;
- (vl-load-com)
- (defun CreateList (p)
- (setq ObjectPointList (cons (cdr p) ObjectPointList))
- )
- ;;; Alanjt ;;;
- (defun _grAngle (a b)
- (grdraw (trans a 0 1) (cadr gr) 1 -1)
- (angle a b)
- )
- ;;; ;;;
- (setq adoc (vla-get-activedocument (vlax-get-acad-object)))
- (if (setq Plines (ssget ":L" '((0 . "LWPOLYLINE"))))
- (progn
- (repeat (setq cnt (sslength Plines))
- (setq obj (ssname Plines (setq cnt (1- cnt)))
- ent (entget obj)
- )
- (mapcar 'CreateList
- (vl-remove-if-not '(lambda (x) (= (car x) 10)) ent)
- )
- (ssdel obj Plines)
- )
- (if ObjectPointList
- (progn
- (setq PtAngleList (open (strcat (getvar 'Dwgprefix)(vl-filename-base (getvar 'Dwgname)) ".csv") "A"))
- ;;; Alanjt ;;;
- (while (eq 5 (car (setq gr (grread T 15 0))))
- (setq Xpoint (trans (cadr gr) 1 0))
- (redraw)
- (foreach pts ObjectPointList (_grAngle pts Xpoint))
- )
- ;;; ;;;
- (redraw)
- (foreach
- itm ObjectPointList
- (setq NewLine
- (vla-addline
- (vlax-get (vla-get-activelayout adoc) 'Block)
- (vlax-3d-point Xpoint)
- (vlax-3d-point itm)
- )
- )
- (write-line (strcat (rtos (vla-get-length NewLine) 2 2) ","
- (rtos (vla-get-Angle NewLine) 2 2)) PtAngleList)
- )
- (close PtAngleList)
- )
- )
- )
- )
- (princ)
- )
|