Podczas tworzenia modelu za pomocą WebSerwisów, przydatne jest tworzenie modeli, które są od razu gotowe do obliczeń lub projektowania bez konieczności ręcznego wprowadzania zmian w programie RFEM.
Przykładowo przy definiowaniu konstrukcji z membranami lub kablami nie da się pomyślnie obliczyć świeżo utworzonego modelu bez włączenia rozszerzeń.
Aby utworzyć nowy model z włączonymi rozszerzeniami należy skorzystać z metod metod .get_addon_statuses () i .set_addon_statuses ().
Proszę spojrzeć na poniższy przykład:
import os
import sys
baseName = os.path.basename(__file__)
dirName = os.path.dirname(__file__)
sys.path.append(dirName + r'/../../..')
from RFEM.initModel import Model
if __name__ == '__main__':
Model(True, "Hello Model") # Create new model
Addons = Model.clientModel.service.get_addon_statuses()
# See structure of addon_statuses_list
# print(Addons)
# design_addons list
Addons[0].stress_analysis_active = True
Addons[0].steel_design_active = True
# analysis list
Addons[3].structure_stability_active = True
Addons[3].form_finding_active = True
Model.clientModel.service.set_addon_statuses(Addons)
W tym przykładzie zaczynamy od ustawienia ścieżki katalogu z biblioteką RFEM i zaimportowania jej.
Następnie tworzymy Nowy model i tworzymy nową zmienną o nazwie „Addons”.
Zmienna ta tworzona jest za pomocą bezpośredniej instrukcji dla serwera RFEM 6 WebService Server i rozumiana jest jako „addon_statuses list”.
Dzięki zastosowaniu metody „get” nasza zmienna ma strukturę zrozumiałą dla programu RFEM i można ją edytować.
Następnie modyfikujemy ten obiekt, aby włączyć określone rozszerzenia w modelu RFEM 6.
Domyślnie stan rozszerzeń na tej liście jest ustawiony na False. Modyfikacja w tym przykładzie polega na ustawieniu stanu rozszerzeń na True, co oznacza, że zostaną one włączone w nowym modelu.
Następnie używamy metody .set_addon_statuses () ze zmienną "Addons" jako argumentem. Spowoduje to wysłanie informacji o statusie True wybranych rozszerzeń z powrotem do programu RFEM i zmianę świeżo utworzonego modelu.
W przykładzie pokazano sposób włączenia tylko wybranych rozszerzeń RFEM 6. Aby zobaczyć całą listę dostępnych rozszerzeń i ich nazwy w obiekcie „Addons”, użyj funkcji „print(Addons)”.
Oryginalny kod Python jest dostępny w plikach do pobrania poniżej.