API-Struktur und Hierarchie-Überblick

Die Skriptsprache von Autodesk® CFD verwendet Elemente, die für viele Programmiersprachen üblich sind. Die Sprache basiert auf einer Reihe von Klassen. Jede Klasse verfügt über eigene Eigenschaften und Methoden. Python ähnelt im Prinzip C++, hat jedoch bestimmte eindeutige syntaktische und Formatierungselemente.

In diesem Abschnitt werden einige der Konzepte von Python behandelt, die zur Verwendung der Autodesk® CFD-API wesentlich sind.

Eine allgemein zugängliche Ressource ist die offizielle Website für die Programmiersprache Python: http://python.org/.

Module

Die übergeordnete Ebene der API-Struktur bezieht sich direkt auf den Arbeitsablauf von Autodesk® CFD. Die Funktionalität wird in vier verschiedene Module unterteilt:

DC

DSE

Ergebnisse

Konfiguration

Um Zugriff auf eine Funktionalität innerhalb eines Moduls zu erhalten, müssen Sie diese am Anfang des Skripts benennen. Es wird empfohlen, alle Module zu initialisieren, um sicherzustellen, dass alle erforderlichen Funktionalitäten zur Verfügung stehen. Fügen Sie dazu die folgenden Zeilen an den Anfang Ihrer Skripte:

from CFD import Konfiguration

from CFD import Results

from CFD import DSE

from CFD import DC

API-Hierarchie

Jedes Modul enthält eine Reihe von Klassen. Jede Klasse enthält Methoden.

Klassenstruktur

Die API-Klassenstruktur hat eine bestimmte Hierarchie. Object ist die übergeordnete Klasse und hat mehrere Klassen unter sich. Die Klassen Container und SummaryObject haben jeweils eigene untergeordnete Klassen. Die komplette Klassenstruktur ist abgebildet:

Rufen Sie eine bestimmte statische Funktion auf, indem Sie die folgende Struktur verwenden:

Modul.Klasse.Funktion

Verwenden Sie zum Beispiel zur Definition der Variablen Studie in der aktuellen Designstudie diesen Befehl:

study = Setup.DesignStudy.Create()

Dadurch wird die Funktion Create aufgerufen, die in der Klasse DesignStudy enthalten ist, die wiederum im Modul Konfiguration zu finden ist.

Anmerkung: Die Klasse Object (die dem Modul Konfiguration zugeordnet ist) enthält Klassen, deren Objekte auch anderen Modulen zugeordnet sind. Beachten Sie, dass Klassen und Objekte nicht ein und dasselbe sind. Die Klasse CutPlane wird in der Hierarchie unter der Klasse Object angezeigt, dadurch übernimmt sie alle Mitglieder der Klasse Object. In dieser Hinsicht ist eine Schnittebene jedoch eine Abstraktion und bezieht sich auf eine Art von Objekt. Wenn Sie eine Schnittebene in einem Modell erstellen, ist es ein Objekt und keine Abstraktion. Daher ist es Teil des Moduls Ergebnisse.

Übernahme

Klassen in der API enthalten Mitgliedsfunktionen, mit denen bestimmte Funktionalitäten möglich werden. Unterklassen enthalten für sie spezifische Mitgliedsfunktionen und übernehmen auch die Mitgliedsfunktionen der übergeordneten Klassen.

Dieses Konzept wird als Übernahme bezeichnet. Es ist ein wichtiges API-Konzept.

So enthält etwa die Klasse SummaryPart ihre Mitglieder sowie die Mitglieder der Klasse SummaryObject und der Klasse Object:

Um alle Mitglieder anzuzeigen, auf die von einer Klasse zugegriffen werden kann, klicken Sie auf der Seite der API-Programmierreferenz, die die Klasse beschreibt, auf Liste aller Mitglieder. Dies ist die Liste für die Klasse SummaryPart:

Anmerkung: Die Mitglieder, die der untergeordneten Klasse zugeordnet sind, werden nicht von der übergeordneten Klasse übernommen.

Funktionstypen:

Die zwei Haupttypen von Funktionen, die in den meisten Klassen vertreten sind, sind Statische öffentliche Mitgliedsfunktionen und öffentliche Mitgliedsfunktionen.

Statische öffentliche Mitgliedsfunktionen

Die statischen öffentlichen Mitgliedsfunktionen können verwendet werden, wenn eine bestimmte Instanz der Klasse gegenwärtig nicht vorhanden ist. Viele statische öffentliche Mitgliedsfunktionen werden zum Erstellen von Objekten eingesetzt.

In der Klasse DesignStudy zum Beispiel, ist Erstellen eine statische Mitgliedsfunktion zum Erstellen oder Abrufen der aktuellen Designstudie. Der Befehl zum Abrufen der Designstudie ist:

Setup.DesignStudy.Create()

Öffentliche Mitgliedsfunktionen

Öffentliche Mitgliedsfunktionen führen Aktionen an einem Objekt aus, das bereits vorhanden ist.

In der Klasse DesignStudy zum Beispiel ist Save eine öffentliche Mitgliedsfunktion, die in einer Designstudie, die bereits vorhanden ist, aktiv ist. (Es ist nicht möglich, eine Designstudie zu speichern, die nicht existiert.)

Verwandte Themen

API (Application Programming Interface)

API-Programmierreferenz

Skripteditoren