嗨,李麦克,
Hi试图修改代码以选择小于1/8”的行…但不起作用…请查看代码
- (defun c:stt ( / e i n s )
- (alert
- (strcat
- (if (setq se (ssget "_X" '((0 . "ELLIPSE"))))
- (strcat "Found " (itoa (sslength se)) " Ellipse" (if (= 1 (sslength se)) "." "s."))
- "\nNo ellipses found."
- )
-
- (if (setq sp (ssget "_X" '((0 . "SPLINE"))))
- (strcat "\nFound " (itoa (sslength sp)) " Spline" (if (= 1 (sslength sp)) "." "s."))
- "\nNo Splines found."
- )
- (if (setq sl (ssget "_X" '((0 . "LINE"))))
- (strcat "\nFound " (itoa (sslength sl)) " Line" (if (= 1 (sslength sl)) "." "s."))
- "\nNo Lines found."
- )
- (if (setq sa (ssget "_X" '((0 . "ARC"))))
- (progn
- (setq n 0)
- (repeat (setq i (sslength sa))
- (setq e (entget (ssname sa (setq i (1- i)))))
- (if (< (* (cdr (assoc 40 e)) (rem (+ (- (cdr (assoc 51 e)) (cdr (assoc 50 e))) pi pi) (+ pi pi))) 0.125)
- (setq n (1+ n))
- )
- )
- (if (< 0 n)
- (strcat "\nFound " (itoa n) " Arc" (if (= 1 n) "" "s") " shorter than 1/8"")
- "\nNo Arcs shorter than 1/8" found."
- )
- )
- "\nNo arcs found."
-
- )
- )
- )
- (command "LAYER" "NEW" "FIX" "COLOR" "5" "FIX" "")
- (COMMAND "CHANGE" se sp sa sl "" "p" "layer" "fix" "")
- (princ)
- )
|