モジュール java.desktop
パッケージ java.awt.geom

クラスFlatteningPathIterator

java.lang.Object
java.awt.geom.FlatteningPathIterator
すべての実装されたインタフェース:
PathIterator

public class FlatteningPathIterator extends Object implements PathIterator
FlatteningPathIteratorクラスは別のPathIteratorオブジェクトの平坦化されたビューを返します。 その他のShapeクラスでこのクラスを使用すると、各クラス自体で補間計算を実行しなくても、そのパスの平坦化動作を実現できます。
  • フィールドのサマリー

    インタフェース java.awt.geom.PathIteratorで宣言されたフィールド

    SEG_CLOSE, SEG_CUBICTO, SEG_LINETO, SEG_MOVETO, SEG_QUADTO, WIND_EVEN_ODD, WIND_NON_ZERO
  • コンストラクタのサマリー

    コンストラクタ
    コンストラクタ
    説明
    FlatteningPathIterator(PathIterator src, double flatness)
    反復のたびにパスを平坦化する新しいFlatteningPathIteratorオブジェクトを構築します。
    FlatteningPathIterator(PathIterator src, double flatness, int limit)
    反復のたびにパスを平坦化する新しいFlatteningPathIteratorオブジェクトを構築します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    int
    currentSegment(double[] coords)
    繰返し処理の現在のパス・セグメントの座標および型を返します。
    int
    currentSegment(float[] coords)
    繰返し処理の現在のパス・セグメントの座標および型を返します。
    double
    このイテレータのフラットネスを返します。
    int
    このイテレータの再帰制限を返します。
    int
    パスの内部を決める屈曲規則を返します。
    boolean
    繰返し処理が完了したかどうかを判定します。
    void
    移動の順方向にまだ点がある場合に、その方向に沿ってパスの次のセグメントにイテレータを移動します。

    クラス java.lang.Objectで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • コンストラクタの詳細

    • FlatteningPathIterator

      public FlatteningPathIterator(PathIterator src, double flatness)
      反復のたびにパスを平坦化する新しいFlatteningPathIteratorオブジェクトを構築します。 イテレータは、ソース・イテレータから読み取られた曲線を、曲線あたり最大1024ライン・セグメントが生成される10レベルを超える分割に分割しません。
      パラメータ:
      src - 反復対象の平坦化されていない元のパス
      flatness - 制御点と平坦化された曲線の最大許容距離
    • FlatteningPathIterator

      public FlatteningPathIterator(PathIterator src, double flatness, int limit)
      反復のたびにパスを平坦化する新しいFlatteningPathIteratorオブジェクトを構築します。 limitパラメータを使用すると、イテレータがflatnessパラメータに対して測定することなく、曲線が十分に平坦であると見なすまでに作成できる再帰的分割の最大数を制御できます。 そのため、平坦化の反復によって、曲線あたり最大(2^limit)を超えるライン・セグメントが生成されることはありません。
      パラメータ:
      src - 反復対象の平坦化されていない元のパス
      flatness - 制御点と平坦化された曲線の最大許容距離
      limit - 任意の曲線セグメントに許可される再帰的分割の最大数
      例外:
      IllegalArgumentException - flatnessまたはlimitが0より小さい場合
  • メソッドの詳細

    • getFlatness

      public double getFlatness()
      このイテレータのフラットネスを返します。
      戻り値:
      このFlatteningPathIteratorのフラットネス。
    • getRecursionLimit

      public int getRecursionLimit()
      このイテレータの再帰制限を返します。
      戻り値:
      このFlatteningPathIteratorの再帰制限。
    • getWindingRule

      public int getWindingRule()
      パスの内部を決める屈曲規則を返します。
      定義:
      getWindingRule、インタフェースPathIterator
      戻り値:
      反復対象の平坦化されていない元のパスの屈曲規則。
      関連項目:
    • isDone

      public boolean isDone()
      繰返し処理が完了したかどうかを判定します。
      定義:
      isDone、インタフェースPathIterator
      戻り値:
      すべてのセグメントが読み込まれている場合はtrue、そうでない場合はfalse
    • next

      public void next()
      移動の順方向にまだ点がある場合に、その方向に沿ってパスの次のセグメントにイテレータを移動します。
      定義:
      next、インタフェースPathIterator
    • currentSegment

      public int currentSegment(float[] coords)
      繰返し処理の現在のパス・セグメントの座標および型を返します。 戻り値はパス・セグメントのタイプであり、SEG_MOVETO、SEG_LINETO、SEG_CLOSEのいずれかです。 長さ6のfloat配列を渡さなければならず、それは点の座標を格納するために使用されます。 各点は、float x,y座標のペアとして格納されます。 SEG_MOVETO型およびSEG_LINETO型は1つの点を返し、SEG_CLOSEは点を返しません。
      定義:
      currentSegment、インタフェースPathIterator
      パラメータ:
      coords - このメソッドから返されるデータを保持する配列
      戻り値:
      現在のパス・セグメントのタイプ。
      例外:
      NoSuchElementException - 平坦化するパスに返す要素がない場合。
      関連項目:
    • currentSegment

      public int currentSegment(double[] coords)
      繰返し処理の現在のパス・セグメントの座標および型を返します。 戻り値はパス・セグメントのタイプであり、SEG_MOVETO、SEG_LINETO、SEG_CLOSEのいずれかです。 長さ6のdouble配列を返さなければならず、それは点の座標を格納するために使用されます。 各点は、double x,y座標のペアとして格納されます。 SEG_MOVETO型およびSEG_LINETO型は1つの点を返し、SEG_CLOSEは点を返しません。
      定義:
      currentSegment、インタフェースPathIterator
      パラメータ:
      coords - このメソッドから返されるデータを保持する配列
      戻り値:
      現在のパス・セグメントのタイプ。
      例外:
      NoSuchElementException - 平坦化するパスに返す要素がない場合。
      関連項目: