From 78c27a75e91858786549fb1498ee3d866ce4acef Mon Sep 17 00:00:00 2001 From: Théo de la Hogue Date: Fri, 22 Mar 2024 11:11:28 +0100 Subject: Adding new DrawingFails error. --- src/argaze/ArFeatures.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/argaze/ArFeatures.py b/src/argaze/ArFeatures.py index 24ba8e3..87293ee 100644 --- a/src/argaze/ArFeatures.py +++ b/src/argaze/ArFeatures.py @@ -61,6 +61,15 @@ class LoadingFailed(Exception): super().__init__(message) +class DrawingFailed(Exception): + """ + Exception raised when drawing fails. + """ + + def __init__(self, message): + + super().__init__(message) + # Define default ArLayer draw parameters DEFAULT_ARLAYER_DRAW_PARAMETERS = { "draw_aoi_scene": { @@ -856,7 +865,13 @@ class ArFrame(DataFeatures.SharedObject, DataFeatures.PipelineStepObject): for layer_name, draw_layer in draw_layers.items(): - self.__layers[layer_name].draw(image, **draw_layer) + try : + + self.__layers[layer_name].draw(image, **draw_layer) + + except KeyError: + + raise(DrawingFailed(f'\'{layer_name}\' layer doesn\'t exist.')) # Draw current gaze position if required if draw_gaze_positions is not None: -- cgit v1.1