Skip to main content

Class: SplineROITool

Extends​

  • ContourSegmentationBaseTool

Extended by​

Constructors​

new SplineROITool()​

new SplineROITool(toolProps, defaultToolProps): SplineROITool

Parameters​

• toolProps: PublicToolProps = {}

• defaultToolProps: SharedToolProp = ...

Returns​

SplineROITool

Overrides​

ContourSegmentationBaseTool.constructor

Defined in​

tools/src/tools/annotation/SplineROITool.ts:126

Properties​

_throttledCalculateCachedStats​

_throttledCalculateCachedStats: Function

Defined in​

tools/src/tools/annotation/SplineROITool.ts:107


configuration​

configuration: Record<string, any>

Inherited from​

ContourSegmentationBaseTool.configuration

Defined in​

tools/src/tools/base/BaseTool.ts:19


editData​

editData: object

annotation​

annotation: SplineROIAnnotation

contourHoleProcessingEnabled?​

optional contourHoleProcessingEnabled: boolean

handleIndex?​

optional handleIndex: number

hasMoved?​

optional hasMoved: boolean

lastCanvasPoint?​

optional lastCanvasPoint: Point2

movingTextBox?​

optional movingTextBox: boolean

newAnnotation?​

optional newAnnotation: boolean

viewportIdsToRender​

viewportIdsToRender: string[]

Overrides​

ContourSegmentationBaseTool.editData

Defined in​

tools/src/tools/annotation/SplineROITool.ts:108


eventDispatchDetail​

protected eventDispatchDetail: object

renderingEngineId​

renderingEngineId: string

viewportId​

viewportId: string

Inherited from​

ContourSegmentationBaseTool.eventDispatchDetail

Defined in​

tools/src/tools/base/AnnotationTool.ts:55


fireChangeOnUpdate​

fireChangeOnUpdate: object = null

annotationUID​

annotationUID: string

changeType​

changeType: ChangeTypes

contourHoleProcessingEnabled​

contourHoleProcessingEnabled: boolean

Defined in​

tools/src/tools/annotation/SplineROITool.ts:120


isDrawing​

isDrawing: boolean

Overrides​

ContourSegmentationBaseTool.isDrawing

Defined in​

tools/src/tools/annotation/SplineROITool.ts:118


isHandleOutsideImage​

isHandleOutsideImage: boolean = false

Overrides​

ContourSegmentationBaseTool.isHandleOutsideImage

Defined in​

tools/src/tools/annotation/SplineROITool.ts:119


isSuvScaled()​

isSuvScaled: (viewport, targetId, imageId?) => boolean = AnnotationTool.isSuvScaled

Returns true if the viewport is scaled to SUV units

Parameters​

• viewport: StackViewport | VolumeViewport

The viewport

• targetId: string

The annotation targetId

• imageId?: string

The annotation imageId

Returns​

boolean

Inherited from​

ContourSegmentationBaseTool.isSuvScaled

Defined in​

tools/src/tools/base/AnnotationTool.ts:420


memo​

protected memo: Memo

A memo recording the starting state of a tool. This will be updated as changes are made, and reflects the fact that a memo has been created.

Inherited from​

ContourSegmentationBaseTool.memo

Defined in​

tools/src/tools/base/BaseTool.ts:28


mode​

mode: ToolModes

Tool Mode - Active/Passive/Enabled/Disabled/

Inherited from​

ContourSegmentationBaseTool.mode

Defined in​

tools/src/tools/base/BaseTool.ts:23


splineToolNames​

protected splineToolNames: string[]

Defined in​

tools/src/tools/annotation/SplineROITool.ts:96


supportedInteractionTypes​

supportedInteractionTypes: InteractionTypes[]

Supported Interaction Types - currently only Mouse

Inherited from​

ContourSegmentationBaseTool.supportedInteractionTypes

Defined in​

tools/src/tools/base/BaseTool.ts:17


toolGroupId​

toolGroupId: string

ToolGroup ID the tool instance belongs to

Inherited from​

ContourSegmentationBaseTool.toolGroupId

Defined in​

tools/src/tools/base/BaseTool.ts:21


Actions​

static Actions: typeof SplineToolActions = SplineToolActions

Defined in​

