Skip to main content

Interface: IVolumeRenderStrategy

How a render gets its voxels.

The strategy is the unit that a render path works with, and the name of a texture set derives from it. A render component defines the strategies that it can use, and a strategy says what to bind and how to keep those bindings current.

A strategy need not be backed by a texture. "Full resolution over the whole region" is the default intent, and a device that cannot hold that texture may still hold the data in the voxel manager. Such a strategy is ready, its bindings are empty, and the render reads the composite instead.

A render may also choose no strategy at all, which binds no texture. A CPU render does that for its lossless pass.

A strategy instance belongs to one render path, which belongs to one viewport. It is therefore the single owner that a slab which re-points requires, which IMutableVolumeTextureSlab describes.

Properties​

name​

readonly name: string

The name of the strategy. The names of its texture sets derive from it.

Defined in​

packages/core/src/RenderingEngine/helpers/volumeRenderStrategy.ts:59


volume​

readonly volume: ImageVolume

The volume that this strategy draws.

Defined in​

packages/core/src/RenderingEngine/helpers/volumeRenderStrategy.ts:61

Methods​

activate()​

activate(): void

Takes what this strategy needs to draw.

Returns​

void

Defined in​

packages/core/src/RenderingEngine/helpers/volumeRenderStrategy.ts:67


bindings()​

bindings(): StrategyBinding[]

The textures to bind, in order. An empty list is legal and binds nothing.

Returns​

StrategyBinding[]

Defined in​

packages/core/src/RenderingEngine/helpers/volumeRenderStrategy.ts:65


deactivate()​

deactivate(): void

Gives back what this strategy holds.

Returns​

void

Defined in​

packages/core/src/RenderingEngine/helpers/volumeRenderStrategy.ts:69


isReady()​

isReady(): boolean

Whether this strategy can draw now.

Returns​

boolean

Defined in​

packages/core/src/RenderingEngine/helpers/volumeRenderStrategy.ts:63


update()​

update(): void

Brings what this strategy holds up to date. A strategy that holds an element that moves re-points that element here.

Returns​

void

Defined in​

packages/core/src/RenderingEngine/helpers/volumeRenderStrategy.ts:74