Macro di comando e scripting

Tutti i comandi di Rhino possono essere usati in macro di comando. Le macro di comando si possono eseguire digitando il comando al prompt dei comandi, premendo i pulsanti desiderati della barra degli strumenti, usando i tasti di scelta rapida, gli alias dei comandi, da un file testo oppure incollando uno script dalla clipboard al flusso dei comandi di Rhino.

Scrittura di una macro di comando

Si scrivano le macro dei comandi digitandole al prompt dei comandi seguendo la stessa convenzione utilizzata per i comandi impartiti dalla linea di comando. Uno spazio tra i caratteri o una nuova linea equivalgono a premere Invio nella linea di comando.

Caratteri speciali

Carattere

Significato nella macro

*
(asterisco)

Fa sì che il comando si ripeta automaticamente senza premere Invio per riavviare.

!
(Punto esclamativo)

Annulla il comando precedente.

Un punto esclamativo (!) ed uno spazio all'inizio di una macro cancellano qualsiasi comando precedente. In qualsiasi altra posizione, questo simbolo termina l'esecuzione della macro. Se necessario, il punto esclamativo può essere usato anche alla fine della macro.

_
(carattere di sottolineatura)

Esegue un comando in versione Inglese.

Rhino può essere localizzato in varie lingue. Le versioni non inglesi hanno comandi, prompt, opzioni di comando, finestre di dialogo, menu, ecc., tradotti nelle rispettive lingue. I comandi in inglese non funzionano in queste versioni.

Affinché gli script scritti in inglese funzionino su tutti i computer a prescindere dalla lingua di Rhino, occorre che essi forzino Rhino ad interpretare tutti i comandi come nomi in inglese.

Per esempio: Nella versione inglese di Rhino, la macro seguente funziona:

Circle 3Point 0,0,0 1,1,0 0,3,0

Tuttavia, nella versione italiana di Rhino, questo script non funziona. Occorre usare una delle seguenti macro:

Cerchio 3Punti 0,0,0 1,1,0 0,3,0
_Circle _3Point 0,0,0 1,1,0 0,3,0

Per assicurarsi che le macro possano funzionare ovunque, si scrivano in inglese precedute dal simbolo _.

-
(meno)

Sopprime la finestra di dialogo.

Tutti i comandi possono essere trasformati in macro dalla linea di comando (anche i comandi che di default compaiono sotto forma di finestre di dialogo). Per sopprimere una finestra di dialogo ed usare le opzioni della linea di comando, apporre il prefisso - (meno) al nome del comando da eseguire (-).

'
(apostrofo)

Il comando successivo è un comando annidabile.

La manipolazione delle viste e dei piani e gli snap all'oggetto sono annidabili. I comandi per la creazione di geometrie non sono annidabili.

Gli snap all'oggetto "one-shot" (per una singola operazione) ed i filtri per la selezione dei sotto-oggetti sono automaticamente annidabili e non richiedono un apostrofo.

/
(barra rovesciata)

Se il primo carattere della macro di una barra strumenti è diverso da "!" e l'ultimo carattere è " \", lo script viene eseguito nella linea di comando senza Invio, per cui si possono inserire ulteriori parametri.

Questa funzione è utile per costruire una stringa di comando dinamica a partire da parametri numerici quali cifre, punti decimali ed angoli (per esempio "<45"). Si può avere un "tastierino numerico" sullo schermo, con i tasti associati a tali parametri numerici.

~
(tilde)

Elimina le opzioni di comando per lasciare più spazio ai messaggi di feedback dei comandi. Le opzioni continuano a funzionare normalmente.

;

(puntoevirgola)

Commento:

Le linee che iniziano con un punto e virgola (;) non sono parte della macro ma permettono all'utente di documentare la macro o di inserire input alternativo.

Per esempio:

; Questa è una macro di prova
_Circle 0,0,0 15
_Line 0,0,0 pause ;15,0,0
; Linea 0,0,0 0,15,0
_Line 0,0,0 -15,0,0

Esempi

Disegnare un cerchio

La seguente macro crea un cerchio con centro nel punto 5,5 e raggio pari a 10:

! _-Circle 5,5 10

Gli spazi presenti tra le varie voci corrispondono alla pressione di Invio quando si inserisce il comando manualmente.

Deselezione di oggetti ed esecuzione del comando Sposta

Questa macro esegue il comando Sposta, ma si assicura che nessun oggetto sia selezionato prima di selezionare l'oggetto da spostare:

! _SelNone _Move

Creare una curva facendola passare per una serie di punti

Questa macro crea un insieme di tre punti da un elenco in un file di testo e, dopo averli selezionati, genera una polilinea passante attraverso questi punti:

! _SelAll _Points _Pause _Pause _Pause _Enter _Invert _CurveThroughPt _EnterEnd

Come funziona questo script:

! _SelAll