tools/src/tools/annotation/SplineROITool.ts:104


defaults​

static defaults: object

Has the defaults associated with the base tool.

configuration​

configuration: object

configuration.activeStrategy​

activeStrategy: any = undefined

configuration.defaultStrategy​

defaultStrategy: any = undefined

configuration.strategies​

strategies: object = {}

configuration.strategyOptions​

strategyOptions: object = {}

Inherited from​

ContourSegmentationBaseTool.defaults

Defined in​

tools/src/tools/base/BaseTool.ts:33


PreviewSegmentIndex​

static PreviewSegmentIndex: number = 255

Inherited from​

ContourSegmentationBaseTool.PreviewSegmentIndex

Defined in​

tools/src/tools/base/ContourSegmentationBaseTool.ts:39


SplineTypes​

static SplineTypes: typeof SplineTypesEnum = SplineTypesEnum

Defined in​

tools/src/tools/annotation/SplineROITool.ts:103


toolName​

static toolName: string = 'SplineROI'

Overrides​

ContourSegmentationBaseTool.toolName

Defined in​

tools/src/tools/annotation/SplineROITool.ts:95

Accessors​

toolName​

get toolName(): string

Newer method for getting the tool name as a property

Returns​

string

Inherited from​

ContourSegmentationBaseTool.toolName

Defined in​

tools/src/tools/base/BaseTool.ts:82

Methods​

_endCallback()​

_endCallback(evt): void

Parameters​

• evt: InteractionEventType

Returns​

void

Defined in​

tools/src/tools/annotation/SplineROITool.ts:422


_isSplineROIAnnotation()​

_isSplineROIAnnotation(annotation): annotation is SplineROIAnnotation

Parameters​

• annotation: Annotation

Returns​

annotation is SplineROIAnnotation

Defined in​

tools/src/tools/annotation/SplineROITool.ts:1200


addAnnotation()​

protected addAnnotation(annotation, element): string

Add the annotation to the annotation manager.

Parameters​

• annotation: Annotation

Contour annotation that is being added

• element: HTMLDivElement

HTMLDivElement

Returns​

string

Inherited from​

ContourSegmentationBaseTool.addAnnotation

Defined in​

tools/src/tools/base/ContourSegmentationBaseTool.ts:112


addControlPointCallback()​

addControlPointCallback(evt, annotation): void

Parameters​

• evt: InteractionEventType

• annotation: SplineROIAnnotation

Returns​

void

Defined in​

tools/src/tools/annotation/SplineROITool.ts:1098


addNewAnnotation()​

addNewAnnotation(evt): SplineROIAnnotation

Based on the current position of the mouse and the current imageId to create a CircleROI Annotation and stores it in the annotationManager

Parameters​

• evt: InteractionEventType

EventTypes.NormalizedMouseEventType

Returns​

SplineROIAnnotation

The annotation object.

Overrides​

ContourSegmentationBaseTool.addNewAnnotation

Defined in​

tools/src/tools/annotation/SplineROITool.ts:297


annotationCompleted()​

protected annotationCompleted(evt): void

Parameters​

• evt: any

Returns​

void

Defined in​

tools/src/tools/annotation/SplineROITool.ts:214


applyActiveStrategy()​

applyActiveStrategy(enabledElement, operationData): any

Applies the active strategy function to the enabled element with the specified operation data.

Parameters​

• enabledElement: IEnabledElement

The element that is being operated on.

• operationData: unknown

The data that needs to be passed to the strategy.

Returns​

any

The result of the strategy.

Inherited from​

ContourSegmentationBaseTool.applyActiveStrategy

Defined in​

tools/src/tools/base/BaseTool.ts:102


applyActiveStrategyCallback()​

applyActiveStrategyCallback(enabledElement, operationData, callbackType, ...extraArgs): any

Applies the active strategy, with a given event type being applied. The event type function is found by indexing it on the active strategy function.

Parameters​

• enabledElement: IEnabledElement

The element that is being operated on.

• operationData: unknown

The data that needs to be passed to the strategy.

• callbackType: string

the type of the callback

• ...extraArgs: any[]

Returns​

any

The result of the strategy.

Inherited from​

ContourSegmentationBaseTool.applyActiveStrategyCallback

