Struct rubullet::ChangeDynamicsOptions [−][src]
pub struct ChangeDynamicsOptions {}Show fields
pub mass: Option<f64>, pub lateral_friction: Option<f64>, pub spinning_friction: Option<f64>, pub rolling_friction: Option<f64>, pub restitution: Option<f64>, pub linear_damping: Option<f64>, pub angular_damping: Option<f64>, pub contact_stiffness_and_damping: Option<(f64, f64)>, pub friction_anchor: Option<bool>, pub local_inertia_diagonal: Option<Vector3<f64>>, pub ccd_swept_sphere_radius: Option<f64>, pub contact_processing_threshold: Option<f64>, pub activation_state: Option<ActivationState>, pub joint_damping: Option<f64>, pub anisotropic_friction: Option<f64>, pub max_joint_velocity: Option<f64>, pub collision_margin: Option<f64>, pub joint_limits: Option<(f64, f64)>, pub joint_limit_force: Option<f64>,
Expand description
Dynamics options for the change_dynamics
method.
Some options do not depend on the given link and apply to the whole body. These options are:
linear_damping
angular_damping
activation_state
max_joint_velocity
- PyBullet claims that you can set it per joint, but that is not truecollision_margin
Fields
mass: Option<f64>
change the mass of the link
lateral_friction: Option<f64>
lateral (linear) contact friction
spinning_friction: Option<f64>
torsional friction around the contact normal
rolling_friction: Option<f64>
torsional friction orthogonal to contact normal (keep this value very close to zero, otherwise the simulation can become very unrealistic
restitution: Option<f64>
bouncyness of contact. Keep it a bit less than 1, preferably closer to 0.
linear_damping: Option<f64>
linear damping of the link (0.04 by default)
angular_damping: Option<f64>
angular damping of the link (0.04 by default)
contact_stiffness_and_damping: Option<(f64, f64)>
The contact stiffness and contact damping of the link encoded as tuple (contact_stiffness, contact_damping) This overrides the value if it was specified in the URDF file in the contact section.
friction_anchor: Option<bool>
enable or disable a friction anchor: friction drift correction (disabled by default, unless set in the URDF contact section)
local_inertia_diagonal: Option<Vector3<f64>>
diagonal elements of the inertia tensor. Note that the base and links are centered around the center of mass and aligned with the principal axes of inertia so there are no off-diagonal elements in the inertia tensor.
ccd_swept_sphere_radius: Option<f64>
radius of the sphere to perform continuous collision detection.
contact_processing_threshold: Option<f64>
contacts with a distance below this threshold will be processed by the constraint solver. For example, if 0, then contacts with distance 0.01 will not be processed as a constraint
activation_state: Option<ActivationState>
When sleeping is enabled, objects that don’t move (below a threshold) will be disabled as sleeping, if all other objects that influence it are also ready to sleep.
joint_damping: Option<f64>
Joint damping coefficient applied at each joint. This coefficient is read from URDF joint damping field. Keep the value close to 0. Joint damping force = -damping_coefficient * joint_velocity
anisotropic_friction: Option<f64>
coefficient to allow scaling of friction in different directions.
max_joint_velocity: Option<f64>
maximum joint velocity for the whole robot, if it is exceeded during constraint solving, it is clamped. Default maximum joint velocity is 100 units.
collision_margin: Option<f64>
change the collision margin. dependent on the shape type, it may or may not add some padding to the collision shape.
joint_limits: Option<(f64, f64)>
changes the lower and upper limits of a joint. (lower_limit, upper_limit)
NOTE that at the moment, the joint limits are not updated in get_joint_info
!
joint_limit_force: Option<f64>
change the maximum force applied to satisfy a joint limit.
Trait Implementations
Returns the “default value” for a type. Read more
Auto Trait Implementations
impl RefUnwindSafe for ChangeDynamicsOptions
impl Send for ChangeDynamicsOptions
impl Sync for ChangeDynamicsOptions
impl Unpin for ChangeDynamicsOptions
impl UnwindSafe for ChangeDynamicsOptions
Blanket Implementations
Mutably borrows from an owned value. Read more
type Output = T
type Output = T
Should always be Self
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
pub fn is_in_subset(&self) -> bool
pub fn is_in_subset(&self) -> bool
Checks if self
is actually part of its subset T
(and can be converted to it).
pub fn to_subset_unchecked(&self) -> SS
pub fn to_subset_unchecked(&self) -> SS
Use with care! Same as self.to_subset
but without any property checks. Always succeeds.
pub fn from_subset(element: &SS) -> SP
pub fn from_subset(element: &SS) -> SP
The inclusion map: converts self
to the equivalent element of its superset.
pub fn vzip(self) -> V