Objectcom.nttdocomo.ui.graphics3d.collision.AbstractShape
| フィールドの概要 |
| インタフェース 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 |
| メソッドの概要 | |
void |
deleteMesh()
createMeshメソッドで生成したテスト描画用のPrimitiveオブジェクトを削除します。
|
Object |
getAttribute()
形状に付加している属性オブジェクトを取得します。 |
Primitive |
getMesh()
テスト描画用の Primitiveオブジェクトを取得します。 |
Transform |
getMeshTransform(Transform meshTrans)
テスト描画用の一次変換行列を取得します。 |
float |
getScale()
Shape座標系からワールド座標系への一次変換行列におけるスケール成分を取得します。 |
int |
getShapeType()
形状タイプを取得します。 |
Transform |
getTransform(int transType,
Transform trans)
指定した座標系間の一次変換行列を取得します。 |
void |
setAttribute(Object attribute)
形状に属性オブジェクトを付加します。 |
void |
setTransform(Transform trans)
ワールド座標系に対してShape座標系をセットする際の一次変換行列を設定します。 |
| クラス Object から継承したメソッド |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| インタフェース com.nttdocomo.ui.graphics3d.collision.Shape から継承したメソッド |
createMesh |
| メソッドの詳細 |
public final int getShapeType()
Shape の記述: 形状タイプを取得します。
Shape 内の getShapeTypeShape.TYPE_POINT,
Shape.TYPE_LINE,
Shape.TYPE_RAY,
Shape.TYPE_TRIANGLE,
Shape.TYPE_PLANE,
Shape.TYPE_SPHERE,
Shape.TYPE_BOX,
Shape.TYPE_CYLINDER,
Shape.TYPE_CAPSULE,
Shape.TYPE_AAB_BOX,
Shape.TYPE_AAB_CYLINDER,
Shape.TYPE_AAB_CAPSULEpublic Primitive getMesh()
Shape の記述:
テスト描画用のPrimitiveオブジェクトを取得します。
開発時の図形位置の確認用としての利用を前提としたメソッドです。
保持しているPrimitiveオブジェクトへの参照を返します。
取得したPrimitiveオブジェクトに対して、disposeメソッドを実行しないようにしてください。
disposeを実行すると、
Graphics3D.renderObject3D(DrawableObject3D, Transform)メソッド実行時に例外が発生します。
Shape 内の getMeshUIException - 保持しているPrimitiveオブジェクトが既に dispose() されている場合に発生します
(ILLEGAL_STATE)。
public Transform getMeshTransform(Transform meshTrans)
Shape の記述:
テスト描画用の一次変換行列を取得します。
開発時の図形位置の確認用としての利用を前提としたメソッドです。
Shape 内の getMeshTransformmeshTrans - 一次変換行列の値を受け取るTransformオブジェクトを指定します。
指定されたTransformオブジェクトに値をコピーして、戻り値で返します。nullが指定された
場合は、Transformオブジェクトを生成して値をコピーし、戻り値で返します。
public final void deleteMesh()
Shape の記述:
createMeshメソッドで生成したテスト描画用のPrimitiveオブジェクトを削除します。
Primitiveオブジェクトがdispose()されている状態で呼び出した場合、Primitiveオブジェクト
の参照を切ります。createMeshメソッドでPrimitiveオブジェクトが生成されていない
Primitiveオブジェクトが削除されている
Shape 内の deleteMeshpublic final void setTransform(Transform trans)
Shape の記述: ワールド座標系に対してShape座標系をセットする際の一次変換行列を設定します。
初期値は単位行列で、Shape座標系 がワールド座標系と一致します。
次のBoundingVolumeオブジェクトに対してこのメソッドを実行しても無視されます。
BoundingVolumeとしてBVFigureオブジェクトにセットされているBoundingVolumeオブジェクト
BoundingVolumeとしてBVFigureオブジェクトにセットされているBoundingVolumeオブジェクト
設定する行列の3×3部分が直交行列となり、全方向同一スケールとなるように指定してください。そうでない場合の 衝突判定、可視判定は保証されません。
Shape 内の setTransformtrans - ワールド座標系に対してShape座標系をセットする際の一次変換行列を
設定します。nullを設定すると単位行列として扱われ、Shape座標系がワールド座標系と一致
します。
IllegalArgumentException - 引数transの1〜3列の列ベクトルに零ベクトルがある場合に発生します。
public Transform getTransform(int transType,
Transform trans)
Shape の記述: 指定した座標系間の一次変換行列を取得します。
次の一次変換行列を取得することができます。
setTransformで設定した一次変換行列を取得します。
getRotate、getCenter(false)の結果を行列として1つにしたもの)
BoundingVolumeのサイズにスケールがかかっていない行列。
BoundingVolumeの中心(BV座標系の原点)がShape座標系の原点と異なる位置の場合、中心位置に関しては
スケールがかかります。
次のBoundingVolumeオブジェクトに対してこのメソッドを実行した場合にも、ワールド座標系−Shape座標系間の一次変換行列を取得することができます。
BoundingVolumeとしてBVFigureオブジェクトにセットされているBoundingVolumeオブジェクト
BoundingVolumeとしてBVFigureオブジェクトにセットされているBoundingVolumeオブジェクト
Shape 内の getTransformtransType - 取得する一次変換行列のタイプを指定します。
Shape.TRANS_SHAPE_WORLD、Shape.TRANS_SHAPE_WORLD_NOSCALE、Shape.TRANS_BV_SHAPE、
Shape.TRANS_BV_WORLD、Shape.TRANS_BV_WORLD_NOSCALEのいずれかを指定します。
trans - 一次変換行列の値を受け取るTransformオブジェクトを指定します。
指定されたTransformオブジェクトに値をコピーして、戻り値で返します。nullが指定された
場合は、Transformオブジェクトを生成して値をコピーし、戻り値で返します。
Point、Line、Ray、
Triangle、Planeオブジェクトに対して、transTypeにShape.TRANS_BV_SHAPE、
Shape.TRANS_BV_WORLD、Shape.TRANS_BV_WORLD_NOSCALEが指定された場合は、次の処理を行います。IllegalArgumentException - transTypeにShape.TRANS_SHAPE_WORLD、Shape.TRANS_SHAPE_WORLD_NOSCALE、
Shape.TRANS_BV_SHAPE、Shape.TRANS_BV_WORLD、Shape.TRANS_BV_WORLD_NOSCALE
以外が指定された場合に発生します
public float getScale()
Shape の記述: Shape座標系からワールド座標系への一次変換行列におけるスケール成分を取得します。
Shape 内の getScalepublic final void setAttribute(Object attribute)
Shape の記述: 形状に属性オブジェクトを付加します。
Objectクラスを継承した任意のクラスのオブジェクトを付加することができます。これにより、 図形ごとにユーザー独自の属性を設定することができます。
引数attributeにnullを指定することにより、既に設定されている属性オブジェクトを除去 することができます。
Shape 内の setAttributeattribute - 形状に付加する属性オブジェクトを指定します。public final Object getAttribute()
Shape の記述: 形状に付加している属性オブジェクトを取得します。
Shape 内の getAttribute