Defined in​

tools/src/tools/base/BaseTool.ts:126


cancel()​

abstract cancel(element): string

cancel Used to cancel the ongoing tool drawing and manipulation

Parameters​

• element: HTMLDivElement

Returns​

string

Overrides​

ContourSegmentationBaseTool.cancel

Defined in​

tools/src/tools/annotation/SplineROITool.ts:633


cancelAnnotation()​

protected cancelAnnotation(annotation): void

Unregister the segmentation when the annotation is canceled

Parameters​

• annotation: Annotation

Contour segmentation annotation

Returns​

void

Inherited from​

ContourSegmentationBaseTool.cancelAnnotation

Defined in​

tools/src/tools/base/ContourSegmentationBaseTool.ts:130


createAnnotation()​

protected createAnnotation(evt): ContourAnnotation

Creates a contour segmentation annotation

Parameters​

• evt: InteractionEventType

Returns​

ContourAnnotation

Overrides​

ContourSegmentationBaseTool.createAnnotation

Defined in​

tools/src/tools/annotation/SplineROITool.ts:1008


createInterpolatedSplineControl()​

protected createInterpolatedSplineControl(annotation): void

Creates new interpolated handles for the spline control given the polyline data. This allows creating the spline from polyline data directly.

Parameters​

• annotation: any

Returns​

void

Defined in​

tools/src/tools/annotation/SplineROITool.ts:973


createMemo()​

protected createMemo(element, annotation, options?): void

Creates a memo on the given annotation.

Parameters​

• element: any

• annotation: any

• options?: any

Returns​

void

Inherited from​

ContourSegmentationBaseTool.createMemo

Defined in​

tools/src/tools/base/AnnotationTool.ts:660


createSplineObjectFromType()​

createSplineObjectFromType(annotation, splineType): void

Parameters​

• annotation: ContourAnnotation

• splineType: string

Returns​

void

Defined in​

tools/src/tools/annotation/SplineROITool.ts:995


deleteControlPointCallback()​

deleteControlPointCallback(evt, annotation): void

Parameters​

• evt: InteractionEventType

• annotation: SplineROIAnnotation

Returns​

void

Defined in​

tools/src/tools/annotation/SplineROITool.ts:1168


doneEditMemo()​

doneEditMemo(): void

This clears and edit memo storage to allow for further history functions to be called. Calls the complete function if present, and pushes the memo to the history memo stack.

This should be called when a tool has finished making a change which should be separated from future/other changes in terms of the history. Usually that means on endCallback (mouse up), but some tools also make changes on the initial creation of an object or have alternate flows and the doneEditMemo has to be called on mouse down or other initiation events to ensure that new changes are correctly recorded.

If the tool has no end callback, then the doneEditMemo is called from the pre mouse down callback. See ZoomTool for an example of this usage.

Returns​

void

Inherited from​

ContourSegmentationBaseTool.doneEditMemo

Defined in​

tools/src/tools/base/BaseTool.ts:305


filterInteractableAnnotationsForElement()​

filterInteractableAnnotationsForElement(element, annotations): Annotations

Given the element and annotations which is an array of annotation, it filters the annotations array to only include the annotation based on the viewportType. If the viewport is StackViewport, it filters based on the current imageId of the viewport, if the viewport is volumeViewport, it only returns those that are within the same slice as the current rendered slice in the volume viewport. imageId as the enabledElement.

Parameters​

• element: HTMLDivElement

The HTML element

• annotations: Annotations

The annotations to filter (array of annotation)

Returns​

Annotations

The filtered annotations

Inherited from​

ContourSegmentationBaseTool.filterInteractableAnnotationsForElement

Defined in​

tools/src/tools/base/AnnotationDisplayTool.ts:63


getAnnotationStyle()​

protected getAnnotationStyle(context): any

Get the annotation style that may or may not be merged with segmentation style so that it can be used by ROI and contour segmentation annotations when rendered on a canvas or svg layer.

Segmentation style shall be a combination of four different configurations from different levels (global, toolGroup, segmentation and segment) and it shall not be used when isContourSegmentationTool() is overwritten and changed by a child class to return false when that class should work only as an ROI.

Parameters​

• context

• context.annotation: Annotation

