问题:
例如,如何使用COM接口删除模型中的所有节点或杆件?
答案:
在模型数据接口中有删除对象(元素)功能“ DeleteObjects()”。 删除所有杆件的步骤如下:
子test_delete_objects()
iApp初版软件为RFEM5.Application
设置iApp = GetObject(,“ RFEM5.Application”)
iApp.LockLicense
iMod模块给RFEM5.IModel3
设置iMod = iApp.GetActiveModel
出现错误转到e
'获取模型数据的接口
将iModData设置为RFEM5.IModelData2
设置iModData = iMod.GetModelData
'得到所有的杆件。
Dim mems()As RFEM5.Member
mems()= iModData.GetMembers
''创建会员列表
将Dim mem_list设置为字符串
数值的整数
当i = 0到UBound(mems,1)
mem_list = mem_list&mems(i).no&“,”
更多
'删除杆件
iModData.PrepareModification
iModData.DeleteObjects memberObject,mem_list
iModData.FinishModification
e:
如果Err.Number为0,则MsgBox错误说明,vbCritical,错误来源
iMod.GetApplication.UnlockLicense
设置iMod =无
结束子区域
请注意,“删除对象”功能只适用于对象编号,不适用于对象索引。 这些编号将作为字符串传输,并以逗号分隔。
出于这个原因,必须首先提取所有杆件。 然后翻阅了杆件栏目,所有的杆件编号输入到该字符串中。