Skip to content

Commit

Permalink
update test
Browse files Browse the repository at this point in the history
Signed-off-by: Ian Chen <[email protected]>
  • Loading branch information
iche033 committed Mar 18, 2024
1 parent bc20fcb commit 751594d
Showing 1 changed file with 19 additions and 19 deletions.
38 changes: 19 additions & 19 deletions test/common_test/collisions.cc
Original file line number Diff line number Diff line change
Expand Up @@ -165,19 +165,19 @@ TYPED_TEST_SUITE(CollisionMeshTest,

TYPED_TEST(CollisionMeshTest, MeshDecomposition)
{
// Load a simplified mesh, drop it from some height,
// Load an optimized mesh, drop it from some height,
// and verify it collides with the ground plane
std::string modelSimplifiedStr = R"(
std::string modelOptimizedStr = R"(
<sdf version="1.11">
<model name="model_simplified">
<model name="model_optimized">
<pose>0 0 2.0 0 0 0</pose>
<link name="body">
<collision name="collision">
<geometry>
<mesh simplification="convex_decomposition">
<mesh optimization="convex_decomposition">
<uri>)";
modelSimplifiedStr += gz::physics::test::resources::kChassisDae;
modelSimplifiedStr += R"(</uri>
modelOptimizedStr += gz::physics::test::resources::kChassisDae;
modelOptimizedStr += R"(</uri>
</mesh>
</geometry>
</collision>
Expand Down Expand Up @@ -214,22 +214,22 @@ TYPED_TEST(CollisionMeshTest, MeshDecomposition)
// create the chassis model
{
sdf::Root root;
sdf::Errors errors = root.LoadSdfString(modelSimplifiedStr);
sdf::Errors errors = root.LoadSdfString(modelOptimizedStr);
ASSERT_TRUE(errors.empty()) << errors.front();
ASSERT_NE(nullptr, root.Model());
world->ConstructModel(*root.Model());
}
const std::string modelSimplifiedName{"model_simplified"};
const std::string modelOptimizedName{"model_optimized"};
const std::string bodyName{"body"};
auto modelSimplified = world->GetModel(modelSimplifiedName);
auto modelSimplifiedBody = modelSimplified->GetLink(bodyName);
auto modelOptimized = world->GetModel(modelOptimizedName);
auto modelOptimizedBody = modelOptimized->GetLink(bodyName);

auto frameDataModelSimplifiedBody =
modelSimplifiedBody->FrameDataRelativeToWorld();
auto frameDataModelOptimizedBody =
modelOptimizedBody->FrameDataRelativeToWorld();

const gz::math::Pose3d initialModelSimplifiedPose(0, 0, 2, 0, 0, 0);
EXPECT_EQ(initialModelSimplifiedPose,
gz::math::eigen3::convert(frameDataModelSimplifiedBody.pose));
const gz::math::Pose3d initialModelOptimizedPose(0, 0, 2, 0, 0, 0);
EXPECT_EQ(initialModelOptimizedPose,
gz::math::eigen3::convert(frameDataModelOptimizedBody.pose));

// After a while, the mesh model should reach the ground and come to a stop
gz::physics::ForwardStep::Output output;
Expand All @@ -239,11 +239,11 @@ TYPED_TEST(CollisionMeshTest, MeshDecomposition)
for (unsigned int i = 0; i < stepCount; ++i)
world->Step(output, state, input);

frameDataModelSimplifiedBody =
modelSimplifiedBody->FrameDataRelativeToWorld();
frameDataModelOptimizedBody =
modelOptimizedBody->FrameDataRelativeToWorld();
EXPECT_NEAR(0.1,
frameDataModelSimplifiedBody.pose.translation().z(), 1e-3);
EXPECT_NEAR(0.0, frameDataModelSimplifiedBody.linearVelocity.z(), 1e-3);
frameDataModelOptimizedBody.pose.translation().z(), 1e-3);
EXPECT_NEAR(0.0, frameDataModelOptimizedBody.linearVelocity.z(), 1e-3);
}
}

Expand Down

0 comments on commit 751594d

Please sign in to comment.