486x
004797
2020-10-28

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.