• context.styleSpecifier: StyleSpecifier

Returns​

any

Inherited from​

ContourSegmentationBaseTool.getAnnotationStyle

Defined in​

tools/src/tools/base/ContourSegmentationBaseTool.ts:150


getHandleNearImagePoint()​

getHandleNearImagePoint(element, annotation, canvasCoords, proximity): ToolHandle

It checks if the mouse click is near TextBoxHandle or AnnotationHandle itself, and return either it. It prioritize TextBoxHandle over AnnotationHandle. If the mouse click is not near any of the handles, it does not return anything.

Parameters​

• element: HTMLDivElement

The element that the tool is attached to.

• annotation: Annotation

The annotation object associated with the annotation

• canvasCoords: Point2

The coordinates of the mouse click on canvas

• proximity: number

The distance from the mouse cursor to the point that is considered "near".

Returns​

ToolHandle

The handle that is closest to the cursor, or null if the cursor is not near any of the handles.

Inherited from​

ContourSegmentationBaseTool.getHandleNearImagePoint

Defined in​

tools/src/tools/base/AnnotationTool.ts:293


getLinkedTextBoxStyle()​

getLinkedTextBoxStyle(specifications, annotation?): Record<string, unknown>

It returns the style for the text box

Parameters​

• specifications: StyleSpecifier

• annotation?: Annotation

The annotation for the tool that is currently active.

Returns​

Record<string, unknown>

An object of the style settings for the text box.

Inherited from​

ContourSegmentationBaseTool.getLinkedTextBoxStyle

Defined in​

tools/src/tools/base/AnnotationTool.ts:359


getPolylinePoints()​

protected getPolylinePoints(annotation): Point3[]

Get polyline points in world space. Just to give a chance for child classes to override it.

Parameters​

• annotation: ContourAnnotation

Contour annotation

Returns​

Point3[]

Polyline points in world space

Inherited from​

ContourSegmentationBaseTool.getPolylinePoints

Defined in​

tools/src/tools/base/ContourBaseTool.ts:210


getReferencedImageId()​

protected getReferencedImageId(viewport, worldPos, viewPlaneNormal, viewUp?): string

Parameters​

• viewport: Viewport

• worldPos: Point3

• viewPlaneNormal: Point3

• viewUp?: Point3

Returns​

string

Inherited from​

ContourSegmentationBaseTool.getReferencedImageId

Defined in​

tools/src/tools/base/AnnotationDisplayTool.ts:184


getStyle()​

getStyle(property, specifications, annotation?): unknown

It takes the property (color, lineDash, etc.) and based on the state of the annotation (selected, highlighted etc.) it returns the appropriate value based on the central toolStyle settings for each level of specification.

Parameters​

• property: string

The name of the style property to get.

• specifications: StyleSpecifier

• annotation?: Annotation

The annotation for the tool that is currently active.

Returns​

unknown

The value of the property.

Inherited from​

ContourSegmentationBaseTool.getStyle

Defined in​

tools/src/tools/base/AnnotationDisplayTool.ts:221


getTargetId()​

protected getTargetId(viewport): string

Get the target Id for the viewport which will be used to store the cached statistics scoped to that target in the annotations. For StackViewport, targetId is the viewportId, but for the volume viewport, the targetId will be grabbed from the volumeId if particularly specified in the tool configuration, or if not, the first actorUID in the viewport.

Parameters​

• viewport: Viewport

viewport to get the targetId for

Returns​

string

targetId

Inherited from​

ContourSegmentationBaseTool.getTargetId

Defined in​

tools/src/tools/base/BaseTool.ts:238


getTargetImageData()​

protected getTargetImageData(targetId): IImageData | CPUIImageData

Get the image that is displayed for the targetId in the cachedStats which can be

  • imageId:<imageId>
  • volumeId:<volumeId>
  • videoId:<basePathForVideo>/frames/<frameSpecifier>

Parameters​

• targetId: string

annotation targetId stored in the cached stats

Returns​

IImageData | CPUIImageData

The image data for the target.

Inherited from​

ContourSegmentationBaseTool.getTargetImageData

Defined in​

tools/src/tools/base/BaseTool.ts:181


getToolName()​

getToolName(): string

Returns the name of the tool

