![]() |
Prusa Slicer 2.6.0
|
Namespaces | |
| namespace | BicubicInternal |
| namespace | impl |
| namespace | rotcalip |
Classes | |
| class | ArrangeItem |
| class | ArrangeItemIndex |
| struct | Circle |
| struct | CircleSq |
| struct | CubicKernelWrapper |
| class | Lines2VDSegments |
| class | MedialAxis |
| struct | ParabolicSegment |
| struct | PiecewiseFittedCurve |
| struct | PolynomialCurve |
| class | Transformation |
| struct | TransformationSVD |
| class | VoronoiDiagram |
| class | VoronoiUtilsCgal |
Typedefs | |
| template<typename NumberType > | |
| using | LinearKernel = CubicKernelWrapper< BicubicInternal::LinearKernel< NumberType > > |
| template<typename NumberType > | |
| using | CubicCatmulRomKernel = CubicKernelWrapper< BicubicInternal::CubicCatmulRomKernel< NumberType > > |
| template<typename NumberType > | |
| using | CubicBSplineKernel = CubicKernelWrapper< BicubicInternal::CubicBSplineKernel< NumberType > > |
| using | Circlef = Circle< Vec2f > |
| using | Circled = Circle< Vec2d > |
| using | CircleSqf = CircleSq< Vec2f > |
| using | CircleSqd = CircleSq< Vec2d > |
| using | ParabolicTangentToSegmentOrientation = impl::ParabolicTangentToSegmentOrientationPredicateFiltered |
| using | ParabolicTangentToParabolicTangentOrientation = impl::ParabolicTangentToParabolicTangentOrientationPredicateFiltered |
| using | CGAL_Point = impl::K::Point_2 |
Enumerations | |
| enum | Orientation { ORIENTATION_CCW = 1 , ORIENTATION_CW = -1 , ORIENTATION_COLINEAR = 0 } |
Functions | |
| bool | directions_parallel (double angle1, double angle2, double max_diff) |
| bool | directions_perpendicular (double angle1, double angle2, double max_diff) |
| template<class T > | |
| bool | contains (const std::vector< T > &vector, const Point &point) |
| template bool | contains (const ExPolygons &vector, const Point &point) |
| void | simplify_polygons (const Polygons &polygons, double tolerance, Polygons *retval) |
| double | linint (double value, double oldmin, double oldmax, double newmin, double newmax) |
| bool | arrange (size_t total_parts, const Vec2d &part_size, coordf_t dist, const BoundingBoxf *bb, Pointfs &positions) |
| template<typename T > | |
| T | dist (const boost::polygon::point_data< T > &p1, const boost::polygon::point_data< T > &p2) |
| template<typename segment_type , typename point_type > | |
| point_type | project_point_to_segment (segment_type &seg, point_type &px) |
| void | assemble_transform (Transform3d &transform, const Vec3d &translation, const Vec3d &rotation, const Vec3d &scale, const Vec3d &mirror) |
| Transform3d | assemble_transform (const Vec3d &translation, const Vec3d &rotation, const Vec3d &scale, const Vec3d &mirror) |
| void | assemble_transform (Transform3d &transform, const Transform3d &translation, const Transform3d &rotation, const Transform3d &scale, const Transform3d &mirror) |
| Transform3d | assemble_transform (const Transform3d &translation, const Transform3d &rotation, const Transform3d &scale, const Transform3d &mirror) |
| void | translation_transform (Transform3d &transform, const Vec3d &translation) |
| Transform3d | translation_transform (const Vec3d &translation) |
| void | rotation_transform (Transform3d &transform, const Vec3d &rotation) |
| Transform3d | rotation_transform (const Vec3d &rotation) |
| void | scale_transform (Transform3d &transform, double scale) |
| void | scale_transform (Transform3d &transform, const Vec3d &scale) |
| Transform3d | scale_transform (double scale) |
| Transform3d | scale_transform (const Vec3d &scale) |
| Vec3d | extract_rotation (const Eigen::Matrix< double, 3, 3, Eigen::DontAlign > &rotation_matrix) |
| Vec3d | extract_rotation (const Transform3d &transform) |
| static Transform3d | extract_rotation_matrix (const Transform3d &trafo) |
| static Transform3d | extract_scale (const Transform3d &trafo) |
| static std::pair< Transform3d, Transform3d > | extract_rotation_scale (const Transform3d &trafo) |
| static bool | contains_skew (const Transform3d &trafo) |
| Transform3d | transform3d_from_string (const std::string &transform_str) |
| Eigen::Quaterniond | rotation_xyz_diff (const Vec3d &rot_xyz_from, const Vec3d &rot_xyz_to) |
| double | rotation_diff_z (const Transform3d &trafo_from, const Transform3d &trafo_to) |
| bool | trafos_differ_in_rotation_by_z_and_mirroring_by_xy_only (const Transform3d &t1, const Transform3d &t2) |
| static Orientation | orient (const Point &a, const Point &b, const Point &c) |
| static bool | is_ccw (const Polygon &poly) |
| bool | ray_ray_intersection (const Vec2d &p1, const Vec2d &v1, const Vec2d &p2, const Vec2d &v2, Vec2d &res) |
| bool | segment_segment_intersection (const Vec2d &p1, const Vec2d &v1, const Vec2d &p2, const Vec2d &v2, Vec2d &res) |
| bool | segments_intersect (const Slic3r::Point &ip1, const Slic3r::Point &ip2, const Slic3r::Point &jp1, const Slic3r::Point &jp2) |
| template<typename T > | |
| T | foot_pt (const T &line_pt, const T &line_dir, const T &pt) |
| Vec2d | foot_pt (const Line &iline, const Point &ipt) |
| template<typename T > | |
| auto | ray_point_distance_squared (const T &ray_pt, const T &ray_dir, const T &pt) |
| template<typename T > | |
| auto | ray_point_distance (const T &ray_pt, const T &ray_dir, const T &pt) |
| double | ray_point_distance_squared (const Line &iline, const Point &ipt) |
| double | ray_point_distance (const Line &iline, const Point &ipt) |
| template<typename T > | |
| bool | liang_barsky_line_clipping_interval (const Eigen::Matrix< T, 2, 1, Eigen::DontAlign > &x0, const Eigen::Matrix< T, 2, 1, Eigen::DontAlign > &v, const BoundingBoxBase< Eigen::Matrix< T, 2, 1, Eigen::DontAlign > > &bbox, std::pair< double, double > &out_interval) |
| template<typename T > | |
| bool | liang_barsky_line_clipping (Eigen::Matrix< T, 2, 1, Eigen::DontAlign > &x0, Eigen::Matrix< T, 2, 1, Eigen::DontAlign > &x1, const BoundingBoxBase< Eigen::Matrix< T, 2, 1, Eigen::DontAlign > > &bbox) |
| template<typename T > | |
| bool | liang_barsky_line_clipping (const Eigen::Matrix< T, 2, 1, Eigen::DontAlign > &x0src, const Eigen::Matrix< T, 2, 1, Eigen::DontAlign > &x1src, const BoundingBoxBase< Eigen::Matrix< T, 2, 1, Eigen::DontAlign > > &bbox, Eigen::Matrix< T, 2, 1, Eigen::DontAlign > &x0clip, Eigen::Matrix< T, 2, 1, Eigen::DontAlign > &x1clip) |
| template<typename T > | |
| T | rad2deg (T angle) |
| template<typename T > | |
| constexpr T | deg2rad (const T angle) |
| template<typename T > | |
| T | angle_to_0_2PI (T angle) |
| bool | is_rotation_ninety_degrees (double a) |
| bool | is_rotation_ninety_degrees (const Vec3d &rotation) |
| bool | trafos_differ_in_rotation_by_z_and_mirroring_by_xy_only (const Transformation &t1, const Transformation &t2) |
| template<class Tout = double, class Tin > | |
| std::pair< Tout, Tout > | dir_to_spheric (const Vec< 3, Tin > &n, Tout norm=1.) |
| template<class T = double> | |
| Vec< 3, T > | spheric_to_dir (double polar, double azimuth) |
| template<class T = double, class Pair > | |
| Vec< 3, T > | spheric_to_dir (const Pair &v) |
| template<typename KernelWrapper > | |
| static KernelWrapper::FloatType | cubic_interpolate (const Eigen::ArrayBase< typename KernelWrapper::FloatType > &F, const typename KernelWrapper::FloatType pt) |
| template<typename Kernel , typename Derived > | |
| static float | bicubic_interpolate (const Eigen::MatrixBase< Derived > &F, const Eigen::Matrix< typename Kernel::FloatType, 2, 1, Eigen::DontAlign > &pt) |
| Point | circle_center_taubin_newton (const Vec2ds::const_iterator &input_begin, const Vec2ds::const_iterator &input_end, size_t cycles) |
| Adapted from work in "Circular and Linear Regression: Fitting circles and lines by least squares", pg 126 Returns a point corresponding to the center of a circle for which all of the points from input_begin to input_end lie on. | |
| Circled | circle_taubin_newton (const Vec2ds &input, size_t cycles) |
| Circled | circle_ransac (const Vec2ds &input, size_t iterations, double *min_error) |
| template<typename Vector > | |
| Vector | circle_center (const Vector &a, const Vector &bsrc, const Vector &csrc, typename Vector::Scalar epsilon) |
| Point | circle_center_taubin_newton (const Points &input, size_t cycles=20) |
| Vec2d | circle_center_taubin_newton (const Vec2ds &input, size_t cycles=20) |
| template<typename Vector , typename Points > | |
| CircleSq< Vector > | smallest_enclosing_circle2_welzl (const Points &points, const typename Vector::Scalar epsilon) |
| template<typename Vector , typename Points > | |
| Circle< Vector > | smallest_enclosing_circle_welzl (const Points &points, const typename Vector::Scalar epsilon) |
| Circled | smallest_enclosing_circle_welzl (const Points &points) |
| template<typename T > | |
| int | ray_circle_intersections_r2_lv2_c (T r2, T a, T b, T lv2, T c, std::pair< Eigen::Matrix< T, 2, 1, Eigen::DontAlign >, Eigen::Matrix< T, 2, 1, Eigen::DontAlign > > &out) |
| template<typename T > | |
| int | ray_circle_intersections (T r, T a, T b, T c, std::pair< Eigen::Matrix< T, 2, 1, Eigen::DontAlign >, Eigen::Matrix< T, 2, 1, Eigen::DontAlign > > &out) |
| Polygon | convex_hull (Points pts) |
| Pointf3s | convex_hull (Pointf3s points) |
| Polygon | convex_hull (const Polygons &polygons) |
| Polygon | convex_hull (const ExPolygons &expolygons) |
| Polygon | convex_hulll (const Polylines &polylines) |
| bool | convex_polygons_intersect (const Polygon &A, const Polygon &B) |
| std::pair< std::vector< Vec2d >, std::vector< Vec2d > > | decompose_convex_polygon_top_bottom (const std::vector< Vec2d > &src) |
| bool | inside_convex_polygon (const std::pair< std::vector< Vec2d >, std::vector< Vec2d > > &top_bottom_decomposition, const Vec2d &pt) |
| template<int Dimension, typename NumberType > | |
| PolynomialCurve< Dimension, NumberType > | fit_polynomial (const std::vector< Vec< Dimension, NumberType > > &observations, const std::vector< NumberType > &observation_points, const std::vector< NumberType > &weights, size_t order) |
| template<typename Kernel , int Dimension, typename NumberType > | |
| PiecewiseFittedCurve< Dimension, NumberType, Kernel > | fit_curve (const std::vector< Vec< Dimension, NumberType > > &observations, const std::vector< NumberType > &observation_points, const std::vector< NumberType > &weights, size_t segments_count, size_t endpoints_level_of_freedom) |
| template<int Dimension, typename NumberType > | |
| PiecewiseFittedCurve< Dimension, NumberType, LinearKernel< NumberType > > | fit_linear_spline (const std::vector< Vec< Dimension, NumberType > > &observations, std::vector< NumberType > observation_points, std::vector< NumberType > weights, size_t segments_count, size_t endpoints_level_of_freedom=0) |
| template<int Dimension, typename NumberType > | |
| PiecewiseFittedCurve< Dimension, NumberType, CubicBSplineKernel< NumberType > > | fit_cubic_bspline (const std::vector< Vec< Dimension, NumberType > > &observations, std::vector< NumberType > observation_points, std::vector< NumberType > weights, size_t segments_count, size_t endpoints_level_of_freedom=0) |
| template<int Dimension, typename NumberType > | |
| PiecewiseFittedCurve< Dimension, NumberType, CubicCatmulRomKernel< NumberType > > | fit_catmul_rom_spline (const std::vector< Vec< Dimension, NumberType > > &observations, std::vector< NumberType > observation_points, std::vector< NumberType > weights, size_t segments_count, size_t endpoints_level_of_freedom=0) |
| template<typename VD , typename SEGMENTS > | |
| const VD::point_type | retrieve_cell_point (const typename VD::cell_type &cell, const SEGMENTS &segments) |
| template<typename VD , typename SEGMENTS > | |
| std::pair< typename VD::coord_type, typename VD::coord_type > | measure_edge_thickness (const VD &vd, const typename VD::edge_type &edge, const SEGMENTS &segments) |
| static CGAL_Point | to_cgal_point (const VD::vertex_type *pt) |
| static CGAL_Point | to_cgal_point (const Point &pt) |
| static CGAL_Point | to_cgal_point (const Vec2d &pt) |
| static Linef | make_linef (const VD::edge_type &edge) |
| static bool | is_equal (const VD::vertex_type &first, const VD::vertex_type &second) |
| static ParabolicSegment | get_parabolic_segment (const VD::edge_type &edge, const std::vector< VoronoiUtils::Segment > &segments) |
| static CGAL::Orientation | orientation_of_two_edges (const VD::edge_type &edge_a, const VD::edge_type &edge_b, const std::vector< VoronoiUtils::Segment > &segments) |
| static bool | check_if_three_edges_are_ccw (const VD::edge_type &first, const VD::edge_type &second, const VD::edge_type &third, const std::vector< VoronoiUtils::Segment > &segments) |
| class Slic3r::Geometry::ArrangeItem |
| struct Slic3r::Geometry::ParabolicSegment |
| using Slic3r::Geometry::CGAL_Point = typedef impl::K::Point_2 |
| using Slic3r::Geometry::Circled = typedef Circle<Vec2d> |
| using Slic3r::Geometry::Circlef = typedef Circle<Vec2f> |
| using Slic3r::Geometry::CircleSqd = typedef CircleSq<Vec2d> |
| using Slic3r::Geometry::CircleSqf = typedef CircleSq<Vec2f> |
| using Slic3r::Geometry::CubicBSplineKernel = typedef CubicKernelWrapper<BicubicInternal::CubicBSplineKernel<NumberType> > |
| using Slic3r::Geometry::CubicCatmulRomKernel = typedef CubicKernelWrapper<BicubicInternal::CubicCatmulRomKernel<NumberType> > |
| using Slic3r::Geometry::LinearKernel = typedef CubicKernelWrapper<BicubicInternal::LinearKernel<NumberType> > |
| using Slic3r::Geometry::ParabolicTangentToParabolicTangentOrientation = typedef impl::ParabolicTangentToParabolicTangentOrientationPredicateFiltered |
| using Slic3r::Geometry::ParabolicTangentToSegmentOrientation = typedef impl::ParabolicTangentToSegmentOrientationPredicateFiltered |
| Enumerator | |
|---|---|
| ORIENTATION_CCW | |
| ORIENTATION_CW | |
| ORIENTATION_COLINEAR | |
| T Slic3r::Geometry::angle_to_0_2PI | ( | T | angle | ) |
References Slic3r::angle(), and PI.
Referenced by Slic3r::Geometry::Transformation::set_rotation().
Here is the call graph for this function:
Here is the caller graph for this function:| bool Slic3r::Geometry::arrange | ( | size_t | total_parts, |
| const Vec2d & | part_size, | ||
| coordf_t | dist, | ||
| const BoundingBoxf * | bb, | ||
| Pointfs & | positions | ||
| ) |
References Slic3r::area(), Slic3r::BoundingBoxBase< PointType, APointsType >::defined, dist(), floor(), linint(), Slic3r::BoundingBoxBase< PointType, APointsType >::max, Slic3r::BoundingBoxBase< PointType, APointsType >::merge(), Slic3r::BoundingBoxBase< PointType, APointsType >::min, Slic3r::BoundingBoxBase< PointType, APointsType >::size(), and Slic3r::BoundingBoxBase< PointType, APointsType >::translate().
Here is the call graph for this function:| Transform3d Slic3r::Geometry::assemble_transform | ( | const Transform3d & | translation, |
| const Transform3d & | rotation, | ||
| const Transform3d & | scale, | ||
| const Transform3d & | mirror | ||
| ) |
References assemble_transform(), scale(), and Slic3r::transform().
Here is the call graph for this function:| Transform3d Slic3r::Geometry::assemble_transform | ( | const Vec3d & | translation, |
| const Vec3d & | rotation, | ||
| const Vec3d & | scale, | ||
| const Vec3d & | mirror | ||
| ) |
References assemble_transform(), scale(), and Slic3r::transform().
Here is the call graph for this function:| void Slic3r::Geometry::assemble_transform | ( | Transform3d & | transform, |
| const Transform3d & | translation, | ||
| const Transform3d & | rotation, | ||
| const Transform3d & | scale, | ||
| const Transform3d & | mirror | ||
| ) |
| void Slic3r::Geometry::assemble_transform | ( | Transform3d & | transform, |
| const Vec3d & | translation, | ||
| const Vec3d & | rotation, | ||
| const Vec3d & | scale, | ||
| const Vec3d & | mirror | ||
| ) |
References Eigen::Transform< double, 3, Eigen::Affine, Eigen::DontAlign >::Identity(), scale(), Slic3r::Linef3::scale(), and Slic3r::transform().
Referenced by assemble_transform(), assemble_transform(), and Slic3r::GUI::GLGizmoSlaSupports::update_point_raycasters_for_picking_transform().
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
References Slic3r::Geometry::BicubicInternal::clamp(), Slic3r::f(), Slic3r::F, and floor().
Here is the call graph for this function:
|
static |
References is_equal(), and orientation_of_two_edges().
Referenced by Slic3r::Geometry::VoronoiUtilsCgal::is_voronoi_diagram_planar_angle().
Here is the call graph for this function:
Here is the caller graph for this function:| Vector Slic3r::Geometry::circle_center | ( | const Vector & | a, |
| const Vector & | bsrc, | ||
| const Vector & | csrc, | ||
| typename Vector::Scalar | epsilon | ||
| ) |
Referenced by Slic3r::Geometry::CircleSq< Vector >::CircleSq(), and circle_ransac().
Here is the caller graph for this function:
|
inline |
References circle_center_taubin_newton(), and input().
Here is the call graph for this function:
|
inline |
| Point Slic3r::Geometry::circle_center_taubin_newton | ( | const Points::const_iterator & | input_begin, |
| const Points::const_iterator & | input_end, | ||
| size_t | cycles | ||
| ) |
Adapted from work in "Circular and Linear Regression: Fitting circles and lines by least squares", pg 126 Returns a point corresponding to the center of a circle for which all of the points from input_begin to input_end lie on.
Find the center of the circle corresponding to the vector of Pointfs as an arc.
Find the center of the circle corresponding to the vector of Points as an arc.
References circle_center_taubin_newton(), and Slic3r::unscale().
Referenced by circle_center_taubin_newton(), circle_center_taubin_newton(), circle_center_taubin_newton(), and circle_taubin_newton().
Here is the call graph for this function:
Here is the caller graph for this function:| Circled Slic3r::Geometry::circle_ransac | ( | const Vec2ds & | input, |
| size_t | iterations, | ||
| double * | min_error | ||
| ) |
References circle_center(), EPSILON, input(), and Slic3r::Geometry::Circle< Vector >::make_invalid().
Referenced by Slic3r::BuildVolume::BuildVolume(), and Slic3r::Measure::get_center_and_radius().
Here is the call graph for this function:
Here is the caller graph for this function:References Slic3r::Geometry::Circle< Vector >::center, circle_center_taubin_newton(), input(), Slic3r::Geometry::Circle< Vector >::make_invalid(), and Slic3r::Geometry::Circle< Vector >::radius.
Here is the call graph for this function:| template bool Slic3r::Geometry::contains | ( | const ExPolygons & | vector, |
| const Point & | point | ||
| ) |
| bool Slic3r::Geometry::contains | ( | const std::vector< T > & | vector, |
| const Point & | point | ||
| ) |
Referenced by Slic3r::GUI::GCodeViewer::refresh_render_paths().
Here is the caller graph for this function:
|
static |
References Eigen::Transform< _Scalar, _Dim, _Mode, _Options >::computeRotationScaling(), EPSILON, Eigen::Transform< _Scalar, _Dim, _Mode, _Options >::matrix(), and scale().
Referenced by Slic3r::Geometry::Transformation::has_skew().
Here is the call graph for this function:
Here is the caller graph for this function:| Polygon Slic3r::Geometry::convex_hull | ( | const ExPolygons & | expolygons | ) |
References convex_hull(), and Slic3r::MultiPoint::size().
Here is the call graph for this function:References convex_hull().
Here is the call graph for this function:References orient(), and ORIENTATION_CCW.
Here is the call graph for this function:References orient(), ORIENTATION_CCW, Slic3r::MultiPoint::points, and Slic3r::MultiPoint::size().
Referenced by Slic3r::BuildVolume::BuildVolume(), Slic3r::Print::_make_skirt(), Slic3r::TriangleMesh::convex_hull(), convex_hull(), convex_hull(), convex_hulll(), Slic3r::GUI::CameraUtils::create_hull2d(), Slic3r::Print::finalize_first_layer_convex_hull(), Slic3r::generate_extra_perimeters_over_overhangs(), Slic3r::get_arrange_poly(), Slic3r::its_convex_hull_2d_above(), Slic3r::GUI::update_arrangepoly_slaprint(), Slic3r::GUI::GLGizmoFlatten::update_planes(), and Slic3r::GUI::GLCanvas3D::update_sequential_clearance().
Here is the call graph for this function:
Here is the caller graph for this function:References convex_hull(), and Slic3r::MultiPoint::points.
Here is the call graph for this function:References Slic3r::MultiPoint::size().
Here is the call graph for this function:
|
static |
References Slic3r::Geometry::BicubicInternal::clamp(), Slic3r::f(), Slic3r::F, and floor().
Here is the call graph for this function:| std::pair< std::vector< Vec2d >, std::vector< Vec2d > > Slic3r::Geometry::decompose_convex_polygon_top_bottom | ( | const std::vector< Vec2d > & | src | ) |
Referenced by Slic3r::BuildVolume::BuildVolume().
Here is the caller graph for this function:
|
constexpr |
References Slic3r::angle(), and PI.
Referenced by Slic3r::FFFSupport::SupportParameters::SupportParameters(), Slic3r::WipeTower::finish_layer(), Slic3r::Print::first_layer_wipe_tower_corners(), Slic3r::Arachne::WallToolPaths::generate(), Slic3r::WipeTower::get_wipe_tower_cone_base(), Slic3r::get_wipe_tower_extrusions_extents(), Slic3r::FakeWipeTower::getFakeExtrusionPathsFromWipeTower(), Slic3r::group_fills(), Slic3r::GUI::Bed_2D::repaint(), Slic3r::GUI::Camera::rotate_on_sphere(), Slic3r::CLI::run(), Slic3r::TriangleSelector::seed_fill_select_triangles(), Slic3r::TriangleSelector::select_patch(), Slic3r::GUI::Camera::set_default_orientation(), Slic3r::GLVolumeCollection::set_default_slope_normal_z(), and Slic3r::GUI::GLCanvas3D::Slope::set_normal_angle().
Here is the call graph for this function:
Here is the caller graph for this function:| std::pair< Tout, Tout > Slic3r::Geometry::dir_to_spheric | ( | const Vec< 3, Tin > & | n, |
| Tout | norm = 1. |
||
| ) |
References dir_to_spheric().
Referenced by dir_to_spheric().
Here is the call graph for this function:
Here is the caller graph for this function:| bool Slic3r::Geometry::directions_parallel | ( | double | angle1, |
| double | angle2, | ||
| double | max_diff | ||
| ) |
References Slic3r::diff(), EPSILON, and PI.
Referenced by Slic3r::BridgeDetector::bridge_direction_candidates(), Slic3r::Line::parallel_to(), and Slic3r::BridgeDetector::unsupported_edges().
Here is the call graph for this function:
Here is the caller graph for this function:| bool Slic3r::Geometry::directions_perpendicular | ( | double | angle1, |
| double | angle2, | ||
| double | max_diff | ||
| ) |
References Slic3r::diff(), EPSILON, and PI.
Referenced by Slic3r::Line::perpendicular_to().
Here is the call graph for this function:
Here is the caller graph for this function:| T Slic3r::Geometry::dist | ( | const boost::polygon::point_data< T > & | p1, |
| const boost::polygon::point_data< T > & | p2 | ||
| ) |
References sqrt().
Referenced by arrange(), Slic3r::GUI::get_arrange_params(), measure_edge_thickness(), Slic3r::GUI::CommonGizmosDataObjects::ObjectClipper::set_position_by_ratio(), and Slic3r::GUI::GLGizmoCut3D::update_clipper().
Here is the call graph for this function:
Here is the caller graph for this function:| Vec3d Slic3r::Geometry::extract_rotation | ( | const Eigen::Matrix< double, 3, 3, Eigen::DontAlign > & | rotation_matrix | ) |
Referenced by extract_rotation(), Slic3r::Geometry::Transformation::get_rotation(), and Slic3r::Geometry::Transformation::set_rotation().
Here is the caller graph for this function:| Vec3d Slic3r::Geometry::extract_rotation | ( | const Transform3d & | transform | ) |
References extract_rotation(), and Slic3r::transform().
Here is the call graph for this function:
|
static |
References Eigen::Transform< _Scalar, _Dim, _Mode, _Options >::computeRotationScaling(), and scale().
Referenced by Slic3r::Geometry::Transformation::get_rotation(), Slic3r::Geometry::Transformation::get_rotation_matrix(), and Slic3r::Geometry::Transformation::set_scaling_factor().
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
References Eigen::Transform< _Scalar, _Dim, _Mode, _Options >::computeRotationScaling(), and scale().
Referenced by Slic3r::Geometry::Transformation::set_mirror(), Slic3r::Geometry::Transformation::set_mirror(), Slic3r::Geometry::Transformation::set_rotation(), and Slic3r::Geometry::Transformation::set_scaling_factor().
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
References Eigen::Transform< _Scalar, _Dim, _Mode, _Options >::computeRotationScaling(), and scale().
Referenced by Slic3r::Geometry::Transformation::get_mirror(), Slic3r::Geometry::Transformation::get_mirror_matrix(), Slic3r::Geometry::Transformation::get_scaling_factor(), Slic3r::Geometry::Transformation::get_scaling_factor_matrix(), and Slic3r::Geometry::Transformation::set_rotation().
Here is the call graph for this function:
Here is the caller graph for this function:| PiecewiseFittedCurve< Dimension, NumberType, CubicCatmulRomKernel< NumberType > > Slic3r::Geometry::fit_catmul_rom_spline | ( | const std::vector< Vec< Dimension, NumberType > > & | observations, |
| std::vector< NumberType > | observation_points, | ||
| std::vector< NumberType > | weights, | ||
| size_t | segments_count, | ||
| size_t | endpoints_level_of_freedom = 0 |
||
| ) |
| PiecewiseFittedCurve< Dimension, NumberType, CubicBSplineKernel< NumberType > > Slic3r::Geometry::fit_cubic_bspline | ( | const std::vector< Vec< Dimension, NumberType > > & | observations, |
| std::vector< NumberType > | observation_points, | ||
| std::vector< NumberType > | weights, | ||
| size_t | segments_count, | ||
| size_t | endpoints_level_of_freedom = 0 |
||
| ) |
| PiecewiseFittedCurve< Dimension, NumberType, Kernel > Slic3r::Geometry::fit_curve | ( | const std::vector< Vec< Dimension, NumberType > > & | observations, |
| const std::vector< NumberType > & | observation_points, | ||
| const std::vector< NumberType > & | weights, | ||
| size_t | segments_count, | ||
| size_t | endpoints_level_of_freedom | ||
| ) |
References floor(), segment(), and sqrt().
Here is the call graph for this function:| PiecewiseFittedCurve< Dimension, NumberType, LinearKernel< NumberType > > Slic3r::Geometry::fit_linear_spline | ( | const std::vector< Vec< Dimension, NumberType > > & | observations, |
| std::vector< NumberType > | observation_points, | ||
| std::vector< NumberType > | weights, | ||
| size_t | segments_count, | ||
| size_t | endpoints_level_of_freedom = 0 |
||
| ) |
| PolynomialCurve< Dimension, NumberType > Slic3r::Geometry::fit_polynomial | ( | const std::vector< Vec< Dimension, NumberType > > & | observations, |
| const std::vector< NumberType > & | observation_points, | ||
| const std::vector< NumberType > & | weights, | ||
| size_t | order | ||
| ) |
References sqrt().
Here is the call graph for this function:References Slic3r::Line::a, and Slic3r::Line::b.
|
inline |
References Slic3r::l2().
Referenced by Slic3r::Voronoi::detail::line_point_equal_distance_points(), Slic3r::Voronoi::detail::point_segment_dr_dl_thresholds(), Slic3r::Voronoi::detail::point_segment_skeleton_thresholds(), ray_point_distance(), ray_point_distance(), ray_point_distance_squared(), and ray_point_distance_squared().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlinestatic |
References Slic3r::Arachne::PolygonsSegmentIndex::from(), Slic3r::Arachne::VoronoiUtils::getSourcePoint(), Slic3r::Arachne::VoronoiUtils::getSourceSegment(), make_linef(), Slic3r::Arachne::PolygonsSegmentIndex::to(), and to_cgal_point().
Referenced by orientation_of_two_edges().
Here is the call graph for this function:
Here is the caller graph for this function:| bool Slic3r::Geometry::inside_convex_polygon | ( | const std::pair< std::vector< Vec2d >, std::vector< Vec2d > > & | top_bottom_decomposition, |
| const Vec2d & | pt | ||
| ) |
References Slic3r::cross2().
Referenced by Slic3r::BuildVolume::all_paths_inside_vertices_and_normals_interleaved(), and Slic3r::BuildVolume::object_state().
Here is the call graph for this function:
Here is the caller graph for this function:References orient(), ORIENTATION_CCW, ORIENTATION_COLINEAR, and Slic3r::MultiPoint::points.
Referenced by Slic3r::ExPolygonWithOffset::ExPolygonWithOffset().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlinestatic |
Referenced by check_if_three_edges_are_ccw(), and orientation_of_two_edges().
Here is the caller graph for this function:References is_rotation_ninety_degrees().
Here is the call graph for this function:
|
inline |
References PI.
Referenced by Slic3r::GUI::Selection::bake_transform_if_needed(), and is_rotation_ninety_degrees().
Here is the caller graph for this function:| bool Slic3r::Geometry::liang_barsky_line_clipping | ( | const Eigen::Matrix< T, 2, 1, Eigen::DontAlign > & | x0src, |
| const Eigen::Matrix< T, 2, 1, Eigen::DontAlign > & | x1src, | ||
| const BoundingBoxBase< Eigen::Matrix< T, 2, 1, Eigen::DontAlign > > & | bbox, | ||
| Eigen::Matrix< T, 2, 1, Eigen::DontAlign > & | x0clip, | ||
| Eigen::Matrix< T, 2, 1, Eigen::DontAlign > & | x1clip | ||
| ) |
References liang_barsky_line_clipping().
Here is the call graph for this function:
|
inline |
References liang_barsky_line_clipping_interval().
Referenced by liang_barsky_line_clipping(), and Slic3r::Voronoi::offset().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Referenced by liang_barsky_line_clipping(), and Slic3r::line_rounded_thick_segment_collision().
Here is the caller graph for this function:| double Slic3r::Geometry::linint | ( | double | value, |
| double | oldmin, | ||
| double | oldmax, | ||
| double | newmin, | ||
| double | newmax | ||
| ) |
Referenced by arrange().
Here is the caller graph for this function:Referenced by get_parabolic_segment().
Here is the caller graph for this function:
|
inline |
References dist(), and project_point_to_segment().
Here is the call graph for this function:
|
inlinestatic |
References ORIENTATION_CCW, ORIENTATION_COLINEAR, and ORIENTATION_CW.
Referenced by convex_hull(), convex_hull(), and is_ccw().
Here is the caller graph for this function:
|
inlinestatic |
References Slic3r::Line::a, Slic3r::Linef::a, Slic3r::Line::b, Slic3r::Geometry::ParabolicSegment::directrix, Slic3r::Geometry::ParabolicSegment::focus, get_parabolic_segment(), is_equal(), Slic3r::Geometry::ParabolicSegment::is_focus_on_left, Slic3r::Geometry::ParabolicSegment::segment, and to_cgal_point().
Referenced by check_if_three_edges_are_ccw().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Referenced by measure_edge_thickness().
Here is the caller graph for this function:| T Slic3r::Geometry::rad2deg | ( | T | angle | ) |
References Slic3r::angle(), and PI.
Referenced by Slic3r::BridgeDetector::detect_angle(), Slic3r::GUI::Camera::get_fov(), Slic3r::GUI::GLGizmoCut3D::get_tooltip(), Slic3r::GUI::GLGizmoRotate::get_tooltip(), Slic3r::GUI::GLGizmoMeasure::on_render_input_window(), Slic3r::GUI::Plater::priv::on_wipetower_rotated(), Slic3r::GUI::GLGizmoMeasure::render_dimensioning(), Slic3r::TriangleMesh::rotate(), Slic3r::GUI::Camera::rotate_on_sphere(), and Slic3r::GUI::Camera::update_zenit().
Here is the call graph for this function:
Here is the caller graph for this function:| int Slic3r::Geometry::ray_circle_intersections | ( | T | r, |
| T | a, | ||
| T | b, | ||
| T | c, | ||
| std::pair< Eigen::Matrix< T, 2, 1, Eigen::DontAlign >, Eigen::Matrix< T, 2, 1, Eigen::DontAlign > > & | out | ||
| ) |
References SCALED_EPSILON.
| int Slic3r::Geometry::ray_circle_intersections_r2_lv2_c | ( | T | r2, |
| T | a, | ||
| T | b, | ||
| T | lv2, | ||
| T | c, | ||
| std::pair< Eigen::Matrix< T, 2, 1, Eigen::DontAlign >, Eigen::Matrix< T, 2, 1, Eigen::DontAlign > > & | out | ||
| ) |
References sqrt().
Referenced by Slic3r::line_rounded_thick_segment_collision().
Here is the call graph for this function:
Here is the caller graph for this function:References foot_pt().
Here is the call graph for this function:
|
inline |
| double Slic3r::Geometry::rotation_diff_z | ( | const Transform3d & | trafo_from, |
| const Transform3d & | trafo_to | ||
| ) |
References EPSILON, and Eigen::Transform< _Scalar, _Dim, _Mode, _Options >::linear().
Referenced by Slic3r::PrintObject::PrintObject(), Slic3r::Print::sequential_print_horizontal_clearance_valid(), Slic3r::sla_instances(), and Slic3r::GUI::GLCanvas3D::update_sequential_clearance().
Here is the call graph for this function:
Here is the caller graph for this function:| Transform3d Slic3r::Geometry::rotation_transform | ( | const Vec3d & | rotation | ) |
References rotation_transform(), and Slic3r::transform().
Here is the call graph for this function:| void Slic3r::Geometry::rotation_transform | ( | Transform3d & | transform, |
| const Vec3d & | rotation | ||
| ) |
References Eigen::Transform< double, 3, Eigen::Affine, Eigen::DontAlign >::Identity(), and Slic3r::transform().
Referenced by Slic3r::GUI::GLCanvas3D::_render_sla_slices(), Slic3r::GUI::GLGizmoCut3D::dragging_grabber_xy(), Slic3r::GUI::GLGizmoCut3D::flip_cut_plane(), Slic3r::GUI::GLGizmoRotate::local_transform(), Slic3r::GUI::CoordAxes::render(), Slic3r::GUI::GLGizmoBase::Grabber::render(), Slic3r::GUI::GLGizmoCut3D::render_cut_plane_grabbers(), Slic3r::GUI::GLGizmoSlaSupports::render_points(), Slic3r::GUI::GLGizmoCut3D::render_rotation_snapping(), Slic3r::GUI::Selection::render_sidebar_position_hints(), Slic3r::GUI::Selection::render_sidebar_rotation_hints(), Slic3r::GUI::Selection::render_sidebar_scale_hints(), Slic3r::GUI::Selection::rotate(), rotation_transform(), Slic3r::Geometry::Transformation::set_rotation(), Slic3r::Geometry::Transformation::set_rotation(), Slic3r::GUI::GCodeViewer::SequentialView::Marker::set_world_position(), Slic3r::GUI::GLGizmoCut3D::update_raycasters_for_picking_transform(), and Slic3r::GUI::GLCanvas3D::update_sequential_clearance().
Here is the call graph for this function:
Here is the caller graph for this function:| Eigen::Quaterniond Slic3r::Geometry::rotation_xyz_diff | ( | const Vec3d & | rot_xyz_from, |
| const Vec3d & | rot_xyz_to | ||
| ) |
Referenced by Slic3r::GUI::is_rotation_xy_synchronized().
Here is the caller graph for this function:| Transform3d Slic3r::Geometry::scale_transform | ( | const Vec3d & | scale | ) |
References scale(), scale_transform(), and Slic3r::transform().
Here is the call graph for this function:| Transform3d Slic3r::Geometry::scale_transform | ( | double | scale | ) |
| void Slic3r::Geometry::scale_transform | ( | Transform3d & | transform, |
| const Vec3d & | scale | ||
| ) |
References Eigen::Transform< double, 3, Eigen::Affine, Eigen::DontAlign >::Identity(), scale(), Slic3r::Linef3::scale(), and Slic3r::transform().
Here is the call graph for this function:| void Slic3r::Geometry::scale_transform | ( | Transform3d & | transform, |
| double | scale | ||
| ) |
References scale(), scale_transform(), and Slic3r::transform().
Referenced by Slic3r::GUI::GLCanvas3D::_render_sla_slices(), Slic3r::GUI::GLGizmoCut3D::is_conflict_for_connector(), Slic3r::GUI::GCodeViewer::load_toolpaths(), Slic3r::GUI::GLGizmoMeasure::on_render(), Slic3r::GUI::GCodeViewer::COG::render(), Slic3r::GUI::GLGizmoBase::Grabber::render(), Slic3r::GUI::GLGizmoCut3D::render_connectors(), Slic3r::GUI::GLGizmoPainterBase::render_cursor_circle(), Slic3r::GUI::GLGizmoPainterBase::render_cursor_sphere(), Slic3r::GUI::GLGizmoCut3D::render_cut_plane_grabbers(), Slic3r::GUI::GLGizmoMeasure::render_dimensioning(), Slic3r::GUI::GLGizmoCut3D::render_grabber_connection(), Slic3r::GUI::GLGizmoHollow::render_points(), Slic3r::GUI::GLGizmoSlaSupports::render_points(), Slic3r::Geometry::Transformation::reset_skew(), Slic3r::GUI::Selection::scale_and_translate(), scale_transform(), scale_transform(), scale_transform(), Slic3r::Geometry::Transformation::set_scaling_factor(), Slic3r::GUI::GLGizmoHollow::update_hole_raycasters_for_picking_transform(), Slic3r::GUI::GLGizmoFlatten::update_planes(), Slic3r::GUI::GLGizmoSlaSupports::update_point_raycasters_for_picking_transform(), and Slic3r::GUI::GLGizmoCut3D::update_raycasters_for_picking_transform().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
References EPSILON.
|
inline |
References Slic3r::cross2().
Referenced by Slic3r::EdgeGrid::Grid::has_intersecting_edges(), Slic3r::EdgeGrid::Grid::intersecting_edges(), and Slic3r::FirstIntersectionVisitor::operator()().
Here is the call graph for this function:
Here is the caller graph for this function:| void Slic3r::Geometry::simplify_polygons | ( | const Polygons & | polygons, |
| double | tolerance, | ||
| Polygons * | retval | ||
| ) |
References Slic3r::MultiPoint::douglas_peucker(), Slic3r::simplify_polygons(), and Slic3r::to_polyline().
Referenced by Slic3r::Print::_make_skirt().
Here is the call graph for this function:
Here is the caller graph for this function:| CircleSq< Vector > Slic3r::Geometry::smallest_enclosing_circle2_welzl | ( | const Points & | points, |
| const typename Vector::Scalar | epsilon | ||
| ) |
References Slic3r::Geometry::CircleSq< Vector >::center, Slic3r::Geometry::CircleSq< Vector >::contains(), Slic3r::Geometry::CircleSq< Vector >::inflated(), and Slic3r::Geometry::CircleSq< Vector >::radius2.
Here is the call graph for this function:References SCALED_EPSILON.
| Circle< Vector > Slic3r::Geometry::smallest_enclosing_circle_welzl | ( | const Points & | points, |
| const typename Vector::Scalar | epsilon | ||
| ) |
Referenced by Slic3r::BuildVolume::BuildVolume(), and Slic3r::GUI::Selection::scale_to_fit_print_volume().
Here is the caller graph for this function:| Vec< 3, T > Slic3r::Geometry::spheric_to_dir | ( | const Pair & | v | ) |
References spheric_to_dir().
Here is the call graph for this function:| Vec< 3, T > Slic3r::Geometry::spheric_to_dir | ( | double | polar, |
| double | azimuth | ||
| ) |
References spheric_to_dir().
Referenced by spheric_to_dir(), and spheric_to_dir().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlinestatic |
|
inlinestatic |
Referenced by get_parabolic_segment(), Slic3r::Geometry::VoronoiUtilsCgal::is_voronoi_diagram_planar_intersection(), and orientation_of_two_edges().
Here is the caller graph for this function:
|
inlinestatic |
| bool Slic3r::Geometry::trafos_differ_in_rotation_by_z_and_mirroring_by_xy_only | ( | const Transform3d & | t1, |
| const Transform3d & | t2 | ||
| ) |
References EPSILON, Eigen::Transform< _Scalar, _Dim, _Mode, _Options >::matrix(), and Eigen::Transform< _Scalar, _Dim, _Mode, _Options >::translation().
Referenced by trafos_differ_in_rotation_by_z_and_mirroring_by_xy_only().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
References Slic3r::Geometry::Transformation::get_matrix(), and trafos_differ_in_rotation_by_z_and_mirroring_by_xy_only().
Here is the call graph for this function:| Transform3d Slic3r::Geometry::transform3d_from_string | ( | const std::string & | transform_str | ) |
References Eigen::Transform< double, 3, Eigen::Affine, Eigen::DontAlign >::Identity(), Slic3r::is_decimal_separator_point(), and Slic3r::transform().
Referenced by Slic3r::_3MF_Importer::_generate_volumes(), and Slic3r::AMFParserContext::endElement().
Here is the call graph for this function:
Here is the caller graph for this function:| Transform3d Slic3r::Geometry::translation_transform | ( | const Vec3d & | translation | ) |
References Slic3r::transform(), and translation_transform().
Here is the call graph for this function:| void Slic3r::Geometry::translation_transform | ( | Transform3d & | transform, |
| const Vec3d & | translation | ||
| ) |
References Eigen::Transform< double, 3, Eigen::Affine, Eigen::DontAlign >::Identity(), and Slic3r::transform().
Referenced by Slic3r::GUI::GLGizmoCut3D::PartSelection::PartSelection(), Slic3r::GUI::GLCanvas3D::_render_sla_slices(), Slic3r::GUI::GLGizmoCut3D::dragging_grabber_z(), Slic3r::GUI::GLGizmoCut3D::get_cut_matrix(), Slic3r::Geometry::Transformation::get_offset_matrix(), Slic3r::GUI::init_torus_data(), Slic3r::GUI::GLGizmoCut3D::is_conflict_for_connector(), Slic3r::GUI::GLGizmoCut3D::is_outside_of_cut_contour(), Slic3r::GUI::GCodeViewer::load_toolpaths(), Slic3r::GUI::GLGizmoMove3D::local_transform(), Slic3r::GUI::GLGizmoFlatten::on_register_raycasters_for_picking(), Slic3r::GUI::GLGizmoFlatten::on_render(), Slic3r::GUI::GLGizmoMeasure::on_render(), Slic3r::GUI::Plater::priv::reload_from_disk(), Slic3r::GLVolume::SinkingContours::render(), Slic3r::GUI::GCodeViewer::COG::render(), Slic3r::GUI::CoordAxes::render(), Slic3r::GUI::GLGizmoCut3D::PartSelection::render(), Slic3r::GUI::GLGizmoBase::Grabber::render(), Slic3r::GUI::GLGizmoCut3D::render_connectors(), Slic3r::GUI::GLGizmoPainterBase::render_cursor_circle(), Slic3r::GUI::GLGizmoPainterBase::render_cursor_sphere(), Slic3r::GUI::GLGizmoCut3D::render_cut_plane(), Slic3r::GUI::GLGizmoCut3D::render_cut_plane_grabbers(), Slic3r::GUI::GLGizmoMeasure::render_dimensioning(), Slic3r::GUI::Bed3D::render_model(), Slic3r::GUI::GLGizmoHollow::render_points(), Slic3r::GUI::GLGizmoSlaSupports::render_points(), Slic3r::GUI::GLGizmoCut3D::render_rotation_snapping(), Slic3r::GUI::Selection::render_sidebar_hints(), Slic3r::GUI::Selection::render_sidebar_scale_hints(), Slic3r::GUI::Selection::rotate(), Slic3r::GUI::GLGizmoCut3D::rotate_vec3d_around_plane_center(), Slic3r::CLI::run(), Slic3r::GUI::Selection::scale_and_translate(), Slic3r::GUI::GCodeViewer::SequentialView::Marker::set_world_position(), Slic3r::GUI::GLGizmoCut3D::PartSelection::toggle_selection(), Slic3r::GUI::Selection::transform_instance_relative(), Slic3r::GUI::Selection::transform_volume_relative(), Slic3r::GUI::GLGizmoCut3D::transformed_bounding_box(), Slic3r::GUI::Selection::translate(), Slic3r::GUI::Selection::translate(), translation_transform(), Slic3r::GUI::GLGizmoHollow::update_hole_raycasters_for_picking_transform(), Slic3r::GUI::GLGizmoMeasure::update_if_needed(), Slic3r::GUI::GLGizmoSlaSupports::update_point_raycasters_for_picking_transform(), Slic3r::GUI::GLGizmoCut3D::update_raycasters_for_picking_transform(), and Slic3r::GUI::GLCanvas3D::update_sequential_clearance().
Here is the call graph for this function:
Here is the caller graph for this function: