991x
004951
22.02.2021

Question

Comment puis-je lire les déformations globales ou locales des barres à l'aide de l'interface COM ?


Réponse:

Les déformations des barres peuvent être lues à l'aide de la fonction « GetMemberDeformations() », par exemple. Cette fonction attend un nombre, le type de méthode de comptage des barres (numéro de barre/numéro dans la liste) et le système de coordonnées à utiliser. Vous pouvez choisir d'utiliser le système d'axes local, le système d'axes principal ou le système de coordonnées global :

Sub test_results_member_axis ()

Dim iApp As RFEM5.Application
Set iApp = GetObject(, "RFEM5.Application")

iApp.LockLicense

Dim iMod As RFEM5.IModel3
Set iMod = iApp.GetActiveModel


On Error GoTo e

'obtenir l'interface pour le calcul
Dim iCalc As RFEM5.ICalculation2
Set iCalc = iMod.GetCalculation

'obtenir l'interface pour les résultats
Dim iRes As RFEM5.IResults2
Set iRes = iCalc.GetResultsInFeNodes(LoadCaseType, 1)

'obtenir les déformations dans le système de coordonnées local
Dim memDefs_L() As RFEM5.MemberDeformations
memDefs_L = iRes.GetMemberDeformations(1, AtNo, LocalMemberAxes)

'obtenir les déformations dans le système de coordonnées global
Dim memDefs_G() As RFEM5.MemberDeformations
memDefs_G = iRes.GetMemberDeformations(1, AtNo, GlobalAxes)

'obtenir les déformations dans le système de coordonnées principal
Dim memDefs_P() As RFEM5.MemberDeformations
memDefs_P = iRes.GetMemberDeformations(1, AtNo, LocalPrincipalAxes)


e:

If Err.Number <> 0 Then MsgBox Err.description, vbCritical, Err.Source

iMod.GetApplication.UnlockLicense
Set iMod = Nothing

End Sub


Le petit programme lit les déformations locales (memDefs_L) dans les axes de barre et les axes principaux (memDefs_P) et les déformations globales dans les axes de barre (memDefs_G).