Prusa Slicer 2.6.0
Loading...
Searching...
No Matches
Slic3r::sla::Anchor Struct Reference

#include <src/libslic3r/SLA/SupportTreeBuilder.hpp>

+ Inheritance diagram for Slic3r::sla::Anchor:
+ Collaboration diagram for Slic3r::sla::Anchor:

Public Member Functions

 Head (double r_big_mm, double r_small_mm, double length_mm, double penetration, const Vec3d &direction=DOWN, const Vec3d &offset={0, 0, 0})
 
void invalidate ()
 
bool is_valid () const
 
double real_width () const
 
double fullwidth () const
 
Junction junction () const
 
Vec3d junction_point () const
 

Public Attributes

Vec3d dir = DOWN
 
Vec3d pos = {0, 0, 0}
 
double r_back_mm = 1
 
double r_pin_mm = 0.5
 
double width_mm = 2
 
double penetration_mm = 0.5
 
long pillar_id = ID_UNSET
 
long bridge_id = ID_UNSET
 
long id = ID_UNSET
 

Static Public Attributes

static const constexpr long ID_UNSET = -1
 

Detailed Description

Member Function Documentation

◆ fullwidth()

double Slic3r::sla::Head::fullwidth ( ) const
inlineinherited
110 {
111 return real_width() - penetration_mm;
112 }
double penetration_mm
Definition SupportTreeBuilder.hpp:86
double real_width() const
Definition SupportTreeBuilder.hpp:104

References Slic3r::sla::Head::penetration_mm, and Slic3r::sla::Head::real_width().

Referenced by Slic3r::sla::get_mesh(), Slic3r::sla::Head::junction(), and Slic3r::sla::optimize_anchor_placement().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Head()

Slic3r::sla::Head::Head ( double  r_big_mm,
double  r_small_mm,
double  length_mm,
double  penetration,
const Vec3d direction = DOWN,
const Vec3d offset = {0, 0, 0} 
)
17 : dir(direction)
18 , pos(offset)
19 , r_back_mm(r_big_mm)
20 , r_pin_mm(r_small_mm)
21 , width_mm(length_mm)
22 , penetration_mm(penetration)
23{
24}
Slic3r::Polygons offset(const Slic3r::Polygon &polygon, const float delta, ClipperLib::JoinType joinType, double miterLimit)
Definition ClipperUtils.cpp:416
Vec3d pos
Definition SupportTreeBuilder.hpp:81
double r_pin_mm
Definition SupportTreeBuilder.hpp:84
double r_back_mm
Definition SupportTreeBuilder.hpp:83
Vec3d dir
Definition SupportTreeBuilder.hpp:80
double width_mm
Definition SupportTreeBuilder.hpp:85

References Slic3r::sla::SupportTreeBuilder::ctl(), Slic3r::sla::get_mesh(), and Slic3r::its_merge().

+ Here is the call graph for this function:

◆ invalidate()

void Slic3r::sla::Head::invalidate ( )
inlineinherited
93{ id = ID_UNSET; }
static const constexpr long ID_UNSET
Definition SupportTreeBuilder.hpp:65

References Slic3r::sla::SupportTreeNode::ID_UNSET.

Referenced by Slic3r::sla::create_branching_tree().

+ Here is the caller graph for this function:

◆ is_valid()

bool Slic3r::sla::Head::is_valid ( ) const
inlineinherited
94{ return id >= 0; }

Referenced by Slic3r::sla::SupportTreeBuilder::merged_mesh().

+ Here is the caller graph for this function:

◆ junction()

Junction Slic3r::sla::Head::junction ( ) const
inlineinherited
115 {
116 Junction j{pos + (fullwidth() - r_back_mm) * dir, r_back_mm};
117 j.id = -this->id; // Remember that this junction is from a head
118
119 return j;
120 }
double fullwidth() const
Definition SupportTreeBuilder.hpp:109
long id
Definition SupportTreeBuilder.hpp:67

References Slic3r::sla::Head::dir, Slic3r::sla::Head::fullwidth(), Slic3r::sla::SupportTreeNode::id, Slic3r::sla::Head::pos, and Slic3r::sla::Head::r_back_mm.

Referenced by Slic3r::sla::Head::junction_point(), and Slic3r::sla::DefaultSupportTree::routing_to_ground().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ junction_point()

Vec3d Slic3r::sla::Head::junction_point ( ) const
inlineinherited
123 {
124 return junction().pos;
125 }
Junction junction() const
Definition SupportTreeBuilder.hpp:114
Vec3d pos
Definition SupportTreeBuilder.hpp:73

References Slic3r::sla::Head::junction(), and Slic3r::sla::Junction::pos.

Referenced by Slic3r::sla::SupportTreeBuilder::add_bridge(), Slic3r::sla::SupportTreeBuilder::add_pillar(), Slic3r::sla::DefaultSupportTree::classify(), Slic3r::sla::DefaultSupportTree::routing_to_ground(), and Slic3r::sla::DefaultSupportTree::search_pillar_and_connect().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ real_width()

double Slic3r::sla::Head::real_width ( ) const
inlineinherited
105 {
106 return 2 * r_pin_mm + width_mm + 2 * r_back_mm ;
107 }

References Slic3r::sla::Head::r_back_mm, Slic3r::sla::Head::r_pin_mm, and Slic3r::sla::Head::width_mm.

Referenced by Slic3r::sla::Head::fullwidth().

+ Here is the caller graph for this function:

Member Data Documentation

◆ bridge_id

long Slic3r::sla::Head::bridge_id = ID_UNSET
inherited

◆ dir

◆ id

◆ ID_UNSET

◆ penetration_mm

double Slic3r::sla::Head::penetration_mm = 0.5
inherited

◆ pillar_id

long Slic3r::sla::Head::pillar_id = ID_UNSET
inherited

◆ pos

Vec3d Slic3r::sla::Head::pos = {0, 0, 0}
inherited

◆ r_back_mm

◆ r_pin_mm

double Slic3r::sla::Head::r_pin_mm = 0.5
inherited

◆ width_mm


The documentation for this struct was generated from the following file: