418x
004199
8. November 2019

Frage

Wie kann man über die COM-Schnittstelle eine Imperfektion anlegen?


Antwort:

Eine Imperfektion gilt als Belastung und wird über das Interface des Lastfalls übergeben. Mit der Voraussetzung, dass das Interface zum Modell bereits geholt wurde, wird nun das Interface zu den Lasten (ILoads) und danach das Interface zum Lastfall 1 (ILoadCase) geholt, insofern dieser bereits angelegt wurde:

        '   set loadcases
        Dim iLoads As iLoads
        Set iLoads = model.GetLoads
        
        '   get load case
        Dim iLc1 As ILoadCase
        Set iLc1 = iLoads.GetLoadCase(1, AtNo)
        
        '   define imperfection
        Dim imperf As Imperfection
        imperf.Comment = "test"
        imperf.Direction = LocalZType
        imperf.Inclination = 200
        imperf.no = 1
        imperf.ObjectList = 1
        imperf.Precamber = 300
        imperf.PrecamberActivity = ActivityAccording_EN_1993_1_1
        
        '   set imperfection
        iLc1.PrepareModification
        iLc1.SetImperfection imperf
        iLc1.FinishModification

Die Daten der Imperfektion (Imperfection) werden danach zuerst ausgefüllt, hier für Stab 1, und dann innerhalb eines Prepare-/FinishModification Blocks des Lastfall Interfaces übergeben.