@cornerstonejs/core 0.6.3 → 0.8.0
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.
- package/dist/cjs/RenderingEngine/StackViewport.d.ts +2 -5
- package/dist/cjs/RenderingEngine/StackViewport.js +34 -31
- package/dist/cjs/RenderingEngine/StackViewport.js.map +1 -1
- package/dist/cjs/RenderingEngine/Viewport.d.ts +1 -0
- package/dist/cjs/RenderingEngine/Viewport.js +11 -2
- package/dist/cjs/RenderingEngine/Viewport.js.map +1 -1
- package/dist/cjs/RenderingEngine/VolumeViewport.d.ts +0 -1
- package/dist/cjs/RenderingEngine/VolumeViewport.js +0 -6
- package/dist/cjs/RenderingEngine/VolumeViewport.js.map +1 -1
- package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/renderGrayscaleImage.js +1 -1
- package/dist/cjs/RenderingEngine/helpers/cpuFallback/rendering/renderGrayscaleImage.js.map +1 -1
- package/dist/cjs/cache/cache.d.ts +2 -2
- package/dist/cjs/cache/cache.js +8 -3
- package/dist/cjs/cache/cache.js.map +1 -1
- package/dist/cjs/types/EventTypes.d.ts +3 -2
- package/dist/cjs/types/ICamera.d.ts +2 -0
- package/dist/cjs/types/IStackViewport.d.ts +2 -1
- package/dist/cjs/types/StackViewportProperties.d.ts +0 -2
- package/dist/cjs/utilities/imageToWorldCoords.d.ts +2 -0
- package/dist/cjs/utilities/imageToWorldCoords.js +17 -0
- package/dist/cjs/utilities/imageToWorldCoords.js.map +1 -0
- package/dist/cjs/utilities/index.d.ts +3 -1
- package/dist/cjs/utilities/index.js +5 -1
- package/dist/cjs/utilities/index.js.map +1 -1
- package/dist/cjs/utilities/worldToImageCoords.d.ts +3 -0
- package/dist/cjs/utilities/worldToImageCoords.js +31 -0
- package/dist/cjs/utilities/worldToImageCoords.js.map +1 -0
- package/dist/esm/RenderingEngine/StackViewport.d.ts +2 -5
- package/dist/esm/RenderingEngine/StackViewport.js +34 -31
- package/dist/esm/RenderingEngine/StackViewport.js.map +1 -1
- package/dist/esm/RenderingEngine/Viewport.d.ts +1 -0
- package/dist/esm/RenderingEngine/Viewport.js +11 -2
- package/dist/esm/RenderingEngine/Viewport.js.map +1 -1
- package/dist/esm/RenderingEngine/VolumeViewport.d.ts +0 -1
- package/dist/esm/RenderingEngine/VolumeViewport.js +0 -6
- package/dist/esm/RenderingEngine/VolumeViewport.js.map +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderGrayscaleImage.js +1 -1
- package/dist/esm/RenderingEngine/helpers/cpuFallback/rendering/renderGrayscaleImage.js.map +1 -1
- package/dist/esm/cache/cache.d.ts +2 -2
- package/dist/esm/cache/cache.js +8 -3
- package/dist/esm/cache/cache.js.map +1 -1
- package/dist/esm/types/EventTypes.d.ts +3 -2
- package/dist/esm/types/ICamera.d.ts +2 -0
- package/dist/esm/types/IStackViewport.d.ts +2 -1
- package/dist/esm/types/StackViewportProperties.d.ts +0 -2
- package/dist/esm/utilities/imageToWorldCoords.d.ts +2 -0
- package/dist/esm/utilities/imageToWorldCoords.js +14 -0
- package/dist/esm/utilities/imageToWorldCoords.js.map +1 -0
- package/dist/esm/utilities/index.d.ts +3 -1
- package/dist/esm/utilities/index.js +3 -1
- package/dist/esm/utilities/index.js.map +1 -1
- package/dist/esm/utilities/worldToImageCoords.d.ts +3 -0
- package/dist/esm/utilities/worldToImageCoords.js +29 -0
- package/dist/esm/utilities/worldToImageCoords.js.map +1 -0
- package/dist/umd/index.js +1 -1
- package/dist/umd/index.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"imageToWorldCoords.js","sourceRoot":"","sources":["../../../src/utilities/imageToWorldCoords.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAY9B,MAAM,CAAC,OAAO,UAAU,kBAAkB,CACxC,OAAe,EACf,WAAmB;IAEnB,MAAM,gBAAgB,GAAG,QAAQ,CAAC,GAAG,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;IAEnE,IAAI,CAAC,gBAAgB,EAAE;QACrB,MAAM,IAAI,KAAK,CAAC,0CAA0C,OAAO,EAAE,CAAC,CAAC;KACtE;IAED,MAAM,EACJ,aAAa,EACb,kBAAkB,EAClB,UAAU,EACV,eAAe,EACf,oBAAoB,EAAE,MAAM,GAC7B,GAAG,gBAAgB,CAAC;IAGrB,MAAM,kBAAkB,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAIzC,IAAI,CAAC,WAAW,CACd,kBAAkB,EAClB,MAAM,EACN,UAAU,EAGV,eAAe,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CACzC,CAAC;IAEF,IAAI,CAAC,WAAW,CACd,kBAAkB,EAClB,kBAAkB,EAClB,aAAa,EACb,kBAAkB,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAC5C,CAAC;IAEF,OAAO,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAW,CAAC;AAClD,CAAC"}
|
|
@@ -21,6 +21,8 @@ import transformWorldToIndex from './transformWorldToIndex';
|
|
|
21
21
|
import prefetchStack from './prefetchStack';
|
|
22
22
|
import loadImageToCanvas from './loadImageToCanvas';
|
|
23
23
|
import renderToCanvas from './renderToCanvas';
|
|
24
|
+
import worldToImageCoords from './worldToImageCoords';
|
|
25
|
+
import imageToWorldCoords from './imageToWorldCoords';
|
|
24
26
|
import * as planar from './planar';
|
|
25
27
|
import * as windowLevel from './windowLevel';
|
|
26
|
-
export { invertRgbTransferFunction, scaleRgbTransferFunction, triggerEvent, imageIdToURI, calibratedPixelSpacingMetadataProvider, uuidv4, planar, getMinMax, getRuntimeId, isEqual, isOpposite, createFloat32SharedArray, createUint8SharedArray, windowLevel, getClosestImageId, getSpacingInNormalDirection, getTargetVolumeAndSpacingInNormalDir, getVolumeActorCorners, indexWithinDimensions, getVolumeViewportsContainingSameVolumes, getVolumeViewportsContainingVolumeId, transformWorldToIndex, prefetchStack, loadImageToCanvas, renderToCanvas, };
|
|
28
|
+
export { invertRgbTransferFunction, scaleRgbTransferFunction, triggerEvent, imageIdToURI, calibratedPixelSpacingMetadataProvider, uuidv4, planar, getMinMax, getRuntimeId, isEqual, isOpposite, createFloat32SharedArray, createUint8SharedArray, windowLevel, getClosestImageId, getSpacingInNormalDirection, getTargetVolumeAndSpacingInNormalDir, getVolumeActorCorners, indexWithinDimensions, getVolumeViewportsContainingSameVolumes, getVolumeViewportsContainingVolumeId, transformWorldToIndex, prefetchStack, loadImageToCanvas, renderToCanvas, worldToImageCoords, imageToWorldCoords, };
|
|
@@ -21,7 +21,9 @@ import transformWorldToIndex from './transformWorldToIndex';
|
|
|
21
21
|
import prefetchStack from './prefetchStack';
|
|
22
22
|
import loadImageToCanvas from './loadImageToCanvas';
|
|
23
23
|
import renderToCanvas from './renderToCanvas';
|
|
24
|
+
import worldToImageCoords from './worldToImageCoords';
|
|
25
|
+
import imageToWorldCoords from './imageToWorldCoords';
|
|
24
26
|
import * as planar from './planar';
|
|
25
27
|
import * as windowLevel from './windowLevel';
|
|
26
|
-
export { invertRgbTransferFunction, scaleRgbTransferFunction, triggerEvent, imageIdToURI, calibratedPixelSpacingMetadataProvider, uuidv4, planar, getMinMax, getRuntimeId, isEqual, isOpposite, createFloat32SharedArray, createUint8SharedArray, windowLevel, getClosestImageId, getSpacingInNormalDirection, getTargetVolumeAndSpacingInNormalDir, getVolumeActorCorners, indexWithinDimensions, getVolumeViewportsContainingSameVolumes, getVolumeViewportsContainingVolumeId, transformWorldToIndex, prefetchStack, loadImageToCanvas, renderToCanvas, };
|
|
28
|
+
export { invertRgbTransferFunction, scaleRgbTransferFunction, triggerEvent, imageIdToURI, calibratedPixelSpacingMetadataProvider, uuidv4, planar, getMinMax, getRuntimeId, isEqual, isOpposite, createFloat32SharedArray, createUint8SharedArray, windowLevel, getClosestImageId, getSpacingInNormalDirection, getTargetVolumeAndSpacingInNormalDir, getVolumeActorCorners, indexWithinDimensions, getVolumeViewportsContainingSameVolumes, getVolumeViewportsContainingVolumeId, transformWorldToIndex, prefetchStack, loadImageToCanvas, renderToCanvas, worldToImageCoords, imageToWorldCoords, };
|
|
27
29
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utilities/index.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,MAAM,6BAA6B,CAAC;AACpE,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,sCAAsC,MAAM,0CAA0C,CAAC;AAC9F,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,sBAAsB,MAAM,0BAA0B,CAAC;AAC9D,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,2BAA2B,MAAM,+BAA+B,CAAC;AACxE,OAAO,oCAAoC,MAAM,wCAAwC,CAAC;AAC1F,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,uCAAuC,MAAM,2CAA2C,CAAC;AAChG,OAAO,oCAAoC,MAAM,wCAAwC,CAAC;AAC1F,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,cAAc,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utilities/index.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,MAAM,6BAA6B,CAAC;AACpE,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,sCAAsC,MAAM,0CAA0C,CAAC;AAC9F,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,sBAAsB,MAAM,0BAA0B,CAAC;AAC9D,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,2BAA2B,MAAM,+BAA+B,CAAC;AACxE,OAAO,oCAAoC,MAAM,wCAAwC,CAAC;AAC1F,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,uCAAuC,MAAM,2CAA2C,CAAC;AAChG,OAAO,oCAAoC,MAAM,wCAAwC,CAAC;AAC1F,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AACtD,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AAGtD,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,WAAW,MAAM,eAAe,CAAC;AAE7C,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,YAAY,EACZ,YAAY,EACZ,sCAAsC,EACtC,MAAM,EACN,MAAM,EACN,SAAS,EACT,YAAY,EACZ,OAAO,EACP,UAAU,EACV,wBAAwB,EACxB,sBAAsB,EACtB,WAAW,EACX,iBAAiB,EACjB,2BAA2B,EAC3B,oCAAoC,EACpC,qBAAqB,EACrB,qBAAqB,EACrB,uCAAuC,EACvC,oCAAoC,EACpC,qBAAqB,EACrB,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,kBAAkB,GACnB,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { vec3 } from 'gl-matrix';
|
|
2
|
+
import { metaData } from '..';
|
|
3
|
+
function worldToImageCoords(imageId, worldCoords) {
|
|
4
|
+
const imagePlaneModule = metaData.get('imagePlaneModule', imageId);
|
|
5
|
+
if (!imagePlaneModule) {
|
|
6
|
+
throw new Error(`No imagePlaneModule found for imageId: ${imageId}`);
|
|
7
|
+
}
|
|
8
|
+
const { columnCosines, columnPixelSpacing, rowCosines, rowPixelSpacing, imagePositionPatient: origin, rows, columns, } = imagePlaneModule;
|
|
9
|
+
const newOrigin = vec3.create();
|
|
10
|
+
vec3.scaleAndAdd(newOrigin, origin, columnCosines, -columnPixelSpacing / 2);
|
|
11
|
+
vec3.scaleAndAdd(newOrigin, newOrigin, rowCosines, -rowPixelSpacing / 2);
|
|
12
|
+
const sub = vec3.create();
|
|
13
|
+
vec3.sub(sub, worldCoords, newOrigin);
|
|
14
|
+
const rowDistance = vec3.dot(sub, rowCosines);
|
|
15
|
+
const columnDistance = vec3.dot(sub, columnCosines);
|
|
16
|
+
const imageCoords = [
|
|
17
|
+
rowDistance / rowPixelSpacing,
|
|
18
|
+
columnDistance / columnPixelSpacing,
|
|
19
|
+
];
|
|
20
|
+
if (imageCoords[0] < 0 ||
|
|
21
|
+
imageCoords[0] >= columns ||
|
|
22
|
+
imageCoords[1] < 0 ||
|
|
23
|
+
imageCoords[1] >= rows) {
|
|
24
|
+
throw new Error(`The image coordinates are outside of the image, imageCoords: ${imageCoords}`);
|
|
25
|
+
}
|
|
26
|
+
return imageCoords;
|
|
27
|
+
}
|
|
28
|
+
export default worldToImageCoords;
|
|
29
|
+
//# sourceMappingURL=worldToImageCoords.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worldToImageCoords.js","sourceRoot":"","sources":["../../../src/utilities/worldToImageCoords.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAa9B,SAAS,kBAAkB,CACzB,OAAe,EACf,WAAmB;IAEnB,MAAM,gBAAgB,GAAG,QAAQ,CAAC,GAAG,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;IAEnE,IAAI,CAAC,gBAAgB,EAAE;QACrB,MAAM,IAAI,KAAK,CAAC,0CAA0C,OAAO,EAAE,CAAC,CAAC;KACtE;IAKD,MAAM,EACJ,aAAa,EACb,kBAAkB,EAClB,UAAU,EACV,eAAe,EACf,oBAAoB,EAAE,MAAM,EAC5B,IAAI,EACJ,OAAO,GACR,GAAG,gBAAgB,CAAC;IAKrB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAEhC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,kBAAkB,GAAG,CAAC,CAAC,CAAC;IAC5E,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC;IAGzE,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAC1B,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;IAGtC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAG9C,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IAEpD,MAAM,WAAW,GAAG;QAClB,WAAW,GAAG,eAAe;QAC7B,cAAc,GAAG,kBAAkB;KACpC,CAAC;IAEF,IACE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC;QAClB,WAAW,CAAC,CAAC,CAAC,IAAI,OAAO;QACzB,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC;QAClB,WAAW,CAAC,CAAC,CAAC,IAAI,IAAI,EACtB;QACA,MAAM,IAAI,KAAK,CACb,gEAAgE,WAAW,EAAE,CAC9E,CAAC;KACH;IAED,OAAO,WAAqB,CAAC;AAC/B,CAAC;AAED,eAAe,kBAAkB,CAAC"}
|