Das gewünschte Layout für Ihr Paket hängt von den Blocktypen ab, die Sie in das Paket aufnehmen. Vom Blockmodell abgeleitete Blöcke, ZeroTouch-Blöcke und benutzerdefinierte Blöcke weisen alle einen leicht unterschiedlichen Prozess zum Definieren der Kategorisierung auf. Sie können diese Blocktypen innerhalb desselben Pakets mischen und anpassen. Dies erfordert jedoch eine Kombination der unten beschriebenen Strategien.
NodeModel-Bibliotheken sind vorgabemäßig basierend auf der Klassenstruktur organisiert.
Der Block befindet sich in Add-Ons unter:
Sie können die Kategorie auch überschreiben, indem Sie das NodeCategory-Attribut für die Klasse oder im Konstruktor verwenden, wie unten gezeigt.
Der Block befindet sich nun in Add-Ons unter:
ZeroTouch-Bibliotheken sind vorgabemäßig ebenfalls basierend auf der Klassenstruktur organisiert.
Der Block befindet sich in Add-Ons unter:
Sie können den Speicherort der Klassenstruktur auch mithilfe einer XML-Datei für die Dynamo-Anpassung überschreiben.
Die XML-Datei muss entsprechend benannt und im Ordner extra
des Pakets enthalten sein.
PackageName_DynamoCustomization.xml
Benutzerdefinierte Blöcke werden während der Blockerstellung auf Grundlage des angegebenen Category Name
organisiert (mithilfe des neuen Dialogfelds Benutzerdefinierter Block).
WARNUNG!
Die Verwendung der Punktnotation in Blocknamen oder -kategorien führt zu zusätzlichen verschachtelten Unterkategorien. .
dient als Trennzeichen, um die zusätzliche Hierarchie festzulegen. Dies ist ein neues Verhalten in der Bibliothek für Dynamo 2.0.
Der Kategoriename kann später in der DYF-Datei (XML oder JSON) aktualisiert werden
Wenn ein Paketautor beschließt, zuvor vorhandene Blöcke in einer neuen Version umzubenennen, sollte er eine Möglichkeit zum Migrieren von Diagrammen bereitstellen, die Blöcke mit den alten Namen enthalten. Dies kann auf folgende Weise erreicht werden...
ZeroTouch-Blöcke verwenden eine Namespace.Migrations.XML
-Datei, die sich im Ordner bin
der Pakete befindet, z. B.:
MyZeroTouchLib.MyNodes.SayHello
bis MyZeroTouchLib.MyNodes.SayHelloRENAMED
Von NodeModel abgeleitete Blöcke verwenden das AlsoKnownAs
-Attribut für die Klasse, z. B.:
SampleLibraryUI.Examples.DropDownExample
bis SampleLibraryUI.Examples.DropDownExampleRENAMED