Geometric class that creates a 2D plane and can return the intersection point between a line and the plane. More...
Classes  
class  ray 
A direction and a reference point. More...  
Public Types  
enum  side { NORMAL, FLIP } 
Side of the plane. More...  
Public Member Functions  
plane (const vector &normalVector)  
Construct from normal vector through the origin. More...  
plane (const point &basePoint, const vector &normalVector)  
Construct from normal vector and point in plane. More...  
plane (const point &point1, const point &point2, const point &point3)  
Construct from three points in plane. More...  
plane (const scalarList &C)  
Construct from coefficients for the. More...  
plane (const dictionary &planeDict)  
Construct from dictionary. More...  
plane (Istream &is)  
Construct from Istream. Assumes the base + normal notation. More...  
const vector &  normal () const 
Return plane normal. More...  
const point &  refPoint () const 
Return or return plane base point. More...  
FixedList< scalar, 4 >  planeCoeffs () const 
Return coefficients for the. More...  
point  nearestPoint (const point &p) const 
Return nearest point in the plane for the given point. More...  
scalar  distance (const point &p) const 
Return distance from the given point to the plane. More...  
scalar  normalIntersect (const point &pnt0, const vector &dir) const 
Return cut coefficient for plane and line defined by. More...  
scalar  normalIntersect (const ray &r) const 
Return cut coefficient for plane and ray. More...  
template<class Point , class PointRef >  
scalar  lineIntersect (const line< Point, PointRef > &l) const 
Return the cutting point between the plane and. More...  
ray  planeIntersect (const plane &) const 
Return the cutting line between this plane and another. More...  
point  planePlaneIntersect (const plane &, const plane &) const 
Return the cutting point between this plane and two other planes. More...  
side  sideOfPlane (const point &p) const 
Return the side of the plane that the point is on. More...  
point  mirror (const point &p) const 
Mirror the supplied point in the plane. Return the mirrored point. More...  
void  writeDict (Ostream &) const 
Write to dictionary. More...  
Friends  
bool  operator== (const plane &, const plane &) 
bool  operator!= (const plane &, const plane &) 
Ostream &  operator<< (Ostream &, const plane &) 
Write plane properties. More...  
Geometric class that creates a 2D plane and can return the intersection point between a line and the plane.
Construct from normal vector through the origin.
Definition at line 112 of file plane.C.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and Foam::mag().
Referenced by plane::ray::dir(), and plane::plane().
Construct from normal vector and point in plane.
Definition at line 132 of file plane.C.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and Foam::mag().
plane  (  const scalarList &  C  ) 
Construct from coefficients for the.
plane equation: ax + by + cz + d = 0
Definition at line 152 of file plane.C.
References plane::plane().
plane  (  const dictionary &  planeDict  ) 
Construct from dictionary.
Definition at line 169 of file plane.C.
References Foam::abort(), C, Foam::FatalIOError, FatalIOErrorInFunction, dictionary::lookup(), Foam::mag(), Foam::nl, Foam::readScalar(), and dictionary::subDict().
Construct from Istream. Assumes the base + normal notation.
Definition at line 218 of file plane.C.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and Foam::mag().
const Foam::vector & normal  (  )  const 
Return plane normal.
Definition at line 240 of file plane.C.
Referenced by geomCellLooper::cut(), plane::ray::dir(), plane::mirror(), NamedEnum< Enum, nEnum >::names(), tetrahedron< Point, PointRef >::storeOp::operator()(), plane::planeIntersect(), and cuttingPlane::reCut().
const Foam::point & refPoint  (  )  const 
Return or return plane base point.
Definition at line 246 of file plane.C.
Referenced by NamedEnum< Enum, nEnum >::names(), tetrahedron< Point, PointRef >::storeOp::operator()(), plane::planeIntersect(), cuttingPlane::reCut(), and searchablePlane::size().
Foam::FixedList< Foam::scalar, 4 > planeCoeffs  (  )  const 
Return coefficients for the.
plane equation: ax + by + cz + d = 0
Definition at line 252 of file plane.C.
References C, Foam::mag(), Vector< Cmpt >::x(), Vector< Cmpt >::y(), and Vector< Cmpt >::z().
Referenced by plane::ray::dir(), and plane::planePlaneIntersect().
Foam::point nearestPoint  (  const point &  p  )  const 
Return nearest point in the plane for the given point.
Definition at line 299 of file plane.C.
Referenced by plane::ray::dir(), and plane::mirror().
Foam::scalar distance  (  const point &  p  )  const 
Return distance from the given point to the plane.
Definition at line 305 of file plane.C.
References Foam::mag(), and plane::normalIntersect().
Referenced by geomCellLooper::cut(), plane::ray::dir(), and plane::mirror().
Return cut coefficient for plane and line defined by.
origin and direction
Definition at line 312 of file plane.C.
References Foam::stabilise().
Referenced by plane::ray::dir(), plane::distance(), plane::lineIntersect(), and plane::normalIntersect().

inline 
Return cut coefficient for plane and ray.
Definition at line 172 of file plane.H.
References plane::ray::dir(), plane::normalIntersect(), and plane::ray::refPoint().

inline 
Return the cutting point between the plane and.
a line passing through the supplied points
Definition at line 180 of file plane.H.
References plane::mirror(), plane::normalIntersect(), plane::operator!=, plane::operator<<, plane::operator==, plane::planeIntersect(), plane::planePlaneIntersect(), plane::sideOfPlane(), line< Point, PointRef >::start(), line< Point, PointRef >::vec(), and plane::writeDict().
Referenced by slidingInterface::modifyMotionPoints().
Foam::plane::ray planeIntersect  (  const plane &  plane2  )  const 
Return the cutting line between this plane and another.
Returned as direction vector and point line goes through.
Definition at line 323 of file plane.C.
References Foam::mag(), plane::normal(), plane::planePlaneIntersect(), plane::refPoint(), Vector< Cmpt >::x(), Vector< Cmpt >::y(), and Vector< Cmpt >::z().
Referenced by plane::lineIntersect(), and listPlusEqOp< T >::operator()().
Foam::point planePlaneIntersect  (  const plane &  plane2, 
const plane &  plane3  
)  const 
Return the cutting point between this plane and two other planes.
Definition at line 391 of file plane.C.
References Foam::constant::physicoChemical::b, Foam::inv(), and plane::planeCoeffs().
Referenced by plane::lineIntersect(), listPlusEqOp< T >::operator()(), and plane::planeIntersect().
Foam::plane::side sideOfPlane  (  const point &  p  )  const 
Return the side of the plane that the point is on.
If the point is on the plane, then returns NORMAL.
Definition at line 413 of file plane.C.
References plane::FLIP, and plane::NORMAL.
Referenced by plane::lineIntersect().
Foam::point mirror  (  const point &  p  )  const 
Mirror the supplied point in the plane. Return the mirrored point.
Definition at line 421 of file plane.C.
References plane::distance(), plane::nearestPoint(), and plane::normal().
Referenced by plane::lineIntersect().
void writeDict  (  Ostream &  os  )  const 
Write to dictionary.
Definition at line 436 of file plane.C.
References token::BEGIN_BLOCK, Foam::decrIndent(), token::END_BLOCK, token::END_STATEMENT, Foam::endl(), Foam::incrIndent(), Foam::indent(), Foam::nl, and Ostream::writeKeyword().
Referenced by plane::lineIntersect().
Referenced by plane::lineIntersect().
Referenced by plane::lineIntersect().
Write plane properties.
Referenced by plane::lineIntersect().