Merge pull request #85 from alicevision/dev_ui_perfs

Performance improvements + UI tweaks
This commit is contained in:
Fabien Castan 2018-01-30 17:47:58 +01:00 committed by GitHub
commit 736f1c382e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 117 additions and 36 deletions

View file

@ -399,8 +399,18 @@ class Reconstruction(UIGraph):
self._sfm.chunks[0].statusChanged.connect(self.updateViewsAndPoses)
self.sfmChanged.emit()
@Slot(QObject, result=bool)
def isInViews(self, viewpoint):
# keys are strings (faster lookup)
return str(viewpoint.viewId.value) in self._views
@Slot(QObject, result=bool)
def isReconstructed(self, viewpoint):
# keys are strings (faster lookup)
return str(viewpoint.poseId.value) in self._poses
sfmChanged = Signal()
sfm = Property(QObject, getSfm, setSfm, notify=sfmChanged)
sfmReportChanged = Signal()
views = Property("QVariant", lambda self: self._views, notify=sfmReportChanged)
poses = Property("QVariant", lambda self: self._poses, notify=sfmReportChanged)
# convenient property for QML binding re-evaluation when sfm report changes
sfmReport = Property(bool, lambda self: len(self._poses) > 0, notify=sfmReportChanged)