@cornerstonejs/core 2.4.0 → 2.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -13,6 +13,6 @@ import ViewportStatus from './ViewportStatus';
13
13
  import ImageQualityStatus from './ImageQualityStatus';
14
14
  import * as VideoEnums from './VideoEnums';
15
15
  import MetadataModules from './MetadataModules';
16
- import VoxelManagerEnum from './VoxelManagerEnum';
17
16
  import { GenerateImageType } from './GenerateImageType';
17
+ import VoxelManagerEnum from './VoxelManagerEnum';
18
18
  export { Events, BlendModes, CalibrationTypes, InterpolationType, RequestType, ViewportType, OrientationAxis, GeometryType, ContourType, VOILUTFunctionType, DynamicOperatorType, ViewportStatus, VideoEnums, MetadataModules, ImageQualityStatus, VoxelManagerEnum, GenerateImageType, };
@@ -13,6 +13,6 @@ import ViewportStatus from './ViewportStatus';
13
13
  import ImageQualityStatus from './ImageQualityStatus';
14
14
  import * as VideoEnums from './VideoEnums';
15
15
  import MetadataModules from './MetadataModules';
16
- import VoxelManagerEnum from './VoxelManagerEnum';
17
16
  import { GenerateImageType } from './GenerateImageType';
17
+ import VoxelManagerEnum from './VoxelManagerEnum';
18
18
  export { Events, BlendModes, CalibrationTypes, InterpolationType, RequestType, ViewportType, OrientationAxis, GeometryType, ContourType, VOILUTFunctionType, DynamicOperatorType, ViewportStatus, VideoEnums, MetadataModules, ImageQualityStatus, VoxelManagerEnum, GenerateImageType, };
@@ -0,0 +1,21 @@
1
+ export type Memo = {
2
+ restoreMemo: (undo?: boolean) => void;
3
+ };
4
+ export type Memoable = {
5
+ createMemo: () => Memo;
6
+ };
7
+ export declare class HistoryMemo {
8
+ readonly label: any;
9
+ private _size;
10
+ private position;
11
+ private redoAvailable;
12
+ private undoAvailable;
13
+ private ring;
14
+ constructor(label?: string, size?: number);
15
+ get size(): any;
16
+ undo(items?: number): void;
17
+ redo(items?: number): void;
18
+ push(item: Memo | Memoable): Memo;
19
+ }
20
+ declare const DefaultHistoryMemo: HistoryMemo;
21
+ export { DefaultHistoryMemo };
@@ -0,0 +1,54 @@
1
+ export class HistoryMemo {
2
+ constructor(label = 'Tools', size = 50) {
3
+ this.position = -1;
4
+ this.redoAvailable = 0;
5
+ this.undoAvailable = 0;
6
+ this.ring = new Array();
7
+ this.label = label;
8
+ this._size = size;
9
+ }
10
+ get size() {
11
+ return this._size;
12
+ }
13
+ undo(items = 1) {
14
+ while (items > 0 && this.undoAvailable > 0) {
15
+ const item = this.ring[this.position];
16
+ item.restoreMemo(true);
17
+ items--;
18
+ this.redoAvailable++;
19
+ this.undoAvailable--;
20
+ this.position = (this.position - 1 + this.size) % this.size;
21
+ }
22
+ }
23
+ redo(items = 1) {
24
+ while (items > 0 && this.redoAvailable > 0) {
25
+ const newPosition = (this.position + 1) % this.size;
26
+ const item = this.ring[newPosition];
27
+ item.restoreMemo(false);
28
+ items--;
29
+ this.position = newPosition;
30
+ this.undoAvailable++;
31
+ this.redoAvailable--;
32
+ }
33
+ }
34
+ push(item) {
35
+ if (!item) {
36
+ return;
37
+ }
38
+ const memo = item.restoreMemo
39
+ ? item
40
+ : item.createMemo?.();
41
+ if (!memo) {
42
+ return;
43
+ }
44
+ this.redoAvailable = 0;
45
+ if (this.undoAvailable < this._size) {
46
+ this.undoAvailable++;
47
+ }
48
+ this.position = (this.position + 1) % this._size;
49
+ this.ring[this.position] = memo;
50
+ return memo;
51
+ }
52
+ }
53
+ const DefaultHistoryMemo = new HistoryMemo();
54
+ export { DefaultHistoryMemo };
@@ -23,6 +23,7 @@ import getViewportsWithVolumeId from './getViewportsWithVolumeId';
23
23
  import transformWorldToIndex from './transformWorldToIndex';
