64#ifndef searchableRotatedBox_H
65#define searchableRotatedBox_H
80class searchableRotatedBox
82 public searchableSurface
90 coordSystem::cartesian transform_;
99 searchableRotatedBox(
const searchableRotatedBox&) =
delete;
102 void operator=(
const searchableRotatedBox&) =
delete;
151 virtual label
size()
const
187 const scalar nearestDistSqr
Minimal example by using system/controlDict.functions:
Defines the attributes of an object for which implicit objectRegistry management is supported,...
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
This class describes the interaction of (usually) a face and a point. It carries the info of a succes...
A bounding box defined in terms of min/max extrema points.
A Cartesian coordinate system.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Searching on bounding box.
Searching on a rotated box.
virtual label size() const
Range of local indices that can be returned.
bool writeData(Ostream &) const
Pure virtual writeData function.
virtual void findLineAll(const pointField &start, const pointField &end, List< List< pointIndexHit > > &) const
Get all intersections in order from start to end.
virtual bool overlaps(const boundBox &bb) const
Does any part of the surface overlap the supplied bound box?
pointIndexHit findNearest(const point &sample, const scalar nearestDistSqr) const
Calculate nearest point on surface.
virtual void boundingSpheres(pointField ¢res, scalarField &radiusSqr) const
Get bounding spheres (centre and radius squared), one per element.
virtual void getVolumeType(const pointField &points, List< volumeType > &volType) const
Determine type (inside/outside/mixed) for point. unknown if.
virtual ~searchableRotatedBox()=default
Destructor.
virtual volumeType outsideVolumeType() const
What is type of points outside bounds.
TypeName("searchableRotatedBox")
Runtime type information.
virtual void getNormal(const List< pointIndexHit > &, vectorField &normal) const
From a set of points and indices get the normal.
pointIndexHit findLine(const point &start, const point &end) const
Find nearest intersection of line between start and end.
virtual void getRegion(const List< pointIndexHit > &, labelList ®ion) const
From a set of points and indices get the region.
virtual const wordList & regions() const
Names of regions.
virtual tmp< pointField > coordinates() const
Get representative set of element coordinates.
virtual bool hasVolumeType() const
Whether supports volume type below.
pointIndexHit findLineAny(const point &start, const point &end) const
Find any intersection of line between start and end.
virtual tmp< pointField > points() const
Get the points that define the surface.
Base class of (analytical or triangulated) surface. Encapsulates all the search routines....
virtual void findNearest(const pointField &sample, const scalarField &nearestDistSqr, List< pointIndexHit > &) const =0
A class for managing temporary objects.
Standard boundBox with extra functionality for use in octree.
An enumeration wrapper for classification of a location as being inside/outside of a volume.
@ OUTSIDE
A location outside the volume.
#define NotImplemented
Issue a FatalErrorIn for a function not currently implemented.
IOobject io("surfaceFilmProperties", mesh.time().constant(), mesh, IOobject::READ_IF_PRESENT, IOobject::NO_WRITE, false)
vectorField pointField
pointField is a vectorField.
bool ln(const fileName &src, const fileName &dst)
Create a softlink. dst should not exist. Returns true if successful.
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.