An index-triangle structure for libIGL functions. Also serves as an alternative (raw) input format for the SLASupportTree. More...
#include </home/runner/work/OrcaSlicer/OrcaSlicer/src/libslic3r/SLA/IndexedMesh.hpp>
Classes | |
| class | hit_result |
| class | AABBImpl |
Public Member Functions | |
| IndexedMesh (const indexed_triangle_set &tmesh, bool calculate_epsilon=false) | |
| IndexedMesh (const TriangleMesh &mesh, bool calculate_epsilon=false) | |
| IndexedMesh (const IndexedMesh &other) | |
| IndexedMesh & | operator= (const IndexedMesh &) |
| IndexedMesh (IndexedMesh &&other) | |
| IndexedMesh & | operator= (IndexedMesh &&other) |
| ~IndexedMesh () | |
| double | ground_level () const |
| void | ground_level_offset (double o) |
| double | ground_level_offset () const |
| const std::vector< Vec3f > & | vertices () const |
| const std::vector< Vec3i32 > & | indices () const |
| const Vec3f & | vertices (size_t idx) const |
| const Vec3i32 & | indices (size_t idx) const |
| hit_result | query_ray_hit (const Vec3d &s, const Vec3d &dir) const |
| std::vector< hit_result > | query_ray_hits (const Vec3d &s, const Vec3d &dir) const |
| double | squared_distance (const Vec3d &p, int &i, Vec3d &c) const |
| double | squared_distance (const Vec3d &p) const |
| Vec3d | normal_by_face_id (int face_id) const |
| const indexed_triangle_set * | get_triangle_mesh () const |
Private Member Functions | |
| template<class M> | |
| void | init (const M &mesh, bool calculate_epsilon) |
Private Attributes | |
| const indexed_triangle_set * | m_tm |
| double | m_ground_level = 0 |
| double | m_gnd_offset = 0 |
| std::unique_ptr< AABBImpl > | m_aabb |
An index-triangle structure for libIGL functions. Also serves as an alternative (raw) input format for the SLASupportTree.
|
explicit |
References init(), m_aabb, and m_tm.
Referenced by IndexedMesh(), IndexedMesh(), operator=(), and operator=().
|
explicit |
| Slic3r::sla::IndexedMesh::IndexedMesh | ( | const IndexedMesh & | other | ) |
References IndexedMesh(), m_aabb, m_ground_level, and m_tm.
|
default |
| Slic3r::sla::IndexedMesh::~IndexedMesh | ( | ) |
|
inline |
|
inline |
References m_gnd_offset, and m_ground_level.
Referenced by Slic3r::contour_extrusion_path(), Slic3r::sla::SupportTree::create(), and Slic3r::sla::SupportTreeBuildsteps::execute().
|
inline |
References m_gnd_offset.
|
inline |
References m_gnd_offset.
Referenced by Slic3r::PrintObject::contour_z().
| const std::vector< Vec3i32 > & Slic3r::sla::IndexedMesh::indices | ( | ) | const |
| const Vec3i32 & Slic3r::sla::IndexedMesh::indices | ( | size_t | idx | ) | const |
|
private |
References Slic3r::bounding_box(), m_aabb, m_ground_level, m_tm, Slic3r::BoundingBoxBase< PointType, std::vector< PointType > >::min, and Slic3r::sla::Z.
Referenced by IndexedMesh(), and IndexedMesh().
| Vec3d Slic3r::sla::IndexedMesh::normal_by_face_id | ( | int | face_id | ) | const |
References Slic3r::its_unnormalized_normal(), and m_tm.
Referenced by Slic3r::sla::normals(), query_ray_hit(), and query_ray_hits().
| IndexedMesh & Slic3r::sla::IndexedMesh::operator= | ( | const IndexedMesh & | other | ) |
References IndexedMesh(), m_aabb, m_ground_level, and m_tm.
|
default |
| IndexedMesh::hit_result Slic3r::sla::IndexedMesh::query_ray_hit | ( | const Vec3d & | s, |
| const Vec3d & | dir ) const |
References Slic3r::is_approx(), m_aabb, Slic3r::sla::IndexedMesh::hit_result::m_dir, Slic3r::sla::IndexedMesh::hit_result::m_face_id, Slic3r::sla::IndexedMesh::hit_result::m_normal, Slic3r::sla::IndexedMesh::hit_result::m_source, Slic3r::sla::IndexedMesh::hit_result::m_t, m_tm, normal_by_face_id(), and query_ray_hits().
Referenced by Slic3r::contour_extrusion_path(), and Slic3r::FaceDetector::detect_exterior_face().
| std::vector< IndexedMesh::hit_result > Slic3r::sla::IndexedMesh::query_ray_hits | ( | const Vec3d & | s, |
| const Vec3d & | dir ) const |
References m_aabb, m_tm, and normal_by_face_id().
Referenced by query_ray_hit().
|
inline |
References squared_distance().
Referenced by squared_distance().
| const std::vector< Vec3f > & Slic3r::sla::IndexedMesh::vertices | ( | ) | const |
| const Vec3f & Slic3r::sla::IndexedMesh::vertices | ( | size_t | idx | ) | const |
|
private |
Referenced by IndexedMesh(), IndexedMesh(), IndexedMesh(), init(), operator=(), query_ray_hit(), query_ray_hits(), and squared_distance().
|
private |
Referenced by ground_level(), ground_level_offset(), and ground_level_offset().
|
private |
Referenced by IndexedMesh(), ground_level(), init(), and operator=().
|
private |