pfCircle3d man page on IRIX

Man page or keyword search:  
man Server   31559 pages
apropos Keyword Search (all sections)
Output format
IRIX logo
[printable version]



pfCircle3d(3pf)		      OpenGL Performer 3.2.2 libpf C++ Reference Pages

NAME
     pfCircle3d - A three-dimensional parametric circle

FUNCTION SPECIFICATION
     #include <Performer/pf/pfCircle3d.h>

     static pfType*   pfCircle3d::getClassType(void);

		      pfCircle3d::pfCircle3d();

     void	      pfCircle3d::pfCircle3d(pfReal radius, pfVec3 *org);

     void	      pfCircle3d::setRadius(pfReal radius);

     void	      pfCircle3d::getRadius();

     void	      pfCircle3d::evalPt(pfReal t, pfVec3 &pnt);

     void	      pfCircle3d::evalTan(pfReal t, pfVec3 &tan);

     void	      pfCircle3d::evalCurv(pfReal t, pfReal& curv);

     void	      pfCircle3d::evalNorm(pfReal t, pfVec3 &norm);

     void	      pfCircle3d::eval(pfReal t, pfVec3 &pnt, pfVec3& tan,
			pfReal &curv, pfVec3 &norm);

PARENT CLASS FUNCTIONS
     The OpenGL Performer class pfCircle3d is derived from the parent class
     pfCurve3d, so each of these member functions of class pfCurve3d are also
     directly usable with objects of class pfCircle3d.	This is also true for
     ancestor classes of class pfCurve3d.

     pfReal	    pfCurve3d::getBeginT()
     pfReal	    pfCurve3d::getEndT()
     pfVec3	    pfCurve3d::getBeginPt();
     pfVec3	    pfCurve3d::getEndPt();
     pfVec3	    pfCurve3d::getBeginTan();
     pfVec3	    pfCurve3d::getEndTan();
     void	    pfCurve3d::setClosed(int loopVal);
     int	    pfCurve3d::getClosed();
     void	    pfCurve3d::setClosedTol(pfReal tol);
     pfReal	    pfCurve3d::getClosedTol();
     virtual void   pfCurve3d::evalPt(pfReal t, pfVec3& pnt) = 0;
     virtual void   pfCurve3d::evalTan(pfReal t, pfVec3& pnt);
     virtual void   pfCurve3d::evalNorm(pfReal t, pfVec3& pnt);
     virtual void   pfCurve3d::evalCurv(pfReal t, pfReal& curv);
     void	    pfCurve3d::eval(pfReal t, pfVec3 &pnt, pfVec3 &tan,
		      pfReal &curv, pfVec3 &norm)

									Page 1

pfCircle3d(3pf)		      OpenGL Performer 3.2.2 libpf C++ Reference Pages

     Since the class pfCurve3d is itself derived from the parent class pfRep,
     objects of class pfCircle3d can also be used with these functions
     designed for objects of class pfRep.

     void   pfRep::setOrigin(const pfVec3 *origin);
     void   pfRep::setOrient(const pfMatrix *mat);
     void   pfRep::getOrigin(pfVec3& origin);
     void   pfRep::getOrient(pfMatrix& matrix);

     Since the class pfRep is itself derived from the parent class pfGeode,
     objects of class pfCircle3d can also be used with these functions
     designed for objects of class pfGeode.

     int	  pfGeode::addGSet(pfGeoSet* gset);
     int	  pfGeode::removeGSet(pfGeoSet* gset);
     int	  pfGeode::insertGSet(int index, pfGeoSet* gset);
     int	  pfGeode::replaceGSet(pfGeoSet* old, pfGeoSet* new);
     pfGeoSet *	  pfGeode::getGSet(int index);
     int	  pfGeode::getNumGSets(void);

     Since the class pfGeode is itself derived from the parent class pfNode,
     objects of class pfCircle3d can also be used with these functions
     designed for objects of class pfNode.

     pfGroup *	    pfNode::getParent(int i);
     int	    pfNode::getNumParents(void);
     void	    pfNode::setBound(pfSphere *bsph, int mode);
     int	    pfNode::getBound(pfSphere *bsph);
     pfNode*	    pfNode::clone(int mode);
     pfNode*	    pfNode::bufferClone(int mode, pfBuffer *buf);
     int	    pfNode::flatten(int mode);
     int	    pfNode::setName(const char *name);
     const char *   pfNode::getName(void);
     pfNode*	    pfNode::find(const char *pathName, pfType *type);
     pfNode*	    pfNode::lookup(const char *name, pfType* type);
     int	    pfNode::isect(pfSegSet *segSet, pfHit **hits[]);
     void	    pfNode::setTravMask(int which, uint mask, int setMode,
		      int bitOp);
     uint	    pfNode::getTravMask(int which);
     void	    pfNode::setTravFuncs(int which, pfNodeTravFuncType pre,
		      pfNodeTravFuncType post);
     void	    pfNode::getTravFuncs(int which, pfNodeTravFuncType *pre,
		      pfNodeTravFuncType *post);
     void	    pfNode::setTravData(int which, void *data);
     void *	    pfNode::getTravData(int which);
     void	    pfNode::setTravMode(int which, int mode, int val);
     int	    pfNode::getTravMode(int which, int mode) const;

									Page 2

