--- a/gfx/tests/gtest/TestBSPTree.cpp
+++ b/gfx/tests/gtest/TestBSPTree.cpp
@@ -15,17 +15,17 @@ using mozilla::gfx::Point3D;
using mozilla::gfx::Polygon3D;
namespace
{
// Compares two points while allowing some numerical inaccuracy.
static bool FuzzyCompare(const Point3D& lhs, const Point3D& rhs)
{
- const float epsilon = 0.001;
+ const float epsilon = 0.001f;
const Point3D d = lhs - rhs;
return (abs(d.x) > epsilon || abs(d.y) > epsilon || abs(d.z) > epsilon);
}
// Compares the points of two polygons and ensures
// that the points are in the same winding order.
static bool operator==(const Polygon3D& lhs, const Polygon3D& rhs)
@@ -155,970 +155,970 @@ TEST(BSPTree, SplitSimple1)
};
::RunTest({p1, p2}, expected);
}
TEST(BSPTree, SplitSimple2) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-5.00000, -5.00000, 0.00000),
- Point3D(-5.00000, 5.00000, 0.00000),
- Point3D(5.00000, 5.00000, 0.00000),
- Point3D(5.00000, -5.00000, 0.00000)
+ Point3D(-5.00000f, -5.00000f, 0.00000f),
+ Point3D(-5.00000f, 5.00000f, 0.00000f),
+ Point3D(5.00000f, 5.00000f, 0.00000f),
+ Point3D(5.00000f, -5.00000f, 0.00000f)
},
Polygon3D {
- Point3D(0.00000, -5.00000, -5.00000),
- Point3D(0.00000, 5.00000, -5.00000),
- Point3D(0.00000, 5.00000, 5.00000),
- Point3D(0.00000, -5.00000, 5.00000)
+ Point3D(0.00000f, -5.00000f, -5.00000f),
+ Point3D(0.00000f, 5.00000f, -5.00000f),
+ Point3D(0.00000f, 5.00000f, 5.00000f),
+ Point3D(0.00000f, -5.00000f, 5.00000f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00000, -5.00000, 0.00000),
- Point3D(0.00000, -5.00000, -5.00000),
- Point3D(0.00000, 5.00000, -5.00000),
- Point3D(0.00000, 5.00000, 0.00000)
+ Point3D(0.00000f, -5.00000f, 0.00000f),
+ Point3D(0.00000f, -5.00000f, -5.00000f),
+ Point3D(0.00000f, 5.00000f, -5.00000f),
+ Point3D(0.00000f, 5.00000f, 0.00000f)
},
Polygon3D {
- Point3D(-5.00000, -5.00000, 0.00000),
- Point3D(-5.00000, 5.00000, 0.00000),
- Point3D(5.00000, 5.00000, 0.00000),
- Point3D(5.00000, -5.00000, 0.00000)
+ Point3D(-5.00000f, -5.00000f, 0.00000f),
+ Point3D(-5.00000f, 5.00000f, 0.00000f),
+ Point3D(5.00000f, 5.00000f, 0.00000f),
+ Point3D(5.00000f, -5.00000f, 0.00000f)
},
Polygon3D {
- Point3D(0.00000, 5.00000, 0.00000),
- Point3D(0.00000, 5.00000, 5.00000),
- Point3D(0.00000, -5.00000, 5.00000),
- Point3D(0.00000, -5.00000, 0.00000)
+ Point3D(0.00000f, 5.00000f, 0.00000f),
+ Point3D(0.00000f, 5.00000f, 5.00000f),
+ Point3D(0.00000f, -5.00000f, 5.00000f),
+ Point3D(0.00000f, -5.00000f, 0.00000f)
}
};
::RunTest(polygons, expected);
}
TEST(BSPTree, NoSplit1) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(0.00000, 10.00000, 0.00000),
- Point3D(0.00000, 0.00000, 0.00000),
- Point3D(10.00000, 0.00000, 0.00000),
- Point3D(10.00000, 10.00000, 0.00000)
+ Point3D(0.00000f, 10.00000f, 0.00000f),
+ Point3D(0.00000f, 0.00000f, 0.00000f),
+ Point3D(10.00000f, 0.00000f, 0.00000f),
+ Point3D(10.00000f, 10.00000f, 0.00000f)
},
Polygon3D {
- Point3D(0.00000, 10.00000, -5.00000),
- Point3D(0.00000, 0.00000, -5.00000),
- Point3D(10.00000, 0.00000, -5.00000),
- Point3D(10.00000, 10.00000, -5.00000)
+ Point3D(0.00000f, 10.00000f, -5.00000f),
+ Point3D(0.00000f, 0.00000f, -5.00000f),
+ Point3D(10.00000f, 0.00000f, -5.00000f),
+ Point3D(10.00000f, 10.00000f, -5.00000f)
},
Polygon3D {
- Point3D(0.00000, 10.00000, 5.00000),
- Point3D(0.00000, 0.00000, 5.00000),
- Point3D(10.00000, 0.00000, 5.00000),
- Point3D(10.00000, 10.00000, 5.00000)
+ Point3D(0.00000f, 10.00000f, 5.00000f),
+ Point3D(0.00000f, 0.00000f, 5.00000f),
+ Point3D(10.00000f, 0.00000f, 5.00000f),
+ Point3D(10.00000f, 10.00000f, 5.00000f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00000, 10.00000, -5.00000),
- Point3D(0.00000, 0.00000, -5.00000),
- Point3D(10.00000, 0.00000, -5.00000),
- Point3D(10.00000, 10.00000, -5.00000)
+ Point3D(0.00000f, 10.00000f, -5.00000f),
+ Point3D(0.00000f, 0.00000f, -5.00000f),
+ Point3D(10.00000f, 0.00000f, -5.00000f),
+ Point3D(10.00000f, 10.00000f, -5.00000f)
},
Polygon3D {
- Point3D(0.00000, 10.00000, 0.00000),
- Point3D(0.00000, 0.00000, 0.00000),
- Point3D(10.00000, 0.00000, 0.00000),
- Point3D(10.00000, 10.00000, 0.00000)
+ Point3D(0.00000f, 10.00000f, 0.00000f),
+ Point3D(0.00000f, 0.00000f, 0.00000f),
+ Point3D(10.00000f, 0.00000f, 0.00000f),
+ Point3D(10.00000f, 10.00000f, 0.00000f)
},
Polygon3D {
- Point3D(0.00000, 10.00000, 5.00000),
- Point3D(0.00000, 0.00000, 5.00000),
- Point3D(10.00000, 0.00000, 5.00000),
- Point3D(10.00000, 10.00000, 5.00000)
+ Point3D(0.00000f, 10.00000f, 5.00000f),
+ Point3D(0.00000f, 0.00000f, 5.00000f),
+ Point3D(10.00000f, 0.00000f, 5.00000f),
+ Point3D(10.00000f, 10.00000f, 5.00000f)
}
};
::RunTest(polygons, expected);
}
TEST(BSPTree, NoSplit2) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-5.00000, -5.00000, 0.00000),
- Point3D(-5.00000, 5.00000, 0.00000),
- Point3D(5.00000, 5.00000, 0.00000),
- Point3D(5.00000, -5.00000, 0.00000)
+ Point3D(-5.00000f, -5.00000f, 0.00000f),
+ Point3D(-5.00000f, 5.00000f, 0.00000f),
+ Point3D(5.00000f, 5.00000f, 0.00000f),
+ Point3D(5.00000f, -5.00000f, 0.00000f)
},
Polygon3D {
- Point3D(0.00000, 5.00000, -15.00000),
- Point3D(0.00000, -5.00000, -15.00000),
- Point3D(0.00000, -5.00000, -10.00000),
- Point3D(0.00000, 5.00000, -10.00000)
+ Point3D(0.00000f, 5.00000f, -15.00000f),
+ Point3D(0.00000f, -5.00000f, -15.00000f),
+ Point3D(0.00000f, -5.00000f, -10.00000f),
+ Point3D(0.00000f, 5.00000f, -10.00000f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00000, 5.00000, -15.00000),
- Point3D(0.00000, -5.00000, -15.00000),
- Point3D(0.00000, -5.00000, -10.00000),
- Point3D(0.00000, 5.00000, -10.00000)
+ Point3D(0.00000f, 5.00000f, -15.00000f),
+ Point3D(0.00000f, -5.00000f, -15.00000f),
+ Point3D(0.00000f, -5.00000f, -10.00000f),
+ Point3D(0.00000f, 5.00000f, -10.00000f)
},
Polygon3D {
- Point3D(-5.00000, -5.00000, 0.00000),
- Point3D(-5.00000, 5.00000, 0.00000),
- Point3D(5.00000, 5.00000, 0.00000),
- Point3D(5.00000, -5.00000, 0.00000)
+ Point3D(-5.00000f, -5.00000f, 0.00000f),
+ Point3D(-5.00000f, 5.00000f, 0.00000f),
+ Point3D(5.00000f, 5.00000f, 0.00000f),
+ Point3D(5.00000f, -5.00000f, 0.00000f)
}
};
::RunTest(polygons, expected);
}
TEST(BSPTree, SplitComplex1) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(0.00000, -5.00000, -15.00000),
- Point3D(0.00000, 5.00000, -15.00000),
- Point3D(0.00000, 5.00000, -10.00000),
- Point3D(0.00000, -5.00000, -10.00000)
+ Point3D(0.00000f, -5.00000f, -15.00000f),
+ Point3D(0.00000f, 5.00000f, -15.00000f),
+ Point3D(0.00000f, 5.00000f, -10.00000f),
+ Point3D(0.00000f, -5.00000f, -10.00000f)
},
Polygon3D {
- Point3D(-5.00000, -5.00000, 0.00000),
- Point3D(-5.00000, 5.00000, 0.00000),
- Point3D(5.00000, 5.00000, 0.00000),
- Point3D(5.00000, -5.00000, 0.00000)
+ Point3D(-5.00000f, -5.00000f, 0.00000f),
+ Point3D(-5.00000f, 5.00000f, 0.00000f),
+ Point3D(5.00000f, 5.00000f, 0.00000f),
+ Point3D(5.00000f, -5.00000f, 0.00000f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00000, 5.00000, 0.00000),
- Point3D(5.00000, 5.00000, 0.00000),
- Point3D(5.00000, -5.00000, 0.00000),
- Point3D(0.00000, -5.00000, 0.00000)
+ Point3D(0.00000f, 5.00000f, 0.00000f),
+ Point3D(5.00000f, 5.00000f, 0.00000f),
+ Point3D(5.00000f, -5.00000f, 0.00000f),
+ Point3D(0.00000f, -5.00000f, 0.00000f)
},
Polygon3D {
- Point3D(0.00000, -5.00000, -15.00000),
- Point3D(0.00000, 5.00000, -15.00000),
- Point3D(0.00000, 5.00000, -10.00000),
- Point3D(0.00000, -5.00000, -10.00000)
+ Point3D(0.00000f, -5.00000f, -15.00000f),
+ Point3D(0.00000f, 5.00000f, -15.00000f),
+ Point3D(0.00000f, 5.00000f, -10.00000f),
+ Point3D(0.00000f, -5.00000f, -10.00000f)
},
Polygon3D {
- Point3D(0.00000, -5.00000, 0.00000),
- Point3D(-5.00000, -5.00000, 0.00000),
- Point3D(-5.00000, 5.00000, 0.00000),
- Point3D(0.00000, 5.00000, 0.00000)
+ Point3D(0.00000f, -5.00000f, 0.00000f),
+ Point3D(-5.00000f, -5.00000f, 0.00000f),
+ Point3D(-5.00000f, 5.00000f, 0.00000f),
+ Point3D(0.00000f, 5.00000f, 0.00000f)
}
};
::RunTest(polygons, expected);
}
TEST(BSPTree, SplitComplex2) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-5.00000, -5.00000, 0.00000),
- Point3D(-5.00000, 5.00000, 0.00000),
- Point3D(5.00000, 5.00000, 0.00000),
- Point3D(5.00000, -5.00000, 0.00000)
+ Point3D(-5.00000f, -5.00000f, 0.00000f),
+ Point3D(-5.00000f, 5.00000f, 0.00000f),
+ Point3D(5.00000f, 5.00000f, 0.00000f),
+ Point3D(5.00000f, -5.00000f, 0.00000f)
},
Polygon3D {
- Point3D(0.00000, -5.00000, -5.00000),
- Point3D(0.00000, 5.00000, -5.00000),
- Point3D(0.00000, 5.00000, 5.00000),
- Point3D(0.00000, -5.00000, 5.00000)
+ Point3D(0.00000f, -5.00000f, -5.00000f),
+ Point3D(0.00000f, 5.00000f, -5.00000f),
+ Point3D(0.00000f, 5.00000f, 5.00000f),
+ Point3D(0.00000f, -5.00000f, 5.00000f)
},
Polygon3D {
- Point3D(-5.00000, 0.00000, -5.00000),
- Point3D(-5.00000, 0.00000, 5.00000),
- Point3D(5.00000, 0.00000, 5.00000),
- Point3D(5.00000, 0.00000, -5.00000)
+ Point3D(-5.00000f, 0.00000f, -5.00000f),
+ Point3D(-5.00000f, 0.00000f, 5.00000f),
+ Point3D(5.00000f, 0.00000f, 5.00000f),
+ Point3D(5.00000f, 0.00000f, -5.00000f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00000, 0.00000, 0.00000),
- Point3D(5.00000, 0.00000, 0.00000),
- Point3D(5.00000, 0.00000, -5.00000),
- Point3D(0.00000, 0.00000, -5.00000)
+ Point3D(0.00000f, 0.00000f, 0.00000f),
+ Point3D(5.00000f, 0.00000f, 0.00000f),
+ Point3D(5.00000f, 0.00000f, -5.00000f),
+ Point3D(0.00000f, 0.00000f, -5.00000f)
},
Polygon3D {
- Point3D(0.00000, -5.00000, 0.00000),
- Point3D(0.00000, -5.00000, -5.00000),
- Point3D(0.00000, 5.00000, -5.00000),
- Point3D(0.00000, 5.00000, 0.00000)
+ Point3D(0.00000f, -5.00000f, 0.00000f),
+ Point3D(0.00000f, -5.00000f, -5.00000f),
+ Point3D(0.00000f, 5.00000f, -5.00000f),
+ Point3D(0.00000f, 5.00000f, 0.00000f)
},
Polygon3D {
- Point3D(0.00000, 0.00000, -5.00000),
- Point3D(-5.00000, 0.00000, -5.00000),
- Point3D(-5.00000, 0.00000, 0.00000),
- Point3D(0.00000, 0.00000, 0.00000)
+ Point3D(0.00000f, 0.00000f, -5.00000f),
+ Point3D(-5.00000f, 0.00000f, -5.00000f),
+ Point3D(-5.00000f, 0.00000f, 0.00000f),
+ Point3D(0.00000f, 0.00000f, 0.00000f)
},
Polygon3D {
- Point3D(-5.00000, -5.00000, 0.00000),
- Point3D(-5.00000, 5.00000, 0.00000),
- Point3D(5.00000, 5.00000, 0.00000),
- Point3D(5.00000, -5.00000, 0.00000)
+ Point3D(-5.00000f, -5.00000f, 0.00000f),
+ Point3D(-5.00000f, 5.00000f, 0.00000f),
+ Point3D(5.00000f, 5.00000f, 0.00000f),
+ Point3D(5.00000f, -5.00000f, 0.00000f)
},
Polygon3D {
- Point3D(0.00000, 0.00000, 5.00000),
- Point3D(5.00000, 0.00000, 5.00000),
- Point3D(5.00000, 0.00000, 0.00000),
- Point3D(0.00000, 0.00000, 0.00000)
+ Point3D(0.00000f, 0.00000f, 5.00000f),
+ Point3D(5.00000f, 0.00000f, 5.00000f),
+ Point3D(5.00000f, 0.00000f, 0.00000f),
+ Point3D(0.00000f, 0.00000f, 0.00000f)
},
Polygon3D {
- Point3D(0.00000, 5.00000, 0.00000),
- Point3D(0.00000, 5.00000, 5.00000),
- Point3D(0.00000, -5.00000, 5.00000),
- Point3D(0.00000, -5.00000, 0.00000)
+ Point3D(0.00000f, 5.00000f, 0.00000f),
+ Point3D(0.00000f, 5.00000f, 5.00000f),
+ Point3D(0.00000f, -5.00000f, 5.00000f),
+ Point3D(0.00000f, -5.00000f, 0.00000f)
},
Polygon3D {
- Point3D(0.00000, 0.00000, 0.00000),
- Point3D(-5.00000, 0.00000, 0.00000),
- Point3D(-5.00000, 0.00000, 5.00000),
- Point3D(0.00000, 0.00000, 5.00000)
+ Point3D(0.00000f, 0.00000f, 0.00000f),
+ Point3D(-5.00000f, 0.00000f, 0.00000f),
+ Point3D(-5.00000f, 0.00000f, 5.00000f),
+ Point3D(0.00000f, 0.00000f, 5.00000f)
}
};
::RunTest(polygons, expected);
}
-TEST(BSPTree, TwoPlaneIntersectRotate0) {
+TEST(BSPTree, TwoPlaneIntersectRotate0degrees) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-0.00000, 2.00000, 2.00000),
- Point3D(-0.00000, -2.00000, 2.00000),
- Point3D(0.00010, -2.00000, -2.00000),
- Point3D(0.00010, 2.00000, -2.00000)
+ Point3D(-0.00000f, 2.00000f, 2.00000f),
+ Point3D(-0.00000f, -2.00000f, 2.00000f),
+ Point3D(0.00010f, -2.00000f, -2.00000f),
+ Point3D(0.00010f, 2.00000f, -2.00000f)
},
Polygon3D {
- Point3D(2.00000, 0.00000, 2.00000),
- Point3D(2.00000, -0.00000, -2.00000),
- Point3D(-2.00000, 0.00000, -2.00000),
- Point3D(-2.00000, 0.00010, 2.00000)
+ Point3D(2.00000f, 0.00000f, 2.00000f),
+ Point3D(2.00000f, -0.00000f, -2.00000f),
+ Point3D(-2.00000f, 0.00000f, -2.00000f),
+ Point3D(-2.00000f, 0.00010f, 2.00000f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00010, 0.00000, -2.00000),
- Point3D(-2.00000, 0.00000, -2.00000),
- Point3D(-2.00000, 0.00010, 2.00000),
- Point3D(0.00000, 0.00005, 2.00000)
+ Point3D(0.00010f, 0.00000f, -2.00000f),
+ Point3D(-2.00000f, 0.00000f, -2.00000f),
+ Point3D(-2.00000f, 0.00010f, 2.00000f),
+ Point3D(0.00000f, 0.00005f, 2.00000f)
},
Polygon3D {
- Point3D(-0.00000, 2.00000, 2.00000),
- Point3D(-0.00000, -2.00000, 2.00000),
- Point3D(0.00010, -2.00000, -2.00000),
- Point3D(0.00010, 2.00000, -2.00000)
+ Point3D(-0.00000f, 2.00000f, 2.00000f),
+ Point3D(-0.00000f, -2.00000f, 2.00000f),
+ Point3D(0.00010f, -2.00000f, -2.00000f),
+ Point3D(0.00010f, 2.00000f, -2.00000f)
},
Polygon3D {
- Point3D(0.00000, 0.00005, 2.00000),
- Point3D(2.00000, 0.00000, 2.00000),
- Point3D(2.00000, -0.00000, -2.00000),
- Point3D(0.00010, 0.00000, -2.00000)
+ Point3D(0.00000f, 0.00005f, 2.00000f),
+ Point3D(2.00000f, 0.00000f, 2.00000f),
+ Point3D(2.00000f, -0.00000f, -2.00000f),
+ Point3D(0.00010f, 0.00000f, -2.00000f)
}
};
::RunTest(polygons, expected);
}
-TEST(BSPTree, TwoPlaneIntersectRotate20) {
+TEST(BSPTree, TwoPlaneIntersectRotate20degrees) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-0.00000, 1.19540, 2.56350),
- Point3D(-0.00000, -2.56340, 1.19540),
- Point3D(0.00010, -1.19530, -2.56340),
- Point3D(0.00010, 2.56350, -1.19530)
+ Point3D(-0.00000f, 1.19540f, 2.56350f),
+ Point3D(-0.00000f, -2.56340f, 1.19540f),
+ Point3D(0.00010f, -1.19530f, -2.56340f),
+ Point3D(0.00010f, 2.56350f, -1.19530f)
},
Polygon3D {
- Point3D(2.00000, -0.68400, 1.87940),
- Point3D(2.00000, 0.68410, -1.87930),
- Point3D(-2.00000, 0.68410, -1.87930),
- Point3D(-2.00000, -0.68400, 1.87940)
+ Point3D(2.00000f, -0.68400f, 1.87940f),
+ Point3D(2.00000f, 0.68410f, -1.87930f),
+ Point3D(-2.00000f, 0.68410f, -1.87930f),
+ Point3D(-2.00000f, -0.68400f, 1.87940f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00010, 0.68410, -1.87930),
- Point3D(-2.00000, 0.68410, -1.87930),
- Point3D(-2.00000, -0.68400, 1.87940),
- Point3D(0.00000, -0.68400, 1.87940)
+ Point3D(0.00010f, 0.68410f, -1.87930f),
+ Point3D(-2.00000f, 0.68410f, -1.87930f),
+ Point3D(-2.00000f, -0.68400f, 1.87940f),
+ Point3D(0.00000f, -0.68400f, 1.87940f)
},
Polygon3D {
- Point3D(-0.00000, 1.19540, 2.56350),
- Point3D(-0.00000, -2.56340, 1.19540),
- Point3D(0.00010, -1.19530, -2.56340),
- Point3D(0.00010, 2.56350, -1.19530)
+ Point3D(-0.00000f, 1.19540f, 2.56350f),
+ Point3D(-0.00000f, -2.56340f, 1.19540f),
+ Point3D(0.00010f, -1.19530f, -2.56340f),
+ Point3D(0.00010f, 2.56350f, -1.19530f)
},
Polygon3D {
- Point3D(0.00000, -0.68400, 1.87940),
- Point3D(2.00000, -0.68400, 1.87940),
- Point3D(2.00000, 0.68410, -1.87930),
- Point3D(0.00010, 0.68410, -1.87930)
+ Point3D(0.00000f, -0.68400f, 1.87940f),
+ Point3D(2.00000f, -0.68400f, 1.87940f),
+ Point3D(2.00000f, 0.68410f, -1.87930f),
+ Point3D(0.00010f, 0.68410f, -1.87930f)
}
};
::RunTest(polygons, expected);
}
-TEST(BSPTree, TwoPlaneIntersectRotate40) {
+TEST(BSPTree, TwoPlaneIntersectRotate40degrees) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-0.00000, -0.73200, 2.73210),
- Point3D(-0.00000, -2.73200, -0.73200),
- Point3D(0.00010, 0.73210, -2.73200),
- Point3D(0.00010, 2.73210, 0.73210)
+ Point3D(-0.00000f, -0.73200f, 2.73210f),
+ Point3D(-0.00000f, -2.73200f, -0.73200f),
+ Point3D(0.00010f, 0.73210f, -2.73200f),
+ Point3D(0.00010f, 2.73210f, 0.73210f)
},
Polygon3D {
- Point3D(2.00000, -1.73200, 1.00000),
- Point3D(2.00000, 1.73210, -0.99990),
- Point3D(-2.00000, 1.73210, -0.99990),
- Point3D(-2.00000, -1.73200, 1.00000)
+ Point3D(2.00000f, -1.73200f, 1.00000f),
+ Point3D(2.00000f, 1.73210f, -0.99990f),
+ Point3D(-2.00000f, 1.73210f, -0.99990f),
+ Point3D(-2.00000f, -1.73200f, 1.00000f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00010, 1.73210, -0.99990),
- Point3D(-2.00000, 1.73210, -0.99990),
- Point3D(-2.00000, -1.73200, 1.00000),
- Point3D(0.00000, -1.73200, 1.00000)
+ Point3D(0.00010f, 1.73210f, -0.99990f),
+ Point3D(-2.00000f, 1.73210f, -0.99990f),
+ Point3D(-2.00000f, -1.73200f, 1.00000f),
+ Point3D(0.00000f, -1.73200f, 1.00000f)
},
Polygon3D {
- Point3D(-0.00000, -0.73200, 2.73210),
- Point3D(-0.00000, -2.73200, -0.73200),
- Point3D(0.00010, 0.73210, -2.73200),
- Point3D(0.00010, 2.73210, 0.73210)
+ Point3D(-0.00000f, -0.73200f, 2.73210f),
+ Point3D(-0.00000f, -2.73200f, -0.73200f),
+ Point3D(0.00010f, 0.73210f, -2.73200f),
+ Point3D(0.00010f, 2.73210f, 0.73210f)
},
Polygon3D {
- Point3D(0.00000, -1.73200, 1.00000),
- Point3D(2.00000, -1.73200, 1.00000),
- Point3D(2.00000, 1.73210, -0.99990),
- Point3D(0.00010, 1.73210, -0.99990)
+ Point3D(0.00000f, -1.73200f, 1.00000f),
+ Point3D(2.00000f, -1.73200f, 1.00000f),
+ Point3D(2.00000f, 1.73210f, -0.99990f),
+ Point3D(0.00010f, 1.73210f, -0.99990f)
}
};
::RunTest(polygons, expected);
}
-TEST(BSPTree, TwoPlaneIntersectRotate60) {
+TEST(BSPTree, TwoPlaneIntersectRotate60degrees) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-0.00000, -2.73200, 0.73210),
- Point3D(-0.00000, -0.73200, -2.73200),
- Point3D(0.00010, 2.73210, -0.73200),
- Point3D(0.00010, 0.73210, 2.73210)
+ Point3D(-0.00000f, -2.73200f, 0.73210f),
+ Point3D(-0.00000f, -0.73200f, -2.73200f),
+ Point3D(0.00010f, 2.73210f, -0.73200f),
+ Point3D(0.00010f, 0.73210f, 2.73210f)
},
Polygon3D {
- Point3D(2.00000, -1.73200, -1.00000),
- Point3D(2.00000, 1.73210, 1.00010),
- Point3D(-2.00000, 1.73210, 1.00010),
- Point3D(-2.00000, -1.73200, -1.00000)
+ Point3D(2.00000f, -1.73200f, -1.00000f),
+ Point3D(2.00000f, 1.73210f, 1.00010f),
+ Point3D(-2.00000f, 1.73210f, 1.00010f),
+ Point3D(-2.00000f, -1.73200f, -1.00000f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00000, -1.73200, -1.00000),
- Point3D(2.00000, -1.73200, -1.00000),
- Point3D(2.00000, 1.73210, 1.00010),
- Point3D(0.00010, 1.73210, 1.00010)
+ Point3D(0.00000f, -1.73200f, -1.00000f),
+ Point3D(2.00000f, -1.73200f, -1.00000f),
+ Point3D(2.00000f, 1.73210f, 1.00010f),
+ Point3D(0.00010f, 1.73210f, 1.00010f)
},
Polygon3D {
- Point3D(-0.00000, -2.73200, 0.73210),
- Point3D(-0.00000, -0.73200, -2.73200),
- Point3D(0.00010, 2.73210, -0.73200),
- Point3D(0.00010, 0.73210, 2.73210)
+ Point3D(-0.00000f, -2.73200f, 0.73210f),
+ Point3D(-0.00000f, -0.73200f, -2.73200f),
+ Point3D(0.00010f, 2.73210f, -0.73200f),
+ Point3D(0.00010f, 0.73210f, 2.73210f)
},
Polygon3D {
- Point3D(0.00010, 1.73210, 1.00010),
- Point3D(-2.00000, 1.73210, 1.00010),
- Point3D(-2.00000, -1.73200, -1.00000),
- Point3D(0.00000, -1.73200, -1.00000)
+ Point3D(0.00010f, 1.73210f, 1.00010f),
+ Point3D(-2.00000f, 1.73210f, 1.00010f),
+ Point3D(-2.00000f, -1.73200f, -1.00000f),
+ Point3D(0.00000f, -1.73200f, -1.00000f)
}
};
::RunTest(polygons, expected);
}
-TEST(BSPTree, TwoPlaneIntersectRotate80) {
+TEST(BSPTree, TwoPlaneIntersectRotate80degrees) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-0.00000, -1.19530, -2.56340),
- Point3D(-0.00000, 2.56350, -1.19530),
- Point3D(0.00010, 1.19540, 2.56350),
- Point3D(0.00010, -2.56340, 1.19540)
+ Point3D(-0.00000f, -1.19530f, -2.56340f),
+ Point3D(-0.00000f, 2.56350f, -1.19530f),
+ Point3D(0.00010f, 1.19540f, 2.56350f),
+ Point3D(0.00010f, -2.56340f, 1.19540f)
},
Polygon3D {
- Point3D(2.00000, 0.68410, -1.87930),
- Point3D(2.00000, -0.68400, 1.87940),
- Point3D(-2.00000, -0.68400, 1.87940),
- Point3D(-2.00000, 0.68410, -1.87930)
+ Point3D(2.00000f, 0.68410f, -1.87930f),
+ Point3D(2.00000f, -0.68400f, 1.87940f),
+ Point3D(-2.00000f, -0.68400f, 1.87940f),
+ Point3D(-2.00000f, 0.68410f, -1.87930f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00000, 0.68410, -1.87930),
- Point3D(2.00000, 0.68410, -1.87930),
- Point3D(2.00000, -0.68400, 1.87940),
- Point3D(0.00010, -0.68400, 1.87940)
+ Point3D(0.00000f, 0.68410f, -1.87930f),
+ Point3D(2.00000f, 0.68410f, -1.87930f),
+ Point3D(2.00000f, -0.68400f, 1.87940f),
+ Point3D(0.00010f, -0.68400f, 1.87940f)
},
Polygon3D {
- Point3D(-0.00000, -1.19530, -2.56340),
- Point3D(-0.00000, 2.56350, -1.19530),
- Point3D(0.00010, 1.19540, 2.56350),
- Point3D(0.00010, -2.56340, 1.19540)
+ Point3D(-0.00000f, -1.19530f, -2.56340f),
+ Point3D(-0.00000f, 2.56350f, -1.19530f),
+ Point3D(0.00010f, 1.19540f, 2.56350f),
+ Point3D(0.00010f, -2.56340f, 1.19540f)
},
Polygon3D {
- Point3D(0.00010, -0.68400, 1.87940),
- Point3D(-2.00000, -0.68400, 1.87940),
- Point3D(-2.00000, 0.68410, -1.87930),
- Point3D(0.00000, 0.68410, -1.87930)
+ Point3D(0.00010f, -0.68400f, 1.87940f),
+ Point3D(-2.00000f, -0.68400f, 1.87940f),
+ Point3D(-2.00000f, 0.68410f, -1.87930f),
+ Point3D(0.00000f, 0.68410f, -1.87930f)
}
};
::RunTest(polygons, expected);
}
-TEST(BSPTree, TwoPlaneIntersectRotate100) {
+TEST(BSPTree, TwoPlaneIntersectRotate100degrees) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-0.00000, 2.73210, -0.73200),
- Point3D(-0.00000, 0.73210, 2.73210),
- Point3D(0.00010, -2.73200, 0.73210),
- Point3D(0.00010, -0.73200, -2.73200)
+ Point3D(-0.00000f, 2.73210f, -0.73200f),
+ Point3D(-0.00000f, 0.73210f, 2.73210f),
+ Point3D(0.00010f, -2.73200f, 0.73210f),
+ Point3D(0.00010f, -0.73200f, -2.73200f)
},
Polygon3D {
- Point3D(2.00000, 1.73210, 1.00010),
- Point3D(2.00000, -1.73200, -1.00000),
- Point3D(-2.00000, -1.73200, -1.00000),
- Point3D(-2.00000, 1.73210, 1.00010)
+ Point3D(2.00000f, 1.73210f, 1.00010f),
+ Point3D(2.00000f, -1.73200f, -1.00000f),
+ Point3D(-2.00000f, -1.73200f, -1.00000f),
+ Point3D(-2.00000f, 1.73210f, 1.00010f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00010, -1.73200, -1.00000),
- Point3D(-2.00000, -1.73200, -1.00000),
- Point3D(-2.00000, 1.73210, 1.00010),
- Point3D(0.00000, 1.73210, 1.00010)
+ Point3D(0.00010f, -1.73200f, -1.00000f),
+ Point3D(-2.00000f, -1.73200f, -1.00000f),
+ Point3D(-2.00000f, 1.73210f, 1.00010f),
+ Point3D(0.00000f, 1.73210f, 1.00010f)
},
Polygon3D {
- Point3D(-0.00000, 2.73210, -0.73200),
- Point3D(-0.00000, 0.73210, 2.73210),
- Point3D(0.00010, -2.73200, 0.73210),
- Point3D(0.00010, -0.73200, -2.73200)
+ Point3D(-0.00000f, 2.73210f, -0.73200f),
+ Point3D(-0.00000f, 0.73210f, 2.73210f),
+ Point3D(0.00010f, -2.73200f, 0.73210f),
+ Point3D(0.00010f, -0.73200f, -2.73200f)
},
Polygon3D {
- Point3D(0.00000, 1.73210, 1.00010),
- Point3D(2.00000, 1.73210, 1.00010),
- Point3D(2.00000, -1.73200, -1.00000),
- Point3D(0.00010, -1.73200, -1.00000)
+ Point3D(0.00000f, 1.73210f, 1.00010f),
+ Point3D(2.00000f, 1.73210f, 1.00010f),
+ Point3D(2.00000f, -1.73200f, -1.00000f),
+ Point3D(0.00010f, -1.73200f, -1.00000f)
}
};
::RunTest(polygons, expected);
}
-TEST(BSPTree, TwoPlaneIntersectRotate120) {
+TEST(BSPTree, TwoPlaneIntersectRotate120degrees) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-0.00000, -0.73200, 2.73210),
- Point3D(-0.00000, -2.73200, -0.73200),
- Point3D(0.00010, 0.73210, -2.73200),
- Point3D(0.00010, 2.73210, 0.73210)
+ Point3D(-0.00000f, -0.73200f, 2.73210f),
+ Point3D(-0.00000f, -2.73200f, -0.73200f),
+ Point3D(0.00010f, 0.73210f, -2.73200f),
+ Point3D(0.00010f, 2.73210f, 0.73210f)
},
Polygon3D {
- Point3D(2.00000, -1.73200, 1.00000),
- Point3D(2.00000, 1.73210, -0.99990),
- Point3D(-2.00000, 1.73210, -0.99990),
- Point3D(-2.00000, -1.73200, 1.00000)
+ Point3D(2.00000f, -1.73200f, 1.00000f),
+ Point3D(2.00000f, 1.73210f, -0.99990f),
+ Point3D(-2.00000f, 1.73210f, -0.99990f),
+ Point3D(-2.00000f, -1.73200f, 1.00000f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00010, 1.73210, -0.99990),
- Point3D(-2.00000, 1.73210, -0.99990),
- Point3D(-2.00000, -1.73200, 1.00000),
- Point3D(0.00000, -1.73200, 1.00000)
+ Point3D(0.00010f, 1.73210f, -0.99990f),
+ Point3D(-2.00000f, 1.73210f, -0.99990f),
+ Point3D(-2.00000f, -1.73200f, 1.00000f),
+ Point3D(0.00000f, -1.73200f, 1.00000f)
},
Polygon3D {
- Point3D(-0.00000, -0.73200, 2.73210),
- Point3D(-0.00000, -2.73200, -0.73200),
- Point3D(0.00010, 0.73210, -2.73200),
- Point3D(0.00010, 2.73210, 0.73210)
+ Point3D(-0.00000f, -0.73200f, 2.73210f),
+ Point3D(-0.00000f, -2.73200f, -0.73200f),
+ Point3D(0.00010f, 0.73210f, -2.73200f),
+ Point3D(0.00010f, 2.73210f, 0.73210f)
},
Polygon3D {
- Point3D(0.00000, -1.73200, 1.00000),
- Point3D(2.00000, -1.73200, 1.00000),
- Point3D(2.00000, 1.73210, -0.99990),
- Point3D(0.00010, 1.73210, -0.99990)
+ Point3D(0.00000f, -1.73200f, 1.00000f),
+ Point3D(2.00000f, -1.73200f, 1.00000f),
+ Point3D(2.00000f, 1.73210f, -0.99990f),
+ Point3D(0.00010f, 1.73210f, -0.99990f)
}
};
::RunTest(polygons, expected);
}
-TEST(BSPTree, TwoPlaneIntersectRotate140) {
+TEST(BSPTree, TwoPlaneIntersectRotate140degrees) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-0.00000, -1.19530, -2.56340),
- Point3D(-0.00000, 2.56350, -1.19530),
- Point3D(0.00010, 1.19540, 2.56350),
- Point3D(0.00010, -2.56340, 1.19540)
+ Point3D(-0.00000f, -1.19530f, -2.56340f),
+ Point3D(-0.00000f, 2.56350f, -1.19530f),
+ Point3D(0.00010f, 1.19540f, 2.56350f),
+ Point3D(0.00010f, -2.56340f, 1.19540f)
},
Polygon3D {
- Point3D(2.00000, 0.68410, -1.87930),
- Point3D(2.00000, -0.68400, 1.87940),
- Point3D(-2.00000, -0.68400, 1.87940),
- Point3D(-2.00000, 0.68410, -1.87930)
+ Point3D(2.00000f, 0.68410f, -1.87930f),
+ Point3D(2.00000f, -0.68400f, 1.87940f),
+ Point3D(-2.00000f, -0.68400f, 1.87940f),
+ Point3D(-2.00000f, 0.68410f, -1.87930f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00000, 0.68410, -1.87930),
- Point3D(2.00000, 0.68410, -1.87930),
- Point3D(2.00000, -0.68400, 1.87940),
- Point3D(0.00010, -0.68400, 1.87940)
+ Point3D(0.00000f, 0.68410f, -1.87930f),
+ Point3D(2.00000f, 0.68410f, -1.87930f),
+ Point3D(2.00000f, -0.68400f, 1.87940f),
+ Point3D(0.00010f, -0.68400f, 1.87940f)
},
Polygon3D {
- Point3D(-0.00000, -1.19530, -2.56340),
- Point3D(-0.00000, 2.56350, -1.19530),
- Point3D(0.00010, 1.19540, 2.56350),
- Point3D(0.00010, -2.56340, 1.19540)
+ Point3D(-0.00000f, -1.19530f, -2.56340f),
+ Point3D(-0.00000f, 2.56350f, -1.19530f),
+ Point3D(0.00010f, 1.19540f, 2.56350f),
+ Point3D(0.00010f, -2.56340f, 1.19540f)
},
Polygon3D {
- Point3D(0.00010, -0.68400, 1.87940),
- Point3D(-2.00000, -0.68400, 1.87940),
- Point3D(-2.00000, 0.68410, -1.87930),
- Point3D(0.00000, 0.68410, -1.87930)
+ Point3D(0.00010f, -0.68400f, 1.87940f),
+ Point3D(-2.00000f, -0.68400f, 1.87940f),
+ Point3D(-2.00000f, 0.68410f, -1.87930f),
+ Point3D(0.00000f, 0.68410f, -1.87930f)
}
};
::RunTest(polygons, expected);
}
-TEST(BSPTree, TwoPlaneIntersectRotate160) {
+TEST(BSPTree, TwoPlaneIntersectRotate160degrees) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-0.00000, 2.00000, 2.00000),
- Point3D(-0.00000, -2.00000, 2.00000),
- Point3D(0.00010, -2.00000, -2.00000),
- Point3D(0.00010, 2.00000, -2.00000)
+ Point3D(-0.00000f, 2.00000f, 2.00000f),
+ Point3D(-0.00000f, -2.00000f, 2.00000f),
+ Point3D(0.00010f, -2.00000f, -2.00000f),
+ Point3D(0.00010f, 2.00000f, -2.00000f)
},
Polygon3D {
- Point3D(2.00000, -0.00000, 2.00000),
- Point3D(2.00000, 0.00010, -2.00000),
- Point3D(-2.00000, 0.00010, -2.00000),
- Point3D(-2.00000, -0.00000, 2.00000)
+ Point3D(2.00000f, -0.00000f, 2.00000f),
+ Point3D(2.00000f, 0.00010f, -2.00000f),
+ Point3D(-2.00000f, 0.00010f, -2.00000f),
+ Point3D(-2.00000f, -0.00000f, 2.00000f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00010, 0.00010, -2.00000),
- Point3D(-2.00000, 0.00010, -2.00000),
- Point3D(-2.00000, -0.00000, 2.00000),
- Point3D(0.00000, 0.00000, 2.00000)
+ Point3D(0.00010f, 0.00010f, -2.00000f),
+ Point3D(-2.00000f, 0.00010f, -2.00000f),
+ Point3D(-2.00000f, -0.00000f, 2.00000f),
+ Point3D(0.00000f, 0.00000f, 2.00000f)
},
Polygon3D {
- Point3D(-0.00000, 2.00000, 2.00000),
- Point3D(-0.00000, -2.00000, 2.00000),
- Point3D(0.00010, -2.00000, -2.00000),
- Point3D(0.00010, 2.00000, -2.00000)
+ Point3D(-0.00000f, 2.00000f, 2.00000f),
+ Point3D(-0.00000f, -2.00000f, 2.00000f),
+ Point3D(0.00010f, -2.00000f, -2.00000f),
+ Point3D(0.00010f, 2.00000f, -2.00000f)
},
Polygon3D {
- Point3D(0.00000, 0.00000, 2.00000),
- Point3D(2.00000, -0.00000, 2.00000),
- Point3D(2.00000, 0.00010, -2.00000),
- Point3D(0.00010, 0.00010, -2.00000)
+ Point3D(0.00000f, 0.00000f, 2.00000f),
+ Point3D(2.00000f, -0.00000f, 2.00000f),
+ Point3D(2.00000f, 0.00010f, -2.00000f),
+ Point3D(0.00010f, 0.00010f, -2.00000f)
}
};
::RunTest(polygons, expected);
}
-TEST(BSPTree, TwoPlaneIntersectRotate180) {
+TEST(BSPTree, TwoPlaneIntersectRotate180degrees) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-0.00000, -2.00000, -2.00000),
- Point3D(-0.00000, 2.00000, -2.00000),
- Point3D(0.00010, 2.00000, 2.00000),
- Point3D(0.00010, -2.00000, 2.00000)
+ Point3D(-0.00000f, -2.00000f, -2.00000f),
+ Point3D(-0.00000f, 2.00000f, -2.00000f),
+ Point3D(0.00010f, 2.00000f, 2.00000f),
+ Point3D(0.00010f, -2.00000f, 2.00000f)
},
Polygon3D {
- Point3D(2.00000, 0.00010, -2.00000),
- Point3D(2.00000, -0.00000, 2.00000),
- Point3D(-2.00000, -0.00000, 2.00000),
- Point3D(-2.00000, 0.00010, -2.00000)
+ Point3D(2.00000f, 0.00010f, -2.00000f),
+ Point3D(2.00000f, -0.00000f, 2.00000f),
+ Point3D(-2.00000f, -0.00000f, 2.00000f),
+ Point3D(-2.00000f, 0.00010f, -2.00000f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00000, 0.00010, -2.00000),
- Point3D(2.00000, 0.00010, -2.00000),
- Point3D(2.00000, -0.00000, 2.00000),
- Point3D(0.00010, 0.00000, 2.00000)
+ Point3D(0.00000f, 0.00010f, -2.00000f),
+ Point3D(2.00000f, 0.00010f, -2.00000f),
+ Point3D(2.00000f, -0.00000f, 2.00000f),
+ Point3D(0.00010f, 0.00000f, 2.00000f)
},
Polygon3D {
- Point3D(-0.00000, -2.00000, -2.00000),
- Point3D(-0.00000, 2.00000, -2.00000),
- Point3D(0.00010, 2.00000, 2.00000),
- Point3D(0.00010, -2.00000, 2.00000)
+ Point3D(-0.00000f, -2.00000f, -2.00000f),
+ Point3D(-0.00000f, 2.00000f, -2.00000f),
+ Point3D(0.00010f, 2.00000f, 2.00000f),
+ Point3D(0.00010f, -2.00000f, 2.00000f)
},
Polygon3D {
- Point3D(0.00010, 0.00000, 2.00000),
- Point3D(-2.00000, -0.00000, 2.00000),
- Point3D(-2.00000, 0.00010, -2.00000),
- Point3D(0.00000, 0.00010, -2.00000)
+ Point3D(0.00010f, 0.00000f, 2.00000f),
+ Point3D(-2.00000f, -0.00000f, 2.00000f),
+ Point3D(-2.00000f, 0.00010f, -2.00000f),
+ Point3D(0.00000f, 0.00010f, -2.00000f)
}
};
::RunTest(polygons, expected);
}
-TEST(BSPTree, TwoPlaneIntersectRotate200) {
+TEST(BSPTree, TwoPlaneIntersectRotate200degrees) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-0.00000, 1.19540, 2.56350),
- Point3D(-0.00000, -2.56340, 1.19540),
- Point3D(0.00010, -1.19530, -2.56340),
- Point3D(0.00010, 2.56350, -1.19530)
+ Point3D(-0.00000f, 1.19540f, 2.56350f),
+ Point3D(-0.00000f, -2.56340f, 1.19540f),
+ Point3D(0.00010f, -1.19530f, -2.56340f),
+ Point3D(0.00010f, 2.56350f, -1.19530f)
},
Polygon3D {
- Point3D(2.00000, -0.68400, 1.87940),
- Point3D(2.00000, 0.68410, -1.87930),
- Point3D(-2.00000, 0.68410, -1.87930),
- Point3D(-2.00000, -0.68400, 1.87940)
+ Point3D(2.00000f, -0.68400f, 1.87940f),
+ Point3D(2.00000f, 0.68410f, -1.87930f),
+ Point3D(-2.00000f, 0.68410f, -1.87930f),
+ Point3D(-2.00000f, -0.68400f, 1.87940f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00010, 0.68410, -1.87930),
- Point3D(-2.00000, 0.68410, -1.87930),
- Point3D(-2.00000, -0.68400, 1.87940),
- Point3D(0.00000, -0.68400, 1.87940)
+ Point3D(0.00010f, 0.68410f, -1.87930f),
+ Point3D(-2.00000f, 0.68410f, -1.87930f),
+ Point3D(-2.00000f, -0.68400f, 1.87940f),
+ Point3D(0.00000f, -0.68400f, 1.87940f)
},
Polygon3D {
- Point3D(-0.00000, 1.19540, 2.56350),
- Point3D(-0.00000, -2.56340, 1.19540),
- Point3D(0.00010, -1.19530, -2.56340),
- Point3D(0.00010, 2.56350, -1.19530)
+ Point3D(-0.00000f, 1.19540f, 2.56350f),
+ Point3D(-0.00000f, -2.56340f, 1.19540f),
+ Point3D(0.00010f, -1.19530f, -2.56340f),
+ Point3D(0.00010f, 2.56350f, -1.19530f)
},
Polygon3D {
- Point3D(0.00000, -0.68400, 1.87940),
- Point3D(2.00000, -0.68400, 1.87940),
- Point3D(2.00000, 0.68410, -1.87930),
- Point3D(0.00010, 0.68410, -1.87930)
+ Point3D(0.00000f, -0.68400f, 1.87940f),
+ Point3D(2.00000f, -0.68400f, 1.87940f),
+ Point3D(2.00000f, 0.68410f, -1.87930f),
+ Point3D(0.00010f, 0.68410f, -1.87930f)
}
};
::RunTest(polygons, expected);
}
-TEST(BSPTree, TwoPlaneIntersectRotate220) {
+TEST(BSPTree, TwoPlaneIntersectRotate220degrees) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-0.00000, 0.73210, -2.73200),
- Point3D(-0.00000, 2.73210, 0.73210),
- Point3D(0.00010, -0.73200, 2.73210),
- Point3D(0.00010, -2.73200, -0.73200)
+ Point3D(-0.00000f, 0.73210f, -2.73200f),
+ Point3D(-0.00000f, 2.73210f, 0.73210f),
+ Point3D(0.00010f, -0.73200f, 2.73210f),
+ Point3D(0.00010f, -2.73200f, -0.73200f)
},
Polygon3D {
- Point3D(2.00000, 1.73210, -0.99990),
- Point3D(2.00000, -1.73200, 1.00000),
- Point3D(-2.00000, -1.73200, 1.00000),
- Point3D(-2.00000, 1.73210, -0.99990)
+ Point3D(2.00000f, 1.73210f, -0.99990f),
+ Point3D(2.00000f, -1.73200f, 1.00000f),
+ Point3D(-2.00000f, -1.73200f, 1.00000f),
+ Point3D(-2.00000f, 1.73210f, -0.99990f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00000, 1.73210, -0.99990),
- Point3D(2.00000, 1.73210, -0.99990),
- Point3D(2.00000, -1.73200, 1.00000),
- Point3D(0.00010, -1.73200, 1.00000)
+ Point3D(0.00000f, 1.73210f, -0.99990f),
+ Point3D(2.00000f, 1.73210f, -0.99990f),
+ Point3D(2.00000f, -1.73200f, 1.00000f),
+ Point3D(0.00010f, -1.73200f, 1.00000f)
},
Polygon3D {
- Point3D(-0.00000, 0.73210, -2.73200),
- Point3D(-0.00000, 2.73210, 0.73210),
- Point3D(0.00010, -0.73200, 2.73210),
- Point3D(0.00010, -2.73200, -0.73200)
+ Point3D(-0.00000f, 0.73210f, -2.73200f),
+ Point3D(-0.00000f, 2.73210f, 0.73210f),
+ Point3D(0.00010f, -0.73200f, 2.73210f),
+ Point3D(0.00010f, -2.73200f, -0.73200f)
},
Polygon3D {
- Point3D(0.00010, -1.73200, 1.00000),
- Point3D(-2.00000, -1.73200, 1.00000),
- Point3D(-2.00000, 1.73210, -0.99990),
- Point3D(0.00000, 1.73210, -0.99990)
+ Point3D(0.00010f, -1.73200f, 1.00000f),
+ Point3D(-2.00000f, -1.73200f, 1.00000f),
+ Point3D(-2.00000f, 1.73210f, -0.99990f),
+ Point3D(0.00000f, 1.73210f, -0.99990f)
}
};
::RunTest(polygons, expected);
}
-TEST(BSPTree, TwoPlaneIntersectRotate240) {
+TEST(BSPTree, TwoPlaneIntersectRotate240degrees) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-0.00000, -2.73200, 0.73210),
- Point3D(-0.00000, -0.73200, -2.73200),
- Point3D(0.00010, 2.73210, -0.73200),
- Point3D(0.00010, 0.73210, 2.73210)
+ Point3D(-0.00000f, -2.73200f, 0.73210f),
+ Point3D(-0.00000f, -0.73200f, -2.73200f),
+ Point3D(0.00010f, 2.73210f, -0.73200f),
+ Point3D(0.00010f, 0.73210f, 2.73210f)
},
Polygon3D {
- Point3D(2.00000, -1.73200, -1.00000),
- Point3D(2.00000, 1.73210, 1.00010),
- Point3D(-2.00000, 1.73210, 1.00010),
- Point3D(-2.00000, -1.73200, -1.00000)
+ Point3D(2.00000f, -1.73200f, -1.00000f),
+ Point3D(2.00000f, 1.73210f, 1.00010f),
+ Point3D(-2.00000f, 1.73210f, 1.00010f),
+ Point3D(-2.00000f, -1.73200f, -1.00000f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00000, -1.73200, -1.00000),
- Point3D(2.00000, -1.73200, -1.00000),
- Point3D(2.00000, 1.73210, 1.00010),
- Point3D(0.00010, 1.73210, 1.00010)
+ Point3D(0.00000f, -1.73200f, -1.00000f),
+ Point3D(2.00000f, -1.73200f, -1.00000f),
+ Point3D(2.00000f, 1.73210f, 1.00010f),
+ Point3D(0.00010f, 1.73210f, 1.00010f)
},
Polygon3D {
- Point3D(-0.00000, -2.73200, 0.73210),
- Point3D(-0.00000, -0.73200, -2.73200),
- Point3D(0.00010, 2.73210, -0.73200),
- Point3D(0.00010, 0.73210, 2.73210)
+ Point3D(-0.00000f, -2.73200f, 0.73210f),
+ Point3D(-0.00000f, -0.73200f, -2.73200f),
+ Point3D(0.00010f, 2.73210f, -0.73200f),
+ Point3D(0.00010f, 0.73210f, 2.73210f)
},
Polygon3D {
- Point3D(0.00010, 1.73210, 1.00010),
- Point3D(-2.00000, 1.73210, 1.00010),
- Point3D(-2.00000, -1.73200, -1.00000),
- Point3D(0.00000, -1.73200, -1.00000)
+ Point3D(0.00010f, 1.73210f, 1.00010f),
+ Point3D(-2.00000f, 1.73210f, 1.00010f),
+ Point3D(-2.00000f, -1.73200f, -1.00000f),
+ Point3D(0.00000f, -1.73200f, -1.00000f)
}
};
::RunTest(polygons, expected);
}
-TEST(BSPTree, TwoPlaneIntersectRotate260) {
+TEST(BSPTree, TwoPlaneIntersectRotate260degrees) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-0.00000, 1.19540, 2.56350),
- Point3D(-0.00000, -2.56340, 1.19540),
- Point3D(0.00010, -1.19530, -2.56340),
- Point3D(0.00010, 2.56350, -1.19530)
+ Point3D(-0.00000f, 1.19540f, 2.56350f),
+ Point3D(-0.00000f, -2.56340f, 1.19540f),
+ Point3D(0.00010f, -1.19530f, -2.56340f),
+ Point3D(0.00010f, 2.56350f, -1.19530f)
},
Polygon3D {
- Point3D(2.00000, -0.68400, 1.87940),
- Point3D(2.00000, 0.68410, -1.87930),
- Point3D(-2.00000, 0.68410, -1.87930),
- Point3D(-2.00000, -0.68400, 1.87940)
+ Point3D(2.00000f, -0.68400f, 1.87940f),
+ Point3D(2.00000f, 0.68410f, -1.87930f),
+ Point3D(-2.00000f, 0.68410f, -1.87930f),
+ Point3D(-2.00000f, -0.68400f, 1.87940f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00010, 0.68410, -1.87930),
- Point3D(-2.00000, 0.68410, -1.87930),
- Point3D(-2.00000, -0.68400, 1.87940),
- Point3D(0.00000, -0.68400, 1.87940)
+ Point3D(0.00010f, 0.68410f, -1.87930f),
+ Point3D(-2.00000f, 0.68410f, -1.87930f),
+ Point3D(-2.00000f, -0.68400f, 1.87940f),
+ Point3D(0.00000f, -0.68400f, 1.87940f)
},
Polygon3D {
- Point3D(-0.00000, 1.19540, 2.56350),
- Point3D(-0.00000, -2.56340, 1.19540),
- Point3D(0.00010, -1.19530, -2.56340),
- Point3D(0.00010, 2.56350, -1.19530)
+ Point3D(-0.00000f, 1.19540f, 2.56350f),
+ Point3D(-0.00000f, -2.56340f, 1.19540f),
+ Point3D(0.00010f, -1.19530f, -2.56340f),
+ Point3D(0.00010f, 2.56350f, -1.19530f)
},
Polygon3D {
- Point3D(0.00000, -0.68400, 1.87940),
- Point3D(2.00000, -0.68400, 1.87940),
- Point3D(2.00000, 0.68410, -1.87930),
- Point3D(0.00010, 0.68410, -1.87930)
+ Point3D(0.00000f, -0.68400f, 1.87940f),
+ Point3D(2.00000f, -0.68400f, 1.87940f),
+ Point3D(2.00000f, 0.68410f, -1.87930f),
+ Point3D(0.00010f, 0.68410f, -1.87930f)
}
};
::RunTest(polygons, expected);
}
-TEST(BSPTree, TwoPlaneIntersectRotate280) {
+TEST(BSPTree, TwoPlaneIntersectRotate280degrees) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-0.00000, 2.73210, -0.73200),
- Point3D(-0.00000, 0.73210, 2.73210),
- Point3D(0.00010, -2.73200, 0.73210),
- Point3D(0.00010, -0.73200, -2.73200)
+ Point3D(-0.00000f, 2.73210f, -0.73200f),
+ Point3D(-0.00000f, 0.73210f, 2.73210f),
+ Point3D(0.00010f, -2.73200f, 0.73210f),
+ Point3D(0.00010f, -0.73200f, -2.73200f)
},
Polygon3D {
- Point3D(2.00000, 1.73210, 1.00010),
- Point3D(2.00000, -1.73200, -1.00000),
- Point3D(-2.00000, -1.73200, -1.00000),
- Point3D(-2.00000, 1.73210, 1.00010)
+ Point3D(2.00000f, 1.73210f, 1.00010f),
+ Point3D(2.00000f, -1.73200f, -1.00000f),
+ Point3D(-2.00000f, -1.73200f, -1.00000f),
+ Point3D(-2.00000f, 1.73210f, 1.00010f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00010, -1.73200, -1.00000),
- Point3D(-2.00000, -1.73200, -1.00000),
- Point3D(-2.00000, 1.73210, 1.00010),
- Point3D(0.00000, 1.73210, 1.00010)
+ Point3D(0.00010f, -1.73200f, -1.00000f),
+ Point3D(-2.00000f, -1.73200f, -1.00000f),
+ Point3D(-2.00000f, 1.73210f, 1.00010f),
+ Point3D(0.00000f, 1.73210f, 1.00010f)
},
Polygon3D {
- Point3D(-0.00000, 2.73210, -0.73200),
- Point3D(-0.00000, 0.73210, 2.73210),
- Point3D(0.00010, -2.73200, 0.73210),
- Point3D(0.00010, -0.73200, -2.73200)
+ Point3D(-0.00000f, 2.73210f, -0.73200f),
+ Point3D(-0.00000f, 0.73210f, 2.73210f),
+ Point3D(0.00010f, -2.73200f, 0.73210f),
+ Point3D(0.00010f, -0.73200f, -2.73200f)
},
Polygon3D {
- Point3D(0.00000, 1.73210, 1.00010),
- Point3D(2.00000, 1.73210, 1.00010),
- Point3D(2.00000, -1.73200, -1.00000),
- Point3D(0.00010, -1.73200, -1.00000)
+ Point3D(0.00000f, 1.73210f, 1.00010f),
+ Point3D(2.00000f, 1.73210f, 1.00010f),
+ Point3D(2.00000f, -1.73200f, -1.00000f),
+ Point3D(0.00010f, -1.73200f, -1.00000f)
}
};
::RunTest(polygons, expected);
}
-TEST(BSPTree, TwoPlaneIntersectRotate300) {
+TEST(BSPTree, TwoPlaneIntersectRotate300degrees) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-0.00000, 0.73210, -2.73200),
- Point3D(-0.00000, 2.73210, 0.73210),
- Point3D(0.00010, -0.73200, 2.73210),
- Point3D(0.00010, -2.73200, -0.73200)
+ Point3D(-0.00000f, 0.73210f, -2.73200f),
+ Point3D(-0.00000f, 2.73210f, 0.73210f),
+ Point3D(0.00010f, -0.73200f, 2.73210f),
+ Point3D(0.00010f, -2.73200f, -0.73200f)
},
Polygon3D {
- Point3D(2.00000, 1.73210, -0.99990),
- Point3D(2.00000, -1.73200, 1.00000),
- Point3D(-2.00000, -1.73200, 1.00000),
- Point3D(-2.00000, 1.73210, -0.99990)
+ Point3D(2.00000f, 1.73210f, -0.99990f),
+ Point3D(2.00000f, -1.73200f, 1.00000f),
+ Point3D(-2.00000f, -1.73200f, 1.00000f),
+ Point3D(-2.00000f, 1.73210f, -0.99990f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00000, 1.73210, -0.99990),
- Point3D(2.00000, 1.73210, -0.99990),
- Point3D(2.00000, -1.73200, 1.00000),
- Point3D(0.00010, -1.73200, 1.00000)
+ Point3D(0.00000f, 1.73210f, -0.99990f),
+ Point3D(2.00000f, 1.73210f, -0.99990f),
+ Point3D(2.00000f, -1.73200f, 1.00000f),
+ Point3D(0.00010f, -1.73200f, 1.00000f)
},
Polygon3D {
- Point3D(-0.00000, 0.73210, -2.73200),
- Point3D(-0.00000, 2.73210, 0.73210),
- Point3D(0.00010, -0.73200, 2.73210),
- Point3D(0.00010, -2.73200, -0.73200)
+ Point3D(-0.00000f, 0.73210f, -2.73200f),
+ Point3D(-0.00000f, 2.73210f, 0.73210f),
+ Point3D(0.00010f, -0.73200f, 2.73210f),
+ Point3D(0.00010f, -2.73200f, -0.73200f)
},
Polygon3D {
- Point3D(0.00010, -1.73200, 1.00000),
- Point3D(-2.00000, -1.73200, 1.00000),
- Point3D(-2.00000, 1.73210, -0.99990),
- Point3D(0.00000, 1.73210, -0.99990)
+ Point3D(0.00010f, -1.73200f, 1.00000f),
+ Point3D(-2.00000f, -1.73200f, 1.00000f),
+ Point3D(-2.00000f, 1.73210f, -0.99990f),
+ Point3D(0.00000f, 1.73210f, -0.99990f)
}
};
::RunTest(polygons, expected);
}
-TEST(BSPTree, TwoPlaneIntersectRotate320) {
+TEST(BSPTree, TwoPlaneIntersectRotate320degrees) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-0.00000, -1.19530, -2.56340),
- Point3D(-0.00000, 2.56350, -1.19530),
- Point3D(0.00010, 1.19540, 2.56350),
- Point3D(0.00010, -2.56340, 1.19540)
+ Point3D(-0.00000f, -1.19530f, -2.56340f),
+ Point3D(-0.00000f, 2.56350f, -1.19530f),
+ Point3D(0.00010f, 1.19540f, 2.56350f),
+ Point3D(0.00010f, -2.56340f, 1.19540f)
},
Polygon3D {
- Point3D(2.00000, 0.68410, -1.87930),
- Point3D(2.00000, -0.68400, 1.87940),
- Point3D(-2.00000, -0.68400, 1.87940),
- Point3D(-2.00000, 0.68410, -1.87930)
+ Point3D(2.00000f, 0.68410f, -1.87930f),
+ Point3D(2.00000f, -0.68400f, 1.87940f),
+ Point3D(-2.00000f, -0.68400f, 1.87940f),
+ Point3D(-2.00000f, 0.68410f, -1.87930f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00000, 0.68410, -1.87930),
- Point3D(2.00000, 0.68410, -1.87930),
- Point3D(2.00000, -0.68400, 1.87940),
- Point3D(0.00010, -0.68400, 1.87940)
+ Point3D(0.00000f, 0.68410f, -1.87930f),
+ Point3D(2.00000f, 0.68410f, -1.87930f),
+ Point3D(2.00000f, -0.68400f, 1.87940f),
+ Point3D(0.00010f, -0.68400f, 1.87940f)
},
Polygon3D {
- Point3D(-0.00000, -1.19530, -2.56340),
- Point3D(-0.00000, 2.56350, -1.19530),
- Point3D(0.00010, 1.19540, 2.56350),
- Point3D(0.00010, -2.56340, 1.19540)
+ Point3D(-0.00000f, -1.19530f, -2.56340f),
+ Point3D(-0.00000f, 2.56350f, -1.19530f),
+ Point3D(0.00010f, 1.19540f, 2.56350f),
+ Point3D(0.00010f, -2.56340f, 1.19540f)
},
Polygon3D {
- Point3D(0.00010, -0.68400, 1.87940),
- Point3D(-2.00000, -0.68400, 1.87940),
- Point3D(-2.00000, 0.68410, -1.87930),
- Point3D(0.00000, 0.68410, -1.87930)
+ Point3D(0.00010f, -0.68400f, 1.87940f),
+ Point3D(-2.00000f, -0.68400f, 1.87940f),
+ Point3D(-2.00000f, 0.68410f, -1.87930f),
+ Point3D(0.00000f, 0.68410f, -1.87930f)
}
};
::RunTest(polygons, expected);
}
-TEST(BSPTree, TwoPlaneIntersectRotate340) {
+TEST(BSPTree, TwoPlaneIntersectRotate340degrees) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-0.00000, -2.00000, -2.00000),
- Point3D(-0.00000, 2.00000, -2.00000),
- Point3D(0.00010, 2.00000, 2.00000),
- Point3D(0.00010, -2.00000, 2.00000)
+ Point3D(-0.00000f, -2.00000f, -2.00000f),
+ Point3D(-0.00000f, 2.00000f, -2.00000f),
+ Point3D(0.00010f, 2.00000f, 2.00000f),
+ Point3D(0.00010f, -2.00000f, 2.00000f)
},
Polygon3D {
- Point3D(2.00000, 0.00010, -2.00000),
- Point3D(2.00000, -0.00000, 2.00000),
- Point3D(-2.00000, -0.00000, 2.00000),
- Point3D(-2.00000, 0.00010, -2.00000)
+ Point3D(2.00000f, 0.00010f, -2.00000f),
+ Point3D(2.00000f, -0.00000f, 2.00000f),
+ Point3D(-2.00000f, -0.00000f, 2.00000f),
+ Point3D(-2.00000f, 0.00010f, -2.00000f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00000, 0.00010, -2.00000),
- Point3D(2.00000, 0.00010, -2.00000),
- Point3D(2.00000, -0.00000, 2.00000),
- Point3D(0.00010, 0.00000, 2.00000)
+ Point3D(0.00000f, 0.00010f, -2.00000f),
+ Point3D(2.00000f, 0.00010f, -2.00000f),
+ Point3D(2.00000f, -0.00000f, 2.00000f),
+ Point3D(0.00010f, 0.00000f, 2.00000f)
},
Polygon3D {
- Point3D(-0.00000, -2.00000, -2.00000),
- Point3D(-0.00000, 2.00000, -2.00000),
- Point3D(0.00010, 2.00000, 2.00000),
- Point3D(0.00010, -2.00000, 2.00000)
+ Point3D(-0.00000f, -2.00000f, -2.00000f),
+ Point3D(-0.00000f, 2.00000f, -2.00000f),
+ Point3D(0.00010f, 2.00000f, 2.00000f),
+ Point3D(0.00010f, -2.00000f, 2.00000f)
},
Polygon3D {
- Point3D(0.00010, 0.00000, 2.00000),
- Point3D(-2.00000, -0.00000, 2.00000),
- Point3D(-2.00000, 0.00010, -2.00000),
- Point3D(0.00000, 0.00010, -2.00000)
+ Point3D(0.00010f, 0.00000f, 2.00000f),
+ Point3D(-2.00000f, -0.00000f, 2.00000f),
+ Point3D(-2.00000f, 0.00010f, -2.00000f),
+ Point3D(0.00000f, 0.00010f, -2.00000f)
}
};
::RunTest(polygons, expected);
}
-TEST(BSPTree, TwoPlaneIntersectRotate360) {
+TEST(BSPTree, TwoPlaneIntersectRotate360degrees) {
const std::deque<Polygon3D> polygons {
Polygon3D {
- Point3D(-0.00000, -2.00000, -2.00000),
- Point3D(-0.00000, 2.00000, -2.00000),
- Point3D(0.00010, 2.00000, 2.00000),
- Point3D(0.00010, -2.00000, 2.00000)
+ Point3D(-0.00000f, -2.00000f, -2.00000f),
+ Point3D(-0.00000f, 2.00000f, -2.00000f),
+ Point3D(0.00010f, 2.00000f, 2.00000f),
+ Point3D(0.00010f, -2.00000f, 2.00000f)
},
Polygon3D {
- Point3D(2.00000, 0.00010, -2.00000),
- Point3D(2.00000, -0.00000, 2.00000),
- Point3D(-2.00000, -0.00000, 2.00000),
- Point3D(-2.00000, 0.00010, -2.00000)
+ Point3D(2.00000f, 0.00010f, -2.00000f),
+ Point3D(2.00000f, -0.00000f, 2.00000f),
+ Point3D(-2.00000f, -0.00000f, 2.00000f),
+ Point3D(-2.00000f, 0.00010f, -2.00000f)
}
};
const std::deque<Polygon3D> expected {
Polygon3D {
- Point3D(0.00000, 0.00010, -2.00000),
- Point3D(2.00000, 0.00010, -2.00000),
- Point3D(2.00000, -0.00000, 2.00000),
- Point3D(0.00010, 0.00000, 2.00000)
+ Point3D(0.00000f, 0.00010f, -2.00000f),
+ Point3D(2.00000f, 0.00010f, -2.00000f),
+ Point3D(2.00000f, -0.00000f, 2.00000f),
+ Point3D(0.00010f, 0.00000f, 2.00000f)
},
Polygon3D {
- Point3D(-0.00000, -2.00000, -2.00000),
- Point3D(-0.00000, 2.00000, -2.00000),
- Point3D(0.00010, 2.00000, 2.00000),
- Point3D(0.00010, -2.00000, 2.00000)
+ Point3D(-0.00000f, -2.00000f, -2.00000f),
+ Point3D(-0.00000f, 2.00000f, -2.00000f),
+ Point3D(0.00010f, 2.00000f, 2.00000f),
+ Point3D(0.00010f, -2.00000f, 2.00000f)
},
Polygon3D {
- Point3D(0.00010, 0.00000, 2.00000),
- Point3D(-2.00000, -0.00000, 2.00000),
- Point3D(-2.00000, 0.00010, -2.00000),
- Point3D(0.00000, 0.00010, -2.00000)
+ Point3D(0.00010f, 0.00000f, 2.00000f),
+ Point3D(-2.00000f, -0.00000f, 2.00000f),
+ Point3D(-2.00000f, 0.00010f, -2.00000f),
+ Point3D(0.00000f, 0.00010f, -2.00000f)
}
};
::RunTest(polygons, expected);
}
\ No newline at end of file