jp.go.ipa.jgcl
クラス JgclAxis1Placement3D

java.lang.Object
  |
  +--jp.go.ipa.jgcl.JgclGeometry
        |
        +--jp.go.ipa.jgcl.JgclPlacement
              |
              +--jp.go.ipa.jgcl.JgclPlacement3D
                    |
                    +--jp.go.ipa.jgcl.JgclAxis1Placement3D
すべての実装インタフェース:
java.io.Serializable

public class JgclAxis1Placement3D
extends JgclPlacement3D

3次元 : 原点の座標とZ軸の方向のみを定義する局所座標系 (配置情報) を表すクラス。

このクラスは、 回転面 の中心軸を示すことなどに利用されます。

このクラスのインスタンスは、 局所座標系の原点となる点 location と、 局所座標系のZ軸の方向を示すベクトル axis を保持します。 この局所座標系は、(暗黙に) 右手系の直交座標系を表しますが、 自身ではX軸およびY軸の方向は決定しません。 X軸の方向とY軸の方向の決定は、この局所座標系を利用する側に任されます。

Zの基底ベクトルは、常にその大きさを 1 に単位化して扱います。

location に与える点には特に制限はなく、 JgclPoint3D クラスの任意の点を与えることができますが、 null を指定することはできません。 axis に与えるベクトル JgclVector3D は特に単位化されている必要はありませんが、 ゼロベクトルを与えることはできません。 なお、axis に与えるベクトルを 指定しない (null を指定する) こともできます。 axis を null とすると、Z軸の方向は (0, 0, 1) に等しいものと解釈されます。

バージョン:
$Revision: 1.29 $, $Date: 2000/04/26 09:38:41 $
作成者:
Information-technology Promotion Agency, Japan
関連項目:
JgclAxis2Placement3D, 直列化された形式

コンストラクタの概要
JgclAxis1Placement3D(JgclPoint3D location, JgclVector3D axis)
          局所座標系の原点となる点と Z軸の方向を示すベクトルを与えて、 オブジェクトを構築する。
 
メソッドの概要
 JgclVector3D axis()
          この局所座標系のZ軸の方向を表すベクトルを返す。
protected  JgclAxis1Placement3D doTransformBy(boolean reverseTransform, JgclCartesianTransformationOperator3D transformationOperator, java.util.Hashtable transformedGeometries)
          この点を、与えられた幾何的変換演算子で変換する。
 JgclVector3D effectiveAxis()
          この局所座標系のZ軸の方向を表す (実質的な) ベクトルを返す。
protected  void output(java.io.PrintWriter writer, int indent)
          出力ストリームに形状情報を出力する。
 JgclAxis1Placement3D reverseTransformBy(JgclCartesianTransformationOperator3D transformationOperator, java.util.Hashtable transformedGeometries)
          この点を、与えられた幾何的変換演算子で逆変換する。
 JgclLine3D toLine()
          この局所座標系の原点を通り、Z軸の方向に伸びる直線を返す。
 JgclAxis1Placement3D transformBy(boolean reverseTransform, JgclCartesianTransformationOperator3D transformationOperator, java.util.Hashtable transformedGeometries)
          この点を、与えられた幾何的変換演算子で変換する。
 JgclAxis1Placement3D transformBy(JgclCartesianTransformationOperator3D transformationOperator, java.util.Hashtable transformedGeometries)
          この点を、与えられた幾何的変換演算子で変換する。
 JgclVector3D z()
          この局所座標系のZ軸を表す単位ベクトルを返す。
 
クラス jp.go.ipa.jgcl.JgclPlacement3D から継承したメソッド
dimension, is3D, location
 
クラス jp.go.ipa.jgcl.JgclPlacement から継承したメソッド
isPlacement
 
クラス jp.go.ipa.jgcl.JgclGeometry から継承したメソッド
getClassName, getToleranceForAngle, getToleranceForAngleAsObject, getToleranceForDistance, getToleranceForDistance2, getToleranceForDistanceAsObject, getToleranceForParameter, getToleranceForParameterAsObject, getToleranceForRealNumber, getToleranceForRealNumberAsObject, is1D, is2D, isCurve, isFreeform, isParametric, isPoint, isSurface, isTransformationOperator, isVector, makeIndent, output
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

JgclAxis1Placement3D

public JgclAxis1Placement3D(JgclPoint3D location,
                            JgclVector3D axis)
局所座標系の原点となる点と Z軸の方向を示すベクトルを与えて、 オブジェクトを構築する。

location が null の場合には、 JgclInvalidArgumentValue の例外を発生する。

axis は null でも構わない。 axis が null の場合には、 Z軸の方向は (0, 0, 1) に等しいものと解釈される。

axis の大きさが、 現在設定されている演算条件の距離の許容誤差以下の場合には、 JgclInvalidArgumentValue の例外を発生する。

パラメータ:
location - 局所座標系の原点
axis - Z軸の方向を示すベクトル
メソッドの詳細

axis

public JgclVector3D axis()
この局所座標系のZ軸の方向を表すベクトルを返す。

オブジェクトの構築時に与えられた axis を返す。 よって、null が返ることもありうる。

戻り値:
Z軸の方向を表すベクトル

effectiveAxis

public JgclVector3D effectiveAxis()
この局所座標系のZ軸の方向を表す (実質的な) ベクトルを返す。

