La distribuzione del carico di una linea è definita dall'attributo "Distribuzione". L'attributo "Distribuzione" è del tipo "LoadDistributionType" e le voci dell'elenco della casella combinata sono del tipo "Stringa", quindi è necessaria la conversione del tipo. La funzione "GetLoadDistributionType" converte una voce dell'elenco di tipo String in un LoadDistributionType.
Fine funzione
La procedura "SetLineLoad" crea un carico di linea sulla linea 1. La distribuzione del carico viene letta dalla casella combinata "LoadDistribution" del foglio di lavoro Excel "LineLoad".
Sub SetLineLoads()
'-------------------------------------------------------------------------- --------------------------------------------------- -
Dim modello Come RFEM5.model
Carico debole come RFEM5.ILoadCase
Dim data(0) As RFEM5.LineLoad
'Ottieni l'interfaccia per il modello
Set model = GetObject(, "RFEM5.Model")
'Blocca la licenza COM e l'accesso al programma
model.GetApplication.LockLicense
On Error GoTo e
'Ottieni l'interfaccia per i carichi
Imposta carico = modello.GetLoads.GetLoadCase(0, AtIndex)
'Imposta i parametri per il carico lineare
data(0).No = 1
data(0).LineList = "1"
data(0).Type = ForceType
data(0).Distribution = GetLoadDistributionType(Worksheets("LineLoad").DropDowns("LoadDistribution").List(Worksheets("LineLoad").DropDowns("LoadDistribution").ListIndex))
data(0).Direction = LocalZType
data(0).DistanzaA = 11
data(0).DistanzaB = 22
data(0).RelativeDistances = True
data(0).Magnitudo1 = 4000
data(0).Magnitudo2 = 5000
data(0).Magnitudo3 = 6000
data(0).OverTotalLength = False
data(0).Comment = "carico della linea 1"
'Trasferisci il carico della linea
load.PrepareModification
load.SetLineLoads data
load.FinishModification
e: Se Err.Number <> 0 allora MsgBox Err.Description, , Err.Source
Imposta carico = Niente
'La licenza COM è sbloccata, l'accesso al programma è di nuovo possibile
model.GetApplication.UnlockLicense
Set model = Nothing
End Sub