Prusa Slicer 2.6.0
Loading...
Searching...
No Matches
Slic3r::sla::Beam_< Samples > Struct Template Reference

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

+ Collaboration diagram for Slic3r::sla::Beam_< Samples >:

Public Member Functions

 Beam_ (const Vec3d &s, const Vec3d &d, double R1, double R2)
 
 Beam_ (const Ball &src_ball, const Ball &dst_ball)
 
 Beam_ (const Vec3d &s, const Vec3d &d, double R)
 

Public Attributes

Vec3d src
 
Vec3d dir
 
double r1
 
double r2
 

Static Public Attributes

static constexpr size_t SAMPLES = Samples
 

Detailed Description

template<size_t Samples = 8>
struct Slic3r::sla::Beam_< Samples >

Constructor & Destructor Documentation

◆ Beam_() [1/3]

template<size_t Samples = 8>
Slic3r::sla::Beam_< Samples >::Beam_ ( const Vec3d s,
const Vec3d d,
double  R1,
double  R2 
)
inline
126 : src{s}, dir{d}, r1{R1}, r2{R2} {};
Vec3d src
Definition SupportTreeUtils.hpp:120
double r1
Definition SupportTreeUtils.hpp:122
Vec3d dir
Definition SupportTreeUtils.hpp:121
double r2
Definition SupportTreeUtils.hpp:123

◆ Beam_() [2/3]

template<size_t Samples = 8>
Slic3r::sla::Beam_< Samples >::Beam_ ( const Ball src_ball,
const Ball dst_ball 
)
inline
129 : src{src_ball.p}, dir{dirv(src_ball.p, dst_ball.p)}, r1{src_ball.R}
130 {
131 r2 = src_ball.R;
132 auto d = distance(src_ball.p, dst_ball.p);
133
134 if (d > EPSILON)
135 r2 += (dst_ball.R - src_ball.R) / d;
136 }
static constexpr double EPSILON
Definition libslic3r.h:51
T distance(const Vec< I, T > &p)
Definition SupportTreeBuilder.hpp:52
Vec< N, T > dirv(const Vec< N, T > &startp, const Vec< N, T > &endp)
Definition SupportTreeUtils.hpp:91

References Slic3r::sla::distance(), EPSILON, Slic3r::sla::Ball::p, Slic3r::sla::Ball::R, and Slic3r::sla::Beam_< Samples >::r2.

+ Here is the call graph for this function:

◆ Beam_() [3/3]

template<size_t Samples = 8>
Slic3r::sla::Beam_< Samples >::Beam_ ( const Vec3d s,
const Vec3d d,
double  R 
)
inline
139 : src{s}, dir{d}, r1{R}, r2{R}
140 {}

Member Data Documentation

◆ dir

template<size_t Samples = 8>
Vec3d Slic3r::sla::Beam_< Samples >::dir

◆ r1

template<size_t Samples = 8>
double Slic3r::sla::Beam_< Samples >::r1

◆ r2

template<size_t Samples = 8>
double Slic3r::sla::Beam_< Samples >::r2

◆ SAMPLES

template<size_t Samples = 8>
constexpr size_t Slic3r::sla::Beam_< Samples >::SAMPLES = Samples
staticconstexpr

◆ src

template<size_t Samples = 8>
Vec3d Slic3r::sla::Beam_< Samples >::src

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