Pytanie:
Jak za pomocą interfejsu COM odczytać globalne lub lokalne deformacje prętów?
Odpowiedź:
Odkształcenia prętów można odczytać na przykład za pomocą funkcji "GetMemberDeformations (). Funkcja ta oczekuje numeru, typu metody liczenia dla prętów (numer pręta/numer na liście) oraz układu współrzędnych, który ma zostać zastosowany. Można wybrać, czy ma zostać zastosowany lokalny układ współrzędnych, układ osi głównych czy globalny układ współrzędnych.
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
'pobierz interfejs do obliczeń
Dim iCalc As RFEM5.ICalculation2
Ustaw iCalc = iMod.GetCalculation
'pobierz interfejs dla wyników
Dim iRes As RFEM5.IResults2
Ustaw iRes = iCalc.GetResultsInFeNodes(LoadCaseType, 1)
'pobierz deformacje w lokalnym układzie współrzędnych
Dim memDefs_L () As RFEM5.MemberDeformations
memDefs_L = iRes.GetMemberDeformations(1, AtNo, LocalMemberAxes)
'pobierz deformacje w globalnym układzie współrzędnych
Dim memDefs_G () As RFEM5.MemberDeformations
memDefs_G = iRes.GetMemberDeformations(1, AtNo, GlobalAxes)
'pobierz deformacje w głównym układzie współrzędnych
Dim memDefs_P () As RFEM5.MemberDeformations
memDefs_P = iRes.GetMemberDeformations(1, AtNo, LocalPrincipalAxes)
e:
Jeżeli Err.Number 0 to MsgBox Err.description, vbCritical, Err.Source
iMod.GetApplication.UnlockLicense
Ustaw iMod = Nic
End Sub
Mały program odczytuje lokalne odkształcenia (memDefs_L) w osiach pręta i osiach głównych (memDefs_P) oraz globalne odkształcenia w osiach pręta (memDefs_G).