问题:
如何通过COM接口创建带有非线性图的节点支座?
答案:
下面的VBA宏显示了创建带有非线性图的节点支座。 其源代码可以在“下载”部分找到。
'-------- -------------------------------------------------
子类NSupports()
'-------- -------------------------------------------------
Dim model As RFEM5.model
与IModelData一样的昏暗数据
支座Dim support(0)As RFEM5。
Dim ISup As RFEM5.INodalSupport
Dium ISupDia As RFEM5.IN线性图
Dim nlDiag As NonlinearityDiagram
对(2,1)区域进行双精度调暗处理
设置模型= GetObject(,“ RFEM5.Model”)
model.GetApplication.LockLicense
出现错误转到e
设置数据= model.GetModelData
support(0).No = 1
support(0).nodelist =“ 1”
support(0).SupportNonlinearityX = WorkingDiagramType
support(0).SupportConstantY = -1
support(0).SupportConstantZ = -1
support(0).RestraintConstantX = -1
support(0).RestraintConstantY = -1
support(0).RestraintConstantZ = -1
修改前数据
data.SetNodalSupports支持
修改后的数据
设置ISup = data.GetNodalSupport(1,AtNo)
设置ISupDia = ISup.GetNonlinearity(AlongAxisX)
区域(0,0)= 0
区域(0,1)= 0
区域(1,0)= 1
区域(1,1)= 2
区域(2,0)= 3
区域(2,1)= 4
nlDiag.PositiveZoneType = DiagramAfterLastStepType.StopDiagramType
nlDiag.PositiveZone =区域
nlDiag.Symmetric = True
修改前数据
ISupDia.SetData nlDiag
修改后的数据
e: 如果Err.Number 0那么MsgBox Err.Description,,Err.Source
设置数据=空
model.GetApplication.UnlockLicense
套装模型=什么都没有
结束子区域