com.nttdocomo.ui.graphics3d.collision
クラス Line

Object
  拡張com.nttdocomo.ui.graphics3d.collision.AbstractShape
      拡張com.nttdocomo.ui.graphics3d.collision.Line
すべての実装インタフェース:
Shape
直系の既知のサブクラス:
Ray

public class Line
extends AbstractShape

Line(線分)を表わすクラスです。
Shapeインターフェースの説明を参照してください。

導入されたバージョン:
DoJa-5.0 (903i)

フィールドの概要
 
インタフェース com.nttdocomo.ui.graphics3d.collision.Shape から継承したフィールド
TRANS_BV_SHAPE, TRANS_BV_WORLD, TRANS_BV_WORLD_NOSCALE, TRANS_SHAPE_WORLD, TRANS_SHAPE_WORLD_NOSCALE, TYPE_AAB_BOX, TYPE_AAB_CAPSULE, TYPE_AAB_CYLINDER, TYPE_BOX, TYPE_CAPSULE, TYPE_CYLINDER, TYPE_LINE, TYPE_PLANE, TYPE_POINT, TYPE_RAY, TYPE_SPHERE, TYPE_TRIANGLE
 
コンストラクタの概要
Line(Vector3D start, Vector3D end)
           始点、終点を指定してLineオブジェクトを生成します。
 
メソッドの概要
 void createMesh(int rgb, int mode, float v)
           テスト描画用のPrimitiveオブジェクトを生成します。
 Vector3D getEndPosition(boolean isTrans)
           Lineオブジェクトの終点位置を取得します。
 Vector3D getStartPosition(boolean isTrans)
           Lineオブジェクトの始点位置を取得します。
 void set(Vector3D start, Vector3D end)
           始点、終点を指定してLineオブジェクトを設定します。
 
クラス com.nttdocomo.ui.graphics3d.collision.AbstractShape から継承したメソッド
deleteMesh, getAttribute, getMesh, getMeshTransform, getScale, getShapeType, getTransform, setAttribute, setTransform
 
クラス Object から継承したメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

Line

public Line(Vector3D start,
            Vector3D end)

始点、終点を指定してLineオブジェクトを生成します。

パラメータ:
start - 始点を表わすVector3Dオブジェクトを指定します。
end - 終点を表わすVector3Dオブジェクトを指定します。
例外:
NullPointerException - 引数startまたはendがnullの場合に発生します。
IllegalArgumentException - start、endが一致する場合に発生します。
関連項目:
図形サイズ・位置、ベクトル、行列設定値に関する注意事項
メソッドの詳細

set

public void set(Vector3D start,
                Vector3D end)

始点、終点を指定してLineオブジェクトを設定します。

パラメータ:
start - 始点を表わすVector3Dオブジェクトを指定します。
end - 終点を表わすVector3Dオブジェクトを指定します。
例外:
NullPointerException - 引数startまたはendがnullの場合に発生します。
IllegalArgumentException - start、endが一致する場合に発生します。
関連項目:
図形サイズ・位置、ベクトル、行列設定値に関する注意事項

getStartPosition

public Vector3D getStartPosition(boolean isTrans)

Lineオブジェクトの始点位置を取得します。

パラメータ:
isTrans - ワールド座標系に変換されたデータを取得する場合はtrueを指定します。 Shape座標系におけるデータを取得する場合はfalseを指定します。
戻り値:
始点座標を表わすVector3Dオブジェクトを返します (生成したVector3Dオブジェクトにデータをコピーして返します)。

getEndPosition

public Vector3D getEndPosition(boolean isTrans)

Lineオブジェクトの終点位置を取得します。

パラメータ:
isTrans - ワールド座標系に変換されたデータを取得する場合はtrueを指定します。 Shape座標系におけるデータを取得する場合はfalseを指定します。
戻り値:
終点座標を表わすVector3Dオブジェクトを返します (生成したVector3Dオブジェクトにデータをコピーして返します)。 ただし、Rayオブジェクトに対してこのメソッドが呼ばれた場合は、nullを返します。

createMesh

public void createMesh(int rgb,
                       int mode,
                       float v)
インタフェース Shape の記述:

テスト描画用のPrimitiveオブジェクトを生成します。
開発時の図形位置の確認用としての利用を前提としたメソッドです。

描画の方法は、getMeshメソッドでPrimitiveオブジェクトを取得し、getMeshTransformメソッドで 一次変換行列を取得して、これらをGraphics3DrenderObject3Dメソッドの引数に渡して描画します。

生成したPrimitiveオブジェクトは、形状クラスで保持されます。 setメソッドで形状を変更した場合は、createMeshメソッドでPrimitiveオブジェクトを 再生成してください。それ以外の場合は再生成する必要はありませんが、描画ごとに getMeshメソッドでPrimitiveオブジェクトを取得して使用するようにしてください。 (AABVでは、ワールド座標軸に平行になるようにPrimitiveオブジェクトの頂点データが変更 されます) 不要になった場合はdeleteMeshメソッドで削除してください。

色、ブレンドモード、透明度の設定に関する制限に関しては、Primitiveクラスを参照してください。
ブレンドモードにDrawableObject3D.BLEND_ALPHA、透明度に50%のような値を使用すると、 図形位置の確認がしやすくなります。

※ 図形サイズ・位置に関する注意事項
生成される頂点座標は、本パッケージの内部処理で使用しているfloat型から、Primitiveの 頂点座標で使われているshort型の範囲(-32768以上かつ32767 以下)にマッピングされるため、 範囲に収まらないサイズ・位置の場合、正常に描画されないことがあります。
また、RayPlaneは、描画上は有限の大きさとなり、端が存在します。

パラメータ:
rgb - 0x00rrggbbの形式で、Primitiveオブジェクトの色を指定します。上位8ビットは無視されます。
mode - ブレンドモードを指定します。DrawableObject3D.BLEND_NORMALDrawableObject3D.BLEND_ALPHADrawableObject3D.BLEND_ADDのいずれかを指定します。
v - 透明度をパーセントで指定します。100の時が不透明です。
例外:
IllegalArgumentException - 引数modeがDrawableObject3D.BLEND_NORMAL, DrawableObject3D.BLEND_ALPHA, DrawableObject3D.BLEND_ADDのいずれかでもない場合に発生します。
IllegalArgumentException - 引数vがFloatNaNの場合、0未満の場合、あるいは100より大きい場合に発生します。


NTT DOCOMO,INC.

本製品または文書は著作権法により保護されており、その使用、複製、再頒布および逆コンパイルを制限するライセンスのもとにおいて頒布されます。NTTドコモ(その他に許諾者がある場合は当該許諾者も含めて)の書面による事前の許可なく、本製品および関連する文書のいかなる部分も、いかなる方法によっても複製することが禁じられます。フォントを含む第三者のソフトウェアは、著作権法により保護されており、その提供者からライセンスを受けているものです。

Sun、Sun Microsystems、Java、J2MEおよびJ2SEは、米国およびその他の国における米国 Sun Microsystems,Inc.の商標または登録商標です。サンのロゴマークは、米国 Sun Microsystems, Inc.の登録商標です。

FeliCaは、ソニー株式会社が開発した非接触ICカードの技術方式です。FeliCaは、ソニー株式会社の登録商標です。

「iモード」、「iアプリ/アイアプリ」、「i-αppli」ロゴ、「DoJa」はNTTドコモの商標または登録商標です。

その他記載された会社名、製品名などは該当する各社の商標または登録商標です。