@cornerstonejs/core 1.32.1 → 1.32.3

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.
Files changed (27) hide show
  1. package/dist/cjs/utilities/getTargetVolumeAndSpacingInNormalDir.d.ts +1 -1
  2. package/dist/cjs/utilities/getTargetVolumeAndSpacingInNormalDir.js +4 -4
  3. package/dist/cjs/utilities/getTargetVolumeAndSpacingInNormalDir.js.map +1 -1
  4. package/dist/cjs/utilities/getVolumeSliceRangeInfo.d.ts +1 -1
  5. package/dist/cjs/utilities/getVolumeSliceRangeInfo.js +2 -2
  6. package/dist/cjs/utilities/getVolumeSliceRangeInfo.js.map +1 -1
  7. package/dist/cjs/utilities/getVolumeViewportScrollInfo.d.ts +1 -1
  8. package/dist/cjs/utilities/getVolumeViewportScrollInfo.js +2 -2
  9. package/dist/cjs/utilities/getVolumeViewportScrollInfo.js.map +1 -1
  10. package/dist/esm/utilities/getTargetVolumeAndSpacingInNormalDir.js +4 -4
  11. package/dist/esm/utilities/getTargetVolumeAndSpacingInNormalDir.js.map +1 -1
  12. package/dist/esm/utilities/getVolumeSliceRangeInfo.js +2 -2
  13. package/dist/esm/utilities/getVolumeSliceRangeInfo.js.map +1 -1
  14. package/dist/esm/utilities/getVolumeViewportScrollInfo.js +2 -2
  15. package/dist/esm/utilities/getVolumeViewportScrollInfo.js.map +1 -1
  16. package/dist/types/utilities/getTargetVolumeAndSpacingInNormalDir.d.ts +1 -1
  17. package/dist/types/utilities/getTargetVolumeAndSpacingInNormalDir.d.ts.map +1 -1
  18. package/dist/types/utilities/getVolumeSliceRangeInfo.d.ts +1 -1
  19. package/dist/types/utilities/getVolumeSliceRangeInfo.d.ts.map +1 -1
  20. package/dist/types/utilities/getVolumeViewportScrollInfo.d.ts +1 -1
  21. package/dist/types/utilities/getVolumeViewportScrollInfo.d.ts.map +1 -1
  22. package/dist/umd/index.js +1 -1
  23. package/dist/umd/index.js.map +1 -1
  24. package/package.json +2 -2
  25. package/src/utilities/getTargetVolumeAndSpacingInNormalDir.ts +9 -5
  26. package/src/utilities/getVolumeSliceRangeInfo.ts +10 -2
  27. package/src/utilities/getVolumeViewportScrollInfo.ts +5 -2
@@ -1,5 +1,5 @@
1
1
  import { ICamera, IImageVolume, IVolumeViewport } from '../types';
