visualization.info.providers

Info Providers Module

This module provides a framework for generating informational text for different types of objects in the Optiland visualization system. It uses a strategy pattern to allow for extensible and modular information generation.

Kramer Harrison, 2025

Classes

BaseInfoProvider()

Base class for information providers.

LensInfoProvider(surface_group)

Provides information for Lens2D objects.

RayBundleInfoProvider()

Provides information for ray bundles.

SurfaceInfoProvider(surface_group)

Provides information for Surface2D objects.

class BaseInfoProvider[source]

Base class for information providers.

abstract get_info(obj: any) str[source]

Returns informational text for the given object.

class LensInfoProvider(surface_group)[source]

Provides information for Lens2D objects.

get_info(obj: Lens2D) str[source]

Returns informational text for the given object.

class RayBundleInfoProvider[source]

Provides information for ray bundles.

get_info(obj: RayBundle) str[source]

Returns informational text for the given object.

class SurfaceInfoProvider(surface_group)[source]

Provides information for Surface2D objects.

get_info(obj: Surface2D) str[source]

Returns informational text for the given object.