jp.co.melco.preserv
クラス psvArcData

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

public class psvArcData
extends psvAnyData
implements java.io.Externalizable

psvArcDataクラスは、円弧を表現するための図形オブジェクトクラスです。

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

フィールドの概要
protected  double _e_deg
          終了角です。
protected  psvCoordinate[] _po
          円周上の3点を表す点配列
protected  double _r
          中心点からの半径です。
protected  double _s_deg
          開始角です。
 
クラス jp.co.melco.preserv.psvAnyData から継承したフィールド
_context, _cx, _cy, _dentry, _ex, _ey, _next, _sx, _sy
 
コンストラクタの概要
psvArcData()
          コンストラクタです。
psvArcData(double r, double cx, double cy, double s_deg, double e_deg, short mode, int picid, psvArgs args)
          psvArcDataオブジェクトを構築します。
psvArcData(double r, double cx, double cy, int s_deg, int e_deg, psvContext argdc, psvArgs args)
          コンテキストを使用してpsvArcDataオブジェクトを構築します。
psvArcData(double r, double cx, double cy, int s_deg, int e_deg, short mode, int picid, psvArgs args)
          psvArcDataオブジェクトを構築します。
psvArcData(psvCoordinate[] pnt, short mode, int picid, psvArgs args)
          psvArcDataオブジェクトを構築します。
psvArcData(psvCoordinate cpnt, psvCoordinate[] pnt, short mode, int picid, psvArgs args)
          psvArcDataオブジェクトを構築します。
 
メソッドの概要
 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オブジェクトを取得します。
 double distance(double x, double y)
          指定した点から円弧オブジェクトの最近点までの距離を計算します。
static psvCoordinate[] get_3point(double r, double cx, double cy, double s_deg, double e_deg)
          円弧の始点、中点、終点座標を計算します。
static psvArcParam get_angle(psvCoordinate cpnt, psvCoordinate[] pnt)
          円弧から計算される角度を計算します。
static psvCircleParam get_center(psvCoordinate[] pnt)
          円弧の中心座標を取得します。
static double get_degree(psvCoordinate cpnt, psvCoordinate pnt)
          2点を結んだ線の角度を計算します。
static double get_radius(psvCoordinate cpnt, psvCoordinate pnt)
          中心点と円弧上の点から円弧の半径を計算します。
protected static psvRegionBounds get_range(psvCoordinate[] po, boolean fan)
          円弧データの矩形情報を取得します。
 double getEdegree()
          円弧の終了角度を取得します。
 psvCoordinate getPoint()
          円弧の中心座標を返します。
 double getRadius()
          円弧の半径を取得します。
 psvRegion getRegion()
          この図形を完全に囲むpsvRegion(左下座標、右上座標)を返します。
 double getSdegree()
          円弧の開始角度を取得します。
 boolean inner(psvRegion range)
          指定した領域内に円弧オブジェクトおよび円弧オブジェクトの 一部が存在するか検索します。
 boolean intersects(double sx, double sy, double ex, double ey)
          図形の内部領域が指定された矩形領域の内部領域と交差するかどうかを判定します。
 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_bounding_box()
          円弧データの矩形情報を設定します。
protected  void set_position(double r, double cx, double cy, double s_deg, double e_deg)
          円弧データの矩形を設定します。
protected  void set_position(psvCoordinate[] pnt)
          円弧データの矩形を設定します。
protected  void set_position(psvCoordinate cpnt, psvCoordinate[] pnt)
          円弧データの矩形を設定します。
protected  void set_range()
          円弧データの矩形情報を設定します。
protected  void sort_position(psvCoordinate[] pnt)
          円弧データの座標を左回りに設定します。
 java.lang.String toString()
          このオブジェクトのパラメータ値をStringで返します。
 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, paramString, pic_id, pic_id, rehash_bbox, rehashp, rotate, scale, set_context, set_position, set_range, set_ref, set_TimeManager, set_values, sx, sy, transform, transform, translate, translate, unlayer, xy2bl, xy2bl, XYrehashp, XYrehashp
 
