@kitware/vtk.js 26.9.13 → 27.0.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/Interaction/Style/InteractorStyleImage.d.ts +107 -0
- package/Interaction/Style/InteractorStyleImage.js +14 -0
- package/Interaction/Style/InteractorStyleTrackballCamera.d.ts +170 -0
- package/Rendering/Core/AbstractImageMapper.d.ts +3 -3
- package/Rendering/Core/AbstractImageMapper.js +5 -3
- package/Rendering/Core/AbstractMapper3D.js +9 -1
- package/Rendering/Core/ImageProperty/Constants.js +2 -2
- package/Rendering/Core/ImageProperty.js +2 -2
- package/Rendering/Core/ImageResliceMapper/Constants.d.ts +11 -0
- package/Rendering/Core/ImageResliceMapper/Constants.js +11 -0
- package/Rendering/Core/ImageResliceMapper.d.ts +245 -0
- package/Rendering/Core/ImageResliceMapper.js +70 -0
- package/Rendering/Core/Mapper.js +1 -7
- package/Rendering/Core.js +2 -0
- package/Rendering/OpenGL/ImageMapper.js +1 -11
- package/Rendering/OpenGL/ImageResliceMapper.js +996 -0
- package/Rendering/OpenGL/PolyDataMapper.js +4 -81
- package/Rendering/OpenGL/PolyDataMapper2D.js +4 -75
- package/Rendering/OpenGL/Profiles/All.js +1 -0
- package/Rendering/OpenGL/Profiles/Volume.js +1 -0
- package/Rendering/OpenGL/ReplacementShaderMapper.js +80 -1
- package/Rendering/OpenGL/ShaderProgram.js +1 -1
- package/Rendering/OpenGL/Texture.js +2 -2
- package/Rendering/OpenGL/glsl/vtkImageResliceMapperFS.glsl.js +3 -0
- package/Rendering/OpenGL/glsl/vtkImageResliceMapperVS.glsl.js +3 -0
- package/Rendering/OpenGL.js +3 -1
- package/Rendering/Profiles/All.js +1 -0
- package/Rendering/Profiles/Volume.js +1 -0
- package/index.d.ts +4 -0
- package/package.json +3 -3
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
|
+
import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
|
|
3
|
+
import CoincidentTopologyHelper from './Mapper/CoincidentTopologyHelper.js';
|
|
4
|
+
import Constants from './ImageResliceMapper/Constants.js';
|
|
5
|
+
import macro from '../../macros.js';
|
|
6
|
+
import vtkAbstractImageMapper from './AbstractImageMapper.js';
|
|
7
|
+
import vtkBoundingBox from '../../Common/DataModel/BoundingBox.js';
|
|
8
|
+
|
|
9
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
10
|
+
|
|
11
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
12
|
+
var SlabTypes = Constants.SlabTypes;
|
|
13
|
+
var staticOffsetAPI = CoincidentTopologyHelper.staticOffsetAPI,
|
|
14
|
+
otherStaticMethods = CoincidentTopologyHelper.otherStaticMethods; // ----------------------------------------------------------------------------
|
|
15
|
+
// vtkImageResliceMapper methods
|
|
16
|
+
// ----------------------------------------------------------------------------
|
|
17
|
+
|
|
18
|
+
function vtkImageResliceMapper(publicAPI, model) {
|
|
19
|
+
// Set our className
|
|
20
|
+
model.classHierarchy.push('vtkImageResliceMapper');
|
|
21
|
+
|
|
22
|
+
publicAPI.getBounds = function () {
|
|
23
|
+
var bds = _toConsumableArray(vtkBoundingBox.INIT_BOUNDS);
|
|
24
|
+
|
|
25
|
+
var image = publicAPI.getInputData();
|
|
26
|
+
|
|
27
|
+
if (publicAPI.getSlicePolyData()) {
|
|
28
|
+
bds = publicAPI.getSlicePolyData().getBounds();
|
|
29
|
+
} else if (image) {
|
|
30
|
+
bds = image.getBounds();
|
|
31
|
+
|
|
32
|
+
if (publicAPI.getSlicePlane()) {
|
|
33
|
+
vtkBoundingBox.cutWithPlane(bds, publicAPI.getSlicePlane().getOrigin(), publicAPI.getSlicePlane().getNormal());
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
return bds;
|
|
38
|
+
};
|
|
39
|
+
} // ----------------------------------------------------------------------------
|
|
40
|
+
// Object factory
|
|
41
|
+
// ----------------------------------------------------------------------------
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
var DEFAULT_VALUES = {
|
|
45
|
+
slabThickness: 0.0,
|
|
46
|
+
slabTrapezoidIntegration: 0,
|
|
47
|
+
slabType: SlabTypes.MEAN,
|
|
48
|
+
slicePlane: null,
|
|
49
|
+
slicePolyData: null
|
|
50
|
+
}; // ----------------------------------------------------------------------------
|
|
51
|
+
|
|
52
|
+
function extend(publicAPI, model) {
|
|
53
|
+
var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
54
|
+
Object.assign(model, DEFAULT_VALUES, initialValues); // Build VTK API
|
|
55
|
+
|
|
56
|
+
vtkAbstractImageMapper.extend(publicAPI, model, initialValues);
|
|
57
|
+
macro.setGet(publicAPI, model, ['slabThickness', 'slabTrapezoidIntegration', 'slabType', 'slicePlane', 'slicePolyData']);
|
|
58
|
+
CoincidentTopologyHelper.implementCoincidentTopologyMethods(publicAPI, model); // Object methods
|
|
59
|
+
|
|
60
|
+
vtkImageResliceMapper(publicAPI, model);
|
|
61
|
+
} // ----------------------------------------------------------------------------
|
|
62
|
+
|
|
63
|
+
var newInstance = macro.newInstance(extend, 'vtkImageResliceMapper'); // ----------------------------------------------------------------------------
|
|
64
|
+
|
|
65
|
+
var vtkImageResliceMapper$1 = _objectSpread(_objectSpread({
|
|
66
|
+
newInstance: newInstance,
|
|
67
|
+
extend: extend
|
|
68
|
+
}, staticOffsetAPI), otherStaticMethods);
|
|
69
|
+
|
|
70
|
+
export { vtkImageResliceMapper$1 as default, extend, newInstance };
|
package/Rendering/Core/Mapper.js
CHANGED
|
@@ -553,7 +553,6 @@ var DEFAULT_VALUES = {
|
|
|
553
553
|
forceCompileOnly: 0,
|
|
554
554
|
useInvertibleColors: false,
|
|
555
555
|
invertibleScalars: null,
|
|
556
|
-
viewSpecificProperties: null,
|
|
557
556
|
customShaderAttributes: []
|
|
558
557
|
}; // ----------------------------------------------------------------------------
|
|
559
558
|
|
|
@@ -563,14 +562,9 @@ function extend(publicAPI, model) {
|
|
|
563
562
|
|
|
564
563
|
vtkAbstractMapper3D.extend(publicAPI, model, initialValues);
|
|
565
564
|
macro.get(publicAPI, model, ['colorCoordinates', 'colorMapColors', 'colorTextureMap']);
|
|
566
|
-
macro.setGet(publicAPI, model, ['colorByArrayName', 'arrayAccessMode', 'colorMode', 'fieldDataTupleId', 'interpolateScalarsBeforeMapping', 'lookupTable', 'populateSelectionSettings', 'renderTime', 'scalarMode', 'scalarVisibility', 'selectionWebGLIdsToVTKIds', 'static', 'useLookupTableScalarRange', '
|
|
565
|
+
macro.setGet(publicAPI, model, ['colorByArrayName', 'arrayAccessMode', 'colorMode', 'fieldDataTupleId', 'interpolateScalarsBeforeMapping', 'lookupTable', 'populateSelectionSettings', 'renderTime', 'scalarMode', 'scalarVisibility', 'selectionWebGLIdsToVTKIds', 'static', 'useLookupTableScalarRange', 'customShaderAttributes' // point data array names that will be transferred to the VBO
|
|
567
566
|
]);
|
|
568
567
|
macro.setGetArray(publicAPI, model, ['scalarRange'], 2);
|
|
569
|
-
|
|
570
|
-
if (!model.viewSpecificProperties) {
|
|
571
|
-
model.viewSpecificProperties = {};
|
|
572
|
-
}
|
|
573
|
-
|
|
574
568
|
CoincidentTopologyHelper.implementCoincidentTopologyMethods(publicAPI, model); // Object methods
|
|
575
569
|
|
|
576
570
|
vtkMapper(publicAPI, model);
|
package/Rendering/Core.js
CHANGED
|
@@ -17,6 +17,7 @@ import vtkGlyph3DMapper from './Core/Glyph3DMapper.js';
|
|
|
17
17
|
import vtkHardwareSelector from './Core/HardwareSelector.js';
|
|
18
18
|
import vtkImageMapper from './Core/ImageMapper.js';
|
|
19
19
|
import vtkImageProperty from './Core/ImageProperty.js';
|
|
20
|
+
import vtkImageResliceMapper from './Core/ImageResliceMapper.js';
|
|
20
21
|
import vtkImageSlice from './Core/ImageSlice.js';
|
|
21
22
|
import vtkInteractorObserver from './Core/InteractorObserver.js';
|
|
22
23
|
import vtkInteractorStyle from './Core/InteractorStyle.js';
|
|
@@ -66,6 +67,7 @@ var Core = {
|
|
|
66
67
|
vtkHardwareSelector: vtkHardwareSelector,
|
|
67
68
|
vtkImageMapper: vtkImageMapper,
|
|
68
69
|
vtkImageProperty: vtkImageProperty,
|
|
70
|
+
vtkImageResliceMapper: vtkImageResliceMapper,
|
|
69
71
|
vtkImageSlice: vtkImageSlice,
|
|
70
72
|
vtkInteractorObserver: vtkInteractorObserver,
|
|
71
73
|
vtkInteractorStyle: vtkInteractorStyle,
|
|
@@ -104,17 +104,6 @@ function vtkOpenGLImageMapper(publicAPI, model) {
|
|
|
104
104
|
publicAPI.renderPiece(ren, actor);
|
|
105
105
|
};
|
|
106
106
|
|
|
107
|
-
publicAPI.buildShaders = function (shaders, ren, actor) {
|
|
108
|
-
publicAPI.getShaderTemplate(shaders, ren, actor);
|
|
109
|
-
model.lastRenderPassShaderReplacement = model.currentRenderPass ? model.currentRenderPass.getShaderReplacement() : null; // apply any renderPassReplacements
|
|
110
|
-
|
|
111
|
-
if (model.lastRenderPassShaderReplacement) {
|
|
112
|
-
model.lastRenderPassShaderReplacement(shaders);
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
publicAPI.replaceShaderValues(shaders, ren, actor);
|
|
116
|
-
};
|
|
117
|
-
|
|
118
107
|
publicAPI.getShaderTemplate = function (shaders, ren, actor) {
|
|
119
108
|
shaders.Vertex = vtkPolyDataVS;
|
|
120
109
|
shaders.Fragment = vtkPolyDataFS;
|
|
@@ -875,6 +864,7 @@ function extend(publicAPI, model) {
|
|
|
875
864
|
|
|
876
865
|
vtkViewNode.extend(publicAPI, model, initialValues);
|
|
877
866
|
vtkReplacementShaderMapper.implementReplaceShaderCoincidentOffset(publicAPI, model, initialValues);
|
|
867
|
+
vtkReplacementShaderMapper.implementBuildShadersWithReplacements(publicAPI, model, initialValues);
|
|
878
868
|
model.tris = vtkHelper.newInstance();
|
|
879
869
|
model.openGLTexture = vtkOpenGLTexture.newInstance({
|
|
880
870
|
resizable: true
|