Geometric class that creates a 3D plane and can return the intersection point between a line and the plane. More...
Classes | |
class | ray |
Public Types | |
enum | side { FRONT = 1, BACK = -1, NORMAL = 1, FLIP = -1 } |
Public Member Functions | |
plane () | |
plane (const vector &normalVector) | |
plane (const point &originPoint, const vector &normalVector, const bool doNormalise=true) | |
plane (const point &point1, const point &point2, const point &point3) | |
plane (const scalarList &coeffs) | |
plane (const FixedList< scalar, 4 > &coeffs) | |
plane (const dictionary &dict) | |
plane (Istream &is) | |
const vector & | normal () const |
const point & | origin () const |
point & | origin () |
const point & | refPoint () const |
void | flip () |
FixedList< scalar, 4 > | planeCoeffs () const |
point | nearestPoint (const point &p) const |
scalar | distance (const point &p) const |
scalar | signedDistance (const point &p) const |
scalar | normalIntersect (const point &pnt0, const vector &dir) const |
scalar | normalIntersect (const ray &r) const |
template<class Point , class PointRef > | |
scalar | lineIntersect (const line< Point, PointRef > &l) const |
ray | planeIntersect (const plane &plane2) const |
point | planePlaneIntersect (const plane &plane2, const plane &plane3) const |
point | somePointInPlane (const scalar dist=1e-3) const |
side | sideOfPlane (const point &p) const |
int | sign (const point &p, const scalar tol=SMALL) const |
point | mirror (const point &p) const |
void | writeDict (Ostream &os) const |
Geometric class that creates a 3D plane and can return the intersection point between a line and the plane.
Construction from a dictionary is driven by the planeType
For planeType
as pointAndNormal
:
pointAndNormalDict { point <point>; // or basePoint normal <vector>; // or normalVector }
For planeType
as embeddedPoints
:
embeddedPointsDict { point1 <point>; point2 <point>; point3 <point>; }
For planeType
with planeEquation
coefficients :
planeEquationDict { a <scalar>; b <scalar>; c <scalar>; d <scalar>; }
enum side |
Definition at line 114 of file plane.C.
References FUNCTION_NAME.
Definition at line 124 of file plane.C.
References FUNCTION_NAME.
Definition at line 163 of file plane.C.
References Foam::constant::physicoChemical::b, Foam::constant::universal::c, and FUNCTION_NAME.
|
explicit |
Definition at line 137 of file plane.C.
References FUNCTION_NAME.
Definition at line 150 of file plane.C.
References FUNCTION_NAME.
|
explicit |
Definition at line 169 of file plane.C.
References Foam::abort(), dict, Foam::FatalIOError, FatalIOErrorInFunction, dictionary::get(), dictionary::getCompat(), and Foam::nl.
Definition at line 221 of file plane.C.
References FUNCTION_NAME.
|
inline |
Definition at line 32 of file planeI.H.
Referenced by geomCellLooper::cut(), Foam::operator<<(), Foam::operator==(), plane::planeIntersect(), sampledPlane::print(), and sampledPlane::sampledPlane().
|
inline |
Definition at line 38 of file planeI.H.
Referenced by searchablePlane::coordinates(), searchableDisk::coordinates(), Foam::operator<(), Foam::operator<<(), Foam::operator==(), plane::planeIntersect(), sampledPlane::print(), and sampledPlane::sampledPlane().
|
inline |
|
inline |
Foam::FixedList< Foam::scalar, 4 > planeCoeffs | ( | ) | const |
Definition at line 232 of file plane.C.
References Foam::mag().
Referenced by plane::planePlaneIntersect().
|
inline |
|
inline |
Definition at line 68 of file planeI.H.
References Foam::mag(), and p.
Referenced by geomCellLooper::cut().
|
inline |
Definition at line 283 of file plane.C.
References Foam::stabilise().
Referenced by plane::lineIntersect(), and plane::normalIntersect().
|
inline |
Definition at line 245 of file plane.H.
References plane::ray::dir(), plane::normalIntersect(), and plane::ray::refPoint().
Definition at line 253 of file plane.H.
References plane::normalIntersect(), line::start(), and line::vec().
Referenced by slidingInterface::modifyMotionPoints(), cuttingPlane::performCut(), and surfaceFeatures::subsetPlane().
Foam::plane::ray planeIntersect | ( | const plane & | plane2 | ) | const |
Definition at line 294 of file plane.C.
References Foam::mag(), plane::normal(), plane::origin(), Vector< Cmpt >::x(), Vector< Cmpt >::y(), and Vector< Cmpt >::z().
Referenced by searchableSurfacesQueries::findNearest().
Foam::point planePlaneIntersect | ( | const plane & | plane2, |
const plane & | plane3 | ||
) | const |
Definition at line 363 of file plane.C.
References Foam::constant::physicoChemical::b, Foam::inv(), and plane::planeCoeffs().
Foam::point somePointInPlane | ( | const scalar | dist = 1e-3 | ) | const |
Definition at line 385 of file plane.C.
References Foam::mag(), p, and VectorSpace< Vector< scalar >, scalar, 3 >::uniform().
|
inline |
Definition at line 80 of file planeI.H.
References p.
Referenced by boundBox::intersects().
|
inline |
Foam::point mirror | ( | const point & | p | ) | const |
Definition at line 413 of file plane.C.
References Foam::distance(), and p.
void writeDict | ( | Ostream & | os | ) | const |
Definition at line 428 of file plane.C.
References Ostream::beginBlock(), Ostream::endBlock(), os(), and Ostream::writeEntry().
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.