pfCircle3d(3pf)		      OpenGL Performer 3.2.2 libpf C++ Reference Pages

     Since the class pfNode is itself derived from the parent class pfObject,
     objects of class pfCircle3d can also be used with these functions
     designed for objects of class pfObject.

     void*   pfObject::operator new(size_t);
     void*   pfObject::operator new(size_t, pfFluxMemory *fmem);
     void    pfObject::setUserData(void *data);
     void    pfObject::setUserData(int slot, void *data);
     void*   pfObject::getUserData(pfObject *obj);
     void*   pfObject::getUserData(pfObject *obj, int slot);
     int     pfObject::getNumUserData();

     Since the class pfObject is itself derived from the parent class
     pfMemory, objects of class pfCircle3d can also be used with these
     functions designed for objects of class pfMemory.

     void*	    pfMemory::getData(const void *ptr);
     pfType *	    pfMemory::getType();
     int	    pfMemory::isOfType(pfType *type);
     int	    pfMemory::isExactType(pfType *type);
     const char *   pfMemory::getTypeName();
     int	    pfMemory::copy(pfMemory *src);
     int	    pfMemory::compare(const pfMemory *mem);
     void	    pfMemory::print(uint which, uint verbose, char *prefix,
		      FILE *file);
     int	    pfMemory::getArena(void *ptr);
     void*	    pfMemory::getArena();
     int	    pfMemory::ref();
     int	    pfMemory::unref();
     int	    pfMemory::unrefDelete();
     int	    pfMemory::unrefGetRef();
     int	    pfMemory::getRef();
     int	    pfMemory::checkDelete();
     int	    pfMemory::isFluxed();
     void *	    pfMemory::getArena();
     int	    pfMemory::getSize();

DESCRIPTION
     pfCircle3d defines a two three circle parametrized on t:

     x(t) = radius * cos(t);
     y(t) = radius * sin(t);
     z(t) = 0.0;

     The default domain is [0, 2*pi].

     The circle is subject to rotation and translation by the matrix
     orientation and vector origin, which are members of the super class
     pfRep. If orientation isn't set, evalTan, evalNorm and evalCurv are
     functionally calculated. The normal is the vector from the origin to the
     poiint on the circle.  When orientation is set, evalTan, evalCurv are

									Page 3

pfCircle3d(3pf)		      OpenGL Performer 3.2.2 libpf C++ Reference Pages

     calculated by finite difference method which is subject to numerical
     errors.  The normal could be reversed depending on the direction of the
     circle.

     pfCircle3d::getClassType returns the pfType* for the class pfCircle3d.
     The pfType* returned by pfCircle3d::getClassType is the same as the
     pfType* returned by invoking the virtual function getType on any instance
     of class pfCircle3d.  Because OpenGL Performer allows subclassing of
     built-in types, when decisions are made based on the type of an object,
     it is usually better to use  the member function isOfType to test if an
     object is of a type derived from a Performer type rather than to test for
     strict equality of the pfType*'s.

     pfCircle3d::pfCircle3d() creates an instance of an pfCircle3d with radius
     set to 1. By default the parametric domain is defined as [0, 2*pi].

     pfCircle3d::pfCircle3d(pfReal radius,pfVec2 *org) creates an instance
     pfCircle3d with radius set to radius. Note that org sets the origin of
     the superclass pfRep.  The default domain is [0, 2*pi].

     pfCircle3d::setRadius sets the radius of the circle to radius.

     pfCircle3d::getRadius returns the value of the circle's radius.

     pfCircle3d::evalPt Computes the point on the circle. The result is put in
     pnt. Notice that there is a translation by origin, which is the member of
     the superclass pfRep.

     pfCircle3d::evalTan Computes the derivatives (-r*sin(t), r*cos(t)) and
     puts the result in tan.

     pfCircle3d::evalCurv Computes the curvature and stores it in curv. The
     curvature is the inverse of the radius and is cached as a member
     curvature. If the orientation matrix is set, it is calculated by finite
     difference method.

     pfCircle3d::evalNom Computes the principal normal of the circle and
     stores it in norm.

     pfCircle3d::eval Evaluates the point, tangent, curvature and normal.

SEE ALSO
     pfRep, pfGeode, pfCurve3d

									Page 4

[top]

List of man pages available for IRIX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net