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.
Constructs a wrapper for a reference object.
Destructor for a reference object.
Returns kCommandRefType.
Returns the next reference in this list of references for the command's constructor or target.
Returns the next reference in this list of references for the command's constructor or target.
sSuccess - the wrapper points to the next reference
sFailure - there is no next reference
sInvalidObject - the reference is invalid
Returns the previous reference in this list of references for the command's constructor or target.
Returns the previous reference in this list of references for the command's constructor or target.
sSuccess - the wrapper points to the next reference
sFailure - there is no previous reference
sInvalidObject - the reference is invalid
Returns the DAG node that this reference refers to.
Note that exactly one of dagNode() or curveOnSurface() will be used (the other will be NULL).
Returns the curve on surface that this reference refers to.
Note that exactly one of dagNode() or curveOnSurface() will be used (the other will be NULL).
If this reference was generated from a contact, this pointer points to it. dagNode() and curveOnSurface() are set properly regardless of whether a contact generated this reference.
Constructor for a contact wrapper.
Destructor for a contact wrapper.
Returns kContactType
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.
sSuccess - the contact was created
sInsufficientMemory - no memory
Deletes a contact object. See the note in create().
sSuccess - the contact was deleted
sInvalidObject - the contact was invalid
Returns the contact of the next contact curve.
Returns the contact of the previous contact curve.
Returns the contact of the next contact curve.
sSuccess - the wrapper points to the next contact
sFailure - there is no next contact
sInvalidObject - the object is invalid
Returns the contact of the previous contact curve.
sSuccess - the wrapper points to the next contact
sFailure - there is no next contact
sInvalidObject - the object is invalid
Considering the current contact to be the head in a list, adds the given contact to this list.
< addcontact - the contact to add
sInvalidArgument - contact was invalid
sObjectInvalid - the current contact was invalid
sSuccess - the contact was added
Considering the current contact to be the head of a list, returns the number of contacts in this list. Returns 0 on error.
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.
If this is a kContactTrimEdge, then this returns the selected trim edge.
If this is a kContactCurveOnSurface, then this returns the selected curve on surface.
Returns the Isoparametric value or Curve On Surface parameter.
Returns the non iso-parameter minimum.
Returns the non iso-parameter maximum.
Returns the resulting contact line (in XYZ coordinates). Note that if this curve is allocated, a deleteObject() must be used to delete it.
Returns the resulting contact line (in UV coordinates). Note that if this curve is allocated, a deleteObject() must be used to delete it.
Calculates the geometry describing the contact. If transform is not set, the tolerance will be adjusted (so specify the world space tolerance).
< dagNode - picked DAG node
< tolerance - error tolerance (0 indicates use default)
< adjustTolerance
sSuccess - geometry calculated
sFailure - geometry could not be calculated
sInvalidArgument - dagNode was NULL
Returns TRUE if the two contact descriptions are equal.
this - the first contact to compare
dagNodeThis - the dagnode of this contact
contactOther - the other contact
dagNodeOther - its dagnode