mirror of
				https://github.com/SoftFever/OrcaSlicer.git
				synced 2025-10-30 20:21:12 -06:00 
			
		
		
		
	Gizmos rendered on top set as default
This commit is contained in:
		
							parent
							
								
									8d25f3aaaf
								
							
						
					
					
						commit
						04d7154d40
					
				
					 4 changed files with 0 additions and 30 deletions
				
			
		|  | @ -23,8 +23,6 @@ | |||
| #define ENABLE_MODELVOLUME_TRANSFORM (1 && ENABLE_1_42_0) | ||||
| // Keeps objects on bed while scaling them using the scale gizmo
 | ||||
| #define ENABLE_ENSURE_ON_BED_WHILE_SCALING (1 && ENABLE_MODELVOLUME_TRANSFORM) | ||||
| // Gizmos always rendered on top of objects
 | ||||
| #define ENABLE_GIZMOS_ON_TOP (1 && ENABLE_1_42_0) | ||||
| // All rotations made using the rotate gizmo are done with respect to the world reference system
 | ||||
| #define ENABLE_WORLD_ROTATIONS (1 && ENABLE_1_42_0) | ||||
| // Enables shortcut keys for gizmos
 | ||||
|  |  | |||
|  | @ -1029,9 +1029,7 @@ GLCanvas3D::Mouse::Mouse() | |||
|     : dragging(false) | ||||
|     , left_down(false) | ||||
|     , position(DBL_MAX, DBL_MAX) | ||||
| #if ENABLE_GIZMOS_ON_TOP | ||||
|     , scene_position(DBL_MAX, DBL_MAX, DBL_MAX) | ||||
| #endif // ENABLE_GIZMOS_ON_TOP
 | ||||
| { | ||||
| } | ||||
| 
 | ||||
|  | @ -3865,12 +3863,10 @@ void GLCanvas3D::render() | |||
|         _render_bed(theta); | ||||
|     } | ||||
| 
 | ||||
| #if ENABLE_GIZMOS_ON_TOP | ||||
|     // we need to set the mouse's scene position here because the depth buffer
 | ||||
|     // could be invalidated by the following gizmo render methods
 | ||||
|     // this position is used later into on_mouse() to drag the objects
 | ||||
|     m_mouse.scene_position = _mouse_to_3d(m_mouse.position.cast<int>()); | ||||
| #endif // ENABLE_GIZMOS_ON_TOP
 | ||||
| 
 | ||||
