0x
004181
25.11.2019

Création d’une poutre résultante à l’aide de l’interface COM

Comment créer une poutre résultante à l'aide de l’interface COM ?


Réponse:

Une poutre résultante est tout d’abord créée comme une barre normale :

    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 members(0) As RFEM5.Member
    
    members(0).No = 3
    members(0).LineNo = 12
    members(0).Type = ResultBeamType
    
    members(0).StartCrossSectionNo = 1
    members(0).EndCrossSectionNo = 1
    
    members(0).Comment = "result beam 1"

    data.PrepareModification
    data.SetMembers members
    data.FinishModification

Ensuite, l’interface IMember doit être extraite de la barre correspondante et la méthode GetExtraData permet d’obtenir l’interface avec IResultMember. Les données de ResultMember peuvent alors être lues et écrites à l’aide de cette interface. Veuillez noter qu’un bloc Prepare-/Finishmodification est requis lors de l’écriture :

    Dim iMem As IMember
    Set iMem = data.GetMember(3, AtNo)
    
    Dim iRMem As IResultBeam
    Set iRMem = iMem.GetExtraData
    
    Dim RMem As ResultBeam
    RMem = iRMem.GetData
    
    RMem.IncludeSurfaces = "1"
    RMem.IncludeSolids = "all"
    
    RMem.Integrate = WithinCuboidGeneral
    
    Dim params(0 To 3) As Double
    
    RMem.Parameters = params
    RMem.Parameters(0) = 0.5
    RMem.Parameters(1) = 0.5
    RMem.Parameters(2) = 0.1
    RMem.Parameters(3) = 0.1
    
    data.PrepareModification
    iRMem.SetData RMem
    data.FinishModification

Ci-dessus, la macro Excel préparée et le fichier de test correspondant.


Auteur

Thomas traite au sein du Customer Support les demandes techniques relatives au logiciel. Il se familiarise de manière fiable avec différents sujets et développe des solutions adaptées.

Téléchargements


;