Risposta:
La seguente macro VBA mostra la creazione di un vincolo esterno del nodo con non linearità "Attività parziale". Il codice sorgente si trova in Download.
- code.en#
Opzione esplicita
'------------
SubsetNSupports()
'------------
Dim modello Come RFEM5.model
Dim data As IModelData
Dim support(0) As RFEM5.NodalSupport
Dim ISup As RFEM5.INodalSupport
Dim ISupPA As RFEM5.IPartialActivity
Dim nlPA As PartialActivity
- Set model = GetObject(, "RFEM5.Model")
- model.GetApplication.LockLicense
- On Error GoTo e
- Imposta dati = modello.GetModelData
- vincolo esterno(0).Nr = 1
- support(0).NodeList = "1"
- support(0).SupportConstantX = -1
- support(0).SupportNonlinearityX = PartialActivityNLType
- support(0).SupportConstantY = -1
- support(0).SupportConstantZ = -1
- support(0).RestraintConstantX = -1
- support(0).RestraintConstantY = -1
- support(0).RestraintConstantZ = -1
- data.PrepareModificazione
- vincolo esterno data.SetNodalSupports
- data.FinishModulation
- Imposta ISup = data.GetNodalSupport(1, AtNo)
- Imposta ISupPA = ISup.GetNonlinearity(AlongAxisX)
- nlPA.PositiveZone = CompleteActivityType
- nlPA.PositiveSlippage = 0,005
- nlPA.NegativeZone = FailureActivityType
- data.PrepareModificazione
- ISupPA.SetData nlPA
- data.FinishModulation
e: Se Err.Number <> 0 Then MsgBox Err.Description, , Err.Source
- Imposta dati = Niente
- model.GetApplication.UnlockLicense
- Set model = Nothing
End Sub
- /codice#