diff options
Diffstat (limited to 'src/argaze/ArUcoMarkers/ArUcoCamera.py')
-rw-r--r-- | src/argaze/ArUcoMarkers/ArUcoCamera.py | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/src/argaze/ArUcoMarkers/ArUcoCamera.py b/src/argaze/ArUcoMarkers/ArUcoCamera.py index 5c495dc..6d13c10 100644 --- a/src/argaze/ArUcoMarkers/ArUcoCamera.py +++ b/src/argaze/ArUcoMarkers/ArUcoCamera.py @@ -85,7 +85,12 @@ class ArUcoCamera(ArFeatures.ArCamera): self.__aruco_detector.parent = self - @ArFeatures.ArCamera.scenes.setter + @property + def scenes(self) -> dict: + """All scenes to project into camera frame.""" + return self.__scenes + + @scenes.setter @DataFeatures.PipelineStepAttributeSetter def scenes(self, scenes: dict): @@ -129,10 +134,14 @@ class ArUcoCamera(ArFeatures.ArCamera): # Clear former layers projection into camera frame for layer_name, layer in self.layers.items(): - # DEBUG - print('ArUcoCamera.watch', layer_name, layer.aoi_scene) - - layer.aoi_scene.clear() + # Initialize layer if needed + if layer.aoi_scene is None: + + layer.aoi_scene = AOI2DScene.AOI2DScene() + + else: + + layer.aoi_scene.clear() # Project each aoi 3d scene into camera frame for scene_name, scene in self.scenes.items(): |