Interface to Alias conic curve attributes.
Synopsis
#include <AlConicAttributes.h>
class AlConicAttributes : public AlAttributes
virtual AlObjectType type() const;
AlObject* copyWrapper() const;
statusCode coefficients( double&, double&, double&, double&, double&, double& ) const;
double zDisplacement() const;
statusCode startPoint( double&, double& ) const;
statusCode endPoint( double&, double& ) const;
statusCode centerPoint( double&, double& ) const;
statusCode transform( double[4][4] ) const;
statusCode transform( AlTM& ) const;
AlConicType form() const;
Description
AlConicAttributes is a class derived from the AlAttributes class. This class allows access to the attributes for a conic
section.
Conics may not be created, but they can be brought into Alias through the IGES interface.
A conic is one of ellipse, hyperbola, parabola, circle, or line. Conics exist in the XY plane and are defined by the equation:
A * X^2 + B * X * Y + C * Y^2 + D * X + E * Y + F = 0.
AlObjectType AlConicAttributes::type() const
Description
Returns the class identifier ’kConicAttributeType’.
AlObject* AlConicAttributes::copyWrapper() const
Description
Makes a copy of the AlConicAttributes. The returned AlConicAttributes will reference the same data as the original.
statusCode AlConicAttributes::coefficients( double& c_a, double& c_b, double& c_c, double& c_d, double& c_e, double& c_f )
const
Description
Determines the coefficients for the Conic, where the Conic is defined by the equation:
A * X^2 + B * X * Y + C * Y^2 + D * X + E * Y + F = 0
Arguments
> c_a - the coefficient A
> c_b - the coefficient B
> c_c - the coefficient C
> c_d - the coefficient D
> c_e - the coefficient E
> c_f - the coefficient F
Return Codes
sSuccess - coefficients were successfully returned
sInvalidObject - the attribute was invalid
sFailure - an error occurred
double AlConicAttributes::zDisplacement() const
Description
Returns the displacement for the conic along the Z axis.
statusCode AlConicAttributes::startPoint( double& x, double& y ) const
Description
Determines the start point for a conic. Note that for an ellipse the direction of the desired elliptical arc is counterclockwise.
Arguments
> x - x coordinate of the start point
> y - y coordinate of the start point
Return Codes
sSuccess - the start point was successfully returned
sInvalidObject - the attribute was invalid
sFailure - an error occurred
statusCode AlConicAttributes::endPoint( double& x, double& y ) const
Description
Determines the end point for a conic. Note that for an ellipse the direction of the desired elliptical arc is counterclockwise.
Arguments
> x - x coordinate of the end point
> y - y coordinate of the end point
Return Codes
sSuccess - the end point was successfully returned
sInvalidObject - the attribute was invalid
sFailure - an error occurred
statusCode AlConicAttributes::centerPoint( double& x, double& y ) const
Description
Determines the center point for a conic.
Arguments
> x - x coordinate of the center point
< y - y coordinate of the center point
Return Codes
sSuccess - the center point was successfully returned.
sInvalidObject - the attribute was invalid
sFailure - an error occurred
statusCode AlConicAttributes::transform( AlTM& tm ) const
Description
Returns the transformation matrix which transforms the 2D conic into 3D.
Arguments
> tm - where to place the resulting transformation matrix
Return Codes
sSuccess - the transform was successfully returned
sInvalidObject - the attribute was invalid
sFailure - an error occurred
statusCode AlConicAttributes::transform( double tm[4][4] ) const
Description
A conic is defined in the XY plane. This method returns the transformation matrix that transforms the 2D conic into 3D.
Arguments
> tm - where to place the transformation matrix
Return Codes
sSuccess - the transform was successfully returned
sInvalidArgument - ’tm’ was NULL
sInvalidObject - the attribute was invalid
sFailure - an error occurred
AlConicType AlConicAttributes::form() const
Description
Returns the type of the conic. One of kEllipse, kHyperbola, kParabola, kCircle, or kLine may be returned. kNoConic may be
returned if the attribute is no longer active or there is an error.