DynamicRigidBody QML Type
動いたり動かされたりすることができる肉体。詳細...
Import Statement: | import QtQuick3D.Physics |
Since: | Qt 6.4 |
Inherits: |
プロパティ
- angularAxisLock : AxisLock
- centerOfMassPosition : vector3d
- centerOfMassRotation : quaternion
- density : float
- gravityEnabled : bool
- inertiaMatrix : list<float>
- inertiaTensor : vector3d
- isKinematic : bool
- kinematicEulerRotation : vector4d
(since 6.5)
- kinematicPivot : vector3d
(since 6.5)
- kinematicPosition : vector3d
(since 6.5)
- kinematicRotation : vector3d
(since 6.5)
- linearAxisLock : AxisLock
- mass : float
- massMode : MassMode
メソッド
- applyCentralForce(vector3d force)
- applyCentralImpulse(vector3d impulse)
- applyForce(vector3d force, vector3d position)
- applyImpulse(vector3d impulse, vector3d position)
- applyTorque(vector3d torque)
- applyTorqueImpulse(vector3d impulse)
- reset(vector3d position, vector3d eulerRotation)
- setAngularVelocity(vector3d angularVelocity)
- setLinearVelocity(vector3d linearVelocity)
詳細な説明
この型は動的剛体を定義します。物理シーンの一部であり、質量と速度を持つ物理オブジェクトのように振る舞うオブジェクトです。
注: triangle mesh 、height field 、plane のジオメトリ形状は、isKinematic がfalse
の場合、コリジョン形状として許可されません。
プロパティの説明
angularAxisLock : AxisLock |
このプロパティは、DynamicRigidBody.AxisLock enum で定義された軸に沿ってボディの角速度をロックします。複数の軸をロックするには、それらの列挙値をビット単位で指定するだけです。
利用可能なオプション:
定数 | 説明 |
---|---|
DynamicRigidBody.None | 軸ロックなし。 |
DynamicRigidBody.LockX | X 軸をロックする。 |
DynamicRigidBody.LockY | Y軸をロックする。 |
DynamicRigidBody.LockZ | Z軸をロックする。 |
デフォルト値:DynamicRigidBody.None
centerOfMassPosition : vector3d |
デフォルト値:ボディに対する重心の位置を定義する。massMode がDynamicRigidBody.MassAndInertiaTensor
に設定されているときのみ使用されることに注意。
デフォルト値:(0, 0, 0)
massMode およびinertiaTensorも参照してください 。
centerOfMassRotation : quaternion |
重心ポーズの回転を定義します。つまり、ボディに対するボディの主慣性軸の向きを指定します。これは、massMode がDynamicRigidBody.MassAndInertiaTensor
に設定されている場合にのみ使用されることに注意してください。
デフォルト値:(1, 0, 0, 0)
massMode およびinertiaTensorも参照してください 。
density : float |
gravityEnabled : bool |
このプロパティは、オブジェクトが重力の影響を受けるかどうかを定義します。
デフォルト値:true
inertiaMatrix : list<float> |
慣性テンソル行列を定義する。これは列長オーダーの 3x3 行列です。この行列は対角化可能であることに注意してください。これはmassMode がDynamicRigidBody.MassAndInertiaMatrix
に設定されている場合にのみ使用されることに注意してください.
デフォルト値.3x3 の単位行列.
massMode およびinertiaTensorも参照して ください.
inertiaTensor : vector3d |
質量空間座標で指定されたパラメータを用いて,慣性テンソルベクトルを定義します.
これは 3x3 の対角行列の対角ベクトルです。対角でないワールド/アクター空間の慣性テンソルがある場合は、代わりにinertiaMatrix を使用する必要があります。
慣性テンソルの成分は正でなければならず、どの成分の値も0であれば、その軸に沿った慣性は無限であると解釈される。これはmassMode がDynamicRigidBody.MassAndInertiaTensor
に設定されているときのみ使用されることに注意してください。
デフォルト値:(1, 1, 1)
massMode およびinertiaMatrixも参照 。
isKinematic : bool |
このプロパティは、オブジェクトがキネマティックかどうかを定義します。キネマティック・オブジェクトは外力の影響を受けず、無限の質量を持つオブジェクトと見なすことができます。このプロパティが設定されている場合、すべてのシミュレーションフレームにおいて、物理オブジェクトは外力に関係なく目標位置に移動します。なお、キネマティックオブジェクトを移動・回転させるには、kinematicPosition,kinematicRotation,kinematicEulerRotation,kinematicPivot プロパティを使用する必要があります。
デフォルト値:false
kinematicPosition,kinematicRotation,kinematicEulerRotation,kinematicPivotも参照 。
kinematicEulerRotation : vector4d |
オブジェクトがキネマティックであるとき、つまりisKinematic がtrue
に設定されているときのオブジェクトのオイラー回転を定義します。シミュレーションの各反復で、物理オブジェクトはこの値に従って更新されます。
デフォルト値です:(1, 0, 0, 0)
このプロパティは Qt 6.5 で導入されました。
isKinematic,kinematicPosition, kinematicEulerRotation,kinematicPivotも参照してください 。
kinematicPivot : vector3d |
オブジェクトがキネマティックであるとき、つまりisKinematic がtrue
に設定されているときのピボットを定義します。シミュレーションの各反復で、物理オブジェクトはこの値に従って更新されます。
デフォルト値です:(0, 0, 0)
このプロパティは Qt 6.5 で導入されました。
isKinematic,kinematicPosition,kinematicEulerRotation,kinematicRotationも参照してください 。
kinematicPosition : vector3d |
オブジェクトがキネマティックであるとき、つまりisKinematic がtrue
に設定されているときのオブジェクトの位置を定義します。シミュレーションの各反復で、物理オブジェクトはこの値に従って更新されます。
デフォルト値です:(0, 0, 0)
このプロパティは Qt 6.5 で導入されました。
isKinematic,kinematicRotation,kinematicEulerRotation,kinematicPivotも参照してください 。
kinematicRotation : vector3d |
オブジェクトがキネマティックであるとき、つまりisKinematic がtrue
に設定されているときのオブジェクトの回転を定義します。シミュレーションの各反復で、物理オブジェクトはこの値に従って更新されます。
デフォルト値です:(0, 0, 0)
このプロパティは Qt 6.5 で導入されました。
isKinematic,kinematicPosition,kinematicEulerRotation,kinematicPivotも参照してください 。
linearAxisLock : AxisLock |
このプロパティは、DynamicRigidBody.AxisLock enumによって定義された軸に沿って、ボディの直線速度をロックします。複数の軸をロックするには、その列挙値をビット単位で指定します。
利用可能なオプション:
定数 | 説明 |
---|---|
DynamicRigidBody.None | 軸ロックなし。 |
DynamicRigidBody.LockX | X 軸をロックする。 |
DynamicRigidBody.LockY | Y軸をロックする。 |
DynamicRigidBody.LockZ | Z軸をロックする。 |
デフォルト値:DynamicRigidBody.None
mass : float |
massMode : MassMode |
このプロパティは、このボディの質量と慣性の計算方法を記述する列挙型を保持します。
利用可能なオプション
定数 | 説明 |
---|---|
DynamicRigidBody.DefaultDensity | 一様な密度を仮定して質量と慣性を計算するために、PhysicsWorld のdefaultDensity プロパティで指定された密度を使用する。 |
DynamicRigidBody.CustomDensity | 一様な密度と仮定して質量と慣性を計算するために、density で指定された密度を使用する。 |
DynamicRigidBody.Mass | 指定された質量を使用して、一様な密度を仮定して慣性を計算する。 |
DynamicRigidBody.MassAndInertiaTensor | 指定された質量値と慣性テンソルを使用する。 |
DynamicRigidBody.MassAndInertiaMatrix | 指定された質量値を使用し、指定された慣性行列から慣性を計算する。 |
デフォルト値:DynamicRigidBody.DefaultDensity
方法 ドキュメント
applyCentralForce(vector3d force) |
体の中心にforce を適用する。
applyCentralImpulse(vector3d impulse) |
体の中心にimpulse を適用します。
applyTorque(vector3d torque) |
ボディにtorque 。
applyTorqueImpulse(vector3d impulse) |
ボディにトルクimpulse を加える。
setAngularVelocity(vector3d angularVelocity) |
ボディのangularVelocity を設定する。
setLinearVelocity(vector3d linearVelocity) |
ボディのlinearVelocity を設定します。
本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。