Open Inventor Reference
|
NURBS curve shape node. More...
#include <Inventor/nodes/SoNurbsCurve.h>
Public Member Functions | |
SoNurbsCurve () | |
Creates a NURBS curve node with default settings. | |
virtual void | GLRender (SoGLRenderAction *action) |
Implements rendering by rendering each primitive generated by subclass. | |
virtual void | rayPick (SoRayPickAction *action) |
Implements picking along a ray by intersecting the ray with each primitive generated by subclass. | |
virtual void | getBoundingBox (SoGetBoundingBoxAction *action) |
Redefine this to tell open caches that they contain lines. | |
void | sendPrimitive (SoAction *, SoPrimitiveVertex *) |
Static Public Member Functions | |
static void | initClass () |
Initializes base node class. | |
Public Attributes | |
Fields | |
SoSFInt32 | numControlPoints |
Number of control points. | |
SoMFFloat | knotVector |
The knot vector. | |
Protected Member Functions | |
virtual void | generatePrimitives (SoAction *action) |
Generates triangles representing a sphere. | |
virtual void | computeBBox (SoAction *action, SbBox3f &box, SbVec3f ¢er) |
Computes bounding box of curve. | |
~SoNurbsCurve () |
This class represents a NURBS curve, based on the knot vector and the control points that you specify. The knotVector field specifies a floating-point array of values; the values are the coordinates of the knot points in the curve, and you must enter them in non-decreasing order. The curve will use the first numControlPoints values in the current coordinates as control points.
If you specify n knots, you can specify up to n-8 control points. The number of knots minus the number of control points is known as the order of the curve. A NURBS curve can have an order of up to 8.
The control points of the curve are transformed by the current transformation matrix. The curve is drawn with the current lighting model and drawing style (drawing style FILLED
is treated as LINES
). The coordinates, normals, and texture coordinates of a NURBS curve are generated, so you cannot bind explicit normals or texture coordinates to a NURBS curve.
The approximation of the curve by line segments is affected by the current complexity value.
NurbsCurve { numControlPoints 0 knotVector 0 }
Definition at line 128 of file SoNurbsCurve.h.
SoNurbsCurve::SoNurbsCurve | ( | ) |
SoNurbsCurve::~SoNurbsCurve | ( | ) | [protected] |
virtual void SoNurbsCurve::computeBBox | ( | SoAction * | action, |
SbBox3f & | box, | ||
SbVec3f & | center | ||
) | [protected, virtual] |
Implements SoShape.
virtual void SoNurbsCurve::generatePrimitives | ( | SoAction * | action | ) | [protected, virtual] |
Implements SoShape.
virtual void SoNurbsCurve::getBoundingBox | ( | SoGetBoundingBoxAction * | action | ) | [virtual] |
Reimplemented from SoShape.
virtual void SoNurbsCurve::GLRender | ( | SoGLRenderAction * | action | ) | [virtual] |
May be overridden in subclass.
Reimplemented from SoShape.
static void SoNurbsCurve::initClass | ( | ) | [static] |
Reimplemented from SoShape.
virtual void SoNurbsCurve::rayPick | ( | SoRayPickAction * | action | ) | [virtual] |
May be overridden in subclass.
Reimplemented from SoShape.
void SoNurbsCurve::sendPrimitive | ( | SoAction * | , |
SoPrimitiveVertex * | |||
) |
Definition at line 140 of file SoNurbsCurve.h.
Definition at line 137 of file SoNurbsCurve.h.