@cornerstonejs/core 0.36.1 → 0.36.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 (51) hide show
  1. package/dist/cjs/RenderingEngine/BaseVolumeViewport.d.ts +1 -0
  2. package/dist/cjs/RenderingEngine/BaseVolumeViewport.js +4 -2
  3. package/dist/cjs/RenderingEngine/BaseVolumeViewport.js.map +1 -1
  4. package/dist/cjs/RenderingEngine/StackViewport.d.ts +0 -1
  5. package/dist/cjs/RenderingEngine/StackViewport.js +10 -9
  6. package/dist/cjs/RenderingEngine/StackViewport.js.map +1 -1
  7. package/dist/cjs/RenderingEngine/Viewport.d.ts +1 -0
  8. package/dist/cjs/RenderingEngine/Viewport.js +5 -0
  9. package/dist/cjs/RenderingEngine/Viewport.js.map +1 -1
  10. package/dist/cjs/RenderingEngine/helpers/createVolumeActor.d.ts +1 -1
  11. package/dist/cjs/RenderingEngine/helpers/createVolumeActor.js +2 -2
  12. package/dist/cjs/RenderingEngine/helpers/createVolumeActor.js.map +1 -1
  13. package/dist/cjs/RenderingEngine/helpers/setDefaultVolumeVOI.d.ts +1 -1
  14. package/dist/cjs/RenderingEngine/helpers/setDefaultVolumeVOI.js +6 -3
  15. package/dist/cjs/RenderingEngine/helpers/setDefaultVolumeVOI.js.map +1 -1
  16. package/dist/cjs/loaders/volumeLoader.d.ts +1 -0
  17. package/dist/cjs/loaders/volumeLoader.js +9 -3
  18. package/dist/cjs/loaders/volumeLoader.js.map +1 -1
  19. package/dist/cjs/utilities/getSliceRange.js +2 -1
  20. package/dist/cjs/utilities/getSliceRange.js.map +1 -1
  21. package/dist/cjs/utilities/getTargetVolumeAndSpacingInNormalDir.js +7 -0
  22. package/dist/cjs/utilities/getTargetVolumeAndSpacingInNormalDir.js.map +1 -1
  23. package/dist/cjs/utilities/loadImageToCanvas.js +5 -0
  24. package/dist/cjs/utilities/loadImageToCanvas.js.map +1 -1
  25. package/dist/esm/RenderingEngine/BaseVolumeViewport.d.ts +1 -0
  26. package/dist/esm/RenderingEngine/BaseVolumeViewport.js +4 -2
  27. package/dist/esm/RenderingEngine/BaseVolumeViewport.js.map +1 -1
  28. package/dist/esm/RenderingEngine/StackViewport.d.ts +0 -1
  29. package/dist/esm/RenderingEngine/StackViewport.js +7 -6
  30. package/dist/esm/RenderingEngine/StackViewport.js.map +1 -1
  31. package/dist/esm/RenderingEngine/Viewport.d.ts +1 -0
  32. package/dist/esm/RenderingEngine/Viewport.js +5 -0
  33. package/dist/esm/RenderingEngine/Viewport.js.map +1 -1
  34. package/dist/esm/RenderingEngine/helpers/createVolumeActor.d.ts +1 -1
  35. package/dist/esm/RenderingEngine/helpers/createVolumeActor.js +2 -2
  36. package/dist/esm/RenderingEngine/helpers/createVolumeActor.js.map +1 -1
  37. package/dist/esm/RenderingEngine/helpers/setDefaultVolumeVOI.d.ts +1 -1
  38. package/dist/esm/RenderingEngine/helpers/setDefaultVolumeVOI.js +6 -3
  39. package/dist/esm/RenderingEngine/helpers/setDefaultVolumeVOI.js.map +1 -1
  40. package/dist/esm/loaders/volumeLoader.d.ts +1 -0
  41. package/dist/esm/loaders/volumeLoader.js +7 -2
  42. package/dist/esm/loaders/volumeLoader.js.map +1 -1
  43. package/dist/esm/utilities/getSliceRange.js +2 -1
  44. package/dist/esm/utilities/getSliceRange.js.map +1 -1
  45. package/dist/esm/utilities/getTargetVolumeAndSpacingInNormalDir.js +7 -0
  46. package/dist/esm/utilities/getTargetVolumeAndSpacingInNormalDir.js.map +1 -1
  47. package/dist/esm/utilities/loadImageToCanvas.js +5 -0
  48. package/dist/esm/utilities/loadImageToCanvas.js.map +1 -1
  49. package/dist/umd/index.js +1 -1
  50. package/dist/umd/index.js.map +1 -1
  51. package/package.json +2 -2
