433x
003570
10. September 2019

Frage

Kann man über die COM-Schnittstelle Knotenfreigaben anlegen?


Antwort:

Ja, das Anlegen von Knotenfreigaben über die COM-Schnittstelle ist möglich. Hier ein Beispiel:

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


Es ist noch zu beachten, dass das lokale Achsensystem sich nicht auf die gleichen Elemente beziehen darf wie die, die freigegeben werden.