- 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オブジェクトを構築します。
 - 
メソッドのサマリーすべてのメソッド インスタンス・メソッド 具象メソッド 修飾子と型 メソッド 説明 intcurrentSegment(double[] coords)繰返し処理の現在のパス・セグメントの座標および型を返します。intcurrentSegment(float[] coords)繰返し処理の現在のパス・セグメントの座標および型を返します。doublegetFlatness()このイテレータのフラットネスを返します。intgetRecursionLimit()このイテレータの再帰制限を返します。intgetWindingRule()パスの内部を決める屈曲規則を返します。booleanisDone()繰返し処理が完了したかどうかを判定します。voidnext()移動の順方向にまだ点がある場合に、その方向に沿ってパスの次のセグメントにイテレータを移動します。
 
- 
- 
- 
コンストラクタの詳細- 
FlatteningPathIteratorpublic FlatteningPathIterator(PathIterator src, double flatness) 反復のたびにパスを平坦化する新しいFlatteningPathIteratorオブジェクトを構築します。 イテレータは、ソース・イテレータから読み取られた曲線を、曲線あたり最大1024ライン・セグメントが生成される10レベルを超える分割に分割しません。- パラメータ:
- src- 反復対象の平坦化されていない元のパス
- flatness- 制御点と平坦化された曲線の最大許容距離
 
 - 
FlatteningPathIteratorpublic FlatteningPathIterator(PathIterator src, double flatness, int limit) 反復のたびにパスを平坦化する新しいFlatteningPathIteratorオブジェクトを構築します。limitパラメータを使用すると、イテレータがflatnessパラメータに対して測定することなく、曲線が十分に平坦であると見なすまでに作成できる再帰的分割の最大数を制御できます。 そのため、平坦化の反復によって、曲線あたり最大(2^limit)を超えるライン・セグメントが生成されることはありません。- パラメータ:
- src- 反復対象の平坦化されていない元のパス
- flatness- 制御点と平坦化された曲線の最大許容距離
- limit- 任意の曲線セグメントに許可される再帰的分割の最大数
- 例外:
- IllegalArgumentException-- flatnessまたは- limitが0より小さい場合
 
 
- 
 - 
メソッドの詳細- 
getFlatnesspublic double getFlatness() このイテレータのフラットネスを返します。- 戻り値:
- このFlatteningPathIteratorのフラットネス。
 
 - 
getRecursionLimitpublic int getRecursionLimit() このイテレータの再帰制限を返します。- 戻り値:
- このFlatteningPathIteratorの再帰制限。
 
 - 
getWindingRulepublic int getWindingRule() パスの内部を決める屈曲規則を返します。- 定義:
- getWindingRule、インタフェース:- PathIterator
- 戻り値:
- 反復対象の平坦化されていない元のパスの屈曲規則。
- 関連項目:
- PathIterator.WIND_EVEN_ODD,- PathIterator.WIND_NON_ZERO
 
 - 
isDonepublic boolean isDone() 繰返し処理が完了したかどうかを判定します。- 定義:
- isDone、インタフェース:- PathIterator
- 戻り値:
- すべてのセグメントが読み込まれている場合はtrue、そうでない場合はfalse。
 
 - 
nextpublic void next() 移動の順方向にまだ点がある場合に、その方向に沿ってパスの次のセグメントにイテレータを移動します。- 定義:
- next、インタフェース:- PathIterator
 
 - 
currentSegmentpublic 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- 平坦化するパスに返す要素がない場合。
- 関連項目:
- PathIterator.SEG_MOVETO,- PathIterator.SEG_LINETO,- PathIterator.SEG_CLOSE
 
 - 
currentSegmentpublic 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- 平坦化するパスに返す要素がない場合。
- 関連項目:
- PathIterator.SEG_MOVETO,- PathIterator.SEG_LINETO,- PathIterator.SEG_CLOSE
 
 
- 
 
-