Sous-ensembleNLDiagram ()
Dim model As RFEM5.model
Set model = GetObject(, "RFEM5.Model")
On Error GoTo e
Dim iApp As RFEM5.Application
Set iApp = model.GetApplication
iApp.LockLicense
iApp.Show
Dim iModelData As RFEM5.iModelData
Set iModdata = model.GetModelData
' modifier l'articulation d'extrémité de barre
' définir la non-linéarité « Diagramme » pour la translation x
Dim iMemHing As RFEM5.IMemberHinge
Set iMemHing = iModelData.GetMemberHinge (1, AtNo)
Dim memHing As RFEM5.MemberHinge
memHing = iMemHing.GetData ()
memHing.TranslationalConstantX = 0
memHing.TranslationalNonlinearityX = WorkingDagramType
' Définir de nouvelles données
iModelData.PrepareModification
iMemHing.SetData memHing
iModelData.FinishModification
' créer un diagramme
Dim tbl1 () As Double
ReDim tbl1 (1, 1)
tbl1 (0, 0) = 0 ' ux
tbl1 (0, 1) = 0 ' Px
tbl1 (1, 0) = 0,02 ' ux (mm)
tbl1 (1, 1) = 2000 ' Px (N)
Dim nldHing As RFEM5.NonlinearityDiagram
nldHing.ForceType = StiffnessDiagramForceType.NoneStiffnessForce
nldHing.PositiveZoneType=DiagrammeAfterLastStepType.TaringDiagramType
nldHing.PositiveZone = tbl1
nldHing.Symetric = True
Dim iNldiag As RFEM5.INonlinearityDiagram
Set iNldiag = iMemHing.GetNonlinearity (AlongAxisX)
' Définir de nouvelles données
iModelData.PrepareModification
iNldiag.SetData nldHing
iModelData.FinishModification
e: If Err.Number <> 0 Then MsgBox Err.description, , Err.Source
model.GetApplication.UnlockLicense
End Sub