当使用网络服务创建模型时,创建的模型不需要在 RFEM 中进行手动更改就可以进行计算或设计是非常有用的。
例如,在定义膜结构或索结构时,如果没有创建模块,则无法正确计算。
如果想要创建一个包含模块的新模型,可以考虑使用.get_addon_statuses()和.set_addon_statuses()方法。
请看下面的示例:
导入操作系统
导入系统
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") #创建新模型
Addons = Model.clientModel.service.get_addon_statuses()
#参见 addon_statuses_list 的结构
#打印(模块)
#design_addons 列表
Adons[0].stress_analysis_active = True
模块[0].steel_design_active = True
#分析列表
模块[3].structure_stability_active = True
Adons[3].form_finding_active = True
Model.clientModel.service.set_addon_statuses(模块)
在本例中,我们首先将目录设置为 RFEM 库,然后将其导入。
接下来,我们创建一个新的模型,并创建一个名为"Addons"的变量。
该变量是使用 RFEM 6 网络服务服务器的直接指令创建的,称为 'addon_statuses list'。
通过 'get' 方法,我们的变量具有一个 RFEM 可以识别并可以编辑的结构。
接下来,我们将修改该对象,以在 RFEM 6 模型中启用特定的模块。
默认情况下,列表中模块的状态为 False。 此示例中的修改是将模块的状态设置为 True,这意味着它们将在新模型中被启用。
然后再使用.set_addon_statuses()方法,将变量“Addons”作为参数。 这会将有关模块状态为 True 的信息发送回 RFEM 并更改新创建的模型。
在本例中,只显示了几个待激活的模块,但在 RFEM 6 中还可以使用更多模块。 要查看“模块”对象中可用模块的完整列表及其名称,请使用打印(模块)功能。
原始的 Python 代码可以在下面的文件中找到。