#include <nurbsGL.h>
Inheritance diagram for PLib::HNurbsSurfaceGL:
Public Methods | |
HNurbsSurfaceGL () | |
HNurbsSurfaceGL (const NurbsSurfacef &nS) | |
HNurbsSurfaceGL (const HNurbsSurfaceGL &bS) | |
HNurbsSurfaceGL (const HNurbsSurfaceGL *bS) | |
virtual | ~HNurbsSurfaceGL () |
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 |
Definition at line 929 of file nurbsGL.h.
|
Default constructor.
Definition at line 3097 of file nurbsGL.cpp. References PLib::HNurbsSurface< float, N >::maxLevel. Referenced by addLevel, decreaseLevelOfDetail, gluNurbs, selectHigherLevel, selectHighestLevel, and selectLowerLevel. |
|
Constructor from a surface.
Definition at line 3112 of file nurbsGL.cpp. References PLib::HNurbsSurface< float, N >::maxLevel. |
|
Copy constructor with patch information.
Definition at line 3131 of file nurbsGL.cpp. References PLib::HNurbsSurface< float, N >::maxLevel. |
|
Copy constructor.
Definition at line 3146 of file nurbsGL.cpp. References PLib::HNurbsSurface< float, N >::maxLevel. |
|
Adds a level to the Hierarchical surface.
Reimplemented from PLib::HNurbsSurfaceSP< float, 3 >. Definition at line 3159 of file nurbsGL.cpp. References HNurbsSurfaceGL. |
|
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. Definition at line 3070 of file nurbsGL.cpp. References PLib::NurbsSurface< float, N >::P, PLib::HNurbsSurface< float, N >::scale, PLib::NurbsSurface< float, N >::transform, and PLib::HNurbsSurfaceSP< float, 3 >::updateLevels. |
|
Activates the patch at a higher level.
Definition at line 2879 of file nurbsGL.cpp. References HNurbsSurfaceGL. |
|
creates a HNURBS surface for OpenGL.
This draws a HNURBS. Presently only isocurves are drawn to represent the surface.
Implements PLib::NurbsGL. Definition at line 2439 of file nurbsGL.cpp. References HNurbsSurfaceGL, and PLib::HNurbsSurface< float, N >::maxLevel. |
|
Modifies a point on the surface.
Implements PLib::NurbsGL. Definition at line 3052 of file nurbsGL.cpp. References resetCPoints. |
|
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. Definition at line 2556 of file nurbsGL.cpp. References PLib::HNurbsSurface< float, N >::hpointAt, PLib::HNurbsSurface< float, N >::isoCurveU, PLib::HNurbsSurface< float, N >::isoCurveV, PLib::ObjectGL::ObjectGL, PLib::NurbsSurface< float, N >::U, and PLib::NurbsSurface< float, N >::V. |
|
Reads the information from a stream.
Reimplemented from PLib::HNurbsSurfaceSP< float, 3 >. Definition at line 3758 of file nurbsGL.cpp. References PLib::ObjectGL::setName. |
|
Reads the information from a stream.
Reimplemented from PLib::ObjectGL. |
|
resets the minP and maxP values of bbox.
Resets the minP and maxP values for the bouding box.
Reimplemented from PLib::NurbsGL. Definition at line 1583 of file nurbsGL.cpp. References PLib::ParaSurface< float, N >::extremum. |
|
Reset the control point information.
Reset the control point information stored in cpoints
Reimplemented from PLib::NurbsGL. Definition at line 1937 of file nurbsGL.cpp. References PLib::NurbsSurface< float, N >::degU, PLib::NurbsSurface< float, N >::degV, and PLib::ObjectGL::ObjectGL. Referenced by modifyPoint. |
|
Reset the control point information stored in cpoints.
Reimplemented from PLib::NurbsGL. Definition at line 3174 of file nurbsGL.cpp. |
|
Activates the next patch at the same level Activates the previous patch at the same level Activates the patch at a higher level.
Definition at line 2838 of file nurbsGL.cpp. References HNurbsSurfaceGL. |
|
Activates the patch at a higher level.
Definition at line 2852 of file nurbsGL.cpp. References HNurbsSurfaceGL. |
|
Activates the patch at a higher level.
Definition at line 2866 of file nurbsGL.cpp. References HNurbsSurfaceGL. |
|
Sets the symmetry for the control points.
Implements PLib::NurbsGL. Definition at line 3246 of file nurbsGL.cpp. References PLib::ObjectGL::ObjectGL. |
|
Writes a NurbsCurveGL to an output stream.
Reimplemented from PLib::ObjectGL. Definition at line 3800 of file nurbsGL.cpp. |
|
Writes a ObjectGL to a file.
Reimplemented from PLib::ObjectGL. |