visualization.system.interaction
Interaction Manager Module
This module provides the InteractionManager class for handling user interactions
with Matplotlib-based visualizations of optical systems.
Kramer Harrison, 2025
Classes
-
class InteractionManager(fig, ax, optic, tooltip_format=None)[source]
Manages user interactions for optical system visualizations.
This class connects to a Matplotlib figure’s event loop to handle
mouse events, such as hovering and clicking, on plotted artists.
- Parameters:
-
-
clear_hover_effects()[source]
Clears any active hover effects.
-
close_info_panel(event=None)[source]
Closes the information panel.
-
connect()[source]
Connects to the Matplotlib event loop.
-
default_tooltip_format(optiland_object)[source]
Default formatter for the tooltip text.
-
disconnect()[source]
Disconnects from the Matplotlib event loop.
-
get_info_text(optiland_object)[source]
Gets the detailed information text for the given object.
-
highlight_artist(artist)[source]
Highlights the given artist.
-
on_hover(event)[source]
Handles hover events to show tooltips and highlight artists.
-
on_info_panel_click(event)[source]
Handles click events on the info panel.
-
register_artist(artist, optiland_object)[source]
Registers a Matplotlib artist with its corresponding Optiland object.
-
show_info_panel(optiland_object)[source]
Shows an information panel for the given object.
-
show_tooltip(artist, event)[source]
Shows a tooltip for the given artist.