- Main Page
- Related Pages
- Modules
- Classes
- Examples

# apiSimpleShapeIterator.h

    //-
    // ==========================================================================
    // Copyright 1995,2006,2008 Autodesk, Inc. All rights reserved.
    //
    // Use of this software is subject to the terms of the Autodesk
    // license agreement provided at the time of installation or download,
    // or which otherwise accompanies this software in either electronic
    // or hard copy form.
    // ==========================================================================
    //+

    //
    // Component iterator for control-point based geometry
    //
    // This is used by the translate/rotate/scale manipulators to
    // determine where to place the manipulator when components are
    // selected.
    //
    // As well deformers use this class to deform points of the shape.
    //

    #include <maya/MPxGeometryIterator.h>
    #include <maya/MPoint.h>

    class MVectorArray;

    class apiSimpleShapeIterator : public MPxGeometryIterator
    {
    public:
        apiSimpleShapeIterator( void * userGeometry, MObjectArray & components );
        apiSimpleShapeIterator( void * userGeometry, MObject & components );

        //
        // Overrides
        //

        virtual void        reset();
        virtual MPoint      point() const;
        virtual void        setPoint( const MPoint & ) const;
        virtual int         iteratorCount() const;
        virtual bool        hasPoints() const;

    public:
        MVectorArray *      geometry;
    };