Returns​

string

The name of the tool.

Inherited from​

ContourSegmentationBaseTool.getToolName

Defined in​

tools/src/tools/base/BaseTool.ts:90


handleSelectedCallback()​

handleSelectedCallback(evt, annotation, handle): void

Parameters​

• evt: InteractionEventType

• annotation: SplineROIAnnotation

• handle: ToolHandle

Returns​

void

Overrides​

ContourSegmentationBaseTool.handleSelectedCallback

Defined in​

tools/src/tools/annotation/SplineROITool.ts:381


initializeListeners()​

protected initializeListeners(): void

Initializes event listeners for the SplineROI tool. This method sets up the necessary event listeners that the tool needs to function properly. Currently, it listens for annotation completion events to handle post-completion processing such as converting contour segmentation annotations when simplified spline mode is enabled.

The listeners are attached to the global eventTarget to ensure they can receive events from any viewport or rendering engine instance.

Returns​

void

Defined in​

tools/src/tools/annotation/SplineROITool.ts:235


isContourSegmentationTool()​

protected isContourSegmentationTool(): boolean

Allow children classes inherit from this one and disable contour segmentation behavior and children classes shall work like a normal contour instance which is useful for "hybrid" classes such as splineROI/splineSeg, livewire/livewireSeg, freehandROI/freehandSeg. When this method returns false:

  • contour segmentation data is not added to new annotations
  • annotations are not registered/unregistered as segmentations
  • annotation style shall not contain any segmentation style

Returns​

boolean

True if it is a contour segmentation class or false otherwise

Overrides​

ContourSegmentationBaseTool.isContourSegmentationTool

Defined in​

tools/src/tools/annotation/SplineROITool.ts:766


isPointNearTool()​

isPointNearTool(element, annotation, canvasCoords, proximity): boolean

It returns if the canvas point is near the provided annotation in the provided element or not. A proximity is passed to the function to determine the proximity of the point to the annotation in number of pixels.

Parameters​

• element: HTMLDivElement

HTML Element

• annotation: SplineROIAnnotation

Annotation

• canvasCoords: Point2

Canvas coordinates

• proximity: number

Proximity to tool to consider

Returns​

boolean

Boolean, whether the canvas point is near tool

Overrides​

ContourSegmentationBaseTool.isPointNearTool

Defined in​

tools/src/tools/annotation/SplineROITool.ts:345


isSplineAnnotation()​

isSplineAnnotation(annotation): boolean

Parameters​

• annotation: ContourAnnotation

Returns​

boolean

Defined in​

tools/src/tools/annotation/SplineROITool.ts:991


mouseMoveCallback()​

mouseMoveCallback(evt, filteredAnnotations?): boolean

Event handler for Cornerstone MOUSE_MOVE event.

Parameters​

• evt: MouseMoveEventType

The normalized mouse event

• filteredAnnotations?: Annotations

The annotations to check for hover interactions

Returns​

boolean

True if the annotation needs to be re-drawn by the annotationRenderingEngine.

Inherited from​

ContourSegmentationBaseTool.mouseMoveCallback

Defined in​

tools/src/tools/base/AnnotationTool.ts:228


moveAnnotation()​

protected moveAnnotation(annotation, worldPosDelta): void

Move an annotation and all its child annotations in a recursive way.

That is useful when clicking on a spline contour to completely translate it to a different place. In that case all holes (child annotations) must also be translated too.

Parameters​

• annotation: Annotation

Annotation

• worldPosDelta: Point3

Delta in world space

Returns​

void

Inherited from​

ContourSegmentationBaseTool.moveAnnotation

Defined in​

tools/src/tools/base/ContourBaseTool.ts:157


onImageSpacingCalibrated()​

onImageSpacingCalibrated(evt): void

On Image Calibration, take all the annotation from the AnnotationState manager, and invalidate them to force them to be re-rendered and their stats to be recalculated. Then use the old and new imageData (non-calibrated and calibrated) to calculate the new position for the annotations in the space of the new imageData.

Parameters​

• evt: ImageSpacingCalibratedEvent

The calibration event

Returns​

void

Inherited from​

ContourSegmentationBaseTool.onImageSpacingCalibrated

Defined in​

