Macro per AutoCAD Mechanical per rotazione testo

Professione: Piping Engineering
Software: Acad2010-SW2011
Regione: Italy, Genoa
#1
ciao a tutti, avrei bisogno di un aiuto o di una guida per la creazione di pulsanti specializzati per l'argomento MACRO in AUTOCAD mechanical 2010.
quello che devo fare è crearmi un pulsante che, selezionato un testo lo ruoti di 90° con perno il grip di inserimento
 

GP.

Utente Senior
Professione: Nientologo
Software: uozapp
Regione: Vercelli
#2
Per la creazione dei pulsanti vedi qui: http://www.speculumatrum.it/cad_pulsanti.html

Una similmacro da assegnare per la rotazione del testo potrebbe essere questa (in lisp):
^C^C(setq TXT (entsel "Selezionare il testo da ruotare"))(COMMAND "_ROTATE" TXT "" (cdr (assoc 10 (entget (car TXT)))) "90")


Non avresti però la possibilità di ripetere il comando con INVIO, ti converrebbe quindi assegnare al pulsante il lancio di un lisp tipo questo:

(defun C:RuotaTesto (/ TXT)
(setq TXT (entsel "\nSelezionare il testo da ruotare"))
(if (= (cdr (assoc 0 (entget (car TXT)))) "TEXT")
(COMMAND "_ROTATE" TXT "" (cdr (assoc 10 (entget (car TXT)))) "90")
)
)



Se invece i testi da selezionare per la rotazione di 90° fossero più di uno, potresti utilizzare un lisp del genere:

(defun C:RuotaTesti (/ TXT cont TXT1)
(prompt "\nSelezionare i testi da ruotare")
(setq TXT (ssget '((0 . "TEXT"))))
(setq cont -1)
(repeat (sslength TXT)
(setq TXT1 (ssname TXT (setq cont (1+ cont))))
(COMMAND "_ROTATE" TXT1 "" (cdr (assoc 10 (entget TXT1))) "90")
)
)
 

Mauro76

Utente poco attivo
Professione: perito
Software: autocad
Regione: Italia
#3
Ciao Gp., ottima spiegazione. E se invece io volessi ruotare il testo in base a una linea di riferimento ? Tipo un "copia formato" che dia al testo lo stesso angolo di una linea selezionata precedentemente.

Grazie
 

GP.

Utente Senior
Professione: Nientologo
Software: uozapp
Regione: Vercelli
#4
Rispondo ora perché non seguo il forum di mechanical e solo oggi mi è arrivata la mail di notifica.

...se invece io volessi ruotare il testo in base a una linea di riferimento ? Tipo un "copia formato" che dia al testo lo stesso angolo di una linea selezionata precedentemente.

E' una funzione svolta egregiamente da TORIENT (ExpressTools), ma butta l'occhio anche su questo lisp: http://www.lee-mac.com/objectalign.html

Per non reinventare la ruota... :smile:
 

Mauro76

Utente poco attivo
Professione: perito
Software: autocad
Regione: Italia
#5
inventare la ruota.. mmm potrei anche pensarci sai ? :tongue: Mi sa che non mi sono espresso molto bene. In sintesi dovevo calcolare la pendenza di un parcheggio le cui quote erano ottenute da un rilevamento con uno strumento gps. Ho scopiazzato qualche lsp per il calcolo dell'angolo facendo si che cliccando sulla linea la pendenza venisse calcolata in automatico e allo stesso tempo venisse scritta e posizionata parallela alla linea. Una cosetta che per i più esperti potrebbe essere semplice, ma per me è stata veramente la scoperta della ruota ahahahah Comunque faccio i complimenti a te e a tutti quelli che divulgano conoscenze in questo forum facilitando il lavoro delle persone e stimolando la voglia di migliorare (oltre a quella di DOMINARE sui colleghi d'ufficio che sono a livelli di tecnigrafo) :cool::cool: