physical_apertures.unclipped#

A drawing boundary whose shape does not clip traced rays.

Classes

UnclippedAperture(aperture)

Retain an aperture's display shape while disabling ray clipping.

class UnclippedAperture(aperture: BaseAperture)[source]#

Retain an aperture’s display shape while disabling ray clipping.

Parameters:

aperture – Boundary used for display and membership queries. Its shape does not limit transmitted rays through this wrapper’s clip.

clip(rays: RealRays) → None[source]#

Leave ray intensity unchanged; this is a drawing boundary.

contains(x: BEArray, y: BEArray) → BEArray[source]#

Retain the child membership mask for drawing, without clipping rays.

property extent: tuple[float, float, float, float]#

Return the child boundary’s drawing extent.

classmethod from_dict(data: dict[str, Any]) → UnclippedAperture[source]#

Restore the drawing-only wrapper through native aperture dispatch.

scale(scale_factor: float) → None[source]#

Scale the drawing boundary in place.

to_dict() → dict[str, Any][source]#

Persist the drawing-only wrapper and its child aperture.

view(nx: int = 256, ny: int = 256, ax: Axes | None = None, buffer: float = 1.1, **kwargs) → tuple[Figure, Axes]#

Visualize the aperture.

Parameters:
  • nx (int) – The number of points in the x-direction.

  • ny (int) – The number of points in the y-direction.

  • ax (Axes) – The axes to plot on.

  • buffer (float) – The buffer around the aperture.

  • **kwargs – Additional keyword arguments to pass to the plot function.

Returns:

A tuple containing the figure and axes objects.

Return type:

tuple