@@ -1,7 +1,10 @@
1
1
  import cache from '../cache/cache';
2
2
  import { EPSILON } from '../constants';
3
3
  import getSpacingInNormalDirection from './getSpacingInNormalDirection';
4
+ import { getVolumeLoaderSchemes } from '../loaders/volumeLoader';
4
5
  const EPSILON_PART = 1 + EPSILON;
6
+ const startsWith = (str, starts) => starts === str.substring(0, Math.min(str.length, starts.length));
7
+ const isPrimaryVolume = (volume) => !!getVolumeLoaderSchemes().find((scheme) => startsWith(volume.volumeId, scheme));
5
8
  export default function getTargetVolumeAndSpacingInNormalDir(viewport, camera, targetVolumeId) {
6
9
  const { viewPlaneNormal } = camera;
7
10
  const volumeActors = viewport.getActors();
@@ -37,8 +40,12 @@ export default function getTargetVolumeAndSpacingInNormalDir(viewport, camera, t
37
40
  imageVolume: null,
38
41
  actorUID: null,
39
42
  };
43
+ const hasPrimaryVolume = imageVolumes.find(isPrimaryVolume);
40
44
  for (let i = 0; i < imageVolumes.length; i++) {
41
45
  const imageVolume = imageVolumes[i];
46
+ if (hasPrimaryVolume && !isPrimaryVolume(imageVolume)) {
47
+ continue;
48
+ }
42
49
  const spacingInNormalDirection = getSpacingInNormalDirection(imageVolume, viewPlaneNormal);
43
50
  if (spacingInNormalDirection * EPSILON_PART <
44
51
  smallest.spacingInNormalDirection) {
@@ -1 +1 @@
1
- {"version":3,"file":"getTargetVolumeAndSpacingInNormalDir.js","sourceRoot":"","sources":["../../../src/utilities/getTargetVolumeAndSpacingInNormalDir.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,gBAAgB,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAGvC,OAAO,2BAA2B,MAAM,+BAA+B,CAAC;AAGxE,MAAM,YAAY,GAAG,CAAC,GAAG,OAAO,CAAC;AAiBjC,MAAM,CAAC,OAAO,UAAU,oCAAoC,CAC1D,QAAyB,EACzB,MAAe,EACf,cAAuB;IAMvB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,CAAC;IACnC,MAAM,YAAY,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;IAE1C,IAAI,CAAC,YAAY,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;QACzC,OAAO;YACL,wBAAwB,EAAE,IAAI;YAC9B,WAAW,EAAE,IAAI;YACjB,QAAQ,EAAE,IAAI;SACf,CAAC;KACH;IAED,MAAM,YAAY,GAAG,YAAY;SAC9B,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QAGV,MAAM,QAAQ,GAAG,EAAE,CAAC,WAAW,IAAI,EAAE,CAAC,GAAG,CAAC;QAC1C,OAAO,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAGxB,IAAI,cAAc,EAAE;QAClB,MAAM,gBAAgB,GAAG,YAAY,CAAC,SAAS,CAC7C,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,KAAK,cAAc,CACvC,CAAC;QAEF,MAAM,WAAW,GAAG,YAAY,CAAC,gBAAgB,CAAC,CAAC;QACnD,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,YAAY,CAAC,gBAAgB,CAAC,CAAC;QACzD,MAAM,wBAAwB,GAAG,2BAA2B,CAC1D,WAAW,EACX,eAAe,CAChB,CAAC;QAEF,OAAO,EAAE,WAAW,EAAE,wBAAwB,EAAE,QAAQ,EAAE,CAAC;KAC5D;IAED,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;QACxB,OAAO;YACL,wBAAwB,EAAE,IAAI;YAC9B,WAAW,EAAE,IAAI;YACjB,QAAQ,EAAE,IAAI;SACf,CAAC;KACH;IAGD,MAAM,QAAQ,GAAG;QACf,wBAAwB,EAAE,QAAQ;QAClC,WAAW,EAAE,IAAI;QACjB,QAAQ,EAAE,IAAI;KACf,CAAC;IAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC5C,MAAM,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAEpC,MAAM,wBAAwB,GAAG,2BAA2B,CAC1D,WAAW,EACX,eAAe,CAChB,CAAC;QAKF,IACE,wBAAwB,GAAG,YAAY;YACvC,QAAQ,CAAC,wBAAwB,EACjC;YACA,QAAQ,CAAC,wBAAwB,GAAG,wBAAwB,CAAC;YAC7D,QAAQ,CAAC,WAAW,GAAG,WAAW,CAAC;YACnC,QAAQ,CAAC,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;SACzC;KACF;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"getTargetVolumeAndSpacingInNormalDir.js","sourceRoot":"","sources":["../../../src/utilities/getTargetVolumeAndSpacingInNormalDir.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import * as metaData from '../metaData';
3
3
  import { RequestType } from '../enums';
4
4
  import imageLoadPoolManager from '../requestPool/imageLoadPoolManager';
5
5
  import renderToCanvas from './renderToCanvas';
6
+ import { getConfiguration } from '../init';
6
7
  export default function loadImageToCanvas(canvas, imageId, requestType = RequestType.Thumbnail, priority = -5) {
7
8
  return new Promise((resolve, reject) => {
8
9
  function successCallback(image, imageId) {
@@ -22,7 +23,11 @@ export default function loadImageToCanvas(canvas, imageId, requestType = Request
22
23
  errorCallback.call(this, error, imageId);
23
24
  });
24
25
  }
26
+ const { useNorm16Texture } = getConfiguration().rendering;
25
27
  const options = {
28
+ targetBuffer: {
29
+ type: useNorm16Texture ? undefined : 'Float32Array',
30
+ },
26
31
  preScale: {
27
32
  enabled: true,
28
33
  },
@@ -1 +1 @@
1
- {"version":3,"file":"loadImageToCanvas.js","sourceRoot":"","sources":["../../../src/utilities/loadImageToCanvas.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,QAAQ,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,oBAAoB,MAAM,qCAAqC,CAAC;AACvE,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAoB9C,MAAM,CAAC,OAAO,UAAU,iBAAiB,CACvC,MAAyB,EACzB,OAAe,EACf,WAAW,GAAG,WAAW,CAAC,SAAS,EACnC,QAAQ,GAAG,CAAC,CAAC;IAEb,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,SAAS,eAAe,CAAC,KAAa,EAAE,OAAe;YACrD,MAAM,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,qBAAqB,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;YAExE,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;YAChE,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;YACxC,OAAO,CAAC,OAAO,CAAC,CAAC;QACnB,CAAC;QAED,SAAS,aAAa,CAAC,KAAY,EAAE,OAAe;YAClD,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAC9B,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC;QAED,SAAS,WAAW,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO;YACjD,OAAO,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CAC7C,CAAC,KAAK,EAAE,EAAE;gBACR,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;YAC7C,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;gBACR,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;YAC3C,CAAC,CACF,CAAC;QACJ,CAAC;QAID,MAAM,OAAO,GAAG;YACd,QAAQ,EAAE;gBACR,OAAO,EAAE,IAAI;aACd;YACD,WAAW;SACZ,CAAC;QAEF,oBAAoB,CAAC,UAAU,CAC7B,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,EAC9C,WAAW,EACX,EAAE,OAAO,EAAE,EACX,QAAQ,CACT,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"loadImageToCanvas.js","sourceRoot":"","sources":["../../../src/utilities/loadImageToCanvas.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,QAAQ,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,oBAAoB,MAAM,qCAAqC,CAAC;AACvE,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAoB3C,MAAM,CAAC,OAAO,UAAU,iBAAiB,CACvC,MAAyB,EACzB,OAAe,EACf,WAAW,GAAG,WAAW,CAAC,SAAS,EACnC,QAAQ,GAAG,CAAC,CAAC;IAEb,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,SAAS,eAAe,CAAC,KAAa,EAAE,OAAe;YACrD,MAAM,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,qBAAqB,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;YAExE,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;YAChE,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;YACxC,OAAO,CAAC,OAAO,CAAC,CAAC;QACnB,CAAC;QAED,SAAS,aAAa,CAAC,KAAY,EAAE,OAAe;YAClD,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAC9B,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC;QAED,SAAS,WAAW,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO;YACjD,OAAO,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CAC7C,CAAC,KAAK,EAAE,EAAE;gBACR,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;YAC7C,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;gBACR,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;YAC3C,CAAC,CACF,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,gBAAgB,EAAE,GAAG,gBAAgB,EAAE,CAAC,SAAS,CAAC;QAI1D,MAAM,OAAO,GAAG;YACd,YAAY,EAAE;gBACZ,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc;aACpD;YACD,QAAQ,EAAE;gBACR,OAAO,EAAE,IAAI;aACd;YACD,WAAW;SACZ,CAAC;QAEF,oBAAoB,CAAC,UAAU,CAC7B,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,EAC9C,WAAW,EACX,EAAE,OAAO,EAAE,EACX,QAAQ,CACT,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}