1150x
004484
07.07.2020

Question

Comment afficher les contraintes d'une surface via RF-COM ?


Réponse:

Les contraintes d'une surface peuvent être affichées via l'interface COM. Vous avez d'abord besoin de l'interface pour le modèle (IModel), puis de l'interface pour le calcul (ICalculation2). À l'aide de cette interface, vous pouvez obtenir l'interface pour les résultats (IResults2) :

Sub stresses_surfaces_example()
Dim iApp As RFEM5.Application
Dim iModel As RFEM5.model
Set iModel = GetObject(, "RFEM5.Model")

On Error GoTo E

If Not iModel Is Nothing Then
    '   get interface from model
    Set iApp = iModel.GetApplication
    iApp.LockLicense
    
    '   get interface from calculation
    Dim iCalc As RFEM5.ICalculation2
    Set iCalc = iModel.GetCalculation
    
    '   get interface from results from loadcase 1
    Dim iRes As RFEM5.IResults2
    Set iRes = iCalc.GetResultsInFeNodes(LoadCaseType, 1)
    
    '   get equivalent stresses
    Dim str_equ() As RFEM5.SurfaceEquivalentStresses
    str_equ = iRes.GetSurfaceEquivalentStresses(1, AtNo, VonMisesHypothesis)
    
End If

E:
If Err.Number <> 0 Then
    MsgBox Err.Number & " " & Err.description
End If

If Not iApp Is Nothing Then
    iApp.UnlockLicense
End If

La fonction GetSurfaceEquivalentStresses requiert la spécification de l'hypothèse de calcul. Dans ce cas, les résultats de la contrainte de von Mises sont affichés. Veuillez noter que l'interface COM utilise des unités SI, la contrainte est donc transférée en N/m².