433x
003570
2019-09-10

Pergunta

É possível criar libertações de nós através da interface COM?


Resposta:

Sim, é possível criar libertações de nós através da interface COM. Aqui está um exemplo:

Sub nodal_release()

Dim iApp As RFEM5.Application
Dim iModel As RFEM5.model
    
On Error GoTo e
    
Set iApp = GetObject(, "RFEM5.Application")
iApp.LockLicense
        
test = iApp.GetModelCount
Set iModel = iApp.GetModel(0)
        
Dim iModeldata As RFEM5.iModeldata
Set iModeldata = iModel.GetModelData
        
        
' for setting a nodal release a member hinge is needed
' the object for the axis system could not be the same with the released one
Dim nodRel As NodalRelease
nodRel.Location = OriginalLocationType
nodRel.AxisSystem = LocalFromLine
nodRel.AxisSystemFromObjectNo = 2
nodRel.Comment = "test nodal release"
nodRel.MemberHingeNo = 1
nodRel.NodeNo = 1
nodRel.ReleasedMembers = 1
        
iModeldata.PrepareModification
iModeldata.SetNodalRelease nodRel
iModeldata.FinishModification
        
        
e: If Err.Number <> 0 Then MsgBox Err.description, , Err.Source
    
iApp.UnlockLicense


End Sub


Tenha em atenção que o sistema de eixos local não deve referir-se aos mesmos elementos que foram libertados.