При создании моделей с помощью веб-сервиса рекомендуется создавать модели, готовые к расчёту или проектированию, без необходимости вручную вносить изменения в RFEM.
Например, при задании конструкций с мембранами или канатами, только что созданная модель не может быть успешно рассчитана без аддонов.
Чтобы создать новую модель с включёнными аддонами, необходимо рассмотреть возможность использования методов .get_addon_statuses() и .set_addon_statuses().
Взгляните на пример ниже:
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)
В этом примере мы начнём с настройки каталога для базы данных RFEM и её импорта.
Затем мы создадим новую модель и новую переменную с названием "Аддоны".
Эта переменная создаётся по прямым инструкциям для сервера веб-сервиса RFEM 6 и понимается как 'addon_statuseslist'.
Благодаря методу 'get', наша переменная имеет структуру, понятную RFEM, и её можно редактировать.
Затем мы изменим этот объект, чтобы включить определённые аддоны внутри модели RFEM 6.
По умолчанию для аддонов в этом списке установлено состояние False. Изменение в нашем примере заключается в установке статуса аддонов на True, это означает, что они будут включены в новой модели.
После этого применяем метод .set_addon_statuses () с переменной "Аддоны" в качестве аргумента. При этом информация о статусе аддонов True будет отправлена обратно в RFEM и изменится только что созданная модель.
В этом примере показано, что включены только несколько аддонов, но в RFEM 6 доступно больше аддонов. Чтобы увидеть весь список доступных аддонов и их названия в объекте "Аддоны", используйте функцию «print(Addons)».
Исходный код Python доступен в файлах ниже.