CustomImplicitSurface2.h
Go to the documentation of this file.
78 class CustomImplicitSurface2::Builder final : public SurfaceBuilderBase2<CustomImplicitSurface2::Builder>
CustomImplicitSurface2 Build() const
Builds CustomImplicitSurface2.
Front-end to create CustomImplicitSurface2 objects step by step.
Definition: CustomImplicitSurface2.h:78
BoundingBox2< double > BoundingBox2D
Double-type 2-D BoundingBox.
Definition: BoundingBox2.h:126
Transform2 transform
Local-to-world transform.
Definition: Surface2.h:36
Structure that represents ray-surface intersection point.
Definition: Surface2.h:23
Custom 2-D implicit surface using arbitrary function.
Definition: CustomImplicitSurface2.h:19
Builder & WithSignedDistanceFunction(const std::function< double(const Vector2D &)> &func)
Returns builder with custom signed-distance function.
CustomImplicitSurface2Ptr MakeShared() const
Builds shared pointer of CustomImplicitSurface2 instance.
Definition: pybind11Utils.h:24
Builder & WithDomain(const BoundingBox2D &domain)
Returns builder with domain.
Builder & WithRayMarchingResolution(double rayMarchingResolution)
static Builder GetBuilder()
Returns builder for CustomImplicitSurface2.
virtual ~CustomImplicitSurface2()
Destructor.
Abstract base class for 2-D implicit surface.
Definition: ImplicitSurface2.h:17
CustomImplicitSurface2(const std::function< double(const Vector2D &)> &func, const BoundingBox2D &domain=BoundingBox2D(), double resolution=1e-3, double rayMarchingResolution=1e-6, unsigned int maxNumberOfIterations=5, const Transform2 &transform=Transform2(), bool isNormalFlipped=false)
std::shared_ptr< CustomImplicitSurface2 > CustomImplicitSurface2Ptr
Shared pointer type for the CustomImplicitSurface2.
Definition: CustomImplicitSurface2.h:73
Builder & WithMaxNumberOfIterations(unsigned int numIter)
Returns builder with number of iterations for closest point/normal searches.
Builder & WithResolution(double resolution)
Returns builder with finite differencing resolution.