![]() |
Prusa Slicer 2.6.0
|
#include <src/libslic3r/BranchingTree/PointCloud.hpp>
Collaboration diagram for Slic3r::branchingtree::PointCloud:Classes | |
| struct | CoordFn |
| struct | ZCompareFn |
Public Member Functions | |
| bool | is_outside_support_cone (const Vec3f &supp, const Vec3f &pt) const |
| PointCloud (const indexed_triangle_set &M, std::vector< Node > support_leafs, const Properties &props) | |
| PointCloud (std::vector< Node > meshpts, std::vector< Node > bedpts, std::vector< Node > support_leafs, const Properties &props) | |
| PtType | get_type (size_t node_id) const |
| const Node & | get (size_t node_id) const |
| Node & | get (size_t node_id) |
| const Node * | find (size_t node_id) const |
| Node * | find (size_t node_id) |
| int | get_leaf_id (size_t node_id) const |
| size_t | get_queue_idx (size_t node_id) const |
| float | get_distance (const Vec3f &p, size_t node) const |
| size_t | next_junction_id () const |
| size_t | insert_junction (const Node &p) |
| const std::vector< Node > & | get_junctions () const noexcept |
| const std::vector< Node > & | get_bedpoints () const noexcept |
| const std::vector< Node > & | get_meshpoints () const noexcept |
| const std::vector< Node > & | get_leafs () const noexcept |
| const Properties & | properties () const noexcept |
| void | mark_unreachable (size_t node_id) |
| size_t | reachable_count () const |
| template<class Fn > | |
| void | foreach_reachable (const Vec3f &pos, Fn &&visitor, size_t k, double min_dist=0.) |
| auto | start_queue () |
Static Public Attributes | |
| static constexpr auto | Unqueued = size_t(-1) |
Private Types | |
| using | PointIndexEl = std::pair< Vec3f, unsigned > |
Static Private Member Functions | |
| template<class PC > | |
| static auto * | get_node (PC &&pc, size_t id) |
Private Attributes | |
| std::vector< Node > | m_leafs |
| std::vector< Node > | m_junctions |
| std::vector< Node > | m_meshpoints |
| std::vector< Node > | m_bedpoints |
| const branchingtree::Properties & | m_props |
| const double | cos2bridge_slope |
| const size_t | MESHPTS_BEGIN |
| const size_t | LEAFS_BEGIN |
| const size_t | JUNCTIONS_BEGIN |
| std::vector< bool > | m_searchable_indices |
| std::vector< size_t > | m_queue_indices |
| size_t | m_reachable_cnt |
| boost::geometry::index::rtree< PointIndexEl, boost::geometry::index::rstar< 16, 4 > > | m_ktree |
|
private |
| Slic3r::branchingtree::PointCloud::PointCloud | ( | const indexed_triangle_set & | M, |
| std::vector< Node > | support_leafs, | ||
| const Properties & | props | ||
| ) |
| Slic3r::branchingtree::PointCloud::PointCloud | ( | std::vector< Node > | meshpts, |
| std::vector< Node > | bedpts, | ||
| std::vector< Node > | support_leafs, | ||
| const Properties & | props | ||
| ) |
References Slic3r::branchingtree::Node::id, Slic3r::branchingtree::Node::ID_NONE, LEAFS_BEGIN, Slic3r::branchingtree::Node::left, m_bedpoints, m_ktree, m_leafs, m_meshpoints, MESHPTS_BEGIN, Slic3r::branchingtree::Node::pos, and Slic3r::branchingtree::Node::right.
|
inline |
References get_node().
Here is the call graph for this function:
|
inline |
References EPSILON, get_distance(), Slic3r::branchingtree::Properties::ground_level(), m_ktree, m_props, m_searchable_indices, Slic3r::branchingtree::Properties::max_branch_length(), and Slic3r::Z.
Referenced by Slic3r::branchingtree::build_tree().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
References get_node().
Referenced by Slic3r::sla::BranchingTreeBuilder::build_subtree(), Slic3r::branchingtree::build_tree(), Slic3r::sla::BranchingTreeBuilder::discard_subtree_rescure(), get_distance(), Slic3r::branchingtree::PointCloud::ZCompareFn::operator()(), and Slic3r::branchingtree::PointCloud::CoordFn::operator()().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlinenoexcept |
References m_bedpoints.
References Slic3r::branchingtree::BED, Slic3r::branchingtree::find_merge_pt(), get(), get_type(), Slic3r::branchingtree::Properties::ground_level(), is_outside_support_cone(), Slic3r::branchingtree::JUNCTION, Slic3r::branchingtree::LEAF, m_props, Slic3r::branchingtree::Properties::max_branch_length(), Slic3r::branchingtree::Properties::max_slope(), Slic3r::branchingtree::MESH, and Slic3r::branchingtree::NONE.
Referenced by foreach_reachable().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlinenoexcept |
References m_junctions.
|
inline |
References Slic3r::branchingtree::Node::ID_NONE, JUNCTIONS_BEGIN, and LEAFS_BEGIN.
Referenced by Slic3r::sla::BranchingTreeBuilder::discard_subtree(), and Slic3r::sla::BranchingTreeBuilder::discard_subtree_rescure().
Here is the caller graph for this function:
|
inlinenoexcept |
References m_meshpoints.
|
inlinestaticprivate |
References Slic3r::branchingtree::BED, Slic3r::branchingtree::JUNCTION, Slic3r::branchingtree::LEAF, Slic3r::branchingtree::MESH, and Slic3r::branchingtree::NONE.
Referenced by find(), find(), get(), and get().
Here is the caller graph for this function:
|
inline |
References m_queue_indices.
Referenced by Slic3r::branchingtree::build_tree().
Here is the caller graph for this function:
|
inline |
References Slic3r::branchingtree::BED, Slic3r::branchingtree::JUNCTION, JUNCTIONS_BEGIN, Slic3r::branchingtree::LEAF, LEAFS_BEGIN, m_bedpoints, m_junctions, m_leafs, m_meshpoints, Slic3r::branchingtree::MESH, MESHPTS_BEGIN, and Slic3r::branchingtree::NONE.
Referenced by Slic3r::branchingtree::build_tree(), and get_distance().
Here is the caller graph for this function:References m_junctions, m_ktree, m_queue_indices, m_reachable_cnt, m_searchable_indices, next_junction_id(), and Unqueued.
Referenced by Slic3r::branchingtree::build_tree().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
References cos2bridge_slope.
Referenced by get_distance().
Here is the caller graph for this function:
|
inline |
References m_queue_indices, m_reachable_cnt, m_searchable_indices, and Unqueued.
Referenced by Slic3r::branchingtree::build_tree().
Here is the caller graph for this function:
|
inline |
References JUNCTIONS_BEGIN, and m_junctions.
Referenced by Slic3r::branchingtree::build_tree(), and insert_junction().
Here is the caller graph for this function:
|
inlinenoexcept |
References m_props.
Referenced by Slic3r::branchingtree::build_tree().
Here is the caller graph for this function:
|
inline |
References m_reachable_cnt.
|
inline |
References LEAFS_BEGIN, m_leafs, and m_queue_indices.
Referenced by Slic3r::branchingtree::build_tree().
Here is the caller graph for this function:
|
private |
Referenced by is_outside_support_cone().
|
private |
Referenced by get_leaf_id(), get_type(), and next_junction_id().
|
private |
Referenced by PointCloud(), get_leaf_id(), get_type(), and start_queue().
|
private |
Referenced by PointCloud(), get_bedpoints(), and get_type().
|
private |
Referenced by get_junctions(), get_type(), insert_junction(), and next_junction_id().
|
private |
Referenced by PointCloud(), foreach_reachable(), and insert_junction().
|
private |
Referenced by PointCloud(), get_leafs(), get_type(), and start_queue().
|
private |
Referenced by PointCloud(), get_meshpoints(), and get_type().
|
private |
Referenced by foreach_reachable(), get_distance(), and properties().
|
private |
Referenced by get_queue_idx(), insert_junction(), mark_unreachable(), and start_queue().
|
private |
Referenced by insert_junction(), mark_unreachable(), and reachable_count().
|
private |
Referenced by foreach_reachable(), insert_junction(), and mark_unreachable().
|
private |
Referenced by PointCloud(), and get_type().
|
staticconstexpr |
Referenced by Slic3r::branchingtree::build_tree(), insert_junction(), and mark_unreachable().