|     _render_current_gizmo(); | ||||
| #if ENABLE_SHOW_CAMERA_TARGET | ||||
|  | @ -4692,29 +4688,15 @@ void GLCanvas3D::on_mouse(wxMouseEvent& evt) | |||
|             { | ||||
|                 if (evt.LeftDown() && m_moving_enabled && (m_mouse.drag.move_volume_idx == -1)) | ||||
|                 { | ||||
| #if !ENABLE_GIZMOS_ON_TOP | ||||
|                     // The mouse_to_3d gets the Z coordinate from the Z buffer at the screen coordinate pos x, y,
 | ||||
|                     // an converts the screen space coordinate to unscaled object space.
 | ||||
|                     Vec3d pos3d = _mouse_to_3d(pos); | ||||
| #endif // !ENABLE_GIZMOS_ON_TOP
 | ||||
| 
 | ||||
|                     // Only accept the initial position, if it is inside the volume bounding box.
 | ||||
|                     BoundingBoxf3 volume_bbox = m_volumes.volumes[m_hover_volume_id]->transformed_bounding_box(); | ||||
|                     volume_bbox.offset(1.0); | ||||
| #if ENABLE_GIZMOS_ON_TOP | ||||
|                     if (volume_bbox.contains(m_mouse.scene_position)) | ||||
| #else | ||||
|                     if (volume_bbox.contains(pos3d)) | ||||
| #endif // ENABLE_GIZMOS_ON_TOP
 | ||||
|                     { | ||||
|                         // The dragging operation is initiated.
 | ||||
|                         m_mouse.drag.move_volume_idx = m_hover_volume_id; | ||||
|                         m_selection.start_dragging(); | ||||
| #if ENABLE_GIZMOS_ON_TOP | ||||
|                         m_mouse.drag.start_position_3D = m_mouse.scene_position; | ||||
| #else | ||||
|                         m_mouse.drag.start_position_3D = pos3d; | ||||
| #endif // ENABLE_GIZMOS_ON_TOP
 | ||||
|                         m_moving = true; | ||||
|                     } | ||||
|                 } | ||||
|  |  | |||
|  | @ -324,9 +324,7 @@ class GLCanvas3D | |||
|         bool dragging; | ||||
|         bool left_down; | ||||
|         Vec2d position; | ||||
| #if ENABLE_GIZMOS_ON_TOP | ||||
|         Vec3d scene_position; | ||||
| #endif // ENABLE_GIZMOS_ON_TOP
 | ||||
|         Drag drag; | ||||
| 
 | ||||
|         Mouse(); | ||||
|  |  | |||
|  | @ -760,9 +760,7 @@ void GLGizmoRotate3D::on_stop_dragging() | |||
| 
 | ||||
| void GLGizmoRotate3D::on_render(const GLCanvas3D::Selection& selection) const | ||||
| { | ||||
| #if ENABLE_GIZMOS_ON_TOP | ||||
|     ::glClear(GL_DEPTH_BUFFER_BIT); | ||||
| #endif // ENABLE_GIZMOS_ON_TOP
 | ||||
| 
 | ||||
|     if ((m_hover_id == -1) || (m_hover_id == 0)) | ||||
|         m_gizmos[X].render(selection); | ||||
|  | @ -899,9 +897,7 @@ void GLGizmoScale3D::on_render(const GLCanvas3D::Selection& selection) const | |||
|         ((m_hover_id == 6) || (m_hover_id == 7) || (m_hover_id == 8) || (m_hover_id == 9))) | ||||
|         set_tooltip("X/Y/Z"); | ||||
| 
 | ||||
| #if ENABLE_GIZMOS_ON_TOP | ||||
|     ::glClear(GL_DEPTH_BUFFER_BIT); | ||||
| #endif // ENABLE_GIZMOS_ON_TOP
 | ||||
|     ::glEnable(GL_DEPTH_TEST); | ||||
| 
 | ||||
|     BoundingBoxf3 box; | ||||
|  | @ -1264,9 +1260,7 @@ void GLGizmoMove3D::on_render(const GLCanvas3D::Selection& selection) const | |||
|     else if (!m_grabbers[2].dragging && (m_hover_id == 2)) | ||||
|         set_tooltip("Z"); | ||||
| 
 | ||||
| #if ENABLE_GIZMOS_ON_TOP | ||||
|     ::glClear(GL_DEPTH_BUFFER_BIT); | ||||
| #endif // ENABLE_GIZMOS_ON_TOP
 | ||||
|     ::glEnable(GL_DEPTH_TEST); | ||||
| 
 | ||||
|     const BoundingBoxf3& box = selection.get_bounding_box(); | ||||
|  | @ -1464,9 +1458,7 @@ void GLGizmoFlatten::on_start_dragging(const GLCanvas3D::Selection& selection) | |||
| 
 | ||||
| void GLGizmoFlatten::on_render(const GLCanvas3D::Selection& selection) const | ||||
| { | ||||
| #if ENABLE_GIZMOS_ON_TOP | ||||
|     ::glClear(GL_DEPTH_BUFFER_BIT); | ||||
| #endif // ENABLE_GIZMOS_ON_TOP
 | ||||
| 
 | ||||
|     ::glEnable(GL_DEPTH_TEST); | ||||
|     ::glEnable(GL_BLEND); | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Enrico Turri
						Enrico Turri