Intersection computation method for two elements of arbitrary dimension.
More...
#include <dune/grid-glue/merging/computeintersection.hh>
|
| static bool | computeIntersection (const std::vector< V > &X, const std::vector< V > &Y, std::vector< std::vector< int > > &SX, std::vector< std::vector< int > > &SY, std::vector< V > &P) |
| | Compute the intersection of two elements X and Y Compute the intersection of two elements X and Y, where X is of dimension dim1 and Y is of dimension dim2 and return a vector P containing the corner points of the intersection polyhedron.
|
| |
| template<int isDim, int dW> |
| static void | orderPoints (const V ¢roid, const std::vector< std::vector< int > > &SX, const std::vector< std::vector< int > > &SY, const std::vector< V > &P, std::vector< std::vector< int > > &H) |
| | Order Points in the point list P face-wise such that a subsimplex subdivision can be constructed.
|
| |
template<class CM>
class Dune::GridGlue::IntersectionComputation< CM >
Intersection computation method for two elements of arbitrary dimension.
- Template Parameters
-
| dimWorld | The world dimension |
| T | the field type |
◆ computeIntersection()
template<class CM >
| bool Dune::GridGlue::IntersectionComputation< CM >::computeIntersection |
( |
const std::vector< V > & |
X, |
|
|
const std::vector< V > & |
Y, |
|
|
std::vector< std::vector< int > > & |
SX, |
|
|
std::vector< std::vector< int > > & |
SY, |
|
|
std::vector< V > & |
P |
|
) |
| |
|
static |
Compute the intersection of two elements X and Y Compute the intersection of two elements X and Y, where X is of dimension dim1 and Y is of dimension dim2 and return a vector P containing the corner points of the intersection polyhedron.
- Parameters
-
| X | ordered vector of corners defining the element with dimension dim1 |
| Y | ordered vector of corners defining the element with dimension dim2 |
| SX | indices of points in P on the index i face of X, where i denotes the vector index in SX |
| SY | indices of points in P on the index i face of Y, where i denotes the vector index in SY |
| P | the intersection points |
- Returns
- true if enough intersection points were found to define at least one intersection element
◆ orderPoints()
template<class CM >
template<int isDim, int dW>
| static void Dune::GridGlue::IntersectionComputation< CM >::orderPoints |
( |
const V & |
centroid, |
|
|
const std::vector< std::vector< int > > & |
SX, |
|
|
const std::vector< std::vector< int > > & |
SY, |
|
|
const std::vector< V > & |
P, |
|
|
std::vector< std::vector< int > > & |
H |
|
) |
| |
|
inlinestatic |
Order Points in the point list P face-wise such that a subsimplex subdivision can be constructed.
- Template Parameters
-
| isDim | the intersection geometry dimension |
- Parameters
-
| centroid | the center of all points |
| SX | indices of points in P on the index i face of X, where i denotes the vector index in SX |
| SY | indices of points in P on the index i face of Y, where i denotes the vector index in SY |
| P | the point list (remains unchanged) |
| H | ordered list of P indices |
The documentation for this class was generated from the following files: