irsim.gui#

Submodules#

Classes#

MouseControl

Initialize MouseControl with comprehensive mouse interaction functionality.

Package Contents#

class irsim.gui.MouseControl(ax, zoom_factor=1.1)[source]#

Initialize MouseControl with comprehensive mouse interaction functionality.

Mouse Controls: - Mouse Move: Track cursor position and update current axes - Middle Click (Wheel Click): Reset zoom to original view - Scroll Up: Zoom in (centered on mouse position) - Scroll Down: Zoom out (centered on mouse position)

Parameters:
  • ax – The matplotlib axes to control

  • zoom_factor (float) – Factor by which to zoom in/out. Default is 1.1. Higher values = more aggressive zooming.

mouse_pos#

The current mouse position

left_click_pos#

The position of the left click

right_click_pos#

The position of the right click

zoom_factor = 1.1#
mouse_pos = None#
left_click_pos = None#
right_click_pos = None#
current_axes#
init_xlim#
init_ylim#
on_move(event)[source]#

Handle mouse movement events.

on_click(event)[source]#

Handle mouse click events.

on_release(event)[source]#

Handle mouse release events.

on_scroll(event)[source]#

Handle mouse scroll events for zooming.

Parameters:

event – Matplotlib scroll event containing scroll direction and position.

reset_zoom(ax=None)[source]#

Reset zoom to original view.

Parameters:

ax – Matplotlib axes to reset. If None, uses current axes.

set_zoom_factor(factor)[source]#

Set the zoom factor.

Parameters:

factor (float) – New zoom factor (>1 for more aggressive zooming).