A class for polyhedron–polyhedron intersection in 3d space.
#include <dumux/geometry/geometryintersection.hh>
|
using | ctype = typename Policy::ctype |
|
using | Point = typename Policy::Point |
|
using | Intersection = typename Policy::Intersection |
|
|
template<class P = Policy, std::enable_if_t< P::dimIntersection==3, int > = 0> |
static bool | intersection (const Geometry1 &geo1, const Geometry2 &geo2, Intersection &intersection) |
| Colliding two convex polyhedra. More...
|
|
template<class P = Policy, std::enable_if_t< P::dimIntersection !=3, int > = 0> |
static bool | intersection (const Geometry1 &geo1, const Geometry2 &geo2, Intersection &intersection) |
| Colliding segment and convex polyhedron. More...
|
|
◆ ctype
template<class Geometry1 , class Geometry2 , class Policy >
◆ Intersection
template<class Geometry1 , class Geometry2 , class Policy >
◆ Point
template<class Geometry1 , class Geometry2 , class Policy >
◆ intersection() [1/2]
template<class Geometry1 , class Geometry2 , class Policy >
template<class P = Policy, std::enable_if_t< P::dimIntersection==3, int > = 0>
- Note
- First we find the vertex candidates for the intersection region as follows: Add vertices that are inside the other geometry for both geometries Add all intersection points of edges (codim 2) with the other tetrahedron's faces triangle Remove duplicate points from the list Return a triangulation of the polyhedron formed by the convex hull of the point cloud
- Parameters
-
geo1/geo2 | The geometries to intersect |
intersection | Container to store the corner points of the polygon (as convex hull) |
- Note
- This overload is used when polyhedron-like intersections are seeked
◆ intersection() [2/2]
template<class Geometry1 , class Geometry2 , class Policy >
template<class P = Policy, std::enable_if_t< P::dimIntersection !=3, int > = 0>
- Parameters
-
geo1/geo2 | The geometries to intersect |
intersection | Container to store the intersection result |
The documentation for this class was generated from the following file: