jp.co.melco.preserv
クラス psvPolylineData

java.lang.Object
  拡張jp.co.melco.preserv.psvAnyData
      拡張jp.co.melco.preserv.psvPolylineData
すべての実装インタフェース:
java.lang.Cloneable, java.io.Externalizable, psvAreaBoundary, psvShape, java.io.Serializable
直系の既知のサブクラス:
psvAppLineData

public class psvPolylineData
extends psvAnyData
implements java.io.Externalizable

psvPolylineDataは、ポリラインを表現するための図形オブジェクトクラスです。

導入されたバージョン:
V1.0
バージョン:
V1.0
作成者:
PreSerV Development Team
関連項目:
直列化された形式

フィールドの概要
protected  psvCoordinate[] _po
          ポリラインの座標配列を保存します。
protected  psvCoordinate[] _spline_points
          スプラインを構成する点配列
protected static int SPLINE_TOL
          スプラインの点間隔
 
クラス jp.co.melco.preserv.psvAnyData から継承したフィールド
_context, _cx, _cy, _dentry, _ex, _ey, _next, _sx, _sy
 
コンストラクタの概要
psvPolylineData()
          コンストラクタです。
psvPolylineData(psvCoordinate[] point, psvContext argdc, psvArgs args)
          コンテキスト情報を使用してpsvPolylineDataオブジェクトを構築します。
psvPolylineData(psvCoordinate[] point, short mode, int picid, psvArgs args)
          psvPolylineDataオブジェクトを構築します。
 
メソッドの概要
 java.lang.Object clone()
          このオブジェクトのコピーを作成して返します。
 boolean contains(double x, double y)
          指定された座標が、図形の領域内にあるかどうかを判定します。
 boolean contains(double sx, double sy, double ex, double ey)
          図形の内部領域が、指定された矩形領域を完全に包含するかどうかを判定します。
 boolean cover(double sx, double sy, double ex, double ey)
          指定された矩形領域が図形の内部領域を完全に包含するかどうか判定します。
 java.awt.Shape createAWTShape()
          この図形のJava2オブジェクトを取得します。
static boolean crossLine(psvCoordinate sp1, psvCoordinate ep1, psvCoordinate sp2, psvCoordinate ep2)
          2直線の交差チェックを行います。
 double distance(double x, double y)
          指定した点からポリラインオブジェクトの最近点までの距離を計算します。
protected static psvCoordinate[] get_spline_points(psvCoordinate[] gpo)
          スプラインデータを取得します。
protected static psvCoordinate[] get_spline_points(psvCoordinate[] gpo, int tol)
          スプラインデータを取得します。
 psvCoordinate[] getPoints()
          ポリラインの点配列を取得します。
 psvRegion getRegion()
          この図形を完全に囲むpsvRegion(左下座標、右上座標)を返します。
 boolean inner(psvRegion range)
          指定した領域内にポリラインオブジェクトおよびポリラインオブジェクト の一部が存在するか検索します。
 boolean intersects(double sx, double sy, double ex, double ey)
          図形の内部領域が指定された矩形領域の内部領域と交差するかどうかを判定します。
protected  void makeSpline(psvCoordinate[] point)
          スプラインデータを取得します。
protected  java.lang.String paramString()
          このオブジェクトの情報をStringで返します。
static double polyline_distance(psvCoordinate[] pnt, double x, double y)
          指定した点からポリラインオブジェクトの最近点までの距離を計算します。
protected static boolean polyline_inner(psvCoordinate[] po, psvRegion range)
          指定した領域内にポリラインオブジェクトおよびポリラインオブジェクト の一部が存在するか検索します。
 void readExternal(java.io.ObjectInput in)
          このオブジェクトの内容を復元します。
 void realDraw(psvScreen screen, psvContext dc)
          グラフィックスウィンドウにポリラインを描画します。
 void rotate(double rot_x, double rot_y, int argDegree, psvTree atree, boolean callEvent)
          指定した回転角でポリラインを回転させます。
 void scale(double rx, double ry, double sx, double sy, psvTree atree, boolean callEvent)
          指定した倍率でポリラインを拡大/縮小させます。
protected  void set_position(psvCoordinate[] point)
          ポリラインデータの矩形を設定します。
protected static void Spline(double X1, double Y1, double X2, double Y2, double X3, double Y3, double X4, double Y4, jp.co.melco.preserv.psvPointStack argStack, int tol)
          4点の座標からスプラインデータを設定します。
 java.lang.String toString()
          このオブジェクトの情報をStringで返します。
 void transform(psvCoordinate[] argpo, psvTree atree)
          推奨されていません。 
