Erste Schritte mit der API – Grundlagen 01
Was ist eine API (Application Programming Interface)
Ein Satz von Regeln und Protokollen, der es verschiedenen Softwareanwendungen ermöglicht, miteinander zu kommunizieren. Er definiert, wie Anfragen und Antworten strukturiert sein sollen, und ermöglicht es Entwicklern, vordefinierte Funktionen oder Dienste zu nutzen, ohne deren interne Funktionsweise zu verstehen.
REST API in IDEA StatiCa Connection - ist ein lokal gehosteter Webdienst, der REST-Prinzipien folgt und es Systemen ermöglicht, über Standard-HTTP-Methoden zu kommunizieren, um Operationen an Ressourcen durchzuführen, die typischerweise im JSON-Format dargestellt werden.
Ressourcen und GITHUB
Die Quelle vorhandener und vordefinierter Beispiele ist auf unserem GitHub verlinkt:
Erste Schritte
Das Tutorial wird in Kombination mit der Programmiersprache Python vorgestellt. Die neueste Version können Sie hier herunterladen. Sie können viele integrierte Entwicklungsumgebungen (IDE) als Werkzeuge für effizientes Programmieren, Debuggen und Testen verwenden. Hier sind einige Optionen:
So wird die API gestartet
Den API-Launcher finden Sie in dem Ordner, in dem Ihre neueste Version von IDEA StatiCa gespeichert ist. Führen Sie einfach die ausführbare Datei aus.
Wenn Sie die "IdeaStatiCa.ConnectionRestApi.exe" ausführen, öffnet sich die Eingabeaufforderung (CMD), und Sie können Ihren Localhost sehen und die Swagger-App öffnen, die Ihnen die Struktur des Codes zur Steuerung der API anzeigt. Drücken Sie Strg + Linke Maustaste, um Swagger zu öffnen.
Swagger bietet im Online-Modus eine Übersicht über die API-Optionen für den Connection-Entwurf.
So öffnen Sie Python und installieren das API-Paket
Ich verwende PyCharm, das alle Schritte beschreibt. Mit den anderen Werkzeugen funktioniert es auf die gleiche Weise. Öffnen Sie Python und erstellen Sie ein Neues Projekt.
Installieren Sie das Paket " ideastatica_connection_api". Öffnen Sie zunächst das Terminal und geben Sie "pip install ideastatica_connection_api" ein. Wenn Sie diesen Befehl ausführen, wird die Bibliothek für die API installiert.
"pip install ideastatica_connection_api" - funktioniert für die neueste Version von IDEA StatiCa. Wenn Sie ältere Versionen verwenden, müssen Sie die Version genau angeben, um die entsprechende API-Bibliothek aufzurufen.
(Zum Beispiel: "pip install ideastatica_connection_api==25.1.1.923" )
Die oben genannten Schritte sind zwingend erforderlich und müssen entsprechend durchgeführt werden. Andernfalls wird die API nicht ordnungsgemäß funktionieren.
Ein Projekt in der Desktop-Anwendung öffnen
Das Ziel ist es, die Simulation und die Ausgabe über die Python-Schnittstelle zu steuern und die Ergebnisse direkt in der Konsole auszulesen.
Öffnen Sie die Laschverbindung und führen Sie die Berechnung für LE1 aus und lesen Sie die Ergebnisse aus. Wie Sie sehen, werden alle Nachweise erfüllt. Sie können mit Python fortfahren.
Python-Skript
Importieren Sie die Pakete, die die Verwendung der Berechnung und die Verknüpfung mit der Localhost-URL ermöglichen.
Quellcode:
## Link with baseUrl
import ideastatica_connection_api.connection_api_service_attacher as connection_api_service_attacher
Konfigurieren Sie das Logging über die Variable "baseUrl", die Ihren Localhost aufruft. Im zweiten Schritt verknüpfen Sie den absoluten Pfad Ihrer IDEA StatiCa Connection-Datei.
Quellcode:
## Configure logging
baseUrl = "http://localhost:5000"
## Absolute path into folder with your python script and connection module
project_file_path = r"C:\Users\LukasJuricek\Desktop\API_IDEA\Splice.ideaCon"
print(project_file_path)
Verbinden Sie den Client mit einem bereits laufenden Dienst (1). Verwenden Sie den try/except-Block – wenn der try-Block einen Fehler auslöst, wird der except-Block ausgeführt. In der ersten Phase ist es notwendig, das Projekt zu öffnen (2) und die Projekt-ID Ihres Projekts zu ermitteln, die für jedes IDEA StatiCa-Projekt eindeutig ist (3). Wenn Sie das Skript ausführen, können Sie den ausgegebenen Pfad und die eindeutige ID ablesen (4).
Quellcode:
with connection_api_service_attacher.ConnectionApiServiceAttacher(baseUrl).create_api_client() as api_client:
try:
## Open the project
openProject = api_client.project.open_project_from_filepath(project_file_path)
## Unique project ID that provide the control over the model
projectId = api_client.project.active_project_id
print(projectId)
Extrahieren Sie die "connection_ID", die die zu berechnende Verbindung identifiziert (1). Führen Sie die Simulation mit der Variable "calculation_run" aus, die zwei obligatorische Parameter benötigt, die in den Klammern angegeben sind (2). Wenn die Simulation abgeschlossen ist, sehen Sie die Verbindungs-ID und die Information, dass Ihre Analyse erfolgreich war (3).
Quellcode:
## Opening project that will be calculated
connection = openProject.connections[0]
print(connection)
connection_ID = [connection.id]
## Assigning connection ID
calculation_run = api_client.calculation.calculate(
projectId,
connection_ID
)
print('Finished')
Im letzten Schritt erfahren Sie, wie Sie die Ergebnisse ausgeben (1) und wie Sie über alle Ausnutzungsnachweise iterieren (2), die standardmäßig auf der Benutzeroberfläche angezeigt werden (3).
Quellcode:
## Postprocessing - extract the unity check of connection
Results = calculation_run[0].result_summary
## Loop over all unity checks like plates, bolts, welds
for results in Results:
print(results.unity_check_message)
except Exception as e:
print("Operation failed : %s\n" % e)
Fazit
Sie haben Erfahrung mit der API für den Verbindungsentwurf gesammelt. Sie haben gelernt, welche Werkzeuge installiert werden müssen, wie der REST-API-Dienst verbunden wird und wie Python-Code verwendet wird, um die Ergebnisse zu erhalten.