430x
005416
2023-09-12

Jak mogę aktywować rozszerzenia modelu podczas za pomocą WebService?

Jak mogę aktywować rozszerzenia modelu podczas za pomocą WebService?
Jak utworzyć nowy model z aktywowanym rozszerzeniem?


Odpowiedź:

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.


Autor

Grzegorz Fulczyk wspiera rozwój sprzedaży na rynek polski oraz zapewnia wsparcie techniczne klientom firmy Dlubal Software.

Pobrane