Interface to Alias Surface points.
         
         
            
            Synposis
            
            
            
#include <AlSurfacePoint.h>
class  AlSurfacePoint : public AlPoint
AlSurfacePoint();
~AlSurfacePoint();
virtual AlObject *	copyWrapper() const;
virtual AlObjectType	type() const;
statusCode	create(const AlSurface *, double, double);
statusCode	setParameter(double, double);
statusCode	parameter(double &, double &) const;
virtual statusCode	worldPosition(double &, double &, double &) const;
statusCode	uTangent(double &, double &, double &) const;
statusCode	vTangent(double &, double &, double &) const;
statusCode	normal(double &, double &, double &) const;
statusCode	meanRadius(double &) const;
statusCode	gaussianRadius(double &) const;
statusCode	principalMinimumRadius(double &) const;
statusCode	principalMaximumRadius(double &) const;
statusCode	uArcLength(double &) const;
statusCode	vArcLength(double &) const;
AlSurfaceNode *	attachedTo();
 
         
            
            Description
            
            
            A point can be created in the parametric space of any AlSurface. This point can be queried for the surface normal, tangents,
               position in world coordinate system, arc lengths, and curvatures. This class contains methods for creating, and moving the
               surface point. If the AlSurface is deleted, the surface point created on it is deleted.
            
            
          
         
            
            AlSurfacePoint::AlSurfacePoint(void)
            
            
            
               
               Description
               
               
               Constructs an AlSurfacePoint wrapper object.
               
             
            
          
         
            
            AlSurfacePoint::~AlSurfacePoint()
            
            
            
               
               Description
               
               
               Deletes an AlSurfacePoint wrapper object.
               
             
            
          
         
            
            AlObject *AlSurfacePoint::copyWrapper() const
            
            
            
               
               Description
               
               
               Returns an exact copy of the AlSurfacePoint wrapper.
               
             
            
          
         
            
            AlObjectType AlSurfacePoint::type() const
            
            
            
               
               Description
               
               
               Returns the class identifier kSurfacePointType.
               
             
            
          
         
            
            statusCode AlSurfacePoint::create(const AlSurface *surface, double u, double v)
            
            
            
               
               Description
               
               
               Creates a point on the given surface
               
             
            
            
               
               Arguments
               
               
               < surface - the surface on which the point is created.
               
               < u - surface parameter at which point is created
               
               < v - surface parameter at which point is created
               
             
            
            
               
               Return Codes
               
               
               sSuccess - the point was successfully created
               
               sAlreadyCreated - object has already been created
               
               sFailure - failed to create a point
               
               sInvalidArgument - the surface was not valid
               
             
            
          
         
            
            statusCode AlSurfacePoint::setParameter(double u, double v)
            
            
            
               
               Description
               
               
               Move the point created on a surface.
               
             
            
            
               
               Arguments:
               
               
               < u, v - the parameters of the surface where the point has to be moved
               
             
            
            
               
               Return Codes
               
               
               sSuccess - the point was moved
               
               sInvalidObject - the point is not valid
               
             
            
          
         
            
            statusCode AlSurfacePoint::parameter(double &u, double &v) const
            
            
            
               
               Description
               
               
               Find the surface parameters at where the surface point is located
               
             
            
            
               
               Arguments
               
               
               > u, v - the U and V parameters of the surface.
               
             
            
            
               
               Return Codes
               
               
               sSuccess - the parameters were found
               
               sInvalidObject - the point is not valid
               
             
            
          
         
            
            statusCode AlSurfacePoint::worldPosition(double &x, double &y, double &z) const
            
            
            
               
               Description
               
               
               Find the world coordinates of the surface point
               
             
            
            
               
               Arguments
               
               
               > x, y, z - the world coordinates of the surface point
               
             
            
            
               
               Return Codes
               
               
               sSuccess - the coordinates were found.
               
               sInvalidObject - the point is not valid
               
             
            
          
         
            
            statusCode AlSurfacePoint::uTangent(double &x, double &y, double &z) const
            
            
            
               
               Description
               
               
               Find the tangent to the surface at the point in the U direction.
               
             
            
            
               
               Arguments
               
               
               > x, y, z - the X, Y, Z components of the normalized tangent
               
             
            
            
               
               Return Codes
               
               
               sSuccess - the tangent was found.
               
               sInvalidObject - the point is not valid
               
             
            
          
         
            
            statusCode AlSurfacePoint::vTangent(double &x, double &y, double &z) const
            
            
            
               
               Description
               
               
               Find the tangent to the surface at the point in the V direction.
               
             
            
            
               
               Arguments
               
               
               > x, y, z - the X, Y, Z components of the normalized tangent
               
             
            
            
               
               Return Codes
               
               
               sSuccess - the tangent was found.
               
               sInvalidObject - the point is not valid
               
             
            
          
         
            
            statusCode AlSurfacePoint::normal(double &x, double &y, double &z) const
            
            
            
               
               Description
               
               
               Find the normal to the surface at the point.
               
             
            
            
               
               Arguments
               
               
               > x, y, z - the X, Y, Z components of the normalized normal
               
             
            
            
               
               Return Codes
               
               
               sSuccess - the normal was found.
               
               sInvalidObject - the point is not valid
               
             
            
          
         
            
            statusCode AlSurfacePoint::meanRadius(double &meanRad) const
            
            
            
               
               Description
               
               
               Find the mean of the principal radii of the surface at the point.
               
             
            
            
               
               Arguments
               
               
               > meanRad - The mean radius of the surface
               
             
            
            
               
               Return Codes
               
               
               sSuccess - the mean radius was found.
               
               sInvalidObject - the point is not valid
               
             
            
          
         
            
            statusCode AlSurfacePoint::gaussianRadius(double &gausRad) const
            
            
            
               
               Description
               
               
               Find the product of the principal radii of the surface at the point.
               
             
            
            
               
               Arguments
               
               
               > gausRad - The gaussian radius of the surface at the point
               
             
            
            
               
               Return Codes
               
               
               sSuccess - the gaussian radius was found.
               
               sInvalidObject - the point is not valid
               
             
            
          
         
            
            statusCode AlSurfacePoint::principalMinimumRadius(double &pminRad) const
            
            
            
               
               Description
               
               
               Find the minimum radius of the curves on the surface, which pass through the point.
               
             
            
            
               
               Arguments
               
               
               > pminRad - The principal minimum radius of the surface
               
             
            
            
               
               Return Codes
               
               
               sSuccess - the radius was found.
               
               sInvalidObject - the point is not valid
               
             
            
          
         
            
            statusCode AlSurfacePoint::principalMaximumRadius(double &pmaxRad) const
            
            
            
               
               Description
               
               
               Find the maximum radius of the curves on the surface, which pass through the point.
               
             
            
            
               
               Arguments
               
               
               > pmaxRad - The principal maximum radius of the surface
               
             
            
            
               
               Return Codes
               
               
               sSuccess - the radius was found.
               
               sInvalidObject - the point is not valid
               
             
            
          
         
            
            statusCode AlSurfacePoint::uArcLength(double &uarcLen) const
            
            
            
               
               Description
               
               
               Find the arc length along U tangent at the point on the surface.
               
             
            
            
               
               Arguments
               
               
               > uarcLen - The arc length along U tangent
               
             
            
            
               
               Return Codes
               
               
               sSuccess - the arc length was found.
               
               sInvalidObject - the point is not valid
               
             
            
          
         
            
            statusCode AlSurfacePoint::vArcLength(double &varcLen) const
            
            
            
               
               Description
               
               
               Find the arc length along V tangent at the point on the surface.
               
             
            
            
               
               Arguments
               
               
               > varcLen - The arc length along V tangent
               
             
            
            
               
               Return Codes
               
               
               sSuccess - the arc length was found.
               
               sInvalidObject - the point is not valid
               
             
            
          
         
            
            AlSurfaceNode * AlSurfacePoint::attachedTo()
            
            
            
               
               Description
               
               
               Returns the surface node that this point is associated with. NULL is returned if this method fails.