Question :
Comment transférer les longueurs efficaces des barres à l'aide de l'interface COM ?
Réponse :
Les facteurs pour les longueurs efficaces sont transférés à l'aide de l'interface pour la barre (IMember) appelée SetEffectiveLengths(). Lisez les données à l'aide de GetEffectiveLengths() :
//obtenir l'interface pour exécuter l'application RFEM.
iApp = Marshal.GetActiveObject("RFEM5.Application") as IApplication;
iApp.LockLicense();
//obtenir l'interface avec le modèle RFEM actif.
iModel = iApp.GetActiveModel();
//obtenir l'interface pour modéliser les données.
IModelData2 iModData = iModel.GetModelData() as IModelData2;
//obtenir l'interface avec la barre 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;
//définition des nouvelles longueurs efficaces
iModData.PrepareModification();
iMem.SetEffectiveLengths(memEffLen);
iModData.FinishModification();
Notez qu'il est uniquement possible de lire les propriétés des longueurs efficaces (par exemple EffectiveLengthY) de la structure MemberEffectiveLengths et la propriété CriticalBucklingLoad.