クラス java.lang.Object から継承したメソッド
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

_r

protected double _r
中心点からの半径です。


_s_deg

protected double _s_deg
開始角です。


_e_deg

protected double _e_deg
終了角です。


_po

protected psvCoordinate[] _po
円周上の3点を表す点配列

コンストラクタの詳細

psvArcData

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


psvArcData

public psvArcData(double r,
                  double cx,
                  double cy,
                  int s_deg,
                  int e_deg,
                  short mode,
                  int picid,
                  psvArgs args)
psvArcDataオブジェクトを構築します。

パラメータ:
r - 円弧の半径
cx - 円弧の中心X座標
cy - 円弧の中心Y座標
s_deg - 円弧の開始角(反時計回りに1/10度単位)
e_deg - 円弧の終了角(反時計回りに1/10度単位)
mode - 描画モード
picid - ユーザが定義したid
args - 円弧と関連付けるキーとデータの配列

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

psvArcData

public psvArcData(double r,
                  double cx,
                  double cy,
                  int s_deg,
                  int e_deg,
                  psvContext argdc,
                  psvArgs args)
コンテキストを使用してpsvArcDataオブジェクトを構築します。

パラメータ:
r - 円弧の半径
cx - 円弧の中心X座標
cy - 円弧の中心Y座標
s_deg - 円弧の開始角(反時計回りに1/10度単位)
e_deg - 円弧の終了角(反時計回りに1/10度単位)
argdc - この図形を表現するコンテキスト情報
args - 円弧と関連付けるキーとデータの配列

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

psvArcData

public psvArcData(double r,
                  double cx,
                  double cy,
                  double s_deg,
                  double e_deg,
                  short mode,
                  int picid,
                  psvArgs args)
psvArcDataオブジェクトを構築します。

パラメータ:
r - 円弧の半径
cx - 円弧の中心X座標
cy - 円弧の中心Y座標
s_deg - 円弧の開始角
e_deg - 円弧の終了角
mode - 描画モード
picid - ユーザが定義したid
args - 円弧と関連付けるキーとデータの配列

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

psvArcData

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

パラメータ:
cpnt - 円弧の中心座標
pnt - 円弧上の開始点と終点の座標の配列
mode - 描画モード
picid - ユーザが定義したid
args - 円弧と関連付けるキーとデータの配列

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

psvArcData

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

パラメータ:
pnt - 円弧上の点の配列
mode - 描画モード
picid - ユーザが定義したid
args - 円弧と関連付けるキーとデータの配列

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

inner

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

定義:
インタフェース psvShape 内の inner
定義:
クラス psvAnyData 内の inner
パラメータ:
range - 判定するための領域情報

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

set_position

protected void set_position(double r,
                            double cx,
                            double cy,
                            double s_deg,
                            double e_deg)
円弧データの矩形を設定します。

パラメータ:
r - 円弧の半径
cx - 円弧の中心X座標
cy - 円弧の中心Y座標
s_deg - 円弧の開始角
e_deg - 円弧の終了角

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

set_position

protected void set_position(psvCoordinate cpnt,
                            psvCoordinate[] pnt)
円弧データの矩形を設定します。

パラメータ:
cpnt - 円弧の中心座標
pnt - 円弧上の開始点と終点の座標のpsvCoordinateの配列

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

get_center

public static final psvCircleParam get_center(psvCoordinate[] pnt)
円弧の中心座標を取得します。

パラメータ:
pnt - 円弧の始点と終点を定義した2つのpsvCoordinateの配列

戻り値:
中心座標をセットした円弧情報
導入されたバージョン:
V1.0
関連項目:
psvCircleParam

set_position

protected void set_position(psvCoordinate[] pnt)
円弧データの矩形を設定します。

