1SoNurbsCurve(3IV)() SoNurbsCurve(3IV)()
2
3
4
6 SoNurbsCurve — NURBS curve shape node
7
9 SoBase > SoFieldContainer > SoNode > SoShape > SoNurbsCurve
10
12 #include <Inventor/nodes/SoNurbsCurve.h>
13
14 Fields from class SoNurbsCurve:
15
16 SoSFInt32 numControlPoints
17 SoMFFloat knotVector
18
19 Methods from class SoNurbsCurve:
20
21 SoNurbsCurve()
22 static SoType getClassTypeId()
23
24 Methods from class SoNode:
25
26 void setOverride(SbBool state)
27 SbBool isOverride() const
28 SoNode * copy(SbBool copyConnections = FALSE) const
29 virtual SbBool affectsState() const
30 static SoNode * getByName(const SbName &name)
31 static int getByName(const SbName &name, SoNodeList &list)
32
33 Methods from class SoFieldContainer:
34
35 void setToDefaults()
36 SbBool hasDefaultValues() const
37 SbBool fieldsAreEqual(const SoFieldContainer *fc) const
38 void copyFieldValues(const SoFieldContainer *fc, SbBool
39 copyConnections = FALSE)
40 SbBool set(const char *fieldDataString)
41 void get(SbString &fieldDataString)
42 virtual int getFields(SoFieldList &resultList) const
43 virtual SoField * getField(const SbName &fieldName) const
44 SbBool getFieldName(const SoField *field, SbName &fieldName)
45 const
46 SbBool isNotifyEnabled() const
47 SbBool enableNotify(SbBool flag)
48
49 Methods from class SoBase:
50
51 void ref()
52 void unref() const
53 void unrefNoDelete() const
54 void touch()
55 virtual SoType getTypeId() const
56 SbBool isOfType(SoType type) const
57 virtual void setName(const SbName &name)
58 virtual SbName getName() const
59
60
62 This class represents a NURBS curve, based on the knot vector and the
63 control points that you specify. The knotVector field specifies a
64 floating-point array of values; the values are the coordinates of the
65 knot points in the curve, and you must enter them in non-decreasing
66 order. The curve will use the first numControlPoints values in the cur‐
67 rent coordinates as control points.
68
69 If you specify n knots, you can specify up to n-8 control points. The
70 number of knots minus the number of control points is known as the
71 order of the curve. A NURBS curve can have an order of up to 8.
72
73 The control points of the curve are transformed by the current trans‐
74 formation matrix. The curve is drawn with the current lighting model
75 and drawing style (drawing style FILLED is treated as LINES). The coor‐
76 dinates, normals, and texture coordinates of a NURBS curve are gener‐
77 ated, so you cannot bind explicit normals or texture coordinates to a
78 NURBS curve.
79
80 The approximation of the curve by line segments is affected by the cur‐
81 rent complexity value.
82
84 SoSFInt32 numControlPoints
85 Number of control points.
86
87 SoMFFloat knotVector
88 The knot vector.
89
90
92 SoNurbsCurve()
93 Creates a NURBS curve node with default settings.
94
95 static SoType getClassTypeId()
96 Returns type identifier for this class.
97
98
100 SoGLRenderAction
101 Draws the curve based on the current coordinates, material, and so
102 on.
103
104 SoRayPickAction
105 Picks the curve based on the current coordinates and transformation.
106
107 SoGetBoundingBoxAction
108 Computes the bounding box that encloses all control points of the
109 curve with the current transformation applied to them. Sets the cen‐
110 ter to the average of the control points.
111
112 SoCallbackAction
113 If any line segment callbacks are registered with the action, they
114 will be invoked for each successive segment approximating the curve.
115
116
118 NurbsCurve {
119 numControlPoints 0
120 knotVector 0
121 }
122
124 SoIndexedNurbsCurve, SoNurbsSurface
125
126
127
128
129 SoNurbsCurve(3IV)()