psvPolylineData#transform()メソッドでは、psvTreeの更新を行いません。
psvTreeを更新する(psvTree#get_bbox()の値を更新する)には、以下のメソッドを使用してください。
psvTree#transform_data(psvShape any_p, psvCoordinate[] apo)
 void translate(double trans_x, double trans_y, psvTree atree, boolean callEvent)
          指定した移動量でポリラインを移動させます。
 void writeExternal(java.io.ObjectOutput out)
          このオブジェクトの内容を保存します。
 
クラス jp.co.melco.preserv.psvAnyData から継承したメソッド
anydata_set_position, attrib, attrib, clearAWTShape, clearChain, color, color, cx, cy, draw_color, draw, draw, draw, erase, ex, ey, get_context, get_layer, get_ref, get_TimeManager, get_values, getAWTShape, init, init, layer, layer, nextChain, nextChain, pic_id, pic_id, rehash_bbox, rehashp, rotate, scale, set_context, set_position, set_range, set_range, set_ref, set_TimeManager, set_values, sx, sy, transform, translate, translate, unlayer, xy2bl, xy2bl, XYrehashp, XYrehashp
 
クラス java.lang.Object から継承したメソッド
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

_spline_points

protected transient psvCoordinate[] _spline_points
スプラインを構成する点配列


SPLINE_TOL

protected static final int SPLINE_TOL
スプラインの点間隔

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

_po

protected psvCoordinate[] _po
ポリラインの座標配列を保存します。

コンストラクタの詳細

psvPolylineData

public psvPolylineData()
コンストラクタです。


psvPolylineData

public psvPolylineData(psvCoordinate[] point,
                       short mode,
                       int picid,
                       psvArgs args)
psvPolylineDataオブジェクトを構築します。

パラメータ:
point - 定義したポリラインの点の配列
mode - 描画モード
picid - ユーザが定義したid
args - ポリラインと関連付けるキーとデータの配列

導入されたバージョン:
V1.0

psvPolylineData

public psvPolylineData(psvCoordinate[] point,
                       psvContext argdc,
                       psvArgs args)
コンテキスト情報を使用してpsvPolylineDataオブジェクトを構築します。

パラメータ:
point - 定義したポリラインの点の配列
argdc - この図形を表現するコンテキスト情報
args - ポリラインと関連付けるキーとデータの配列

導入されたバージョン:
V1.0
メソッドの詳細

set_position

protected void set_position(psvCoordinate[] point)
ポリラインデータの矩形を設定します。

パラメータ:
point - ポリゴンを定義する点の配列

導入されたバージョン:
V1.0

Spline

protected static void Spline(double X1,
                             double Y1,
                             double X2,
                             double Y2,
                             double X3,
                             double Y3,
                             double X4,
                             double Y4,
                             jp.co.melco.preserv.psvPointStack argStack,
                             int tol)
4点の座標からスプラインデータを設定します。

パラメータ:
X1 - 座標1
Y1 - 座標1
X2 - 座標2
Y2 - 座標2
X3 - 座標3
Y3 - 座標3
X4 - 座標4
Y4 - 座標4
argStack - スプラインの点の配列
tol -

導入されたバージョン:
V1.0

makeSpline

protected void makeSpline(psvCoordinate[] point)
スプラインデータを取得します。

パラメータ:
point - 定義したポリラインの点の配列

導入されたバージョン:
V1.0

distance

public double distance(double x,
                       double y)
指定した点からポリラインオブジェクトの最近点までの距離を計算します。

定義:
インタフェース psvShape 内の distance
定義:
クラス psvAnyData 内の distance
パラメータ:
x - 指定した点の座標
y - 指定した点の座標

戻り値:
指定した点からポリラインオブジェクトまでの距離
導入されたバージョン:
V1.0

polyline_inner

protected static boolean polyline_inner(psvCoordinate[] po,
                                        psvRegion range)
指定した領域内にポリラインオブジェクトおよびポリラインオブジェクト の一部が存在するか検索します。

パラメータ:
po - 定義したポリラインの点の配列
range - 領域

戻り値:
ポリラインオブジェクトおよびポリラインオブジェクトの 一部が領域に含まれていればtrue
導入されたバージョン:
V1.0

inner

public boolean inner(psvRegion range)
指定した領域内にポリラインオブジェクトおよびポリラインオブジェクト の一部が存在するか検索します。

定義:
インタフェース psvShape 内の inner
定義:
クラス psvAnyData 内の inner
パラメータ:
range - 領域

戻り値:
ポリラインオブジェクトおよびポリラインオブジェクトの 一部が領域に含まれていればtrue
導入されたバージョン:
V1.0

translate

public void translate(double trans_x,
                      double trans_y,
                      psvTree atree,
                      boolean callEvent)
指定した移動量でポリラインを移動させます。

定義:
インタフェース psvShape 内の translate
オーバーライド:
クラス psvAnyData 内の translate
パラメータ:
trans_x - X軸方向の移動量
trans_y - Y軸方向の移動量
atree - psvTreeオブジェクト
callEvent - 未使用

導入されたバージョン:
V1.0

rotate

public void rotate(double rot_x,
                   double rot_y,
                   int argDegree,
                   psvTree atree,
                   boolean callEvent)
指定した回転角でポリラインを回転させます。

定義:
インタフェース psvShape 内の rotate
オーバーライド:
クラス psvAnyData 内の rotate
パラメータ:
rot_x - 回転の中心座標
rot_y - 回転の中心座標
argDegree - 回転角(反時計回りに1/10度単位)
atree - psvTreeオブジェクト
callEvent - 未使用

導入されたバージョン:
V1.0

scale

public void scale(double rx,
                  double ry,
                  double sx,
                  double sy,
                  psvTree atree,
                  boolean callEvent)
指定した倍率でポリラインを拡大/縮小させます。

定義:
インタフェース psvShape 内の scale
オーバーライド:
クラス psvAnyData 内の scale
パラメータ:
rx - 拡大/縮小の基準座標
ry - 拡大/縮小の基準座標
sx - X方向の倍率
sy - Y方向の倍率
atree - psvTreeオブジェクト
callEvent - 未使用

導入されたバージョン:
V1.0

transform

public void transform(psvCoordinate[] argpo,
                      psvTree atree)
推奨されていません。 
psvPolylineData#transform()メソッドでは、psvTreeの更新を行いません。
psvTreeを更新する(psvTree#get_bbox()の値を更新する)には、以下のメソッドを使用してください。
psvTree#transform_data(psvShape any_p, psvCoordinate[] apo)

ポリラインを変形させます。

定義:
インタフェース psvShape 内の transform
オーバーライド:
クラス psvAnyData 内の transform
パラメータ:
argpo - 点の配列
atree - psvTreeオブジェクト

導入されたバージョン:
V1.0
関連項目:
psvPolylineData

polyline_distance

public static double polyline_distance(psvCoordinate[] pnt,
                                       double x,
                                       double y)
指定した点からポリラインオブジェクトの最近点までの距離を計算します。

パラメータ:
pnt - ポリゴンを定義する点の配列
x - 指定した点の座標
y - 指定した点の座標

戻り値:
指定した点からポリラインオブジェクトの最近点までの距離
導入されたバージョン:
V1.0

realDraw

public void realDraw(psvScreen screen,
                     psvContext dc)
グラフィックスウィンドウにポリラインを描画します。 メソッドpsvAnyData.drawから呼ばれるため、通常直接呼ぶことはありません。

定義:
クラス psvAnyData 内の realDraw
パラメータ:
screen - スクリーンオブジェクト
dc - コンテキスト情報

導入されたバージョン:
V1.0

get_spline_points

protected static psvCoordinate[] get_spline_points(psvCoordinate[] gpo)
スプラインデータを取得します。

パラメータ:
gpo - 定義したポリラインの点の配列

戻り値:
スプラインの点の配列
導入されたバージョン:
V1.0

get_spline_points

protected static psvCoordinate[] get_spline_points(psvCoordinate[] gpo,
                                                   int tol)
スプラインデータを取得します。

パラメータ:
gpo - 定義したポリラインの点の配列
tol - スプラインの点間隔

戻り値:
スプラインの点の配列
導入されたバージョン:
V1.0

crossLine

public static boolean crossLine(psvCoordinate sp1,
                                psvCoordinate ep1,
                                psvCoordinate sp2,
                                psvCoordinate ep2)
2直線の交差チェックを行います。

パラメータ:
sp1 - 始点1
ep1 - 終点1
sp2 - 始点2
ep2 - 終点2

戻り値:
交差する場合は、trueそうでない場合は、false
導入されたバージョン:
V2.0

clone

public java.lang.Object clone()
このオブジェクトのコピーを作成して返します。

定義:
インタフェース psvShape 内の clone
オーバーライド:
クラス psvAnyData 内の clone
戻り値:
このインスタンスの複製

paramString

protected java.lang.String paramString()
このオブジェクトの情報をStringで返します。 これは、デバッグ用に利用されることを目的としています。

オーバーライド:
クラス psvAnyData 内の paramString
戻り値:
文字属性の文字列情報

toString

public java.lang.String toString()
このオブジェクトの情報をStringで返します。

オーバーライド:
クラス psvAnyData 内の toString
戻り値:
このオブジェクトで定義されている値のString表現

readExternal

public void readExternal(java.io.ObjectInput in)
                  throws java.io.IOException,
                         java.lang.ClassNotFoundException
このオブジェクトの内容を復元します。

定義:
インタフェース java.io.Externalizable 内の readExternal
オーバーライド:
クラス psvAnyData 内の readExternal
パラメータ:
in - オブジェクトを復元するためのデータ取り込み元ストリーム
例外:
java.io.IOException - 発生する可能性があるすべての入出力例外
java.lang.ClassNotFoundException - 復元しようとしてるオブジェクトに対応するクラスが見つからない場合
関連項目:
Externalizable.readExternal(java.io.ObjectInput)

writeExternal

public void writeExternal(java.io.ObjectOutput out)
                   throws java.io.IOException
このオブジェクトの内容を保存します。

定義:
インタフェース java.io.Externalizable 内の writeExternal
オーバーライド:
クラス psvAnyData 内の writeExternal
パラメータ:
out - オブジェクトを書き込むストリーム
例外:
java.io.IOException - 発生する可能性があるすべての入出力例外
関連項目:
Externalizable.writeExternal(java.io.ObjectOutput)

getPoints

public psvCoordinate[] getPoints()
ポリラインの点配列を取得します。

戻り値:
ポリライン座標
導入されたバージョン:
V6.0.0

createAWTShape

public java.awt.Shape createAWTShape()
この図形のJava2オブジェクトを取得します。

定義:
インタフェース psvShape 内の createAWTShape
オーバーライド:
クラス psvAnyData 内の createAWTShape
戻り値:
この図形パラメータ値で作成されたpsvGeometricPathを表すShape値。

contains

public boolean contains(double x,
                        double y)
指定された座標が、図形の領域内にあるかどうかを判定します。

定義:
インタフェース psvAreaBoundary 内の contains
オーバーライド:
クラス psvAnyData 内の contains
パラメータ:
x - 判定を行うX座標(WC座標)
y - 判定を行うY座標(WC座標)
戻り値:
指定された座標が境界内にある場合はtrue、そうでない場合はfalse
導入されたバージョン:
V6.0.0

contains

public boolean contains(double sx,
                        double sy,
                        double ex,
                        double ey)
図形の内部領域が、指定された矩形領域を完全に包含するかどうかを判定します。

定義:
インタフェース psvAreaBoundary 内の contains
オーバーライド:
クラス psvAnyData 内の contains
パラメータ:
sx - 矩形領域左下開始X座標(WC座標)
sy - 矩形領域左下開始Y座標(WC座標)
ex - 矩形領域右上終了X座標(WC座標)
ey - 矩形領域右上終了Y座標(WC座標)
戻り値:
図形の内部領域が指定された矩形領域を完全に包含する場合はtrue、そうでない場合はfalse
導入されたバージョン:
V6.0.0

intersects

public boolean intersects(double sx,
                          double sy,
                          double ex,
                          double ey)
図形の内部領域が指定された矩形領域の内部領域と交差するかどうかを判定します。

定義:
インタフェース psvAreaBoundary 内の intersects
オーバーライド:
クラス psvAnyData 内の intersects
パラメータ:
sx - 矩形領域左下開始X座標(WC座標)
sy - 矩形領域左下開始Y座標(WC座標)
ex - 矩形領域右上終了X座標(WC座標)
ey - 矩形領域右上終了Y座標(WC座標)
戻り値:
図形の内部領域と指定された矩形領域の内部領域が交差する場合はtrue、そうでない場合はfalse
導入されたバージョン:
V6.0.0

cover

public boolean cover(double sx,
                     double sy,
                     double ex,
                     double ey)
指定された矩形領域が図形の内部領域を完全に包含するかどうか判定します。

定義:
インタフェース psvAreaBoundary 内の cover
オーバーライド:
クラス psvAnyData 内の cover
パラメータ:
sx - 矩形領域左下開始X座標(WC座標)
sy - 矩形領域左下開始Y座標(WC座標)
ex - 矩形領域右上終了X座標(WC座標)
ey - 矩形領域右上終了Y座標(WC座標)
戻り値:
指定された矩形領域が図形の内部領域を完全に包含する場合はtrue、そうでない場合はfalse
導入されたバージョン:
V6.0.0

getRegion

public psvRegion getRegion()
この図形を完全に囲むpsvRegion(左下座標、右上座標)を返します。

定義:
インタフェース psvAreaBoundary 内の getRegion
オーバーライド:
クラス psvAnyData 内の getRegion
戻り値:
psvRegion
導入されたバージョン:
V6.0.0