Scrivere nella riga di comando

Angelo2449

Utente Junior
Professione: Pensionato
Software: Autocad
Regione: Lombardia
Salve a tutti,
vorrei, tramite un'icona, scrivere una lettera > R < nella riga di comando.
Ciò è utile quando viene richiesto di inserire il tipo di selezione quindi la > R < dovrebbe essere scritta dopo il messaggio già presente nella riga di comando.
Questo semplice codice no funziona :
Codice:
(defun C:ERRE (/)

    (princ "R")

);; defun
Grazie
 

rpor66

Utente Standard
Professione: Programmatore
Software: AutoCad, CadWorx, Lisp, VBA. YouTube: roberto portuese
Regione: Sicilia
Annotazione 2019-05-01 122448.jpg
Dopo aver creato il nuovo comando aggiungilo alla barra degli strumenti
 

Angelo2449

Utente Junior
Professione: Pensionato
Software: Autocad
Regione: Lombardia
Grazie rpor66,
questo è già stato realizzato con icona funzionante.
Il problema consiste nel fatto che la > R < nom viene scritta nella riga di comando ma nella finestra di testo.
In pratica, per esempio, volendo tagliare un'immagine che ho inserito e ricevendo la richiesta della modalità di selezione, voglio rispondere con una > S < per selezionare una polilinea intorno alla quale l'immagine verrà tagliata, senza usare la tastiera.
Grazie.
 

Cristallo

Utente Standard
Professione: Leggo e confronto
Software: Lettura critica
Regione: Fuori dalla cerchia
Lo devi inserire in un listato lisp?

mettiamo che l'immagine la assegni a PIPPO
(setq pippo (car (entsel)))
Se vuoi essere sicuro, assegni un filtraggio sull'entita come ti feci vedere l'altra volta (ssget '((0 . "IMAGE")...

dopo ti servirà solo questo
(command "_imageclip" pippo "" "s")

dov'e' la difficoltà?
 

Angelo2449

Utente Junior
Professione: Pensionato
Software: Autocad
Regione: Lombardia
Grazie,
ho capito ciò che mi hai esposto ma non è esattamente quello che cerco.
Mi spiego meglio.
Seleziono il comando "_imageclip" >>> seleziono l'immagine >>> mi viene richiesto di inserire il criterio per tagliarla >>> voglio rispondere > S < per selezionare la polilinea di taglio >>> anziché premere il tasto > S < da tastiera, vorrei cliccare un'icona che facesse la stessa cosa >>> l'immagine viene tagliata.
Ciò varrebbe per qualsiasi dialogo con un comando, per esempio una > R < per > Relazione < nel caso del ridimensionamento di qualsiasi cosa.
Grazie ancora.
 

Cristallo

Utente Standard
Professione: Leggo e confronto
Software: Lettura critica
Regione: Fuori dalla cerchia
verifica bene, puoi creare tranquillamente una macro in un bottone (icona) con la sequenza che cerchi.
Nella macro utilizza un PAUSE (non ricordo ma pare sia uno slash \ nella sequenza dei comandi)
Poi attenzione, imageclip ti chiede:
Selezione img -> poi devi dare un NEW e solo dopo la selezione S
 

Angelo2449

Utente Junior
Professione: Pensionato
Software: Autocad
Regione: Lombardia
Ho risolto il problema creando tre nuovi comandi TAGLIAIMMAGINE - RUOTARIF - SCALARIF corredati dalle relative nuove icone.
Codice:
(defun C:TAGLIAIMMAGINE (/ Immagine Titolo)
    (setq Titolo "Seleziona l'Immagine da tagliare")
    (princ "\n")
    (setq Immagine (entsel Titolo))
    (princ "\n")
    (command "_imageclip" Immagine "" "s")
);;defun

------------------------------------------

    (defun C:RUOTARIF (/ Oggetto Titolo)
        (setq Titolo "Seleziona l'Oggetto da ruotare")
        (princ "\n")
        (setq Oggetto (entsel Titolo))
        (princ "\n")
        (command "_rotate" Oggetto "" "r")
    );;defun
    
-------------------------------------------

    (defun C:SCALARIF (/ Oggetto Titolo)
        (setq Titolo "Seleziona l'Oggetto da ridimensionare")
        (princ "\n")
        (setq Oggetto (entsel Titolo))
        (princ "\n")
        (command "_scale" Oggetto "" "r")
    );;defun
Grazie, come sempre sei preciso e collaborativo!