パラメータ:
pnt - 円弧の始点と中点、終点を定義した3つの psvCoordinate の配列

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

sort_position

protected void sort_position(psvCoordinate[] pnt)
円弧データの座標を左回りに設定します。

パラメータ:
pnt - 円弧上の点の配列

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

set_range

protected void set_range()
円弧データの矩形情報を設定します。

オーバーライド:
クラス psvAnyData 内の set_range
導入されたバージョン:
V1.0

set_bounding_box

protected void set_bounding_box()
円弧データの矩形情報を設定します。

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

realDraw

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

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

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

distance

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

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

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

get_radius

public static final double get_radius(psvCoordinate cpnt,
                                      psvCoordinate pnt)
中心点と円弧上の点から円弧の半径を計算します。

パラメータ:
cpnt - 円弧の中心
pnt - 円弧上の点

戻り値:
中心点から円弧上の点までの長さ
導入されたバージョン:
V1.0

get_3point

public static final psvCoordinate[] get_3point(double r,
                                               double cx,
                                               double cy,
                                               double s_deg,
                                               double e_deg)
円弧の始点、中点、終点座標を計算します。

パラメータ:
r - 円弧の半径
cx - 円弧の中心X座標
cy - 円弧の中心Y座標
s_deg - 円弧の開始角
e_deg - 円弧の終了角

戻り値:
始点、中心点、終点の座標を含んだ psvCoordinate の配列
導入されたバージョン:
V1.0

get_degree

public static final double get_degree(psvCoordinate cpnt,
                                      psvCoordinate pnt)
2点を結んだ線の角度を計算します。

パラメータ:
cpnt - 始点
pnt - 終点

戻り値:
水平面と線の角度
導入されたバージョン:
V1.0

get_angle

public static final psvArcParam get_angle(psvCoordinate cpnt,
                                          psvCoordinate[] pnt)
円弧から計算される角度を計算します。

パラメータ:
cpnt - 円弧の中心
pnt - 円弧の始点と終点を定義した2つの psvCoordinate の配列

戻り値:
円弧から計算される角度情報を表すpsvArcParam値
導入されたバージョン:
V1.0

get_range

protected static psvRegionBounds get_range(psvCoordinate[] po,
                                           boolean fan)
円弧データの矩形情報を取得します。

パラメータ:
po - 円弧を表現する点座標
fan - 円弧の塗りつぶし時の扇形設定フラグ

戻り値:
矩形情報
導入されたバージョン:
V2.0

rotate

public void rotate(double rot_x,
                   double rot_y,
                   int argDegree,
                   psvTree atree,
                   boolean callEvent)
指定した回転角で円弧を回転します。

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

導入されたバージョン:
V5.0.26

scale

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

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

導入されたバージョン:
V5.0.26

clone

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

定義:
インタフェース psvShape 内の clone
オーバーライド:
クラス psvAnyData 内の clone
戻り値:
このインスタンスの複製
導入されたバージョン:
V6.0.0

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)

getRadius

public double getRadius()
円弧の半径を取得します。

戻り値:
円弧の半径
導入されたバージョン:
V6.0.0

getPoint

public psvCoordinate getPoint()
円弧の中心座標を返します。

戻り値:
円弧の中心座標
導入されたバージョン:
V6.0.0

getSdegree

public double getSdegree()
円弧の開始角度を取得します。

戻り値:
円弧開始角度
導入されたバージョン:
V6.0.0

getEdegree

public double getEdegree()
円弧の終了角度を取得します。

戻り値:
円弧開始角度
導入されたバージョン:
V6.0.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 - 未使用
関連項目:
psvAnyData.translate(double, double, jp.co.melco.preserv.psvTree, boolean)

createAWTShape

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

定義:
インタフェース psvShape 内の createAWTShape
オーバーライド:
クラス psvAnyData 内の createAWTShape
戻り値:
この図形パラメータ値で作成されたArc2D.Doubleを表す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