3.2-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
Public Types | Static Public Member Functions | List of all members
Dumux::GeometryIntersection< Geometry1, Geometry2, Policy, 3, 1, 1 > Class Template Reference

A class for segment–segment intersection in 3d space. More...

#include <dumux/common/geometry/geometryintersection.hh>

Description

template<class Geometry1, class Geometry2, class Policy>
class Dumux::GeometryIntersection< Geometry1, Geometry2, Policy, 3, 1, 1 >

A class for segment–segment intersection in 3d space.

Public Types

using ctype = typename Policy::ctype
 
using Point = typename Policy::Point
 
using Intersection = typename Policy::Intersection
 

Static Public Member Functions

template<class P = Policy, std::enable_if_t< P::dimIntersection==0, int > = 0>
static bool intersection (const Geometry1 &geo1, const Geometry2 &geo2, Intersection &intersection)
 Colliding two segments. More...
 
template<class P = Policy, std::enable_if_t< P::dimIntersection==1, int > = 0>
static bool intersection (const Geometry1 &geo1, const Geometry2 &geo2, Intersection &intersection)
 Colliding two segments in 3D. More...
 

Member Typedef Documentation

◆ ctype

template<class Geometry1 , class Geometry2 , class Policy >
using Dumux::GeometryIntersection< Geometry1, Geometry2, Policy, 3, 1, 1 >::ctype = typename Policy::ctype

◆ Intersection

template<class Geometry1 , class Geometry2 , class Policy >
using Dumux::GeometryIntersection< Geometry1, Geometry2, Policy, 3, 1, 1 >::Intersection = typename Policy::Intersection

◆ Point

template<class Geometry1 , class Geometry2 , class Policy >
using Dumux::GeometryIntersection< Geometry1, Geometry2, Policy, 3, 1, 1 >::Point = typename Policy::Point

Member Function Documentation

◆ intersection() [1/2]

template<class Geometry1 , class Geometry2 , class Policy >
template<class P = Policy, std::enable_if_t< P::dimIntersection==0, int > = 0>
static bool Dumux::GeometryIntersection< Geometry1, Geometry2, Policy, 3, 1, 1 >::intersection ( const Geometry1 &  geo1,
const Geometry2 &  geo2,
Intersection intersection 
)
inlinestatic

Colliding two segments.

Parameters
geo1/geo2The geometries to intersect
intersectionContainer to store corners of intersection segment
Note
this overload is used when segment-like intersections are seeked
Todo:
implement this query

◆ intersection() [2/2]

template<class Geometry1 , class Geometry2 , class Policy >
template<class P = Policy, std::enable_if_t< P::dimIntersection==1, int > = 0>
static bool Dumux::GeometryIntersection< Geometry1, Geometry2, Policy, 3, 1, 1 >::intersection ( const Geometry1 &  geo1,
const Geometry2 &  geo2,
Intersection intersection 
)
inlinestatic

Colliding two segments in 3D.

Parameters
geo1/geo2The geometries to intersect
intersectionIf the geometries collide, is holds the corner points of the intersection object in global coordinates.
Note
This overload is used when segment-like intersections are seeked

The documentation for this class was generated from the following file: