feat: 3D collision detection is implemented
Collision detection in 3D is implemented and a few improvements are done.
There is a function IsLineSegmentIntersectingBoundingBoxBoundaries
which checks for intersection between 2d boundinng box and line segment in the code. This function is not suitable for the use case when one of the boxes lays inside another and line segments are not intersecting, because the function decomposes bounding box into line segments and then compares intersection between lines.
That's why boost library was used to find intersecting geometries.
Main changes are done on CollisionDetector
class, while additional test are added too(tests constitute majority of the added lines).
Moreover, extra constructor of GtGenEnvironment
class is removed.
The link to CI: https://ci.eclipse.org/openpass/job/GtGenCore/view/change-requests/job/MR-204/