jp.co.melco.preserv
クラス psvGeometricPath

java.lang.Object
  拡張jp.co.melco.preserv.psvGeometricPath
すべての実装インタフェース:
java.lang.Cloneable, java.awt.Shape

public class psvGeometricPath
extends java.lang.Object
implements java.awt.Shape, java.lang.Cloneable

psvGeometricPathはpsvShape図形(ポリライン、ポリゴン、中抜きポリゴン)で保持する情報を元に java.awt.Shapeインタフェースを実装した図形を構築するクラスです。

導入されたバージョン:
V6.0.0
作成者:
PreSerV Development Team

フィールドの概要
static int WIND_EVEN_ODD
          パスの内部を決める偶奇屈曲規則です。
static int WIND_NON_ZERO
          パスの内部を決める非ゼロ屈曲規則です。
 
コンストラクタの概要
psvGeometricPath()
          コンストラクタです。
psvGeometricPath(int rule)
          コンストラクタです。
psvGeometricPath(int rule, int capacity)
          コンストラクタです。
psvGeometricPath(int rule, psvCoordinate[] po)
          屈曲規則、および座標をを指定して、新しいポリゴン相当の psvGeometricPath オブジェクトを構築します。
psvGeometricPath(java.awt.Shape shape)
          コンストラクタです。
 
メソッドの概要
 void append(java.awt.geom.PathIterator pi, boolean connect)
          指定された Shape オブジェクトのジオメトリをパスに追加します。
 void append(java.awt.Shape s, boolean connect)
          指定された Shape オブジェクトのジオメトリをパスに追加します。
 java.lang.Object clone()
          このオブジェクトと同じクラスの新しいオブジェクトを作成します。
 void closePath()
          最後の moveTo の座標まで直線を描画して現在のサブパスを閉じます。
 boolean contains(double x, double y)
          指定された座標がこの Shape の境界内にあるかどうかを判定します。
 boolean contains(double x, double y, double width, double height)
          指定された矩形領域がこの Shape の境界内にあるかどうかを判定します。
 boolean contains(java.awt.geom.Point2D point)
          指定された Point2D がこの Shape の境界内にあるかどうかを判定します。
 boolean contains(java.awt.geom.Rectangle2D rect)
          指定された Rectangle2D がこの Shape の境界内にあるかどうかを判定します。
 java.awt.Shape createTransformedShape(java.awt.geom.AffineTransform affine)
          変換された、新しい Shape を返します。
 void curveTo(double x1, double y1, double x2, double y2, double x3, double y3)
          3 つの新しい点によって定義される曲線セグメントをパスに追加します。
 java.awt.Rectangle getBounds()
          パスのバウンディングボックスを返します。
 java.awt.geom.Rectangle2D getBounds2D()
          パスのバウンディングボックスを返します。
 java.awt.geom.Point2D getCurrentPoint()
          パスの最後に追加されたもっとも新しい座標を Point2D オブジェクトとして返します。
 java.awt.geom.PathIterator getPathIterator(java.awt.geom.AffineTransform affine)
          この Shape の境界に沿って繰り返し処理を行い、この Shape の輪郭のジオメトリへのアクセスを提供する PathIterator オブジェクトを返します。
 java.awt.geom.PathIterator getPathIterator(java.awt.geom.AffineTransform affine, double flatness)
          平坦化された Shape の境界に沿って繰り返し処理を行い、Shape の輪郭のジオメトリへのアクセスを提供する PathIterator オブジェクトを返します。
 int getWindingRule()
          塗りつぶしスタイル屈曲規則を返します。
 boolean intersects(double x, double y, double width, double height)
          この Shape の内部が、指定された矩形座標セットの内部と交差するかどうかを判定します。
 boolean intersects(java.awt.geom.Rectangle2D rect)
          この Shape の内部が、指定された Rectangle2D の内部と交差するかどうかを判定します。
 void lineTo(double x, double y)
          現在の座標から新しく指定された座標まで直線を描画して点をパスに追加します。
 void moveTo(double x, double y)
          指定された座標に移動して点をパスに追加します。
 void quadTo(double x1, double y1, double x2, double y2)
          2 つの新しい点によって定義される曲線セグメントをパスに追加します。
 void reset()
          パスを空にリセットします。
 void setWindingRule(int rule)
          このパスの屈曲規則を指定された値に設定します。
 void transform(java.awt.geom.AffineTransform affine)
          指定された AffineTransform を使用して、このパスのジオメトリを変換します。
 
クラス java.lang.Object から継承したメソッド
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

WIND_EVEN_ODD

public static final int WIND_EVEN_ODD
パスの内部を決める偶奇屈曲規則です。

関連項目:
定数フィールド値

WIND_NON_ZERO

