Wat is een API (Application Programming Interface)
Een set regels en protocollen waarmee verschillende softwareapplicaties met elkaar kunnen communiceren. Het definieert hoe verzoeken en antwoorden gestructureerd moeten zijn, zodat ontwikkelaars vooraf gedefinieerde functies of services kunnen gebruiken zonder de interne werking ervan te begrijpen.
REST API in IDEA StatiCa Connection - is een lokaal gehoste webservice die REST-principes volgt, waarmee systemen kunnen communiceren via standaard HTTP-methoden om bewerkingen uit te voeren op resources, doorgaans weergegeven in JSON-formaat.
Resources en GITHUB
De bron van bestaande en vooraf gedefinieerde voorbeelden is te vinden op onze GitHub:
Hoe te beginnen
De tutorial wordt geïntroduceerd in combinatie met de programmeertaal Python. U kunt de nieuwste versie hier downloaden. U kunt veel Integrated Development Environments (IDE) gebruiken als tools voor efficiënt coderen, debuggen en testen. Hier zijn enkele opties:
Hoe de API te starten
De API-launcher is te vinden in de map waar uw nieuwste versie van IDEA StatiCa is opgeslagen. Voer eenvoudig het uitvoerbare bestand uit.

Als u "IdeaStatiCa.ConnectionRestApi.exe" uitvoert, verschijnt de CMD (opdrachtprompt) en kunt u uw localhost zien en de Swagger-app openen, waarmee u de structuur van de code voor het aansturen van de API kunt bekijken. Druk op Control + Linkermuisknop om Swagger te openen.

De Swagger in de online modus biedt u een overzicht van de API-opties voor het ontwerp van verbindingen.

Hoe Python te openen en het API-pakket te installeren
Ik maak gebruik van PyCharm, waarbij alle stappen worden beschreven. Het werkt op dezelfde manier met de andere tools. Open Python en maak een Nieuw Project aan.

Installeer het pakket " ideastatica_connection_api". Begin met het openen van de terminal en schrijf "pip install ideastatica_connection_api". Als u dit commando uitvoert, wordt de bibliotheek voor de API geïnstalleerd.
"pip install ideastatica_connection_api" - werkt voor de nieuwste versie van IDEA StatiCa. Als u oudere versies heeft, moet u de versie exact opgeven om de juiste API-bibliotheek aan te roepen.
(Bijvoorbeeld: "pip install ideastatica_connection_api==25.1.1.923" )

De bovengenoemde stappen zijn verplicht en moeten dienovereenkomstig worden uitgevoerd. Anders zal de API niet naar behoren werken.
Een project openen in de desktopapplicatie
Het doel is om de simulatie en uitvoer te besturen via de Python-interface en de resultaten rechtstreeks in de console te lezen.
Open de lasverbinding en voer de berekening uit voor LE1 en haal de resultaten op. Zoals u kunt zien, slagen alle normtoetsingen. U kunt doorgaan naar Python.

Python-script
Importeer de pakketten die het gebruik van de berekening en de koppeling met de localhost-URL mogelijk maken.
Broncode:
## Link with baseUrl
import ideastatica_connection_api.connection_api_service_attacher as connection_api_service_attacher

Configureer de logging via de variabele "baseUrl," die uw localhost ophaalt. Koppel in de tweede stap het absolute pad van uw IDEA StatiCa Connection-bestand.
Broncode:
## 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)

Koppel de client aan een reeds actieve service (1). Gebruik het try/except-blok - als het try-blok een fout genereert, wordt het except-blok uitgevoerd. In de eerste fase is het noodzakelijk het project te openen (2) en de project-ID van uw project te vinden, die uniek is voor elk IDEA StatiCa-project (3). Als u het script uitvoert, kunt u het afgedrukte pad en de unieke ID aflezen (4).
Broncode:
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)

Extraheer de "connection_ID" die de te berekenen verbinding identificeert (1). Voer de simulatie uit met de variabele "calculation_run," die twee verplichte parameters vereist die tussen haakjes zijn aangegeven (2). Als de simulatie is uitgevoerd, ziet u de verbindings-ID en de informatie dat uw analyse is geslaagd (3).
Broncode:
## 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')

In de laatste stap leert u hoe u de resultaten kunt afdrukken (1) en hoe u over alle benuttingsgraden kunt itereren (2) die standaard op het bureaublad worden weergegeven (3).
Broncode:
## 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)

Conclusie
U heeft ervaring opgedaan met de API voor het ontwerp van verbindingen. U heeft geleerd welke tools geïnstalleerd moeten worden, hoe u de REST API-service koppelt en hoe u met Python-code de resultaten ophaalt.
