O atrito representa uma não linearidade e, portanto, só pode ser modificado através da interface para a articulação de barra.
Para tal, a articulação de barra deve ser criada primeiro, caso ainda não esteja disponível. Em seguida, é adicionada a interface IMemberHinge para a articulação de barra e depois para a não linearidade (aqui IFriction ). Über die Methoden GetData und SetData können dann die Daten (hier Friction) modifiziert werden:
Sub SetMemberHingeFriction()
Dim model As RFEM5.model
Set model = GetObject(, "RFEM5.Model")
model.GetApplication.LockLicense
On Error GoTo e
Dim data As IModelData
Set data = model.GetModelData
Dim hinge(0 To 0) As RFEM5.MemberHinge
hinge(0).No = 1
hinge(0).RotationalConstantX = 1
hinge(0).RotationalConstantY = 2
hinge(0).RotationalConstantZ = 3
hinge(0).TranslationalConstantX = 4
hinge(0).TranslationalConstantY = 5
hinge(0).TranslationalConstantZ = 6
hinge(0).Comment = "Member Hinge 1"
hinge(0).TranslationalNonlinearityX = FrictionAType
data.PrepareModification
data.SetMemberHinges hinge
data.FinishModification
' get interface for member hinge
Dim imemhing As IMemberHinge
Set imemhing = data.GetMemberHinge(1, AtNo)
' get interface for nonlinearity "friction"
Dim iFric As IFriction
Set iFric = imemhing.GetNonlinearity(AlongAxisX)
' get friction data
Dim fric As Friction
fric = iFric.GetData
fric.Coefficient1 = 0.3
' set friction data
data.PrepareModification
iFric.SetData fric
data.FinishModification
e: If Err.Number <> 0 Then MsgBox Err.Description, , Err.Source
Set data = Nothing
model.GetApplication.UnlockLicense
Set model = Nothing
End Sub
No caso do atrito Vy + Vz, o Coeficiente2 é utilizado para definir o segundo coeficiente. A mola de translação na caixa de diálogo Atrito é controlada pela mola de translação da articulação de barra. Neste caso em concreto, é TranslationalConstantX para a direção x (ver Figura 01).