From 9fed726aa9c221fe1591784d1ea57c3f8d80ced6 Mon Sep 17 00:00:00 2001 From: Sébastien Crozet Date: Wed, 24 Jan 2024 23:06:08 +0100 Subject: chore: rename the multibody motor debug demo --- examples3d/all_examples3.rs | 8 +++--- examples3d/debug_multibody_ang_motor_pos3.rs | 31 +++++++++++++++++++++++ examples3d/spherical_joint_testing.rs | 38 ---------------------------- 3 files changed, 36 insertions(+), 41 deletions(-) create mode 100644 examples3d/debug_multibody_ang_motor_pos3.rs delete mode 100644 examples3d/spherical_joint_testing.rs (limited to 'examples3d') diff --git a/examples3d/all_examples3.rs b/examples3d/all_examples3.rs index 178fca7..1bc8419 100644 --- a/examples3d/all_examples3.rs +++ b/examples3d/all_examples3.rs @@ -38,6 +38,7 @@ mod debug_chain_high_mass_ratio3; mod debug_cube_high_mass_ratio3; mod debug_internal_edges3; mod debug_long_chain3; +mod debug_multibody_ang_motor_pos3; mod joint_motor_position3; mod keva3; mod locked_rotations3; @@ -53,8 +54,6 @@ mod trimesh3; mod vehicle_controller3; mod vehicle_joints3; -mod spherical_joint_testing; - fn demo_name_from_command_line() -> Option { let mut args = std::env::args(); @@ -151,7 +150,10 @@ pub fn main() { debug_shape_modification3::init_world, ), ("(Debug) deserialize", debug_deserialize3::init_world), - ("Spherical Joint testing", spherical_joint_testing::init_world) + ( + "(Debug) multibody ang. motor pos.", + debug_multibody_ang_motor_pos3::init_world, + ), ]; // Lexicographic sort, with stress tests moved at the end of the list. diff --git a/examples3d/debug_multibody_ang_motor_pos3.rs b/examples3d/debug_multibody_ang_motor_pos3.rs new file mode 100644 index 0000000..60c820d --- /dev/null +++ b/examples3d/debug_multibody_ang_motor_pos3.rs @@ -0,0 +1,31 @@ +use rapier3d::prelude::*; +use rapier_testbed3d::Testbed; + +pub fn init_world(testbed: &mut Testbed) { + let mut bodies = RigidBodySet::new(); + let mut colliders = ColliderSet::new(); + let impulse_joints = ImpulseJointSet::new(); + let mut multibody_joints = MultibodyJointSet::new(); + + let ground = RigidBodyBuilder::fixed().translation(vector![0.0, 0.0, 0.0]); + let body = bodies.insert(ground); + let collider = ColliderBuilder::cuboid(1.0, 1.0, 1.0); + colliders.insert_with_parent(collider, body, &mut bodies); + + let rigid_body = RigidBodyBuilder::dynamic().position(Isometry::translation(0.0, 1.0, 0.0)); + let body_part = bodies.insert(rigid_body); + let collider = ColliderBuilder::cuboid(1.0, 1.0, 1.0).density(1.0); + colliders.insert_with_parent(collider, body_part, &mut bodies); + + let joint = SphericalJointBuilder::new() + .local_anchor1(point![0.0, 4.0, 0.0]) + .local_anchor2(point![0.0, 0.0, 0.0]) + .motor_position(JointAxis::AngX, 1.0, 1000.0, 200.0) + .motor_position(JointAxis::AngY, 0.0, 1000.0, 200.0) + .motor_position(JointAxis::AngZ, 0.0, 1000.0, 200.0); + + multibody_joints.insert(body, body_part, joint, true); + + testbed.set_world(bodies, colliders, impulse_joints, multibody_joints); + testbed.look_at(point![20.0, 0.0, 0.0], point![0.0, 0.0, 0.0]); +} diff --git a/examples3d/spherical_joint_testing.rs b/examples3d/spherical_joint_testing.rs deleted file mode 100644 index 7a601f9..0000000 --- a/examples3d/spherical_joint_testing.rs +++ /dev/null @@ -1,38 +0,0 @@ -use rapier3d::prelude::*; -use rapier_testbed3d::Testbed; - -pub fn init_world(testbed: &mut Testbed) { - - let mut bodies = RigidBodySet::new(); - let mut colliders = ColliderSet::new(); - let mut impulse_joints = ImpulseJointSet::new(); - let mut multibody_joints = MultibodyJointSet::new(); - - - let ground = RigidBodyBuilder::fixed().translation(vector![0.0, 0.0, 0.0]); - let body = bodies.insert(ground); - let collider = ColliderBuilder::cuboid(1.0, 1.0, 1.0); - colliders.insert_with_parent(collider, body, &mut bodies); - - - let rigid_body = RigidBodyBuilder::dynamic().position(Isometry::translation(0.0, 1.0, 0.0)); - let body_part = bodies.insert(rigid_body); - let collider = ColliderBuilder::cuboid(1.0, 1.0, 1.0).density(1.0); - colliders.insert_with_parent(collider, body_part, &mut bodies); - - - let joint = SphericalJointBuilder::new() - .local_anchor1(point![0.0, 4.0, 0.0]) - .local_anchor2(point![0.0, 0.0, 0.0]) - - .motor_position(JointAxis::AngX, 1.0, 1000.0, 200.0) - .motor_position(JointAxis::AngY, 0.0, 1000.0, 200.0) - .motor_position(JointAxis::AngZ, 0.0, 1000.0, 200.0); - - - multibody_joints.insert(body, body_part, joint, true); - - - testbed.set_world(bodies, colliders, impulse_joints, multibody_joints); - testbed.look_at(point![20.0, 0.0, 0.0], point![0.0, 0.0, 0.0]); -} \ No newline at end of file -- cgit