diff --git a/src-python/model.py b/src-python/model.py index 82c1d9c7..d5d4b5c7 100644 --- a/src-python/model.py +++ b/src-python/model.py @@ -87,8 +87,6 @@ class Model: "large": config.OVERLAY_LARGE_LOG_SETTINGS, } ) - self.overlay_small_log_pre_settings = config.OVERLAY_SMALL_LOG_SETTINGS - self.overlay_large_log_pre_settings = config.OVERLAY_LARGE_LOG_SETTINGS self.overlay_image = OverlayImage() self.mic_audio_queue = None self.mic_mute_status = None @@ -706,32 +704,21 @@ class Model: self.overlay.updateImage(img, "small") def updateOverlaySmallLogSettings(self): - for key in self.overlay_small_log_pre_settings.keys(): - if self.overlay_small_log_pre_settings[key] != config.OVERLAY_SMALL_LOG_SETTINGS[key]: - match (key): - case "x_pos" | "y_pos" | "z_pos" | "x_rotation" | "y_rotation" | "z_rotation" | "tracker": - self.overlay.updatePosition( - config.OVERLAY_SMALL_LOG_SETTINGS["x_pos"], - config.OVERLAY_SMALL_LOG_SETTINGS["y_pos"], - config.OVERLAY_SMALL_LOG_SETTINGS["z_pos"], - config.OVERLAY_SMALL_LOG_SETTINGS["x_rotation"], - config.OVERLAY_SMALL_LOG_SETTINGS["y_rotation"], - config.OVERLAY_SMALL_LOG_SETTINGS["z_rotation"], - config.OVERLAY_SMALL_LOG_SETTINGS["tracker"], - "small", - ) - case "display_duration": - self.overlay.updateDisplayDuration(config.OVERLAY_SMALL_LOG_SETTINGS["display_duration"], "small") - case "fadeout_duration": - self.overlay.updateFadeoutDuration(config.OVERLAY_SMALL_LOG_SETTINGS["fadeout_duration"], "small") - case "opacity": - self.overlay.updateOpacity(config.OVERLAY_SMALL_LOG_SETTINGS["opacity"], "small", True) - case "ui_scaling": - self.overlay.updateUiScaling(config.OVERLAY_SMALL_LOG_SETTINGS["ui_scaling"], "small") - case _: - pass - break - self.overlay_small_log_pre_settings = config.OVERLAY_SMALL_LOG_SETTINGS + size = "small" + self.overlay.updatePosition( + config.OVERLAY_SMALL_LOG_SETTINGS["x_pos"], + config.OVERLAY_SMALL_LOG_SETTINGS["y_pos"], + config.OVERLAY_SMALL_LOG_SETTINGS["z_pos"], + config.OVERLAY_SMALL_LOG_SETTINGS["x_rotation"], + config.OVERLAY_SMALL_LOG_SETTINGS["y_rotation"], + config.OVERLAY_SMALL_LOG_SETTINGS["z_rotation"], + config.OVERLAY_SMALL_LOG_SETTINGS["tracker"], + size, + ) + self.overlay.updateDisplayDuration(config.OVERLAY_SMALL_LOG_SETTINGS["display_duration"], size) + self.overlay.updateFadeoutDuration(config.OVERLAY_SMALL_LOG_SETTINGS["fadeout_duration"], size) + self.overlay.updateOpacity(config.OVERLAY_SMALL_LOG_SETTINGS["opacity"], size, True) + self.overlay.updateUiScaling(config.OVERLAY_SMALL_LOG_SETTINGS["ui_scaling"], size) def createOverlayImageLargeLog(self, message_type:str, message:str, translation:str): your_language = config.SELECTED_TARGET_LANGUAGES[config.SELECTED_TAB_NO]["primary"]["language"] @@ -745,32 +732,21 @@ class Model: self.overlay.updateImage(img, "large") def updateOverlayLargeLogSettings(self): - for key in self.overlay_large_log_pre_settings.keys(): - if self.overlay_large_log_pre_settings[key] != config.OVERLAY_LARGE_LOG_SETTINGS[key]: - match (key): - case "x_pos" | "y_pos" | "z_pos" | "x_rotation" | "y_rotation" | "z_rotation" | "tracker": - self.overlay.updatePosition( - config.OVERLAY_LARGE_LOG_SETTINGS["x_pos"], - config.OVERLAY_LARGE_LOG_SETTINGS["y_pos"], - config.OVERLAY_LARGE_LOG_SETTINGS["z_pos"], - config.OVERLAY_LARGE_LOG_SETTINGS["x_rotation"], - config.OVERLAY_LARGE_LOG_SETTINGS["y_rotation"], - config.OVERLAY_LARGE_LOG_SETTINGS["z_rotation"], - config.OVERLAY_LARGE_LOG_SETTINGS["tracker"], - "large", - ) - case "display_duration": - self.overlay.updateDisplayDuration(config.OVERLAY_LARGE_LOG_SETTINGS["display_duration"], "large") - case "fadeout_duration": - self.overlay.updateFadeoutDuration(config.OVERLAY_LARGE_LOG_SETTINGS["fadeout_duration"], "large") - case "opacity": - self.overlay.updateOpacity(config.OVERLAY_LARGE_LOG_SETTINGS["opacity"], "large", True) - case "ui_scaling": - self.overlay.updateUiScaling(config.OVERLAY_LARGE_LOG_SETTINGS["ui_scaling"], "large") - case _: - pass - break - self.overlay_large_log_pre_settings = config.OVERLAY_LARGE_LOG_SETTINGS + size = "large" + self.overlay.updatePosition( + config.OVERLAY_LARGE_LOG_SETTINGS["x_pos"], + config.OVERLAY_LARGE_LOG_SETTINGS["y_pos"], + config.OVERLAY_LARGE_LOG_SETTINGS["z_pos"], + config.OVERLAY_LARGE_LOG_SETTINGS["x_rotation"], + config.OVERLAY_LARGE_LOG_SETTINGS["y_rotation"], + config.OVERLAY_LARGE_LOG_SETTINGS["z_rotation"], + config.OVERLAY_LARGE_LOG_SETTINGS["tracker"], + size, + ) + self.overlay.updateDisplayDuration(config.OVERLAY_LARGE_LOG_SETTINGS["display_duration"], size) + self.overlay.updateFadeoutDuration(config.OVERLAY_LARGE_LOG_SETTINGS["fadeout_duration"], size) + self.overlay.updateOpacity(config.OVERLAY_LARGE_LOG_SETTINGS["opacity"], size, True) + self.overlay.updateUiScaling(config.OVERLAY_LARGE_LOG_SETTINGS["ui_scaling"], size) def startOverlay(self): self.overlay.startOverlay() diff --git a/src-python/models/overlay/overlay.py b/src-python/models/overlay/overlay.py index 7e798f83..b486c77a 100644 --- a/src-python/models/overlay/overlay.py +++ b/src-python/models/overlay/overlay.py @@ -80,9 +80,9 @@ class Overlay: self.lastUpdate = {} self.fadeRatio = {} for key, value in settings_dict.items(): - self.settings[key] = value - self.lastUpdate[key] = time.monotonic() - self.fadeRatio[key] = 1 + self.settings[key] = value + self.lastUpdate[key] = time.monotonic() + self.fadeRatio[key] = 1 def init(self): try: @@ -110,6 +110,8 @@ class Overlay: self.settings[size]["tracker"], size ) + self.updateDisplayDuration(self.settings[size]["display_duration"], size) + self.updateFadeoutDuration(self.settings[size]["fadeout_duration"], size) self.init_process = False except Exception as e: @@ -329,23 +331,16 @@ if __name__ == "__main__": img = overlay_image.createOverlayImageLargeLog("send", "こんにちは、世界!さようなら", "Japanese", "Hello,World!Goodbye", "Japanese") overlay.updateImage(img, "large") - img = overlay_image.createOverlayImageSmallLog("こんにちは、世界!さようなら", "Japanese", "Hello,World!Goodbye", "Japanese") - overlay.updateImage(img, "small") - time.sleep(10) - - img = overlay_image.createOverlayImageSmallLog("こんにちは、世界!さようなら2", "Japanese", "Hello,World!Goodbye", "Japanese") - overlay.updateImage(img, "small") - time.sleep(10) - for i in range(100): print(i) # Example usage img = overlay_image.createOverlayImageSmallLog(f"こんにちは、世界!さようなら_{i}", "Japanese", "Hello,World!Goodbye", "Japanese") overlay.updateImage(img, "small") - time.sleep(10) + time.sleep(5) - # img = overlay_image.createOverlayImageSmallLog("こんにちは、世界!さようなら", "Japanese", "Hello,World!Goodbye", "Japanese") - # overlay.updateImage(img, "small") - # time.sleep(0.5) + if i%2 == 0: + overlay.updatePosition(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, "HMD", "small") + else: + overlay.updatePosition(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, "RightHand", "small") overlay.shutdownOverlay() \ No newline at end of file