cigvis.sliceviewer.nodes module#

Internal node types for sliceviewer.

class cigvis.sliceviewer.nodes.MaskSpec(volume: ndarray, cmap: object, clim: Tuple[float, float])#

Bases: object

An overlay volume attached to a SliceNode.

clim: Tuple[float, float]#
cmap: object#
volume: ndarray#
class cigvis.sliceviewer.nodes.SliceNode(volume: ~numpy.ndarray, display_axes: ~typing.Tuple[int, int], indices: ~typing.Dict[int, int], cmap: object, clim: ~typing.Tuple[float, float], aspect: str | float = 1.0, interpolation: str | bool | None = 'nearest', render_mode: str = 'rgba', axis_labels: ~typing.Tuple[str, ...] = <factory>, masks: ~typing.List[~cigvis.sliceviewer.nodes.MaskSpec] = <factory>, _linked: ~cigvis.sliceviewer.nodes.SliceNode | None = None)#

Bases: object

Render a 2D frame from a 2D/3D/4D array.

aspect: str | float = 1.0#
axis_labels: Tuple[str, ...]#
axis_name(axis: int) str#
axis_short_name(axis: int) str#
clamp_axis_index(axis: int, idx: int) int#
clim: Tuple[float, float]#
cmap: object#
display_axes: Tuple[int, int]#
get_frame() ndarray#
get_index(axis: int) int#
get_mask_frame(mask: MaskSpec) ndarray#
property hidden_axes: Tuple[int, ...]#
indices: Dict[int, int]#
interpolation: str | bool | None = 'nearest'#
masks: List[MaskSpec]#
property ndim: int#
render() ndarray#

Blend base slice + all masks into an RGBA uint8 (h, w, 4) array. Uses cigvis.colormap.arrs_to_image, same as the 3D viewers.

render_mode: str = 'rgba'#
set_display_axes(display_axes: Tuple[int, int]) None#
set_index(axis: int, idx: int) None#
property shape: Tuple[int, ...]#
volume: ndarray#
property x_axis: int#
property y_axis: int#