axis が null でなければ、axis を返す。 axis が null ならば、(0, 0, 1) のベクトルを返す。

戻り値:
Z軸の方向を表す (実質的な) ベクトル

z

public JgclVector3D z()
この局所座標系のZ軸を表す単位ベクトルを返す。
戻り値:
Z軸を表す単位ベクトル

toLine

public JgclLine3D toLine()
この局所座標系の原点を通り、Z軸の方向に伸びる直線を返す。
戻り値:
原点を通り、Z軸の方向に伸びる直線

doTransformBy

protected JgclAxis1Placement3D doTransformBy(boolean reverseTransform,
                                             JgclCartesianTransformationOperator3D transformationOperator,
                                             java.util.Hashtable transformedGeometries)
この点を、与えられた幾何的変換演算子で変換する。

transformedGeometries は、 変換前の幾何要素をキーとし、 変換後の幾何要素を値とするハッシュテーブルである。

this が transformedGeometries 内にキーとして存在しない場合には、 this を transformationOperator で変換したものを返す。 この際にメソッド内部では this をキー、 変換結果を値として transformedGeometries に追加する。

this が transformedGeometries 内に既にキーとして存在する場合には、 実際の変換は行なわず、そのキーに対応する値を返す。 この処理は再帰的に行なわれる。

transformedGeometries は null でも構わない。 transformedGeometries は null の場合には、 常に this を transformationOperator で変換したものを返す。

パラメータ:
reverseTransform - 逆変換するのであれば true、そうでなければ false
transformationOperator - 幾何的変換演算子
transformedGeometries - 既に同様の変換を施した幾何要素を含むハッシュテーブル
戻り値:
変換後の幾何要素

transformBy

public JgclAxis1Placement3D transformBy(boolean reverseTransform,
                                        JgclCartesianTransformationOperator3D transformationOperator,
                                        java.util.Hashtable transformedGeometries)
この点を、与えられた幾何的変換演算子で変換する。

transformedGeometries は、 変換前の幾何要素をキーとし、 変換後の幾何要素を値とするハッシュテーブルである。

this が transformedGeometries 内にキーとして存在しない場合には、 this を transformationOperator で変換したものを返す。 この際にメソッド内部では this をキー、 変換結果を値として transformedGeometries に追加する。

this が transformedGeometries 内に既にキーとして存在する場合には、 実際の変換は行なわず、そのキーに対応する値を返す。 この処理は再帰的に行なわれる。

transformedGeometries は null でも構わない。 transformedGeometries は null の場合には、 常に this を transformationOperator で変換したものを返す。

パラメータ:
reverseTransform - 逆変換するのであれば true、そうでなければ false
transformationOperator - 幾何的変換演算子
transformedGeometries - 既に同様の変換を施した幾何要素を含むハッシュテーブル
戻り値:
変換後の幾何要素

transformBy

public JgclAxis1Placement3D transformBy(JgclCartesianTransformationOperator3D transformationOperator,
                                        java.util.Hashtable transformedGeometries)
この点を、与えられた幾何的変換演算子で変換する。

transformedGeometries は、 変換前の幾何要素をキーとし、 変換後の幾何要素を値とするハッシュテーブルである。

this が transformedGeometries 内にキーとして存在しない場合には、 this を transformationOperator で変換したものを返す。 この際にメソッド内部では this をキー、 変換結果を値として transformedGeometries に追加する。

this が transformedGeometries 内に既にキーとして存在する場合には、 実際の変換は行なわず、そのキーに対応する値を返す。 この処理は再帰的に行なわれる。

transformedGeometries は null でも構わない。 transformedGeometries は null の場合には、 常に this を transformationOperator で変換したものを返す。

パラメータ:
transformationOperator - 幾何的変換演算子
transformedGeometries - 既に同様の変換を施した幾何要素を含むハッシュテーブル
戻り値:
変換後の幾何要素

reverseTransformBy

public JgclAxis1Placement3D reverseTransformBy(JgclCartesianTransformationOperator3D transformationOperator,
                                               java.util.Hashtable transformedGeometries)
この点を、与えられた幾何的変換演算子で逆変換する。

transformedGeometries は、 変換前の幾何要素をキーとし、 変換後の幾何要素を値とするハッシュテーブルである。

this が transformedGeometries 内にキーとして存在しない場合には、 this を transformationOperator で逆変換したものを返す。 この際にメソッド内部では this をキー、 変換結果を値として transformedGeometries に追加する。

this が transformedGeometries 内に既にキーとして存在する場合には、 実際の変換は行なわず、そのキーに対応する値を返す。 この処理は再帰的に行なわれる。

transformedGeometries は null でも構わない。 transformedGeometries は null の場合には、 常に this を transformationOperator で逆変換したものを返す。

パラメータ:
transformationOperator - 幾何的変換演算子
transformedGeometries - 既に同様の変換を施した幾何要素を含むハッシュテーブル
戻り値:
逆変換後の幾何要素

output

protected void output(java.io.PrintWriter writer,
                      int indent)
出力ストリームに形状情報を出力する。
オーバーライド:
クラス JgclGeometry 内の output
パラメータ:
writer - PrintWriter
indent - インデントの深さ
関連項目:
JgclGeometry