public static final int WIND_NON_ZERO
パスの内部を決める非ゼロ屈曲規則です。

関連項目:
定数フィールド値
コンストラクタの詳細

psvGeometricPath

public psvGeometricPath()
コンストラクタです。
新しい psvGeometricPathオブジェクトを構築します。


psvGeometricPath

public psvGeometricPath(int rule)
コンストラクタです。
パスの内部を定義する必要があるオペレーションを制御するために屈曲規則を指定して、 新しい psvGeometricPathオブジェクトを構築します。

パラメータ:
rule - 屈曲規則

psvGeometricPath

public psvGeometricPath(int rule,
                        int capacity)
コンストラクタです。
屈曲規則、およびパスの座標を格納する初期容量を指定して、 新しい psvGeometricPath オブジェクトを構築します。

パラメータ:
rule - 屈曲規則
capacity - 初期容量

psvGeometricPath

public psvGeometricPath(java.awt.Shape shape)
コンストラクタです。
任意の Shape オブジェクトから新しい psvGeometricPath オブジェクトを構築します。 このパスの初期ジオメトリおよび屈曲規則は、指定された Shape オブジェクトからとられます。

パラメータ:
shape - 構築の参考となるShapeオブジェクト

psvGeometricPath

public psvGeometricPath(int rule,
                        psvCoordinate[] po)
屈曲規則、および座標をを指定して、新しいポリゴン相当の psvGeometricPath オブジェクトを構築します。

パラメータ:
rule - 屈曲規則
po - 座標配列
メソッドの詳細

moveTo

public void moveTo(double x,
                   double y)
指定された座標に移動して点をパスに追加します。

パラメータ:
x - 移動先X座標
y - 移動先Y座標

lineTo

public void lineTo(double x,
                   double y)
現在の座標から新しく指定された座標まで直線を描画して点をパスに追加します。

パラメータ:
x - 終点X座標
y - 終点Y座標

quadTo

public void quadTo(double x1,
                   double y1,
                   double x2,
                   double y2)
2 つの新しい点によって定義される曲線セグメントをパスに追加します。 曲線セグメントは、指定された点 (x1, y1) を 2 次パラメトリック制御点として使用して、 現在の座標と指定された座標 (x2, y2) を通る 2 次曲線として描画します。

パラメータ:
x1 - 2 次パラメトリック制御点X座標
y1 - 2 次パラメトリック制御点Y座標
x2 - 終点X座標
y2 - 終点Y座標

curveTo

public void curveTo(double x1,
                    double y1,
                    double x2,
                    double y2,
                    double x3,
                    double y3)
3 つの新しい点によって定義される曲線セグメントをパスに追加します。 曲線セグメントは、指定された点 (x1, y1) および点 (x2, y2) をベジェ制御点として使用して、 現在の座標と指定された座標 (x3, y3) の両方を通るベジェ曲線として描画します。

パラメータ:
x1 - 制御点始点X座標
y1 - 制御点始点Y座標
x2 - 制御点終点X座標
y2 - 制御点終点Y座標
x3 - 終点X座標
y3 - 終点Y座標

closePath

public void closePath()
最後の moveTo の座標まで直線を描画して現在のサブパスを閉じます。


append

public void append(java.awt.Shape s,
                   boolean connect)
指定された Shape オブジェクトのジオメトリをパスに追加します。

パラメータ:
s - このパスにジオメトリが追加される java.awt.Shape
connect - 新しいジオメトリを既存のパスに接続するために初期 moveTo セグメントを lineTo セグメントに変えるかどうかを制御する boolean 値

append

public void append(java.awt.geom.PathIterator pi,
                   boolean connect)
指定された Shape オブジェクトのジオメトリをパスに追加します。

パラメータ:
pi - このパスにジオメトリが追加される PathIterator
connect - 新しいジオメトリを既存のパスに接続するために初期 moveTo セグメントを lineTo セグメントに変えるかどうかを制御する boolean 値

getWindingRule

public int getWindingRule()
塗りつぶしスタイル屈曲規則を返します。

戻り値:
現在の屈曲規則を表す整数

setWindingRule

public void setWindingRule(int rule)
このパスの屈曲規則を指定された値に設定します。

パラメータ:
rule - 指定された屈曲規則を表す整数
例外:
java.lang.IllegalArgumentException - ruluがWIND_EVEN_ODD でも WIND_NON_ZERO でもない場合

getCurrentPoint

public java.awt.geom.Point2D getCurrentPoint()
パスの最後に追加されたもっとも新しい座標を Point2D オブジェクトとして返します。

戻り値:
パスの終了座標を格納する Point2D オブジェクト。パスに点がない場合は null

reset

public void reset()
パスを空にリセットします。


transform

