mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-06 14:37:29 -06:00
Parent added meshes to the parent node instead of creating a group
This requires a small change in PlatformPhysics, or otherwise the added mesh would still drop down.
This commit is contained in:
parent
8e26d27e80
commit
83168886d6
2 changed files with 5 additions and 38 deletions
|
@ -120,49 +120,16 @@ class SupportEraser(Tool):
|
|||
op = GroupedOperation()
|
||||
# First add the node to the scene, so it gets the expected transform
|
||||
op.addOperation(AddSceneNodeOperation(node, root))
|
||||
|
||||
# Determine the parent group the node should be put in
|
||||
if parent.getParent().callDecoration("isGroup"):
|
||||
group = parent.getParent()
|
||||
else:
|
||||
# Create a group-node
|
||||
group = CuraSceneNode()
|
||||
group.addDecorator(GroupDecorator())
|
||||
group.addDecorator(BuildPlateDecorator(active_build_plate))
|
||||
group.setParent(root)
|
||||
center = parent.getPosition()
|
||||
group.setPosition(center)
|
||||
group.setCenterPosition(center)
|
||||
op.addOperation(SetParentOperation(parent, group))
|
||||
|
||||
op.addOperation(SetParentOperation(node, group))
|
||||
op.addOperation(SetParentOperation(node, parent))
|
||||
op.push()
|
||||
Application.getInstance().getController().getScene().sceneChanged.emit(node)
|
||||
|
||||
# Select the picked node so the group does not get drawn as a wireframe (yet)
|
||||
if not Selection.isSelected(parent):
|
||||
Selection.add(parent)
|
||||
if Selection.isSelected(group):
|
||||
Selection.remove(group)
|
||||
Application.getInstance().getController().getScene().sceneChanged.emit(node)
|
||||
|
||||
def _removeEraserMesh(self, node: CuraSceneNode):
|
||||
group = node.getParent()
|
||||
if group.callDecoration("isGroup"):
|
||||
parent = group.getChildren()[0]
|
||||
|
||||
op = GroupedOperation()
|
||||
op.addOperation(RemoveSceneNodeOperation(node))
|
||||
if len(group.getChildren()) == 2:
|
||||
op.addOperation(SetParentOperation(parent, group.getParent()))
|
||||
|
||||
op = RemoveSceneNodeOperation(node)
|
||||
op.push()
|
||||
Application.getInstance().getController().getScene().sceneChanged.emit(node)
|
||||
|
||||
# Select the picked node so the group does not get drawn as a wireframe (yet)
|
||||
if parent and not Selection.isSelected(parent):
|
||||
Selection.add(parent)
|
||||
if Selection.isSelected(group):
|
||||
Selection.remove(group)
|
||||
Application.getInstance().getController().getScene().sceneChanged.emit(node)
|
||||
|
||||
def _updateEnabled(self):
|
||||
plugin_enabled = False
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue