OrcaSlicer latest
OrcaSlicer
Loading...
Searching...
No Matches
RaycastManager.hpp File Reference
#include <cstddef>
#include <Eigen/Core>
#include <algorithm>
#include <memory>
#include <optional>
#include <utility>
#include <vector>
#include "libslic3r/AABBMesh.hpp"
#include "libslic3r/Point.hpp"
#include "libslic3r/ObjectID.hpp"
#include "libslic3r/Model.hpp"
Include dependency graph for RaycastManager.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Slic3r::GUI::RaycastManager
 Cast rays from camera to scene Used for find hit point on model volume under mouse cursor. More...
class  Slic3r::GUI::RaycastManager::ISkip
 Interface for identify allowed volumes to cast rays. More...
struct  Slic3r::GUI::RaycastManager::SurfacePoint< T >
struct  Slic3r::GUI::RaycastManager::Hit
struct  Slic3r::GUI::RaycastManager::ClosePoint
class  Slic3r::GUI::RaycastManager::SkipVolume
class  Slic3r::GUI::RaycastManager::AllowVolumes

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::GUI

Functions

RaycastManager::Meshes Slic3r::GUI::create_meshes (GLCanvas3D &canvas, const RaycastManager::AllowVolumes &condition)
 Use scene Raycasters and prepare data for actualize RaycasterManager.
std::optional< RaycastManager::Hit > Slic3r::GUI::ray_from_camera (const RaycastManager &raycaster, const Vec2d &mouse_pos, const Camera &camera, const RaycastManager::ISkip *skip)
 Unproject on mesh by Mesh raycasters.
RaycastManager::AllowVolumes Slic3r::GUI::create_condition (const ModelVolumePtrs &volumes, const ObjectID &disallowed_volume_id)
 Create condition to allowe only parts from volumes without one given.

Class Documentation

◆ Slic3r::GUI::RaycastManager::SurfacePoint

struct Slic3r::GUI::RaycastManager::SurfacePoint
template<typename T>
struct Slic3r::GUI::RaycastManager::SurfacePoint< T >
Inheritance diagram for Slic3r::GUI::RaycastManager::SurfacePoint< T >:
Class Members
typedef Matrix< T, 3, 1, DontAlign > Vec3 Eigen::Matrix<T, 3, 1, Eigen::DontAlign>
Class Members
Vec3 normal = Vec3::UnitZ()
Vec3 position = Vec3::Zero()

◆ Slic3r::GUI::RaycastManager::ClosePoint

struct Slic3r::GUI::RaycastManager::ClosePoint
Collaboration diagram for Slic3r::GUI::RaycastManager::ClosePoint:
Class Members
Vec3d point
double squared_distance
TrKey tr_key