Domanda:
Come posso creare le eccentricità delle aste in RS‑COM?
Risposta:
La seguente macro VBA mostra la creazione di due eccentricità delle aste. Il codice sorgente può essere trovato in Download.
'-------------------------------------------------------------------------- --------------------------------------------------- -
Sub SetEccs()
'-------------------------------------------------------------------------- --------------------------------------------------- -
Modello dim As RSTAB8.model
Dim data As IModelData
Dim ecc(1) As RSTAB8.MemberEccentricity
'Ottieni l'interfaccia per il modello
Imposta modello = GetObject ("RSTAB8.Model")
' Blocca la licenza COM e l'accesso al programma
model.GetApplication.LockLicense
On Error GoTo e
' Ottieni l'interfaccia per i dati del modello
Imposta dati = modello.GetModelData
'Definisci eccentricità 1
ecc(0).No = 1
ecc(0).ReferenceSystem = LocalSystemType
ecc(0).Inizio.X = 0,01
ecc(0).Inizio.Y = 0.02
ecc(0).Inizio.Z = 0.03
ecc(0).Fine.X = -0.01
ecc(0).Fine.Y = -0.02
ecc(0).Fine.Z = -0.03
ecc(0).Comment = "eccentricità 1"
'Definisci eccentricità 2
ecc(1).No = 2
ecc(1).ReferenceSystem = GlobalSystemType
ecc(1).Inizio.X = -0,07
ecc(1).Inizio.Y = -0,08
ecc(1).Inizio.Z = -0,09
ecc(1).Fine.X = 0.07
ecc(1).Fine.Y = 0.08
ecc(1).Z.Fine = 0.09
ecc(1).Comment = "eccentricità 2"
'Eccentricità di trasferimento dell'asta
data.PrepareModification
data.SetMemberEccentricities ecc
e: data.FinishModification
Se Err.Number 0 allora MsgBox Err.Description, , Err.Source
Imposta dati = Niente
' La licenza COM è sbloccata, l'accesso al programma è di nuovo possibile
model.GetApplication.UnlockLicense
Set model = Nothing
End Sub