Migrieren von SDK-Beispielen in die Revit-Makro-IDE

Wenn Sie den SDK-Beispielcode für Makros verwenden möchten, sind Änderungen erforderlich.

Das Revit SDK enthält zwei Beispielordner:

\Revit SDK <Version>\Software Development Kit\Samples\...

\Revit SDK <Version>\Software Development Kit\Macro Samples\...

Die Programme im SDK-Ordner \Samples\ verwenden die Standard-Revit-API. Diese Beispiele werden in diesem Kontext als "SDK-Beispielcode" bezeichnet, im Gegensatz zu "Revit Makro-Beispielen".

Folgen Sie den Anweisungen in diesem Abschnitt. Für die Programmiersprache werden C#-Beispiele verwendet. Diese Anweisungen gelten jedoch auch für die VB.NET-Versionen der SDK-Beispiele.

Erste Schritte

Die ersten Schritte zum Migrieren standardmäßiger API-Beispiele aus dem SDK in das Revit-Makro-IDE-Projekt sind mit den unter Integrieren von Makros in die Revit-IDE beschriebenen Schritten vergleichbar. Sie kopieren die Dateien jedoch nicht aus den SDK-Ordnern unter \Macro Samples\<Beispielname>\..., sondern aus den SDK-Ordnern unter \Samples\<Beispielname>\....

Hier noch einmal die Schritte im Überblick:

  1. Fügen Sie in der IDE erforderliche Verweise hinzu.
  2. Erstellen Sie in der IDE Ordner für die SDK-Beispiele, die Sie migrieren möchten.
  3. Kopieren Sie in Windows Explorer die standardmäßigen API-Beispieldateien des SDK in die entsprechenden Dateisystemordner.
  4. Fügen Sie in der IDE vorhandene Dateien zum Makroprojekt hinzu.

Aktualisieren des Codes der SDK-Beispiele

In der Revit-Makro-IDE ist die IExternalCommand-Schnittstelle nicht verfügbar und wird nicht verwendet. Im standardmäßigen API-Beispielcode des SDK müssen Sie die Klasse aktualisieren, die von dieser Schnittstelle übernommen wird:

Unbearbeitetes Codebeispiel

Der folgende Codeausschnitt stammt aus einem Programm, das die standardmäßige Revit-API verwendet:

Bearbeitetes Codebeispiel

In der Revit-Makro-IDE muss der Code wie folgt aktualisiert werden. In diesem Beispiel wird ein Anwendungsmakro verwendet. Die Methode RunSampleRooms () ist der Eintrag für dieses Makrobeispiel. Dabei wurde der Zeiger this verwendet, um commandData.Application zu ersetzen.

Zusätzliche Migrationshinweise für standardmäßige API-Beispiele des SDK