#include <nurbsGL.h>
Inheritance diagram for PLib::HNurbsSurfaceGL:
Public Member Functions | |
HNurbsSurfaceGL () | |
HNurbsSurfaceGL (const NurbsSurfacef &nS) | |
HNurbsSurfaceGL (const HNurbsSurfaceGL &bS) | |
HNurbsSurfaceGL (const HNurbsSurfaceGL *bS) | |
void | setLevelOfDetail (int l) |
int | levelOfDetail () const |
void | increaseLevelOfDetail () |
void | decreaseLevelOfDetail () |
void | highestLevelOfDetail () |
int | maxLevelOfDetail () |
void | gluNurbs () const |
void | point (float &u, float &v, int pSize, const Color &colorP, int cp_flag=0) const |
void | resetBoundingBox () |
void | resetCPoints () |
void | resetPolygon () |
void | resetKnots () |
int | read (const char *f) |
int | write (const char *f) const |
int | read (ifstream &fin) |
int | write (ofstream &fout) const |
int | writeRIB (ofstream &fout) const |
int | writePOVRAY (ofstream &fout) const |
void | selectBasePatch () |
void | selectNextPatch () |
void | selectPrevPatch () |
void | selectHigherLevel () |
void | selectLowerLevel () |
void | selectHighestLevel () |
int | editLevel () |
void | updateUpToLOD () |
HNurbsSurfaceSPf * | addLevel () |
void | applyTransform () |
void | modifyPoint (float u, float v, float dx, float dy, float dz) |
ObjectGL * | copy () |
void | setSym (int set, int uDir, float x, float y, float z, float w) |
void | axis (int i, int j, Point3Df &xaxis, Point3Df &yaxis, Point3Df &zaxis) const |
Protected Attributes | |
int | lod |
HNurbsSurfaceGL * | activePatch |
|
Default constructor.
|
|
Constructor from a surface.
|
|
Copy constructor with patch information.
|
|
Copy constructor.
|
|
Adds a level to the Hierarchical surface.
Reimplemented from PLib::HNurbsSurfaceSP< T, N >. |
|
apply the local transformation to the surface. Apply the local transformation to the surface. This is necessary if you want to get the proper position for the control points before doing anymore processing on them.
Reimplemented from PLib::ObjectGL. |
|
Activates the patch at a higher level.
|
|
creates a HNURBS surface for OpenGL This draws a HNURBS. Presently only isocurves are drawn to represent the surface.
Implements PLib::NurbsGL. |
|
Modifies a point on the surface.
Implements PLib::NurbsGL. |
|
draws a point at the location C(u) This function calls between a glBegin/glEnd the proper functions to represent the point which is at S(u,v) on the hierarchical surface.
Implements PLib::NurbsGL. |
|
Reads the information from a stream.
Reimplemented from PLib::HNurbsSurfaceSP< T, N >. |
|
Reads a HNURBS surface from a file.
Reimplemented from PLib::HNurbsSurface< T, N >. |
|
resets the minP and maxP values of bbox Resets the minP and maxP values for the bouding box.
Reimplemented from PLib::NurbsGL. |
|
Reset the control point information. Reset the control point information stored in cpoints
Reimplemented from PLib::NurbsGL. |
|
Reset the control point information stored in cpoints.
Reimplemented from PLib::NurbsGL. |
|
Activates the next patch at the same level Activates the previous patch at the same level Activates the patch at a higher level.
|
|
Activates the patch at a higher level.
|
|
Activates the patch at a higher level.
|
|
Sets the symmetry for the control points.
Implements PLib::NurbsGL. |
|
Writes a NurbsCurveGL to an output stream.
Reimplemented from PLib::HNurbsSurface< T, N >. |
|
write a HNURBS surface to a file
Reimplemented from PLib::HNurbsSurface< T, N >. |