Interface to construction history command constructors, AlContact - Interface to Alias contact information.
#include <AlContact.h>
class AlCommandRef : public AlObject
AlCommandRef();
virtual ~AlCommandRef();
virtual AlObjectType type() const;
AlCommandRef* nextRef();
AlCommandRef* prevRef();
statusCode nextRefD();
statusCode prevRefD();
AlDagNode* dagNode();
AlCurveOnSurface* curveOnSurface();
AlContact* contact();
class AlContact : public AlObject
AlContact();
virtual ~AlContact();
statusCode deleteObject();
virtual AlObjectType type() const;
statusCode create();
statusCode appendContact( AlContact * );
int numberContacts() const;
AlContact* nextContact();
AlContact* prevContact();
statusCode nextContactD();
statusCode prevContactD();
AlContactType contactType() const;
// These are different values common to the various contact types
// derived classes are not used since this would result in about 6
// new classes, each with a single method.
//
statusCode calculate( AlDagNode *dagNode, double tolerance = 0, boolean adjustTolerance = FALSE );
boolean areEqual( AlDagNode *dagNodeThis, AlContact *contactOther, AlDagNode *dagNodeOther) const;
AlTrimCurve* trimCurve();
AlCurveOnSurface* curveOnSurface();
int freeCurveIndex();
double curveOnSurfaceParam() const;
double paramValue() const;
double nonisoparamMin() const;
double nonisoparamMax() const;
AlCurve* curve();
AlCurve* curveUV();
Two classes are defined here. The first, AlContact, is used to access Alias contact information. It can be used in conjunction with commands to describe a constructor curve. The second class, AlCommandRef, is used to access the constructor references for the command.
statusCode AlContact::create()
Creates a contact (to be used along with a reference).
Note: you will have to call deleteObject() on this contact in your destructor or the memory will be lost. Contacts are often used in conjunction with commands to describe a constructor curve. In Alias, the contacts are the individual curves selected in the command history.
statusCode AlContact::appendContact( AlContact *addcontact )
AlContactType AlContact::contactType() const
Returns the type of this contact. From the type, the appropriate information can be determined by using the methods trimCurve(), freeCurve(), curveOnSurface(), curveOnSurfaceParam(), isoparamValue(), nonisoparamMin() or nonisoparamMax().
This method returns one of the following:
kContactInvalid, kContactIsoparamU/V, kContactCurveOnSurface, kContactTrimEdge or kContactFreeCurve.
statusCode AlContact::calculate( AlDagNode *dagNode, double tolerance, boolean adjustTolerance )
Calculates the geometry describing the contact. If transform is not set, the tolerance will be adjusted (so specify the world space tolerance).
boolean AlContact::areEqual( AlDagNode *dagNodeThis,AlContact *contactOther, AlDagNode *dagNodeOther) const