jp.co.melco.preserv.spatial.geometry
クラス psvGMObject

java.lang.Object
  拡張jp.co.melco.preserv.spatial.psvGeometry
      拡張jp.co.melco.preserv.spatial.geometry.psvSpatialGeometry
          拡張jp.co.melco.preserv.spatial.geometry.psvGMObject
すべての実装インタフェース:
psvTransfiniteSet, java.io.Serializable
直系の既知のサブクラス:
psvGMAggregate, psvGMComplex, psvGMPrimitive

public abstract class psvGMObject
extends psvSpatialGeometry
implements psvTransfiniteSet

空間データモデルにおける幾何オブジェクトの基底クラスです。
幾何操作のための基本機能を提供します。
地理情報標準の空間スキーマにおける GM_Object クラスに対応します。

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

コンストラクタの概要
psvGMObject()
           
 
メソッドの概要
 psvGMObject buffer(psvDistance radius)
          本オブジェクトからの距離が指定した値以下となるすべての点を含んだ幾何オブジェクトを取得します。
 psvDirectPosition centroid()
          本オブジェクトの重心を取得します。
 boolean contains(psvGMObject pointSet)
          指定された幾何オブジェクトを包含するか否かを判定します。
 psvGMObject convexHull()
          凸包を取得します。
 int coordinateDimension()
          座標次元を取得します。
 int dimension(psvDirectPosition point)
          指定された位置 又は その位置に最も近い幾何オブジェクトの次元を取得します。
 psvDistance distance(psvGMObject geometry)
          指定された点との距離を取得します。
abstract  psvGMEnvelope envelope()
          本オブジェクトを包含する矩形領域を取得します。
 boolean equals(java.lang.Object other)
          このオブジェクトと他のオブジェクトが等しいかどうかを示します。
abstract  boolean equals(psvGMObject obj)
          指定された幾何オブジェクトと同値か否かを判定します。
 void fixed()
          幾何属性の編集が確定したことを通知します。
protected  psvCalculateAgent getAgent()
          空間幾何演算の下請けを行うオブジェクトを取得します。
 psvRSCRS getCrs()
          座標参照系を取得します。
 boolean intersects(psvGMObject pointSet)
          指定された幾何オブジェクトと交差するか否かを判定します。
 boolean isModified()
          幾何属性の編集が行われたか否かを取得します。
 boolean isSimple()
          内部に自己交差 又は 自己接触する点がないかを判定します。
 psvGMObject mbRegion()
          本オブジェクトを包含する矩形領域を取得します。
 void modified()
          幾何属性が編集されたことを通知します。
protected  java.lang.String paramString()
          保持する属性値の文字列表現を取得します。
 psvDirectPosition representativePoint()
          代表点を取得します。
 void setCrs(psvRSCRS crs)
          座標参照系を設定します。
 java.lang.String toString()
          オブジェクトの文字列表現を返します。
 psvGMObject transform(psvRSCRS newCRS)
          指定された座標参照系に変換した幾何オブジェクトを取得します。
abstract  void translate(double dx, double dy)
          現在の座標値を指定された移動量だけ移動します。
 
クラス jp.co.melco.preserv.spatial.geometry.psvSpatialGeometry から継承したメソッド
getShapeForDraw
 
クラス jp.co.melco.preserv.spatial.psvGeometry から継承したメソッド
wrap
 
クラス java.lang.Object から継承したメソッド
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
インタフェース jp.co.melco.preserv.spatial.geometry.psvTransfiniteSet から継承したメソッド
contains
 

コンストラクタの詳細

psvGMObject

public psvGMObject()
メソッドの詳細

getCrs

public psvRSCRS getCrs()
座標参照系を取得します。

戻り値:
座標参照系

setCrs

public void setCrs(psvRSCRS crs)
座標参照系を設定します。

パラメータ:
crs - 座標参照系

getAgent

protected psvCalculateAgent getAgent()
空間幾何演算の下請けを行うオブジェクトを取得します。

戻り値:
空間幾何演算の下請けオブジェクト

mbRegion

public psvGMObject mbRegion()
本オブジェクトを包含する矩形領域を取得します。
このメソッドは地理情報標準の空間スキーマにおけるGM_Object#mbRegion()に対応します。

戻り値:
本オブジェクトを囲む矩形領域

representativePoint

public psvDirectPosition representativePoint()
代表点を取得します。
このメソッドは地理情報標準の空間スキーマにおけるGM_Object#representativePoint()に対応します。
ここではcentroidメソッドで重心を取得し、代表点とします。

戻り値:
代表点

distance

public psvDistance distance(psvGMObject geometry)
指定された点との距離を取得します。
指定された幾何オブジェクトと重複 又は 接触する場合の距離は 0 となります。
このメソッドは地理情報標準の空間スキーマにおけるGM_Object#distance()に対応します。

パラメータ:
geometry - 距離を計測する対象の幾何オブジェクト
戻り値:
距離

coordinateDimension

public int coordinateDimension()
座標次元を取得します。
このメソッドは地理情報標準の空間スキーマにおける GM_Object#coordinateDimension()に対応します。 本オプションでは 2 固定です。

戻り値:
座標次元(2固定)

envelope

public abstract psvGMEnvelope envelope()
本オブジェクトを包含する矩形領域を取得します。
このメソッドは地理情報標準の空間スキーマにおけるGM_Object#envelope()に対応します。

