Merge branch 'master' into libArachne_rebased

Conflicts:
	cura/CuraApplication.py: Setting version
	fdmprinter and fdmextruder: Setting version
	intents, qualities and variants: Setting version
	Changelog: 4.9.1 was added, should be below Arachne changes
This commit is contained in:
Ghostkeeper 2021-06-16 18:04:54 +02:00
commit 611208368c
No known key found for this signature in database
GPG key ID: D2A8871EE34EC59A
1015 changed files with 103196 additions and 86144 deletions

View file

@ -257,6 +257,9 @@ class CuraApplication(QtApplication):
from cura.CuraPackageManager import CuraPackageManager
self._package_manager_class = CuraPackageManager
from UM.CentralFileStorage import CentralFileStorage
CentralFileStorage.setIsEnterprise(ApplicationMetadata.IsEnterpriseVersion)
@pyqtProperty(str, constant=True)
def ultimakerCloudApiRootUrl(self) -> str:
return UltimakerCloudConstants.CuraCloudAPIRoot
@ -1526,12 +1529,8 @@ class CuraApplication(QtApplication):
# Compute the center of the objects
object_centers = []
# Forget about the translation that the original objects have
zero_translation = Matrix(data=numpy.zeros(3))
for mesh, node in zip(meshes, group_node.getChildren()):
transformation = node.getLocalTransformation()
transformation.setTranslation(zero_translation)
transformed_mesh = mesh.getTransformed(transformation)
transformed_mesh = mesh.getTransformed(Matrix()) # Forget about the transformations that the original object had.
center = transformed_mesh.getCenterPosition()
if center is not None:
object_centers.append(center)
@ -1546,7 +1545,7 @@ class CuraApplication(QtApplication):
# Move each node to the same position.
for mesh, node in zip(meshes, group_node.getChildren()):
node.setTransformation(Matrix())
node.setTransformation(Matrix()) # Removes any changes in position and rotation.
# Align the object around its zero position
# and also apply the offset to center it inside the group.
node.setPosition(-mesh.getZeroPosition() - offset)
@ -1867,6 +1866,7 @@ class CuraApplication(QtApplication):
else:
node = CuraSceneNode()
node.setMeshData(original_node.getMeshData())
node.source_mime_type = original_node.source_mime_type
# Setting meshdata does not apply scaling.
if original_node.getScale() != Vector(1.0, 1.0, 1.0):