Go to the documentation of this file.
7 #ifndef INCLUDE_JET_IMPLICIT_TRIANGLE_MESH3_H_
8 #define INCLUDE_JET_IMPLICIT_TRIANGLE_MESH3_H_
51 double closestDistanceLocal(
const Vector3D& otherPoint)
const override;
53 bool intersectsLocal(
const Ray3D& ray)
const override;
59 double signedDistanceLocal(
const Vector3D& otherPoint)
const override;
62 const Ray3D& ray)
const override;
91 size_t _resolutionX = 32;
97 #endif // INCLUDE_JET_IMPLICIT_TRIANGLE_MESH3_H_
TriangleMesh3 to ImplicitSurface3 converter.
Definition: implicit_triangle_mesh3.h:26
Front-end to create ImplicitTriangleMesh3 objects step by step.
Definition: implicit_triangle_mesh3.h:72
std::shared_ptr< VertexCenteredScalarGrid3 > VertexCenteredScalarGrid3Ptr
Shared pointer for the VertexCenteredScalarGrid3 type.
Definition: vertex_centered_scalar_grid3.h:89
Builder & withResolutionX(size_t resolutionX)
Returns builder with resolution in x axis.
std::shared_ptr< ImplicitTriangleMesh3 > ImplicitTriangleMesh3Ptr
Shared pointer for the ImplicitTriangleMesh3 type.
Definition: implicit_triangle_mesh3.h:66
static Builder builder()
Returns builder fox ImplicitTriangleMesh3.
3-D axis-aligned bounding box class.
Definition: bounding_box3.h:41
Abstract base class for 3-D implicit surface.
Definition: implicit_surface3.h:15
virtual ~ImplicitTriangleMesh3()
Builder & withTriangleMesh(const TriangleMesh3Ptr &mesh)
Returns builder with triangle mesh.
Base class for 3-D surface builder.
Definition: surface3.h:115
Builder & withMargin(double margin)
Returns builder with margin around the mesh.
ImplicitTriangleMesh3Ptr makeShared() const
Builds shared pointer of ImplicitTriangleMesh3 instance.
bool isNormalFlipped
Flips normal when calling Surface3::closestNormal(...).
Definition: surface3.h:33
Definition: advection_solver2.h:18
ImplicitTriangleMesh3(const TriangleMesh3Ptr &mesh, size_t resolutionX=32, double margin=0.2, const Transform3 &transform=Transform3(), bool isNormalFlipped=false)
Constructs an ImplicitSurface3 with mesh and other grid parameters.
ImplicitTriangleMesh3 build() const
Builds ImplicitTriangleMesh3.
Transform3 transform
Local-to-world transform.
Definition: surface3.h:30
Class for 2-D ray.
Definition: ray3.h:21
const VertexCenteredScalarGrid3Ptr & grid() const
Returns grid data.
Struct that represents ray-surface intersection point.
Definition: surface3.h:19
3-D vector class.
Definition: vector3.h:25
std::shared_ptr< TriangleMesh3 > TriangleMesh3Ptr
Shared pointer for the TriangleMesh3 type.
Definition: triangle_mesh3.h:245
std::shared_ptr< CustomImplicitSurface3 > CustomImplicitSurface3Ptr
Shared pointer type for the CustomImplicitSurface3.
Definition: custom_implicit_surface3.h:69