cg-Cad

Lisp »Tips 'n Tricks »Layer Color

L'idea di base è clicco su un bottone; se quando lo clicco c'è qualche oggetto selezionato allora tutti gli oggetti selezionati diventano rossi, se quando clicco lo stesso bottone nulla è selezionato allora il layer corrente diventa rosso.
La comodità è poi mettere i comandi nel file "acad.mnl" poi ti costruisci un barra comandi con i nuovi pulsanti, e tutto diventa molto più rapido.
Esempio "1 barra spazio" e gli oggetti selezionati diventano rossi, oppure il layer corrente diventa rosso...

Autore: Michele Ingenuo - Sito Web: 3eye

;layer color 

(defun C:1  ()
   ;(/ OBJ OB1)
   ;colora il layer corrente col colore1 cioè rosso
   (setq colore 1);ROUGE
   (setq OBJ (ssgetfirst ))
   (setq OB1 (cadr OBJ)) ;estrai la selezione
   (if
      (= OB1 nil);se nulla è selezionato
      ;layer colore 1 
      (command  "_-layer" "co" colore "" "" "" )
      (command "_change" OB1 "" "pr"  "_co" colore "" )
    )
	
)

(defun C:2  ()
   ;(/ OBJ OB1)
   (setq colore 2);JAUNE
   (setq OBJ (ssgetfirst ))
   (setq OB1 (cadr OBJ))
   (if
      (= OB1 nil)
      (command  "_-layer" "co" colore "" "" "" )
      (command "_change" OB1 "" "pr"  "_co" colore "" )
   )
)

(defun C:5  ()
   ;(/ OBJ OB1)
   (setq colore 5);BLU
   (setq OBJ (ssgetfirst ))
   (setq OB1 (cadr OBJ))
   (if (= OB1 nil) 
      (command  "_-layer" "co" colore "" "" "" )
      (command "_change" OB1 "" "pr"  "_co" colore "" )
   )
)

(defun C:00  ()
   ;(/ OBJ OB1)
   (setq colore "DUC");"duc" vuol dire du calque 
   (setq OBJ (ssgetfirst ))
   (setq OB1 (cadr OBJ))
   (if (= OB1 nil)
      (command  "_-layer" "co" colore "" "" "" )
      command "_change" OB1 "" "pr"  "_co" colore "" )
   )
)

(defun C:0  ()
   ;(/ OBJ OB1)
   (setq colore 7);WHITE
   (setq OBJ (ssgetfirst ))
   (setq OB1 (cadr OBJ))
   (if (= OB1 nil)
      (command  "_-layer" "co" colore "" "" "" )
      (command "_change" OB1 "" "pr"  "_co" colore "" )
   )
)

(defun C:000  ()
   ;(/ OBJ OB1)
   ;(setq colore (getstring "\n quale colore?" ))
   (setq OBJ (ssgetfirst ))
   (setq OB1 (cadr OBJ))
   (if (= OB1 nil)
      (command  "_-layer" "co" pause "" "" "" )
      (command "_change" OB1 "" "pr"  "_co" pause "" )
   )
)

Lisp »Tips 'n Tricks