Pytanie:
Jak mogę przenieść efektywną długość prętów przy użyciu interfejsu COM?
Odpowiedź:
Współczynniki dla długości efektywnych są przenoszone przy użyciu interfejsu dla pręta (IMeber), który nosi nazwę SetEffectiveLengths () . Aby odczytać dane, użyj GetEffectiveLengths ():
//otrzymanie interfejsu do uruchomienia aplikacji RFEM.
iApp = Marshal.GetActiveObject("RFEM5.Application") jako IApplication;
iApp.LockLicense ();
//pozyskaj interfejs do aktywnego modelu w RFEM.
iModel = iApp.GetActiveModel ();
//pobranie interfejsu do danych modelu.
IModelData2 iModData = iModel.GetModelData () as IModelData2;
//pobierz interfejs do pręta 1
IMember iMem = iModData.GetMember (1, ItemAt.AtNo);
MemberEffectiveLengths memEffLen = iMem.GetEffectiveLengths ();
memEffLen.No = 1;
memEffLen.CheckBucklingLoad = true;
memEffLen.Enabled = true;
memEffLen. FactorU = 1,1;
memEffLen. FactorV = 1,2;
memEffLen.FactorY = 1.3;
memEffLen. Factor Z = 1,4;
//ustaw nowe dane dotyczące długości efektywnych
iModData.PrepareModification();
iMem.SetEffectiveLengths(memEffLen);
iModData.FinishModification();
Należy pamiętać, że odczytanie właściwości dla długości efektywnych jest możliwe tylko dla długości efektywnych (np. EffectiveLengthY) konstrukcji MemberEffectiveLengths oraz właściwości Krytyczne Obciążenie Wyboczeniowe.