Pergunta:
Como é que posso criar excentricidades de barras no RS-COM?
Resposta:
A seguinte macro VBA mostra a criação de duas excentricidades de barra. O código fonte pode ser encontrado em Downloads.
'--------------------------------------------------------------------------------------------------
Sub SetEccs()
'--------------------------------------------------------------------------------------------------
Dim model As RSTAB8.model
Dim data As IModelData
Dim ecc(1) As RSTAB8.MemberEccentricity
' Obter interface para o modelo
Definir modelo = GetObject (, "RSTAB8.Model")
' Bloquear licença COM e acesso ao programa
model.GetApplication.LockLicense
On Error GoTo e
' Obter interface para os dados do modelo
Set data = model.GetModelData
' Definir excentricidade 1
ecc (0) .Não = 1
ecc (0) .ReferenceSystem = LocalSystemType
ecc (0) .Inicio.X = 0,01
ecc (0) .Início.Y = 0,02
ecc (0) .Inicio.Z = 0,03
ecc (0) .End.X = -0,01
ecc (0) .End.Y = -0,02
ecc(0).Fim.Z = -0,03
ecc(0).Comment = "excentricidade 1"
'Definir excentricidade 2
ecc(1).Nº = 2
ecc(1).ReferenceSystem = GlobalSystemType
ecc(1).Inicio.X = -0,07
ecc(1).Inicio.Y = -0,08
ecc(1).Inicio.Z = -0,09
ecc(1).Fim.X = 0,07
ecc(1).Fim.Y = 0,08
ecc(1).Fim.Z = 0,09
ecc(1).Comment = "excentricidade 2"
'Transferir excentricidades de barra'
data.PrepareModification
data.SetMemberExcentricidades ecc
e: data.FinishModification
Se Err.Number 0 Então MsgBox Err.Description, , Err.Source
Set data = Nothing
' A licença COM está desbloqueada, o acesso ao programa é novamente possível
model.GetApplication.UnlockLicense
Set model = Nothing
End Sub