このページでは

DynamicRigidBody QML Type

動いたり動かされたりすることができる肉体。詳細...

Import Statement: import QtQuick3D.Physics
Since: Qt 6.4
Inherits:

PhysicsBody

プロパティ

方法

詳細説明

この型は動的剛体を定義します。物理シーンの一部であり、質量と速度を持つ物理オブジェクトのように振る舞うオブジェクトです。

注: triangle mesh 、height field 、plane のジオメトリ形状は、isKinematic がfalse の場合、コリジョン形状としては使用できません。

プロパティの説明

angularAxisLock : AxisLock

このプロパティは、DynamicRigidBody.AxisLock enum で定義された軸に沿ってボディの角速度をロックします。複数の軸をロックするには、それらの列挙値をビット単位で指定するだけです。

利用可能なオプション:

定数説明
DynamicRigidBody.None軸ロックなし。
DynamicRigidBody.LockXX 軸をロックする。
DynamicRigidBody.LockYY軸をロックする。
DynamicRigidBody.LockZZ軸をロックする。

デフォルト値:DynamicRigidBody.None


centerOfMassPosition : vector3d

デフォルト値:ボディに対する重心の位置を定義する。これは、massMode がDynamicRigidBody.MassAndInertiaTensor に設定されている場合にのみ使用されることに注意してください。

デフォルト値:(0, 0, 0)

massMode およびinertiaTensorも参照してください 。


centerOfMassRotation : quaternion

重心ポーズの回転を定義します。つまり、ボディに対するボディの主慣性軸の向きを指定します。これは、massMode がDynamicRigidBody.MassAndInertiaTensor に設定されている場合にのみ使用されることに注意してください。

デフォルト値:(1, 0, 0, 0)

massMode およびinertiaTensorも参照してください 。


density : real

このプロパティはボディの密度を定義します。これはmassMode がDynamicRigidBody.CustomDensity に設定されているときのみ使用されます。

デフォルト値:0.001

範囲:(0, inf]

massModeも参照して ください。


gravityEnabled : bool

このプロパティは、オブジェクトが重力の影響を受けるかどうかを定義します。

デフォルト値:true


inertiaMatrix : list<real>

慣性テンソル行列を定義する。これは列長オーダーの 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 : vector3d [since 6.5]

オブジェクトがキネマティックであるとき、つまりisKinematic がtrue に設定されているときのオブジェクトのオイラー回転を定義します。シミュレーションの各反復で、物理オブジェクトはこの値に従って更新されます。

デフォルト値です:(0, 0, 0)

このプロパティは Qt 6.5 で導入されました。

isKinematic,kinematicPosition, kinematicEulerRotation,kinematicPivotも参照してください 。


kinematicPivot : vector3d [since 6.5]

オブジェクトがキネマティックであるとき、つまりisKinematic がtrue に設定されているときのピボットを定義します。シミュレーションの各反復で、物理オブジェクトはこの値に従って更新されます。

デフォルト値です:(0, 0, 0)

このプロパティは Qt 6.5 で導入されました。

isKinematic,kinematicPosition,kinematicEulerRotation,kinematicRotationも参照してください 。


kinematicPosition : vector3d [since 6.5]

オブジェクトがキネマティックであるとき、つまりisKinematic がtrue に設定されているときのオブジェクトの位置を定義します。シミュレーションの各反復で、物理オブジェクトはこの値に従って更新されます。

デフォルト値です:(0, 0, 0)

このプロパティは Qt 6.5 で導入されました。

isKinematic,kinematicRotation,kinematicEulerRotation,kinematicPivotも参照してください 。


kinematicRotation : quaternion [since 6.5]

オブジェクトがキネマティックであるとき、つまりisKinematic がtrue に設定されているときのオブジェクトの回転を定義します。シミュレーションの各反復で、物理オブジェクトはこの値に従って更新されます。

デフォルト値です:(1, 0, 0, 0)

このプロパティは Qt 6.5 で導入されました。

isKinematic,kinematicPosition,kinematicEulerRotation,kinematicPivotも参照してください 。


linearAxisLock : AxisLock

このプロパティは、DynamicRigidBody.AxisLock enumによって定義された軸に沿って、ボディの直線速度をロックします。複数の軸をロックするには、その列挙値をビット単位で指定します。

利用可能なオプション:

定数説明
DynamicRigidBody.None軸ロックなし。
DynamicRigidBody.LockXX 軸をロックする。
DynamicRigidBody.LockYY軸をロックする。
DynamicRigidBody.LockZZ軸をロックする。

デフォルト値:DynamicRigidBody.None


mass : real

このプロパティはボディの質量を定義する。これは、massMode がDynamicRigidBody.CustomDensity またはDynamicRigidBody.DefaultDensity でない場合にのみ使用されることに注意してください。また、値 0 は無限の質量と解釈され、負の数は許可されないことに注意してください。

デフォルト値:1

範囲:[0, inf]

massModeも参照のこと 。


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 を適用します。


applyForce(vector3d force, vector3d position)

ボディのposition にforce を適用します。


applyImpulse(vector3d impulse, vector3d position)

ボディのposition にimpulse を適用する。


applyTorque(vector3d torque)

ボディにtorque 。


applyTorqueImpulse(vector3d impulse)

ボディにトルクimpulse を加える。


reset(vector3d position, vector3d eulerRotation)

ボディのposition とeulerRotation をリセットする。


setAngularVelocity(vector3d angularVelocity)

ボディのangularVelocity を設定する。


setLinearVelocity(vector3d linearVelocity)

ボディのlinearVelocity を設定する。


© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.