OrcaSlicer latest
OrcaSlicer
Loading...
Searching...
No Matches
Measure.cpp File Reference
#include "Point.hpp"
#include "TriangleMesh.hpp"
#include "libslic3r/libslic3r.h"
#include "Measure.hpp"
#include "MeasureUtils.hpp"
#include "libslic3r/Geometry/Circle.hpp"
#include "libslic3r/SurfaceMesh.hpp"
#include <cstdlib>
#include <limits>
#include <array>
#include <cstddef>
#include <algorithm>
#include <cassert>
#include <boost/container/small_vector.hpp>
#include <Eigen/Geometry>
#include <cmath>
#include <math.h>
#include <iterator>
#include <memory>
#include <iostream>
#include <Eigen/Core>
#include <cstdint>
#include <numeric>
#include <optional>
#include <set>
#include <tbb/parallel_for.h>
#include <tuple>
#include <vector>
#include <utility>
Include dependency graph for Measure.cpp:

Go to the source code of this file.

Classes

class  Slic3r::Measure::MeasuringImpl
struct  Slic3r::Measure::MeasuringImpl::PlaneData

Namespaces

namespace  Slic3r
 |/ Copyright (c) Prusa Research 2020 - 2023 Enrico Turri @enricoturri1966 |/ |/ PrusaSlicer is released under the terms of the AGPLv3 or higher |/
namespace  Slic3r::Measure

Macros

#define DEBUG_EXTRACT_ALL_FEATURES_AT_ONCE   0

Functions

bool Slic3r::Measure::get_point_projection_to_plane (const Vec3d &pt, const Vec3d &plane_origin, const Vec3d &plane_normal, Vec3d &intersection_pt)
Vec3d Slic3r::Measure::get_one_point_in_plane (const Vec3d &plane_origin, const Vec3d &plane_normal)
static std::tuple< Vec3d, double, double > Slic3r::Measure::get_center_and_radius (const std::vector< Vec3d > &points, const Transform3d &trafo, const Transform3d &trafo_inv)
static std::array< Vec3d, 3 > Slic3r::Measure::orthonormal_basis (const Vec3d &v)
static AngleAndEdges Slic3r::Measure::angle_edge_edge (const std::pair< Vec3d, Vec3d > &e1, const std::pair< Vec3d, Vec3d > &e2)
static AngleAndEdges Slic3r::Measure::angle_edge_plane (const std::pair< Vec3d, Vec3d > &e, const std::tuple< int, Vec3d, Vec3d > &p)
static AngleAndEdges Slic3r::Measure::angle_plane_plane (const std::tuple< int, Vec3d, Vec3d > &p1, const std::tuple< int, Vec3d, Vec3d > &p2)
MeasurementResult Slic3r::Measure::get_measurement (const SurfaceFeature &a, const SurfaceFeature &b, bool deal_circle_result)
bool Slic3r::Measure::can_set_xyz_distance (const SurfaceFeature &a, const SurfaceFeature &b)
AssemblyAction Slic3r::Measure::get_assembly_action (const SurfaceFeature &a, const SurfaceFeature &b)

Variables

constexpr double Slic3r::Measure::feature_hover_limit = 0.5

Class Documentation

◆ Slic3r::Measure::MeasuringImpl::PlaneData

struct Slic3r::Measure::MeasuringImpl::PlaneData
Collaboration diagram for Slic3r::Measure::MeasuringImpl::PlaneData:
Class Members
float area
vector< vector< Vec3d > > borders
vector< int > facets
bool features_extracted = false
Vec3d normal
vector< SurfaceFeature > surface_features

Macro Definition Documentation

◆ DEBUG_EXTRACT_ALL_FEATURES_AT_ONCE

#define DEBUG_EXTRACT_ALL_FEATURES_AT_ONCE   0