tools/src/tools/base/AnnotationDisplayTool.ts:88


onSetToolActive()​

onSetToolActive(): void

The method ensures that event listeners are properly initialized so the tool can handle annotation completion events and perform necessary post-processing operations.

Note: A tool can be enabled but not active. When active, it becomes the primary tool for handling user interactions in the viewport.

Returns​

void

Defined in​

tools/src/tools/annotation/SplineROITool.ts:272


onSetToolDisabled()​

onSetToolDisabled(): void

The method removes all event listeners to ensure clean shutdown and prevent memory leaks. This is crucial for proper resource management, especially in applications where tools are frequently enabled/disabled or when multiple tool instances exist.

After this method is called, the tool will no longer process annotation completion events or perform any background operations.

Returns​

void

Defined in​

tools/src/tools/annotation/SplineROITool.ts:285


onSetToolEnabled()​

onSetToolEnabled(): void

The method initializes the necessary event listeners to ensure the tool can respond to relevant events such as annotation completion for processing spline annotations.

Returns​

void

Defined in​

tools/src/tools/annotation/SplineROITool.ts:261


redo()​

redo(): void

Redo an action (undo the undo)

Returns​

void

Inherited from​

ContourSegmentationBaseTool.redo

Defined in​

tools/src/tools/base/BaseTool.ts:261


removeListeners()​

protected removeListeners(): void

Removes all event listeners that were previously set up by initializeListeners(). This method is responsible for cleaning up event listeners to prevent memory leaks and unwanted event handling when the tool is no longer active or enabled.

It removes the annotation completion event listener that was used for handling post-completion processing of spline annotations.

Returns​

void

Defined in​

tools/src/tools/annotation/SplineROITool.ts:250


renderAnnotation()​

renderAnnotation(enabledElement, svgDrawingHelper): boolean

it is used to draw the annotation in each request animation frame. It calculates the updated cached statistics if data is invalidated and cache it.

Parameters​

• enabledElement: IEnabledElement

The Cornerstone's enabledElement.

• svgDrawingHelper: SVGDrawingHelper

The svgDrawingHelper providing the context for drawing.

Returns​

boolean

Inherited from​

ContourSegmentationBaseTool.renderAnnotation

Defined in​

tools/src/tools/base/ContourBaseTool.ts:39


renderAnnotationInstance()​

protected renderAnnotationInstance(renderContext): boolean

Render an annotation instance

Parameters​

• renderContext: AnnotationRenderContext

Render context that contains the annotation, enabledElement, etc.

Returns​

boolean

True if the annotation is rendered or false otherwise

Overrides​

ContourSegmentationBaseTool.renderAnnotationInstance

Defined in​

tools/src/tools/annotation/SplineROITool.ts:777


setActiveStrategy()​

setActiveStrategy(strategyName): void

Sets the active strategy for a tool. Strategies are multiple implementations of tool behavior that can be switched by tool configuration.

Parameters​

• strategyName: string

name of the strategy to be set as active

Returns​

void

Inherited from​

ContourSegmentationBaseTool.setActiveStrategy

Defined in​

tools/src/tools/base/BaseTool.ts:167


setConfiguration()​

setConfiguration(newConfiguration): void

merges the new configuration with the tool configuration

Parameters​

• newConfiguration: Record<string, any>

Returns​

void

Inherited from​

ContourSegmentationBaseTool.setConfiguration

Defined in​

tools/src/tools/base/BaseTool.ts:153


toolSelectedCallback()​

toolSelectedCallback(evt, annotation): void

Parameters​

• evt: InteractionEventType

• annotation: SplineROIAnnotation

Returns​

void

Overrides​

ContourSegmentationBaseTool.toolSelectedCallback

Defined in​

tools/src/tools/annotation/SplineROITool.ts:356


triggerAnnotationCompleted()​

triggerAnnotationCompleted(annotation, contourHoleProcessingEnabled): void

Triggers an annotation completed event.

Parameters​

• annotation: SplineROIAnnotation

• contourHoleProcessingEnabled: boolean

Returns​

void

Defined in​

tools/src/tools/annotation/SplineROITool.ts:664


triggerAnnotationModified()​

triggerAnnotationModified(annotation, enabledElement, changeType): void