public void transform(java.awt.geom.AffineTransform affine)
指定された AffineTransform を使用して、このパスのジオメトリを変換します。

パラメータ:
affine - 領域を変換するために使用される AffineTransform

createTransformedShape

public java.awt.Shape createTransformedShape(java.awt.geom.AffineTransform affine)
変換された、新しい Shape を返します。

パラメータ:
affine - 新しい Shape を変換するために使用される AffineTransform
戻り値:
指定された AffineTransform で変換された、新しい Shapeオブジェクト

getBounds

public java.awt.Rectangle getBounds()
パスのバウンディングボックスを返します。

定義:
インタフェース java.awt.Shape 内の getBounds
戻り値:
現在のパスの境界となる Rectangle オブジェクト

getBounds2D

public java.awt.geom.Rectangle2D getBounds2D()
パスのバウンディングボックスを返します。

定義:
インタフェース java.awt.Shape 内の getBounds2D
戻り値:
現在のパスの境界となる Rectangle2D オブジェクト

contains

public boolean contains(double x,
                        double y)
指定された座標がこの Shape の境界内にあるかどうかを判定します。

定義:
インタフェース java.awt.Shape 内の contains
パラメータ:
x - 指定されたX座標
y - 指定されたY座標
戻り値:
指定された座標がこの Shape 内にある場合は true、そうでない場合は false

contains

public boolean contains(java.awt.geom.Point2D point)
指定された Point2D がこの Shape の境界内にあるかどうかを判定します。

定義:
インタフェース java.awt.Shape 内の contains
パラメータ:
point - 指定された Point2D
戻り値:
この Shape が指定された Point2D を内包している場合は true、そうでない場合は false

contains

public boolean contains(double x,
                        double y,
                        double width,
                        double height)
指定された矩形領域がこの Shape の境界内にあるかどうかを判定します。

定義:
インタフェース java.awt.Shape 内の contains
パラメータ:
x - 指定されたX座標
y - 指定されたY座標
width - 指定された矩形領域の幅
height - 指定された矩形領域の高さ
戻り値:
このShapeが指定された矩形に含まれる場合はtrue、層でない場合はfalse

contains

public boolean contains(java.awt.geom.Rectangle2D rect)
指定された Rectangle2D がこの Shape の境界内にあるかどうかを判定します。

定義:
インタフェース java.awt.Shape 内の contains
パラメータ:
rect - 指定された Rectangle2D
戻り値:
この Shape の境界内に指定された Rectangle2D がある場合は true、そうでない場合は false

intersects

public boolean intersects(double x,
                          double y,
                          double width,
                          double height)
この Shape の内部が、指定された矩形座標セットの内部と交差するかどうかを判定します。

定義:
インタフェース java.awt.Shape 内の intersects
パラメータ:
x - 指定されたX座標
y - 指定されたY座標
width - 指定された矩形座標の幅
height - 指定された矩形座標の高さ
戻り値:
この Shape と指定された矩形座標セットの内部が交差する場合は true、そうでない場合は false

intersects

public boolean intersects(java.awt.geom.Rectangle2D rect)
この Shape の内部が、指定された Rectangle2D の内部と交差するかどうかを判定します。

定義:
インタフェース java.awt.Shape 内の intersects
パラメータ:
rect - 指定された Rectangle2D
戻り値:
この Shape と指定された Rectangle2D の内部が交差する場合は true、そうでない場合は false

getPathIterator

public java.awt.geom.PathIterator getPathIterator(java.awt.geom.AffineTransform affine)
この Shape の境界に沿って繰り返し処理を行い、この Shape の輪郭のジオメトリへのアクセスを提供する PathIterator オブジェクトを返します。

定義:
インタフェース java.awt.Shape 内の getPathIterator
パラメータ:
affine - AffineTransform
戻り値:
この Shape の境界に沿って繰り返し処理を行い、この Shape の輪郭のジオメトリへのアクセスを提供する、新しい PathIterator

getPathIterator

public java.awt.geom.PathIterator getPathIterator(java.awt.geom.AffineTransform affine,
                                                  double flatness)
平坦化された Shape の境界に沿って繰り返し処理を行い、Shape の輪郭のジオメトリへのアクセスを提供する PathIterator オブジェクトを返します。

定義:
インタフェース java.awt.Shape 内の getPathIterator
パラメータ:
affine - AffineTransform
flatness - 曲線セグメントを作成するために使用されるラインセグメントが、元の曲線上の任意の点から離れることができる最大の距離
戻り値:
a 平坦化された Shape の境界に沿って繰り返し処理を行う新しい PathIterator

clone

public java.lang.Object clone()
このオブジェクトと同じクラスの新しいオブジェクトを作成します。

戻り値:
このインスタンスの複製