Jak zacząć pracę z API - Podstawy 01
Czym jest API (interfejs programowania aplikacji)
Zestaw reguł i protokołów umożliwiających komunikację między różnymi aplikacjami. Definiuje sposób strukturyzowania żądań i odpowiedzi, pozwalając programistom korzystać z predefiniowanych funkcji lub usług bez znajomości ich wewnętrznego działania.
REST API w IDEA StatiCa Connection - to lokalnie hostowana usługa sieciowa zgodna z zasadami REST, umożliwiająca systemom komunikację za pomocą standardowych metod HTTP w celu wykonywania operacji na zasobach, zazwyczaj reprezentowanych w formacie JSON.
Zasoby i GITHUB
Źródło istniejących i predefiniowanych przykładów jest dostępne na naszym GitHub:
Jak zacząć
Samouczek zostanie przedstawiony w połączeniu z językiem programowania Python. Najnowszą wersję można pobrać tutaj. Do efektywnego kodowania, debugowania i testowania można używać wielu zintegrowanych środowisk programistycznych (IDE). Oto kilka opcji:
Jak uruchomić API
Launcher API można znaleźć w folderze, w którym przechowywana jest najnowsza wersja IDEA StatiCa. Wystarczy uruchomić plik wykonywalny.
Po uruchomieniu pliku "IdeaStatiCa.ConnectionRestApi.exe" pojawi się okno CMD (wiersz poleceń) i będzie można zobaczyć adres localhost oraz otworzyć aplikację Swagger, która umożliwia podgląd struktury kodu do sterowania API. Naciśnij Ctrl + Lewy przycisk myszy, aby otworzyć Swagger.
Swagger w trybie online udostępnia przewodnik po opcjach API do projektowania połączeń.
Jak otworzyć Python i zainstalować pakiet API
W tym przykładzie używam PyCharm, który opisuje wszystkie kroki. Działa to tak samo w przypadku innych narzędzi. Otwórz Python i utwórz Nowy projekt.
Zainstaluj pakiet " ideastatica_connection_api". Otwórz terminal i wpisz "pip install ideastatica_connection_api". Po wykonaniu tego polecenia zostanie zainstalowana biblioteka API.
"pip install ideastatica_connection_api" - działa dla najnowszej wersji IDEA StatiCa. W przypadku starszych wersji należy podać dokładny numer wersji, aby wywołać odpowiednią bibliotekę API.
(Na przykład: "pip install ideastatica_connection_api==25.1.1.923" )
Powyższe kroki są obowiązkowe i należy je wykonać we właściwej kolejności. W przeciwnym razie API nie będzie działać poprawnie.
Otwieranie projektu w aplikacji desktopowej
Celem będzie sterowanie symulacją i wynikami za pomocą interfejsu Python oraz odczytywanie wyników bezpośrednio w konsoli.
Otwórz połączenie zakładkowe i uruchom obliczenia dla LE1, a następnie pobierz wyniki. Jak widać, cały zestaw sprawdzeń normowych jest spełniony. Możesz przejść do Pythona.
Skrypt Python
Zaimportuj pakiety, które umożliwią korzystanie z obliczeń i połączenie z adresem URL localhost.
Kod źródłowy:
## Link with baseUrl
import ideastatica_connection_api.connection_api_service_attacher as connection_api_service_attacher
Skonfiguruj logowanie za pomocą zmiennej "baseUrl", która wskaże adres localhost. W drugim kroku podaj bezwzględną ścieżkę do pliku IDEA StatiCa Connection.
Kod źródłowy:
## 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)
Powiąż klienta z już uruchomioną usługą (1). Użyj bloku try/except - jeśli blok try zgłosi błąd, zostanie wykonany blok except. W pierwszej fazie konieczne jest otwarcie projektu (2) i znalezienie identyfikatora projektu, który jest unikalny dla każdego projektu IDEA StatiCa (3). Po uruchomieniu skryptu można odczytać wydrukowaną ścieżkę wraz z unikalnym identyfikatorem (4).
Kod źródłowy:
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)
Wyodrębnij "connection_ID", który identyfikuje obliczane połączenie (1). Uruchom symulację za pomocą zmiennej "calculation_run", która wymaga dwóch obowiązkowych parametrów podanych w nawiasach (2). Po zakończeniu symulacji zostanie wyświetlony identyfikator połączenia oraz informacja o pomyślnym przeprowadzeniu analizy (3).
Kod źródłowy:
## 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')
W ostatnim kroku pokazano, jak wydrukować wyniki (1) oraz jak iterować po wszystkich stopniach wykorzystania (2), które są standardowo wyświetlane w aplikacji desktopowej (3).
Kod źródłowy:
## 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)
Podsumowanie
Zdobyłeś doświadczenie z API do projektowania połączeń. Nauczyłeś się, jakie narzędzia należy zainstalować, jak połączyć się z usługą REST API oraz jak korzystać z kodu Python, aby uzyskać wyniki.