Triggers an annotation modified event.

Parameters​

• annotation: SplineROIAnnotation

• enabledElement: IEnabledElement

• changeType: ChangeTypes = ChangeTypes.StatsUpdated

Returns​

void

Defined in​

tools/src/tools/annotation/SplineROITool.ts:681


triggerChangeEvent()​

triggerChangeEvent(annotation, enabledElement, changeType, contourHoleProcessingEnabled): void

Triggers an annotation complete or modified event based on changeType.

Parameters​

• annotation: SplineROIAnnotation

• enabledElement: IEnabledElement

• changeType: ChangeTypes = ChangeTypes.StatsUpdated

• contourHoleProcessingEnabled: any

Returns​

void

Defined in​

tools/src/tools/annotation/SplineROITool.ts:701


undo()​

undo(): void

Undoes an action

Returns​

void

Inherited from​

ContourSegmentationBaseTool.undo

Defined in​

tools/src/tools/base/BaseTool.ts:251


updateContourPolyline()​

protected updateContourPolyline(annotation, polylineData, transforms, options?): void

Parameters​

• annotation: ContourAnnotation

• polylineData

• polylineData.closed?: boolean

• polylineData.points: Point2[]

• polylineData.targetWindingDirection?: ContourWindingDirection

• transforms?

• transforms.canvasToWorld?

• transforms.worldToCanvas?

• options?

• options.updateWindingDirection?: boolean

Returns​

void

Inherited from​

ContourSegmentationBaseTool.updateContourPolyline

Defined in​

tools/src/tools/base/ContourBaseTool.ts:178


createAndAddAnnotation()​

static createAndAddAnnotation(viewport, ...annotationBaseData): void

Creates and adds an annotation of the given type, firing the annotation modified event on the new annotation. This implicitly uses the static class when you call it on the correct base class. For example, you can call the KeyImageTool.createAnnotation method on KeyImageTool.toolName by calling KeyImageTool.createAndAddAnnotation

Parameters​

• viewport: any

• ...annotationBaseData: any[]

Returns​

void

Inherited from​

ContourSegmentationBaseTool.createAndAddAnnotation

Defined in​

tools/src/tools/base/AnnotationTool.ts:128


createAnnotation()​

static createAnnotation(...annotationBaseData): Annotation

Creates a base annotation object, adding in any annotation base data provided

Parameters​

• ...annotationBaseData: any[]

Returns​

Annotation

Inherited from​

ContourSegmentationBaseTool.createAnnotation

Defined in​

tools/src/tools/base/AnnotationTool.ts:73


createAnnotationForViewport()​

static createAnnotationForViewport<T>(viewport, ...annotationBaseData): T

Creates a new annotation for the given viewport. This just adds the viewport reference data to the metadata, and otherwise returns the static class createAnnotation data.

Type Parameters​

• T extends Annotation

Parameters​

• viewport: any

• ...annotationBaseData: any[]

Returns​

T

Inherited from​

ContourSegmentationBaseTool.createAnnotationForViewport

Defined in​

tools/src/tools/base/AnnotationTool.ts:110


createAnnotationMemo()​

static createAnnotationMemo(element, annotation, options?): object

Creates an annotation memo storing the current data state on the given annotation object. This will store/recover handles data, text box and contour data, and if the options are set for deletion, will apply that correctly.

Parameters​

• element: any

that the annotation is shown on.

• annotation: Annotation

to store a memo for the current state.

• options?

whether the annotation is being created (newAnnotation) or is in the process of being deleted (deleting)

  • Note the naming on deleting is to indicate the deletion is in progress, as the createAnnotationMemo needs to be called BEFORE the annotation is actually deleted.
  • deleting with a value of false is the same as newAnnotation=true, as it is simply the opposite direction. Use undefined for both newAnnotation and deleting for non-create/delete operations.

• options.deleting?: boolean

• options.newAnnotation?: boolean

Returns​

object

Memo containing the annotation data.

id​

id: string = annotationUID

operationType​

operationType: string = 'annotation'

restoreMemo()​

restoreMemo: () => void

Returns​

void

Inherited from​

ContourSegmentationBaseTool.createAnnotationMemo

Defined in​

tools/src/tools/base/AnnotationTool.ts:567


