Base: add methods to get volume and get max/min points

This commit is contained in:
wmayer
2023-08-27 00:30:05 +02:00
committed by wwmayer
parent b4739d3ca4
commit 1b7d96f55a
2 changed files with 55 additions and 0 deletions

View File

@@ -201,6 +201,24 @@ TEST(BoundBox, TestCenter)
EXPECT_EQ(box.GetCenter(), Base::Vector3d(0.5, 0.5, 0.5));
}
TEST(BoundBox, TestMinimum)
{
Base::BoundBox3d box;
box.Add(Base::Vector3d(0, 0, 0));
box.Add(Base::Vector3d(1, 1, 1));
EXPECT_EQ(box.GetMinimum(), Base::Vector3d(0, 0, 0));
}
TEST(BoundBox, TestMaximum)
{
Base::BoundBox3d box;
box.Add(Base::Vector3d(0, 0, 0));
box.Add(Base::Vector3d(1, 1, 1));
EXPECT_EQ(box.GetMaximum(), Base::Vector3d(1, 1, 1));
}
TEST(BoundBox, TestDiagonalLength)
{
Base::BoundBox3d box;
@@ -211,6 +229,16 @@ TEST(BoundBox, TestDiagonalLength)
EXPECT_LT(box.CalcDiagonalLength(), 1.8);
}
TEST(BoundBox, TestVolume)
{
Base::BoundBox3d box;
EXPECT_LT(box.Volume(), 0.0);
box.Add(Base::Vector3d(0, 0, 0));
EXPECT_EQ(box.Volume(), 0.0);
box.Add(Base::Vector3d(1, 1, 1));
EXPECT_GT(box.Volume(), 0.0);
}
TEST(BoundBox, TestDiagonalEnlarge)
{
Base::BoundBox3d box;