mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-08-14 01:15:51 +08:00
Slightly delay platform physics to give time to calculate the bounding box
This commit is contained in:
parent
d1ed5a7a8a
commit
b0ae7ee180
@ -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…
x
Reference in New Issue
Block a user