createAnnotationState()​

protected static createAnnotationState(annotation, deleting?): object

Creates an annotation state copy to allow storing the current state of an annotation. This class has knowledge about the contour and spline implementations in order to copy the contour object efficiently, and to allow copying the spline object (which has member variables etc).

Parameters​

• annotation: Annotation

the annotation to create a clone of

• deleting?: boolean

a flag to indicate that this object is about to be deleted (deleting true), or was just created (deleting false), or neither (deleting undefined).

Returns​

object

state information for the given annotation.

annotationUID​

annotationUID: string

data​

data: AnnotationData

deleting​

deleting: boolean

Inherited from​

ContourSegmentationBaseTool.createAnnotationState

Defined in​

tools/src/tools/base/AnnotationTool.ts:514


createZoomPanMemo()​

static createZoomPanMemo(viewport): object

Creates a zoom/pan memo that remembers the original zoom/pan position for the given viewport.

Parameters​

• viewport: any

Returns​

object

restoreMemo()​

restoreMemo: () => void

Returns​

void

Inherited from​

ContourSegmentationBaseTool.createZoomPanMemo

Defined in​

tools/src/tools/base/BaseTool.ts:269


endGroupRecording()​

static endGroupRecording(): void

Ends a group recording of history memo

Returns​

void

Inherited from​

ContourSegmentationBaseTool.endGroupRecording

Defined in​

tools/src/tools/base/BaseTool.ts:318


hydrate()​

static hydrate(viewportId, points, options?): SplineROIAnnotation

Parameters​

• viewportId: string

• points: Point3[]

• options?

• options.annotationUID?: string

• options.referencedImageId?: string

• options.splineType?: SplineTypesEnum

• options.toolInstance?: SplineROITool

• options.viewplaneNormal?: Point3

• options.viewUp?: Point3

Returns​

SplineROIAnnotation

Defined in​

tools/src/tools/annotation/SplineROITool.ts:1381


hydrateBase()​

protected static hydrateBase<T>(ToolClass, enabledElement, points, options): object

Type Parameters​

• T extends AnnotationTool

Parameters​

• ToolClass

• enabledElement: IEnabledElement

• points: Point3[]

• options = {}

• options.annotationUID?: string

• options.referencedImageId?: string

• options.toolInstance?: T

• options.viewplaneNormal?: Point3

• options.viewUp?: Point3

Returns​

object

FrameOfReferenceUID​

FrameOfReferenceUID: string

instance​

instance: T

referencedImageId​

referencedImageId: any

viewPlaneNormal​

viewPlaneNormal: Point3 = finalViewPlaneNormal

viewport​

viewport: StackViewport | VolumeViewport

viewUp​

viewUp: Point3 = finalViewUp

Inherited from​

ContourSegmentationBaseTool.hydrateBase

Defined in​

tools/src/tools/base/AnnotationTool.ts:668


isSuvScaled()​

static isSuvScaled(viewport, targetId, imageId?): boolean

Returns true if the viewport is scaled to SUV units

Parameters​

• viewport: StackViewport | VolumeViewport

The viewport

• targetId: string

The annotation targetId

• imageId?: string

The annotation imageId

Returns​

boolean

Inherited from​

ContourSegmentationBaseTool.isSuvScaled

Defined in​

tools/src/tools/base/AnnotationTool.ts:405


mergeDefaultProps()​

static mergeDefaultProps(defaultProps, additionalProps?): any

Does a deep merge of property options. Allows extending the default values for a child class.

Parameters​

• defaultProps = {}

this is a base set of defaults to merge into

• additionalProps?: any

the additional properties to merge into the default props

Returns​

any

defaultProps if additional props not defined, or a merge into a new object containing additionalProps adding onto and overriding defaultProps.

Inherited from​

ContourSegmentationBaseTool.mergeDefaultProps

Defined in​

tools/src/tools/base/BaseTool.ts:72


startGroupRecording()​

static startGroupRecording(): void

Starts a group recording of history memo, so that with a single undo you can undo multiple actions that are related to each other

Returns​

void

Inherited from​

ContourSegmentationBaseTool.startGroupRecording

Defined in​

tools/src/tools/base/BaseTool.ts:313