Interface to construction history command constructors, AlContact - Interface to Alias contact information.
         
         
            
            Synopsis 
            
            
            
#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();
 
         
            
            Description 
            
            
            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.
            
            
          
         
            
            AlCommandRef::AlCommandRef()
            
            
            
               
               Description
               
               
                Constructs a wrapper for a reference object.
               
             
            
          
         
            
            AlCommandRef::~AlCommandRef()
            
            
            
               
               Description
               
               
               Destructor for a reference object.
               
             
            
          
         
            
            AlObjectType AlCommandRef::type() const
            
            
            
               
               Description
               
               
                Returns kCommandRefType.
               
             
            
          
         
            
            AlCommandRef* AlCommandRef::nextRef()
            
            
            
               
               Description
               
               
               Returns the next reference in this list of references for the command's constructor or target.
               
             
            
          
         
            
            statusCode AlCommandRef::nextRefD()
            
            
            
               
               Description
               
               
                Returns the next reference in this list of references for the command's constructor or target.
               
             
            
            
               
               Return Codes
               
               
               sSuccess - the wrapper points to the next reference
               
               sFailure - there is no next reference
               
               sInvalidObject - the reference is invalid
               
             
            
          
         
            
            AlCommandRef* AlCommandRef::prevRef()
            
            
            
               
               Description
               
               
               Returns the previous reference in this list of references for the command's constructor or target.
               
             
            
          
         
            
            statusCode AlCommandRef::prevRefD()
            
            
            
               
               Description
               
               
                Returns the previous reference in this list of references for the command's constructor or target.
               
             
            
            
               
               Return Codes
               
               
               sSuccess - the wrapper points to the next reference
               
               sFailure - there is no previous reference
               
               sInvalidObject - the reference is invalid
               
             
            
          
         
            
            AlDagNode *AlCommandRef::dagNode()
            
            
            
               
               Description
               
               
                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).
               
             
            
          
         
            
            AlCurveOnSurface *AlCommandRef::curveOnSurface()
            
            
            
               
               Description
               
               
                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).
               
             
            
          
         
            
            AlContact *AlCommandRef::contact()
            
            
            
               
               Description
               
               
               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.
               
               
             
            
          
         
            
            AlContact::AlContact()
            
            
            
               
               Description
               
               
                Constructor for a contact wrapper. 
               
             
            
          
         
            
            AlContact::~AlContact()
            
            
            
               
               Description
               
               
                Destructor for a contact wrapper. 
               
             
            
          
         
            
            AlObjectType AlContact::type() const
            
            
            
               
               Description
               
               
                Returns kContactType 
               
             
            
          
         
            
            statusCode AlContact::create()
            
            
            
               
               Description
               
               
                 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. 
               
               
             
            
            
               
               Return Codes
               
               
               sSuccess - the contact was created
               
               sInsufficientMemory - no memory
               
             
            
          
         
            
            statusCode AlContact::deleteObject()
            
            
            
               
               Description
               
               
                Deletes a contact object. See the note in create(). 
               
             
            
            
               
               Return Codes
               
               
               sSuccess - the contact was deleted
               
               sInvalidObject - the contact was invalid
               
             
            
          
         
            
            AlContact* AlContact::nextContact()
            
            
            
               
               Description
               
               
                Returns the contact of the next contact curve. 
               
             
            
          
         
            
            AlContact* AlContact::prevContact()
            
            
            
               
               Description
               
               
                Returns the contact of the previous contact curve. 
               
             
            
          
         
            
            statusCode AlContact::nextContactD()
            
            
            
               
               Description
               
               
                Returns the contact of the next contact curve. 
               
             
            
            
               
               Return Codes
               
               
               sSuccess - the wrapper points to the next contact
               
               sFailure - there is no next contact
               
               sInvalidObject - the object is invalid
               
             
            
          
         
            
            statusCode AlContact::prevContactD()
            
            
            
               
               Description
               
               
                Returns the contact of the previous contact curve. 
               
             
            
            
               
               Return Codes
               
               
               sSuccess - the wrapper points to the next contact
               
               sFailure - there is no next contact
               
               sInvalidObject - the object is invalid
               
             
            
          
         
            
            statusCode AlContact::appendContact( AlContact *addcontact )
            
            
            
               
               Description
               
               
                Considering the current contact to be the head in a list, adds the given contact to this list. 
               
             
            
            
               
               Arguments
               
               
               < addcontact - the contact to add 
               
             
            
            
               
               Return Codes
               
               
               sInvalidArgument - contact was invalid
               
               sObjectInvalid - the current contact was invalid
               
               sSuccess - the contact was added
               
             
            
          
         
            
            int AlContact::numberContacts() const
            
            
            
               
               Description
               
               
                Considering the current contact to be the head of a list, returns the number of contacts in this list. Returns 0 on error.
                  
               
               
             
            
          
         
            
            AlContactType AlContact::contactType() const
            
            
            
               
               Description
               
               
                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. 
               
             
            
          
         
            
            AlTrimCurve* AlContact::trimCurve()
            
            
            
               
               Description
               
               
                If this is a kContactTrimEdge, then this returns the selected trim edge. 
               
             
            
          
         
            
            AlCurveOnSurface* AlContact::curveOnSurface()
            
            
            
               
               Description
               
               
                If this is a kContactCurveOnSurface, then this returns the selected curve on surface. 
               
             
            
          
         
            
            double AlContact::paramValue() const
            
            
            
               
               Description
               
               
                Returns the Isoparametric value or Curve On Surface parameter. 
               
             
            
          
         
            
            double AlContact::nonisoparamMin() const
            
            
            
               
               Description
               
               
                Returns the non iso-parameter minimum. 
               
             
            
          
         
            
            double AlContact::nonisoparamMax() const
            
            
            
               
               Description
               
               
                Returns the non iso-parameter maximum. 
               
             
            
          
         
            
            AlCurve *AlContact::curve()
            
            
            
               
               Description
               
               
                Returns the resulting contact line (in XYZ coordinates). Note that if this curve is allocated, a deleteObject() must be used
                  to delete it. 
               
               
             
            
          
         
            
            AlCurve *AlContact::curveUV()
            
            
            
               
               Description
               
               
                Returns the resulting contact line (in UV coordinates). Note that if this curve is allocated, a deleteObject() must be used
                  to delete it. 
               
               
             
            
          
         
            
            statusCode AlContact::calculate( AlDagNode *dagNode, double tolerance, boolean adjustTolerance )
            
            
            
               
               Description
               
               
                Calculates the geometry describing the contact. If transform is not set, the tolerance will be adjusted (so specify the world
                  space tolerance). 
               
               
             
            
            
               
               Arguments
               
               
               < dagNode - picked DAG node 
               
               < tolerance - error tolerance (0 indicates use default) 
               
               < adjustTolerance 
               
             
            
            
               
               Return Codes
               
               
               sSuccess - geometry calculated
               
               sFailure - geometry could not be calculated
               
               sInvalidArgument - dagNode was NULL
               
             
            
          
         
            
            boolean AlContact::areEqual( AlDagNode *dagNodeThis,AlContact *contactOther, AlDagNode *dagNodeOther) const
            
            
            
               
               Description
               
               
                Returns TRUE if the two contact descriptions are equal. 
               
             
            
            
               
               Arguments
               
               
               this - the first contact to compare 
               
               dagNodeThis - the dagnode of this contact 
               
               contactOther - the other contact 
               
               dagNodeOther - its dagnode