mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-11 08:47:50 -06:00
Slightly delay platform physics to give time to calculate the bounding box
This commit is contained in:
parent
d1ed5a7a8a
commit
b0ae7ee180
1 changed files with 10 additions and 0 deletions
|
@ -1,3 +1,5 @@
|
||||||
|
from PyQt5.QtCore import QTimer
|
||||||
|
|
||||||
from UM.Scene.SceneNode import SceneNode
|
from UM.Scene.SceneNode import SceneNode
|
||||||
from UM.Scene.Iterator.BreadthFirstIterator import BreadthFirstIterator
|
from UM.Scene.Iterator.BreadthFirstIterator import BreadthFirstIterator
|
||||||
from UM.Operations.TranslateOperation import TranslateOperation
|
from UM.Operations.TranslateOperation import TranslateOperation
|
||||||
|
@ -19,7 +21,15 @@ class PlatformPhysics:
|
||||||
self._build_volume = volume
|
self._build_volume = volume
|
||||||
self._signal_source = None
|
self._signal_source = None
|
||||||
|
|
||||||
|
self._change_timer = QTimer()
|
||||||
|
self._change_timer.setInterval(100)
|
||||||
|
self._change_timer.setSingleShot(True)
|
||||||
|
self._change_timer.timeout.connect(self._onChangeTimerFinished)
|
||||||
|
|
||||||
def _onSceneChanged(self, source):
|
def _onSceneChanged(self, source):
|
||||||
|
self._change_timer.start()
|
||||||
|
|
||||||
|
def _onChangeTimerFinished(self):
|
||||||
root = self._controller.getScene().getRoot()
|
root = self._controller.getScene().getRoot()
|
||||||
for node in BreadthFirstIterator(root):
|
for node in BreadthFirstIterator(root):
|
||||||
if node is root or type(node) is not SceneNode:
|
if node is root or type(node) is not SceneNode:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue