Contains functionality common to all the Alias locators.
#include <AlLocator.h>
class AlLocator : public AlObject
virtual ~AlLocator();
virtual statusCode deleteObject();
virtual AlObject * copyWrapper() const = 0;
virtual AlObjectType type() const;
statusCode pick();
statusCode unpick();
statusCode isPicked(boolean &) const;
statusCode templated(boolean &) const;
This virtual class encapsulates methods common to all the Alias locators (spaceLocator, curveLocator, curveOnSurfaceLocator, surfaceLocator, annotationLocator, distanceLocator, angleLocator, radialLocator, deviation Locator and minmaxLocator) for picking and unpicking locators. This class also contains static methods for the display of all locators.
To create a locator, the user must instantiate and call the create method of a specific type of locator (for example, a curve locator or a distance locator).
The annotation, distance and angle locators depend on one or more point type locators, such as a curve locator. If a point locator is deleted, its dependent annotation, distance and angle locators are deleted. Similarly, the radial, deviation and minmax locators are dependent on other objects. If those objects are deleted, the dependent radial, deviation, and minmax locators are also deleted.
The locator classes are derived as follows, where a class inherits the functionality defined in the class above it. The user can not instantiate the locator (AlLocator) and point locator (AlPointLocator) classes.
statusCode AlLocator::templated(boolean &tmpl) const
Checks whether the object on which a locator depends is templated. If a locator does not depend on any other object, the argument is set to false.