24
24
  import transformIndexToWorld from './transformIndexToWorld';
25
25
  import loadImageToCanvas from './loadImageToCanvas';
26
+ import * as HistoryMemo from './historyMemo';
26
27
  import renderToCanvasCPU from './renderToCanvasCPU';
27
28
  import renderToCanvasGPU from './renderToCanvasGPU';
28
29
  import worldToImageCoords from './worldToImageCoords';
@@ -84,4 +85,4 @@ import { jumpToSlice } from './jumpToSlice';
84
85
  import scroll from './scroll';
85
86
  import clip from './clip';
86
87
  declare const getViewportModality: (viewport: IViewport, volumeId?: string) => string;
87
- export { eventListener, csUtils as invertRgbTransferFunction, createSigmoidRGBTransferFunction, getVoiFromSigmoidRGBTransferFunction, createLinearRGBTransferFunction, scaleRgbTransferFunction, triggerEvent, imageIdToURI, calibratedPixelSpacingMetadataProvider, clamp, uuidv4, planar, getMinMax, getRuntimeId, isEqual, isEqualAbs, isEqualNegative, isOpposite, getViewportModality, windowLevel, convertToGrayscale, getClosestImageId, getSpacingInNormalDirection, getTargetVolumeAndSpacingInNormalDir, getVolumeActorCorners, indexWithinDimensions, getVolumeViewportsContainingSameVolumes, getViewportsWithVolumeId, transformWorldToIndex, transformIndexToWorld, loadImageToCanvas, renderToCanvasCPU, renderToCanvasGPU, worldToImageCoords, imageToWorldCoords, getVolumeSliceRangeInfo, getVolumeViewportScrollInfo, getSliceRange, snapFocalPointToSlice, getImageSliceDataForVolumeViewport, isImageActor, isPTPrescaledWithSUV, actorIsA, getViewportsWithImageURI, getClosestStackImageIndexForPoint, getCurrentVolumeViewportSlice, calculateViewportsSpatialRegistration, spatialRegistrationMetadataProvider, getViewportImageCornersInWorld, hasNaNValues, applyPreset, deepMerge, PointsManager, getScalingParameters, colormap, getImageLegacy, ProgressiveIterator, decimate, imageRetrieveMetadataProvider, transferFunctionUtils, updateVTKImageDataWithCornerstoneImage, sortImageIdsAndGetSpacing, makeVolumeMetadata, isValidVolume, genericMetadataProvider, isVideoTransferSyntax, generateVolumePropsFromImageIds, getBufferConfiguration, VoxelManager, RLEVoxelMap, convertStackToVolumeViewport, convertVolumeToStackViewport, roundNumber, roundToPrecision, getViewportImageIds, getRandomSampleFromArray, getVolumeId, color, hasFloatScalingParameters, getDynamicVolumeInfo, autoLoad, scaleArray, deepClone, splitImageIdsBy4DTags, pointInShapeCallback, deepEqual, jumpToSlice, scroll, clip, };
88
+ export { eventListener, csUtils as invertRgbTransferFunction, createSigmoidRGBTransferFunction, getVoiFromSigmoidRGBTransferFunction, createLinearRGBTransferFunction, scaleRgbTransferFunction, triggerEvent, imageIdToURI, calibratedPixelSpacingMetadataProvider, clamp, uuidv4, planar, getMinMax, getRuntimeId, isEqual, isEqualAbs, isEqualNegative, isOpposite, getViewportModality, windowLevel, convertToGrayscale, getClosestImageId, getSpacingInNormalDirection, getTargetVolumeAndSpacingInNormalDir, getVolumeActorCorners, indexWithinDimensions, getVolumeViewportsContainingSameVolumes, getViewportsWithVolumeId, transformWorldToIndex, transformIndexToWorld, loadImageToCanvas, renderToCanvasCPU, renderToCanvasGPU, worldToImageCoords, imageToWorldCoords, getVolumeSliceRangeInfo, getVolumeViewportScrollInfo, getSliceRange, snapFocalPointToSlice, getImageSliceDataForVolumeViewport, isImageActor, isPTPrescaledWithSUV, actorIsA, getViewportsWithImageURI, getClosestStackImageIndexForPoint, getCurrentVolumeViewportSlice, calculateViewportsSpatialRegistration, spatialRegistrationMetadataProvider, getViewportImageCornersInWorld, hasNaNValues, applyPreset, deepMerge, PointsManager, getScalingParameters, colormap, getImageLegacy, ProgressiveIterator, decimate, imageRetrieveMetadataProvider, transferFunctionUtils, updateVTKImageDataWithCornerstoneImage, sortImageIdsAndGetSpacing, makeVolumeMetadata, isValidVolume, genericMetadataProvider, isVideoTransferSyntax, HistoryMemo, generateVolumePropsFromImageIds, getBufferConfiguration, VoxelManager, RLEVoxelMap, convertStackToVolumeViewport, convertVolumeToStackViewport, roundNumber, roundToPrecision, getViewportImageIds, getRandomSampleFromArray, getVolumeId, color, hasFloatScalingParameters, getDynamicVolumeInfo, autoLoad, scaleArray, deepClone, splitImageIdsBy4DTags, pointInShapeCallback, deepEqual, jumpToSlice, scroll, clip, };
@@ -23,6 +23,7 @@ import getViewportsWithVolumeId from './getViewportsWithVolumeId';
23
23
  import transformWorldToIndex from './transformWorldToIndex';
