我有許多qgraphicsitem這是在地圖上的航點。 我想將它們一起移動。 因此我使用for循環來調用它們的setPos()
函數。 但是,當項目數量變大(超過100)。 此舉變得緩慢...... 我該如何更有效地做到這一點?如何高效地移動大量的qgraphicsitem?
回答
如果您將它們全部移動相同數量,那麼您可以使用QGraphicsItemGroup
將所有路點項目分組;然後,您可以簡單地移動項目組以自動移動該組中的所有項目。
這樣更快嗎? – Nyaruko
嘗試一下就不會有什麼傷害 - 如果沒有其他的話,它肯定不會變慢,並且它會幫助你簡化你的代碼。 –
@Nyaruko是的,這應該是顯着更快,因爲每個'setPos(..)'調用之前會觸發一個場景圖更新(並可能是一個繪畫事件,儘管可能有優化)。移動單個父項目會導致單個場景圖評估。 – cmannett85
- 1. 如何高效地創建大量的QGraphicsItem?
- 2. 如何高效地顯示大量的移動點
- 3. 在SQL Server表之間高效地移動大量數據集?
- 4. 高效地移動API
- 5. 如何在滾動QGraphicsView時移動QGraphicsItem?
- 6. 如何使用鍵盤移動QGraphicsItem?
- 7. 高效地繪製大量粒子
- 8. 如何使用Zend_Db高效地讀取大量的行?
- 9. 如何在Python中高效地運行大量的子進程?
- 10. 如何高效地解碼大量的小JSON數據塊?
- 11. 如何高效地創建大量的QWidget?
- 12. 如何高效地存儲大量的ngram?
- 13. 如何高效地計算移動的標準差
- 14. 如何高效地計算python中的移動平均值
- 15. 如何使qgraphicsitem動態移動/不可移動?
- 16. Matplotlib:如何在3D中高效地繪製大量線段?
- 17. 如何高效地使用Three.js繪製大量對象
- 18. 在jQuery中,如何高效地添加大量元素?
- 19. 如何使用elastichsearch apis高效地搜索大量數據?
- 20. 如何高效地交付大量資產(圖片)?
- 21. 如何在移動設備上高效地繪製矢量曲線?
- 22. 如何在含有大量數據的NSScrollview中高效滾動?
- 23. 如何高效地計算加權移動平均數
- 24. 如何高效地進行網絡和移動遊戲與Laravel
- 25. 使用moveBy移動QGraphicsItem
- 26. QGraphicsItem沿着路徑移動
- 27. 如何高效地將大量秒錶放在一個活動上?
- 28. 如何在django中高效地服務大量的站點地圖
- 29. 如何高效地動畫Graphviz圖?
- 30. 高效的'滾動/移動散列'計算(如移動平均)
你在移動過程中爲每個像素調用'setPos()'嗎? – vahancho
我在移動過程中爲每個QGraphicsItem調用了setPos。 – Nyaruko
移動完成後,您只能調用setPos()僅用於最後一個位置。例如,如果將項目從A點移動到B,請僅爲B點調用setPos(),而不是A和B之間的每個點。 – vahancho