;**********************************************
; Descrizione : modifica colore oggetto
;               selezionato
;
;
;
; Autore : Roberto Rossi
;**********************************************
(defun c:CambiaCol ( / elemento nomEnt OldColor NewColor)

(setq nomEnt (car(entsel "\nSelezionare oggetto a cui cambiare colore : ")))
(if nomEnt  ;se è stato selezionato un oggetto procede
  (progn
    (setq NewColor (Acad_colordlg 0 T)) ;selezion colore da assegnare
    (setq elemento (entget nomEnt)) ;estrazione lista dell'entità
    (setq OldColor (assoc 62 elemento)) ;estrazione colore attuale
    (if OldColor
      (progn ;se esiste un colore precedente
        ;lo sostituisce con quello indicato
        (setq elemento (subst (cons 62 NewColor) oldColor elemento))
      );endp
      (progn ;se ha il colore di default
        ;aggiunge il campo colore con il colore da assegnare
        (setq elemento (cons (cons 62 NewColor) elemento))
      );endp
    );endif
    (entmod elemento) ;modifica l'entità nel database del disegno
    (entupd nomeEnt) ;aggiorna la visualizzazione corrente del disegno
  );endp
  (progn
    (alert "Non è stato selezionato alcun oggetto !")
  );endp
);endif
(prin1)
);enddef 

;**********************************************
; Descrizione : modifica colore oggetto
;               selezionato
;               Versione Semplificata
;
;
; Autore : Roberto Rossi
;**********************************************
(defun c:CambiaColS ( / nomEnt NewColor)

(setq nomEnt (car(entsel "\nSelezionare oggetto a cui cambiare colore : ")))
(if nomEnt  ;se è stato selezionato un oggetto procede
  (progn
    (setq NewColor (Acad_colordlg 0 T)) ;selezion colore da assegnare
    (command "_change" nomEnt "" "_p" "_c" NewColor "")
  );endp
  (progn
    (alert "Non è stato selezionato alcun oggetto !")
  );endp
);endif
(prin1)
);enddef 


