42 #ifndef searchableSurfaceWithGaps_H 43 #define searchableSurfaceWithGaps_H 87 static label countMisses
93 static label countMisses
111 TypeName(
"searchableSurfaceWithGaps");
278 subGeom_[0].setField(values);
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
searchableSurface using multiple slightly shifted underlying surfaces to make sure pierces don't go t...
bool writeData(Ostream &os) const
Pure virtual writaData function.
virtual void findLineAll(const pointField &start, const pointField &end, List< List< pointIndexHit >> &) const
Get all intersections in order from start to end.
virtual tmp< pointField > coordinates() const
Get representative set of element coordinates.
virtual const wordList & regions() const =0
Names of regions.
virtual tmp< pointField > points() const
Get the points that define the surface.
virtual tmp< pointField > coordinates() const =0
Get representative set of element coordinates.
A list of keyword definitions, which are a keyword followed by any number of values (e...
virtual const wordList & regions() const
Names of regions.
virtual void getField(const List< pointIndexHit > &info, labelList &values) const
WIP. From a set of hits (points and.
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
A bounding box defined in terms of the points at its extremities.
Base class of (analytical or triangulated) surface. Encapsulates all the search routines. WIP.
virtual void setField(const labelList &values)
Set bounds of surface. Bounds currently set as list of.
TypeName("searchableSurfaceWithGaps")
Runtime type information.
virtual void findNearest(const pointField &sample, const scalarField &nearestDistSqr, List< pointIndexHit > &info) const
Find nearest on original surface. Note:does not use perturbation.
virtual void boundingSpheres(pointField ¢res, scalarField &radiusSqr) const
Get bounding spheres (centre and radius squared), one per element.
scalarField samples(nIntervals, 0)
An ordered pair of two objects of type <T> with first() and second() elements.
virtual void findNearest(const pointField &sample, const scalarField &nearestDistSqr, List< pointIndexHit > &) const =0
virtual bool overlaps(const boundBox &bb) const =0
Does any part of the surface overlap the supplied bound box?
virtual label size() const
Range of local indices that can be returned.
virtual bool overlaps(const boundBox &bb) const
Does any part of the surface overlap the supplied bound box?
virtual void getNormal(const List< pointIndexHit > &info, vectorField &normal) const
From a set of points and indices get the normal.
const searchableSurface & surface() const
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
An Ostream is an abstract base class for all output systems (streams, files, token lists...
virtual bool hasVolumeType() const
Whether supports volume type below.
virtual tmp< pointField > points() const =0
Get the points that define the surface.
virtual ~searchableSurfaceWithGaps()
Destructor.
virtual void getRegion(const List< pointIndexHit > &info, labelList ®ion) const
From a set of points and indices get the region.
virtual void getField(const List< pointIndexHit > &, labelList &values) const
WIP. From a set of hits (points and.
virtual void getVolumeType(const pointField &, List< volumeType > &) const =0
Determine type (inside/outside) for point. unknown if.
virtual void getRegion(const List< pointIndexHit > &, labelList ®ion) const =0
From a set of points and indices get the region.
virtual void findLineAny(const pointField &start, const pointField &end, List< pointIndexHit > &) const
Return any intersection on segment from start to end.
virtual label size() const =0
Range of local indices that can be returned.
A class for managing temporary objects.
virtual bool writeData(Ostream &) const =0
Pure virtual writaData function.
virtual void getVolumeType(const pointField &samples, List< volumeType > &info) const
Determine type (inside/outside/mixed) for point. unknown if.
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...
virtual void getNormal(const List< pointIndexHit > &, vectorField &normal) const =0
From a set of points and indices get the normal.
virtual void findLine(const pointField &start, const pointField &end, List< pointIndexHit > &) const
Find first intersection on segment from start to end.
virtual bool hasVolumeType() const =0
Whether supports volume type below.
virtual void boundingSpheres(pointField ¢res, scalarField &radiusSqr) const =0
Get bounding spheres (centre and radius squared), one per element.