Skip to content

Class: SliceView ​

Defined in: src/display/SliceView.ts:40

SliceView manages a PIXI.js Application to display slices from one or more volumetric datasets. It:

  • Holds a mainContainer for each sprite/layer
  • Maintains a CoordinateTransformer for screen↔volume coords
  • Listens to a SliceModel for current slice index or 3D coord

Implements ​

Properties ​

app ​

ts
app: Application;

Defined in: src/display/SliceView.ts:41


mainContainer ​

ts
mainContainer: Container;

Defined in: src/display/SliceView.ts:42


overlayContainer ​

ts
overlayContainer: Container;

Defined in: src/display/SliceView.ts:46


slider ​

ts
slider: HTMLInputElement | null = null;

Defined in: src/display/SliceView.ts:50


coordinateTransformer ​

ts
coordinateTransformer: CoordinateTransformer;

Defined in: src/display/SliceView.ts:51


domElement ​

ts
domElement: HTMLElement;

Defined in: src/display/SliceView.ts:52


layers ​

ts
layers: SliceLayer[] = [];

Defined in: src/display/SliceView.ts:54

Accessors ​

isDisposed ​

Get Signature ​

ts
get isDisposed(): boolean;

Defined in: src/display/SliceView.ts:543

Whether dispose() has been called on this view.

Returns ​

boolean


width ​

Get Signature ​

ts
get width(): number;

Defined in: src/display/SliceView.ts:704

Get the width of the view

Returns ​

number

Implementation of ​

ISliceView.width


height ​

Get Signature ​

ts
get height(): number;

Defined in: src/display/SliceView.ts:711

Get the height of the view

Returns ​

number

Implementation of ​

ISliceView.height

Methods ​

create() ​

ts
static create(
   domElement, 
   imageLayer, 
   neuroSpace, 
   viewAxes, 
   model, 
   options?): Promise<SliceView>;

Defined in: src/display/SliceView.ts:97

Factory function to build a SliceView instance (async).

Parameters ​

domElement ​

HTMLElement

imageLayer ​

ImageLayer

neuroSpace ​

NeuroSpace

viewAxes ​

AxisSet3D

model ​

SliceModel

options? ​

SliceViewOptions

Returns ​

Promise<SliceView>


updatePosition() ​

ts
updatePosition(coord): void;

Defined in: src/display/SliceView.ts:294

Updates the displayed position in 3D coordinate space in the imageLayer + overlay layers, then triggers re-render.

Parameters ​

coord ​

number[]

Returns ​

void

Implementation of ​

ISliceView.updatePosition


renderSlice() ​

ts
renderSlice(): void;

Defined in: src/display/SliceView.ts:309

Renders the current slice by:

  • Setting the pinned slice index in the transformer
  • Clearing previous container
  • Asking imageLayer + overlays to render
  • Fitting to screen

Returns ​

void

Implementation of ​

ISliceView.renderSlice


setFitRegion() ​

ts
setFitRegion(region): void;

Defined in: src/display/SliceView.ts:375

Fits the view to a sub-rectangle of image-content space (x along the i-axis, y along the j-axis, in slice pixels) instead of the whole slice. Pass null to fit the whole slice again.

Parameters ​

region ​

| { x0: number; y0: number; x1: number; y1: number; } | null

Returns ​

void


handleResize() ​

ts
handleResize(): void;

Defined in: src/display/SliceView.ts:525

Public method for programmatic resize triggering. Automatic window resize is handled by PIXI's resizeTo option. Uses requestAnimationFrame to ensure DOM layout is settled before calculating sizes.

Returns ​

void

Implementation of ​

ISliceView.handleResize


handlePointerMove() ​

ts
handlePointerMove(event): void;

Defined in: src/display/SliceView.ts:550

Dispatch pointer move events to layers

Parameters ​

event ​

SlicePointerEvent

Returns ​

void


addLayer() ​

ts
addLayer(id, layer): void;

Defined in: src/display/SliceView.ts:562

Adds a new overlay (e.g., crosshair).

Parameters ​

id ​

string

layer ​

SliceLayer

Returns ​

void

Implementation of ​

ISliceView.addLayer


removeLayer() ​

ts
removeLayer(id): void;

Defined in: src/display/SliceView.ts:579

Removes an overlay layer by id (e.g., 'crosshair').

Parameters ​

id ​

string

Returns ​

void

Implementation of ​

ISliceView.removeLayer


setBackground() ​

ts
setBackground(color, alpha?): void;

Defined in: src/display/SliceView.ts:602

