557x
005058
2021-08-24

Rotazione del supporto nodale utilizzando l'interfaccia COM

Come posso ruotare un vincolo esterno nodale utilizzando l'interfaccia COM?


Risposta:

La rotazione di un vincolo esterno del nodo è definita per mezzo di un sistema di coordinate definito dall'utente. Im folgenden Beispiel wird ein Knotenlager um 45° um die z-Achse verdreht. Es ist dabei nicht erforderlich, über Knoten ein neues Koordinatensystem zu definieren. In diesem Fall genügt die Verwendung der Option RotatedSystemType, welches über die drei Verdrehungen um x-, y- und z-Achse eine räumliche Drehung des Lagers ermöglicht. Die Eingabe der Verdrehung erfolgt in Radiant:

Sub test_nodal_support()

Dim iApp As RFEM5.Application
Set iApp = GetObject(, "RFEM5.Application")

iApp.LockLicense

Dim iMod As RFEM5.IModel3
Set iMod = iApp.GetActiveModel

On Error GoTo e

'   get interface of modeldata
Dim iModData As RFEM5.IModelData2
Set iModData = iMod.GetModelData

'   get interface of nodal support
Dim iNs As RFEM5.INodalSupport
Set iNs = iModData.GetNodalSupport(1, AtNo)

'   get nodal support data
Dim ns As RFEM5.NodalSupport
ns = iNs.GetData

'   modify data
ns.ReferenceSystem = UserDefinedSystemType
ns.UserDefinedReferenceSystem.Axis1 = AxisX
ns.UserDefinedReferenceSystem.Axis2 = AxisY
ns.UserDefinedReferenceSystem.Type = RotatedSystemType
ns.UserDefinedReferenceSystem.RotationAngles.X = 0
ns.UserDefinedReferenceSystem.RotationAngles.Y = 0
ns.UserDefinedReferenceSystem.RotationAngles.Z = 45 * 3.14159265359 / 180

'   set nodal support data
iModData.PrepareModification
iNs.SetData ns
iModData.FinishModification

e:

If Err.Number <> 0 Then MsgBox Err.description, vbCritical, Err.Source

iMod.GetApplication.UnlockLicense
Set iMod = Nothing

End Sub

Das Programm nimmt das vorhandene Knotenlager eins aus dem aktuell geöffneten Modell und modifiziert es. Da das benutzerdefinierte Koordinatensystem kein direkter Bestandteil des Interfaces INodalSupport vom Knotenlager ist, kann die Verdrehung selbstverständlich auch beim Anlegen eines Knotenlagers übergeben werden.


Autore

Il signor Günthel fornisce supporto tecnico per i clienti di Dlubal Software e si prende cura delle loro richieste.

Download


;