Merge branch 'feature_bottom_face' of https://github.com/Ultimaker/Cura into feature_bottom_face

This commit is contained in:
Remco Burema 2019-09-03 16:04:38 +02:00
commit d9b10e7180
2 changed files with 6 additions and 3 deletions

View file

@ -3,7 +3,7 @@
from PyQt5.QtCore import QObject, QUrl from PyQt5.QtCore import QObject, QUrl
from PyQt5.QtGui import QDesktopServices from PyQt5.QtGui import QDesktopServices
from typing import List, cast from typing import List, Optional, cast
from UM.Event import CallFunctionEvent from UM.Event import CallFunctionEvent
from UM.FlameProfiler import pyqtSlot from UM.FlameProfiler import pyqtSlot
@ -85,7 +85,7 @@ class CuraActions(QObject):
original_node, face_id = selected_face original_node, face_id = selected_face
meshdata = original_node.getMeshDataTransformed() meshdata = original_node.getMeshDataTransformed()
if not meshdata or face_id < 0 or face_id > Selection.maxFaceSelectionId(): if not meshdata or face_id < 0 or face_id > Selection.getMaxFaceSelectionId():
return return
rotation_point, face_normal = meshdata.getFacePlane(face_id) rotation_point, face_normal = meshdata.getFacePlane(face_id)
@ -94,12 +94,15 @@ class CuraActions(QObject):
rotation_quaternion = Quaternion.rotationTo(face_normal_vector.normalized(), Vector(0.0, -1.0, 0.0)) rotation_quaternion = Quaternion.rotationTo(face_normal_vector.normalized(), Vector(0.0, -1.0, 0.0))
operation = GroupedOperation() operation = GroupedOperation()
current_node = None # type: Optional[SceneNode]
for node in Selection.getAllSelectedObjects(): for node in Selection.getAllSelectedObjects():
current_node = node current_node = node
parent_node = current_node.getParent() parent_node = current_node.getParent()
while parent_node and parent_node.callDecoration("isGroup"): while parent_node and parent_node.callDecoration("isGroup"):
current_node = parent_node current_node = parent_node
parent_node = current_node.getParent() parent_node = current_node.getParent()
if current_node is None:
return
rotate_operation = RotateOperation(current_node, rotation_quaternion, rotation_point_vector) rotate_operation = RotateOperation(current_node, rotation_quaternion, rotation_point_vector)
operation.addOperation(rotate_operation) operation.addOperation(rotate_operation)

View file

@ -142,7 +142,7 @@ class SolidView(View):
# Color the currently selected face-id. # Color the currently selected face-id.
face = Selection.getSelectedFace() face = Selection.getSelectedFace()
uniforms["selected_face"] = (Selection.maxFaceSelectionId() + 1) if not face or node != face[0] else face[1] uniforms["selected_face"] = (Selection.getMaxFaceSelectionId() + 1) if not face or node != face[0] else face[1]
except ValueError: except ValueError:
pass pass