#include </home/runner/work/OrcaSlicer/OrcaSlicer/src/slic3r/GUI/Camera.hpp>
Public Types | |
| enum class | EType : unsigned char { Unknown , Ortho , Perspective , Num_types } |
| enum class | ViewAngleType : unsigned char { Iso = 0 , Top_Front , Left , Right , Top , Bottom , Front , Rear , Count_ViewAngleType , Top_Plate } |
Public Member Functions | |
| Camera () | |
| EType | get_type () const |
| std::string | get_type_as_string () const |
| void | set_type (EType type) |
| void | set_type (const std::string &type) |
| void | select_next_type () |
| void | auto_type (EType preferred_type) |
| void | enable_update_config_on_type_change (bool enable) |
| void | translate (const Vec3d &displacement) |
| const Vec3d & | get_target () |
| void | set_target (const Vec3d &target) |
| double | get_distance () |
| double | get_gui_scale () const |
| float | get_zenit () const |
| double | get_zoom () const |
| double | get_inv_zoom () const |
| void | update_zoom (double delta_zoom) |
| void | set_zoom (double zoom) |
| const BoundingBoxf3 & | get_scene_box () const |
| void | set_scene_box (const BoundingBoxf3 &box) |
| void | select_view (const std::string &direction) |
| void | select_view (ViewAngleType type) |
| const std::array< int, 4 > & | get_viewport () const |
| const Transform3d & | get_view_matrix () const |
| const Transform3d & | get_projection_matrix () const |
| const Eigen::Quaterniond & | get_view_rotation () const |
| Vec3d | get_dir_right () const |
| Vec3d | get_dir_up () const |
| Vec3d | get_dir_forward () const |
| Vec3d | get_position () const |
| double | get_near_z () const |
| double | get_far_z () const |
| const std::pair< double, double > & | get_z_range () const |
| double | get_near_left () const |
| double | get_near_right () const |
| double | get_near_top () const |
| double | get_near_bottom () const |
| double | get_near_width () const |
| double | get_near_height () const |
| double | get_fov () const |
| void | set_viewport (int x, int y, unsigned int w, unsigned int h) |
| void | apply_viewport () const |
| void | apply_projection (const BoundingBoxf3 &box, double near_z=-1.0, double far_z=-1.0) |
| void | apply_projection (double left, double right, double bottom, double top, double near_z, double far_z) |
| void | zoom_to_box (const BoundingBoxf3 &box, double margin_factor=DefaultZoomToBoxMarginFactor) |
| void | zoom_to_volumes (const GLVolumePtrs &volumes, double margin_factor=DefaultZoomToVolumesMarginFactor) |
| void | translate_world (const Vec3d &displacement) |
| void | rotate_on_sphere_with_target (double delta_azimut_rad, double delta_zenit_rad, bool apply_limits, Vec3d target) |
| void | rotate_local_with_target (const Vec3d &rotation_rad, Vec3d target) |
| void | rotate_on_sphere (double delta_azimut_rad, double delta_zenit_rad, bool apply_limits) |
| void | rotate_local_around_target (const Vec3d &rotation_rad) |
| void | set_rotation (const Transform3d &rotation) |
| bool | is_looking_downward () const |
| bool | is_looking_front () const |
| void | recover_from_free_camera () |
| void | load_camera_view (Camera &cam) |
| void | look_at (const Vec3d &position, const Vec3d &target, const Vec3d &up) |
| double | max_zoom () const |
| double | min_zoom () const |
Public Attributes | |
| bool | requires_zoom_to_bed { false } |
| bool | requires_zoom_to_volumes { false } |
| int | requires_zoom_to_plate { REQUIRES_ZOOM_TO_PLATE_IDLE } |
Static Public Attributes | |
| static const double | DefaultDistance = 1000.0 |
| static const double | DefaultZoomToBoxMarginFactor = 1.025 |
| static const double | DefaultZoomToVolumesMarginFactor = 1.025 |
| static double | FrustrumMinZRange = 50.0 |
| static double | FrustrumMinNearZ = 100.0 |
| static double | FrustrumZMargin = 10.0 |
| static double | MaxFovDeg = 60.0 |
| static double | ZoomUnit = 0.1 |
Private Member Functions | |
| std::pair< double, double > | calc_tight_frustrum_zs_around (const BoundingBoxf3 &box) |
| double | calc_zoom_to_bounding_box_factor (const BoundingBoxf3 &box, double margin_factor=DefaultZoomToBoxMarginFactor) const |
| double | calc_zoom_to_volumes_factor (const GLVolumePtrs &volumes, Vec3d ¢er, double margin_factor=DefaultZoomToVolumesMarginFactor) const |
| void | set_distance (double distance) |
| void | set_default_orientation () |
| Vec3d | validate_target (const Vec3d &target) const |
| void | update_zenit () |
| void | update_target () |
Private Attributes | |
| bool | m_prevent_auto_type = true |
| EType | m_type { EType::Perspective } |
| bool | m_update_config_on_type_change_enabled { false } |
| Vec3d | m_target { Vec3d::Zero() } |
| float | m_zenit { 45.0f } |
| double | m_zoom { 1.0 } |
| double | m_distance { DefaultDistance } |
| double | m_gui_scale { 1.0 } |
| std::array< int, 4 > | m_viewport |
| Transform3d | m_view_matrix { Transform3d::Identity() } |
| Eigen::Quaterniond | m_view_rotation { 1.0, 0.0, 0.0, 0.0 } |
| Transform3d | m_projection_matrix { Transform3d::Identity() } |
| std::pair< double, double > | m_frustrum_zs |
| BoundingBoxf3 | m_scene_box |
|
strong |
| Enumerator | |
|---|---|
| Unknown | |
| Ortho | |
| Perspective | |
| Num_types | |
|
strong |
|
inline |
References set_default_orientation().
Referenced by load_camera_view().
| void Slic3r::GUI::Camera::apply_projection | ( | const BoundingBoxf3 & | box, |
| double | near_z = -1.0, | ||
| double | far_z = -1.0 ) |
References apply_projection(), calc_tight_frustrum_zs_around(), FrustrumMinNearZ, get_inv_zoom(), m_distance, m_frustrum_zs, m_gui_scale, m_type, m_viewport, Ortho, Perspective, and scale().
Referenced by Slic3r::GUI::GLCanvas3D::_rectangular_selection_picking_pass(), and apply_projection().
| void Slic3r::GUI::Camera::apply_projection | ( | double | left, |
| double | right, | ||
| double | bottom, | ||
| double | top, | ||
| double | near_z, | ||
| double | far_z ) |
References m_projection_matrix, m_type, Ortho, and Perspective.
| void Slic3r::GUI::Camera::apply_viewport | ( | ) | const |
References glsafe, glViewport, and m_viewport.
Referenced by Slic3r::GUI::GLCanvas3D::_rectangular_selection_picking_pass().
| void Slic3r::GUI::Camera::auto_type | ( | EType | preferred_type | ) |
References m_prevent_auto_type, Perspective, and set_type().
Referenced by Slic3r::GUI::Mouse3DController::State::apply(), Slic3r::GUI::select_iso_view(), and select_view().
|
private |
References FrustrumMinNearZ, FrustrumMinZRange, FrustrumZMargin, m_distance, m_view_matrix, Slic3r::BoundingBoxBase< PointType, std::vector< PointType > >::max, Slic3r::BoundingBoxBase< PointType, std::vector< PointType > >::min, set_distance(), and Slic3r::BoundingBoxf3::transformed().
Referenced by apply_projection().
|
private |
References Slic3r::BoundingBox3Base< PointType >::center(), get_dir_forward(), get_dir_right(), get_dir_up(), m_viewport, Slic3r::BoundingBoxBase< PointType, std::vector< PointType > >::max, Slic3r::BoundingBox3Base< PointType >::max_size(), and Slic3r::BoundingBoxBase< PointType, std::vector< PointType > >::min.
Referenced by min_zoom(), and zoom_to_box().
|
private |
References Slic3r::BoundingBox3Base< PointType >::center(), Slic3r::center(), Slic3r::TriangleMesh::convex_hull(), get_dir_forward(), get_dir_right(), get_dir_up(), Slic3r::TriangleMesh::its, m_viewport, Slic3r::BoundingBox3Base< PointType >::merge(), and Slic3r::transform().
Referenced by zoom_to_volumes().
|
inline |
References m_update_config_on_type_change_enabled.
|
inline |
References m_view_matrix.
Referenced by calc_zoom_to_bounding_box_factor(), calc_zoom_to_volumes_factor(), Slic3r::GUI::face_selected_volume_to_camera(), Slic3r::GUI::MeshRaycaster::get_unobscured_idxs(), Slic3r::GUI::SceneRaycaster::hit(), is_looking_downward(), Slic3r::GUI::GLGizmoCut3D::is_looking_forward(), Slic3r::GUI::pan_camera(), Slic3r::GUI::CameraUtils::ray_from_ortho_screen_pos(), Slic3r::GUI::GLGizmoCut3D::PartSelection::render(), Slic3r::GUI::DesignSketchTool::render_base_pick(), Slic3r::GUI::DesignSketchTool::render_body_edges(), Slic3r::GUI::DesignSketchTool::render_cut_gizmo(), Slic3r::GUI::DesignSketchTool::render_datum_gizmo(), Slic3r::GUI::DesignSketchTool::render_datum_planes(), Slic3r::GUI::DesignSketchTool::render_extrude_gizmo(), Slic3r::GUI::DesignSketchTool::render_face_outline(), Slic3r::GUI::DesignSketchTool::render_fillet_gizmo(), Slic3r::GUI::DesignSketchTool::render_helix_gizmo(), Slic3r::GUI::DesignSketchTool::render_hole_gizmo(), Slic3r::GUI::DesignSketchTool::render_mate_connectors(), Slic3r::GUI::DesignSketchTool::render_mate_face(), Slic3r::GUI::DesignSketchTool::render_move_gizmo(), Slic3r::GUI::DesignSketchTool::render_reference_axes(), Slic3r::GUI::DesignSketchTool::render_rib_gizmo(), Slic3r::GUI::DesignSketchTool::render_shell_gizmo(), Slic3r::GUI::DesignSketchTool::render_solid_sel(), Slic3r::GUI::DesignSketchTool::render_thread_gizmo(), Slic3r::GUI::DesignSketchTool::render_view_helpers(), Slic3r::GUI::GLGizmoTextureDisplacement::select_visible_faces(), set_distance(), update_target(), and update_zenit().
|
inline |
References m_view_matrix.
Referenced by Slic3r::GUI::Mouse3DController::State::apply(), calc_zoom_to_bounding_box_factor(), calc_zoom_to_volumes_factor(), Slic3r::GUI::pan_camera(), recover_from_free_camera(), Slic3r::GUI::DesignSketchTool::render_cut_gizmo(), Slic3r::GUI::DesignSketchTool::render_datum_gizmo(), Slic3r::GUI::DesignSketchTool::render_extrude_gizmo(), Slic3r::GUI::DesignSketchTool::render_fillet_gizmo(), Slic3r::GUI::DesignSketchTool::render_helix_gizmo(), Slic3r::GUI::DesignSketchTool::render_hole_gizmo(), Slic3r::GUI::DesignSketchTool::render_mate_connectors(), Slic3r::GUI::DesignSketchTool::render_mate_face(), Slic3r::GUI::DesignSketchTool::render_move_gizmo(), Slic3r::GUI::DesignSketchTool::render_reference_axes(), Slic3r::GUI::DesignSketchTool::render_rib_gizmo(), Slic3r::GUI::DesignSketchTool::render_shell_gizmo(), Slic3r::GUI::DesignSketchTool::render_solid_sel(), Slic3r::GUI::DesignSketchTool::render_thread_gizmo(), rotate_on_sphere(), and rotate_on_sphere_with_target().
|
inline |
References m_view_matrix.
Referenced by Slic3r::GUI::Mouse3DController::State::apply(), calc_zoom_to_bounding_box_factor(), calc_zoom_to_volumes_factor(), is_looking_front(), Slic3r::GUI::pan_camera(), Slic3r::GUI::DesignSketchTool::render_cut_gizmo(), Slic3r::GUI::DesignSketchTool::render_datum_gizmo(), Slic3r::GUI::DesignSketchTool::render_datum_planes(), Slic3r::GUI::DesignSketchTool::render_extrude_gizmo(), Slic3r::GUI::DesignSketchTool::render_fillet_gizmo(), Slic3r::GUI::DesignSketchTool::render_helix_gizmo(), Slic3r::GUI::DesignSketchTool::render_hole_gizmo(), Slic3r::GUI::DesignSketchTool::render_mate_connectors(), Slic3r::GUI::DesignSketchTool::render_mate_face(), Slic3r::GUI::DesignSketchTool::render_move_gizmo(), Slic3r::GUI::DesignSketchTool::render_reference_axes(), Slic3r::GUI::DesignSketchTool::render_rib_gizmo(), Slic3r::GUI::DesignSketchTool::render_shell_gizmo(), Slic3r::GUI::DesignSketchTool::render_solid_sel(), Slic3r::GUI::DesignSketchTool::render_thread_gizmo(), and Slic3r::GUI::DesignSketchTool::render_view_helpers().
|
inline |
References get_position(), and get_target().
Referenced by Slic3r::GUI::select_iso_view(), and Slic3r::GUI::DesignCanvas::view_normal_to_sketch().
|
inline |
References m_frustrum_zs.
Referenced by Slic3r::GUI::GCodeViewer::render_shells().
| double Slic3r::GUI::Camera::get_fov | ( | ) | const |
References m_projection_matrix, m_type, Ortho, Perspective, and Slic3r::Geometry::rad2deg().
|
inline |
References m_gui_scale.
|
inline |
References m_zoom.
Referenced by apply_projection(), Slic3r::GUI::GLGizmoMeasure::on_render(), Slic3r::GUI::pan_camera(), Slic3r::GUI::GLGizmoMeasure::render_dimensioning(), and Slic3r::GUI::GCodeViewer::render_toolpaths().
| double Slic3r::GUI::Camera::get_near_bottom | ( | ) | const |
References m_frustrum_zs, m_projection_matrix, m_type, Ortho, and Perspective.
| double Slic3r::GUI::Camera::get_near_height | ( | ) | const |
References m_frustrum_zs, m_projection_matrix, m_type, Ortho, and Perspective.
| double Slic3r::GUI::Camera::get_near_left | ( | ) | const |
References m_frustrum_zs, m_projection_matrix, m_type, Ortho, and Perspective.
| double Slic3r::GUI::Camera::get_near_right | ( | ) | const |
References m_frustrum_zs, m_projection_matrix, m_type, Ortho, and Perspective.
| double Slic3r::GUI::Camera::get_near_top | ( | ) | const |
References m_frustrum_zs, m_projection_matrix, m_type, Ortho, and Perspective.
| double Slic3r::GUI::Camera::get_near_width | ( | ) | const |
References m_frustrum_zs, m_projection_matrix, m_type, Ortho, and Perspective.
|
inline |
References m_frustrum_zs.
Referenced by Slic3r::GUI::GCodeViewer::render_shells().
|
inline |
References m_view_matrix.
Referenced by Slic3r::GUI::face_selected_volume_to_camera(), get_distance(), Slic3r::GUI::GLGizmoMeshBoolean::gizmo_event(), Slic3r::GUI::GLGizmoPainterBase::gizmo_event(), Slic3r::GUI::SceneRaycaster::hit(), Slic3r::GUI::GLGizmoMeasure::on_render(), Slic3r::GUI::pan_camera(), Slic3r::GUI::CameraUtils::ray_from_persp_screen_pos(), recover_from_free_camera(), Slic3r::GUI::DesignSketchTool::render_base_pick(), Slic3r::GUI::GLGizmoTextureDisplacement::render_shaded_preview_mesh(), Slic3r::GUI::GLGizmoTextureDisplacement::select_visible_faces(), Slic3r::GUI::GLGizmoCut3D::PartSelection::toggle_selection(), Slic3r::GUI::GLGizmoBrimEars::unproject_on_mesh2(), Slic3r::GUI::GLGizmoPainterBase::update_raycast_cache(), and update_target().
|
inline |
References m_projection_matrix.
Referenced by Slic3r::GUI::GLGizmoTextureDisplacement::apply_projection_frame(), Slic3r::GUI::DesignSketchTool::hit_test_base_pick(), load_camera_view(), Slic3r::GUI::GLGizmoFlatten::on_render(), Slic3r::GUI::GLGizmoMeasure::on_render(), Slic3r::GUI::GLGizmoMove3D::on_render(), Slic3r::GUI::GLGizmoRotate::on_render(), Slic3r::GUI::GLGizmoScale3D::on_render(), Slic3r::GUI::GLGizmoSimplify::on_render(), Slic3r::GUI::pan_camera(), Slic3r::GUI::CameraUtils::project(), Slic3r::GUI::CameraUtils::ray_from_ortho_screen_pos(), Slic3r::GUI::CameraUtils::ray_from_persp_screen_pos(), Slic3r::GLVolume::SinkingContours::render(), Slic3r::GUI::Bed3D::Axes::render(), Slic3r::GUI::DesignSketchTool::render(), Slic3r::GUI::GCodeViewer::SequentialView::Marker::render(), Slic3r::GUI::GLGizmoBase::Grabber::render(), Slic3r::GUI::GLGizmoCut3D::PartSelection::render(), Slic3r::GUI::TextLinesModel::render(), Slic3r::GUI::GLGizmoTextureDisplacement::render_adjust_texture_gizmo(), Slic3r::GUI::GLGizmoMove3D::render_align_preview(), Slic3r::GUI::Selection::render_bounding_box(), Slic3r::GUI::MeshClipper::render_contour(), Slic3r::GUI::GLGizmoPainterBase::render_cursor_height_range(), Slic3r::GUI::GLGizmoPainterBase::render_cursor_sphere(), Slic3r::GUI::MeshClipper::render_cut(), Slic3r::GUI::GLGizmoCut3D::render_cut_plane(), Slic3r::GUI::GLGizmoMeasure::render_dimensioning(), Slic3r::GUI::Bed3D::render_gravity_arrow(), Slic3r::GUI::PartPlate::render_grid(), Slic3r::GUI::PartPlate::render_icons(), Slic3r::GUI::GLGizmoTextureDisplacement::render_island_overlay(), Slic3r::GUI::PartPlate::render_logo_texture(), Slic3r::GUI::GCodeViewer::render_markers(), Slic3r::GUI::Bed3D::render_model(), Slic3r::GUI::PartPlate::render_only_numbers(), Slic3r::GUI::TriangleSelectorGUI::render_paint_contour(), Slic3r::GUI::GLGizmoTextureDisplacement::render_paint_overlay(), Slic3r::GUI::GLGizmoTextureDisplacement::render_painted_colors(), Slic3r::GUI::GLGizmoTextureDisplacement::render_preview_mesh(), Slic3r::GUI::GLGizmoCut3D::render_rotation_snapping(), Slic3r::GUI::GLGizmoTextureDisplacement::render_seam_overlay(), Slic3r::GUI::GLGizmoTextureDisplacement::render_shaded_preview_mesh(), Slic3r::GUI::GCodeViewer::render_shells(), Slic3r::GUI::Selection::render_sidebar_layers_hints(), Slic3r::GUI::Selection::render_sidebar_position_hints(), Slic3r::GUI::Selection::render_sidebar_rotation_hints(), Slic3r::GUI::Selection::render_sidebar_scale_hints(), Slic3r::GUI::GLGizmoTextureDisplacement::render_subdivide_preview(), Slic3r::GUI::GCodeViewer::render_toolpaths(), Slic3r::GUI::GCodeViewer::render_translucent_toolpaths(), Slic3r::GUI::GLGizmoPainterBase::render_triangles(), Slic3r::GUI::GLGizmoTextureDisplacement::render_uvcheck_mesh(), Slic3r::GUI::GLGizmoTextureDisplacement::render_wireframe_overlay(), and Slic3r::GUI::world_to_screen_px().
|
inline |
References m_scene_box.
Referenced by load_camera_view().
|
inline |
References m_target, and update_target().
Referenced by Slic3r::GUI::Mouse3DController::State::apply(), get_distance(), load_camera_view(), Slic3r::GUI::select_iso_view(), and Slic3r::GUI::PartPlateList::select_plate().
|
inline |
References m_type.
Referenced by Slic3r::GUI::face_selected_volume_to_camera(), Slic3r::GUI::SceneRaycaster::hit(), Slic3r::GUI::pan_camera(), Slic3r::GUI::CameraUtils::ray_from_ortho_screen_pos(), Slic3r::GUI::CameraUtils::ray_from_persp_screen_pos(), Slic3r::GUI::CameraUtils::ray_from_screen_pos(), Slic3r::GUI::DesignSketchTool::render_base_pick(), and Slic3r::GUI::GLGizmoTextureDisplacement::select_visible_faces().
| std::string Slic3r::GUI::Camera::get_type_as_string | ( | ) | const |
References m_type, Ortho, Perspective, and Unknown.
Referenced by Slic3r::GUI::anonymous_namespace{SceneBenchmark.cpp}::SceneBenchmarkDialog::on_first_frame().
|
inline |
References m_view_matrix.
Referenced by Slic3r::GUI::GLGizmoTextureDisplacement::apply_projection_frame(), Slic3r::GUI::GLGizmoTextureDisplacement::capture_view_projection(), Slic3r::GUI::DesignSketchTool::hit_test_base_pick(), load_camera_view(), Slic3r::GUI::GLGizmoFlatten::on_render(), Slic3r::GUI::GLGizmoMeasure::on_render(), Slic3r::GUI::GLGizmoMove3D::on_render(), Slic3r::GUI::GLGizmoRotate::on_render(), Slic3r::GUI::GLGizmoScale3D::on_render(), Slic3r::GUI::GLGizmoSimplify::on_render(), Slic3r::GUI::CameraUtils::project(), Slic3r::GUI::CameraUtils::ray_from_ortho_screen_pos(), Slic3r::GUI::CameraUtils::ray_from_persp_screen_pos(), Slic3r::GLVolume::SinkingContours::render(), Slic3r::GUI::Bed3D::Axes::render(), Slic3r::GUI::DesignSketchTool::render(), Slic3r::GUI::GCodeViewer::SequentialView::Marker::render(), Slic3r::GUI::GLGizmoBase::Grabber::render(), Slic3r::GUI::GLGizmoCut3D::PartSelection::render(), Slic3r::GUI::TextLinesModel::render(), Slic3r::GUI::GLGizmoTextureDisplacement::render_adjust_texture_gizmo(), Slic3r::GUI::GLGizmoMove3D::render_align_preview(), Slic3r::GUI::Selection::render_bounding_box(), Slic3r::GUI::GLGizmoCut3D::render_connectors(), Slic3r::GUI::MeshClipper::render_contour(), Slic3r::GUI::GLGizmoPainterBase::render_cursor_height_range(), Slic3r::GUI::GLGizmoPainterBase::render_cursor_sphere(), Slic3r::GUI::MeshClipper::render_cut(), Slic3r::GUI::GLGizmoCut3D::render_cut_plane(), Slic3r::GUI::GLGizmoMeasure::render_dimensioning(), Slic3r::GUI::Bed3D::render_gravity_arrow(), Slic3r::GUI::PartPlate::render_grid(), Slic3r::GUI::PartPlate::render_icons(), Slic3r::GUI::GLGizmoTextureDisplacement::render_island_overlay(), Slic3r::GUI::PartPlate::render_logo_texture(), Slic3r::GUI::GCodeViewer::render_markers(), Slic3r::GUI::Bed3D::render_model(), Slic3r::GUI::PartPlate::render_only_numbers(), Slic3r::GUI::TriangleSelectorGUI::render_paint_contour(), Slic3r::GUI::GLGizmoTextureDisplacement::render_paint_overlay(), Slic3r::GUI::GLGizmoTextureDisplacement::render_painted_colors(), Slic3r::GUI::GLGizmoTextureDisplacement::render_preview_mesh(), Slic3r::GUI::GLGizmoCut3D::render_rotation_snapping(), Slic3r::GUI::GLGizmoTextureDisplacement::render_seam_overlay(), Slic3r::GUI::GLGizmoTextureDisplacement::render_shaded_preview_mesh(), Slic3r::GUI::GCodeViewer::render_shells(), Slic3r::GUI::Selection::render_sidebar_layers_hints(), Slic3r::GUI::Selection::render_sidebar_position_hints(), Slic3r::GUI::Selection::render_sidebar_rotation_hints(), Slic3r::GUI::Selection::render_sidebar_scale_hints(), Slic3r::GUI::GLGizmoTextureDisplacement::render_subdivide_preview(), Slic3r::GUI::GCodeViewer::render_toolpaths(), Slic3r::GUI::GCodeViewer::render_translucent_toolpaths(), Slic3r::GUI::GLGizmoPainterBase::render_triangles(), Slic3r::GUI::GLGizmoTextureDisplacement::render_uvcheck_mesh(), Slic3r::GUI::GLGizmoTextureDisplacement::render_wireframe_overlay(), and Slic3r::GUI::world_to_screen_px().
|
inline |
References m_view_rotation.
Referenced by load_camera_view().
|
inline |
References m_viewport.
Referenced by Slic3r::GUI::GLGizmoTextureDisplacement::apply_projection_frame(), Slic3r::GUI::DesignSketchTool::constrain_value_anchor(), Slic3r::GUI::DesignSketchTool::hit_test_base_pick(), load_camera_view(), Slic3r::GUI::anonymous_namespace{SceneBenchmark.cpp}::SceneBenchmarkDialog::on_first_frame(), Slic3r::GUI::GLGizmoMove3D::on_render(), Slic3r::GUI::GLGizmoRotate::on_render(), Slic3r::GUI::GLGizmoScale3D::on_render(), Slic3r::GUI::DesignSketchTool::open_next_autoedit_dim(), Slic3r::GUI::DesignSketchTool::open_value_editor(), Slic3r::GUI::pan_camera(), Slic3r::GUI::CameraUtils::project(), Slic3r::GUI::CameraUtils::ray_from_ortho_screen_pos(), Slic3r::GUI::CameraUtils::ray_from_persp_screen_pos(), Slic3r::GUI::Selection::render_bounding_box(), Slic3r::GUI::GLGizmoMeasure::render_dimensioning(), Slic3r::GUI::PartPlate::render_grid(), Slic3r::GUI::CameraUtils::screen_point(), and Slic3r::GUI::world_to_screen_px().
|
inline |
References m_frustrum_zs.
Referenced by load_camera_view().
|
inline |
|
inline |
References m_zoom.
Referenced by Slic3r::GUI::Mouse3DController::State::apply(), Slic3r::GUI::DesignSketchTool::hit_test_cut_arrow(), Slic3r::GUI::DesignSketchTool::hit_test_datum_handle(), Slic3r::GUI::DesignSketchTool::hit_test_draft_handle(), Slic3r::GUI::DesignSketchTool::hit_test_extrude_arrow(), Slic3r::GUI::DesignSketchTool::hit_test_fillet_arrow(), Slic3r::GUI::DesignSketchTool::hit_test_helix_handle(), Slic3r::GUI::DesignSketchTool::hit_test_hole_handle(), Slic3r::GUI::DesignSketchTool::hit_test_move_arc(), Slic3r::GUI::DesignSketchTool::hit_test_move_arrow(), Slic3r::GUI::DesignSketchTool::hit_test_pattern_handle(), Slic3r::GUI::DesignSketchTool::hit_test_revolve_handle(), Slic3r::GUI::DesignSketchTool::hit_test_rib_handle(), Slic3r::GUI::DesignSketchTool::hit_test_shell_arrow(), Slic3r::GUI::DesignSketchTool::hit_test_thread_handle(), load_camera_view(), Slic3r::GUI::DesignSketchTool::move_gizmo_arm(), Slic3r::GUI::DesignSketchTool::render(), Slic3r::GUI::DesignSketchTool::render_body_edges(), Slic3r::GUI::DesignSketchTool::render_cut_gizmo(), Slic3r::GUI::DesignSketchTool::render_datum_gizmo(), Slic3r::GUI::DesignSketchTool::render_datum_planes(), Slic3r::GUI::DesignSketchTool::render_draft_gizmo(), Slic3r::GUI::DesignSketchTool::render_extrude_gizmo(), Slic3r::GUI::DesignSketchTool::render_face_outline(), Slic3r::GUI::DesignSketchTool::render_fillet_gizmo(), Slic3r::GUI::DesignSketchTool::render_helix_gizmo(), Slic3r::GUI::DesignSketchTool::render_hole_gizmo(), Slic3r::GUI::DesignSketchTool::render_mate_connectors(), Slic3r::GUI::DesignSketchTool::render_move_gizmo(), Slic3r::GUI::DesignSketchTool::render_pattern_gizmo(), Slic3r::GUI::DesignSketchTool::render_reference_axes(), Slic3r::GUI::DesignSketchTool::render_revolve_gizmo(), Slic3r::GUI::DesignSketchTool::render_rib_gizmo(), Slic3r::GUI::DesignSketchTool::render_shell_gizmo(), Slic3r::GUI::DesignSketchTool::render_solid_sel(), Slic3r::GUI::DesignSketchTool::render_thread_gizmo(), Slic3r::GUI::DesignSketchTool::render_view_helpers(), and Slic3r::GUI::DesignSketchTool::render_xform_gizmo().
|
inline |
References get_dir_forward().
Referenced by Slic3r::GUI::SceneRaycaster::hit().
|
inline |
References Slic3r::dot(), and get_dir_up().
| void Slic3r::GUI::Camera::load_camera_view | ( | Camera & | cam | ) |
References Camera(), get_projection_matrix(), get_scene_box(), get_target(), get_view_matrix(), get_view_rotation(), get_viewport(), get_z_range(), get_zenit(), get_zoom(), m_frustrum_zs, m_projection_matrix, m_scene_box, m_target, m_view_matrix, m_view_rotation, m_viewport, m_zenit, and m_zoom.
Referenced by Slic3r::GUI::Plater::priv::set_current_panel().
| void Slic3r::GUI::Camera::look_at | ( | const Vec3d & | position, |
| const Vec3d & | target, | ||
| const Vec3d & | up ) |
References m_distance, m_target, m_view_matrix, m_view_rotation, and update_zenit().
Referenced by Slic3r::GUI::GLCanvas3D::_rectangular_selection_picking_pass(), recover_from_free_camera(), Slic3r::GUI::select_iso_view(), select_view(), Slic3r::GUI::anonymous_namespace{SceneBenchmark.cpp}::SceneBenchmarkDialog::set_camera(), and Slic3r::GUI::DesignCanvas::view_normal_to_sketch().
|
inline |
|
inline |
References calc_zoom_to_bounding_box_factor(), and m_scene_box.
Referenced by Slic3r::GUI::Mouse3DController::State::apply(), and set_zoom().
|
inline |
References EPSILON, get_dir_right(), get_position(), look_at(), and m_target.
| void Slic3r::GUI::Camera::rotate_local_around_target | ( | const Vec3d & | rotation_rad | ) |
References Slic3r::angle(), EPSILON, m_target, m_view_matrix, m_view_rotation, and update_zenit().
Referenced by Slic3r::GUI::Mouse3DController::State::apply().
References Slic3r::angle(), EPSILON, m_view_matrix, m_view_rotation, and update_zenit().
| void Slic3r::GUI::Camera::rotate_on_sphere | ( | double | delta_azimut_rad, |
| double | delta_zenit_rad, | ||
| bool | apply_limits ) |
References Slic3r::Geometry::deg2rad(), get_dir_right(), m_target, m_view_matrix, m_view_rotation, m_zenit, and Slic3r::Geometry::rad2deg().
| void Slic3r::GUI::Camera::rotate_on_sphere_with_target | ( | double | delta_azimut_rad, |
| double | delta_zenit_rad, | ||
| bool | apply_limits, | ||
| Vec3d | target ) |
References Slic3r::Geometry::deg2rad(), get_dir_right(), m_view_matrix, m_view_rotation, m_zenit, and Slic3r::Geometry::rad2deg().
| void Slic3r::GUI::Camera::select_next_type | ( | ) |
References m_type, Num_types, and set_type().
| void Slic3r::GUI::Camera::select_view | ( | const std::string & | direction | ) |
References auto_type(), look_at(), m_distance, m_target, Ortho, Perspective, and set_default_orientation().
Referenced by select_view().
| void Slic3r::GUI::Camera::select_view | ( | ViewAngleType | type | ) |
References Bottom, Front, Iso, Left, Rear, Right, select_view(), Top, Top_Front, and Top_Plate.
|
private |
References Slic3r::Geometry::deg2rad(), m_distance, m_target, m_view_matrix, m_view_rotation, and m_zenit.
Referenced by Camera(), and select_view().
|
private |
References get_dir_forward(), m_distance, m_view_matrix, and update_target().
Referenced by calc_tight_frustrum_zs_around().
| void Slic3r::GUI::Camera::set_rotation | ( | const Transform3d & | rotation | ) |
References m_target, m_view_matrix, m_view_rotation, and update_zenit().
|
inline |
References m_scene_box.
| void Slic3r::GUI::Camera::set_target | ( | const Vec3d & | target | ) |
References m_target, m_view_matrix, and update_target().
Referenced by Slic3r::GUI::Mouse3DController::State::apply(), Slic3r::GUI::PartPlateList::select_plate(), translate_world(), zoom_to_box(), and zoom_to_volumes().
|
inline |
References Ortho, Perspective, and set_type().
Referenced by set_type().
| void Slic3r::GUI::Camera::set_type | ( | EType | type | ) |
References m_prevent_auto_type, m_type, m_update_config_on_type_change_enabled, Ortho, and Perspective.
Referenced by Slic3r::GUI::GLCanvas3D::_rectangular_selection_picking_pass(), auto_type(), and select_next_type().
| void Slic3r::GUI::Camera::set_viewport | ( | int | x, |
| int | y, | ||
| unsigned int | w, | ||
| unsigned int | h ) |
References m_viewport.
Referenced by Slic3r::GUI::GLCanvas3D::_rectangular_selection_picking_pass().
| void Slic3r::GUI::Camera::set_zoom | ( | double | zoom | ) |
References m_zoom, max_zoom(), and min_zoom().
Referenced by Slic3r::GUI::anonymous_namespace{SceneBenchmark.cpp}::SceneBenchmarkDialog::set_camera(), and update_zoom().
| void Slic3r::GUI::Camera::translate | ( | const Vec3d & | displacement | ) |
References m_view_matrix, and update_target().
Referenced by Slic3r::GUI::pan_camera().
|
inline |
|
private |
References get_dir_forward(), get_position(), m_distance, and m_target.
Referenced by get_target(), set_distance(), set_target(), and translate().
|
private |
References Slic3r::dot(), get_dir_forward(), M_PI, m_zenit, and Slic3r::Geometry::rad2deg().
Referenced by look_at(), rotate_local_around_target(), rotate_local_with_target(), and set_rotation().
|
inline |
References m_zoom, set_zoom(), and ZoomUnit.
Referenced by Slic3r::GUI::Mouse3DController::State::apply().
References m_scene_box, Slic3r::BoundingBoxBase< PointType, std::vector< PointType > >::max, Slic3r::BoundingBoxBase< PointType, std::vector< PointType > >::min, Slic3r::BoundingBoxBase< PointType, std::vector< PointType > >::scale(), and Slic3r::BoundingBox3Base< PointType >::translate().
| void Slic3r::GUI::Camera::zoom_to_box | ( | const BoundingBoxf3 & | box, |
| double | margin_factor = DefaultZoomToBoxMarginFactor ) |
References calc_zoom_to_bounding_box_factor(), Slic3r::BoundingBox3Base< PointType >::center(), m_zoom, and set_target().
| void Slic3r::GUI::Camera::zoom_to_volumes | ( | const GLVolumePtrs & | volumes, |
| double | margin_factor = DefaultZoomToVolumesMarginFactor ) |
References calc_zoom_to_volumes_factor(), Slic3r::center(), m_zoom, and set_target().
|
static |
|
static |
|
static |
|
static |
Referenced by apply_projection(), and calc_tight_frustrum_zs_around().
|
static |
Referenced by calc_tight_frustrum_zs_around().
|
static |
Referenced by calc_tight_frustrum_zs_around().
|
private |
Referenced by apply_projection(), calc_tight_frustrum_zs_around(), look_at(), select_view(), set_default_orientation(), set_distance(), and update_target().
|
private |
|
private |
Referenced by apply_projection(), and get_gui_scale().
|
private |
Referenced by auto_type(), and set_type().
|
private |
Referenced by apply_projection(), get_fov(), get_near_bottom(), get_near_height(), get_near_left(), get_near_right(), get_near_top(), get_near_width(), get_projection_matrix(), and load_camera_view().
|
private |
Referenced by get_scene_box(), load_camera_view(), min_zoom(), set_scene_box(), and validate_target().
|
private |
Referenced by get_target(), load_camera_view(), look_at(), recover_from_free_camera(), rotate_local_around_target(), rotate_on_sphere(), select_view(), set_default_orientation(), set_rotation(), set_target(), translate_world(), and update_target().
|
private |
|
private |
Referenced by enable_update_config_on_type_change(), and set_type().
|
private |
Referenced by calc_tight_frustrum_zs_around(), get_dir_forward(), get_dir_right(), get_dir_up(), get_position(), get_view_matrix(), load_camera_view(), look_at(), rotate_local_around_target(), rotate_local_with_target(), rotate_on_sphere(), rotate_on_sphere_with_target(), set_default_orientation(), set_distance(), set_rotation(), set_target(), and translate().
|
private |
Referenced by get_view_rotation(), load_camera_view(), look_at(), rotate_local_around_target(), rotate_local_with_target(), rotate_on_sphere(), rotate_on_sphere_with_target(), set_default_orientation(), and set_rotation().
|
private |
|
private |
Referenced by get_zenit(), load_camera_view(), rotate_on_sphere(), rotate_on_sphere_with_target(), set_default_orientation(), and update_zenit().
|
private |
Referenced by get_inv_zoom(), get_zoom(), load_camera_view(), set_zoom(), update_zoom(), zoom_to_box(), and zoom_to_volumes().
|
static |
| bool Slic3r::GUI::Camera::requires_zoom_to_bed { false } |
| int Slic3r::GUI::Camera::requires_zoom_to_plate { REQUIRES_ZOOM_TO_PLATE_IDLE } |
| bool Slic3r::GUI::Camera::requires_zoom_to_volumes { false } |
|
static |
Referenced by update_zoom().