H3D::NurbsTrimmedSurface Class Reference
[X3D node classes.]

The NurbsTrimmedSurface node defines a NURBS surface that is trimmed by a set of trimming loops. More...

#include <H3D/NurbsTrimmedSurface.h>

Inheritance diagram for H3D::NurbsTrimmedSurface:

Inheritance graph

List of all members.

Classes

class  AddContour
 This field class checks whether the given node is of the right type (Contour2D). More...
class  CheckContour
 This field class checks whether the given node is of the right type (Contour2D) for adding or removing. More...
class  RemoveContour
 This field class checks whether the given node is of the right type (Contour2D). More...

Public Member Functions

 NurbsTrimmedSurface (Inst< SFNode > _metadata=0, Inst< SFBound > _bound=0, Inst< DisplayList > _displayList=0, Inst< MFBool > _isTouched=0, Inst< MFVec3f > _force=0, Inst< MFVec3f > _contactPoint=0, Inst< MFVec3f > _contactNormal=0, Inst< AddContour > _addTrimmingContour=0, Inst< RemoveContour > _removeTrimmingContour=0, Inst< SFCoordinateNode > _controlPoint=0, Inst< TexCoordOrNurbsTex > _texCoord=0, Inst< CheckContour > _trimmingContour=0, Inst< SFInt32 > _uTessellation=0, Inst< SFInt32 > _vTessellation=0, Inst< MFDouble > _weight=0, Inst< SFBool > _solid=0, Inst< SFBool > _uClosed=0, Inst< SFBool > _vClosed=0, Inst< SFInt32 > _uDimension=0, Inst< SFInt32 > _vDimension=0, Inst< MFDouble > _uKnot=0, Inst< MFDouble > _vKnot=0, Inst< SFInt32 > _uOrder=0, Inst< SFInt32 > _vOrder=0)
 Constructor.
virtual void renderBetweenBeginEnd (GLUnurbsObj *nurbs_object, X3DTextureCoordinateNode *tex_coord_node, TextureCoordinateGenerator *tex_coord_gen, NurbsTextureCoordinate *nurbs_tex_coord, GLfloat *texKnotU, GLfloat *texKnotV, GLfloat *texCoordinates, GLfloat *u_knots, GLfloat *v_knots, H3DInt32 &sizeOfVertex, GLfloat *withWeights, H3DInt32 &uSizeToUse, H3DInt32 &vSizeToUse, H3DInt32 &map2Vertex3Or4)
 Function called by render to render the small part that differs between NurbsPatchSurface and NurbsTrimmedSurface.

Public Attributes

auto_ptr< AddContouraddTrimmingContour
 This field adds specified Contour2D nodes to the trimmingContour field.
auto_ptr< RemoveContourremoveTrimmingContour
 This field removes Contour2D nodes from the trimmingContour field.
auto_ptr< CheckContourtrimmingContour
 The trimmingContour field, if specified, shall contain a set of Contour2D nodes.

Static Public Attributes

static H3DNodeDatabase database
 The H3DNodeDatabase for this node.


Detailed Description

The NurbsTrimmedSurface node defines a NURBS surface that is trimmed by a set of trimming loops.

The outermost trimming loop shall be defined in a counterclockwise direction.

The trimmingContour field, if specified, shall contain a set of Contour2D nodes. Trimming loops shall be processed as described for the Contour2D node. If no trimming contours are defined, The NurbsTrimmedSurface node shall have the same semantics as the NurbsPatchSurface node.

Internal routes:
NurbsTrimmedSurface.dot

Member Function Documentation

void NurbsTrimmedSurface::renderBetweenBeginEnd ( GLUnurbsObj *  nurbs_object,
X3DTextureCoordinateNode tex_coord_node,
TextureCoordinateGenerator tex_coord_gen,
NurbsTextureCoordinate nurbs_tex_coord,
GLfloat *  texKnotU,
GLfloat *  texKnotV,
GLfloat *  texCoordinates,
GLfloat *  u_knots,
GLfloat *  v_knots,
H3DInt32 sizeOfVertex,
GLfloat *  withWeights,
H3DInt32 uSizeToUse,
H3DInt32 vSizeToUse,
H3DInt32 map2Vertex3Or4 
) [virtual]


Member Data Documentation

This field adds specified Contour2D nodes to the trimmingContour field.

Access type: inputOnly

NurbsTrimmedSurface_addTrimmingContour.dot

This field removes Contour2D nodes from the trimmingContour field.

Access type: inputOnly

NurbsTrimmedSurface_removeTrimmingContour.dot

The trimmingContour field, if specified, shall contain a set of Contour2D nodes.

Access type: inputOutput

NurbsTrimmedSurface_trimmingContour.dot

Referenced by renderBetweenBeginEnd().


The documentation for this class was generated from the following files:

Generated on Fri Nov 7 10:30:40 2008 for H3D API by  doxygen 1.5.7