Pregunta:
¿Cómo puedo crear NURBS usando la interfaz COM?
Respuesta:
El objeto principal no es un objeto de línea, sino un objeto del tipo NurbSpline.
A continuación, se muestra un breve ejemplo para la creación de un NURBS (Non-Uniform Rational B-Spline):
'------------------------------------------------- -------------------------------------------------
Sub nurbs_test ()
' ----------------------------------------------- -------------------------------------------------- -
Dim model As RFEM5.model
Establecer modelo = GetObject (, "RFEM5.Model")
model.GetApplication.LockLicense
On Error GoTo e
Dim data As IModelData
Set data = model.GetModelData
'definir matriz de nodos
Atenuar nodos (0 a 2) como RFEM5.Node
nudos (0) .No = 1
nodos (0) .Tipo = Estándar
nudos (0) .CS = cartesiano
nudos (0) .X = 1
nudos (0) .Y = 1
nudos (0) .Z = 0
nudos (1) .No = 2
nudos (1) .Tipo = Estándar
nudos (1) .CS = cartesiano
nudos (1) .X = 2
nudos (1) .Y = 1
nudos (1) .Z = -1
nudos (2) .No = 3
nudos (2) .Tipo = Estándar
nudos (2) .CS = cartesiano
nodos (2) .RefObjectNo = 2
nudos (2) .X = 0
nudos (2) .Y = 1
nudos (2) .Z = 0
Atenuar darr1 (0 a 5) como doble
darr1 (0) = 0
darr1 (1) = 0
darr1 (2) = 0
darr1 (3) = 1
darr1 (4) = 1
darr1 (5) = 1
Atenuar darr2 (0 a 2) como doble
darr2 (0) = 1
darr2 (1) = 1
darr2 (2) = 1
Dim ns As NurbSpline
ns.General.No = 2
ns.General.Type = NurbSplineType
ns.General.NodeList = "1,2,3"
ns.General.Comment = "line 2"
ns.Knots = darr1
ns.Order = 3
ns.Weights = darr2
data.PrepareModification
data.SetNodes nodes
data.SetNurbSpline ns
e: data.FinishModification
Si Err.Number 0 Entonces MsgBox Err.Description`` Err.Source
Set data = Nothing
model.GetApplication.UnlockLicense
Set model = Nothing
End Sub