Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 24 additions & 18 deletions bun.lock
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@
},
"packages/adapters": {
"name": "@cornerstonejs/adapters",
"version": "4.2.0",
"version": "4.5.19",
"dependencies": {
"@babel/runtime-corejs2": "7.26.10",
"buffer": "6.0.3",
Expand All @@ -146,7 +146,7 @@
},
"packages/ai": {
"name": "@cornerstonejs/ai",
"version": "4.2.0",
"version": "4.5.19",
"dependencies": {
"@babel/runtime-corejs2": "7.26.10",
"buffer": "6.0.3",
Expand All @@ -164,17 +164,17 @@
},
"packages/core": {
"name": "@cornerstonejs/core",
"version": "4.2.0",
"version": "4.5.19",
"dependencies": {
"@kitware/vtk.js": "32.12.1",
"@kitware/vtk.js": "34.13.2",
"comlink": "4.4.2",
"gl-matrix": "3.4.3",
"loglevel": "1.9.2",
},
},
"packages/dicomImageLoader": {
"name": "@cornerstonejs/dicom-image-loader",
"version": "4.2.0",
"version": "4.5.19",
"dependencies": {
"@cornerstonejs/codec-charls": "1.2.3",
"@cornerstonejs/codec-libjpeg-turbo-8bit": "1.2.2",
Expand All @@ -193,20 +193,20 @@
},
"packages/labelmap-interpolation": {
"name": "@cornerstonejs/labelmap-interpolation",
"version": "4.2.0",
"version": "4.5.19",
"dependencies": {
"@itk-wasm/morphological-contour-interpolation": "1.1.0",
"itk-wasm": "1.0.0-b.165",
},
"peerDependencies": {
"@cornerstonejs/core": "^3.26.2",
"@cornerstonejs/tools": "^3.26.2",
"@kitware/vtk.js": "32.12.1",
"@cornerstonejs/core": "4.5.19",
"@cornerstonejs/tools": "4.5.19",
"@kitware/vtk.js": "34.13.2",
},
},
"packages/nifti-volume-loader": {
"name": "@cornerstonejs/nifti-volume-loader",
"version": "4.2.0",
"version": "4.5.19",
"dependencies": {
"nifti-reader-js": "0.6.9",
},
Expand All @@ -216,19 +216,19 @@
},
"packages/polymorphic-segmentation": {
"name": "@cornerstonejs/polymorphic-segmentation",
"version": "4.2.0",
"version": "4.5.19",
"dependencies": {
"@icr/polyseg-wasm": "0.4.0",
},
"peerDependencies": {
"@cornerstonejs/core": "^3.26.2",
"@cornerstonejs/tools": "^3.26.2",
"@kitware/vtk.js": "32.12.1",
"@cornerstonejs/core": "4.5.19",
"@cornerstonejs/tools": "4.5.19",
"@kitware/vtk.js": "34.13.2",
},
},
"packages/tools": {
"name": "@cornerstonejs/tools",
"version": "4.2.0",
"version": "4.5.19",
"dependencies": {
"@types/offscreencanvas": "2019.7.3",
"comlink": "4.4.2",
Expand All @@ -238,7 +238,7 @@
"canvas": "3.1.0",
},
"peerDependencies": {
"@cornerstonejs/core": "4.1.4",
"@cornerstonejs/core": "4.5.19",
"@kitware/vtk.js": "32.12.1",
"@types/d3-array": "3.2.1",
"@types/d3-interpolate": "3.0.4",
Expand Down Expand Up @@ -752,7 +752,7 @@

"@jsonjoy.com/util": ["@jsonjoy.com/util@1.5.0", "", { "peerDependencies": { "tslib": "2" } }, "sha512-ojoNsrIuPI9g6o8UxhraZQSyF2ByJanAY4cTFbc8Mf2AXEF4aQRGY1dJxyJpuyav8r9FGflEt/Ff3u5Nt6YMPA=="],

"@kitware/vtk.js": ["@kitware/vtk.js@32.12.1", "", { "dependencies": { "@babel/runtime": "7.22.11", "@types/webxr": "^0.5.5", "commander": "9.2.0", "d3-scale": "4.0.2", "fast-deep-equal": "^3.1.3", "fflate": "0.7.3", "gl-matrix": "3.4.3", "globalthis": "1.0.3", "seedrandom": "3.0.5", "shader-loader": "1.3.1", "shelljs": "0.8.5", "spark-md5": "3.0.2", "stream-browserify": "3.0.0", "utif": "3.1.0", "webworker-promise": "0.5.0", "worker-loader": "3.0.8", "xmlbuilder2": "3.0.2" }, "peerDependencies": { "@babel/preset-env": "^7.17.10", "autoprefixer": "^10.4.7", "wslink": ">=1.1.0 || ^2.0.0" }, "bin": { "vtkDataConverter": "Utilities/DataGenerator/convert-cli.js", "xml2json": "Utilities/XMLConverter/xml2json-cli.js" } }, "sha512-IF8WK7WDu84035ws3HZXz8wys8O81mmeFayYFbdBEfKjgZ4k0EGCK25YCGc6Q47Zxq1iutjs3Zs2xAgGjTgGQg=="],
"@kitware/vtk.js": ["@kitware/vtk.js@34.13.2", "", { "dependencies": { "@babel/runtime": "^7.28.2", "@types/webxr": "^0.5.5", "commander": "9.2.0", "d3-scale": "4.0.2", "fast-deep-equal": "^3.1.3", "fflate": "0.7.3", "gl-matrix": "3.4.3", "globalthis": "1.0.3", "seedrandom": "3.0.5", "shader-loader": "1.3.1", "shelljs": "0.8.5", "spark-md5": "3.0.2", "stream-browserify": "3.0.0", "utif": "3.1.0", "webworker-promise": "0.5.0", "worker-loader": "3.0.8", "xmlbuilder2": "3.0.2" }, "peerDependencies": { "@babel/preset-env": "^7.17.10", "autoprefixer": "^10.4.7", "wslink": ">=1.1.0 || ^2.0.0" }, "bin": { "vtkDataConverter": "Utilities/DataGenerator/convert-cli.js", "xml2json": "Utilities/XMLConverter/xml2json-cli.js" } }, "sha512-Md4v3Jp9bf4aYygnWHE1z0lxNikkVYEzwXh0E/1YeOyM7zAbL8AvzgyC7LWfUZRUI5MxK8qv9avvOEwpc57mVA=="],

"@leichtgewicht/ip-codec": ["@leichtgewicht/ip-codec@2.0.5", "", {}, "sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw=="],

Expand Down Expand Up @@ -4418,6 +4418,8 @@

"@babel/runtime-corejs2/core-js": ["core-js@2.6.12", "", {}, "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ=="],

"@cornerstonejs/tools/@kitware/vtk.js": ["@kitware/vtk.js@32.12.1", "", { "dependencies": { "@babel/runtime": "7.22.11", "@types/webxr": "^0.5.5", "commander": "9.2.0", "d3-scale": "4.0.2", "fast-deep-equal": "^3.1.3", "fflate": "0.7.3", "gl-matrix": "3.4.3", "globalthis": "1.0.3", "seedrandom": "3.0.5", "shader-loader": "1.3.1", "shelljs": "0.8.5", "spark-md5": "3.0.2", "stream-browserify": "3.0.0", "utif": "3.1.0", "webworker-promise": "0.5.0", "worker-loader": "3.0.8", "xmlbuilder2": "3.0.2" }, "peerDependencies": { "@babel/preset-env": "^7.17.10", "autoprefixer": "^10.4.7", "wslink": ">=1.1.0 || ^2.0.0" }, "bin": { "vtkDataConverter": "Utilities/DataGenerator/convert-cli.js", "xml2json": "Utilities/XMLConverter/xml2json-cli.js" } }, "sha512-IF8WK7WDu84035ws3HZXz8wys8O81mmeFayYFbdBEfKjgZ4k0EGCK25YCGc6Q47Zxq1iutjs3Zs2xAgGjTgGQg=="],

"@cspotcode/source-map-support/@jridgewell/trace-mapping": ["@jridgewell/trace-mapping@0.3.9", "", { "dependencies": { "@jridgewell/resolve-uri": "^3.0.3", "@jridgewell/sourcemap-codec": "^1.4.10" } }, "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ=="],

"@csstools/css-color-parser/@csstools/color-helpers": ["@csstools/color-helpers@4.2.1", "", {}, "sha512-CEypeeykO9AN7JWkr1OEOQb0HRzZlPWGwV0Ya6DuVgFdDi6g3ma/cPZ5ZPZM4AWQikDpq/0llnGGlIL+j8afzw=="],
Expand Down Expand Up @@ -4464,7 +4466,7 @@

"@jsdevtools/coverage-istanbul-loader/schema-utils": ["schema-utils@2.7.1", "", { "dependencies": { "@types/json-schema": "^7.0.5", "ajv": "^6.12.4", "ajv-keywords": "^3.5.2" } }, "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg=="],

"@kitware/vtk.js/@babel/runtime": ["@babel/runtime@7.22.11", "", { "dependencies": { "regenerator-runtime": "^0.14.0" } }, "sha512-ee7jVNlWN09+KftVOu9n7S8gQzD/Z6hN/I8VBRXW4P1+Xe7kJGXMwu8vds4aGIMHZnNbdpSWCfZZtinytpcAvA=="],
"@kitware/vtk.js/@babel/runtime": ["@babel/runtime@7.28.4", "", {}, "sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ=="],

"@kitware/vtk.js/commander": ["commander@9.2.0", "", {}, "sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w=="],

Expand Down Expand Up @@ -5592,6 +5594,10 @@

"zip-stream/readable-stream": ["readable-stream@4.7.0", "", { "dependencies": { "abort-controller": "^3.0.0", "buffer": "^6.0.3", "events": "^3.3.0", "process": "^0.11.10", "string_decoder": "^1.3.0" } }, "sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg=="],

"@cornerstonejs/tools/@kitware/vtk.js/@babel/runtime": ["@babel/runtime@7.22.11", "", { "dependencies": { "regenerator-runtime": "^0.14.0" } }, "sha512-ee7jVNlWN09+KftVOu9n7S8gQzD/Z6hN/I8VBRXW4P1+Xe7kJGXMwu8vds4aGIMHZnNbdpSWCfZZtinytpcAvA=="],

"@cornerstonejs/tools/@kitware/vtk.js/commander": ["commander@9.2.0", "", {}, "sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w=="],

"@isaacs/cliui/string-width/emoji-regex": ["emoji-regex@9.2.2", "", {}, "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg=="],

"@isaacs/cliui/strip-ansi/ansi-regex": ["ansi-regex@6.1.0", "", {}, "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA=="],
Expand Down
2 changes: 1 addition & 1 deletion packages/adapters/src/version.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
* Auto-generated from version.json
* Do not modify this file directly
*/
export const version = '4.5.19';
export const version = "4.5.19";
2 changes: 1 addition & 1 deletion packages/core/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@
"prepublishOnly": "yarn run build"
},
"dependencies": {
"@kitware/vtk.js": "32.12.1",
"@kitware/vtk.js": "34.13.2",
"comlink": "4.4.2",
"gl-matrix": "3.4.3",
"loglevel": "1.9.2"
Expand Down
15 changes: 4 additions & 11 deletions packages/core/src/RenderingEngine/StackViewport.ts
Original file line number Diff line number Diff line change
Expand Up @@ -599,28 +599,21 @@ class StackViewport extends Viewport {
public getCornerstoneImage = (): IImage => this.csImage;

/**
* Creates imageMapper based on the provided vtkImageData and also creates
* the imageSliceActor and connects it to the imageMapper.
* For color stack images, it sets the independent components to be false which
* is required in vtk.
* Creates imageMapper based on the provided vtkImageData and also creates the
* imageSliceActor and connects it to the imageMapper. For color stack images,
* it sets the independent components to be false which is required in vtk.
*
* @param imageData - vtkImageData for the viewport
* @returns actor vtkActor
*/
private createActorMapper = (imageData) => {
private createActorMapper = (imageData: vtkImageData) => {
const mapper = vtkImageMapper.newInstance();
mapper.setInputData(imageData);

const actor = vtkImageSlice.newInstance();

actor.setMapper(mapper);

const { preferSizeOverAccuracy } = getConfiguration().rendering;

if (preferSizeOverAccuracy) {
mapper.setPreferSizeOverAccuracy(true);
}

if (imageData.getPointData().getScalars().getNumberOfComponents() > 1) {
actor.getProperty().setIndependentComponents(false);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import triggerEvent from '../../utilities/triggerEvent';
import { Events } from '../../enums';
import setDefaultVolumeVOI from './setDefaultVolumeVOI';
import type { BlendMode } from '@kitware/vtk.js/Rendering/Core/VolumeMapper/Constants';
import { getConfiguration } from '../../init';

interface createVolumeActorInterface {
volumeId: string;
Expand Down Expand Up @@ -68,6 +69,11 @@ async function createVolumeActor(
const volumeProperty = volumeActor.getProperty();
volumeProperty.set({ viewportId: viewportId }, true);

if (getConfiguration().rendering.preferSizeOverAccuracy) {
// @ts-expect-error: vtk.js typing is missing this method
volumeProperty.setPreferSizeOverAccuracy(true);
}

if (numberOfComponents === 3) {
volumeActor.getProperty().setIndependentComponents(false);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,6 @@ export default function createVolumeMapper(
): vtkVolumeMapper {
const volumeMapper = vtkSharedVolumeMapper.newInstance();

if (getConfiguration().rendering.preferSizeOverAccuracy) {
volumeMapper.setPreferSizeOverAccuracy(true);
}

volumeMapper.setInputData(imageData);

const spacing = imageData.getSpacing();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,27 +33,27 @@ function vtkStreamingOpenGLTexture(publicAPI, model) {

const superCreate3DFilterableFromRaw = publicAPI.create3DFilterableFromRaw;

publicAPI.create3DFilterableFromRaw = (
publicAPI.create3DFilterableFromRaw = ({
width,
height,
depth,
numberOfComponents,
dataType,
data,
preferSizeOverAccuracy
) => {
preferSizeOverAccuracy,
}) => {
model.inputDataType = dataType;
model.inputNumComps = numberOfComponents;

superCreate3DFilterableFromRaw(
superCreate3DFilterableFromRaw({
width,
height,
depth,
numberOfComponents,
dataType,
data,
preferSizeOverAccuracy
);
preferSizeOverAccuracy,
});
};

const superUpdate = publicAPI.updateVolumeInfoForGL;
Expand Down
Loading
Loading