molstar 4.2.0 → 4.3.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/LICENSE +20 -20
- package/README.md +197 -197
- package/build/viewer/embedded.html +52 -52
- package/build/viewer/index.html +129 -129
- package/build/viewer/molstar.js +1 -1
- package/build/viewer/molstar.js.LICENSE.txt +9 -0
- package/lib/apps/docking-viewer/index.html +36 -36
- package/lib/apps/mesoscale-explorer/index.html +100 -100
- package/lib/apps/mesoscale-explorer/style.scss +33 -33
- package/lib/apps/viewer/app.d.ts +2 -1
- package/lib/apps/viewer/app.js +2 -1
- package/lib/apps/viewer/embedded.html +52 -52
- package/lib/apps/viewer/index.html +129 -129
- package/lib/cli/chem-comp-dict/create-ions.js +9 -9
- package/lib/cli/chem-comp-dict/create-saccharides.js +9 -9
- package/lib/cli/cifschema/util/generate.js +12 -12
- package/lib/cli/lipid-params/index.js +9 -9
- package/lib/commonjs/apps/viewer/app.d.ts +2 -1
- package/lib/commonjs/apps/viewer/app.js +1 -0
- package/lib/commonjs/cli/chem-comp-dict/create-ions.js +9 -9
- package/lib/commonjs/cli/chem-comp-dict/create-saccharides.js +9 -9
- package/lib/commonjs/cli/cifschema/util/generate.js +12 -12
- package/lib/commonjs/cli/lipid-params/index.js +9 -9
- package/lib/commonjs/examples/alpha-orbitals/example-data.js +160 -160
- package/lib/commonjs/extensions/alpha-orbitals/gpu/shader.frag.js +136 -136
- package/lib/commonjs/extensions/assembly-symmetry/prop.js +24 -24
- package/lib/commonjs/extensions/dnatco/confal-pyramids/behavior.js +5 -5
- package/lib/commonjs/extensions/dnatco/ntc-tube/behavior.js +5 -5
- package/lib/commonjs/extensions/geo-export/usdz-exporter.js +41 -41
- package/lib/commonjs/extensions/meshes/mesh-extension.d.ts +1 -0
- package/lib/commonjs/extensions/mp4-export/encoder.js +1 -1
- package/lib/commonjs/extensions/mvs/components/annotation-label/representation.d.ts +0 -2
- package/lib/commonjs/extensions/mvs/components/custom-label/representation.d.ts +2 -2
- package/lib/commonjs/extensions/mvs/tree/mvs/mvs-builder.d.ts +8 -2
- package/lib/commonjs/extensions/sb-ncbr/index.d.ts +8 -0
- package/lib/commonjs/extensions/sb-ncbr/index.js +14 -1
- package/lib/commonjs/extensions/sb-ncbr/tunnels/actions.d.ts +20 -0
- package/lib/commonjs/extensions/sb-ncbr/tunnels/actions.js +89 -0
- package/lib/commonjs/extensions/sb-ncbr/tunnels/algorithm.d.ts +26 -0
- package/lib/commonjs/extensions/sb-ncbr/tunnels/algorithm.js +474 -0
- package/lib/commonjs/extensions/sb-ncbr/tunnels/behavior.d.ts +40 -0
- package/lib/commonjs/extensions/sb-ncbr/tunnels/behavior.js +96 -0
- package/lib/commonjs/extensions/sb-ncbr/tunnels/data-model.d.ts +146 -0
- package/lib/commonjs/extensions/sb-ncbr/tunnels/data-model.js +28 -0
- package/lib/commonjs/extensions/sb-ncbr/tunnels/examples.d.ts +12 -0
- package/lib/commonjs/extensions/sb-ncbr/tunnels/examples.js +54 -0
- package/lib/commonjs/extensions/sb-ncbr/tunnels/props.d.ts +19 -0
- package/lib/commonjs/extensions/sb-ncbr/tunnels/props.js +26 -0
- package/lib/commonjs/extensions/sb-ncbr/tunnels/representation.d.ts +29 -0
- package/lib/commonjs/extensions/sb-ncbr/tunnels/representation.js +99 -0
- package/lib/commonjs/mol-canvas3d/canvas3d.d.ts +17 -0
- package/lib/commonjs/mol-canvas3d/canvas3d.js +4 -0
- package/lib/commonjs/mol-canvas3d/passes/dof.d.ts +34 -0
- package/lib/commonjs/mol-canvas3d/passes/dof.js +167 -0
- package/lib/commonjs/mol-canvas3d/passes/draw.d.ts +2 -0
- package/lib/commonjs/mol-canvas3d/passes/draw.js +31 -8
- package/lib/commonjs/mol-canvas3d/passes/image.d.ts +8 -0
- package/lib/commonjs/mol-canvas3d/passes/postprocessing.d.ts +8 -0
- package/lib/commonjs/mol-canvas3d/passes/postprocessing.js +5 -0
- package/lib/commonjs/mol-geo/geometry/lines/lines.d.ts +0 -1
- package/lib/commonjs/mol-gl/shader/background.frag.js +95 -95
- package/lib/commonjs/mol-gl/shader/background.vert.js +11 -11
- package/lib/commonjs/mol-gl/shader/blend-back-dpoit.frag.js +13 -13
- package/lib/commonjs/mol-gl/shader/bloom/blur.frag.js +28 -28
- package/lib/commonjs/mol-gl/shader/bloom/composite.frag.js +33 -33
- package/lib/commonjs/mol-gl/shader/bloom/luminosity.frag.js +52 -52
- package/lib/commonjs/mol-gl/shader/cas.frag.js +144 -144
- package/lib/commonjs/mol-gl/shader/chunks/apply-fog.glsl.js +31 -31
- package/lib/commonjs/mol-gl/shader/chunks/apply-interior-color.glsl.js +12 -12
- package/lib/commonjs/mol-gl/shader/chunks/apply-light-color.glsl.js +77 -77
- package/lib/commonjs/mol-gl/shader/chunks/apply-marker-color.glsl.js +16 -16
- package/lib/commonjs/mol-gl/shader/chunks/assign-clipping-varying.glsl.js +8 -8
- package/lib/commonjs/mol-gl/shader/chunks/assign-color-varying.glsl.js +140 -140
- package/lib/commonjs/mol-gl/shader/chunks/assign-group.glsl.js +6 -6
- package/lib/commonjs/mol-gl/shader/chunks/assign-marker-varying.glsl.js +8 -8
- package/lib/commonjs/mol-gl/shader/chunks/assign-material-color.glsl.js +112 -112
- package/lib/commonjs/mol-gl/shader/chunks/assign-position.glsl.js +14 -14
- package/lib/commonjs/mol-gl/shader/chunks/assign-size.glsl.js +18 -18
- package/lib/commonjs/mol-gl/shader/chunks/check-picking-alpha.glsl.js +12 -12
- package/lib/commonjs/mol-gl/shader/chunks/check-transparency.glsl.js +16 -16
- package/lib/commonjs/mol-gl/shader/chunks/clip-instance.glsl.js +7 -7
- package/lib/commonjs/mol-gl/shader/chunks/clip-pixel.glsl.js +5 -5
- package/lib/commonjs/mol-gl/shader/chunks/color-frag-params.glsl.js +60 -60
- package/lib/commonjs/mol-gl/shader/chunks/color-vert-params.glsl.js +122 -122
- package/lib/commonjs/mol-gl/shader/chunks/common-clip.glsl.js +104 -104
- package/lib/commonjs/mol-gl/shader/chunks/common-frag-params.glsl.js +150 -150
- package/lib/commonjs/mol-gl/shader/chunks/common-vert-params.glsl.js +61 -61
- package/lib/commonjs/mol-gl/shader/chunks/common.glsl.js +234 -234
- package/lib/commonjs/mol-gl/shader/chunks/dpoit-write.glsl.js +62 -62
- package/lib/commonjs/mol-gl/shader/chunks/fade-lod.glsl.js +42 -42
- package/lib/commonjs/mol-gl/shader/chunks/float-to-rgba.glsl.js +39 -39
- package/lib/commonjs/mol-gl/shader/chunks/light-frag-params.glsl.js +127 -127
- package/lib/commonjs/mol-gl/shader/chunks/matrix-scale.glsl.js +5 -5
- package/lib/commonjs/mol-gl/shader/chunks/normal-frag-params.glsl.js +2 -2
- package/lib/commonjs/mol-gl/shader/chunks/read-from-texture.glsl.js +14 -14
- package/lib/commonjs/mol-gl/shader/chunks/rgba-to-float.glsl.js +84 -84
- package/lib/commonjs/mol-gl/shader/chunks/size-vert-params.glsl.js +11 -11
- package/lib/commonjs/mol-gl/shader/chunks/texture3d-from-1d-trilinear.glsl.js +23 -23
- package/lib/commonjs/mol-gl/shader/chunks/texture3d-from-2d-linear.glsl.js +17 -17
- package/lib/commonjs/mol-gl/shader/chunks/texture3d-from-2d-nearest.glsl.js +8 -8
- package/lib/commonjs/mol-gl/shader/chunks/wboit-write.glsl.js +25 -25
- package/lib/commonjs/mol-gl/shader/compose.frag.js +12 -12
- package/lib/commonjs/mol-gl/shader/compute/color-smoothing/accumulate.frag.js +23 -23
- package/lib/commonjs/mol-gl/shader/compute/color-smoothing/accumulate.vert.js +43 -43
- package/lib/commonjs/mol-gl/shader/compute/color-smoothing/normalize.frag.js +15 -15
- package/lib/commonjs/mol-gl/shader/copy.frag.js +11 -11
- package/lib/commonjs/mol-gl/shader/cylinders.frag.js +266 -266
- package/lib/commonjs/mol-gl/shader/cylinders.vert.js +89 -89
- package/lib/commonjs/mol-gl/shader/depth-merge.frag.js +23 -23
- package/lib/commonjs/mol-gl/shader/direct-volume.frag.js +362 -362
- package/lib/commonjs/mol-gl/shader/direct-volume.vert.js +41 -41
- package/lib/commonjs/mol-gl/shader/dof.frag.d.ts +7 -0
- package/lib/commonjs/mol-gl/shader/dof.frag.js +122 -0
- package/lib/commonjs/mol-gl/shader/evaluate-dpoit.frag.js +10 -10
- package/lib/commonjs/mol-gl/shader/evaluate-wboit.frag.js +17 -17
- package/lib/commonjs/mol-gl/shader/fxaa.frag.js +228 -228
- package/lib/commonjs/mol-gl/shader/gaussian-density.frag.js +49 -49
- package/lib/commonjs/mol-gl/shader/gaussian-density.vert.js +27 -27
- package/lib/commonjs/mol-gl/shader/hi-z.frag.js +18 -18
- package/lib/commonjs/mol-gl/shader/histogram-pyramid/reduction.frag.js +58 -58
- package/lib/commonjs/mol-gl/shader/histogram-pyramid/sum.frag.js +19 -19
- package/lib/commonjs/mol-gl/shader/image.frag.js +169 -169
- package/lib/commonjs/mol-gl/shader/image.vert.js +21 -21
- package/lib/commonjs/mol-gl/shader/lines.frag.js +42 -42
- package/lib/commonjs/mol-gl/shader/lines.vert.js +117 -117
- package/lib/commonjs/mol-gl/shader/marching-cubes/active-voxels.frag.js +70 -70
- package/lib/commonjs/mol-gl/shader/marching-cubes/isosurface.frag.js +311 -311
- package/lib/commonjs/mol-gl/shader/marking/edge.frag.js +28 -28
- package/lib/commonjs/mol-gl/shader/marking/overlay.frag.js +26 -26
- package/lib/commonjs/mol-gl/shader/mesh.frag.js +65 -65
- package/lib/commonjs/mol-gl/shader/mesh.vert.js +49 -49
- package/lib/commonjs/mol-gl/shader/outlines.frag.js +95 -95
- package/lib/commonjs/mol-gl/shader/points.frag.js +59 -59
- package/lib/commonjs/mol-gl/shader/points.vert.js +38 -38
- package/lib/commonjs/mol-gl/shader/postprocessing.frag.js +150 -150
- package/lib/commonjs/mol-gl/shader/quad.vert.js +10 -10
- package/lib/commonjs/mol-gl/shader/shadows.frag.js +123 -123
- package/lib/commonjs/mol-gl/shader/smaa/blend.frag.js +56 -56
- package/lib/commonjs/mol-gl/shader/smaa/blend.vert.js +25 -25
- package/lib/commonjs/mol-gl/shader/smaa/edges.frag.js +66 -66
- package/lib/commonjs/mol-gl/shader/smaa/edges.vert.js +26 -26
- package/lib/commonjs/mol-gl/shader/smaa/weights.frag.js +206 -206
- package/lib/commonjs/mol-gl/shader/smaa/weights.vert.js +32 -32
- package/lib/commonjs/mol-gl/shader/spheres.frag.js +148 -148
- package/lib/commonjs/mol-gl/shader/spheres.vert.js +132 -132
- package/lib/commonjs/mol-gl/shader/ssao-blur.frag.js +97 -97
- package/lib/commonjs/mol-gl/shader/ssao.frag.js +211 -211
- package/lib/commonjs/mol-gl/shader/text.frag.js +85 -85
- package/lib/commonjs/mol-gl/shader/text.vert.js +85 -85
- package/lib/commonjs/mol-gl/shader/util/grid3d-template.frag.js +46 -46
- package/lib/commonjs/mol-gl/shader-code.js +15 -15
- package/lib/commonjs/mol-gl/webgl/compat.js +12 -12
- package/lib/commonjs/mol-gl/webgl/context.js +1 -0
- package/lib/commonjs/mol-gl/webgl/timer.d.ts +1 -1
- package/lib/commonjs/mol-gl/webgl/timer.js +8 -1
- package/lib/commonjs/mol-math/linear-algebra/3d/minimize-rmsd.js +2 -1
- package/lib/commonjs/mol-plugin/animation-loop.d.ts +1 -0
- package/lib/commonjs/mol-plugin/behavior/dynamic/volume-streaming/behavior.d.ts +6 -6
- package/lib/commonjs/mol-plugin/behavior/dynamic/volume-streaming/model.d.ts +1 -1
- package/lib/commonjs/mol-plugin/behavior/dynamic/volume-streaming/transformers.d.ts +3 -3
- package/lib/commonjs/mol-plugin-state/animation/built-in/state-snapshots.js +7 -3
- package/lib/commonjs/mol-plugin-ui/viewport/simple-settings.js +3 -0
- package/lib/commonjs/servers/common/swagger-ui/indexTemplate.js +66 -66
- package/lib/commonjs/servers/volume/config.js +5 -5
- package/lib/examples/alpha-orbitals/example-data.js +160 -160
- package/lib/examples/alpha-orbitals/index.html +72 -72
- package/lib/examples/basic-wrapper/index.html +137 -137
- package/lib/examples/lighting/index.html +88 -88
- package/lib/examples/proteopedia-wrapper/index.html +236 -236
- package/lib/extensions/alpha-orbitals/gpu/shader.frag.js +136 -136
- package/lib/extensions/assembly-symmetry/prop.js +24 -24
- package/lib/extensions/dnatco/confal-pyramids/behavior.js +5 -5
- package/lib/extensions/dnatco/ntc-tube/behavior.js +5 -5
- package/lib/extensions/geo-export/usdz-exporter.js +41 -41
- package/lib/extensions/meshes/mesh-extension.d.ts +1 -0
- package/lib/extensions/mp4-export/encoder.js +1 -1
- package/lib/extensions/mvs/components/annotation-label/representation.d.ts +0 -2
- package/lib/extensions/mvs/components/custom-label/representation.d.ts +2 -2
- package/lib/extensions/mvs/tree/mvs/mvs-builder.d.ts +8 -2
- package/lib/extensions/sb-ncbr/index.d.ts +8 -0
- package/lib/extensions/sb-ncbr/index.js +8 -0
- package/lib/extensions/sb-ncbr/tunnels/actions.d.ts +20 -0
- package/lib/extensions/sb-ncbr/tunnels/actions.js +86 -0
- package/lib/extensions/sb-ncbr/tunnels/algorithm.d.ts +26 -0
- package/lib/extensions/sb-ncbr/tunnels/algorithm.js +469 -0
- package/lib/extensions/sb-ncbr/tunnels/behavior.d.ts +40 -0
- package/lib/extensions/sb-ncbr/tunnels/behavior.js +92 -0
- package/lib/extensions/sb-ncbr/tunnels/data-model.d.ts +146 -0
- package/lib/extensions/sb-ncbr/tunnels/data-model.js +23 -0
- package/lib/extensions/sb-ncbr/tunnels/examples.d.ts +12 -0
- package/lib/extensions/sb-ncbr/tunnels/examples.js +49 -0
- package/lib/extensions/sb-ncbr/tunnels/props.d.ts +19 -0
- package/lib/extensions/sb-ncbr/tunnels/props.js +22 -0
- package/lib/extensions/sb-ncbr/tunnels/representation.d.ts +29 -0
- package/lib/extensions/sb-ncbr/tunnels/representation.js +96 -0
- package/lib/mol-canvas3d/canvas3d.d.ts +17 -0
- package/lib/mol-canvas3d/canvas3d.js +4 -0
- package/lib/mol-canvas3d/passes/dof.d.ts +34 -0
- package/lib/mol-canvas3d/passes/dof.js +163 -0
- package/lib/mol-canvas3d/passes/draw.d.ts +2 -0
- package/lib/mol-canvas3d/passes/draw.js +31 -8
- package/lib/mol-canvas3d/passes/image.d.ts +8 -0
- package/lib/mol-canvas3d/passes/postprocessing.d.ts +8 -0
- package/lib/mol-canvas3d/passes/postprocessing.js +5 -0
- package/lib/mol-geo/geometry/lines/lines.d.ts +0 -1
- package/lib/mol-gl/shader/background.frag.js +95 -95
- package/lib/mol-gl/shader/background.vert.js +11 -11
- package/lib/mol-gl/shader/blend-back-dpoit.frag.js +13 -13
- package/lib/mol-gl/shader/bloom/blur.frag.js +28 -28
- package/lib/mol-gl/shader/bloom/composite.frag.js +33 -33
- package/lib/mol-gl/shader/bloom/luminosity.frag.js +52 -52
- package/lib/mol-gl/shader/cas.frag.js +144 -144
- package/lib/mol-gl/shader/chunks/apply-fog.glsl.js +31 -31
- package/lib/mol-gl/shader/chunks/apply-interior-color.glsl.js +12 -12
- package/lib/mol-gl/shader/chunks/apply-light-color.glsl.js +77 -77
- package/lib/mol-gl/shader/chunks/apply-marker-color.glsl.js +16 -16
- package/lib/mol-gl/shader/chunks/assign-clipping-varying.glsl.js +8 -8
- package/lib/mol-gl/shader/chunks/assign-color-varying.glsl.js +140 -140
- package/lib/mol-gl/shader/chunks/assign-group.glsl.js +6 -6
- package/lib/mol-gl/shader/chunks/assign-marker-varying.glsl.js +8 -8
- package/lib/mol-gl/shader/chunks/assign-material-color.glsl.js +112 -112
- package/lib/mol-gl/shader/chunks/assign-position.glsl.js +14 -14
- package/lib/mol-gl/shader/chunks/assign-size.glsl.js +18 -18
- package/lib/mol-gl/shader/chunks/check-picking-alpha.glsl.js +12 -12
- package/lib/mol-gl/shader/chunks/check-transparency.glsl.js +16 -16
- package/lib/mol-gl/shader/chunks/clip-instance.glsl.js +7 -7
- package/lib/mol-gl/shader/chunks/clip-pixel.glsl.js +5 -5
- package/lib/mol-gl/shader/chunks/color-frag-params.glsl.js +60 -60
- package/lib/mol-gl/shader/chunks/color-vert-params.glsl.js +122 -122
- package/lib/mol-gl/shader/chunks/common-clip.glsl.js +104 -104
- package/lib/mol-gl/shader/chunks/common-frag-params.glsl.js +150 -150
- package/lib/mol-gl/shader/chunks/common-vert-params.glsl.js +61 -61
- package/lib/mol-gl/shader/chunks/common.glsl.js +234 -234
- package/lib/mol-gl/shader/chunks/dpoit-write.glsl.js +62 -62
- package/lib/mol-gl/shader/chunks/fade-lod.glsl.js +42 -42
- package/lib/mol-gl/shader/chunks/float-to-rgba.glsl.js +39 -39
- package/lib/mol-gl/shader/chunks/light-frag-params.glsl.js +127 -127
- package/lib/mol-gl/shader/chunks/matrix-scale.glsl.js +5 -5
- package/lib/mol-gl/shader/chunks/normal-frag-params.glsl.js +2 -2
- package/lib/mol-gl/shader/chunks/read-from-texture.glsl.js +14 -14
- package/lib/mol-gl/shader/chunks/rgba-to-float.glsl.js +84 -84
- package/lib/mol-gl/shader/chunks/size-vert-params.glsl.js +11 -11
- package/lib/mol-gl/shader/chunks/texture3d-from-1d-trilinear.glsl.js +23 -23
- package/lib/mol-gl/shader/chunks/texture3d-from-2d-linear.glsl.js +17 -17
- package/lib/mol-gl/shader/chunks/texture3d-from-2d-nearest.glsl.js +8 -8
- package/lib/mol-gl/shader/chunks/wboit-write.glsl.js +25 -25
- package/lib/mol-gl/shader/compose.frag.js +12 -12
- package/lib/mol-gl/shader/compute/color-smoothing/accumulate.frag.js +23 -23
- package/lib/mol-gl/shader/compute/color-smoothing/accumulate.vert.js +43 -43
- package/lib/mol-gl/shader/compute/color-smoothing/normalize.frag.js +15 -15
- package/lib/mol-gl/shader/copy.frag.js +11 -11
- package/lib/mol-gl/shader/cylinders.frag.js +266 -266
- package/lib/mol-gl/shader/cylinders.vert.js +89 -89
- package/lib/mol-gl/shader/depth-merge.frag.js +23 -23
- package/lib/mol-gl/shader/direct-volume.frag.js +362 -362
- package/lib/mol-gl/shader/direct-volume.vert.js +41 -41
- package/lib/mol-gl/shader/dof.frag.d.ts +7 -0
- package/lib/mol-gl/shader/dof.frag.js +119 -0
- package/lib/mol-gl/shader/evaluate-dpoit.frag.js +10 -10
- package/lib/mol-gl/shader/evaluate-wboit.frag.js +17 -17
- package/lib/mol-gl/shader/fxaa.frag.js +228 -228
- package/lib/mol-gl/shader/gaussian-density.frag.js +49 -49
- package/lib/mol-gl/shader/gaussian-density.vert.js +27 -27
- package/lib/mol-gl/shader/hi-z.frag.js +18 -18
- package/lib/mol-gl/shader/histogram-pyramid/reduction.frag.js +58 -58
- package/lib/mol-gl/shader/histogram-pyramid/sum.frag.js +19 -19
- package/lib/mol-gl/shader/image.frag.js +169 -169
- package/lib/mol-gl/shader/image.vert.js +21 -21
- package/lib/mol-gl/shader/lines.frag.js +42 -42
- package/lib/mol-gl/shader/lines.vert.js +117 -117
- package/lib/mol-gl/shader/marching-cubes/active-voxels.frag.js +70 -70
- package/lib/mol-gl/shader/marching-cubes/isosurface.frag.js +311 -311
- package/lib/mol-gl/shader/marking/edge.frag.js +28 -28
- package/lib/mol-gl/shader/marking/overlay.frag.js +26 -26
- package/lib/mol-gl/shader/mesh.frag.js +65 -65
- package/lib/mol-gl/shader/mesh.vert.js +49 -49
- package/lib/mol-gl/shader/outlines.frag.js +95 -95
- package/lib/mol-gl/shader/points.frag.js +59 -59
- package/lib/mol-gl/shader/points.vert.js +38 -38
- package/lib/mol-gl/shader/postprocessing.frag.js +150 -150
- package/lib/mol-gl/shader/quad.vert.js +10 -10
- package/lib/mol-gl/shader/shadows.frag.js +123 -123
- package/lib/mol-gl/shader/smaa/blend.frag.js +56 -56
- package/lib/mol-gl/shader/smaa/blend.vert.js +25 -25
- package/lib/mol-gl/shader/smaa/edges.frag.js +66 -66
- package/lib/mol-gl/shader/smaa/edges.vert.js +26 -26
- package/lib/mol-gl/shader/smaa/weights.frag.js +206 -206
- package/lib/mol-gl/shader/smaa/weights.vert.js +32 -32
- package/lib/mol-gl/shader/spheres.frag.js +148 -148
- package/lib/mol-gl/shader/spheres.vert.js +132 -132
- package/lib/mol-gl/shader/ssao-blur.frag.js +97 -97
- package/lib/mol-gl/shader/ssao.frag.js +211 -211
- package/lib/mol-gl/shader/text.frag.js +85 -85
- package/lib/mol-gl/shader/text.vert.js +85 -85
- package/lib/mol-gl/shader/util/grid3d-template.frag.js +46 -46
- package/lib/mol-gl/shader-code.js +15 -15
- package/lib/mol-gl/webgl/compat.js +12 -12
- package/lib/mol-gl/webgl/context.js +1 -0
- package/lib/mol-gl/webgl/timer.d.ts +1 -1
- package/lib/mol-gl/webgl/timer.js +8 -1
- package/lib/mol-math/linear-algebra/3d/minimize-rmsd.js +2 -1
- package/lib/mol-plugin/animation-loop.d.ts +1 -0
- package/lib/mol-plugin/behavior/dynamic/volume-streaming/behavior.d.ts +6 -6
- package/lib/mol-plugin/behavior/dynamic/volume-streaming/model.d.ts +1 -1
- package/lib/mol-plugin/behavior/dynamic/volume-streaming/transformers.d.ts +3 -3
- package/lib/mol-plugin/version.js +2 -2
- package/lib/mol-plugin-state/animation/built-in/state-snapshots.js +7 -3
- package/lib/mol-plugin-ui/skin/base/base.scss +37 -37
- package/lib/mol-plugin-ui/skin/base/components/controls-base.scss +333 -333
- package/lib/mol-plugin-ui/skin/base/components/controls.scss +445 -445
- package/lib/mol-plugin-ui/skin/base/components/help.scss +27 -27
- package/lib/mol-plugin-ui/skin/base/components/line-graph.scss +67 -67
- package/lib/mol-plugin-ui/skin/base/components/log.scss +100 -100
- package/lib/mol-plugin-ui/skin/base/components/misc.scss +663 -663
- package/lib/mol-plugin-ui/skin/base/components/sequence.scss +125 -125
- package/lib/mol-plugin-ui/skin/base/components/slider.scss +165 -165
- package/lib/mol-plugin-ui/skin/base/components/tasks.scss +99 -99
- package/lib/mol-plugin-ui/skin/base/components/toast.scss +83 -83
- package/lib/mol-plugin-ui/skin/base/components/transformer.scss +163 -163
- package/lib/mol-plugin-ui/skin/base/components/viewport.scss +194 -194
- package/lib/mol-plugin-ui/skin/base/layout/common.scss +71 -71
- package/lib/mol-plugin-ui/skin/base/layout/controls-landscape.scss +89 -89
- package/lib/mol-plugin-ui/skin/base/layout/controls-outside.scss +98 -98
- package/lib/mol-plugin-ui/skin/base/layout/controls-portrait.scss +108 -108
- package/lib/mol-plugin-ui/skin/base/layout.scss +40 -40
- package/lib/mol-plugin-ui/skin/base/logo.scss +12 -12
- package/lib/mol-plugin-ui/skin/base/normalize.scss +209 -209
- package/lib/mol-plugin-ui/skin/base/ui.scss +40 -40
- package/lib/mol-plugin-ui/skin/base/variables.scss +88 -88
- package/lib/mol-plugin-ui/skin/blue.scss +1 -1
- package/lib/mol-plugin-ui/skin/colors/blue.scss +23 -23
- package/lib/mol-plugin-ui/skin/colors/dark.scss +23 -23
- package/lib/mol-plugin-ui/skin/colors/light.scss +29 -29
- package/lib/mol-plugin-ui/skin/dark.scss +1 -1
- package/lib/mol-plugin-ui/skin/light.scss +1 -1
- package/lib/mol-plugin-ui/viewport/simple-settings.js +3 -0
- package/lib/servers/common/swagger-ui/indexTemplate.js +66 -66
- package/lib/servers/volume/config.js +5 -5
- package/package.json +196 -195
|
@@ -3,89 +3,89 @@
|
|
|
3
3
|
*
|
|
4
4
|
* @author Alexander Rose <alexander.rose@weirdbyte.de>
|
|
5
5
|
*/
|
|
6
|
-
export const text_frag = `
|
|
7
|
-
precision highp float;
|
|
8
|
-
precision highp int;
|
|
9
|
-
|
|
10
|
-
#include common
|
|
11
|
-
#include common_frag_params
|
|
12
|
-
#include color_frag_params
|
|
13
|
-
#include common_clip
|
|
14
|
-
|
|
15
|
-
uniform sampler2D tFont;
|
|
16
|
-
|
|
17
|
-
uniform vec3 uBorderColor;
|
|
18
|
-
uniform float uBorderWidth;
|
|
19
|
-
uniform vec3 uBackgroundColor;
|
|
20
|
-
uniform float uBackgroundOpacity;
|
|
21
|
-
|
|
22
|
-
varying vec2 vTexCoord;
|
|
23
|
-
|
|
24
|
-
const float smoothness = 32.0;
|
|
25
|
-
const float gamma = 2.2;
|
|
26
|
-
|
|
27
|
-
void main2(){
|
|
28
|
-
gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
void main(){
|
|
32
|
-
#include fade_lod
|
|
33
|
-
#include clip_pixel
|
|
34
|
-
|
|
35
|
-
float fragmentDepth = gl_FragCoord.z;
|
|
36
|
-
#include assign_material_color
|
|
37
|
-
|
|
38
|
-
if (vTexCoord.x > 1.0) {
|
|
39
|
-
#if defined(dRenderVariant_color)
|
|
40
|
-
material = vec4(uBackgroundColor, uBackgroundOpacity * material.a);
|
|
41
|
-
#endif
|
|
42
|
-
} else {
|
|
43
|
-
// retrieve signed distance
|
|
44
|
-
float sdf = texture2D(tFont, vTexCoord).a + uBorderWidth;
|
|
45
|
-
|
|
46
|
-
// perform adaptive anti-aliasing of the edges
|
|
47
|
-
float w = clamp(smoothness * (abs(dFdx(vTexCoord.x)) + abs(dFdy(vTexCoord.y))), 0.0, 0.5);
|
|
48
|
-
float a = clamp(0.0, 1.0, smoothstep(0.5 - w, 0.5 + w, sdf));
|
|
49
|
-
|
|
50
|
-
// gamma correction for linear attenuation
|
|
51
|
-
a = pow(a, 1.0 / gamma);
|
|
52
|
-
|
|
53
|
-
if (a < 0.5) discard;
|
|
54
|
-
|
|
55
|
-
#if defined(dRenderVariant_color)
|
|
56
|
-
// add border
|
|
57
|
-
float t = 0.5 + uBorderWidth;
|
|
58
|
-
if (uBorderWidth > 0.0 && sdf < t) {
|
|
59
|
-
material.xyz = mix(uBorderColor, material.xyz, smoothstep(t - w, t, sdf));
|
|
60
|
-
}
|
|
61
|
-
#endif
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
#include check_transparency
|
|
65
|
-
|
|
66
|
-
#if defined(dRenderVariant_pick)
|
|
67
|
-
#include check_picking_alpha
|
|
68
|
-
#ifdef requiredDrawBuffers
|
|
69
|
-
gl_FragColor = vObject;
|
|
70
|
-
gl_FragData[1] = vInstance;
|
|
71
|
-
gl_FragData[2] = vGroup;
|
|
72
|
-
gl_FragData[3] = packDepthToRGBA(fragmentDepth);
|
|
73
|
-
#else
|
|
74
|
-
gl_FragColor = vColor;
|
|
75
|
-
#endif
|
|
76
|
-
#elif defined(dRenderVariant_depth)
|
|
77
|
-
gl_FragColor = material;
|
|
78
|
-
#elif defined(dRenderVariant_marking)
|
|
79
|
-
gl_FragColor = material;
|
|
80
|
-
#elif defined(dRenderVariant_emissive)
|
|
81
|
-
gl_FragColor = material;
|
|
82
|
-
#elif defined(dRenderVariant_color)
|
|
83
|
-
gl_FragColor = material;
|
|
84
|
-
|
|
85
|
-
#include apply_marker_color
|
|
86
|
-
#include apply_fog
|
|
87
|
-
#include wboit_write
|
|
88
|
-
#include dpoit_write
|
|
89
|
-
#endif
|
|
90
|
-
}
|
|
6
|
+
export const text_frag = `
|
|
7
|
+
precision highp float;
|
|
8
|
+
precision highp int;
|
|
9
|
+
|
|
10
|
+
#include common
|
|
11
|
+
#include common_frag_params
|
|
12
|
+
#include color_frag_params
|
|
13
|
+
#include common_clip
|
|
14
|
+
|
|
15
|
+
uniform sampler2D tFont;
|
|
16
|
+
|
|
17
|
+
uniform vec3 uBorderColor;
|
|
18
|
+
uniform float uBorderWidth;
|
|
19
|
+
uniform vec3 uBackgroundColor;
|
|
20
|
+
uniform float uBackgroundOpacity;
|
|
21
|
+
|
|
22
|
+
varying vec2 vTexCoord;
|
|
23
|
+
|
|
24
|
+
const float smoothness = 32.0;
|
|
25
|
+
const float gamma = 2.2;
|
|
26
|
+
|
|
27
|
+
void main2(){
|
|
28
|
+
gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
void main(){
|
|
32
|
+
#include fade_lod
|
|
33
|
+
#include clip_pixel
|
|
34
|
+
|
|
35
|
+
float fragmentDepth = gl_FragCoord.z;
|
|
36
|
+
#include assign_material_color
|
|
37
|
+
|
|
38
|
+
if (vTexCoord.x > 1.0) {
|
|
39
|
+
#if defined(dRenderVariant_color)
|
|
40
|
+
material = vec4(uBackgroundColor, uBackgroundOpacity * material.a);
|
|
41
|
+
#endif
|
|
42
|
+
} else {
|
|
43
|
+
// retrieve signed distance
|
|
44
|
+
float sdf = texture2D(tFont, vTexCoord).a + uBorderWidth;
|
|
45
|
+
|
|
46
|
+
// perform adaptive anti-aliasing of the edges
|
|
47
|
+
float w = clamp(smoothness * (abs(dFdx(vTexCoord.x)) + abs(dFdy(vTexCoord.y))), 0.0, 0.5);
|
|
48
|
+
float a = clamp(0.0, 1.0, smoothstep(0.5 - w, 0.5 + w, sdf));
|
|
49
|
+
|
|
50
|
+
// gamma correction for linear attenuation
|
|
51
|
+
a = pow(a, 1.0 / gamma);
|
|
52
|
+
|
|
53
|
+
if (a < 0.5) discard;
|
|
54
|
+
|
|
55
|
+
#if defined(dRenderVariant_color)
|
|
56
|
+
// add border
|
|
57
|
+
float t = 0.5 + uBorderWidth;
|
|
58
|
+
if (uBorderWidth > 0.0 && sdf < t) {
|
|
59
|
+
material.xyz = mix(uBorderColor, material.xyz, smoothstep(t - w, t, sdf));
|
|
60
|
+
}
|
|
61
|
+
#endif
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
#include check_transparency
|
|
65
|
+
|
|
66
|
+
#if defined(dRenderVariant_pick)
|
|
67
|
+
#include check_picking_alpha
|
|
68
|
+
#ifdef requiredDrawBuffers
|
|
69
|
+
gl_FragColor = vObject;
|
|
70
|
+
gl_FragData[1] = vInstance;
|
|
71
|
+
gl_FragData[2] = vGroup;
|
|
72
|
+
gl_FragData[3] = packDepthToRGBA(fragmentDepth);
|
|
73
|
+
#else
|
|
74
|
+
gl_FragColor = vColor;
|
|
75
|
+
#endif
|
|
76
|
+
#elif defined(dRenderVariant_depth)
|
|
77
|
+
gl_FragColor = material;
|
|
78
|
+
#elif defined(dRenderVariant_marking)
|
|
79
|
+
gl_FragColor = material;
|
|
80
|
+
#elif defined(dRenderVariant_emissive)
|
|
81
|
+
gl_FragColor = material;
|
|
82
|
+
#elif defined(dRenderVariant_color)
|
|
83
|
+
gl_FragColor = material;
|
|
84
|
+
|
|
85
|
+
#include apply_marker_color
|
|
86
|
+
#include apply_fog
|
|
87
|
+
#include wboit_write
|
|
88
|
+
#include dpoit_write
|
|
89
|
+
#endif
|
|
90
|
+
}
|
|
91
91
|
`;
|
|
@@ -3,89 +3,89 @@
|
|
|
3
3
|
*
|
|
4
4
|
* @author Alexander Rose <alexander.rose@weirdbyte.de>
|
|
5
5
|
*/
|
|
6
|
-
export const text_vert = `
|
|
7
|
-
precision highp float;
|
|
8
|
-
precision highp int;
|
|
9
|
-
|
|
10
|
-
#include common
|
|
11
|
-
#include read_from_texture
|
|
12
|
-
#include common_vert_params
|
|
13
|
-
#include color_vert_params
|
|
14
|
-
#include size_vert_params
|
|
15
|
-
#include common_clip
|
|
16
|
-
|
|
17
|
-
uniform mat4 uModelView;
|
|
18
|
-
|
|
19
|
-
attribute vec3 aPosition;
|
|
20
|
-
attribute vec2 aMapping;
|
|
21
|
-
attribute float aDepth;
|
|
22
|
-
attribute vec2 aTexCoord;
|
|
23
|
-
attribute mat4 aTransform;
|
|
24
|
-
attribute float aInstance;
|
|
25
|
-
attribute float aGroup;
|
|
26
|
-
|
|
27
|
-
uniform float uOffsetX;
|
|
28
|
-
uniform float uOffsetY;
|
|
29
|
-
uniform float uOffsetZ;
|
|
30
|
-
|
|
31
|
-
uniform float uIsOrtho;
|
|
32
|
-
uniform float uPixelRatio;
|
|
33
|
-
uniform vec4 uViewport;
|
|
34
|
-
|
|
35
|
-
varying vec2 vTexCoord;
|
|
36
|
-
|
|
37
|
-
#include matrix_scale
|
|
38
|
-
|
|
39
|
-
void main(void){
|
|
40
|
-
#include assign_group
|
|
41
|
-
#include assign_color_varying
|
|
42
|
-
#include assign_marker_varying
|
|
43
|
-
#include assign_clipping_varying
|
|
44
|
-
#include assign_size
|
|
45
|
-
|
|
46
|
-
vTexCoord = aTexCoord;
|
|
47
|
-
|
|
48
|
-
float scale = matrixScale(uModelView);
|
|
49
|
-
|
|
50
|
-
float offsetX = uOffsetX * scale;
|
|
51
|
-
float offsetY = uOffsetY * scale;
|
|
52
|
-
float offsetZ = (uOffsetZ + aDepth * 0.95) * scale;
|
|
53
|
-
|
|
54
|
-
vec4 position4 = vec4(aPosition, 1.0);
|
|
55
|
-
vec4 mvPosition = uModelView * aTransform * position4;
|
|
56
|
-
|
|
57
|
-
vModelPosition = (uModel * aTransform * position4).xyz; // for clipping in frag shader
|
|
58
|
-
|
|
59
|
-
// TODO
|
|
60
|
-
// #ifdef FIXED_SIZE
|
|
61
|
-
// if (ortho) {
|
|
62
|
-
// scale /= pixelRatio * ((uViewport.w / 2.0) / -uCameraPosition.z) * 0.1;
|
|
63
|
-
// } else {
|
|
64
|
-
// scale /= pixelRatio * ((uViewport.w / 2.0) / -mvPosition.z) * 0.1;
|
|
65
|
-
// }
|
|
66
|
-
// #endif
|
|
67
|
-
|
|
68
|
-
vec4 mvCorner = vec4(mvPosition.xyz, 1.0);
|
|
69
|
-
|
|
70
|
-
if (vTexCoord.x == 10.0) { // indicates background plane
|
|
71
|
-
// move a bit to the back, taking distance to camera into account to avoid z-fighting
|
|
72
|
-
offsetZ -= 0.001 * distance(uCameraPosition, (uProjection * mvCorner).xyz);
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
mvCorner.xy += aMapping * size * scale;
|
|
76
|
-
mvCorner.x += offsetX;
|
|
77
|
-
mvCorner.y += offsetY;
|
|
78
|
-
|
|
79
|
-
if (uIsOrtho == 1.0) {
|
|
80
|
-
mvCorner.z += offsetZ;
|
|
81
|
-
} else {
|
|
82
|
-
mvCorner.xyz += normalize(-mvCorner.xyz) * offsetZ;
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
gl_Position = uProjection * mvCorner;
|
|
86
|
-
|
|
87
|
-
vViewPosition = -mvCorner.xyz;
|
|
88
|
-
|
|
89
|
-
#include clip_instance
|
|
90
|
-
}
|
|
6
|
+
export const text_vert = `
|
|
7
|
+
precision highp float;
|
|
8
|
+
precision highp int;
|
|
9
|
+
|
|
10
|
+
#include common
|
|
11
|
+
#include read_from_texture
|
|
12
|
+
#include common_vert_params
|
|
13
|
+
#include color_vert_params
|
|
14
|
+
#include size_vert_params
|
|
15
|
+
#include common_clip
|
|
16
|
+
|
|
17
|
+
uniform mat4 uModelView;
|
|
18
|
+
|
|
19
|
+
attribute vec3 aPosition;
|
|
20
|
+
attribute vec2 aMapping;
|
|
21
|
+
attribute float aDepth;
|
|
22
|
+
attribute vec2 aTexCoord;
|
|
23
|
+
attribute mat4 aTransform;
|
|
24
|
+
attribute float aInstance;
|
|
25
|
+
attribute float aGroup;
|
|
26
|
+
|
|
27
|
+
uniform float uOffsetX;
|
|
28
|
+
uniform float uOffsetY;
|
|
29
|
+
uniform float uOffsetZ;
|
|
30
|
+
|
|
31
|
+
uniform float uIsOrtho;
|
|
32
|
+
uniform float uPixelRatio;
|
|
33
|
+
uniform vec4 uViewport;
|
|
34
|
+
|
|
35
|
+
varying vec2 vTexCoord;
|
|
36
|
+
|
|
37
|
+
#include matrix_scale
|
|
38
|
+
|
|
39
|
+
void main(void){
|
|
40
|
+
#include assign_group
|
|
41
|
+
#include assign_color_varying
|
|
42
|
+
#include assign_marker_varying
|
|
43
|
+
#include assign_clipping_varying
|
|
44
|
+
#include assign_size
|
|
45
|
+
|
|
46
|
+
vTexCoord = aTexCoord;
|
|
47
|
+
|
|
48
|
+
float scale = matrixScale(uModelView);
|
|
49
|
+
|
|
50
|
+
float offsetX = uOffsetX * scale;
|
|
51
|
+
float offsetY = uOffsetY * scale;
|
|
52
|
+
float offsetZ = (uOffsetZ + aDepth * 0.95) * scale;
|
|
53
|
+
|
|
54
|
+
vec4 position4 = vec4(aPosition, 1.0);
|
|
55
|
+
vec4 mvPosition = uModelView * aTransform * position4;
|
|
56
|
+
|
|
57
|
+
vModelPosition = (uModel * aTransform * position4).xyz; // for clipping in frag shader
|
|
58
|
+
|
|
59
|
+
// TODO
|
|
60
|
+
// #ifdef FIXED_SIZE
|
|
61
|
+
// if (ortho) {
|
|
62
|
+
// scale /= pixelRatio * ((uViewport.w / 2.0) / -uCameraPosition.z) * 0.1;
|
|
63
|
+
// } else {
|
|
64
|
+
// scale /= pixelRatio * ((uViewport.w / 2.0) / -mvPosition.z) * 0.1;
|
|
65
|
+
// }
|
|
66
|
+
// #endif
|
|
67
|
+
|
|
68
|
+
vec4 mvCorner = vec4(mvPosition.xyz, 1.0);
|
|
69
|
+
|
|
70
|
+
if (vTexCoord.x == 10.0) { // indicates background plane
|
|
71
|
+
// move a bit to the back, taking distance to camera into account to avoid z-fighting
|
|
72
|
+
offsetZ -= 0.001 * distance(uCameraPosition, (uProjection * mvCorner).xyz);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
mvCorner.xy += aMapping * size * scale;
|
|
76
|
+
mvCorner.x += offsetX;
|
|
77
|
+
mvCorner.y += offsetY;
|
|
78
|
+
|
|
79
|
+
if (uIsOrtho == 1.0) {
|
|
80
|
+
mvCorner.z += offsetZ;
|
|
81
|
+
} else {
|
|
82
|
+
mvCorner.xyz += normalize(-mvCorner.xyz) * offsetZ;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
gl_Position = uProjection * mvCorner;
|
|
86
|
+
|
|
87
|
+
vViewPosition = -mvCorner.xyz;
|
|
88
|
+
|
|
89
|
+
#include clip_instance
|
|
90
|
+
}
|
|
91
91
|
`;
|
|
@@ -3,50 +3,50 @@
|
|
|
3
3
|
*
|
|
4
4
|
* @author David Sehnal <david.sehnal@gmail.com>
|
|
5
5
|
*/
|
|
6
|
-
export const grid3dTemplate_frag = `
|
|
7
|
-
precision highp float;
|
|
8
|
-
precision highp int;
|
|
9
|
-
precision highp sampler2D;
|
|
10
|
-
|
|
11
|
-
uniform vec2 uQuadShift;
|
|
12
|
-
uniform vec3 uDimensions;
|
|
13
|
-
uniform vec3 uMin;
|
|
14
|
-
uniform vec3 uDelta;
|
|
15
|
-
uniform bool uLittleEndian;
|
|
16
|
-
uniform float uWidth;
|
|
17
|
-
|
|
18
|
-
#ifdef CUMULATIVE
|
|
19
|
-
uniform sampler2D tCumulativeSum;
|
|
20
|
-
#endif
|
|
21
|
-
|
|
22
|
-
{UNIFORMS}
|
|
23
|
-
|
|
24
|
-
{UTILS}
|
|
25
|
-
|
|
26
|
-
#include float_to_rgba
|
|
27
|
-
#ifdef CUMULATIVE
|
|
28
|
-
#include rgba_to_float
|
|
29
|
-
#endif
|
|
30
|
-
|
|
31
|
-
float intDiv(float a, float b) { return float(int(a) / int(b)); }
|
|
32
|
-
float intMod(float a, float b) { return a - b * float(int(a) / int(b)); }
|
|
33
|
-
|
|
34
|
-
void main(void) {
|
|
35
|
-
float offset = floor(gl_FragCoord.x) + floor(gl_FragCoord.y) * uWidth;
|
|
36
|
-
|
|
37
|
-
// axis order fast to slow Z, Y, X
|
|
38
|
-
// TODO: support arbitrary axis orders?
|
|
39
|
-
float k = intMod(offset, uDimensions.z), kk = intDiv(offset, uDimensions.z);
|
|
40
|
-
float j = intMod(kk, uDimensions.y);
|
|
41
|
-
float i = intDiv(kk, uDimensions.y);
|
|
42
|
-
|
|
43
|
-
vec3 xyz = uMin + uDelta * vec3(i, j, k);
|
|
44
|
-
|
|
45
|
-
{MAIN}
|
|
46
|
-
|
|
47
|
-
#ifdef CUMULATIVE
|
|
48
|
-
float current = rgbaToFloat(texture2D(tCumulativeSum, gl_FragCoord.xy / vec2(uWidth, uWidth)), uLittleEndian);
|
|
49
|
-
#endif
|
|
50
|
-
gl_FragColor = floatToRgba({RETURN}, uLittleEndian);
|
|
51
|
-
}
|
|
6
|
+
export const grid3dTemplate_frag = `
|
|
7
|
+
precision highp float;
|
|
8
|
+
precision highp int;
|
|
9
|
+
precision highp sampler2D;
|
|
10
|
+
|
|
11
|
+
uniform vec2 uQuadShift;
|
|
12
|
+
uniform vec3 uDimensions;
|
|
13
|
+
uniform vec3 uMin;
|
|
14
|
+
uniform vec3 uDelta;
|
|
15
|
+
uniform bool uLittleEndian;
|
|
16
|
+
uniform float uWidth;
|
|
17
|
+
|
|
18
|
+
#ifdef CUMULATIVE
|
|
19
|
+
uniform sampler2D tCumulativeSum;
|
|
20
|
+
#endif
|
|
21
|
+
|
|
22
|
+
{UNIFORMS}
|
|
23
|
+
|
|
24
|
+
{UTILS}
|
|
25
|
+
|
|
26
|
+
#include float_to_rgba
|
|
27
|
+
#ifdef CUMULATIVE
|
|
28
|
+
#include rgba_to_float
|
|
29
|
+
#endif
|
|
30
|
+
|
|
31
|
+
float intDiv(float a, float b) { return float(int(a) / int(b)); }
|
|
32
|
+
float intMod(float a, float b) { return a - b * float(int(a) / int(b)); }
|
|
33
|
+
|
|
34
|
+
void main(void) {
|
|
35
|
+
float offset = floor(gl_FragCoord.x) + floor(gl_FragCoord.y) * uWidth;
|
|
36
|
+
|
|
37
|
+
// axis order fast to slow Z, Y, X
|
|
38
|
+
// TODO: support arbitrary axis orders?
|
|
39
|
+
float k = intMod(offset, uDimensions.z), kk = intDiv(offset, uDimensions.z);
|
|
40
|
+
float j = intMod(kk, uDimensions.y);
|
|
41
|
+
float i = intDiv(kk, uDimensions.y);
|
|
42
|
+
|
|
43
|
+
vec3 xyz = uMin + uDelta * vec3(i, j, k);
|
|
44
|
+
|
|
45
|
+
{MAIN}
|
|
46
|
+
|
|
47
|
+
#ifdef CUMULATIVE
|
|
48
|
+
float current = rgbaToFloat(texture2D(tCumulativeSum, gl_FragCoord.xy / vec2(uWidth, uWidth)), uLittleEndian);
|
|
49
|
+
#endif
|
|
50
|
+
gl_FragColor = floatToRgba({RETURN}, uLittleEndian);
|
|
51
|
+
}
|
|
52
52
|
`;
|
|
@@ -261,22 +261,22 @@ function getGlsl100FragPrefix(extensions, shaderExtensions) {
|
|
|
261
261
|
}
|
|
262
262
|
return prefix.join('\n') + '\n';
|
|
263
263
|
}
|
|
264
|
-
const glsl300VertPrefixCommon = `
|
|
265
|
-
#define attribute in
|
|
266
|
-
#define varying out
|
|
267
|
-
#define texture2D texture
|
|
264
|
+
const glsl300VertPrefixCommon = `
|
|
265
|
+
#define attribute in
|
|
266
|
+
#define varying out
|
|
267
|
+
#define texture2D texture
|
|
268
268
|
`;
|
|
269
|
-
const glsl300FragPrefixCommon = `
|
|
270
|
-
#define varying in
|
|
271
|
-
#define texture2D texture
|
|
272
|
-
#define textureCube texture
|
|
273
|
-
#define texture2DLodEXT textureLod
|
|
274
|
-
#define textureCubeLodEXT textureLod
|
|
275
|
-
|
|
276
|
-
#define gl_FragColor out_FragData0
|
|
277
|
-
#define gl_FragDepthEXT gl_FragDepth
|
|
278
|
-
|
|
279
|
-
#define depthTextureSupport
|
|
269
|
+
const glsl300FragPrefixCommon = `
|
|
270
|
+
#define varying in
|
|
271
|
+
#define texture2D texture
|
|
272
|
+
#define textureCube texture
|
|
273
|
+
#define texture2DLodEXT textureLod
|
|
274
|
+
#define textureCubeLodEXT textureLod
|
|
275
|
+
|
|
276
|
+
#define gl_FragColor out_FragData0
|
|
277
|
+
#define gl_FragDepthEXT gl_FragDepth
|
|
278
|
+
|
|
279
|
+
#define depthTextureSupport
|
|
280
280
|
`;
|
|
281
281
|
function getGlsl300VertPrefix(extensions, shaderExtensions) {
|
|
282
282
|
const prefix = [
|
|
@@ -426,19 +426,19 @@ export function getNoNonInstancedActiveAttribs(gl) {
|
|
|
426
426
|
return false;
|
|
427
427
|
}
|
|
428
428
|
//
|
|
429
|
-
const TextureTestVertShader = `
|
|
430
|
-
attribute vec4 aPosition;
|
|
431
|
-
|
|
432
|
-
void main() {
|
|
433
|
-
gl_Position = aPosition;
|
|
429
|
+
const TextureTestVertShader = `
|
|
430
|
+
attribute vec4 aPosition;
|
|
431
|
+
|
|
432
|
+
void main() {
|
|
433
|
+
gl_Position = aPosition;
|
|
434
434
|
}`;
|
|
435
|
-
const TextureTestFragShader = `
|
|
436
|
-
precision mediump float;
|
|
437
|
-
uniform vec4 uColor;
|
|
438
|
-
uniform sampler2D uTexture;
|
|
439
|
-
|
|
440
|
-
void main() {
|
|
441
|
-
gl_FragColor = texture2D(uTexture, vec2(0.5, 0.5)) * uColor;
|
|
435
|
+
const TextureTestFragShader = `
|
|
436
|
+
precision mediump float;
|
|
437
|
+
uniform vec4 uColor;
|
|
438
|
+
uniform sampler2D uTexture;
|
|
439
|
+
|
|
440
|
+
void main() {
|
|
441
|
+
gl_FragColor = texture2D(uTexture, vec2(0.5, 0.5)) * uColor;
|
|
442
442
|
}`;
|
|
443
443
|
const TextureTestTexCoords = new Float32Array([
|
|
444
444
|
-1.0, -1.0, 1.0, -1.0, -1.0, 1.0, -1.0, 1.0, 1.0, -1.0, 1.0, 1.0
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright (c) 2022-
|
|
2
|
+
* Copyright (c) 2022-2024 mol* contributors, licensed under MIT, See LICENSE file for more info.
|
|
3
3
|
*
|
|
4
4
|
* @author Alexander Rose <alexander.rose@weirdbyte.de>
|
|
5
5
|
*/
|
|
@@ -22,6 +22,9 @@ class MovingAverage {
|
|
|
22
22
|
stats() {
|
|
23
23
|
return Object.fromEntries(this.avgs.entries());
|
|
24
24
|
}
|
|
25
|
+
clear() {
|
|
26
|
+
this.avgs.clear();
|
|
27
|
+
}
|
|
25
28
|
constructor(count) {
|
|
26
29
|
this.count = count;
|
|
27
30
|
this.avgs = new Map();
|
|
@@ -58,8 +61,12 @@ export function createTimer(gl, extensions, stats, options) {
|
|
|
58
61
|
dtq.deleteQuery(query);
|
|
59
62
|
});
|
|
60
63
|
pending.clear();
|
|
64
|
+
stack.length = 0;
|
|
65
|
+
gpuAvgs.clear();
|
|
66
|
+
cpuAvgs.clear();
|
|
61
67
|
measures = [];
|
|
62
68
|
current = null;
|
|
69
|
+
capturingStats = false;
|
|
63
70
|
};
|
|
64
71
|
const add = () => {
|
|
65
72
|
if (!dtq)
|
|
@@ -53,7 +53,8 @@ function computeN(state) {
|
|
|
53
53
|
const cA = state.centerA;
|
|
54
54
|
const cB = state.centerB;
|
|
55
55
|
let sizeSq = 0.0;
|
|
56
|
-
|
|
56
|
+
const L = Math.min(state.a.x.length, state.b.x.length);
|
|
57
|
+
for (let i = 0; i < L; i++) {
|
|
57
58
|
const aX = xsA[i] - cA[0], aY = ysA[i] - cA[1], aZ = zsA[i] - cA[2];
|
|
58
59
|
const bX = xsB[i] - cB[0], bY = ysB[i] - cB[1], bZ = zsB[i] - cB[2];
|
|
59
60
|
sizeSq += aX * aX + aY * aY + aZ * aZ + bX * bX + bY * bY + bZ * bZ;
|
|
@@ -55,14 +55,14 @@ export declare namespace VolumeStreaming {
|
|
|
55
55
|
topRight: Vec3;
|
|
56
56
|
}>, "box"> | PD.NamedParams<PD.Normalize<{
|
|
57
57
|
radius: number;
|
|
58
|
+
dynamicDetailLevel: number;
|
|
58
59
|
bottomLeft: Vec3;
|
|
59
60
|
topRight: Vec3;
|
|
60
|
-
}>, "
|
|
61
|
+
}>, "camera-target"> | PD.NamedParams<PD.Normalize<{
|
|
61
62
|
radius: number;
|
|
62
|
-
dynamicDetailLevel: number;
|
|
63
63
|
bottomLeft: Vec3;
|
|
64
64
|
topRight: Vec3;
|
|
65
|
-
}>, "
|
|
65
|
+
}>, "selection-box">>;
|
|
66
66
|
detailLevel: PD.Select<number>;
|
|
67
67
|
channels: PD.Group<PD.Normalize<{
|
|
68
68
|
em: PD.Normalize<ChannelParams>;
|
|
@@ -92,14 +92,14 @@ export declare namespace VolumeStreaming {
|
|
|
92
92
|
topRight: Vec3;
|
|
93
93
|
}>, "box"> | PD.NamedParams<PD.Normalize<{
|
|
94
94
|
radius: number;
|
|
95
|
+
dynamicDetailLevel: number;
|
|
95
96
|
bottomLeft: Vec3;
|
|
96
97
|
topRight: Vec3;
|
|
97
|
-
}>, "
|
|
98
|
+
}>, "camera-target"> | PD.NamedParams<PD.Normalize<{
|
|
98
99
|
radius: number;
|
|
99
|
-
dynamicDetailLevel: number;
|
|
100
100
|
bottomLeft: Vec3;
|
|
101
101
|
topRight: Vec3;
|
|
102
|
-
}>, "
|
|
102
|
+
}>, "selection-box">>;
|
|
103
103
|
detailLevel: PD.Select<number>;
|
|
104
104
|
channels: PD.Group<PD.Normalize<{
|
|
105
105
|
em: PD.Normalize<ChannelParams>;
|
|
@@ -12,7 +12,7 @@ declare const VolumeServerInfo_base: {
|
|
|
12
12
|
label: string;
|
|
13
13
|
description?: string | undefined;
|
|
14
14
|
} | undefined): {
|
|
15
|
-
id: import("../../../../mol-util").UUID;
|
|
15
|
+
id: import("../../../../mol-util").UUID; /** The value are stored in blockSize^3 cubes */
|
|
16
16
|
type: PluginStateObject.TypeInfo;
|
|
17
17
|
label: string;
|
|
18
18
|
description?: string | undefined;
|
|
@@ -50,14 +50,14 @@ declare const CreateVolumeStreamingBehavior: StateTransformer<VolumeServerInfo,
|
|
|
50
50
|
topRight: any;
|
|
51
51
|
}>, "box"> | PD.NamedParams<PD.Normalize<{
|
|
52
52
|
radius: any;
|
|
53
|
+
dynamicDetailLevel: any;
|
|
53
54
|
bottomLeft: any;
|
|
54
55
|
topRight: any;
|
|
55
|
-
}>, "
|
|
56
|
+
}>, "camera-target"> | PD.NamedParams<PD.Normalize<{
|
|
56
57
|
radius: any;
|
|
57
|
-
dynamicDetailLevel: any;
|
|
58
58
|
bottomLeft: any;
|
|
59
59
|
topRight: any;
|
|
60
|
-
}>, "
|
|
60
|
+
}>, "selection-box">>;
|
|
61
61
|
detailLevel: PD.Select<number>;
|
|
62
62
|
channels: PD.Group<PD.Normalize<{
|
|
63
63
|
em: any;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export var PLUGIN_VERSION = '4.
|
|
2
|
-
export var PLUGIN_VERSION_DATE = new Date(typeof __MOLSTAR_DEBUG_TIMESTAMP__ !== 'undefined' ? __MOLSTAR_DEBUG_TIMESTAMP__ :
|
|
1
|
+
export var PLUGIN_VERSION = '4.3.0';
|
|
2
|
+
export var PLUGIN_VERSION_DATE = new Date(typeof __MOLSTAR_DEBUG_TIMESTAMP__ !== 'undefined' ? __MOLSTAR_DEBUG_TIMESTAMP__ : 1716707835175);
|