Cancella tutti i comandi precedenti e seleziona tutti gli oggetti attualmente presenti nel modello.

_Points

Esegue il comando Punti.

_Pause

_Pause

_Pause

Consente di specificare tre punti.

_Enter

Simula la pressione di Invio, che termina la creazione di oggetti punto.

_Invert

Inverte la selezione. Tutti gli oggetti visibili nella scena sono stati selezionati all'inizio dello script, per cui, dopo l'esecuzione del comando Inverti, vengono selezionati solamente i nuovi oggetti punto creati.

_CurveThroughPt

Crea una polilinea attraverso gli oggetti punto.

_EnterEnd

Completa il comando.

Evitare la visualizzazione di una finestra di dialogo

! -_Rebuild _Pause _Points=10 _Degree=3 _Enter

Selezionare una curva, quindi eseguire questa macro. Tutte le opzioni verranno impostate dalla macro.

Per provare questi script

1. Selezionare la macro direttamente da questa pagina della guida.
2. Premere Ctrl + C per copiarla negli appunti.
3. Fare clic sul prompt dei comandi di Rhino e premere Ctrl + V per incollare la macro.

Speciali script di comando

Pausa

Interrompe momentaneamente la macro in attesa dell'inserimento dell'input da parte dell'utente.

Esempio

! _Circle _Pause 50

Questa macro richiede l'inserimento di un punto e quindi traccia un cerchio centrato su di esso, con raggio pari a 50.

Invio

Simula la pressione di Invio all'interno di una macro.

Questo comando non ripete il comando precedente come fa la pressione di Invio.

InvioFine

Completa il comando.

AggiornamentoOff

Impedisce l'aggiornamento dello schermo, del piano di costruzione e della camera durante le macro.

AggiornamentoOn

Riattiva l'aggiornamento dello schermo dopo l'esecuzione del comando AggiornamentoOff.

NoEco

Disattiva l'eco dei comandi macro nella finestra dello storico dei comandi.

Eco

Attiva l'eco dei comandi macro nella finestra dello storico dei comandi.

Nota: Se non si è certi della sintassi esatta di un comando da scrivere nella macro, utilizzare la versione con segno meno del comando. Per familiarizzarsi con le macro, evidenziare e copiare la sequenza di comandi e quindi incollarla nel testo della macro.

LeggiFileComandi

Il comando LeggiFileComandi legge ed esegue una macro di comando da un file di testo.

Passi

Nella finestra di dialogo Apri file di testo, selezionare il file da leggere.

I contenuti del file vengono copiati nella linea di comando e ciascuna linea presente nel file viene interpretata come se fosse stata digitata nella linea di comando.

Note

Nella costruzione di file di comandi, utilizzare il comando Invio, che equivale a premere Invio per eseguire i comandi.
Se un particolare file di comandi viene usato spesso, è possibile assegnare LeggiFileComandi al pulsante di una barra degli strumenti, con associato il nome del file. Per esempio:

-ReadCommandFile myfile.txt

Se il nome del file ha degli spazi, collocare il testo tra virgolette. Per esempio:

-ReadCommandFile "my file.txt"

Esempio

