Loading...
Searching...
No Matches
ImplicitSurfaceSet.hpp
Go to the documentation of this file.
Abstract base class for N-D implicit surface.
Definition ImplicitSurface.hpp:21
Front-end to create ImplicitSurfaceSet objects step by step.
Definition ImplicitSurfaceSet.hpp:141
Builder & WithSurfaces(const ConstArrayView1< std::shared_ptr< ImplicitSurface< N > > > &surfaces)
Returns builder with surfaces.
Builder & WithExplicitSurfaces(const ConstArrayView1< std::shared_ptr< Surface< N > > > &surfaces)
Returns builder with explicit surfaces.
std::shared_ptr< ImplicitSurfaceSet< N > > MakeShared() const
Builds shared pointer of ImplicitSurfaceSet instance.
ImplicitSurfaceSet< N > Build() const
Builds ImplicitSurfaceSet.
static Builder GetBuilder()
Returns builder fox ImplicitSurfaceSet.
ImplicitSurfaceSet & operator=(const ImplicitSurfaceSet &other)
Copy assignment operator.
ImplicitSurfaceSet()=default
Constructs an empty implicit surface set.
~ImplicitSurfaceSet() override=default
Default virtual destructor.
void UpdateQueryEngine() override
Updates internal spatial query engine.
ImplicitSurfaceSet & operator=(ImplicitSurfaceSet &&other) noexcept
Move assignment operator.
const std::shared_ptr< ImplicitSurface< N > > & SurfaceAt(size_t i) const
Returns the i-th implicit surface.
bool IsBounded() const override
Returns true if bounding box can be defined.
void AddExplicitSurface(const std::shared_ptr< Surface< N > > &surface)
Adds an explicit surface instance.
bool IsValidGeometry() const override
Returns true if the surface is a valid geometry.
ImplicitSurfaceSet(const ImplicitSurfaceSet &other)
Copy constructor.
ImplicitSurfaceSet(ImplicitSurfaceSet &&other) noexcept
Move constructor.
ImplicitSurfaceSet(ConstArrayView1< std::shared_ptr< Surface< N > > > surfaces, const Transform< N > &_transform=Transform< N >{}, bool _isNormalFlipped=false)
Constructs an implicit surface set using list of other surfaces.
ImplicitSurfaceSet(ConstArrayView1< std::shared_ptr< ImplicitSurface< N > > > surfaces, const Transform< N > &_transform=Transform< N >{}, bool _isNormalFlipped=false)
Constructs an implicit surface set using list of other surfaces.
void AddSurface(const std::shared_ptr< ImplicitSurface< N > > &surface)
Adds an implicit surface instance.
size_t NumberOfSurfaces() const
Returns the number of implicit surfaces.
Definition Matrix.hpp:30
Transform< N > transform
Local-to-world transform.
Definition Surface.hpp:99
Definition pybind11Utils.hpp:21
std::shared_ptr< ImplicitSurfaceSet2 > ImplicitSurfaceSet2Ptr
Shared pointer type for the ImplicitSurfaceSet2.
Definition ImplicitSurfaceSet.hpp:130
std::shared_ptr< ImplicitSurfaceSet3 > ImplicitSurfaceSet3Ptr
Shared pointer type for the ImplicitSurfaceSet3.
Definition ImplicitSurfaceSet.hpp:133
1.9.8