Changes the canvas clear colour (and optionally its alpha) without rebuilding the view, e.g. when the host switches between a light and a dark ground.

Parameters ​

color ​

number

PIXI numeric colour, e.g. 0xfafaf7.

alpha? ​

number

Clear alpha in [0, 1]; unchanged when omitted.

Returns ​

void

Implementation of ​

ISliceView.setBackground


getBackground() ​

ts
getBackground(): object;

Defined in: src/display/SliceView.ts:624

The current canvas clear colour and alpha.

Returns ​

object

color ​
ts
color: number;
alpha ​
ts
alpha: number;

getLayer() ​

ts
getLayer(id): SliceLayer | undefined;

Defined in: src/display/SliceView.ts:634

Looks up an overlay layer by the id it was added under (e.g. 'crosshair').

Parameters ​

id ​

string

Returns ​

SliceLayer | undefined

Implementation of ​

ISliceView.getLayer


redraw() ​

ts
redraw(): void;

Defined in: src/display/SliceView.ts:642

Re-lays out screen-space overlays and renders the stage without rebuilding slice textures. Use after restyling an overlay in place.

Returns ​

void

Implementation of ​

ISliceView.redraw


getCoordinateTransformer() ​

ts
getCoordinateTransformer(): ICoordinateTransformer;

Defined in: src/display/SliceView.ts:655

Get the coordinate transformer for this view

Returns ​

ICoordinateTransformer

Implementation of ​

ISliceView.getCoordinateTransformer


getCanvas() ​

ts
getCanvas(): HTMLCanvasElement;

Defined in: src/display/SliceView.ts:662

Get the canvas element

Returns ​

HTMLCanvasElement

Implementation of ​

ISliceView.getCanvas


addPointerMoveListener() ​

ts
addPointerMoveListener(handler): void;

Defined in: src/display/SliceView.ts:676

Add a pointer move event listener

Parameters ​

handler ​

PointerEventHandler

Returns ​

void

Implementation of ​

ISliceView.addPointerMoveListener


addPointerDownListener() ​

ts
addPointerDownListener(handler): void;

Defined in: src/display/SliceView.ts:683

Add a pointer down event listener

Parameters ​

handler ​

PointerEventHandler

Returns ​

void

Implementation of ​

ISliceView.addPointerDownListener


removePointerMoveListener() ​

ts
removePointerMoveListener(handler): void;

Defined in: src/display/SliceView.ts:690

Remove a pointer move event listener

Parameters ​

handler ​

PointerEventHandler

Returns ​

void

Implementation of ​

ISliceView.removePointerMoveListener


removePointerDownListener() ​

ts
removePointerDownListener(handler): void;

Defined in: src/display/SliceView.ts:697

Remove a pointer down event listener

Parameters ​

handler ​

PointerEventHandler

Returns ​

void

Implementation of ​

ISliceView.removePointerDownListener


setZoom() ​

ts
setZoom(level): void;

Defined in: src/display/SliceView.ts:718

Set the zoom level, clamped to [MIN_ZOOM, MAX_ZOOM].

Parameters ​

level ​

number

Returns ​

void


getZoom() ​

ts
getZoom(): number;

Defined in: src/display/SliceView.ts:729

Get the current zoom level.

Returns ​

number


setPan() ​

ts
setPan(offset): void;

Defined in: src/display/SliceView.ts:736

Set the pan offset.

Parameters ​

offset ​
x ​

number

y ​

number

Returns ​

void


getPan() ​

ts
getPan(): object;

Defined in: src/display/SliceView.ts:747

Get the current pan offset.

Returns ​

object

x ​
ts
x: number;
y ​
ts
y: number;

resetView() ​

ts
resetView(): void;

Defined in: src/display/SliceView.ts:754

Reset zoom to 1.0 and pan to (0, 0).

Returns ​

void


getScale() ​

ts
getScale(): number;

Defined in: src/display/SliceView.ts:766

Get the current scale applied to the slice content.

Returns ​

number

Implementation of ​

ISliceView.getScale


disposeLayers() ​

ts
disposeLayers(): void;

Defined in: src/display/SliceView.ts:776

Dispose overlay layers without destroying the PIXI application. Orthogonal viewers use this as the first phase of teardown so Text resources from all renderers return to PIXI's shared pool before any one renderer clears that pool.

Returns ​

void

Implementation of ​

ISliceView.disposeLayers


dispose() ​

ts
dispose(): void;

Defined in: src/display/SliceView.ts:785

Cleanup

Returns ​

void

Implementation of ​

ISliceView.dispose

Released under the MIT License.