2
- export default function getTargetVolumeAndSpacingInNormalDir(viewport: IVolumeViewport, camera: ICamera, targetVolumeId?: string): {
2
+ export default function getTargetVolumeAndSpacingInNormalDir(viewport: IVolumeViewport, camera: ICamera, targetVolumeId?: string, useSlabThickness?: boolean): {
3
3
  imageVolume: IImageVolume;
4
4
  spacingInNormalDirection: number;
5
5
  actorUID: string;
@@ -10,7 +10,7 @@ const volumeLoader_1 = require("../loaders/volumeLoader");
10
10
  const EPSILON_PART = 1 + constants_1.EPSILON;
11
11
  const startsWith = (str, starts) => starts === str.substring(0, Math.min(str.length, starts.length));
12
12
  const isPrimaryVolume = (volume) => !!(0, volumeLoader_1.getVolumeLoaderSchemes)().find((scheme) => startsWith(volume.volumeId, scheme));
13
- function getTargetVolumeAndSpacingInNormalDir(viewport, camera, targetVolumeId) {
13
+ function getTargetVolumeAndSpacingInNormalDir(viewport, camera, targetVolumeId, useSlabThickness = false) {
14
14
  const { viewPlaneNormal } = camera;
15
15
  const volumeActors = viewport.getActors();
16
16
  if (!volumeActors || !volumeActors.length) {
@@ -31,7 +31,7 @@ function getTargetVolumeAndSpacingInNormalDir(viewport, camera, targetVolumeId)
31
31
  const imageVolumeIndex = imageVolumes.findIndex((iv) => iv.volumeId === targetVolumeId);
32
32
  const imageVolume = imageVolumes[imageVolumeIndex];
33
33
  const { uid: actorUID } = volumeActors[imageVolumeIndex];
34
- const spacingInNormalDirection = getSpacingInNormal(imageVolume, viewPlaneNormal, viewport);
34
+ const spacingInNormalDirection = getSpacingInNormal(imageVolume, viewPlaneNormal, viewport, useSlabThickness);
35
35
  return { imageVolume, spacingInNormalDirection, actorUID };
36
36
  }
37
37
  if (!imageVolumes.length) {
@@ -63,10 +63,10 @@ function getTargetVolumeAndSpacingInNormalDir(viewport, camera, targetVolumeId)
63
63
  return smallest;
64
64
  }
65
65
  exports.default = getTargetVolumeAndSpacingInNormalDir;
66
- function getSpacingInNormal(imageVolume, viewPlaneNormal, viewport) {
66
+ function getSpacingInNormal(imageVolume, viewPlaneNormal, viewport, useSlabThickness = false) {
67
67
  const { slabThickness } = viewport.getProperties();
68
68
  let spacingInNormalDirection = slabThickness;
69
- if (!slabThickness) {
69
+ if (!slabThickness || useSlabThickness === false) {
70
70
  spacingInNormalDirection = (0, getSpacingInNormalDirection_1.default)(imageVolume, viewPlaneNormal);
71
71
  }
72
72
  return spacingInNormalDirection;
@@ -1 +1 @@
1
- {"version":3,"file":"getTargetVolumeAndSpacingInNormalDir.js","sourceRoot":"","sources":["../../../src/utilities/getTargetVolumeAndSpacingInNormalDir.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getTargetVolumeAndSpacingInNormalDir.js","sourceRoot":"","sources":["../../../src/utilities/getTargetVolumeAndSpacingInNormalDir.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { ActorSliceRange, IVolumeViewport, ICamera } from '../types';
2
- declare function getVolumeSliceRangeInfo(viewport: IVolumeViewport, volumeId: string): {
2
+ declare function getVolumeSliceRangeInfo(viewport: IVolumeViewport, volumeId: string, useSlabThickness?: boolean): {
3
3
  sliceRange: ActorSliceRange;
4
4
  spacingInNormalDirection: number;
5
5
  camera: ICamera;
@@ -5,10 +5,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const getSliceRange_1 = __importDefault(require("./getSliceRange"));
7
7
  const getTargetVolumeAndSpacingInNormalDir_1 = __importDefault(require("./getTargetVolumeAndSpacingInNormalDir"));
8
- function getVolumeSliceRangeInfo(viewport, volumeId) {
8
+ function getVolumeSliceRangeInfo(viewport, volumeId, useSlabThickness = false) {
9
9
  const camera = viewport.getCamera();
10
10
  const { focalPoint, viewPlaneNormal } = camera;
11
- const { spacingInNormalDirection, actorUID } = (0, getTargetVolumeAndSpacingInNormalDir_1.default)(viewport, camera, volumeId);
11
+ const { spacingInNormalDirection, actorUID } = (0, getTargetVolumeAndSpacingInNormalDir_1.default)(viewport, camera, volumeId, useSlabThickness);
12
12
  if (!actorUID) {
13
13
  throw new Error(`Could not find image volume with id ${volumeId} in the viewport`);
14
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getVolumeSliceRangeInfo.js","sourceRoot":"","sources":["../../../src/utilities/getVolumeSliceRangeInfo.ts"],"names":[],"mappings":";;;;;AAAA,oEAA4C;AAC5C,kHAA0F;AAc1F,SAAS,uBAAuB,CAC9B,QAAyB,EACzB,QAAgB;IAMhB,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;IACpC,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,GAAG,MAAM,CAAC;IAC/C,MAAM,EAAE,wBAAwB,EAAE,QAAQ,EAAE,GAC1C,IAAA,8CAAoC,EAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAEnE,IAAI,CAAC,QAAQ,EAAE;QACb,MAAM,IAAI,KAAK,CACb,uCAAuC,QAAQ,kBAAkB,CAClE,CAAC;KACH;IAED,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAE/C,IAAI,CAAC,UAAU,EAAE;QACf,OAAO,CAAC,IAAI,CAAC,qCAAqC,EAAE,QAAQ,CAAC,CAAC;QAC9D,OAAO,IAAI,CAAC;KACb;IAED,MAAM,WAAW,GAAG,UAAU,CAAC,KAAoB,CAAC;IACpD,MAAM,UAAU,GAAG,IAAA,uBAAa,EAAC,WAAW,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC;IAE3E,OAAO;QACL,UAAU;QACV,wBAAwB;QACxB,MAAM;KACP,CAAC;AACJ,CAAC;AAED,kBAAe,uBAAuB,CAAC"}
1
+ {"version":3,"file":"getVolumeSliceRangeInfo.js","sourceRoot":"","sources":["../../../src/utilities/getVolumeSliceRangeInfo.ts"],"names":[],"mappings":";;;;;AAAA,oEAA4C;AAC5C,kHAA0F;AAgB1F,SAAS,uBAAuB,CAC9B,QAAyB,EACzB,QAAgB,EAChB,gBAAgB,GAAG,KAAK;IAMxB,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;IACpC,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,GAAG,MAAM,CAAC;IAC/C,MAAM,EAAE,wBAAwB,EAAE,QAAQ,EAAE,GAC1C,IAAA,8CAAoC,EAClC,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,gBAAgB,CACjB,CAAC;IAEJ,IAAI,CAAC,QAAQ,EAAE;QACb,MAAM,IAAI,KAAK,CACb,uCAAuC,QAAQ,kBAAkB,CAClE,CAAC;KACH;IAED,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAE/C,IAAI,CAAC,UAAU,EAAE;QACf,OAAO,CAAC,IAAI,CAAC,qCAAqC,EAAE,QAAQ,CAAC,CAAC;QAC9D,OAAO,IAAI,CAAC;KACb;IAED,MAAM,WAAW,GAAG,UAAU,CAAC,KAAoB,CAAC;IACpD,MAAM,UAAU,GAAG,IAAA,uBAAa,EAAC,WAAW,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC;IAE3E,OAAO;QACL,UAAU;QACV,wBAAwB;QACxB,MAAM;KACP,CAAC;AACJ,CAAC;AAED,kBAAe,uBAAuB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { IVolumeViewport } from '../types';
2
- declare function getVolumeViewportScrollInfo(viewport: IVolumeViewport, volumeId: string): {
2
+ declare function getVolumeViewportScrollInfo(viewport: IVolumeViewport, volumeId: string, useSlabThickness?: boolean): {
3
3
  numScrollSteps: number;
4
4
  currentStepIndex: number;
5
5
  sliceRangeInfo: {
@@ -4,8 +4,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const getVolumeSliceRangeInfo_1 = __importDefault(require("./getVolumeSliceRangeInfo"));
7
- function getVolumeViewportScrollInfo(viewport, volumeId) {
8
- const { sliceRange, spacingInNormalDirection, camera } = (0, getVolumeSliceRangeInfo_1.default)(viewport, volumeId);
7
+ function getVolumeViewportScrollInfo(viewport, volumeId, useSlabThickness = false) {
8
+ const { sliceRange, spacingInNormalDirection, camera } = (0, getVolumeSliceRangeInfo_1.default)(viewport, volumeId, useSlabThickness);
9
9
  const { min, max, current } = sliceRange;
10
10
  const numScrollSteps = Math.round((max - min) / spacingInNormalDirection);
11
11
  const fraction = (current - min) / (max - min);
@@ -1 +1 @@
1
- {"version":3,"file":"getVolumeViewportScrollInfo.js","sourceRoot":"","sources":["../../../src/utilities/getVolumeViewportScrollInfo.ts"],"names":[],"mappings":";;;;;AACA,wFAAgE;AAQhE,SAAS,2BAA2B,CAClC,QAAyB,EACzB,QAAgB;IAEhB,MAAM,EAAE,UAAU,EAAE,wBAAwB,EAAE,MAAM,EAAE,GACpD,IAAA,iCAAuB,EAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAE9C,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IAGzC,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,wBAAwB,CAAC,CAAC;IAG1E,MAAM,QAAQ,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;IAC/C,MAAM,kBAAkB,GAAG,QAAQ,GAAG,cAAc,CAAC;IACrD,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAExD,OAAO;QACL,cAAc;QACd,gBAAgB;QAChB,cAAc,EAAE;YACd,UAAU;YACV,wBAAwB;YACxB,MAAM;SACP;KACF,CAAC;AACJ,CAAC;AAED,kBAAe,2BAA2B,CAAC"}
1
+ {"version":3,"file":"getVolumeViewportScrollInfo.js","sourceRoot":"","sources":["../../../src/utilities/getVolumeViewportScrollInfo.ts"],"names":[],"mappings":";;;;;AACA,wFAAgE;AAUhE,SAAS,2BAA2B,CAClC,QAAyB,EACzB,QAAgB,EAChB,gBAAgB,GAAG,KAAK;IAExB,MAAM,EAAE,UAAU,EAAE,wBAAwB,EAAE,MAAM,EAAE,GACpD,IAAA,iCAAuB,EAAC,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC;IAEhE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IAGzC,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,wBAAwB,CAAC,CAAC;IAG1E,MAAM,QAAQ,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;IAC/C,MAAM,kBAAkB,GAAG,QAAQ,GAAG,cAAc,CAAC;IACrD,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAExD,OAAO;QACL,cAAc;QACd,gBAAgB;QAChB,cAAc,EAAE;YACd,UAAU;YACV,wBAAwB;YACxB,MAAM;SACP;KACF,CAAC;AACJ,CAAC;AAED,kBAAe,2BAA2B,CAAC"}
@@ -5,7 +5,7 @@ import { getVolumeLoaderSchemes } from '../loaders/volumeLoader';
5
5
  const EPSILON_PART = 1 + EPSILON;
6
6
  const startsWith = (str, starts) => starts === str.substring(0, Math.min(str.length, starts.length));
7
7
  const isPrimaryVolume = (volume) => !!getVolumeLoaderSchemes().find((scheme) => startsWith(volume.volumeId, scheme));
8
- export default function getTargetVolumeAndSpacingInNormalDir(viewport, camera, targetVolumeId) {
8
+ export default function getTargetVolumeAndSpacingInNormalDir(viewport, camera, targetVolumeId, useSlabThickness = false) {
9
9
  const { viewPlaneNormal } = camera;
10
10
  const volumeActors = viewport.getActors();
11
11
  if (!volumeActors || !volumeActors.length) {
@@ -25,7 +25,7 @@ export default function getTargetVolumeAndSpacingInNormalDir(viewport, camera, t
25
25
  const imageVolumeIndex = imageVolumes.findIndex((iv) => iv.volumeId === targetVolumeId);
26
26
  const imageVolume = imageVolumes[imageVolumeIndex];
27
27
  const { uid: actorUID } = volumeActors[imageVolumeIndex];
28
- const spacingInNormalDirection = getSpacingInNormal(imageVolume, viewPlaneNormal, viewport);
28
+ const spacingInNormalDirection = getSpacingInNormal(imageVolume, viewPlaneNormal, viewport, useSlabThickness);
29
29
  return { imageVolume, spacingInNormalDirection, actorUID };
30
30
  }
31
31
  if (!imageVolumes.length) {
@@ -56,10 +56,10 @@ export default function getTargetVolumeAndSpacingInNormalDir(viewport, camera, t
56
56
  }
57
57
  return smallest;
58
58
  }
59
- function getSpacingInNormal(imageVolume, viewPlaneNormal, viewport) {
59
+ function getSpacingInNormal(imageVolume, viewPlaneNormal, viewport, useSlabThickness = false) {
60
60
  const { slabThickness } = viewport.getProperties();
61
61
  let spacingInNormalDirection = slabThickness;
62
- if (!slabThickness) {
62
+ if (!slabThickness || useSlabThickness === false) {
63
63
  spacingInNormalDirection = getSpacingInNormalDirection(imageVolume, viewPlaneNormal);
64
64
  }
65
65
  return spacingInNormalDirection;
@@ -1 +1 @@
1
- {"version":3,"file":"getTargetVolumeAndSpacingInNormalDir.js","sourceRoot":"","sources":["../../../src/utilities/getTargetVolumeAndSpacingInNormalDir.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getTargetVolumeAndSpacingInNormalDir.js","sourceRoot":"","sources":["../../../src/utilities/getTargetVolumeAndSpacingInNormalDir.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import getSliceRange from './getSliceRange';
2
2
  import getTargetVolumeAndSpacingInNormalDir from './getTargetVolumeAndSpacingInNormalDir';
3
- function getVolumeSliceRangeInfo(viewport, volumeId) {
3
+ function getVolumeSliceRangeInfo(viewport, volumeId, useSlabThickness = false) {
4
4
  const camera = viewport.getCamera();
5
5
  const { focalPoint, viewPlaneNormal } = camera;
6
- const { spacingInNormalDirection, actorUID } = getTargetVolumeAndSpacingInNormalDir(viewport, camera, volumeId);
6
+ const { spacingInNormalDirection, actorUID } = getTargetVolumeAndSpacingInNormalDir(viewport, camera, volumeId, useSlabThickness);
7
7
  if (!actorUID) {
8
8
  throw new Error(`Could not find image volume with id ${volumeId} in the viewport`);
9
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getVolumeSliceRangeInfo.js","sourceRoot":"","sources":["../../../src/utilities/getVolumeSliceRangeInfo.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,oCAAoC,MAAM,wCAAwC,CAAC;AAc1F,SAAS,uBAAuB,CAC9B,QAAyB,EACzB,QAAgB;IAMhB,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;IACpC,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,GAAG,MAAM,CAAC;IAC/C,MAAM,EAAE,wBAAwB,EAAE,QAAQ,EAAE,GAC1C,oCAAoC,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAEnE,IAAI,CAAC,QAAQ,EAAE;QACb,MAAM,IAAI,KAAK,CACb,uCAAuC,QAAQ,kBAAkB,CAClE,CAAC;KACH;IAED,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAE/C,IAAI,CAAC,UAAU,EAAE;QACf,OAAO,CAAC,IAAI,CAAC,qCAAqC,EAAE,QAAQ,CAAC,CAAC;QAC9D,OAAO,IAAI,CAAC;KACb;IAED,MAAM,WAAW,GAAG,UAAU,CAAC,KAAoB,CAAC;IACpD,MAAM,UAAU,GAAG,aAAa,CAAC,WAAW,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC;IAE3E,OAAO;QACL,UAAU;QACV,wBAAwB;QACxB,MAAM;KACP,CAAC;AACJ,CAAC;AAED,eAAe,uBAAuB,CAAC"}
1
+ {"version":3,"file":"getVolumeSliceRangeInfo.js","sourceRoot":"","sources":["../../../src/utilities/getVolumeSliceRangeInfo.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,oCAAoC,MAAM,wCAAwC,CAAC;AAgB1F,SAAS,uBAAuB,CAC9B,QAAyB,EACzB,QAAgB,EAChB,gBAAgB,GAAG,KAAK;IAMxB,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;IACpC,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,GAAG,MAAM,CAAC;IAC/C,MAAM,EAAE,wBAAwB,EAAE,QAAQ,EAAE,GAC1C,oCAAoC,CAClC,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,gBAAgB,CACjB,CAAC;IAEJ,IAAI,CAAC,QAAQ,EAAE;QACb,MAAM,IAAI,KAAK,CACb,uCAAuC,QAAQ,kBAAkB,CAClE,CAAC;KACH;IAED,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAE/C,IAAI,CAAC,UAAU,EAAE;QACf,OAAO,CAAC,IAAI,CAAC,qCAAqC,EAAE,QAAQ,CAAC,CAAC;QAC9D,OAAO,IAAI,CAAC;KACb;IAED,MAAM,WAAW,GAAG,UAAU,CAAC,KAAoB,CAAC;IACpD,MAAM,UAAU,GAAG,aAAa,CAAC,WAAW,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC;IAE3E,OAAO;QACL,UAAU;QACV,wBAAwB;QACxB,MAAM;KACP,CAAC;AACJ,CAAC;AAED,eAAe,uBAAuB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import getVolumeSliceRangeInfo from './getVolumeSliceRangeInfo';
2
- function getVolumeViewportScrollInfo(viewport, volumeId) {
3
- const { sliceRange, spacingInNormalDirection, camera } = getVolumeSliceRangeInfo(viewport, volumeId);
2
+ function getVolumeViewportScrollInfo(viewport, volumeId, useSlabThickness = false) {
3
+ const { sliceRange, spacingInNormalDirection, camera } = getVolumeSliceRangeInfo(viewport, volumeId, useSlabThickness);
4
4
  const { min, max, current } = sliceRange;
5
5
  const numScrollSteps = Math.round((max - min) / spacingInNormalDirection);
6
6
  const fraction = (current - min) / (max - min);
@@ -1 +1 @@
1
- {"version":3,"file":"getVolumeViewportScrollInfo.js","sourceRoot":"","sources":["../../../src/utilities/getVolumeViewportScrollInfo.ts"],"names":[],"mappings":"AACA,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAQhE,SAAS,2BAA2B,CAClC,QAAyB,EACzB,QAAgB;IAEhB,MAAM,EAAE,UAAU,EAAE,wBAAwB,EAAE,MAAM,EAAE,GACpD,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAE9C,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IAGzC,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,wBAAwB,CAAC,CAAC;IAG1E,MAAM,QAAQ,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;IAC/C,MAAM,kBAAkB,GAAG,QAAQ,GAAG,cAAc,CAAC;IACrD,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAExD,OAAO;QACL,cAAc;QACd,gBAAgB;QAChB,cAAc,EAAE;YACd,UAAU;YACV,wBAAwB;YACxB,MAAM;SACP;KACF,CAAC;AACJ,CAAC;AAED,eAAe,2BAA2B,CAAC"}
1
+ {"version":3,"file":"getVolumeViewportScrollInfo.js","sourceRoot":"","sources":["../../../src/utilities/getVolumeViewportScrollInfo.ts"],"names":[],"mappings":"AACA,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAUhE,SAAS,2BAA2B,CAClC,QAAyB,EACzB,QAAgB,EAChB,gBAAgB,GAAG,KAAK;IAExB,MAAM,EAAE,UAAU,EAAE,wBAAwB,EAAE,MAAM,EAAE,GACpD,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC;IAEhE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IAGzC,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,wBAAwB,CAAC,CAAC;IAG1E,MAAM,QAAQ,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;IAC/C,MAAM,kBAAkB,GAAG,QAAQ,GAAG,cAAc,CAAC;IACrD,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAExD,OAAO;QACL,cAAc;QACd,gBAAgB;QAChB,cAAc,EAAE;YACd,UAAU;YACV,wBAAwB;YACxB,MAAM;SACP;KACF,CAAC;AACJ,CAAC;AAED,eAAe,2BAA2B,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { ICamera, IImageVolume, IVolumeViewport } from '../types';
2
- export default function getTargetVolumeAndSpacingInNormalDir(viewport: IVolumeViewport, camera: ICamera, targetVolumeId?: string): {
2
+ export default function getTargetVolumeAndSpacingInNormalDir(viewport: IVolumeViewport, camera: ICamera, targetVolumeId?: string, useSlabThickness?: boolean): {
3
3
  imageVolume: IImageVolume;
4
4
  spacingInNormalDirection: number;
5
5
  actorUID: string;
@@ -1 +1 @@
1
- {"version":3,"file":"getTargetVolumeAndSpacingInNormalDir.d.ts","sourceRoot":"","sources":["../../../src/utilities/getTargetVolumeAndSpacingInNormalDir.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,eAAe,EAAU,MAAM,UAAU,CAAC;AAiC1E,MAAM,CAAC,OAAO,UAAU,oCAAoC,CAC1D,QAAQ,EAAE,eAAe,EACzB,MAAM,EAAE,OAAO,EACf,cAAc,CAAC,EAAE,MAAM,GACtB;IACD,WAAW,EAAE,YAAY,CAAC;IAC1B,wBAAwB,EAAE,MAAM,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAC;CAClB,CAoFA"}
1
+ {"version":3,"file":"getTargetVolumeAndSpacingInNormalDir.d.ts","sourceRoot":"","sources":["../../../src/utilities/getTargetVolumeAndSpacingInNormalDir.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,eAAe,EAAU,MAAM,UAAU,CAAC;AAkC1E,MAAM,CAAC,OAAO,UAAU,oCAAoC,CAC1D,QAAQ,EAAE,eAAe,EACzB,MAAM,EAAE,OAAO,EACf,cAAc,CAAC,EAAE,MAAM,EACvB,gBAAgB,UAAQ,GACvB;IACD,WAAW,EAAE,YAAY,CAAC;IAC1B,wBAAwB,EAAE,MAAM,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAC;CAClB,CAqFA"}
@@ -1,5 +1,5 @@
1
1
  import { ActorSliceRange, IVolumeViewport, ICamera } from '../types';
2
- declare function getVolumeSliceRangeInfo(viewport: IVolumeViewport, volumeId: string): {
2
+ declare function getVolumeSliceRangeInfo(viewport: IVolumeViewport, volumeId: string, useSlabThickness?: boolean): {
3
3
  sliceRange: ActorSliceRange;
4
4
  spacingInNormalDirection: number;
5
5
  camera: ICamera;
@@ -1 +1 @@
1
- {"version":3,"file":"getVolumeSliceRangeInfo.d.ts","sourceRoot":"","sources":["../../../src/utilities/getVolumeSliceRangeInfo.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,eAAe,EACf,eAAe,EACf,OAAO,EAER,MAAM,UAAU,CAAC;AAQlB,iBAAS,uBAAuB,CAC9B,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,MAAM,GACf;IACD,UAAU,EAAE,eAAe,CAAC;IAC5B,wBAAwB,EAAE,MAAM,CAAC;IACjC,MAAM,EAAE,OAAO,CAAC;CACjB,CA2BA;AAED,eAAe,uBAAuB,CAAC"}
1
+ {"version":3,"file":"getVolumeSliceRangeInfo.d.ts","sourceRoot":"","sources":["../../../src/utilities/getVolumeSliceRangeInfo.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,eAAe,EACf,eAAe,EACf,OAAO,EAER,MAAM,UAAU,CAAC;AAUlB,iBAAS,uBAAuB,CAC9B,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,MAAM,EAChB,gBAAgB,UAAQ,GACvB;IACD,UAAU,EAAE,eAAe,CAAC;IAC5B,wBAAwB,EAAE,MAAM,CAAC;IACjC,MAAM,EAAE,OAAO,CAAC;CACjB,CAgCA;AAED,eAAe,uBAAuB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { IVolumeViewport } from '../types';
2
- declare function getVolumeViewportScrollInfo(viewport: IVolumeViewport, volumeId: string): {
2
+ declare function getVolumeViewportScrollInfo(viewport: IVolumeViewport, volumeId: string, useSlabThickness?: boolean): {
3
3
  numScrollSteps: number;
4
4
  currentStepIndex: number;
5
5
  sliceRangeInfo: {
@@ -1 +1 @@
1
- {"version":3,"file":"getVolumeViewportScrollInfo.d.ts","sourceRoot":"","sources":["../../../src/utilities/getVolumeViewportScrollInfo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAS3C,iBAAS,2BAA2B,CAClC,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,MAAM;;;;;;;;EAwBjB;AAED,eAAe,2BAA2B,CAAC"}
1
+ {"version":3,"file":"getVolumeViewportScrollInfo.d.ts","sourceRoot":"","sources":["../../../src/utilities/getVolumeViewportScrollInfo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAW3C,iBAAS,2BAA2B,CAClC,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,MAAM,EAChB,gBAAgB,UAAQ;;;;;;;;EAwBzB;AAED,eAAe,2BAA2B,CAAC"}