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
|
@@ -6,89 +6,89 @@
|
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
8
|
exports.text_frag = void 0;
|
|
9
|
-
exports.text_frag = `
|
|
10
|
-
precision highp float;
|
|
11
|
-
precision highp int;
|
|
12
|
-
|
|
13
|
-
#include common
|
|
14
|
-
#include common_frag_params
|
|
15
|
-
#include color_frag_params
|
|
16
|
-
#include common_clip
|
|
17
|
-
|
|
18
|
-
uniform sampler2D tFont;
|
|
19
|
-
|
|
20
|
-
uniform vec3 uBorderColor;
|
|
21
|
-
uniform float uBorderWidth;
|
|
22
|
-
uniform vec3 uBackgroundColor;
|
|
23
|
-
uniform float uBackgroundOpacity;
|
|
24
|
-
|
|
25
|
-
varying vec2 vTexCoord;
|
|
26
|
-
|
|
27
|
-
const float smoothness = 32.0;
|
|
28
|
-
const float gamma = 2.2;
|
|
29
|
-
|
|
30
|
-
void main2(){
|
|
31
|
-
gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
void main(){
|
|
35
|
-
#include fade_lod
|
|
36
|
-
#include clip_pixel
|
|
37
|
-
|
|
38
|
-
float fragmentDepth = gl_FragCoord.z;
|
|
39
|
-
#include assign_material_color
|
|
40
|
-
|
|
41
|
-
if (vTexCoord.x > 1.0) {
|
|
42
|
-
#if defined(dRenderVariant_color)
|
|
43
|
-
material = vec4(uBackgroundColor, uBackgroundOpacity * material.a);
|
|
44
|
-
#endif
|
|
45
|
-
} else {
|
|
46
|
-
// retrieve signed distance
|
|
47
|
-
float sdf = texture2D(tFont, vTexCoord).a + uBorderWidth;
|
|
48
|
-
|
|
49
|
-
// perform adaptive anti-aliasing of the edges
|
|
50
|
-
float w = clamp(smoothness * (abs(dFdx(vTexCoord.x)) + abs(dFdy(vTexCoord.y))), 0.0, 0.5);
|
|
51
|
-
float a = clamp(0.0, 1.0, smoothstep(0.5 - w, 0.5 + w, sdf));
|
|
52
|
-
|
|
53
|
-
// gamma correction for linear attenuation
|
|
54
|
-
a = pow(a, 1.0 / gamma);
|
|
55
|
-
|
|
56
|
-
if (a < 0.5) discard;
|
|
57
|
-
|
|
58
|
-
#if defined(dRenderVariant_color)
|
|
59
|
-
// add border
|
|
60
|
-
float t = 0.5 + uBorderWidth;
|
|
61
|
-
if (uBorderWidth > 0.0 && sdf < t) {
|
|
62
|
-
material.xyz = mix(uBorderColor, material.xyz, smoothstep(t - w, t, sdf));
|
|
63
|
-
}
|
|
64
|
-
#endif
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
#include check_transparency
|
|
68
|
-
|
|
69
|
-
#if defined(dRenderVariant_pick)
|
|
70
|
-
#include check_picking_alpha
|
|
71
|
-
#ifdef requiredDrawBuffers
|
|
72
|
-
gl_FragColor = vObject;
|
|
73
|
-
gl_FragData[1] = vInstance;
|
|
74
|
-
gl_FragData[2] = vGroup;
|
|
75
|
-
gl_FragData[3] = packDepthToRGBA(fragmentDepth);
|
|
76
|
-
#else
|
|
77
|
-
gl_FragColor = vColor;
|
|
78
|
-
#endif
|
|
79
|
-
#elif defined(dRenderVariant_depth)
|
|
80
|
-
gl_FragColor = material;
|
|
81
|
-
#elif defined(dRenderVariant_marking)
|
|
82
|
-
gl_FragColor = material;
|
|
83
|
-
#elif defined(dRenderVariant_emissive)
|
|
84
|
-
gl_FragColor = material;
|
|
85
|
-
#elif defined(dRenderVariant_color)
|
|
86
|
-
gl_FragColor = material;
|
|
87
|
-
|
|
88
|
-
#include apply_marker_color
|
|
89
|
-
#include apply_fog
|
|
90
|
-
#include wboit_write
|
|
91
|
-
#include dpoit_write
|
|
92
|
-
#endif
|
|
93
|
-
}
|
|
9
|
+
exports.text_frag = `
|
|
10
|
+
precision highp float;
|
|
11
|
+
precision highp int;
|
|
12
|
+
|
|
13
|
+
#include common
|
|
14
|
+
#include common_frag_params
|
|
15
|
+
#include color_frag_params
|
|
16
|
+
#include common_clip
|
|
17
|
+
|
|
18
|
+
uniform sampler2D tFont;
|
|
19
|
+
|
|
20
|
+
uniform vec3 uBorderColor;
|
|
21
|
+
uniform float uBorderWidth;
|
|
22
|
+
uniform vec3 uBackgroundColor;
|
|
23
|
+
uniform float uBackgroundOpacity;
|
|
24
|
+
|
|
25
|
+
varying vec2 vTexCoord;
|
|
26
|
+
|
|
27
|
+
const float smoothness = 32.0;
|
|
28
|
+
const float gamma = 2.2;
|
|
29
|
+
|
|
30
|
+
void main2(){
|
|
31
|
+
gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
void main(){
|
|
35
|
+
#include fade_lod
|
|
36
|
+
#include clip_pixel
|
|
37
|
+
|
|
38
|
+
float fragmentDepth = gl_FragCoord.z;
|
|
39
|
+
#include assign_material_color
|
|
40
|
+
|
|
41
|
+
if (vTexCoord.x > 1.0) {
|
|
42
|
+
#if defined(dRenderVariant_color)
|
|
43
|
+
material = vec4(uBackgroundColor, uBackgroundOpacity * material.a);
|
|
44
|
+
#endif
|
|
45
|
+
} else {
|
|
46
|
+
// retrieve signed distance
|
|
47
|
+
float sdf = texture2D(tFont, vTexCoord).a + uBorderWidth;
|
|
48
|
+
|
|
49
|
+
// perform adaptive anti-aliasing of the edges
|
|
50
|
+
float w = clamp(smoothness * (abs(dFdx(vTexCoord.x)) + abs(dFdy(vTexCoord.y))), 0.0, 0.5);
|
|
51
|
+
float a = clamp(0.0, 1.0, smoothstep(0.5 - w, 0.5 + w, sdf));
|
|
52
|
+
|
|
53
|
+
// gamma correction for linear attenuation
|
|
54
|
+
a = pow(a, 1.0 / gamma);
|
|
55
|
+
|
|
56
|
+
if (a < 0.5) discard;
|
|
57
|
+
|
|
58
|
+
#if defined(dRenderVariant_color)
|
|
59
|
+
// add border
|
|
60
|
+
float t = 0.5 + uBorderWidth;
|
|
61
|
+
if (uBorderWidth > 0.0 && sdf < t) {
|
|
62
|
+
material.xyz = mix(uBorderColor, material.xyz, smoothstep(t - w, t, sdf));
|
|
63
|
+
}
|
|
64
|
+
#endif
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
#include check_transparency
|
|
68
|
+
|
|
69
|
+
#if defined(dRenderVariant_pick)
|
|
70
|
+
#include check_picking_alpha
|
|
71
|
+
#ifdef requiredDrawBuffers
|
|
72
|
+
gl_FragColor = vObject;
|
|
73
|
+
gl_FragData[1] = vInstance;
|
|
74
|
+
gl_FragData[2] = vGroup;
|
|
75
|
+
gl_FragData[3] = packDepthToRGBA(fragmentDepth);
|
|
76
|
+
#else
|
|
77
|
+
gl_FragColor = vColor;
|
|
78
|
+
#endif
|
|
79
|
+
#elif defined(dRenderVariant_depth)
|
|
80
|
+
gl_FragColor = material;
|
|
81
|
+
#elif defined(dRenderVariant_marking)
|
|
82
|
+
gl_FragColor = material;
|
|
83
|
+
#elif defined(dRenderVariant_emissive)
|
|
84
|
+
gl_FragColor = material;
|
|
85
|
+
#elif defined(dRenderVariant_color)
|
|
86
|
+
gl_FragColor = material;
|
|
87
|
+
|
|
88
|
+
#include apply_marker_color
|
|
89
|
+
#include apply_fog
|
|
90
|
+
#include wboit_write
|
|
91
|
+
#include dpoit_write
|
|
92
|
+
#endif
|
|
93
|
+
}
|
|
94
94
|
`;
|
|
@@ -6,89 +6,89 @@
|
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
8
|
exports.text_vert = void 0;
|
|
9
|
-
exports.text_vert = `
|
|
10
|
-
precision highp float;
|
|
11
|
-
precision highp int;
|
|
12
|
-
|
|
13
|
-
#include common
|
|
14
|
-
#include read_from_texture
|
|
15
|
-
#include common_vert_params
|
|
16
|
-
#include color_vert_params
|
|
17
|
-
#include size_vert_params
|
|
18
|
-
#include common_clip
|
|
19
|
-
|
|
20
|
-
uniform mat4 uModelView;
|
|
21
|
-
|
|
22
|
-
attribute vec3 aPosition;
|
|
23
|
-
attribute vec2 aMapping;
|
|
24
|
-
attribute float aDepth;
|
|
25
|
-
attribute vec2 aTexCoord;
|
|
26
|
-
attribute mat4 aTransform;
|
|
27
|
-
attribute float aInstance;
|
|
28
|
-
attribute float aGroup;
|
|
29
|
-
|
|
30
|
-
uniform float uOffsetX;
|
|
31
|
-
uniform float uOffsetY;
|
|
32
|
-
uniform float uOffsetZ;
|
|
33
|
-
|
|
34
|
-
uniform float uIsOrtho;
|
|
35
|
-
uniform float uPixelRatio;
|
|
36
|
-
uniform vec4 uViewport;
|
|
37
|
-
|
|
38
|
-
varying vec2 vTexCoord;
|
|
39
|
-
|
|
40
|
-
#include matrix_scale
|
|
41
|
-
|
|
42
|
-
void main(void){
|
|
43
|
-
#include assign_group
|
|
44
|
-
#include assign_color_varying
|
|
45
|
-
#include assign_marker_varying
|
|
46
|
-
#include assign_clipping_varying
|
|
47
|
-
#include assign_size
|
|
48
|
-
|
|
49
|
-
vTexCoord = aTexCoord;
|
|
50
|
-
|
|
51
|
-
float scale = matrixScale(uModelView);
|
|
52
|
-
|
|
53
|
-
float offsetX = uOffsetX * scale;
|
|
54
|
-
float offsetY = uOffsetY * scale;
|
|
55
|
-
float offsetZ = (uOffsetZ + aDepth * 0.95) * scale;
|
|
56
|
-
|
|
57
|
-
vec4 position4 = vec4(aPosition, 1.0);
|
|
58
|
-
vec4 mvPosition = uModelView * aTransform * position4;
|
|
59
|
-
|
|
60
|
-
vModelPosition = (uModel * aTransform * position4).xyz; // for clipping in frag shader
|
|
61
|
-
|
|
62
|
-
// TODO
|
|
63
|
-
// #ifdef FIXED_SIZE
|
|
64
|
-
// if (ortho) {
|
|
65
|
-
// scale /= pixelRatio * ((uViewport.w / 2.0) / -uCameraPosition.z) * 0.1;
|
|
66
|
-
// } else {
|
|
67
|
-
// scale /= pixelRatio * ((uViewport.w / 2.0) / -mvPosition.z) * 0.1;
|
|
68
|
-
// }
|
|
69
|
-
// #endif
|
|
70
|
-
|
|
71
|
-
vec4 mvCorner = vec4(mvPosition.xyz, 1.0);
|
|
72
|
-
|
|
73
|
-
if (vTexCoord.x == 10.0) { // indicates background plane
|
|
74
|
-
// move a bit to the back, taking distance to camera into account to avoid z-fighting
|
|
75
|
-
offsetZ -= 0.001 * distance(uCameraPosition, (uProjection * mvCorner).xyz);
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
mvCorner.xy += aMapping * size * scale;
|
|
79
|
-
mvCorner.x += offsetX;
|
|
80
|
-
mvCorner.y += offsetY;
|
|
81
|
-
|
|
82
|
-
if (uIsOrtho == 1.0) {
|
|
83
|
-
mvCorner.z += offsetZ;
|
|
84
|
-
} else {
|
|
85
|
-
mvCorner.xyz += normalize(-mvCorner.xyz) * offsetZ;
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
gl_Position = uProjection * mvCorner;
|
|
89
|
-
|
|
90
|
-
vViewPosition = -mvCorner.xyz;
|
|
91
|
-
|
|
92
|
-
#include clip_instance
|
|
93
|
-
}
|
|
9
|
+
exports.text_vert = `
|
|
10
|
+
precision highp float;
|
|
11
|
+
precision highp int;
|
|
12
|
+
|
|
13
|
+
#include common
|
|
14
|
+
#include read_from_texture
|
|
15
|
+
#include common_vert_params
|
|
16
|
+
#include color_vert_params
|
|
17
|
+
#include size_vert_params
|
|
18
|
+
#include common_clip
|
|
19
|
+
|
|
20
|
+
uniform mat4 uModelView;
|
|
21
|
+
|
|
22
|
+
attribute vec3 aPosition;
|
|
23
|
+
attribute vec2 aMapping;
|
|
24
|
+
attribute float aDepth;
|
|
25
|
+
attribute vec2 aTexCoord;
|
|
26
|
+
attribute mat4 aTransform;
|
|
27
|
+
attribute float aInstance;
|
|
28
|
+
attribute float aGroup;
|
|
29
|
+
|
|
30
|
+
uniform float uOffsetX;
|
|
31
|
+
uniform float uOffsetY;
|
|
32
|
+
uniform float uOffsetZ;
|
|
33
|
+
|
|
34
|
+
uniform float uIsOrtho;
|
|
35
|
+
uniform float uPixelRatio;
|
|
36
|
+
uniform vec4 uViewport;
|
|
37
|
+
|
|
38
|
+
varying vec2 vTexCoord;
|
|
39
|
+
|
|
40
|
+
#include matrix_scale
|
|
41
|
+
|
|
42
|
+
void main(void){
|
|
43
|
+
#include assign_group
|
|
44
|
+
#include assign_color_varying
|
|
45
|
+
#include assign_marker_varying
|
|
46
|
+
#include assign_clipping_varying
|
|
47
|
+
#include assign_size
|
|
48
|
+
|
|
49
|
+
vTexCoord = aTexCoord;
|
|
50
|
+
|
|
51
|
+
float scale = matrixScale(uModelView);
|
|
52
|
+
|
|
53
|
+
float offsetX = uOffsetX * scale;
|
|
54
|
+
float offsetY = uOffsetY * scale;
|
|
55
|
+
float offsetZ = (uOffsetZ + aDepth * 0.95) * scale;
|
|
56
|
+
|
|
57
|
+
vec4 position4 = vec4(aPosition, 1.0);
|
|
58
|
+
vec4 mvPosition = uModelView * aTransform * position4;
|
|
59
|
+
|
|
60
|
+
vModelPosition = (uModel * aTransform * position4).xyz; // for clipping in frag shader
|
|
61
|
+
|
|
62
|
+
// TODO
|
|
63
|
+
// #ifdef FIXED_SIZE
|
|
64
|
+
// if (ortho) {
|
|
65
|
+
// scale /= pixelRatio * ((uViewport.w / 2.0) / -uCameraPosition.z) * 0.1;
|
|
66
|
+
// } else {
|
|
67
|
+
// scale /= pixelRatio * ((uViewport.w / 2.0) / -mvPosition.z) * 0.1;
|
|
68
|
+
// }
|
|
69
|
+
// #endif
|
|
70
|
+
|
|
71
|
+
vec4 mvCorner = vec4(mvPosition.xyz, 1.0);
|
|
72
|
+
|
|
73
|
+
if (vTexCoord.x == 10.0) { // indicates background plane
|
|
74
|
+
// move a bit to the back, taking distance to camera into account to avoid z-fighting
|
|
75
|
+
offsetZ -= 0.001 * distance(uCameraPosition, (uProjection * mvCorner).xyz);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
mvCorner.xy += aMapping * size * scale;
|
|
79
|
+
mvCorner.x += offsetX;
|
|
80
|
+
mvCorner.y += offsetY;
|
|
81
|
+
|
|
82
|
+
if (uIsOrtho == 1.0) {
|
|
83
|
+
mvCorner.z += offsetZ;
|
|
84
|
+
} else {
|
|
85
|
+
mvCorner.xyz += normalize(-mvCorner.xyz) * offsetZ;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
gl_Position = uProjection * mvCorner;
|
|
89
|
+
|
|
90
|
+
vViewPosition = -mvCorner.xyz;
|
|
91
|
+
|
|
92
|
+
#include clip_instance
|
|
93
|
+
}
|
|
94
94
|
`;
|
|
@@ -6,50 +6,50 @@
|
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
8
|
exports.grid3dTemplate_frag = void 0;
|
|
9
|
-
exports.grid3dTemplate_frag = `
|
|
10
|
-
precision highp float;
|
|
11
|
-
precision highp int;
|
|
12
|
-
precision highp sampler2D;
|
|
13
|
-
|
|
14
|
-
uniform vec2 uQuadShift;
|
|
15
|
-
uniform vec3 uDimensions;
|
|
16
|
-
uniform vec3 uMin;
|
|
17
|
-
uniform vec3 uDelta;
|
|
18
|
-
uniform bool uLittleEndian;
|
|
19
|
-
uniform float uWidth;
|
|
20
|
-
|
|
21
|
-
#ifdef CUMULATIVE
|
|
22
|
-
uniform sampler2D tCumulativeSum;
|
|
23
|
-
#endif
|
|
24
|
-
|
|
25
|
-
{UNIFORMS}
|
|
26
|
-
|
|
27
|
-
{UTILS}
|
|
28
|
-
|
|
29
|
-
#include float_to_rgba
|
|
30
|
-
#ifdef CUMULATIVE
|
|
31
|
-
#include rgba_to_float
|
|
32
|
-
#endif
|
|
33
|
-
|
|
34
|
-
float intDiv(float a, float b) { return float(int(a) / int(b)); }
|
|
35
|
-
float intMod(float a, float b) { return a - b * float(int(a) / int(b)); }
|
|
36
|
-
|
|
37
|
-
void main(void) {
|
|
38
|
-
float offset = floor(gl_FragCoord.x) + floor(gl_FragCoord.y) * uWidth;
|
|
39
|
-
|
|
40
|
-
// axis order fast to slow Z, Y, X
|
|
41
|
-
// TODO: support arbitrary axis orders?
|
|
42
|
-
float k = intMod(offset, uDimensions.z), kk = intDiv(offset, uDimensions.z);
|
|
43
|
-
float j = intMod(kk, uDimensions.y);
|
|
44
|
-
float i = intDiv(kk, uDimensions.y);
|
|
45
|
-
|
|
46
|
-
vec3 xyz = uMin + uDelta * vec3(i, j, k);
|
|
47
|
-
|
|
48
|
-
{MAIN}
|
|
49
|
-
|
|
50
|
-
#ifdef CUMULATIVE
|
|
51
|
-
float current = rgbaToFloat(texture2D(tCumulativeSum, gl_FragCoord.xy / vec2(uWidth, uWidth)), uLittleEndian);
|
|
52
|
-
#endif
|
|
53
|
-
gl_FragColor = floatToRgba({RETURN}, uLittleEndian);
|
|
54
|
-
}
|
|
9
|
+
exports.grid3dTemplate_frag = `
|
|
10
|
+
precision highp float;
|
|
11
|
+
precision highp int;
|
|
12
|
+
precision highp sampler2D;
|
|
13
|
+
|
|
14
|
+
uniform vec2 uQuadShift;
|
|
15
|
+
uniform vec3 uDimensions;
|
|
16
|
+
uniform vec3 uMin;
|
|
17
|
+
uniform vec3 uDelta;
|
|
18
|
+
uniform bool uLittleEndian;
|
|
19
|
+
uniform float uWidth;
|
|
20
|
+
|
|
21
|
+
#ifdef CUMULATIVE
|
|
22
|
+
uniform sampler2D tCumulativeSum;
|
|
23
|
+
#endif
|
|
24
|
+
|
|
25
|
+
{UNIFORMS}
|
|
26
|
+
|
|
27
|
+
{UTILS}
|
|
28
|
+
|
|
29
|
+
#include float_to_rgba
|
|
30
|
+
#ifdef CUMULATIVE
|
|
31
|
+
#include rgba_to_float
|
|
32
|
+
#endif
|
|
33
|
+
|
|
34
|
+
float intDiv(float a, float b) { return float(int(a) / int(b)); }
|
|
35
|
+
float intMod(float a, float b) { return a - b * float(int(a) / int(b)); }
|
|
36
|
+
|
|
37
|
+
void main(void) {
|
|
38
|
+
float offset = floor(gl_FragCoord.x) + floor(gl_FragCoord.y) * uWidth;
|
|
39
|
+
|
|
40
|
+
// axis order fast to slow Z, Y, X
|
|
41
|
+
// TODO: support arbitrary axis orders?
|
|
42
|
+
float k = intMod(offset, uDimensions.z), kk = intDiv(offset, uDimensions.z);
|
|
43
|
+
float j = intMod(kk, uDimensions.y);
|
|
44
|
+
float i = intDiv(kk, uDimensions.y);
|
|
45
|
+
|
|
46
|
+
vec3 xyz = uMin + uDelta * vec3(i, j, k);
|
|
47
|
+
|
|
48
|
+
{MAIN}
|
|
49
|
+
|
|
50
|
+
#ifdef CUMULATIVE
|
|
51
|
+
float current = rgbaToFloat(texture2D(tCumulativeSum, gl_FragCoord.xy / vec2(uWidth, uWidth)), uLittleEndian);
|
|
52
|
+
#endif
|
|
53
|
+
gl_FragColor = floatToRgba({RETURN}, uLittleEndian);
|
|
54
|
+
}
|
|
55
55
|
`;
|
|
@@ -265,22 +265,22 @@ function getGlsl100FragPrefix(extensions, shaderExtensions) {
|
|
|
265
265
|
}
|
|
266
266
|
return prefix.join('\n') + '\n';
|
|
267
267
|
}
|
|
268
|
-
const glsl300VertPrefixCommon = `
|
|
269
|
-
#define attribute in
|
|
270
|
-
#define varying out
|
|
271
|
-
#define texture2D texture
|
|
268
|
+
const glsl300VertPrefixCommon = `
|
|
269
|
+
#define attribute in
|
|
270
|
+
#define varying out
|
|
271
|
+
#define texture2D texture
|
|
272
272
|
`;
|
|
273
|
-
const glsl300FragPrefixCommon = `
|
|
274
|
-
#define varying in
|
|
275
|
-
#define texture2D texture
|
|
276
|
-
#define textureCube texture
|
|
277
|
-
#define texture2DLodEXT textureLod
|
|
278
|
-
#define textureCubeLodEXT textureLod
|
|
279
|
-
|
|
280
|
-
#define gl_FragColor out_FragData0
|
|
281
|
-
#define gl_FragDepthEXT gl_FragDepth
|
|
282
|
-
|
|
283
|
-
#define depthTextureSupport
|
|
273
|
+
const glsl300FragPrefixCommon = `
|
|
274
|
+
#define varying in
|
|
275
|
+
#define texture2D texture
|
|
276
|
+
#define textureCube texture
|
|
277
|
+
#define texture2DLodEXT textureLod
|
|
278
|
+
#define textureCubeLodEXT textureLod
|
|
279
|
+
|
|
280
|
+
#define gl_FragColor out_FragData0
|
|
281
|
+
#define gl_FragDepthEXT gl_FragDepth
|
|
282
|
+
|
|
283
|
+
#define depthTextureSupport
|
|
284
284
|
`;
|
|
285
285
|
function getGlsl300VertPrefix(extensions, shaderExtensions) {
|
|
286
286
|
const prefix = [
|
|
@@ -460,19 +460,19 @@ function getNoNonInstancedActiveAttribs(gl) {
|
|
|
460
460
|
}
|
|
461
461
|
exports.getNoNonInstancedActiveAttribs = getNoNonInstancedActiveAttribs;
|
|
462
462
|
//
|
|
463
|
-
const TextureTestVertShader = `
|
|
464
|
-
attribute vec4 aPosition;
|
|
465
|
-
|
|
466
|
-
void main() {
|
|
467
|
-
gl_Position = aPosition;
|
|
463
|
+
const TextureTestVertShader = `
|
|
464
|
+
attribute vec4 aPosition;
|
|
465
|
+
|
|
466
|
+
void main() {
|
|
467
|
+
gl_Position = aPosition;
|
|
468
468
|
}`;
|
|
469
|
-
const TextureTestFragShader = `
|
|
470
|
-
precision mediump float;
|
|
471
|
-
uniform vec4 uColor;
|
|
472
|
-
uniform sampler2D uTexture;
|
|
473
|
-
|
|
474
|
-
void main() {
|
|
475
|
-
gl_FragColor = texture2D(uTexture, vec2(0.5, 0.5)) * uColor;
|
|
469
|
+
const TextureTestFragShader = `
|
|
470
|
+
precision mediump float;
|
|
471
|
+
uniform vec4 uColor;
|
|
472
|
+
uniform sampler2D uTexture;
|
|
473
|
+
|
|
474
|
+
void main() {
|
|
475
|
+
gl_FragColor = texture2D(uTexture, vec2(0.5, 0.5)) * uColor;
|
|
476
476
|
}`;
|
|
477
477
|
const TextureTestTexCoords = new Float32Array([
|
|
478
478
|
-1.0, -1.0, 1.0, -1.0, -1.0, 1.0, -1.0, 1.0, 1.0, -1.0, 1.0, 1.0
|
|
@@ -279,6 +279,7 @@ function createContext(gl, props = {}) {
|
|
|
279
279
|
contextRestored,
|
|
280
280
|
setContextLost: () => {
|
|
281
281
|
isContextLost = true;
|
|
282
|
+
timer.clear();
|
|
282
283
|
},
|
|
283
284
|
handleContextRestored: (extraResets) => {
|
|
284
285
|
Object.assign(extensions, (0, extensions_1.createExtensions)(gl));
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
* Copyright (c) 2022-
|
|
3
|
+
* Copyright (c) 2022-2024 mol* contributors, licensed under MIT, See LICENSE file for more info.
|
|
4
4
|
*
|
|
5
5
|
* @author Alexander Rose <alexander.rose@weirdbyte.de>
|
|
6
6
|
*/
|
|
@@ -25,6 +25,9 @@ class MovingAverage {
|
|
|
25
25
|
stats() {
|
|
26
26
|
return Object.fromEntries(this.avgs.entries());
|
|
27
27
|
}
|
|
28
|
+
clear() {
|
|
29
|
+
this.avgs.clear();
|
|
30
|
+
}
|
|
28
31
|
constructor(count) {
|
|
29
32
|
this.count = count;
|
|
30
33
|
this.avgs = new Map();
|
|
@@ -61,8 +64,12 @@ function createTimer(gl, extensions, stats, options) {
|
|
|
61
64
|
dtq.deleteQuery(query);
|
|
62
65
|
});
|
|
63
66
|
pending.clear();
|
|
67
|
+
stack.length = 0;
|
|
68
|
+
gpuAvgs.clear();
|
|
69
|
+
cpuAvgs.clear();
|
|
64
70
|
measures = [];
|
|
65
71
|
current = null;
|
|
72
|
+
capturingStats = false;
|
|
66
73
|
};
|
|
67
74
|
const add = () => {
|
|
68
75
|
if (!dtq)
|
|
@@ -55,7 +55,8 @@ function computeN(state) {
|
|
|
55
55
|
const cA = state.centerA;
|
|
56
56
|
const cB = state.centerB;
|
|
57
57
|
let sizeSq = 0.0;
|
|
58
|
-
|
|
58
|
+
const L = Math.min(state.a.x.length, state.b.x.length);
|
|
59
|
+
for (let i = 0; i < L; i++) {
|
|
59
60
|
const aX = xsA[i] - cA[0], aY = ysA[i] - cA[1], aZ = zsA[i] - cA[2];
|
|
60
61
|
const bX = xsB[i] - cB[0], bY = ysB[i] - cB[1], bZ = zsB[i] - cB[2];
|
|
61
62
|
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;
|