Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
SoNurbsSurface(3IV)()					 SoNurbsSurface(3IV)()

NAME
       SoNurbsSurface -- NURBS surface shape node

INHERITS FROM
       SoBase >	SoFieldContainer > SoNode > SoShape > SoNurbsSurface

SYNOPSIS
       #include	<Inventor/nodes/SoNurbsSurface.h>

	  Fields from class SoNurbsSurface:

     SoSFInt32		 numUControlPoints
     SoSFInt32		 numVControlPoints
     SoSFInt32		 numSControlPoints
     SoSFInt32		 numTControlPoints
     SoMFFloat		 uKnotVector
     SoMFFloat		 vKnotVector
     SoMFFloat		 sKnotVector
     SoMFFloat		 tKnotVector

	  Methods from class SoNurbsSurface:

			 SoNurbsSurface()
     static SoType	 getClassTypeId()

	  Methods from class SoNode:

     void		 setOverride(SbBool state)
     SbBool		 isOverride() const
     SoNode *		 copy(SbBool copyConnections = FALSE) const
     virtual SbBool	 affectsState()	const
     static SoNode *	 getByName(const SbName	&name)
     static int		 getByName(const SbName	&name, SoNodeList &list)

	  Methods from class SoFieldContainer:

     void		 setToDefaults()
     SbBool		 hasDefaultValues() const
     SbBool		 fieldsAreEqual(const SoFieldContainer *fc) const
     void		 copyFieldValues(const	SoFieldContainer  *fc,	SbBool
			      copyConnections =	FALSE)
     SbBool		 set(const char	*fieldDataString)
     void		 get(SbString &fieldDataString)
     virtual int	 getFields(SoFieldList &resultList) const
     virtual SoField *	 getField(const	SbName &fieldName) const
     SbBool		 getFieldName(const SoField *field, SbName &fieldName)
			      const
     SbBool		 isNotifyEnabled() const
     SbBool		 enableNotify(SbBool flag)

	  Methods from class SoBase:

     void		 ref()
     void		 unref() const
     void		 unrefNoDelete() const
     void		 touch()
     virtual SoType	 getTypeId() const
     SbBool		 isOfType(SoType type) const
     virtual void	 setName(const SbName &name)
     virtual SbName	 getName() const

DESCRIPTION
       This  shape  node  represents  a	NURBS surface based on the node's knot
       vectors and on control points constructed from the current coordinates.
       The  current  coordinates  are used in row-major	order (the V direction
       corresponds to the rows). The number of coordinates used	is  determined
       by  the numUControlPoints and numVControlPoints fields. The uKnotVector
       and vKnotVector fields contain floating point arrays of	non-decreasing
       values.

       The  order  of  the surface in the U and	V directions is	defined	as the
       number of knots minus the number	of control points  in  the  particular
       direction. The largest order allowed for	a NURBS	surface	is 8.

       The  control points of the NURBS	surface	are transformed	by the current
       cumulative transformation. The surface is drawn with the	current	 light
       model  and drawing style. The coordinates, normals, and texture coordi-
       nates of	a surface are generated, so you	cannot bind  explicit  normals
       or  texture  coordinates	 to a NURBS surface. The first material	in the
       state is	applied	to the entire surface.

       The surface is trimmed according	to  the	 currently  defined  profile's
       curves.

       When  default  texture  coordinates are applied to a NURBS surface, the
       edges of	the texture square are stretched to fit	the surface. The  axes
       of  the	texture	are called S and T; S is horizontal and	T is vertical.
       The axes	of the NURBS surface are called	U and V; U is horizontal and V
       is  vertical.  You  can also define texture coordinates explicitly with
       the S,T location	point, the knot	vectors, and the current texture coor-
       dinates.

       The approximation of the	surface	by polygons is affected	by the current
       complexity value.

FIELDS
     SoSFInt32		 numUControlPoints
     SoSFInt32		 numVControlPoints
	  Number of control points in the U and	V directions.

     SoSFInt32		 numSControlPoints
     SoSFInt32		 numTControlPoints
	  Number of control points in the S and	T directions.

     SoMFFloat		 uKnotVector
     SoMFFloat		 vKnotVector
	  The knot vectors in the U and	V directions.

     SoMFFloat		 sKnotVector
     SoMFFloat		 tKnotVector
	  The knot vectors in the S and	T directions.

METHODS
			 SoNurbsSurface()
	  Creates a NURBS surface node with default settings.

     static SoType	 getClassTypeId()
	  Returns type identifier for this class.

ACTION BEHAVIOR
       SoGLRenderAction
	  Draws	the surface based on the current coordinates, material,	and so
	  on.

     SoRayPickAction
	  Picks	 the  surface based on the current coordinates and transforma-
	  tion.

     SoGetBoundingBoxAction
	  Computes the bounding	box that encloses all control  points  of  the
	  surface  with	 the  current transformation applied to	them. Sets the
	  center to the	average	of the control points.

     SoCallbackAction
	  If any triangle callbacks are	registered with	the action, they  will
	  be invoked for each successive triangle approximating	the surface.

FILE FORMAT/DEFAULTS
       NurbsSurface {
	  numUControlPoints  0
	  numVControlPoints  0
	  numSControlPoints  0
	  numTControlPoints  0
	  uKnotVector	     0
	  vKnotVector	     0
	  sKnotVector	     0
	  tKnotVector	     0
     }

SEE ALSO
       SoIndexedNurbsSurface, SoNurbsCurve, SoProfile

							 SoNurbsSurface(3IV)()

NAME | INHERITS FROM | SYNOPSIS | DESCRIPTION | FIELDS | METHODS | ACTION BEHAVIOR | FILE FORMAT/DEFAULTS | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=SoNurbsSurface&sektion=3iv&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help