JavaTM Platform
Standard Ed. 6

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 getFlatness()
          この反復子のフラットネスを返します。
 int getRecursionLimit()
          この反復子の再帰制限を返します。
 int getWindingRule()
          パスの内部を決める屈曲規則を返します。
 boolean isDone()
          繰り返し処理が完了したかどうかを判定します。
 void next()
          移動の順方向にまだ点がある場合に、その方向に沿ってパスの次のセグメントに反復子を移動します。
 
クラス 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 がゼロより小さい場合
メソッドの詳細

getFlatness

public double getFlatness()
この反復子のフラットネスを返します。

戻り値:
この FlatteningPathIterator のフラットネス

getRecursionLimit

public int getRecursionLimit()
この反復子の再帰制限を返します。

戻り値:
この FlatteningPathIterator の再帰制限

getWindingRule

public int getWindingRule()
パスの内部を決める屈曲規則を返します。

定義:
インタフェース PathIterator 内の getWindingRule
戻り値:
反復対象の平坦化されていない元のパスの屈曲規則
関連項目:
PathIterator.WIND_EVEN_ODD, PathIterator.WIND_NON_ZERO

isDone

public boolean isDone()
繰り返し処理が完了したかどうかを判定します。

定義:
インタフェース PathIterator 内の isDone
戻り値:
すべてのセグメントが読み込まれている場合は true、そうでない場合は false

next

public void next()
移動の順方向にまだ点がある場合に、その方向に沿ってパスの次のセグメントに反復子を移動します。

定義:
インタフェース PathIterator 内の next

currentSegment

public int currentSegment(float[] coords)
繰り返し処理の現在のパスセグメントの座標および型を返します。戻り値は、パスセグメントの型 (SEG_MOVETO、SEG_LINETO、または SEG_CLOSE) です。長さ 6 の float 配列を渡さなければならず、それは点の座標を格納するために使用されます。各点は、float x,y 座標のペアとして格納されます。SEG_MOVETO 型および SEG_LINETO 型は 1 つの点を返し、SEG_CLOSE は点を返しません。

定義:
インタフェース PathIterator 内の currentSegment
パラメータ:
coords - このメソッドから返されるデータを保持する配列
戻り値:
現在のパスセグメントのタイプ
例外:
NoSuchElementException - 平坦化するパスに返す要素がない場合
関連項目:
PathIterator.SEG_MOVETO, PathIterator.SEG_LINETO, PathIterator.SEG_CLOSE

currentSegment

public int currentSegment(double[] coords)
繰り返し処理の現在のパスセグメントの座標および型を返します。戻り値は、パスセグメントの型 (SEG_MOVETO、SEG_LINETO、または SEG_CLOSE) です。長さ 6 の double 配列を返さなければならず、それは点の座標を格納するために使用されます。各点は、double x,y 座標のペアとして格納されます。SEG_MOVETO 型および SEG_LINETO 型は 1 つの点を返し、SEG_CLOSE は点を返しません。

定義:
インタフェース PathIterator 内の currentSegment
パラメータ:
coords - このメソッドから返されるデータを保持する配列
戻り値:
現在のパスセグメントのタイプ
例外:
NoSuchElementException - 平坦化するパスに返す要素がない場合
関連項目:
PathIterator.SEG_MOVETO, PathIterator.SEG_LINETO, PathIterator.SEG_CLOSE

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。