24
24
  import transformIndexToWorld from './transformIndexToWorld';
25
25
  import loadImageToCanvas from './loadImageToCanvas';
26
+ import * as HistoryMemo from './historyMemo';
26
27
  import renderToCanvasCPU from './renderToCanvasCPU';
27
28
  import renderToCanvasGPU from './renderToCanvasGPU';
28
29
  import worldToImageCoords from './worldToImageCoords';
@@ -85,4 +86,4 @@ import { jumpToSlice } from './jumpToSlice';
85
86
  import scroll from './scroll';
86
87
  import clip from './clip';
87
88
  const getViewportModality = (viewport, volumeId) => _getViewportModality(viewport, volumeId, cache.getVolume);
88
- export { eventListener, csUtils as invertRgbTransferFunction, createSigmoidRGBTransferFunction, getVoiFromSigmoidRGBTransferFunction, createLinearRGBTransferFunction, scaleRgbTransferFunction, triggerEvent, imageIdToURI, calibratedPixelSpacingMetadataProvider, clamp, uuidv4, planar, getMinMax, getRuntimeId, isEqual, isEqualAbs, isEqualNegative, isOpposite, getViewportModality, windowLevel, convertToGrayscale, getClosestImageId, getSpacingInNormalDirection, getTargetVolumeAndSpacingInNormalDir, getVolumeActorCorners, indexWithinDimensions, getVolumeViewportsContainingSameVolumes, getViewportsWithVolumeId, transformWorldToIndex, transformIndexToWorld, loadImageToCanvas, renderToCanvasCPU, renderToCanvasGPU, worldToImageCoords, imageToWorldCoords, getVolumeSliceRangeInfo, getVolumeViewportScrollInfo, getSliceRange, snapFocalPointToSlice, getImageSliceDataForVolumeViewport, isImageActor, isPTPrescaledWithSUV, actorIsA, getViewportsWithImageURI, getClosestStackImageIndexForPoint, getCurrentVolumeViewportSlice, calculateViewportsSpatialRegistration, spatialRegistrationMetadataProvider, getViewportImageCornersInWorld, hasNaNValues, applyPreset, deepMerge, PointsManager, getScalingParameters, colormap, getImageLegacy, ProgressiveIterator, decimate, imageRetrieveMetadataProvider, transferFunctionUtils, updateVTKImageDataWithCornerstoneImage, sortImageIdsAndGetSpacing, makeVolumeMetadata, isValidVolume, genericMetadataProvider, isVideoTransferSyntax, generateVolumePropsFromImageIds, getBufferConfiguration, VoxelManager, RLEVoxelMap, convertStackToVolumeViewport, convertVolumeToStackViewport, roundNumber, roundToPrecision, getViewportImageIds, getRandomSampleFromArray, getVolumeId, color, hasFloatScalingParameters, getDynamicVolumeInfo, autoLoad, scaleArray, deepClone, splitImageIdsBy4DTags, pointInShapeCallback, deepEqual, jumpToSlice, scroll, clip, };
89
+ export { eventListener, csUtils as invertRgbTransferFunction, createSigmoidRGBTransferFunction, getVoiFromSigmoidRGBTransferFunction, createLinearRGBTransferFunction, scaleRgbTransferFunction, triggerEvent, imageIdToURI, calibratedPixelSpacingMetadataProvider, clamp, uuidv4, planar, getMinMax, getRuntimeId, isEqual, isEqualAbs, isEqualNegative, isOpposite, getViewportModality, windowLevel, convertToGrayscale, getClosestImageId, getSpacingInNormalDirection, getTargetVolumeAndSpacingInNormalDir, getVolumeActorCorners, indexWithinDimensions, getVolumeViewportsContainingSameVolumes, getViewportsWithVolumeId, transformWorldToIndex, transformIndexToWorld, loadImageToCanvas, renderToCanvasCPU, renderToCanvasGPU, worldToImageCoords, imageToWorldCoords, getVolumeSliceRangeInfo, getVolumeViewportScrollInfo, getSliceRange, snapFocalPointToSlice, getImageSliceDataForVolumeViewport, isImageActor, isPTPrescaledWithSUV, actorIsA, getViewportsWithImageURI, getClosestStackImageIndexForPoint, getCurrentVolumeViewportSlice, calculateViewportsSpatialRegistration, spatialRegistrationMetadataProvider, getViewportImageCornersInWorld, hasNaNValues, applyPreset, deepMerge, PointsManager, getScalingParameters, colormap, getImageLegacy, ProgressiveIterator, decimate, imageRetrieveMetadataProvider, transferFunctionUtils, updateVTKImageDataWithCornerstoneImage, sortImageIdsAndGetSpacing, makeVolumeMetadata, isValidVolume, genericMetadataProvider, isVideoTransferSyntax, HistoryMemo, generateVolumePropsFromImageIds, getBufferConfiguration, VoxelManager, RLEVoxelMap, convertStackToVolumeViewport, convertVolumeToStackViewport, roundNumber, roundToPrecision, getViewportImageIds, getRandomSampleFromArray, getVolumeId, color, hasFloatScalingParameters, getDynamicVolumeInfo, autoLoad, scaleArray, deepClone, splitImageIdsBy4DTags, pointInShapeCallback, deepEqual, jumpToSlice, scroll, clip, };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cornerstonejs/core",
3
- "version": "2.4.0",
3
+ "version": "2.5.1",
4
4
  "description": "",
5
5
  "module": "./dist/esm/index.js",
6
6
  "types": "./dist/esm/index.d.ts",
@@ -82,5 +82,5 @@
82
82
  "type": "individual",
83
83
  "url": "https://ohif.org/donate"
84
84
  },
85
- "gitHead": "70fc2826230875c1c5f3533953fac9a3025833c0"
85
+ "gitHead": "e7fb3e73be741795eb832b885b98de9a03fbaffd"
86
86
  }