Antwort:
Die Übergabe der Faktoren für die effektiven Längen wird mit Hilfe des Interfaces für den Stab realisiert (IMember), sie heißt SetEffectiveLengths(). Mit GetEffectiveLengths() kann man die Daten auslesen:
// get interface to running RFEM application.
iApp = Marshal.GetActiveObject("RFEM5.Application") as IApplication;
iApp.LockLicense();
// get interface to active RFEM model.
iModel = iApp.GetActiveModel();
// get interface to model data.
IModelData2 iModData = iModel.GetModelData() as IModelData2;
// get interface to member 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.FactorZ = 1.4;
// set new effective lengths data
iModData.PrepareModification();
iMem.SetEffectiveLengths(memEffLen);
iModData.FinishModification();
Zu beachten ist, dass die Eigenschaften für die effektiven Längen (z. B. EffectiveLengthY) der Struktur MemberEffectiveLengths sowie die Eigenschaft CriticalBucklingLoad nur gelesen werden können.