Creare un file di testo che contiene i comandi per creare una serie di curve (come nell'esempio) e quindi generare le curve tutte in una volta utilizzando LeggiFileComandi.

! _interpcrv

23,5,0

23.2,5,0

23.7,5.2,1

_Enter

_interpcrv

26.1,4.9,1.1

26.8,4.9,1.0

27.1,4.8,0.9

_Enter

etc&.

Eco

Il comando Eco attiva l'eco dei comandi macro nella finestra dello storico dei comandi.

Per disattivare l'eco, usare il comando NoEco.

NoEco

Il comando NoEco disattiva l'eco dei comandi macro nella finestra dello storico dei comandi.

Per attivare l'eco, usare il comando Eco.

Nota: NoEco o _NoEcho devono essere la prima parola della macro per un corretto funzionamento. Tutto il resto va di seguito, compreso il punto esclamativo, separato da uno spazio.

Invio

Il comando Invio funziona come quando si preme Invio in uno script o quando si programmano i pulsanti delle barre degli strumenti.

Esempio

Questo script imposta un piano di costruzione rispetto ai tre punti selezionati:

'_CPlane _3Point

_Pause _Pause _Pause _Enter

Nota: Il comando Invio non ripete il comando precedente come fa la pressione di Invio.

InvioFine

Il comando InvioFine ha la stessa funzione della pressione del tasto Invio per completare una stringa di comando; da usare nelle macro o quando si programmano i pulsanti delle barre degli strumenti.

InvioFine (_EnterEnd) è comodo quando un comando è "profondo" in termini di opzioni di comando (per esempio i comandi Opzioni o ProprietaDocumento) e si desidera uscire dopo una di queste opzioni senza dover contare il numero di "Invio" necessari per ritornare su un prompt dei comandi vuoto. Per esempio:

! _-DocumentProperties _Mesh _Custom _MaxEdgeSrf .01

richiederebbe almeno due o tre "Invio" per uscire dal comando. Con InvioFine, il comando termina quando lo si desidera.

Esempio

! _-DocumentProperties _Mesh _Custom _MaxEdgeSrf .01 _EnterEnd

Esci

Il comando Esci chiude la sessione corrente di Rhino.

Pausa

Esempio

Questa macro richiede l'inserimento di un punto e quindi traccia un cerchio centrato su di esso, con raggio pari a 50.

! _Circle _Pause 50

Il comando Pausa arresta una macro per consentire l'input da parte dell'utente.

Esegui

Il comando Esegui avvia un'altra applicazione dall'interno di Rhino.

Passi

Digitare il nome ed il percorso del file da eseguire.

AggiornamentoOff

Il comando AggiornamentoOff disattiva l'aggiornamento dello schermo, del piano di costruzione e della camera durante gli script.

Per riattivare l'aggiornamento dello schermo

Usare il comando AggiornamentoOn.

AggiornamentoOn

Il comando AggiornamentoOn attiva l'aggiornamento dello schermo, del piano di costruzione e della camera durante gli script.

Per disattivare l'aggiornamento dello schermo

Usare il comando AggiornamentoOff.

EseguiScriptPython

Il comando EseguiScriptPython esegue uno script di Python.

Per il riferimento online di Rhino.Python per la programmazione, si veda: http://www.rhino3d.com/5/ironpython/index.html.

-EseguiScriptPython

Opzioni

ReimpostaMotore

Forza la reinizializzazione del motore di python. Questa opzione è utile solo durante la scrittura e la verifica di script di Python che abbracciano più file.

ModificaScriptPython

Il comando ModificaScriptPython modifica uno script di Python.

Per ulteriori informazioni sugli script di Rhino, si veda: http://wiki.mcneel.com/developer/python.

ImpostaInfoTestoUtente

Il comando ImpostaInfoTestoUtente allega informazioni di testo ad un oggetto.

Le informazioni vengono memorizzate in una chiave/valore come quelli usati dal registro di Windows.

Recuperare le informazioni con il comando OttieniInfoTestoUtente. Queste informazioni possono essere allegate anche tramite i plug-in .NET e gli script VisualBasic.

Queste informazioni sono facilmente accessibili in .NET e script di Visual Basic.

Esempio

Chiave testo = Peso

Testo = chilogrammi

Passi

1. Selezionare gli oggetti.
2. Digitare una chiave testo.
3. Digitare il testo.

Per rimuovere una chiave

1. Selezionare gli oggetti.
2. Digitare una chiave testo.
3. Digitare "" (doppi apici).

Opzioni

AssociaA

Oggetto

Allega informazioni di testo alla geometria di un oggetto.

Se le informazioni sono strettamente associate alla geometria, allegarle alla geometria. Per esempio, il raggio di un cerchio va allegato alla geometria perché le informazioni non saranno valide se il cerchio viene modificato tramite punti di controllo e trasformato in una curva NURBS.

Attributi

Allega informazioni di testo agli attributi di un oggetto.

Se le informazioni sono informazioni attributi di livello superiore, come il colore, esse andrebbero allegate agli attributi dell'oggetto. Le informazioni attributi si mantengono quando un oggetto viene editato tramite punti di controllo, troncato, copiato e così via.

OttieniInfoTestoUtente

Il comando OttieniInfoTestoUtente recupera le informazioni di testo associate ad un oggetto tramite il comando ImpostaInfoTestoUtente. Queste informazioni possono essere recuperate anche tramite i plug-in .NET e gli script VisualBasic.

Passi

1. Selezionare un oggetto.
2. Digitare una chiave testo oppure premere Invio per tutte le chiavi.

ImpostaTestoUtenteDocumento

Il comando ImpostaTestoUtenteDocumento allega informazioni di testo ad un file .3dm di Rhino.

Le informazioni vengono memorizzate in una chiave/valore come quelli usati dal registro di Windows.

Recuperare le informazioni con il comando OttieniTestoUtenteDocumento. Queste informazioni possono essere allegate anche tramite i plug-in .NET e gli script VisualBasic.

Queste informazioni sono facilmente accessibili in .NET e script di Visual Basic.

Passi

1. Digitare una chiave testo.
2. Digitare il testo.

OttieniTestoUtenteDocumento

Il comando OttieniTestoUtenteDocumento recupera le informazioni di testo associate tramite il comando ImpostaTestoUtenteDocumento. Queste informazioni possono essere recuperate anche tramite i plug-in .NET e gli script VisualBasic.

Passi

Digitare una chiave testo oppure premere Invio per tutte le chiavi.

Rhino for Mac © 2010-2015 Robert McNeel & Associates. 28-set-2015