new LayerAnnotation( [options])
Instantiates a LayerAnnotation object.
Parameters:
Name | Type | Argument | Description | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
Object |
<optional> |
An object literal with options that inherits from Layer. Properties
|
- Source:
Fires:
- LayerAnnotation#selected - Fired when annotation selection changes,event: with selected annotation as parameter
- LayerAnnotation#event:loaded - Fired when annotations are loaded
- Layer#update - Inherited from Layer,event: fired when redraw needed
- Layer#ready - Inherited from Layer,event: fired when layer is ready
Example
```javascript // Create annotation layer from remote JSON const annoLayer = new OpenLIME.LayerAnnotation({ annotations: 'https://example.com/annotations.json', style: '.annotation { color: red; }', overlay: true }); // Listen for selection changes annoLayer.addEvent('selected', (annotation) => { console.log('Selected annotation:', annotation.label); }); // Add to viewer viewer.addLayer('annotations', annoLayer); ```
Extends
Methods
-
addControl(name, value)
-
Adds a shader parameter control
Parameters:
Name Type Description name
string Control identifier
value
* Initial value
- Inherited From:
- Overrides:
- Source:
Throws:
-
If control already exists
- Type
- Error
-
addShaderFilter(filter)
-
Adds a filter to the current shader
Parameters:
Name Type Description filter
Object Filter specification
- Inherited From:
- Overrides:
- Source:
Throws:
-
If no shader is set
- Type
- Error
-
boundingBox()
-
Gets layer bounding box in scene coordinates
- Inherited From:
- Overrides:
- Source:
Returns:
Bounding box
- Type
- BoundingBox
-
clearShaderFilters(name)
-
Removes all filters from the current shader
Parameters:
Name Type Description name
Object Filter name
- Inherited From:
- Overrides:
- Source:
Throws:
-
If no shader is set
- Type
- Error
-
getAnnotationById(id)
-
Retrieves an annotation by its ID
Parameters:
Name Type Description id
string Annotation identifier
- Source:
Returns:
The found annotation or null if not found
- Type
- Annotation | null
-
getControl(name)
-
Gets the shader parameter control corresponding to
name
Parameters:
Name Type Description name
* The name of the control. return {*} The control
- Inherited From:
- Overrides:
- Source:
-
getMode()
-
Gets the current shader visualization mode
- Inherited From:
- Overrides:
- Source:
Returns:
Current mode or null if no shader
- Type
- string | null
-
getModes()
-
Gets available shader modes
- Inherited From:
- Overrides:
- Source:
Returns:
Array of available modes
- Type
- Array.<string>
-
getState( [stateMask])
-
Gets the current layer state
Parameters:
Name Type Argument Default Description stateMask
Object <optional>
null Optional mask to filter returned state properties
- Inherited From:
- Overrides:
- Source:
Returns:
Current state object
- Type
- Object
-
interpolateControls()
-
Updates control interpolation
- Inherited From:
- Overrides:
- Source:
Returns:
Whether all interpolations are complete
- Type
- boolean
-
pixelSizePerMM()
-
Gets pixel size in millimeters
- Inherited From:
- Overrides:
- Source:
Returns:
Size of one pixel in mm
- Type
- number
-
removeShaderFilter(name)
-
Removes a filter from the current shader
Parameters:
Name Type Description name
Object Filter name
- Inherited From:
- Overrides:
- Source:
Throws:
-
If no shader is set
- Type
- Error
-
scale()
-
Gets layer scale
- Inherited From:
- Overrides:
- Source:
Returns:
Current scale value
- Type
- number
-
setControl(name, value [, dt] [, easing])
-
Sets a shader control value with optional animation
Parameters:
Name Type Argument Default Description name
string Control identifier
value
* New value
dt
number <optional>
Animation duration in ms
easing
string <optional>
'linear' Easing function
- Inherited From:
- Overrides:
- Source:
Fires:
-
setMode(mode)
-
Sets shader visualization mode
Parameters:
Name Type Description mode
string Mode to set
- Inherited From:
- Overrides:
- Source:
Fires:
-
setSelected(anno [, on])
-
Sets the selection state of an annotation
Parameters:
Name Type Argument Default Description anno
Annotation The annotation to select/deselect
on
boolean <optional>
true Whether to select (true) or deselect (false)
- Source:
Fires:
- LayerAnnotation#event:selected
-
setShader(id)
-
Sets the active shader
Parameters:
Name Type Description id
string Shader identifier from registered shaders
- Inherited From:
- Overrides:
- Source:
Fires:
Throws:
-
If shader ID is not found
- Type
- Error
-
setState(state [, dt] [, easing])
-
Sets the layer state with optional animation
Parameters:
Name Type Argument Default Description state
Object State object with controls and mode
dt
number <optional>
Animation duration in ms
easing
string <optional>
'linear' Easing function ('linear'|'ease-out'|'ease-in-out')
- Inherited From:
- Overrides:
- Source:
-
setTransform(tx)
-
Sets the layer's transform
Parameters:
Name Type Description tx
Transform New transform
- Inherited From:
- Overrides:
- Source:
Fires:
- Layer#event:updateSize
-
setViewport(view)
-
Sets the layer's viewport
Parameters:
Name Type Description view
Object Viewport specification
Properties
Name Type Description x
number X position
y
number Y position
dx
number Width
dy
number Height
- Inherited From:
- Overrides:
- Source:
Fires:
-
setVisible(visible)
-
Sets layer visibility
Parameters:
Name Type Description visible
boolean Whether layer should be visible
- Inherited From:
- Overrides:
- Source:
Fires:
-
setZindex(zindex)
-
Sets layer rendering order
Parameters:
Name Type Description zindex
number Stack order value
- Inherited From:
- Overrides:
- Source:
Fires:
Events
-
ready
-
The event is fired when a layer is initialized.
- Inherited From:
- Overrides:
- Source:
-
update
-
The event is fired if a redraw is needed.
- Inherited From:
- Overrides:
- Source: