there is one of mine...
;| ;;
LoFi Layer Output For Info ;;
;;
By: Andrea Andreetti |;
(defun c:LoFi ()
(setq lst2 nil)
iselected (ssget)
sscount (sslength iselected)
val1 (- sscount 1)
)
(repeat sscount
(setq a1 (entget (ssname iselected val1)))
(getinfo)
(setq lst1 (list (strcat layer "," itemcolor "," layercolor "," layerlock"," layerplot )))
(if (not (vl-position (car lst1) lst2))
(setq lst2 (append lst2 lst1))
)
(setq val1 (- val1 1))
);;end repeat
(printresult)
);;defun
;| ;;
GET INFO ;;
|;
(defun getinfo ()
(setq layer (cdr (assoc 8 a1));;layer
color (cdr (assoc 62 a1));;color
)
(if (not color)(setq itemcolor "ByLayer")(setq itemcolor (rtos color)))
(setq layercolor (rtos (cdr (assoc 62 (entget (tblobjname "layer" (cdr (assoc 8 (entget (cdar a1))))))))))
;;locked or not
(if (= 4 (logand 4 (cdr (assoc 70
(tblsearch "layer" (cdr (assoc 8 (entget (cdar a1)))))
))))
(setq layerlock "Yes")
(setq layerlock "No")
)
;;printable or not
(setq layerplot (rtos
(cdr (assoc 290 (entget (tblobjname "layer" (cdr (assoc 8 (entget (cdar a1))))))))
2)
)
(if (= layerplot "0") (setq layerplot "No")(setq layerplot "Yes"))
);;defun
;| ;;
PRINT RESULT ;;
|;
(defun printresult ()
(initget "Yes No")
(setq yon (getkword "Print in a File ?"))
(if (= (strcase yon) "YES")
(printfile)
(textprint)
)
)
;;;;;;;;;;;;;;;;;;;
(defun Printfile ()
(setq filew (open "c:\\LoSi_result.txt" "w"))
(princ
"
LAYER of SELECTED ITEM
______________________
")
(princ (strcat "\n\nFile: " (getvar "dwgname")) filew)
(princ (strcat "\n\nDate: " (menucmd "M=$(edtime,$(getvar,date),YYYY MON D H:MMam/pm)")) filew)
(princ "
__________________________________________________
Layer Color LOCK PRINT
Nname Item/Layer: Mode mode \n\n" filew)
(foreach n lst2
(getlst1)
(princ (strcat "\n" item1 spr1 item2 "/" item3 spr3 item4 spr4 item5 ) filew)
)
(close filew)
(startapp "notepad" "c:\\LoSi_result.txt")
(resetvar)
)
;;;;;;;;;;;;;;;;;;;
(defun textprint ()
(princ
"
LAYER of SELECTED ITEM
______________________
")
(princ (strcat "\n\nFile: " (getvar "dwgname")))
(princ (strcat "\n\nDate: " (menucmd "M=$(edtime,$(getvar,date),YYYY MON D H:MMam/pm)")))
(princ "
__________________________________________________
Layer Color LOCK PRINT
Nname Item/Layer: Mode mode \n\n" )
(foreach n lst2
(getlst1)
(princ (strcat "\n" item1 spr1 item2 "/" item3 spr3 item4 spr4 item5 ))
(textscr)
)
(resetvar))
;;;;;;;;;;;;;;;;;;
(defun getlst1 ()
(setq fLiL (car lst2))
(setq #s1 (vl-string-position (ascii ",") fLiL))
(setq item1 (substr fLiL 1 #s1))
(setq fLiL (substr fLiL (+ #s1 2)))
(setq spr# (- 20 #s1))
(setq spr1 (substr space (- 20 spr#)))
(setq #s2 (vl-string-position (ascii ",") fLiL))
(setq item2 (substr fLiL 1 #s2))
(setq fLiL (substr fLiL (+ #s2 2)))
(setq spr# (- 15 #s2))
(setq spr2 (substr space (- 15 spr#)))
(setq #s3 (vl-string-position (ascii ",") fLiL))
(setq item3 (substr fLiL 1 #s3))
(setq fLiL (substr fLiL (+ #s3 2)))
(setq spr# (- 15 #s3))
(setq spr3 (substr space (- 15 spr#)))
(setq #s4 (vl-string-position (ascii ",") fLiL))
(setq item4 (substr fLiL 1 #s4))
(setq fLiL (substr fLiL (+ #s4 2)))
(setq spr# (- 18 #s4))
(setq spr4 (substr space (- 18 spr#)))
(setq #s5 (vl-string-position (ascii "¯") fLiL))
(setq item5 (substr fLiL 1 #s5))
(setq lst2 (cdr lst2))
);;defun
;;;;;;;;;;;;;;;;;;
(defun resetvar ()
(setq VarLst '(#s1 #s2 #s3 #s4 #s5 lst1 lst2 item1 item2 item3 item4 item5 itemcolor
flil filew yon layerlock layerplot layer color sscount
iselected a1 val1))
(mapcar '(lambda (l) (set l nil)) VarLst)
(princ)
)
Maybe not good looking.....but it work. :kewl: