Files
egbim_homepage/egbim/uploads/qa/1776313758_50338ccd_FIXVPORT.lsp
2026-07-23 16:15:57 +09:00

46 lines
1.5 KiB
Common Lisp
Executable File

(defun C:FIXVPORT (/ ss i en ed flags newflags result)
(setq ss (ssget "X" (list (cons 0 "VIEWPORT"))))
(if (null ss)
(princ "
[FIXVPORT] VP not found")
(progn
(princ (strcat "
[FIXVPORT] found: " (itoa (sslength ss))))
(setq i 0)
(while (< i (sslength ss))
(setq en (ssname ss i))
(setq ed (entget en))
(if (assoc 90 ed)
(progn
(setq flags (cdr (assoc 90 ed)))
(princ (strcat "
VP" (itoa i) " flag90=" (itoa flags)))
(if (> flags 65535)
(progn
(setq newflags (logand flags 65535))
(princ (strcat " -> fix: " (itoa newflags)))
(setq result (entmod (subst (cons 90 newflags) (assoc 90 ed) ed)))
(if result
(progn (entupd en) (princ " OK"))
(princ " FAILED")))
(if (< flags 0)
(progn
(setq newflags (logand flags 65535))
(princ (strcat " -> fix(neg): " (itoa newflags)))
(setq result (entmod (subst (cons 90 newflags) (assoc 90 ed) ed)))
(if result
(progn (entupd en) (princ " OK"))
(princ " FAILED")))
(princ " skip"))))
(princ (strcat "
VP" (itoa i) " no flag90")))
(setq i (1+ i)))))
(princ "
[FIXVPORT] done - try select now")
(princ)
)
(princ "
[FIXVPORT] loaded - ºäÆ÷Æ® ¼±Åà ¾ÈµÉ¶§ »ç¿ë_KDJ")
(princ)