com.mxgraph.util.svg

## Interface ExtendedPathIterator

-     public interface ExtendedPathIterator

  The `ExtendedPathIterator` class represents a geometric path constructed from straight lines, quadratic and cubic (Bezier) curves and elliptical arcs. This interface is identical to that of PathIterator except it can return SEG_ARCTO from currentSegment, also the array of values passed to currentSegment must be of length 7 or an error will be thrown. This does not extend PathIterator as it would break the interface contract for that class.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `SEG_ARCTO` The segment type constant for an elliptical arc.
    `static int` | `SEG_CLOSE` The segment type constant that specifies that the preceding subpath should be closed by appending a line segment back to the point corresponding to the most recent SEG_MOVETO.
    `static int` | `SEG_CUBICTO` The segment type constant for the set of 3 points that specify a cubic parametric curve to be drawn from the most recently specified point.
    `static int` | `SEG_LINETO` The segment type constant for a point that specifies the end point of a line to be drawn from the most recently specified point.
    `static int` | `SEG_MOVETO` The segment type constant for a point that specifies the end point of a line to be drawn from the most recently specified point.
    `static int` | `SEG_QUADTO` The segment type constant for the pair of points that specify a quadratic parametric curve to be drawn from the most recently specified point.
    `static int` | `WIND_EVEN_ODD` The winding rule constant for specifying an even-odd rule for determining the interior of a path.
    `static int` | `WIND_NON_ZERO` The winding rule constant for specifying a non-zero rule for determining the interior of a path.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `currentSegment()`
    `int` | `currentSegment(double[] coords)`
    `int` | `currentSegment(float[] coords)`
    `int` | `getWindingRule()`
    `boolean` | `isDone()`
    `void` | `next()`

- - ### Field Detail

    - #### SEG_CLOSE

          static final int SEG_CLOSE

      The segment type constant that specifies that the preceding subpath should be closed by appending a line segment back to the point corresponding to the most recent SEG_MOVETO.
      See Also:
        Constant Field Values

    - #### SEG_MOVETO

          static final int SEG_MOVETO

      The segment type constant for a point that specifies the end point of a line to be drawn from the most recently specified point.
      See Also:
        Constant Field Values

    - #### SEG_LINETO

          static final int SEG_LINETO

      The segment type constant for a point that specifies the end point of a line to be drawn from the most recently specified point.
      See Also:
        Constant Field Values

    - #### SEG_QUADTO

          static final int SEG_QUADTO

      The segment type constant for the pair of points that specify a quadratic parametric curve to be drawn from the most recently specified point. The curve is interpolated by solving the parametric control equation in the range (t=[0..1]) using the most recently specified (current) point (CP), the first control point (P1), and the final interpolated control point (P2).
      See Also:
        Constant Field Values

    - #### SEG_CUBICTO

          static final int SEG_CUBICTO

      The segment type constant for the set of 3 points that specify a cubic parametric curve to be drawn from the most recently specified point. The curve is interpolated by solving the parametric control equation in the range (t=[0..1]) using the most recently specified (current) point (CP), the first control point (P1), the second control point (P2), and the final interpolated control point (P3).
      See Also:
        Constant Field Values

    - #### SEG_ARCTO

          static final int SEG_ARCTO

      The segment type constant for an elliptical arc. This consists of Seven values [rx, ry, angle, largeArcFlag, sweepFlag, x, y]. rx, ry are the radious of the ellipse. angle is angle of the x axis of the ellipse. largeArcFlag is zero if the smaller of the two arcs are to be used. sweepFlag is zero if the 'left' branch is taken one otherwise. x and y are the destination for the ellipse.
      See Also:
        Constant Field Values

    - #### WIND_EVEN_ODD

          static final int WIND_EVEN_ODD

      The winding rule constant for specifying an even-odd rule for determining the interior of a path. The even-odd rule specifies that a point lies inside the path if a ray drawn in any direction from that point to infinity is crossed by path segments an odd number of times.
      See Also:
        Constant Field Values

    - #### WIND_NON_ZERO

          static final int WIND_NON_ZERO

      The winding rule constant for specifying a non-zero rule for determining the interior of a path. The non-zero rule specifies that a point lies inside the path if a ray drawn in any direction from that point to infinity is crossed by path segments a different number of times in the counter-clockwise direction than the clockwise direction.
      See Also:
        Constant Field Values

  - ### Method Detail

    - #### currentSegment

          int currentSegment()

    - #### currentSegment

          int currentSegment(double[] coords)

    - #### currentSegment

          int currentSegment(float[] coords)

    - #### getWindingRule

          int getWindingRule()

    - #### isDone

          boolean isDone()

    - #### next

          void next()

Copyright (c) 2010 Gaudenz Alder. All rights reserved.