From 79af1d6fa75e1eb9e2d7a322e1eb52dc46842768 Mon Sep 17 00:00:00 2001 From: Fabien Castan Date: Sat, 15 Jun 2024 17:14:09 +0200 Subject: [PATCH] [ui] try/except when accessing node parameters Parameters may not exists on old project files --- meshroom/ui/reconstruction.py | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/meshroom/ui/reconstruction.py b/meshroom/ui/reconstruction.py index 740d01ac..a78c1206 100755 --- a/meshroom/ui/reconstruction.py +++ b/meshroom/ui/reconstruction.py @@ -246,15 +246,20 @@ class ViewpointWrapper(QObject): def _updateUndistortedImageParams(self): """ Update internal members depending on PrepareDenseScene or ExportAnimatedCamera. """ # undistorted image path - if self._activeNode_ExportAnimatedCamera.node: - self._undistortedImagePath = FilepathHelper.resolve(FilepathHelper, self._activeNode_ExportAnimatedCamera.node.outputImages.value, self._viewpoint) - self._principalPointCorrected = self._activeNode_ExportAnimatedCamera.node.correctPrincipalPoint.value - elif self._activeNode_PrepareDenseScene.node: - self._undistortedImagePath = FilepathHelper.resolve(FilepathHelper, self._activeNode_PrepareDenseScene.node.undistorted.value, self._viewpoint) - self._principalPointCorrected = False - else: + try: + if self._activeNode_ExportAnimatedCamera.node: + self._undistortedImagePath = FilepathHelper.resolve(FilepathHelper, self._activeNode_ExportAnimatedCamera.node.outputImages.value, self._viewpoint) + self._principalPointCorrected = self._activeNode_ExportAnimatedCamera.node.correctPrincipalPoint.value + elif self._activeNode_PrepareDenseScene.node: + self._undistortedImagePath = FilepathHelper.resolve(FilepathHelper, self._activeNode_PrepareDenseScene.node.undistorted.value, self._viewpoint) + self._principalPointCorrected = False + else: + self._undistortedImagePath = '' + self._principalPointCorrected = False + except Exception as e: self._undistortedImagePath = '' self._principalPointCorrected = False + logging.info("Failed to retrieve undistorted images path.") self.undistortedImageParamsChanged.emit() self.principalPointCorrectedChanged.emit()