Here's what I was looking for! Yet having added 'Radius - assoc 40' causes crash
with: ** Error: bad argument type: numberp: nil ** now when LINE is evaluated/included.
When ENTITY_RAD of progn is removed, all's OK. Why/how does it crash? Is there a solution?
... Added an 'if' to filter out the line but still crashes when eval..
;;*****************************************************************************
;; INSPECTOR - Command to Inspect Objects by Moving the Crosshairs Over Them. *
;; ========= *
;; Didge, 2006. *
;; https://www.theswamp.org/index.php?topic=12813.msg166947#msg166947 *
;; *
;;*****************************************************************************
(defun c:ins (/ *error* cosm
INPUT INPUT_COORD ENTITY_FOUND ENTITY_NAME
ENTITY_LIST ENTITY_TYPE ENTITY_LAYER ENTITY_RAD
)
(vl-load-com)
(setq cosm (getvar 'osmode))
(defun *error* (msg) ;_ error trap
(if (= 8 (logand 8 (getvar 'undoctl)))
(vla-EndUndoMark doc)
) ;_ end of if
(or (wcmatch (strcase msg) "*BREAK,*CANCEL*,*EXIT*")
(princ (strcat "\n** Error: " msg " **"))
) ;_ end of or
(setvar 'osmode cosm)
(redraw)
(princ)
) ;_ end of defun
(setq doc (vla-get-ActiveDocument (vlax-get-acad-object)))
(vla-StartUndoMark doc)
(prompt
"\n Inspect Objects by Moving the Cross-hairs Over Them..\n"
) ;_ end of prompt
(while (and (setq INPUT (grread T)) (= (car INPUT) 5))
(setq INPUT_COORD (cadr INPUT))
(setq ENTITY_FOUND (ssget INPUT_COORD)) ;;
(vla-StartUndoMark doc)
(if ENTITY_FOUND
(progn
(setq ENTITY_LIST (entget (ssname ENTITY_FOUND 0)))
(setq ENTITY_TYPE (cdr (assoc 0 ENTITY_LIST)))
(setq ENTITY_LAYER (cdr (assoc 8 ENTITY_LIST)))
(if (not (equal (assoc 40 ENTITY_LIST) '(0. LINE))) ;;;<< how to test ??
(setq ENTITY_RAD (rtos (cdr (assoc 40 ENTITY_LIST)) 2 3))
(setq ENTITY_RAD (rtos 0))
)
(prompt (strcat "\r Object: " ENTITY_TYPE
" Layer: " ENTITY_LAYER
" Radius: " ENTITY_RAD
" "
) ;_ end of strcat
) ;_ end of prompt
;;
) ;_ end of progn
(vla-EndUndoMark doc)
) ;_ end of if
) ;_ end of while
(vla-EndUndoMark doc)
(setvar 'osmode cosm)
(princ)
) ;_ end of defun
;(c:ins)
;|«Visual LISP© Format Options»
(72 3 50 2 T "end of " 60 9 0 1 0 nil T nil T)
;*** DO NOT add text below the comment! ***|;