- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
Can the area answer be between 2 and 10? If less than 2, mark it as 2. If it is greater than 10, mark it as 10.
(defun c:2_sset_area (/ _nomutt _prompt list_1 list_2 )
(setq _nomutt (setvar 'nomutt 0) _prompt (prompt "\nSelection set 1: ") _nomutt (setvar 'nomutt 1)
list_1 (mapcar 'vlax-ename->vla-object (vl-remove-if 'listp (mapcar 'cadr (ssnamex (ssget '((0 . "lwpolyline") (-4 . "&=") (70 . 1)))))))
_nomutt (setvar 'nomutt 0) _prompt (prompt "\nSelection set 2: ") _nomutt (setvar 'nomutt 1)
list_2 (mapcar 'vlax-ename->vla-object (vl-remove-if 'listp (mapcar 'cadr (ssnamex (ssget '((0 . "lwpolyline") (-4 . "&=") (70 . 1)))))))
_nomutt (setvar 'nomutt 0)
)
(vla-addmtext (vla-get-block (vla-get-activelayout (vla-get-activedocument (vlax-get-acad-object))))
(vlax-3d-point (getpoint "\nPick point for placing calculated mtext: "))
0
(strcat
(strcat "%<\\AcExpr ("
(apply 'strcat (cdr (apply 'append (mapcar '(lambda (pline) (list "+" (strcat "%<\\acobjprop.16.2 object(%<\\_objid " (itoa (vla-get-objectid pline)) ">%).area>%"))) list_1))))
(apply 'strcat (apply 'append (mapcar '(lambda (pline) (list "-" (strcat "%<\\acobjprop.16.2 object(%<\\_objid " (itoa (vla-get-objectid pline)) ">%).area>%" ))) list_2)))
") \\f \"%lu2\">%"
)
)
)
(princ)
)
Solved! Go to Solution.