@kitware/vtk.js 24.7.0 → 24.7.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.
@@ -43,7 +43,7 @@ function vtkMouseCameraAxisRotateManipulator(publicAPI, model) {
43
43
  mat4.translate(trans, trans, center);
44
44
  var dx = model.previousPosition.x - position.x;
45
45
  var dy = model.previousPosition.y - position.y;
46
- var size = interactor.getView().getSize(); // Azimuth
46
+ var size = interactor.getView().getViewportSize(renderer); // Azimuth
47
47
 
48
48
  mat4.rotate(trans, trans, radiansFromDegrees(360.0 * dx / size[0] * rotationFactor), rotationAxis); // Elevation
49
49
 
@@ -23,7 +23,7 @@ function vtkMouseCameraTrackballMultiRotateManipulator(publicAPI, model) {
23
23
  var currentManipulator = null;
24
24
 
25
25
  publicAPI.onButtonDown = function (interactor, renderer, position) {
26
- var viewSize = interactor.getView().getSize();
26
+ var viewSize = interactor.getView().getViewportSize(renderer);
27
27
  var viewCenter = [0.5 * viewSize[0], 0.5 * viewSize[1]];
28
28
  var rotateRadius = 0.9 * max(viewCenter[0], viewCenter[1]);
29
29
  var dist2 = sqr(viewCenter[0] - position.x) + sqr(viewCenter[1] - position.y);
@@ -33,7 +33,7 @@ function vtkMouseCameraTrackballPanManipulator(publicAPI, model) {
33
33
  var right = [0, 0, 0];
34
34
  cross(vpn, up, right); // These are different because y is flipped.
35
35
 
36
- var height = interactor.getView().getSize()[1];
36
+ var height = interactor.getView().getViewportSize(renderer)[1];
37
37
  var dx = (pos.x - lastPos.x) / height;
38
38
  var dy = (lastPos.y - pos.y) / height;
39
39
  var scale = camera.getParallelScale();
@@ -42,7 +42,7 @@ function vtkMouseCameraTrackballRotateManipulator(publicAPI, model) {
42
42
 
43
43
  var dx = model.previousPosition.x - position.x;
44
44
  var dy = model.previousPosition.y - position.y;
45
- var size = interactor.getView().getSize(); // Azimuth
45
+ var size = interactor.getView().getViewportSize(renderer); // Azimuth
46
46
 
47
47
  var viewUp = camera.getViewUp();
48
48
 
@@ -11,7 +11,7 @@ function vtkMouseCameraTrackballZoomManipulator(publicAPI, model) {
11
11
 
12
12
  publicAPI.onButtonDown = function (interactor, renderer, position) {
13
13
  model.previousPosition = position;
14
- var size = interactor.getView().getSize();
14
+ var size = interactor.getView().getViewportSize(renderer);
15
15
  var camera = renderer.getActiveCamera();
16
16
  var direction = model.flipDirection ? -1 : 1;
17
17
 
@@ -26,7 +26,9 @@ function vtkMouseCameraUnicamManipulator(publicAPI, model) {
26
26
  }); //----------------------------------------------------------------------------
27
27
 
28
28
  var normalize$1 = function normalize(position, interactor) {
29
- var _interactor$getView$g = interactor.getView().getSize(),
29
+ var renderer = interactor.findPokedRenderer();
30
+
31
+ var _interactor$getView$g = interactor.getView().getViewportSize(renderer),
30
32
  _interactor$getView$g2 = _slicedToArray(_interactor$getView$g, 2),
31
33
  width = _interactor$getView$g2[0],
32
34
  height = _interactor$getView$g2[1];
@@ -63,8 +65,9 @@ function vtkMouseCameraUnicamManipulator(publicAPI, model) {
63
65
  normalize(atV);
64
66
  var l = dot(cameraToPointVec, atV);
65
67
  var viewAngle = radiansFromDegrees(camera.getViewAngle());
68
+ var renderer = interactor.findPokedRenderer();
66
69
 
67
- var _interactor$getView$g3 = interactor.getView().getSize(),
70
+ var _interactor$getView$g3 = interactor.getView().getViewportSize(renderer),
68
71
  _interactor$getView$g4 = _slicedToArray(_interactor$getView$g3, 2),
69
72
  width = _interactor$getView$g4[0],
70
73
  height = _interactor$getView$g4[1];
@@ -55,7 +55,9 @@ function vtkMouseCameraUnicamRotateManipulator(publicAPI, model) {
55
55
 
56
56
 
57
57
  var normalize$1 = function normalize(position, interactor) {
58
- var _interactor$getView$g = interactor.getView().getSize(),
58
+ var renderer = interactor.findPokedRenderer();
59
+
60
+ var _interactor$getView$g = interactor.getView().getViewportSize(renderer),
59
61
  _interactor$getView$g2 = _slicedToArray(_interactor$getView$g, 2),
60
62
  width = _interactor$getView$g2[0],
61
63
  height = _interactor$getView$g2[1];
@@ -42,7 +42,7 @@ function dollyToPosition(fact, position, renderer, rwi) {
42
42
 
43
43
  if (cam.getParallelProjection()) {
44
44
  // Zoom relatively to the cursor
45
- var aSize = rwi.getView().getSize();
45
+ var aSize = rwi.getView().getViewportSize(renderer);
46
46
  var w = aSize[0];
47
47
  var h = aSize[1];
48
48
  var x0 = w / 2;
@@ -118,10 +118,9 @@ function vtkRenderWindowInteractor(publicAPI, model) {
118
118
  };
119
119
 
120
120
  function getScreenEventPositionFor(source) {
121
- var bounds = model.container.getBoundingClientRect();
122
-
123
121
  var canvas = model._view.getCanvas();
124
122
 
123
+ var bounds = canvas.getBoundingClientRect();
125
124
  var scaleX = canvas.width / bounds.width;
126
125
  var scaleY = canvas.height / bounds.height;
127
126
  var position = {
@@ -37,7 +37,6 @@ function extractRenderingComponents(renderer) {
37
37
 
38
38
  function createSvgRoot(id) {
39
39
  var svgRoot = createSvgDomElement('svg');
40
- svgRoot.setAttribute('style', 'position: absolute; top: 0; left: 0; width: 100%; height: 100%;');
41
40
  svgRoot.setAttribute('version', '1.1');
42
41
  svgRoot.setAttribute('baseProfile', 'full');
43
42
  return svgRoot;
@@ -122,7 +121,7 @@ function vtkWidgetManager(publicAPI, model) {
122
121
  }
123
122
 
124
123
  function setSvgSize() {
125
- var _model$_apiSpecificRe = model._apiSpecificRenderWindow.getSize(),
124
+ var _model$_apiSpecificRe = model._apiSpecificRenderWindow.getViewportSize(model._renderer),
126
125
  _model$_apiSpecificRe2 = _slicedToArray(_model$_apiSpecificRe, 2),
127
126
  cwidth = _model$_apiSpecificRe2[0],
128
127
  cheight = _model$_apiSpecificRe2[1];
@@ -148,6 +147,14 @@ function vtkWidgetManager(publicAPI, model) {
148
147
  }
149
148
  }
150
149
 
150
+ function setSvgRootStyle() {
151
+ var viewport = model._renderer.getViewport().map(function (v) {
152
+ return v * 100;
153
+ });
154
+
155
+ model.svgRoot.setAttribute('style', "position: absolute; left: ".concat(viewport[0], "%; top: ").concat(100 - viewport[3], "%; width: ").concat(viewport[2] - viewport[0], "%; height: ").concat(viewport[3] - viewport[1], "%;"));
156
+ }
157
+
151
158
  function updateSvg() {
152
159
  if (model.useSvgLayer) {
153
160
  var _loop = function _loop(i) {
@@ -459,6 +466,8 @@ function vtkWidgetManager(publicAPI, model) {
459
466
  model._selector.setFieldAssociation(FieldAssociations.FIELD_ASSOCIATION_POINTS);
460
467
 
461
468
  subscriptions.push(model._interactor.onRenderEvent(updateSvg));
469
+ subscriptions.push(renderer.onModified(setSvgRootStyle));
470
+ setSvgRootStyle();
462
471
  subscriptions.push(model._apiSpecificRenderWindow.onModified(setSvgSize));
463
472
  setSvgSize();
464
473
  subscriptions.push(model._apiSpecificRenderWindow.onModified(updateDisplayScaleParams));
@@ -8,7 +8,7 @@ function trackballRotate(prevX, prevY, curX, curY, origin, direction, renderer,
8
8
  var camera = renderer.getActiveCamera();
9
9
  var viewUp = camera.getViewUp();
10
10
  var dop = camera.getDirectionOfProjection();
11
- var size = renderer.getRenderWindow().getInteractor().getView().getSize();
11
+ var size = renderer.getRenderWindow().getInteractor().getView().getViewportSize(renderer);
12
12
  var xdeg = 360.0 * dx / size[0];
13
13
  var ydeg = 360.0 * dy / size[1];
14
14
  var newDirection = new Float64Array([direction[0], direction[1], direction[2]]);
@@ -255,15 +255,24 @@ function vtkArrowHandleRepresentation(publicAPI, model) {
255
255
  return orientationRotation;
256
256
  }
257
257
 
258
+ var superGetRepresentationStates = publicAPI.getRepresentationStates;
259
+
260
+ publicAPI.getRepresentationStates = function () {
261
+ var input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : model.inputData[0];
262
+ return superGetRepresentationStates(input).filter(function (state) {
263
+ var _state$getOrigin, _state$isVisible;
264
+
265
+ return ((_state$getOrigin = state.getOrigin) === null || _state$getOrigin === void 0 ? void 0 : _state$getOrigin.call(state)) && ((_state$isVisible = state.isVisible) === null || _state$isVisible === void 0 ? void 0 : _state$isVisible.call(state));
266
+ });
267
+ };
268
+
258
269
  publicAPI.requestDataInternal = function (inData, outData) {
259
270
  var _model$internalArrays = model.internalArrays,
260
271
  points = _model$internalArrays.points,
261
272
  scale = _model$internalArrays.scale,
262
273
  color = _model$internalArrays.color,
263
274
  direction = _model$internalArrays.direction;
264
- var list = publicAPI.getRepresentationStates(inData[0]).filter(function (state) {
265
- return state.getOrigin && state.getOrigin() && state.isVisible && state.isVisible();
266
- });
275
+ var list = publicAPI.getRepresentationStates(inData[0]);
267
276
  var totalCount = list.length;
268
277
 
269
278
  if (color.getNumberOfValues() !== totalCount) {
@@ -93,6 +93,17 @@ function vtkCircleContextRepresentation(publicAPI, model) {
93
93
 
94
94
  publicAPI.setOpacity = function (opacity) {
95
95
  model.pipelines.circle.actor.getProperty().setOpacity(opacity);
96
+ };
97
+
98
+ var superGetRepresentationStates = publicAPI.getRepresentationStates;
99
+
100
+ publicAPI.getRepresentationStates = function () {
101
+ var input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : model.inputData[0];
102
+ return superGetRepresentationStates(input).filter(function (state) {
103
+ var _state$getOrigin, _state$isVisible;
104
+
105
+ return ((_state$getOrigin = state.getOrigin) === null || _state$getOrigin === void 0 ? void 0 : _state$getOrigin.call(state)) && ((_state$isVisible = state.isVisible) === null || _state$isVisible === void 0 ? void 0 : _state$isVisible.call(state));
106
+ });
96
107
  }; // --------------------------------------------------------------------------
97
108
 
98
109
 
@@ -102,9 +113,7 @@ function vtkCircleContextRepresentation(publicAPI, model) {
102
113
  scale = _model$internalArrays.scale,
103
114
  color = _model$internalArrays.color,
104
115
  direction = _model$internalArrays.direction;
105
- var list = publicAPI.getRepresentationStates(inData[0]).filter(function (state) {
106
- return state.getOrigin && state.getOrigin() && state.isVisible && state.isVisible();
107
- });
116
+ var list = publicAPI.getRepresentationStates(inData[0]);
108
117
  var totalCount = list.length;
109
118
 
110
119
  if (color.getNumberOfValues() !== totalCount) {
@@ -49,16 +49,25 @@ function vtkCubeHandleRepresentation(publicAPI, model) {
49
49
  model.mapper.setInputConnection(publicAPI.getOutputPort(), 0);
50
50
  model.mapper.setInputConnection(model.glyph.getOutputPort(), 1);
51
51
  model.actor.setMapper(model.mapper);
52
- publicAPI.addActor(model.actor); // --------------------------------------------------------------------------
52
+ publicAPI.addActor(model.actor);
53
+ var superGetRepresentationStates = publicAPI.getRepresentationStates;
54
+
55
+ publicAPI.getRepresentationStates = function () {
56
+ var input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : model.inputData[0];
57
+ return superGetRepresentationStates(input).filter(function (state) {
58
+ var _state$getOrigin, _state$isVisible;
59
+
60
+ return ((_state$getOrigin = state.getOrigin) === null || _state$getOrigin === void 0 ? void 0 : _state$getOrigin.call(state)) && ((_state$isVisible = state.isVisible) === null || _state$isVisible === void 0 ? void 0 : _state$isVisible.call(state));
61
+ });
62
+ }; // --------------------------------------------------------------------------
63
+
53
64
 
54
65
  publicAPI.requestData = function (inData, outData) {
55
66
  var _model$internalArrays = model.internalArrays,
56
67
  points = _model$internalArrays.points,
57
68
  scale = _model$internalArrays.scale,
58
69
  color = _model$internalArrays.color;
59
- var list = publicAPI.getRepresentationStates(inData[0]).filter(function (state) {
60
- return state.getOrigin && state.getOrigin() && state.isVisible && state.isVisible();
61
- });
70
+ var list = publicAPI.getRepresentationStates(inData[0]);
62
71
  var totalCount = list.length;
63
72
 
64
73
  if (color.getNumberOfValues() !== totalCount) {
@@ -66,14 +66,23 @@ function vtkSphereContextRepresentation(publicAPI, model) {
66
66
  model.pipelines.circle.actor.getProperty().setOpacity(opacity);
67
67
  };
68
68
 
69
+ var superGetRepresentationStates = publicAPI.getRepresentationStates;
70
+
71
+ publicAPI.getRepresentationStates = function () {
72
+ var input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : model.inputData[0];
73
+ return superGetRepresentationStates(input).filter(function (state) {
74
+ var _state$getOrigin, _state$isVisible;
75
+
76
+ return ((_state$getOrigin = state.getOrigin) === null || _state$getOrigin === void 0 ? void 0 : _state$getOrigin.call(state)) && ((_state$isVisible = state.isVisible) === null || _state$isVisible === void 0 ? void 0 : _state$isVisible.call(state));
77
+ });
78
+ };
79
+
69
80
  publicAPI.requestData = function (inData, outData) {
70
81
  var _model$internalArrays = model.internalArrays,
71
82
  points = _model$internalArrays.points,
72
83
  scale = _model$internalArrays.scale,
73
84
  color = _model$internalArrays.color;
74
- var list = publicAPI.getRepresentationStates(inData[0]).filter(function (state) {
75
- return state.getOrigin && state.getOrigin() && state.isVisible && state.isVisible();
76
- });
85
+ var list = publicAPI.getRepresentationStates(inData[0]);
77
86
  var totalCount = list.length;
78
87
 
79
88
  if (color.getNumberOfValues() !== totalCount) {
@@ -96,6 +96,17 @@ function vtkSphereHandleRepresentation(publicAPI, model) {
96
96
  publicAPI.setDisplayCallback = function (callback) {
97
97
  model.displayCallback = callback;
98
98
  model.displayMapper.setCallback(callback ? callbackProxy : null);
99
+ };
100
+
101
+ var superGetRepresentationStates = publicAPI.getRepresentationStates;
102
+
103
+ publicAPI.getRepresentationStates = function () {
104
+ var input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : model.inputData[0];
105
+ return superGetRepresentationStates(input).filter(function (state) {
106
+ var _state$getOrigin, _state$isVisible;
107
+
108
+ return ((_state$getOrigin = state.getOrigin) === null || _state$getOrigin === void 0 ? void 0 : _state$getOrigin.call(state)) && ((_state$isVisible = state.isVisible) === null || _state$isVisible === void 0 ? void 0 : _state$isVisible.call(state));
109
+ });
99
110
  }; // --------------------------------------------------------------------------
100
111
 
101
112
 
@@ -104,9 +115,7 @@ function vtkSphereHandleRepresentation(publicAPI, model) {
104
115
  points = _model$internalArrays.points,
105
116
  scale = _model$internalArrays.scale,
106
117
  color = _model$internalArrays.color;
107
- var list = publicAPI.getRepresentationStates(inData[0]).filter(function (state) {
108
- return state.getOrigin && state.getOrigin() && state.isVisible && state.isVisible();
109
- });
118
+ var list = publicAPI.getRepresentationStates(inData[0]);
110
119
  var totalCount = list.length;
111
120
 
112
121
  if (color.getNumberOfValues() !== totalCount) {
package/index.d.ts CHANGED
@@ -42,9 +42,9 @@
42
42
  /// <reference path="./Filters/General/AppendPolyData.d.ts" />
43
43
  /// <reference path="./Filters/General/ImageCropFilter.d.ts" />
44
44
  /// <reference path="./Filters/General/ImageOutlineFilter.d.ts" />
45
+ /// <reference path="./Filters/General/ImageStreamline.d.ts" />
45
46
  /// <reference path="./Filters/General/ImageSliceFilter.d.ts" />
46
47
  /// <reference path="./Filters/General/LineFilter.d.ts" />
47
- /// <reference path="./Filters/General/ImageStreamline.d.ts" />
48
48
  /// <reference path="./Filters/General/OutlineFilter.d.ts" />
49
49
  /// <reference path="./Filters/General/TriangleFilter.d.ts" />
50
50
  /// <reference path="./Filters/General/TubeFilter.d.ts" />
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kitware/vtk.js",
3
- "version": "24.7.0",
3
+ "version": "24.7.1",
4
4
  "description": "Visualization Toolkit for the Web",
5
5
  "keywords": [
6
6
  "3d",