vtriangle.hpp
Go to the documentation of this file.
uint32_t add_vertex(const Vec3D &x)
Add a vertex x with duplicate vertex elimination.
Definition: vtriangle.cpp:113
void debug_print(std::ostream &os) const
Debug print.
Definition: vtriangle.cpp:436
~VTriangleSurfaceSolid()
Destructor.
Definition: vtriangle.cpp:185
bool inside(const Vec3D &x) const
Return if point x is inside solid.
Definition: vtriangle.cpp:282
uint32_t add_vertex_no_check(const Vec3D &x)
Add a vertex x without checking.
Definition: vtriangle.hpp:143
Three dimensional vectors.
const Vec3D & vertex(uint32_t i) const
Return vertex i coordinates.
Definition: vtriangle.hpp:123
uint32_t trianglec(void) const
Return triangle count.
Definition: vtriangle.hpp:129
void prepare_for_inside()
Prepare for inside tests.
Definition: vtriangle.cpp:341
void set_vertex_matching_eps(double vertex_matching_eps)
Set vertex matching tolerance.
Definition: vtriangle.cpp:100
const VTriangle & triangle(uint32_t i) const
Return triangle i.
Definition: vtriangle.hpp:135
uint32_t add_triangle(const uint32_t v[3])
Add a triangle consiting of already defined vertices v.
Definition: vtriangle.hpp:187
VTriangleSurfaceSolid(double vertex_matching_eps=1.0e-9, double signed_volume_eps=1.0e-15)
Constructor for vertex triangle surface solid.
Definition: vtriangle.cpp:176
std::vector< Vec3D > _vertex
List of vertices for surface triangles.
Definition: vtriangle.hpp:93
void set_signed_volume_eps(double signed_volume_eps)
Set signed volume tolerance.
Definition: vtriangle.cpp:366
std::vector< VTriangle > _triangle
List of surface triangles.
Definition: vtriangle.hpp:94
void check_data(void) const
Check data.
Definition: vtriangle.cpp:379
uint32_t add_triangle(const Vec3D &x1, const Vec3D &x2, const Vec3D &x3)
Add a triangle consiting of vertices x1, x2 and x3 with duplicate vertex elimination.
Definition: vtriangle.cpp:139
uint32_t add_triangle(uint32_t v1, uint32_t v2, uint32_t v3)
Add a triangle consiting of already defined vertices v1, v2 and v3.
Definition: vtriangle.hpp:177
VTriangleSurface(double vertex_matching_eps=1.0e-9)
Constructor for vertex triangle surface.
Definition: vtriangle.cpp:87
uint32_t vertexc(void) const
Return vertex count.
Definition: vtriangle.hpp:117
Vec3D vertex(uint32_t i) const
Return vertex i coordinates.
Definition: vtriangle.hpp:248
void debug_print(std::ostream &os) const
Debug print.
Definition: vtriangle.cpp:152
void get_bbox(Vec3D &min, Vec3D &max) const
Return bounding box in vectors min and max.
Definition: vtriangle.cpp:372