diff options
Diffstat (limited to 'src/dynamics')
| -rw-r--r-- | src/dynamics/rigid_body.rs | 40 |
1 files changed, 27 insertions, 13 deletions
diff --git a/src/dynamics/rigid_body.rs b/src/dynamics/rigid_body.rs index 63c2221..2086839 100644 --- a/src/dynamics/rigid_body.rs +++ b/src/dynamics/rigid_body.rs @@ -704,21 +704,35 @@ impl RigidBody { } /// A builder for rigid-bodies. +#[derive(Clone, Debug, PartialEq)] +#[must_use = "Builder functions return the updated builder"] pub struct RigidBodyBuilder { - position: Isometry<Real>, - linvel: Vector<Real>, - angvel: AngVector<Real>, - gravity_scale: Real, - linear_damping: Real, - angular_damping: Real, + /// The initial position of the rigid-body to be built. + pub position: Isometry<Real>, + /// The linear velocity of the rigid-body to be built. + pub linvel: Vector<Real>, + /// The angular velocity of the rigid-body to be built. + pub angvel: AngVector<Real>, + /// The scale factor applied to the gravity affecting the rigid-body to be built, `1.0` by default. + pub gravity_scale: Real, + /// Damping factor for gradually slowing down the translational motion of the rigid-body, `0.0` by default. + pub linear_damping: Real, + /// Damping factor for gradually slowing down the angular motion of the rigid-body, `0.0` by default. + pub angular_damping: Real, rb_type: RigidBodyType, mprops_flags: RigidBodyMassPropsFlags, - mass_properties: MassProperties, - can_sleep: bool, - sleeping: bool, - ccd_enabled: bool, - dominance_group: i8, - user_data: u128, + /// The additional mass properties of the rigid-body being built. See [`RigidBodyBuilder::additional_mass_properties`] for more information. + pub mass_properties: MassProperties, + /// Whether or not the rigid-body to be created can sleep if it reaches a dynamic equilibrium. + pub can_sleep: bool, + /// Whether or not the rigid-body is to be created asleep. + pub sleeping: bool, + /// Whether continuous collision-detection is enabled for the rigid-body to be built. + pub ccd_enabled: bool, + /// The dominance group of the rigid-body to be built. + pub dominance_group: i8, + /// An arbitrary user-defined 128-bit integer associated to the rigid-bodies built by this builder. + pub user_data: u128, } impl RigidBodyBuilder { @@ -962,7 +976,7 @@ impl RigidBodyBuilder { self } - /// Enabled continuous collision-detection for this rigid-body. + /// Sets whether or not continuous collision-detection is enabled for this rigid-body. pub fn ccd_enabled(mut self, enabled: bool) -> Self { self.ccd_enabled = enabled; self |