戻り値:
矩形領域

centroid

public psvDirectPosition centroid()
本オブジェクトの重心を取得します。
ここで取得できる重心は幾何図形の外接矩形の重心となります。
このメソッドは地理情報標準の空間スキーマにおけるGM_Object#centroid()に対応します。

戻り値:
重心

isSimple

public boolean isSimple()
内部に自己交差 又は 自己接触する点がないかを判定します。
ない場合はtrue、ある場合はfalseを返します。
このメソッドは地理情報標準の空間スキーマにおけるGM_Object#isSimple()に対応します。
本メソッドは現在は未サポートです。

戻り値:
自己交差 又は 自己接触する点がない場合はtrue、ある場合はfalse

dimension

public int dimension(psvDirectPosition point)
指定された位置 又は その位置に最も近い幾何オブジェクトの次元を取得します。
複数の幾何オブジェクトを内部に保持する場合はその中で最大の次元数を返します。
このメソッドは地理情報標準の空間スキーマにおけるGM_Object#dimension()に対応します。
本メソッドは現在は未サポートです。

パラメータ:
point - 次元を取得したい位置
戻り値:
次元

transform

public psvGMObject transform(psvRSCRS newCRS)
指定された座標参照系に変換した幾何オブジェクトを取得します。 このメソッドは地理情報標準の空間スキーマにおけるGM_Object#transform()に対応します。
本メソッドは現在は未サポートです。

パラメータ:
newCRS - 取得したい座標参照系
戻り値:
指定された座標参照系に変換された幾何オブジェクト

convexHull

public psvGMObject convexHull()
凸包を取得します。
このメソッドは地理情報標準の空間スキーマにおけるGM_Object#convexHull()に対応します。
本メソッドは現在は未サポートです。

戻り値:
凸包を表す幾何オブジェクト

buffer

public psvGMObject buffer(psvDistance radius)
本オブジェクトからの距離が指定した値以下となるすべての点を含んだ幾何オブジェクトを取得します。
このメソッドは地理情報標準の空間スキーマにおけるGM_Object#buffer()に対応します。
本メソッドは現在は未サポートです。

パラメータ:
radius - 幾何オブジェクトを検索する距離
戻り値:
条件を満たす幾何オブジェクト

contains

public boolean contains(psvGMObject pointSet)
インタフェース psvTransfiniteSet の記述:
指定された幾何オブジェクトを包含するか否かを判定します。
包含する場合はtrueを返し、それ以外の場合はfalseを返します。

定義:
インタフェース psvTransfiniteSet 内の contains
パラメータ:
pointSet - 包含するか否かを判定する幾何オブジェクト
戻り値:
包含する場合はtrue、それ以外の場合はfalse

intersects

public boolean intersects(psvGMObject pointSet)
インタフェース psvTransfiniteSet の記述:
指定された幾何オブジェクトと交差するか否かを判定します。
交差する場合はtrueを返し、それ以外の場合はfalseを返します。

定義:
インタフェース psvTransfiniteSet 内の intersects
パラメータ:
pointSet - 交差するか否かを判定する幾何オブジェクト
戻り値:
交差する場合はtrue、それ以外の場合はfalse

toString

public java.lang.String toString()
オブジェクトの文字列表現を返します。

戻り値:
このオブジェクトの文字列表現
関連項目:
Object.toString()

paramString

protected java.lang.String paramString()
保持する属性値の文字列表現を取得します。

戻り値:
属性値の文字列表現

equals

public abstract boolean equals(psvGMObject obj)
インタフェース psvTransfiniteSet の記述:
指定された幾何オブジェクトと同値か否かを判定します。
同値の場合はtrueを返し、それ以外の場合はfalseを返します。

定義:
インタフェース psvTransfiniteSet 内の equals
パラメータ:
obj - 同値か否かを判定する幾何オブジェクト
戻り値:
同値の場合はtrue、それ以外の場合はfalse

equals

public boolean equals(java.lang.Object other)
このオブジェクトと他のオブジェクトが等しいかどうかを示します。

パラメータ:
other - 比較対象の参照オブジェクト
戻り値:
other 引数に指定されたオブジェクトとこのオブジェクトが等しい場合は true、
そうでない場合は false
関連項目:
Object.equals(java.lang.Object)

translate

public abstract void translate(double dx,
                               double dy)
現在の座標値を指定された移動量だけ移動します。

定義:
クラス psvGeometry 内の translate
パラメータ:
dx - X軸方向の移動量
dy - Y軸方向の移動量

modified

public void modified()
幾何属性が編集されたことを通知します。


fixed

public void fixed()
幾何属性の編集が確定したことを通知します。
本メソッドはオプション内部で使用するキャッシュ管理の仕組み上で呼び出されるAPIであり、 ユーザが呼び出すべきではありません。
ただしキャッシュに依存する幾何属性(オブジェクト)を独自に追加した場合は 本メソッドをオーバライドし、当該オブジェクトに対してfixedメソッドを呼び出す必要があります。


isModified

public boolean isModified()
幾何属性の編集が行われたか否かを取得します。
編集が行われた場合はtrue、それ以外の場合はfalseを返します。
幾何属性の編集の有無の判定は再帰的に自身の属性として設定されたオブジェクトに対しても 行います。

定義:
クラス psvSpatialGeometry 内の isModified
戻り値:
編集が行われた場合はtrue、それ以外の場合はfalse