Con Dynamo 2.0 è possibile specificare un modello di default (.py extension) da utilizzare all'apertura della finestra di Python per la prima volta. Questa è stata una richiesta a lungo desiderata perché consente di accelerare l'utilizzo di Python all'interno di Dynamo. La possibilità di utilizzare un modello consente di avere importazioni di default pronte per lo sviluppo di uno script Python personalizzato.
La posizione di questo modello è APPDATA per l'installazione di Dynamo.
In genere, è la seguente: ( %appdata%\Dynamo\Dynamo Core\{version}\ ).
!
Configurazione del modello
Per utilizzare questa funzionalità, è necessario aggiungere la seguente riga nel file DynamoSettings.xml. (Modifica nel Blocco note)
!
Dove è visibile la riga <PythonTemplateFilePath />, è sufficiente sostituirla con quanto segue:
Successivamente, è necessario creare un modello con le funzionalità incorporate che si desidera utilizzare. In questo caso, si incorporano le importazioni correlate a Revit e alcuni degli altri elementi tipici quando si utilizza Revit.
È possibile aprire un documento del Blocco note vuoto e incollare il seguente codice all'interno:
import clrclr.AddReference('RevitAPI')from Autodesk.Revit.DBimport*from Autodesk.Revit.DB.Structure import*clr.AddReference('RevitAPIUI')from Autodesk.Revit.UIimport*clr.AddReference('System')from System.Collections.Generic import Listclr.AddReference('RevitNodes')import Revitclr.ImportExtensions(Revit.GeometryConversion)clr.ImportExtensions(Revit.Elements)clr.AddReference('RevitServices')import RevitServicesfrom RevitServices.Persistence import DocumentManagerfrom RevitServices.Transactions import TransactionManagerdoc = DocumentManager.Instance.CurrentDBDocumentuidoc=DocumentManager.Instance.CurrentUIApplication.ActiveUIDocument#Preparing input from dynamo to revitelement =UnwrapElement(IN[0])#Do some action in a TransactionTransactionManager.Instance.EnsureInTransaction(doc)TransactionManager.Instance.TransactionTaskDone()OUT= element
Al termine, salvare il file come PythonTemplate.py nella posizione APPDATA.
Funzionamento successivo dello script Python
Dopo aver definito un modello di Python, verrà cercato in Dynamo ogni volta che viene posizionato un nodo Python. Se non viene trovato, sarà simile alla finestra di Python di default.
!
Se viene trovato il modello di Python (ad esempio, come il modello di Revit), verranno visualizzati tutti gli elementi di default incorporati.
!
Ulteriori informazioni su questa straordinaria aggiunta (di Radu Gidei) sono disponibili qui. https://github.com/DynamoDS/Dynamo/pull/8122