Go to the documentation of this file.
54 #ifndef searchableBox_H
55 #define searchableBox_H
71 public searchableSurface,
82 void projectOntoCoordPlane
97 const scalar nearestDistSqr
148 virtual label
size()
const
184 const scalar nearestDistSqr
195 const scalar nearestDistSqr
230 virtual void findNearest
virtual label size() const
Range of local indices that can be returned.
Defines the attributes of an object for which implicit objectRegistry management is supported,...
pointIndexHit findLine(const point &start, const point &end) const
Find nearest intersection of line between start and end.
A class for managing temporary objects.
bool writeData(Ostream &) const
Pure virtual writeData function.
pointIndexHit findLineAny(const point &start, const point &end) const
Find any intersection of line between start and end.
Standard boundBox with extra functionality for use in octree.
InfoProxy< IOobject > info() const
Return info proxy.
List< word > wordList
A List of words.
bool overlaps(const boundBox &bb) const
Overlaps/touches boundingBox?
#define NotImplemented
Issue a FatalErrorIn for a function not currently implemented.
virtual void getRegion(const List< pointIndexHit > &, labelList ®ion) const
From a set of points and indices get the region.
This class describes the interaction of (usually) a face and a point. It carries the info of a succes...
pointIndexHit findNearestOnEdge(const point &sample, const scalar nearestDistSqr) const
Calculate nearest point on edge.
An enumeration wrapper for classification of a location as being inside/outside of a volume.
Base class of (analytical or triangulated) surface. Encapsulates all the search routines....
virtual tmp< pointField > coordinates() const
Get representative set of element coordinates.
virtual tmp< pointField > points() const
Get the points that define the surface.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
constexpr auto end(C &c) -> decltype(c.end())
Return iterator to the end of the container c.
virtual void findNearest(const pointField &sample, const scalarField &nearestDistSqr, List< pointIndexHit > &) const =0
virtual void getVolumeType(const pointField &points, List< volumeType > &volType) const
Determine type (inside/outside) for points.
virtual bool overlaps(const boundBox &bb) const
Does any part of the surface overlap the supplied bound box?
PointIndexHit< point > pointIndexHit
A PointIndexHit for 3D points.
virtual volumeType outsideVolumeType() const
What is type of points outside bounds.
virtual const wordList & regions() const
Names of regions.
virtual ~searchableBox()=default
Destructor.
virtual void findLineAll(const pointField &start, const pointField &end, List< List< pointIndexHit >> &) const
Get all intersections in order from start to end.
TypeName("searchableBox")
Runtime type information.
virtual bool hasVolumeType() const
Whether surface supports volume type (below)
A bounding box defined in terms of min/max extrema points.
bool ln(const fileName &src, const fileName &dst)
Create a softlink. dst should not exist. Returns true if successful.
Searching on bounding box.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
vector point
Point is a vector.
virtual void getNormal(const List< pointIndexHit > &, vectorField &normal) const
From a set of points and indices get the normal.
virtual void boundingSpheres(pointField ¢res, scalarField &radiusSqr) const
Get bounding spheres (centre and radius squared), one per element.
A location outside the volume.
Minimal example by using system/controlDict.functions: