molstar 4.0.1 → 4.2.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 +0 -9
- package/lib/apps/docking-viewer/index.html +36 -36
- package/lib/apps/docking-viewer/viewport.d.ts +8 -8
- package/lib/apps/mesoscale-explorer/behavior/camera.d.ts +1 -1
- package/lib/apps/mesoscale-explorer/behavior/select.d.ts +1 -1
- package/lib/apps/mesoscale-explorer/data/cellpack/model.d.ts +2 -2
- package/lib/apps/mesoscale-explorer/data/cellpack/preset.d.ts +1 -1
- package/lib/apps/mesoscale-explorer/data/cellpack/preset.js +5 -5
- package/lib/apps/mesoscale-explorer/data/generic/preset.d.ts +1 -1
- package/lib/apps/mesoscale-explorer/data/generic/preset.js +3 -3
- package/lib/apps/mesoscale-explorer/data/mmcif/preset.d.ts +1 -1
- package/lib/apps/mesoscale-explorer/data/mmcif/preset.js +3 -3
- package/lib/apps/mesoscale-explorer/data/petworld/preset.d.ts +1 -1
- package/lib/apps/mesoscale-explorer/data/petworld/preset.js +3 -3
- package/lib/apps/mesoscale-explorer/data/state.d.ts +19 -10
- package/lib/apps/mesoscale-explorer/data/state.js +14 -2
- package/lib/apps/mesoscale-explorer/index.html +100 -100
- package/lib/apps/mesoscale-explorer/style.scss +33 -33
- package/lib/apps/mesoscale-explorer/ui/entities.d.ts +19 -13
- package/lib/apps/mesoscale-explorer/ui/entities.js +23 -4
- package/lib/apps/viewer/app.d.ts +30 -24
- package/lib/apps/viewer/app.js +6 -6
- 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/chem-comp-dict/util.d.ts +112 -112
- package/lib/cli/cifschema/util/cif-dic.js +1 -0
- package/lib/cli/cifschema/util/generate.js +12 -12
- package/lib/cli/lipid-params/index.js +9 -9
- package/lib/cli/mvs/mvs-print-schema.d.ts +1 -0
- package/lib/cli/mvs/mvs-print-schema.js +1 -0
- package/lib/cli/mvs/mvs-render.d.ts +1 -0
- package/lib/cli/mvs/mvs-render.js +1 -0
- package/lib/cli/mvs/mvs-validate.d.ts +1 -0
- package/lib/cli/mvs/mvs-validate.js +1 -0
- package/lib/commonjs/apps/docking-viewer/viewport.d.ts +8 -8
- package/lib/commonjs/apps/mesoscale-explorer/behavior/camera.d.ts +1 -1
- package/lib/commonjs/apps/mesoscale-explorer/behavior/select.d.ts +1 -1
- package/lib/commonjs/apps/mesoscale-explorer/data/cellpack/model.d.ts +2 -2
- package/lib/commonjs/apps/mesoscale-explorer/data/cellpack/preset.d.ts +1 -1
- package/lib/commonjs/apps/mesoscale-explorer/data/cellpack/preset.js +5 -5
- package/lib/commonjs/apps/mesoscale-explorer/data/generic/preset.d.ts +1 -1
- package/lib/commonjs/apps/mesoscale-explorer/data/generic/preset.js +3 -3
- package/lib/commonjs/apps/mesoscale-explorer/data/mmcif/preset.d.ts +1 -1
- package/lib/commonjs/apps/mesoscale-explorer/data/mmcif/preset.js +3 -3
- package/lib/commonjs/apps/mesoscale-explorer/data/petworld/preset.d.ts +1 -1
- package/lib/commonjs/apps/mesoscale-explorer/data/petworld/preset.js +3 -3
- package/lib/commonjs/apps/mesoscale-explorer/data/state.d.ts +19 -10
- package/lib/commonjs/apps/mesoscale-explorer/data/state.js +15 -3
- package/lib/commonjs/apps/mesoscale-explorer/ui/entities.d.ts +19 -13
- package/lib/commonjs/apps/mesoscale-explorer/ui/entities.js +22 -3
- package/lib/commonjs/apps/viewer/app.d.ts +30 -24
- package/lib/commonjs/apps/viewer/app.js +6 -6
- 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/chem-comp-dict/util.d.ts +112 -112
- package/lib/commonjs/cli/cifschema/util/cif-dic.js +1 -0
- package/lib/commonjs/cli/cifschema/util/generate.js +12 -12
- package/lib/commonjs/cli/lipid-params/index.js +9 -9
- package/lib/commonjs/cli/mvs/mvs-print-schema.d.ts +1 -0
- package/lib/commonjs/cli/mvs/mvs-print-schema.js +1 -0
- package/lib/commonjs/cli/mvs/mvs-render.d.ts +1 -0
- package/lib/commonjs/cli/mvs/mvs-render.js +1 -0
- package/lib/commonjs/cli/mvs/mvs-validate.d.ts +1 -0
- package/lib/commonjs/cli/mvs/mvs-validate.js +1 -0
- 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/alpha-orbitals/transforms.d.ts +2 -2
- package/lib/commonjs/extensions/anvil/behavior.d.ts +10 -9
- package/lib/commonjs/extensions/anvil/representation.d.ts +5 -0
- package/lib/commonjs/extensions/assembly-symmetry/behavior.d.ts +2 -1
- package/lib/commonjs/extensions/assembly-symmetry/prop.js +24 -24
- package/lib/commonjs/extensions/assembly-symmetry/representation.d.ts +1 -0
- package/lib/commonjs/extensions/backgrounds/index.d.ts +2 -2
- package/lib/commonjs/extensions/backgrounds/index.js +2 -1
- package/lib/commonjs/extensions/dnatco/behavior.d.ts +1 -1
- package/lib/commonjs/extensions/dnatco/confal-pyramids/behavior.d.ts +10 -10
- package/lib/commonjs/extensions/dnatco/confal-pyramids/behavior.js +5 -5
- package/lib/commonjs/extensions/dnatco/confal-pyramids/representation.d.ts +3 -0
- package/lib/commonjs/extensions/dnatco/ntc-tube/behavior.d.ts +10 -10
- package/lib/commonjs/extensions/dnatco/ntc-tube/behavior.js +5 -5
- package/lib/commonjs/extensions/dnatco/ntc-tube/representation.d.ts +3 -0
- package/lib/commonjs/extensions/g3d/format.d.ts +6 -6
- package/lib/commonjs/extensions/geo-export/glb-exporter.d.ts +1 -1
- package/lib/commonjs/extensions/geo-export/glb-exporter.js +6 -4
- package/lib/commonjs/extensions/geo-export/index.d.ts +1 -1
- package/lib/commonjs/extensions/geo-export/usdz-exporter.js +41 -41
- package/lib/commonjs/extensions/meshes/mesh-extension.d.ts +2 -3
- package/lib/commonjs/extensions/meshes/mesh-streaming/behavior.d.ts +1 -1
- package/lib/commonjs/extensions/meshes/mesh-streaming/server-info.d.ts +2 -2
- package/lib/commonjs/extensions/model-archive/quality-assessment/behavior.d.ts +9 -9
- package/lib/commonjs/extensions/model-export/index.d.ts +1 -1
- package/lib/commonjs/extensions/mp4-export/index.d.ts +1 -1
- package/lib/commonjs/extensions/mvs/behavior.d.ts +1 -1
- package/lib/commonjs/extensions/mvs/camera.d.ts +2 -0
- package/lib/commonjs/extensions/mvs/camera.js +29 -2
- package/lib/commonjs/extensions/mvs/components/annotation-label/representation.d.ts +4 -0
- package/lib/commonjs/extensions/mvs/components/annotation-label/visual.d.ts +1 -0
- package/lib/commonjs/extensions/mvs/components/custom-label/representation.d.ts +4 -2
- package/lib/commonjs/extensions/mvs/components/custom-label/visual.d.ts +1 -0
- package/lib/commonjs/extensions/mvs/components/formats.d.ts +6 -4
- package/lib/commonjs/extensions/mvs/components/formats.js +2 -1
- package/lib/commonjs/extensions/mvs/load-helpers.d.ts +1 -1
- package/lib/commonjs/extensions/mvs/load.d.ts +2 -0
- package/lib/commonjs/extensions/mvs/load.js +12 -6
- package/lib/commonjs/extensions/mvs/tree/mvs/mvs-builder.d.ts +2 -8
- package/lib/commonjs/extensions/pdbe/structure-quality-report/behavior.d.ts +1 -1
- package/lib/commonjs/extensions/rcsb/validation-report/behavior.d.ts +22 -22
- package/lib/commonjs/extensions/rcsb/validation-report/representation.d.ts +5 -0
- package/lib/commonjs/extensions/sb-ncbr/partial-charges/behavior.d.ts +1 -1
- package/lib/commonjs/extensions/sb-ncbr/partial-charges/preset.d.ts +4 -4
- package/lib/commonjs/extensions/volumes-and-segmentations/entry-meshes.d.ts +1 -1
- package/lib/commonjs/extensions/volumes-and-segmentations/entry-root.d.ts +5 -5
- package/lib/commonjs/extensions/volumes-and-segmentations/entry-segmentation.d.ts +1 -1
- package/lib/commonjs/extensions/volumes-and-segmentations/entry-state.d.ts +2 -2
- package/lib/commonjs/extensions/volumes-and-segmentations/global-state.d.ts +2 -2
- package/lib/commonjs/extensions/volumes-and-segmentations/helpers.d.ts +1 -1
- package/lib/commonjs/extensions/volumes-and-segmentations/index.d.ts +1 -1
- package/lib/commonjs/extensions/wwpdb/ccd/behavior.d.ts +1 -1
- package/lib/commonjs/extensions/wwpdb/ccd/representation.d.ts +4 -4
- package/lib/commonjs/extensions/zenodo/index.d.ts +1 -1
- package/lib/commonjs/mol-canvas3d/canvas3d.d.ts +14 -2
- package/lib/commonjs/mol-canvas3d/canvas3d.js +2 -2
- package/lib/commonjs/mol-canvas3d/controls/trackball.js +1 -1
- package/lib/commonjs/mol-canvas3d/helper/handle-helper.d.ts +1 -0
- package/lib/commonjs/mol-canvas3d/helper/helper.d.ts +2 -0
- package/lib/commonjs/mol-canvas3d/passes/background.d.ts +6 -1
- package/lib/commonjs/mol-canvas3d/passes/background.js +13 -1
- package/lib/commonjs/mol-canvas3d/passes/bloom.d.ts +37 -0
- package/lib/commonjs/mol-canvas3d/passes/bloom.js +272 -0
- package/lib/commonjs/mol-canvas3d/passes/dpoit.js +4 -2
- package/lib/commonjs/mol-canvas3d/passes/draw.d.ts +11 -7
- package/lib/commonjs/mol-canvas3d/passes/draw.js +29 -3
- package/lib/commonjs/mol-canvas3d/passes/image.d.ts +6 -0
- package/lib/commonjs/mol-canvas3d/passes/postprocessing.d.ts +31 -5
- package/lib/commonjs/mol-canvas3d/passes/postprocessing.js +35 -40
- package/lib/commonjs/mol-geo/geometry/base.d.ts +3 -1
- package/lib/commonjs/mol-geo/geometry/base.js +4 -1
- package/lib/commonjs/mol-geo/geometry/cylinders/cylinders.d.ts +2 -1
- package/lib/commonjs/mol-geo/geometry/cylinders/cylinders.js +4 -1
- package/lib/commonjs/mol-geo/geometry/direct-volume/direct-volume.d.ts +2 -1
- package/lib/commonjs/mol-geo/geometry/direct-volume/direct-volume.js +4 -1
- package/lib/commonjs/mol-geo/geometry/emissive-data.d.ts +26 -0
- package/lib/commonjs/mol-geo/geometry/emissive-data.js +80 -0
- package/lib/commonjs/mol-geo/geometry/image/image.d.ts +2 -1
- package/lib/commonjs/mol-geo/geometry/image/image.js +4 -1
- package/lib/commonjs/mol-geo/geometry/lines/lines.d.ts +3 -2
- package/lib/commonjs/mol-geo/geometry/lines/lines.js +4 -1
- package/lib/commonjs/mol-geo/geometry/mesh/color-smoothing.d.ts +2 -1
- package/lib/commonjs/mol-geo/geometry/mesh/color-smoothing.js +36 -2
- package/lib/commonjs/mol-geo/geometry/mesh/mesh.d.ts +2 -1
- package/lib/commonjs/mol-geo/geometry/mesh/mesh.js +11 -4
- package/lib/commonjs/mol-geo/geometry/points/points.d.ts +3 -2
- package/lib/commonjs/mol-geo/geometry/points/points.js +4 -1
- package/lib/commonjs/mol-geo/geometry/spheres/spheres.d.ts +2 -2
- package/lib/commonjs/mol-geo/geometry/spheres/spheres.js +7 -3
- package/lib/commonjs/mol-geo/geometry/text/text.d.ts +2 -1
- package/lib/commonjs/mol-geo/geometry/text/text.js +4 -1
- package/lib/commonjs/mol-geo/geometry/texture-mesh/color-smoothing.d.ts +2 -1
- package/lib/commonjs/mol-geo/geometry/texture-mesh/color-smoothing.js +34 -2
- package/lib/commonjs/mol-geo/geometry/texture-mesh/texture-mesh.d.ts +3 -1
- package/lib/commonjs/mol-geo/geometry/texture-mesh/texture-mesh.js +14 -4
- package/lib/commonjs/mol-geo/util/location-iterator.d.ts +5 -2
- package/lib/commonjs/mol-geo/util/location-iterator.js +8 -3
- package/lib/commonjs/mol-gl/renderable/cylinders.d.ts +10 -0
- package/lib/commonjs/mol-gl/renderable/direct-volume.d.ts +10 -0
- package/lib/commonjs/mol-gl/renderable/image.d.ts +10 -0
- package/lib/commonjs/mol-gl/renderable/lines.d.ts +10 -0
- package/lib/commonjs/mol-gl/renderable/mesh.d.ts +10 -0
- package/lib/commonjs/mol-gl/renderable/points.d.ts +10 -0
- package/lib/commonjs/mol-gl/renderable/schema.d.ts +24 -1
- package/lib/commonjs/mol-gl/renderable/schema.js +15 -2
- package/lib/commonjs/mol-gl/renderable/spheres.d.ts +10 -0
- package/lib/commonjs/mol-gl/renderable/text.d.ts +10 -0
- package/lib/commonjs/mol-gl/renderable/texture-mesh.d.ts +10 -0
- package/lib/commonjs/mol-gl/renderable.d.ts +1 -1
- package/lib/commonjs/mol-gl/renderable.js +2 -2
- package/lib/commonjs/mol-gl/renderer.d.ts +2 -1
- package/lib/commonjs/mol-gl/renderer.js +58 -49
- package/lib/commonjs/mol-gl/scene.d.ts +3 -1
- package/lib/commonjs/mol-gl/scene.js +26 -1
- package/lib/commonjs/mol-gl/shader/background.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/background.frag.js +95 -94
- 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.d.ts +1 -0
- package/lib/commonjs/mol-gl/shader/bloom/blur.frag.js +32 -0
- package/lib/commonjs/mol-gl/shader/bloom/composite.frag.d.ts +1 -0
- package/lib/commonjs/mol-gl/shader/bloom/composite.frag.js +37 -0
- package/lib/commonjs/mol-gl/shader/bloom/luminosity.frag.d.ts +1 -0
- package/lib/commonjs/mol-gl/shader/bloom/luminosity.frag.js +56 -0
- 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.d.ts +2 -2
- package/lib/commonjs/mol-gl/shader/chunks/apply-light-color.glsl.js +78 -70
- 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.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/assign-color-varying.glsl.js +140 -112
- 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.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/assign-material-color.glsl.js +112 -123
- 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.d.ts +1 -0
- package/lib/commonjs/mol-gl/shader/chunks/check-transparency.glsl.js +20 -0
- 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.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/color-frag-params.glsl.js +60 -51
- package/lib/commonjs/mol-gl/shader/chunks/color-vert-params.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/color-vert-params.glsl.js +122 -92
- package/lib/commonjs/mol-gl/shader/chunks/common-clip.glsl.js +104 -104
- package/lib/commonjs/mol-gl/shader/chunks/common-frag-params.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/common-frag-params.glsl.js +150 -149
- 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.d.ts +2 -2
- package/lib/commonjs/mol-gl/shader/cylinders.frag.js +267 -264
- 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.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/direct-volume.frag.js +362 -356
- package/lib/commonjs/mol-gl/shader/direct-volume.vert.js +41 -41
- 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.d.ts +2 -2
- package/lib/commonjs/mol-gl/shader/image.frag.js +170 -161
- package/lib/commonjs/mol-gl/shader/image.vert.js +21 -21
- package/lib/commonjs/mol-gl/shader/lines.frag.d.ts +2 -2
- package/lib/commonjs/mol-gl/shader/lines.frag.js +43 -40
- 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.d.ts +2 -2
- package/lib/commonjs/mol-gl/shader/mesh.frag.js +66 -63
- 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.d.ts +2 -2
- package/lib/commonjs/mol-gl/shader/points.frag.js +60 -56
- 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.d.ts +2 -2
- package/lib/commonjs/mol-gl/shader/spheres.frag.js +149 -143
- package/lib/commonjs/mol-gl/shader/spheres.vert.js +132 -132
- package/lib/commonjs/mol-gl/shader/ssao-blur.frag.d.ts +3 -2
- package/lib/commonjs/mol-gl/shader/ssao-blur.frag.js +99 -100
- package/lib/commonjs/mol-gl/shader/ssao.frag.d.ts +3 -2
- package/lib/commonjs/mol-gl/shader/ssao.frag.js +213 -174
- package/lib/commonjs/mol-gl/shader/text.frag.d.ts +2 -2
- package/lib/commonjs/mol-gl/shader/text.frag.js +86 -84
- 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.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader-code.js +24 -18
- package/lib/commonjs/mol-gl/webgl/compat.js +12 -12
- package/lib/commonjs/mol-gl/webgl/render-item.d.ts +3 -2
- package/lib/commonjs/mol-gl/webgl/render-item.js +1 -1
- package/lib/commonjs/mol-io/common/binary-cif/array-encoder.d.ts +1 -1
- package/lib/commonjs/mol-io/common/binary-cif/array-encoder.js +5 -2
- package/lib/commonjs/mol-io/reader/cif/schema/bird.d.ts +1 -1
- package/lib/commonjs/mol-io/reader/cif/schema/bird.js +1 -1
- package/lib/commonjs/mol-io/reader/cif/schema/ccd-extras.d.ts +4 -4
- package/lib/commonjs/mol-io/reader/cif/schema/ccd.d.ts +1 -1
- package/lib/commonjs/mol-io/reader/cif/schema/ccd.js +1 -1
- package/lib/commonjs/mol-io/reader/cif/schema/mmcif.d.ts +1 -1
- package/lib/commonjs/mol-io/reader/cif/schema/mmcif.js +1 -1
- package/lib/commonjs/mol-io/reader/cif.d.ts +1 -1
- package/lib/commonjs/mol-io/writer/cif/encoder/binary.d.ts +1 -1
- package/lib/commonjs/mol-io/writer/cif/encoder/binary.js +10 -2
- package/lib/commonjs/mol-math/linear-algebra/3d/mat3.d.ts +3 -1
- package/lib/commonjs/mol-math/linear-algebra/3d/mat3.js +8 -1
- package/lib/commonjs/mol-math/linear-algebra/3d/vec3.d.ts +6 -0
- package/lib/commonjs/mol-math/linear-algebra/3d/vec3.js +20 -0
- package/lib/commonjs/mol-model/structure/model/types/saccharides.js +1 -1
- package/lib/commonjs/mol-model/structure/structure/properties.d.ts +2 -2
- package/lib/commonjs/mol-model/structure/structure/unit/bonds/data.d.ts +9 -6
- package/lib/commonjs/mol-model/structure/structure/unit/bonds/data.js +1 -1
- package/lib/commonjs/mol-model/structure/structure/unit/bonds/inter-compute.d.ts +1 -1
- package/lib/commonjs/mol-model/structure/structure/unit/bonds/inter-compute.js +7 -4
- package/lib/commonjs/mol-model/structure/structure/unit/bonds/intra-compute.d.ts +1 -1
- package/lib/commonjs/mol-model/structure/structure/unit/bonds/intra-compute.js +10 -6
- package/lib/commonjs/mol-model/structure/structure/unit.d.ts +2 -2
- package/lib/commonjs/mol-model/structure/structure/unit.js +5 -2
- package/lib/commonjs/mol-model-formats/shape/ply.d.ts +2 -0
- package/lib/commonjs/mol-model-formats/structure/basic/schema.d.ts +118 -118
- package/lib/commonjs/mol-model-formats/structure/common/component.d.ts +2 -2
- package/lib/commonjs/mol-model-formats/structure/property/bonds/index-pair.d.ts +4 -1
- package/lib/commonjs/mol-model-formats/structure/property/bonds/index-pair.js +6 -3
- package/lib/commonjs/mol-model-props/computed/representations/interactions-inter-unit-cylinder.d.ts +1 -0
- package/lib/commonjs/mol-model-props/computed/representations/interactions-intra-unit-cylinder.d.ts +1 -0
- package/lib/commonjs/mol-model-props/computed/representations/interactions.d.ts +3 -0
- package/lib/commonjs/mol-model-props/integrative/cross-link-restraint/representation.d.ts +4 -0
- package/lib/commonjs/mol-plugin/behavior/behavior.d.ts +6 -6
- package/lib/commonjs/mol-plugin/behavior/dynamic/camera.d.ts +3 -3
- package/lib/commonjs/mol-plugin/behavior/dynamic/custom-props/computed/accessible-surface-area.d.ts +1 -1
- package/lib/commonjs/mol-plugin/behavior/dynamic/custom-props/computed/interactions.d.ts +1 -1
- package/lib/commonjs/mol-plugin/behavior/dynamic/custom-props/computed/secondary-structure.d.ts +1 -1
- package/lib/commonjs/mol-plugin/behavior/dynamic/custom-props/computed/valence-model.d.ts +1 -1
- package/lib/commonjs/mol-plugin/behavior/dynamic/custom-props/integrative/cross-link-restraint.d.ts +1 -1
- package/lib/commonjs/mol-plugin/behavior/dynamic/custom-props/sequence/sifts-mapping.d.ts +1 -1
- package/lib/commonjs/mol-plugin/behavior/dynamic/custom-props/structure-info.d.ts +1 -1
- package/lib/commonjs/mol-plugin/behavior/dynamic/representation.d.ts +4 -4
- package/lib/commonjs/mol-plugin/behavior/dynamic/selection/structure-focus-representation.d.ts +1 -1
- package/lib/commonjs/mol-plugin/behavior/dynamic/volume-streaming/behavior.d.ts +2 -2
- package/lib/commonjs/mol-plugin/behavior/dynamic/volume-streaming/model.d.ts +2 -2
- package/lib/commonjs/mol-plugin/commands.d.ts +1 -208
- package/lib/commonjs/mol-plugin/config.d.ts +5 -0
- package/lib/commonjs/mol-plugin/context.d.ts +2 -2
- package/lib/commonjs/mol-plugin/state.d.ts +6 -6
- package/lib/commonjs/mol-plugin-state/actions/structure.d.ts +3 -3
- package/lib/commonjs/mol-plugin-state/actions/structure.js +3 -5
- package/lib/commonjs/mol-plugin-state/actions/volume.d.ts +1 -1
- package/lib/commonjs/mol-plugin-state/builder/data.d.ts +4 -4
- package/lib/commonjs/mol-plugin-state/builder/structure/hierarchy-preset.d.ts +27 -27
- package/lib/commonjs/mol-plugin-state/builder/structure/hierarchy.d.ts +5 -5
- package/lib/commonjs/mol-plugin-state/builder/structure/representation-preset.d.ts +42 -42
- package/lib/commonjs/mol-plugin-state/builder/structure/representation.d.ts +4 -4
- package/lib/commonjs/mol-plugin-state/builder/structure.d.ts +7 -7
- package/lib/commonjs/mol-plugin-state/formats/coordinates.d.ts +8 -8
- package/lib/commonjs/mol-plugin-state/formats/shape.d.ts +8 -8
- package/lib/commonjs/mol-plugin-state/formats/topology.d.ts +12 -12
- package/lib/commonjs/mol-plugin-state/formats/volume.d.ts +33 -33
- package/lib/commonjs/mol-plugin-state/helpers/structure-emissive.d.ts +12 -0
- package/lib/commonjs/mol-plugin-state/helpers/structure-emissive.js +69 -0
- package/lib/commonjs/mol-plugin-state/helpers/structure-selection-query.d.ts +1 -1
- package/lib/commonjs/mol-plugin-state/manager/structure/component.d.ts +3 -1
- package/lib/commonjs/mol-plugin-state/manager/structure/component.js +9 -1
- package/lib/commonjs/mol-plugin-state/manager/structure/measurement.d.ts +341 -9
- package/lib/commonjs/mol-plugin-state/manager/structure/measurement.js +32 -19
- package/lib/commonjs/mol-plugin-state/manager/structure/selection.d.ts +1 -1
- package/lib/commonjs/mol-plugin-state/manager/volume/hierarchy.d.ts +1 -1
- package/lib/commonjs/mol-plugin-state/objects.d.ts +32 -32
- package/lib/commonjs/mol-plugin-state/transforms/representation.d.ts +33 -8
- package/lib/commonjs/mol-plugin-state/transforms/representation.js +121 -6
- package/lib/commonjs/mol-plugin-state/transforms/shape.d.ts +1 -1
- package/lib/commonjs/mol-plugin-state/transforms/volume.d.ts +16 -8
- package/lib/commonjs/mol-plugin-state/transforms/volume.js +51 -2
- package/lib/commonjs/mol-plugin-ui/state/apply-action.d.ts +2 -2
- package/lib/commonjs/mol-plugin-ui/state/update-transform.d.ts +3 -3
- package/lib/commonjs/mol-repr/representation.d.ts +6 -2
- package/lib/commonjs/mol-repr/representation.js +12 -2
- package/lib/commonjs/mol-repr/shape/loci/angle.d.ts +1 -0
- package/lib/commonjs/mol-repr/shape/loci/common.d.ts +1 -0
- package/lib/commonjs/mol-repr/shape/loci/dihedral.d.ts +1 -0
- package/lib/commonjs/mol-repr/shape/loci/distance.d.ts +1 -0
- package/lib/commonjs/mol-repr/shape/loci/label.d.ts +1 -0
- package/lib/commonjs/mol-repr/shape/loci/orientation.d.ts +1 -0
- package/lib/commonjs/mol-repr/shape/loci/plane.d.ts +1 -0
- package/lib/commonjs/mol-repr/shape/model/unitcell.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/complex-representation.d.ts +1 -1
- package/lib/commonjs/mol-repr/structure/complex-representation.js +7 -1
- package/lib/commonjs/mol-repr/structure/complex-visual.d.ts +8 -1
- package/lib/commonjs/mol-repr/structure/complex-visual.js +5 -1
- package/lib/commonjs/mol-repr/structure/params.d.ts +8 -0
- package/lib/commonjs/mol-repr/structure/registry.d.ts +14 -0
- package/lib/commonjs/mol-repr/structure/representation/backbone.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/ball-and-stick.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/carbohydrate.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/cartoon.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/ellipsoid.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/gaussian-surface.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/gaussian-volume.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/label.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/line.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/molecular-surface.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/orientation.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/point.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/putty.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/spacefill.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/units-representation.d.ts +1 -1
- package/lib/commonjs/mol-repr/structure/units-representation.js +9 -3
- package/lib/commonjs/mol-repr/structure/units-visual.d.ts +9 -1
- package/lib/commonjs/mol-repr/structure/units-visual.js +5 -1
- package/lib/commonjs/mol-repr/structure/visual/bond-inter-unit-cylinder.d.ts +2 -0
- package/lib/commonjs/mol-repr/structure/visual/bond-inter-unit-line.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-cylinder.d.ts +2 -0
- package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-line.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/carbohydrate-link-cylinder.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/carbohydrate-symbol-mesh.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/element-cross.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/element-point.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/element-sphere.d.ts +4 -0
- package/lib/commonjs/mol-repr/structure/visual/ellipsoid-mesh.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/gaussian-density-volume.d.ts +2 -0
- package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-mesh.d.ts +4 -0
- package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-mesh.js +1 -1
- package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-wireframe.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/label-text.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/molecular-surface-mesh.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/molecular-surface-wireframe.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/nucleotide-atomic-bond.d.ts +2 -0
- package/lib/commonjs/mol-repr/structure/visual/nucleotide-atomic-element.d.ts +2 -0
- package/lib/commonjs/mol-repr/structure/visual/nucleotide-atomic-ring-fill.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/nucleotide-block-mesh.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/nucleotide-ring-mesh.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/orientation-ellipsoid-mesh.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/polymer-backbone-cylinder.d.ts +2 -0
- package/lib/commonjs/mol-repr/structure/visual/polymer-backbone-sphere.d.ts +2 -0
- package/lib/commonjs/mol-repr/structure/visual/polymer-direction-wedge.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/polymer-gap-cylinder.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/polymer-trace-mesh.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/polymer-tube-mesh.d.ts +1 -0
- package/lib/commonjs/mol-repr/visual.d.ts +6 -1
- package/lib/commonjs/mol-repr/visual.js +55 -1
- package/lib/commonjs/mol-repr/volume/direct-volume.d.ts +3 -0
- package/lib/commonjs/mol-repr/volume/isosurface.d.ts +6 -0
- package/lib/commonjs/mol-repr/volume/registry.d.ts +4 -0
- package/lib/commonjs/mol-repr/volume/representation.d.ts +2 -1
- package/lib/commonjs/mol-repr/volume/representation.js +9 -2
- package/lib/commonjs/mol-repr/volume/segment.d.ts +5 -0
- package/lib/commonjs/mol-repr/volume/slice.d.ts +3 -0
- package/lib/commonjs/mol-script/language/symbol-table/core.d.ts +3 -3
- package/lib/commonjs/mol-state/tree/immutable.d.ts +1 -1
- package/lib/commonjs/mol-state/tree/transient.d.ts +2 -2
- package/lib/commonjs/mol-theme/color/external-volume.d.ts +3 -1
- package/lib/commonjs/mol-theme/color/external-volume.js +8 -2
- package/lib/commonjs/mol-theme/color.d.ts +1 -0
- package/lib/commonjs/mol-theme/emissive.d.ts +40 -0
- package/lib/commonjs/mol-theme/emissive.js +137 -0
- package/lib/commonjs/mol-theme/substance.d.ts +1 -1
- package/lib/commonjs/mol-theme/substance.js +2 -2
- package/lib/commonjs/mol-theme/transparency.d.ts +0 -1
- package/lib/commonjs/mol-util/input/input-observer.js +2 -0
- package/lib/commonjs/mol-util/set.d.ts +1 -1
- package/lib/commonjs/mol-util/set.js +17 -1
- 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/alpha-orbitals/transforms.d.ts +2 -2
- package/lib/extensions/anvil/behavior.d.ts +10 -9
- package/lib/extensions/anvil/representation.d.ts +5 -0
- package/lib/extensions/assembly-symmetry/behavior.d.ts +2 -1
- package/lib/extensions/assembly-symmetry/prop.js +24 -24
- package/lib/extensions/assembly-symmetry/representation.d.ts +1 -0
- package/lib/extensions/backgrounds/index.d.ts +2 -2
- package/lib/extensions/backgrounds/index.js +2 -1
- package/lib/extensions/dnatco/behavior.d.ts +1 -1
- package/lib/extensions/dnatco/confal-pyramids/behavior.d.ts +10 -10
- package/lib/extensions/dnatco/confal-pyramids/behavior.js +5 -5
- package/lib/extensions/dnatco/confal-pyramids/representation.d.ts +3 -0
- package/lib/extensions/dnatco/ntc-tube/behavior.d.ts +10 -10
- package/lib/extensions/dnatco/ntc-tube/behavior.js +5 -5
- package/lib/extensions/dnatco/ntc-tube/representation.d.ts +3 -0
- package/lib/extensions/g3d/format.d.ts +6 -6
- package/lib/extensions/geo-export/glb-exporter.d.ts +1 -1
- package/lib/extensions/geo-export/glb-exporter.js +6 -4
- package/lib/extensions/geo-export/index.d.ts +1 -1
- package/lib/extensions/geo-export/usdz-exporter.js +41 -41
- package/lib/extensions/meshes/mesh-extension.d.ts +2 -3
- package/lib/extensions/meshes/mesh-streaming/behavior.d.ts +1 -1
- package/lib/extensions/meshes/mesh-streaming/server-info.d.ts +2 -2
- package/lib/extensions/model-archive/quality-assessment/behavior.d.ts +9 -9
- package/lib/extensions/model-export/index.d.ts +1 -1
- package/lib/extensions/mp4-export/index.d.ts +1 -1
- package/lib/extensions/mvs/behavior.d.ts +1 -1
- package/lib/extensions/mvs/camera.d.ts +2 -0
- package/lib/extensions/mvs/camera.js +27 -1
- package/lib/extensions/mvs/components/annotation-label/representation.d.ts +4 -0
- package/lib/extensions/mvs/components/annotation-label/visual.d.ts +1 -0
- package/lib/extensions/mvs/components/custom-label/representation.d.ts +4 -2
- package/lib/extensions/mvs/components/custom-label/visual.d.ts +1 -0
- package/lib/extensions/mvs/components/formats.d.ts +6 -4
- package/lib/extensions/mvs/components/formats.js +2 -1
- package/lib/extensions/mvs/load-helpers.d.ts +1 -1
- package/lib/extensions/mvs/load.d.ts +2 -0
- package/lib/extensions/mvs/load.js +13 -7
- package/lib/extensions/mvs/tree/mvs/mvs-builder.d.ts +2 -8
- package/lib/extensions/pdbe/structure-quality-report/behavior.d.ts +1 -1
- package/lib/extensions/rcsb/validation-report/behavior.d.ts +22 -22
- package/lib/extensions/rcsb/validation-report/representation.d.ts +5 -0
- package/lib/extensions/sb-ncbr/partial-charges/behavior.d.ts +1 -1
- package/lib/extensions/sb-ncbr/partial-charges/preset.d.ts +4 -4
- package/lib/extensions/volumes-and-segmentations/entry-meshes.d.ts +1 -1
- package/lib/extensions/volumes-and-segmentations/entry-root.d.ts +5 -5
- package/lib/extensions/volumes-and-segmentations/entry-segmentation.d.ts +1 -1
- package/lib/extensions/volumes-and-segmentations/entry-state.d.ts +2 -2
- package/lib/extensions/volumes-and-segmentations/global-state.d.ts +2 -2
- package/lib/extensions/volumes-and-segmentations/helpers.d.ts +1 -1
- package/lib/extensions/volumes-and-segmentations/index.d.ts +1 -1
- package/lib/extensions/wwpdb/ccd/behavior.d.ts +1 -1
- package/lib/extensions/wwpdb/ccd/representation.d.ts +4 -4
- package/lib/extensions/zenodo/index.d.ts +1 -1
- package/lib/mol-canvas3d/canvas3d.d.ts +14 -2
- package/lib/mol-canvas3d/canvas3d.js +2 -2
- package/lib/mol-canvas3d/controls/trackball.js +1 -1
- package/lib/mol-canvas3d/helper/handle-helper.d.ts +1 -0
- package/lib/mol-canvas3d/helper/helper.d.ts +2 -0
- package/lib/mol-canvas3d/passes/background.d.ts +6 -1
- package/lib/mol-canvas3d/passes/background.js +14 -2
- package/lib/mol-canvas3d/passes/bloom.d.ts +37 -0
- package/lib/mol-canvas3d/passes/bloom.js +268 -0
- package/lib/mol-canvas3d/passes/dpoit.js +4 -2
- package/lib/mol-canvas3d/passes/draw.d.ts +11 -7
- package/lib/mol-canvas3d/passes/draw.js +30 -4
- package/lib/mol-canvas3d/passes/image.d.ts +6 -0
- package/lib/mol-canvas3d/passes/postprocessing.d.ts +31 -5
- package/lib/mol-canvas3d/passes/postprocessing.js +33 -39
- package/lib/mol-geo/geometry/base.d.ts +3 -1
- package/lib/mol-geo/geometry/base.js +4 -1
- package/lib/mol-geo/geometry/cylinders/cylinders.d.ts +2 -1
- package/lib/mol-geo/geometry/cylinders/cylinders.js +4 -1
- package/lib/mol-geo/geometry/direct-volume/direct-volume.d.ts +2 -1
- package/lib/mol-geo/geometry/direct-volume/direct-volume.js +4 -1
- package/lib/mol-geo/geometry/emissive-data.d.ts +26 -0
- package/lib/mol-geo/geometry/emissive-data.js +72 -0
- package/lib/mol-geo/geometry/image/image.d.ts +2 -1
- package/lib/mol-geo/geometry/image/image.js +4 -1
- package/lib/mol-geo/geometry/lines/lines.d.ts +3 -2
- package/lib/mol-geo/geometry/lines/lines.js +4 -1
- package/lib/mol-geo/geometry/mesh/color-smoothing.d.ts +2 -1
- package/lib/mol-geo/geometry/mesh/color-smoothing.js +34 -1
- package/lib/mol-geo/geometry/mesh/mesh.d.ts +2 -1
- package/lib/mol-geo/geometry/mesh/mesh.js +11 -4
- package/lib/mol-geo/geometry/points/points.d.ts +3 -2
- package/lib/mol-geo/geometry/points/points.js +4 -1
- package/lib/mol-geo/geometry/spheres/spheres.d.ts +2 -2
- package/lib/mol-geo/geometry/spheres/spheres.js +7 -3
- package/lib/mol-geo/geometry/text/text.d.ts +2 -1
- package/lib/mol-geo/geometry/text/text.js +4 -1
- package/lib/mol-geo/geometry/texture-mesh/color-smoothing.d.ts +2 -1
- package/lib/mol-geo/geometry/texture-mesh/color-smoothing.js +32 -1
- package/lib/mol-geo/geometry/texture-mesh/texture-mesh.d.ts +3 -1
- package/lib/mol-geo/geometry/texture-mesh/texture-mesh.js +14 -4
- package/lib/mol-geo/util/location-iterator.d.ts +5 -2
- package/lib/mol-geo/util/location-iterator.js +8 -3
- package/lib/mol-gl/renderable/cylinders.d.ts +10 -0
- package/lib/mol-gl/renderable/direct-volume.d.ts +10 -0
- package/lib/mol-gl/renderable/image.d.ts +10 -0
- package/lib/mol-gl/renderable/lines.d.ts +10 -0
- package/lib/mol-gl/renderable/mesh.d.ts +10 -0
- package/lib/mol-gl/renderable/points.d.ts +10 -0
- package/lib/mol-gl/renderable/schema.d.ts +24 -1
- package/lib/mol-gl/renderable/schema.js +14 -1
- package/lib/mol-gl/renderable/spheres.d.ts +10 -0
- package/lib/mol-gl/renderable/text.d.ts +10 -0
- package/lib/mol-gl/renderable/texture-mesh.d.ts +10 -0
- package/lib/mol-gl/renderable.d.ts +1 -1
- package/lib/mol-gl/renderable.js +2 -2
- package/lib/mol-gl/renderer.d.ts +2 -1
- package/lib/mol-gl/renderer.js +58 -49
- package/lib/mol-gl/scene.d.ts +3 -1
- package/lib/mol-gl/scene.js +26 -1
- package/lib/mol-gl/shader/background.frag.d.ts +1 -1
- package/lib/mol-gl/shader/background.frag.js +95 -94
- 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.d.ts +1 -0
- package/lib/mol-gl/shader/bloom/blur.frag.js +29 -0
- package/lib/mol-gl/shader/bloom/composite.frag.d.ts +1 -0
- package/lib/mol-gl/shader/bloom/composite.frag.js +34 -0
- package/lib/mol-gl/shader/bloom/luminosity.frag.d.ts +1 -0
- package/lib/mol-gl/shader/bloom/luminosity.frag.js +53 -0
- 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.d.ts +2 -2
- package/lib/mol-gl/shader/chunks/apply-light-color.glsl.js +78 -70
- 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.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/assign-color-varying.glsl.js +140 -112
- 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.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/assign-material-color.glsl.js +112 -123
- 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.d.ts +1 -0
- package/lib/mol-gl/shader/chunks/check-transparency.glsl.js +17 -0
- 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.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/color-frag-params.glsl.js +60 -51
- package/lib/mol-gl/shader/chunks/color-vert-params.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/color-vert-params.glsl.js +122 -92
- package/lib/mol-gl/shader/chunks/common-clip.glsl.js +104 -104
- package/lib/mol-gl/shader/chunks/common-frag-params.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/common-frag-params.glsl.js +150 -149
- 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.d.ts +2 -2
- package/lib/mol-gl/shader/cylinders.frag.js +267 -264
- 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.d.ts +1 -1
- package/lib/mol-gl/shader/direct-volume.frag.js +362 -356
- package/lib/mol-gl/shader/direct-volume.vert.js +41 -41
- 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.d.ts +2 -2
- package/lib/mol-gl/shader/image.frag.js +170 -161
- package/lib/mol-gl/shader/image.vert.js +21 -21
- package/lib/mol-gl/shader/lines.frag.d.ts +2 -2
- package/lib/mol-gl/shader/lines.frag.js +43 -40
- 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.d.ts +2 -2
- package/lib/mol-gl/shader/mesh.frag.js +66 -63
- 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.d.ts +2 -2
- package/lib/mol-gl/shader/points.frag.js +60 -56
- 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.d.ts +2 -2
- package/lib/mol-gl/shader/spheres.frag.js +149 -143
- package/lib/mol-gl/shader/spheres.vert.js +132 -132
- package/lib/mol-gl/shader/ssao-blur.frag.d.ts +3 -2
- package/lib/mol-gl/shader/ssao-blur.frag.js +99 -100
- package/lib/mol-gl/shader/ssao.frag.d.ts +3 -2
- package/lib/mol-gl/shader/ssao.frag.js +213 -174
- package/lib/mol-gl/shader/text.frag.d.ts +2 -2
- package/lib/mol-gl/shader/text.frag.js +86 -84
- 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.d.ts +1 -1
- package/lib/mol-gl/shader-code.js +24 -18
- package/lib/mol-gl/webgl/compat.js +12 -12
- package/lib/mol-gl/webgl/render-item.d.ts +3 -2
- package/lib/mol-gl/webgl/render-item.js +1 -1
- package/lib/mol-io/common/binary-cif/array-encoder.d.ts +1 -1
- package/lib/mol-io/common/binary-cif/array-encoder.js +5 -2
- package/lib/mol-io/reader/cif/schema/bird.d.ts +1 -1
- package/lib/mol-io/reader/cif/schema/bird.js +1 -1
- package/lib/mol-io/reader/cif/schema/ccd-extras.d.ts +4 -4
- package/lib/mol-io/reader/cif/schema/ccd.d.ts +1 -1
- package/lib/mol-io/reader/cif/schema/ccd.js +1 -1
- package/lib/mol-io/reader/cif/schema/mmcif.d.ts +1 -1
- package/lib/mol-io/reader/cif/schema/mmcif.js +1 -1
- package/lib/mol-io/reader/cif.d.ts +1 -1
- package/lib/mol-io/writer/cif/encoder/binary.d.ts +1 -1
- package/lib/mol-io/writer/cif/encoder/binary.js +10 -2
- package/lib/mol-math/linear-algebra/3d/mat3.d.ts +3 -1
- package/lib/mol-math/linear-algebra/3d/mat3.js +8 -1
- package/lib/mol-math/linear-algebra/3d/vec3.d.ts +6 -0
- package/lib/mol-math/linear-algebra/3d/vec3.js +20 -0
- package/lib/mol-model/structure/model/types/saccharides.js +1 -1
- package/lib/mol-model/structure/structure/properties.d.ts +2 -2
- package/lib/mol-model/structure/structure/unit/bonds/data.d.ts +9 -6
- package/lib/mol-model/structure/structure/unit/bonds/data.js +1 -1
- package/lib/mol-model/structure/structure/unit/bonds/inter-compute.d.ts +1 -1
- package/lib/mol-model/structure/structure/unit/bonds/inter-compute.js +7 -4
- package/lib/mol-model/structure/structure/unit/bonds/intra-compute.d.ts +1 -1
- package/lib/mol-model/structure/structure/unit/bonds/intra-compute.js +10 -6
- package/lib/mol-model/structure/structure/unit.d.ts +2 -2
- package/lib/mol-model/structure/structure/unit.js +5 -2
- package/lib/mol-model-formats/shape/ply.d.ts +2 -0
- package/lib/mol-model-formats/structure/basic/schema.d.ts +118 -118
- package/lib/mol-model-formats/structure/common/component.d.ts +2 -2
- package/lib/mol-model-formats/structure/property/bonds/index-pair.d.ts +4 -1
- package/lib/mol-model-formats/structure/property/bonds/index-pair.js +6 -3
- package/lib/mol-model-props/computed/representations/interactions-inter-unit-cylinder.d.ts +1 -0
- package/lib/mol-model-props/computed/representations/interactions-intra-unit-cylinder.d.ts +1 -0
- package/lib/mol-model-props/computed/representations/interactions.d.ts +3 -0
- package/lib/mol-model-props/integrative/cross-link-restraint/representation.d.ts +4 -0
- package/lib/mol-plugin/behavior/behavior.d.ts +6 -6
- package/lib/mol-plugin/behavior/dynamic/camera.d.ts +3 -3
- package/lib/mol-plugin/behavior/dynamic/custom-props/computed/accessible-surface-area.d.ts +1 -1
- package/lib/mol-plugin/behavior/dynamic/custom-props/computed/interactions.d.ts +1 -1
- package/lib/mol-plugin/behavior/dynamic/custom-props/computed/secondary-structure.d.ts +1 -1
- package/lib/mol-plugin/behavior/dynamic/custom-props/computed/valence-model.d.ts +1 -1
- package/lib/mol-plugin/behavior/dynamic/custom-props/integrative/cross-link-restraint.d.ts +1 -1
- package/lib/mol-plugin/behavior/dynamic/custom-props/sequence/sifts-mapping.d.ts +1 -1
- package/lib/mol-plugin/behavior/dynamic/custom-props/structure-info.d.ts +1 -1
- package/lib/mol-plugin/behavior/dynamic/representation.d.ts +4 -4
- package/lib/mol-plugin/behavior/dynamic/selection/structure-focus-representation.d.ts +1 -1
- package/lib/mol-plugin/behavior/dynamic/volume-streaming/behavior.d.ts +2 -2
- package/lib/mol-plugin/behavior/dynamic/volume-streaming/model.d.ts +2 -2
- package/lib/mol-plugin/commands.d.ts +1 -208
- package/lib/mol-plugin/config.d.ts +5 -0
- package/lib/mol-plugin/context.d.ts +2 -2
- package/lib/mol-plugin/state.d.ts +6 -6
- package/lib/mol-plugin/version.js +2 -2
- package/lib/mol-plugin-state/actions/structure.d.ts +3 -3
- package/lib/mol-plugin-state/actions/structure.js +3 -5
- package/lib/mol-plugin-state/actions/volume.d.ts +1 -1
- package/lib/mol-plugin-state/builder/data.d.ts +4 -4
- package/lib/mol-plugin-state/builder/structure/hierarchy-preset.d.ts +27 -27
- package/lib/mol-plugin-state/builder/structure/hierarchy.d.ts +5 -5
- package/lib/mol-plugin-state/builder/structure/representation-preset.d.ts +42 -42
- package/lib/mol-plugin-state/builder/structure/representation.d.ts +4 -4
- package/lib/mol-plugin-state/builder/structure.d.ts +7 -7
- package/lib/mol-plugin-state/formats/coordinates.d.ts +8 -8
- package/lib/mol-plugin-state/formats/shape.d.ts +8 -8
- package/lib/mol-plugin-state/formats/topology.d.ts +12 -12
- package/lib/mol-plugin-state/formats/volume.d.ts +33 -33
- package/lib/mol-plugin-state/helpers/structure-emissive.d.ts +12 -0
- package/lib/mol-plugin-state/helpers/structure-emissive.js +64 -0
- package/lib/mol-plugin-state/helpers/structure-selection-query.d.ts +1 -1
- package/lib/mol-plugin-state/manager/structure/component.d.ts +3 -1
- package/lib/mol-plugin-state/manager/structure/component.js +9 -1
- package/lib/mol-plugin-state/manager/structure/measurement.d.ts +341 -9
- package/lib/mol-plugin-state/manager/structure/measurement.js +32 -19
- package/lib/mol-plugin-state/manager/structure/selection.d.ts +1 -1
- package/lib/mol-plugin-state/manager/volume/hierarchy.d.ts +1 -1
- package/lib/mol-plugin-state/objects.d.ts +32 -32
- package/lib/mol-plugin-state/transforms/representation.d.ts +33 -8
- package/lib/mol-plugin-state/transforms/representation.js +120 -5
- package/lib/mol-plugin-state/transforms/shape.d.ts +1 -1
- package/lib/mol-plugin-state/transforms/volume.d.ts +16 -8
- package/lib/mol-plugin-state/transforms/volume.js +51 -2
- 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/state/apply-action.d.ts +2 -2
- package/lib/mol-plugin-ui/state/update-transform.d.ts +3 -3
- package/lib/mol-repr/representation.d.ts +6 -2
- package/lib/mol-repr/representation.js +12 -2
- package/lib/mol-repr/shape/loci/angle.d.ts +1 -0
- package/lib/mol-repr/shape/loci/common.d.ts +1 -0
- package/lib/mol-repr/shape/loci/dihedral.d.ts +1 -0
- package/lib/mol-repr/shape/loci/distance.d.ts +1 -0
- package/lib/mol-repr/shape/loci/label.d.ts +1 -0
- package/lib/mol-repr/shape/loci/orientation.d.ts +1 -0
- package/lib/mol-repr/shape/loci/plane.d.ts +1 -0
- package/lib/mol-repr/shape/model/unitcell.d.ts +1 -0
- package/lib/mol-repr/structure/complex-representation.d.ts +1 -1
- package/lib/mol-repr/structure/complex-representation.js +7 -1
- package/lib/mol-repr/structure/complex-visual.d.ts +8 -1
- package/lib/mol-repr/structure/complex-visual.js +5 -1
- package/lib/mol-repr/structure/params.d.ts +8 -0
- package/lib/mol-repr/structure/registry.d.ts +14 -0
- package/lib/mol-repr/structure/representation/backbone.d.ts +3 -0
- package/lib/mol-repr/structure/representation/ball-and-stick.d.ts +3 -0
- package/lib/mol-repr/structure/representation/carbohydrate.d.ts +3 -0
- package/lib/mol-repr/structure/representation/cartoon.d.ts +3 -0
- package/lib/mol-repr/structure/representation/ellipsoid.d.ts +3 -0
- package/lib/mol-repr/structure/representation/gaussian-surface.d.ts +3 -0
- package/lib/mol-repr/structure/representation/gaussian-volume.d.ts +3 -0
- package/lib/mol-repr/structure/representation/label.d.ts +3 -0
- package/lib/mol-repr/structure/representation/line.d.ts +3 -0
- package/lib/mol-repr/structure/representation/molecular-surface.d.ts +3 -0
- package/lib/mol-repr/structure/representation/orientation.d.ts +3 -0
- package/lib/mol-repr/structure/representation/point.d.ts +3 -0
- package/lib/mol-repr/structure/representation/putty.d.ts +3 -0
- package/lib/mol-repr/structure/representation/spacefill.d.ts +3 -0
- package/lib/mol-repr/structure/units-representation.d.ts +1 -1
- package/lib/mol-repr/structure/units-representation.js +9 -3
- package/lib/mol-repr/structure/units-visual.d.ts +9 -1
- package/lib/mol-repr/structure/units-visual.js +5 -1
- package/lib/mol-repr/structure/visual/bond-inter-unit-cylinder.d.ts +2 -0
- package/lib/mol-repr/structure/visual/bond-inter-unit-line.d.ts +1 -0
- package/lib/mol-repr/structure/visual/bond-intra-unit-cylinder.d.ts +2 -0
- package/lib/mol-repr/structure/visual/bond-intra-unit-line.d.ts +1 -0
- package/lib/mol-repr/structure/visual/carbohydrate-link-cylinder.d.ts +1 -0
- package/lib/mol-repr/structure/visual/carbohydrate-symbol-mesh.d.ts +1 -0
- package/lib/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.d.ts +1 -0
- package/lib/mol-repr/structure/visual/element-cross.d.ts +1 -0
- package/lib/mol-repr/structure/visual/element-point.d.ts +1 -0
- package/lib/mol-repr/structure/visual/element-sphere.d.ts +4 -0
- package/lib/mol-repr/structure/visual/ellipsoid-mesh.d.ts +1 -0
- package/lib/mol-repr/structure/visual/gaussian-density-volume.d.ts +2 -0
- package/lib/mol-repr/structure/visual/gaussian-surface-mesh.d.ts +4 -0
- package/lib/mol-repr/structure/visual/gaussian-surface-mesh.js +1 -1
- package/lib/mol-repr/structure/visual/gaussian-surface-wireframe.d.ts +1 -0
- package/lib/mol-repr/structure/visual/label-text.d.ts +1 -0
- package/lib/mol-repr/structure/visual/molecular-surface-mesh.d.ts +1 -0
- package/lib/mol-repr/structure/visual/molecular-surface-wireframe.d.ts +1 -0
- package/lib/mol-repr/structure/visual/nucleotide-atomic-bond.d.ts +2 -0
- package/lib/mol-repr/structure/visual/nucleotide-atomic-element.d.ts +2 -0
- package/lib/mol-repr/structure/visual/nucleotide-atomic-ring-fill.d.ts +1 -0
- package/lib/mol-repr/structure/visual/nucleotide-block-mesh.d.ts +1 -0
- package/lib/mol-repr/structure/visual/nucleotide-ring-mesh.d.ts +1 -0
- package/lib/mol-repr/structure/visual/orientation-ellipsoid-mesh.d.ts +1 -0
- package/lib/mol-repr/structure/visual/polymer-backbone-cylinder.d.ts +2 -0
- package/lib/mol-repr/structure/visual/polymer-backbone-sphere.d.ts +2 -0
- package/lib/mol-repr/structure/visual/polymer-direction-wedge.d.ts +1 -0
- package/lib/mol-repr/structure/visual/polymer-gap-cylinder.d.ts +1 -0
- package/lib/mol-repr/structure/visual/polymer-trace-mesh.d.ts +1 -0
- package/lib/mol-repr/structure/visual/polymer-tube-mesh.d.ts +1 -0
- package/lib/mol-repr/visual.d.ts +6 -1
- package/lib/mol-repr/visual.js +57 -3
- package/lib/mol-repr/volume/direct-volume.d.ts +3 -0
- package/lib/mol-repr/volume/isosurface.d.ts +6 -0
- package/lib/mol-repr/volume/registry.d.ts +4 -0
- package/lib/mol-repr/volume/representation.d.ts +2 -1
- package/lib/mol-repr/volume/representation.js +9 -2
- package/lib/mol-repr/volume/segment.d.ts +5 -0
- package/lib/mol-repr/volume/slice.d.ts +3 -0
- package/lib/mol-script/language/symbol-table/core.d.ts +3 -3
- package/lib/mol-state/tree/immutable.d.ts +1 -1
- package/lib/mol-state/tree/transient.d.ts +2 -2
- package/lib/mol-theme/color/external-volume.d.ts +3 -1
- package/lib/mol-theme/color/external-volume.js +8 -2
- package/lib/mol-theme/color.d.ts +1 -0
- package/lib/mol-theme/emissive.d.ts +40 -0
- package/lib/mol-theme/emissive.js +134 -0
- package/lib/mol-theme/substance.d.ts +1 -1
- package/lib/mol-theme/substance.js +2 -2
- package/lib/mol-theme/transparency.d.ts +0 -1
- package/lib/mol-util/input/input-observer.js +2 -0
- package/lib/mol-util/set.d.ts +1 -1
- package/lib/mol-util/set.js +17 -1
- package/lib/servers/common/swagger-ui/indexTemplate.js +66 -66
- package/lib/servers/volume/config.js +5 -5
- package/package.json +195 -193
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright (c) 2019-
|
|
2
|
+
* Copyright (c) 2019-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
|
* @author Áron Samuel Kovács <aron.kovacs@mail.muni.cz>
|
|
@@ -14,14 +14,21 @@ import { DpoitPass } from './dpoit';
|
|
|
14
14
|
import { AntialiasingPass, PostprocessingPass } from './postprocessing';
|
|
15
15
|
import { MarkingPass } from './marking';
|
|
16
16
|
import { createCopyRenderable } from '../../mol-gl/compute/util';
|
|
17
|
-
import { isTimingMode } from '../../mol-util/debug';
|
|
17
|
+
import { isDebugMode, isTimingMode } from '../../mol-util/debug';
|
|
18
|
+
import { BloomPass } from './bloom';
|
|
18
19
|
export class DrawPass {
|
|
19
20
|
setTransparency(transparency) {
|
|
20
21
|
if (transparency === 'wboit') {
|
|
21
22
|
this.transparencyMode = this.wboit.supported ? 'wboit' : 'blended';
|
|
23
|
+
if (isDebugMode && !this.wboit.supported) {
|
|
24
|
+
console.log('Missing "wboit" support, falling back to "blended".');
|
|
25
|
+
}
|
|
22
26
|
}
|
|
23
27
|
else if (transparency === 'dpoit') {
|
|
24
28
|
this.transparencyMode = this.dpoit.supported ? 'dpoit' : 'blended';
|
|
29
|
+
if (isDebugMode && !this.dpoit.supported) {
|
|
30
|
+
console.log('Missing "dpoit" support, falling back to "blended".');
|
|
31
|
+
}
|
|
25
32
|
}
|
|
26
33
|
else {
|
|
27
34
|
this.transparencyMode = 'blended';
|
|
@@ -49,7 +56,8 @@ export class DrawPass {
|
|
|
49
56
|
this.dpoit = new DpoitPass(webgl, width, height);
|
|
50
57
|
this.marking = new MarkingPass(webgl, width, height);
|
|
51
58
|
this.postprocessing = new PostprocessingPass(webgl, assetManager, this);
|
|
52
|
-
this.antialiasing = new AntialiasingPass(webgl,
|
|
59
|
+
this.antialiasing = new AntialiasingPass(webgl, width, height);
|
|
60
|
+
this.bloom = new BloomPass(webgl, width, height);
|
|
53
61
|
this.copyFboTarget = createCopyRenderable(webgl, this.colorTarget.texture);
|
|
54
62
|
this.copyFboPostprocessing = createCopyRenderable(webgl, this.postprocessing.target.texture);
|
|
55
63
|
this.setTransparency(transparency);
|
|
@@ -82,6 +90,7 @@ export class DrawPass {
|
|
|
82
90
|
this.marking.setSize(width, height);
|
|
83
91
|
this.postprocessing.setSize(width, height);
|
|
84
92
|
this.antialiasing.setSize(width, height);
|
|
93
|
+
this.bloom.setSize(width, height);
|
|
85
94
|
}
|
|
86
95
|
_renderDpoit(renderer, camera, scene, iterations, transparentBackground, postprocessingProps) {
|
|
87
96
|
if (!this.dpoit.supported)
|
|
@@ -239,6 +248,7 @@ export class DrawPass {
|
|
|
239
248
|
}
|
|
240
249
|
}
|
|
241
250
|
_render(renderer, camera, scene, helper, toDrawingBuffer, transparentBackground, props) {
|
|
251
|
+
var _a;
|
|
242
252
|
const volumeRendering = scene.volumes.renderables.length > 0;
|
|
243
253
|
const postprocessingEnabled = PostprocessingPass.isEnabled(props.postprocessing);
|
|
244
254
|
const antialiasingEnabled = AntialiasingPass.isEnabled(props.postprocessing);
|
|
@@ -296,7 +306,10 @@ export class DrawPass {
|
|
|
296
306
|
renderer.renderBlended(helper.camera.scene, helper.camera.camera);
|
|
297
307
|
}
|
|
298
308
|
if (antialiasingEnabled) {
|
|
299
|
-
|
|
309
|
+
const input = PostprocessingPass.isEnabled(props.postprocessing)
|
|
310
|
+
? this.postprocessing.target.texture
|
|
311
|
+
: this.colorTarget.texture;
|
|
312
|
+
this.antialiasing.render(camera, input, toDrawingBuffer, props.postprocessing);
|
|
300
313
|
}
|
|
301
314
|
else if (toDrawingBuffer) {
|
|
302
315
|
this.drawTarget.bind();
|
|
@@ -308,6 +321,19 @@ export class DrawPass {
|
|
|
308
321
|
this.copyFboTarget.render();
|
|
309
322
|
}
|
|
310
323
|
}
|
|
324
|
+
if (props.postprocessing.bloom.name === 'on') {
|
|
325
|
+
const emissiveBloom = props.postprocessing.bloom.params.mode === 'emissive';
|
|
326
|
+
if (emissiveBloom && scene.emissiveAverage > 0) {
|
|
327
|
+
this.bloom.emissiveTarget.bind();
|
|
328
|
+
renderer.clear(false, true);
|
|
329
|
+
renderer.update(camera, scene);
|
|
330
|
+
renderer.renderEmissive(scene.primitives, camera, null);
|
|
331
|
+
}
|
|
332
|
+
if (!emissiveBloom || scene.emissiveAverage > 0) {
|
|
333
|
+
this.bloom.update(this.colorTarget.texture, this.bloom.emissiveTarget.texture, ((_a = this.depthTargetOpaque) === null || _a === void 0 ? void 0 : _a.texture) || this.depthTextureOpaque, props.postprocessing.bloom.params);
|
|
334
|
+
this.bloom.render(camera.viewport, toDrawingBuffer ? undefined : this.getColorTarget(props.postprocessing));
|
|
335
|
+
}
|
|
336
|
+
}
|
|
311
337
|
this.webgl.gl.flush();
|
|
312
338
|
}
|
|
313
339
|
render(ctx, props, toDrawingBuffer) {
|
|
@@ -58,6 +58,12 @@ export declare const ImageParams: {
|
|
|
58
58
|
background: PD.Normalize<{
|
|
59
59
|
variant: any;
|
|
60
60
|
}>;
|
|
61
|
+
bloom: PD.NamedParams<PD.Normalize<unknown>, "off"> | PD.NamedParams<PD.Normalize<{
|
|
62
|
+
strength: any;
|
|
63
|
+
radius: any;
|
|
64
|
+
threshold: any;
|
|
65
|
+
mode: any;
|
|
66
|
+
}>, "on">;
|
|
61
67
|
}>>;
|
|
62
68
|
marking: PD.Group<PD.Normalize<{
|
|
63
69
|
enabled: boolean;
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright (c) 2019-
|
|
2
|
+
* Copyright (c) 2019-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
|
* @author Áron Samuel Kovács <aron.kovacs@mail.muni.cz>
|
|
6
6
|
* @author Ludovic Autin <ludovic.autin@gmail.com>
|
|
7
7
|
*/
|
|
8
|
+
import { TextureSpec, Values, UniformSpec, DefineSpec } from '../../mol-gl/renderable/schema';
|
|
8
9
|
import { WebGLContext } from '../../mol-gl/webgl/context';
|
|
10
|
+
import { Texture } from '../../mol-gl/webgl/texture';
|
|
11
|
+
import { ComputeRenderable } from '../../mol-gl/renderable';
|
|
9
12
|
import { ParamDefinition as PD } from '../../mol-util/param-definition';
|
|
10
13
|
import { RenderTarget } from '../../mol-gl/webgl/render-target';
|
|
11
14
|
import { DrawPass } from './draw';
|
|
@@ -14,6 +17,23 @@ import { Color } from '../../mol-util/color';
|
|
|
14
17
|
import { BackgroundPass } from './background';
|
|
15
18
|
import { AssetManager } from '../../mol-util/assets';
|
|
16
19
|
import { Light } from '../../mol-gl/renderer';
|
|
20
|
+
export declare const OutlinesSchema: {
|
|
21
|
+
tDepthOpaque: TextureSpec<"texture">;
|
|
22
|
+
tDepthTransparent: TextureSpec<"texture">;
|
|
23
|
+
uTexSize: UniformSpec<"v2">;
|
|
24
|
+
dOrthographic: DefineSpec<"number">;
|
|
25
|
+
uNear: UniformSpec<"f">;
|
|
26
|
+
uFar: UniformSpec<"f">;
|
|
27
|
+
uInvProjection: UniformSpec<"m4">;
|
|
28
|
+
uOutlineThreshold: UniformSpec<"f">;
|
|
29
|
+
dTransparentOutline: DefineSpec<"boolean">;
|
|
30
|
+
drawCount: import("../../mol-gl/renderable/schema").ValueSpec<"number">;
|
|
31
|
+
instanceCount: import("../../mol-gl/renderable/schema").ValueSpec<"number">;
|
|
32
|
+
aPosition: import("../../mol-gl/renderable/schema").AttributeSpec<"float32">;
|
|
33
|
+
uQuadScale: UniformSpec<"v2">;
|
|
34
|
+
};
|
|
35
|
+
export type OutlinesRenderable = ComputeRenderable<Values<typeof OutlinesSchema>>;
|
|
36
|
+
export declare function getOutlinesRenderable(ctx: WebGLContext, depthTextureOpaque: Texture, depthTextureTransparent: Texture, transparentOutline: boolean): OutlinesRenderable;
|
|
17
37
|
export declare const PostprocessingParams: {
|
|
18
38
|
occlusion: PD.Mapped<PD.NamedParams<PD.Normalize<unknown>, "off"> | PD.NamedParams<PD.Normalize<{
|
|
19
39
|
samples: number;
|
|
@@ -72,6 +92,7 @@ export declare const PostprocessingParams: {
|
|
|
72
92
|
lightness: any;
|
|
73
93
|
faces: any;
|
|
74
94
|
blur: any;
|
|
95
|
+
rotation: any;
|
|
75
96
|
}>, "skybox"> | PD.NamedParams<PD.Normalize<{
|
|
76
97
|
topColor: any;
|
|
77
98
|
bottomColor: any;
|
|
@@ -79,6 +100,12 @@ export declare const PostprocessingParams: {
|
|
|
79
100
|
coverage: any;
|
|
80
101
|
}>, "horizontalGradient">;
|
|
81
102
|
}>>;
|
|
103
|
+
bloom: PD.Mapped<PD.NamedParams<PD.Normalize<unknown>, "off"> | PD.NamedParams<PD.Normalize<{
|
|
104
|
+
strength: number;
|
|
105
|
+
radius: number;
|
|
106
|
+
threshold: number;
|
|
107
|
+
mode: "luminosity" | "emissive";
|
|
108
|
+
}>, "on">>;
|
|
82
109
|
};
|
|
83
110
|
export type PostprocessingProps = PD.Values<typeof PostprocessingParams>;
|
|
84
111
|
export declare class PostprocessingPass {
|
|
@@ -115,7 +142,7 @@ export declare class PostprocessingPass {
|
|
|
115
142
|
readonly background: BackgroundPass;
|
|
116
143
|
constructor(webgl: WebGLContext, assetManager: AssetManager, drawPass: DrawPass);
|
|
117
144
|
setSize(width: number, height: number): void;
|
|
118
|
-
|
|
145
|
+
updateState(camera: ICamera, transparentBackground: boolean, backgroundColor: Color, props: PostprocessingProps, light: Light): void;
|
|
119
146
|
private occlusionOffset;
|
|
120
147
|
setOcclusionOffset(x: number, y: number): void;
|
|
121
148
|
private transparentBackground;
|
|
@@ -123,18 +150,17 @@ export declare class PostprocessingPass {
|
|
|
123
150
|
render(camera: ICamera, toDrawingBuffer: boolean, transparentBackground: boolean, backgroundColor: Color, props: PostprocessingProps, light: Light): void;
|
|
124
151
|
}
|
|
125
152
|
export declare class AntialiasingPass {
|
|
126
|
-
private drawPass;
|
|
127
153
|
static isEnabled(props: PostprocessingProps): boolean;
|
|
128
154
|
readonly target: RenderTarget;
|
|
129
155
|
private readonly internalTarget;
|
|
130
156
|
private readonly fxaa;
|
|
131
157
|
private readonly smaa;
|
|
132
158
|
private readonly cas;
|
|
133
|
-
constructor(webgl: WebGLContext,
|
|
159
|
+
constructor(webgl: WebGLContext, width: number, height: number);
|
|
134
160
|
setSize(width: number, height: number): void;
|
|
135
161
|
private _renderFxaa;
|
|
136
162
|
private _renderSmaa;
|
|
137
163
|
private _renderAntialiasing;
|
|
138
164
|
private _renderCas;
|
|
139
|
-
render(camera: ICamera, toDrawingBuffer: boolean, props: PostprocessingProps): void;
|
|
165
|
+
render(camera: ICamera, input: Texture, toDrawingBuffer: boolean | RenderTarget, props: PostprocessingProps): void;
|
|
140
166
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright (c) 2019-
|
|
2
|
+
* Copyright (c) 2019-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
|
* @author Áron Samuel Kovács <aron.kovacs@mail.muni.cz>
|
|
@@ -25,7 +25,8 @@ import { isTimingMode } from '../../mol-util/debug';
|
|
|
25
25
|
import { BackgroundParams, BackgroundPass } from './background';
|
|
26
26
|
import { shadows_frag } from '../../mol-gl/shader/shadows.frag';
|
|
27
27
|
import { CasParams, CasPass } from './cas';
|
|
28
|
-
|
|
28
|
+
import { BloomParams } from './bloom';
|
|
29
|
+
export const OutlinesSchema = {
|
|
29
30
|
...QuadSchema,
|
|
30
31
|
tDepthOpaque: TextureSpec('texture', 'rgba', 'ubyte', 'nearest'),
|
|
31
32
|
tDepthTransparent: TextureSpec('texture', 'rgba', 'ubyte', 'nearest'),
|
|
@@ -37,7 +38,7 @@ const OutlinesSchema = {
|
|
|
37
38
|
uOutlineThreshold: UniformSpec('f'),
|
|
38
39
|
dTransparentOutline: DefineSpec('boolean'),
|
|
39
40
|
};
|
|
40
|
-
function getOutlinesRenderable(ctx, depthTextureOpaque, depthTextureTransparent, transparentOutline) {
|
|
41
|
+
export function getOutlinesRenderable(ctx, depthTextureOpaque, depthTextureTransparent, transparentOutline) {
|
|
41
42
|
const width = depthTextureOpaque.getWidth();
|
|
42
43
|
const height = depthTextureOpaque.getHeight();
|
|
43
44
|
const values = {
|
|
@@ -323,6 +324,10 @@ export const PostprocessingParams = {
|
|
|
323
324
|
off: PD.Group({})
|
|
324
325
|
}, { cycle: true, description: 'Contrast Adaptive Sharpening' }),
|
|
325
326
|
background: PD.Group(BackgroundParams, { isFlat: true }),
|
|
327
|
+
bloom: PD.MappedStatic('on', {
|
|
328
|
+
on: PD.Group(BloomParams),
|
|
329
|
+
off: PD.Group({})
|
|
330
|
+
}, { cycle: true, description: 'Bloom' }),
|
|
326
331
|
};
|
|
327
332
|
function getLevels(props, levels) {
|
|
328
333
|
const count = props.length;
|
|
@@ -378,22 +383,22 @@ export class PostprocessingPass {
|
|
|
378
383
|
const qw = Math.max(1, Math.floor(sw * 0.25));
|
|
379
384
|
const qh = Math.max(1, Math.floor(sh * 0.25));
|
|
380
385
|
this.downsampledDepthTarget = drawPass.packedDepth
|
|
381
|
-
? webgl.createRenderTarget(sw, sh, false, 'uint8', '
|
|
382
|
-
: webgl.createRenderTarget(sw, sh, false, 'float32', '
|
|
386
|
+
? webgl.createRenderTarget(sw, sh, false, 'uint8', 'nearest', 'rgba')
|
|
387
|
+
: webgl.createRenderTarget(sw, sh, false, 'float32', 'nearest', webgl.isWebGL2 ? 'alpha' : 'rgba');
|
|
383
388
|
this.downsampleDepthRenderable = createCopyRenderable(webgl, depthTextureOpaque);
|
|
384
389
|
const depthTexture = this.ssaoScale === 1 ? depthTextureOpaque : this.downsampledDepthTarget.texture;
|
|
385
390
|
this.depthHalfTarget = drawPass.packedDepth
|
|
386
|
-
? webgl.createRenderTarget(hw, hh, false, 'uint8', '
|
|
387
|
-
: webgl.createRenderTarget(hw, hh, false, 'float32', '
|
|
391
|
+
? webgl.createRenderTarget(hw, hh, false, 'uint8', 'nearest', 'rgba')
|
|
392
|
+
: webgl.createRenderTarget(hw, hh, false, 'float32', 'nearest', webgl.isWebGL2 ? 'alpha' : 'rgba');
|
|
388
393
|
this.depthHalfRenderable = createCopyRenderable(webgl, depthTexture);
|
|
389
394
|
this.depthQuarterTarget = drawPass.packedDepth
|
|
390
|
-
? webgl.createRenderTarget(qw, qh, false, 'uint8', '
|
|
391
|
-
: webgl.createRenderTarget(qw, qh, false, 'float32', '
|
|
395
|
+
? webgl.createRenderTarget(qw, qh, false, 'uint8', 'nearest', 'rgba')
|
|
396
|
+
: webgl.createRenderTarget(qw, qh, false, 'float32', 'nearest', webgl.isWebGL2 ? 'alpha' : 'rgba');
|
|
392
397
|
this.depthQuarterRenderable = createCopyRenderable(webgl, this.depthHalfTarget.texture);
|
|
393
|
-
this.ssaoDepthTexture = webgl.resources.texture('image-uint8', 'rgba', 'ubyte', '
|
|
398
|
+
this.ssaoDepthTexture = webgl.resources.texture('image-uint8', 'rgba', 'ubyte', 'nearest');
|
|
394
399
|
this.ssaoDepthTexture.define(sw, sh);
|
|
395
400
|
this.ssaoDepthTexture.attachFramebuffer(this.ssaoFramebuffer, 'color0');
|
|
396
|
-
this.ssaoDepthBlurProxyTexture = webgl.resources.texture('image-uint8', 'rgba', 'ubyte', '
|
|
401
|
+
this.ssaoDepthBlurProxyTexture = webgl.resources.texture('image-uint8', 'rgba', 'ubyte', 'nearest');
|
|
397
402
|
this.ssaoDepthBlurProxyTexture.define(sw, sh);
|
|
398
403
|
this.ssaoDepthBlurProxyTexture.attachFramebuffer(this.ssaoBlurFirstPassFramebuffer, 'color0');
|
|
399
404
|
this.ssaoDepthTexture.attachFramebuffer(this.ssaoBlurSecondPassFramebuffer, 'color0');
|
|
@@ -737,11 +742,7 @@ export class AntialiasingPass {
|
|
|
737
742
|
static isEnabled(props) {
|
|
738
743
|
return props.antialiasing.name !== 'off';
|
|
739
744
|
}
|
|
740
|
-
constructor(webgl,
|
|
741
|
-
this.drawPass = drawPass;
|
|
742
|
-
const { colorTarget } = drawPass;
|
|
743
|
-
const width = colorTarget.getWidth();
|
|
744
|
-
const height = colorTarget.getHeight();
|
|
745
|
+
constructor(webgl, width, height) {
|
|
745
746
|
this.target = webgl.createRenderTarget(width, height, false);
|
|
746
747
|
this.internalTarget = webgl.createRenderTarget(width, height, false);
|
|
747
748
|
this.fxaa = new FxaaPass(webgl, this.target.texture);
|
|
@@ -760,60 +761,53 @@ export class AntialiasingPass {
|
|
|
760
761
|
this.cas.setSize(width, height);
|
|
761
762
|
}
|
|
762
763
|
}
|
|
763
|
-
_renderFxaa(camera, target, props) {
|
|
764
|
+
_renderFxaa(camera, input, target, props) {
|
|
764
765
|
if (props.antialiasing.name !== 'fxaa')
|
|
765
766
|
return;
|
|
766
|
-
const input = PostprocessingPass.isEnabled(props)
|
|
767
|
-
? this.drawPass.postprocessing.target.texture
|
|
768
|
-
: this.drawPass.colorTarget.texture;
|
|
769
767
|
this.fxaa.update(input, props.antialiasing.params);
|
|
770
768
|
this.fxaa.render(camera.viewport, target);
|
|
771
769
|
}
|
|
772
|
-
_renderSmaa(camera, target, props) {
|
|
770
|
+
_renderSmaa(camera, input, target, props) {
|
|
773
771
|
if (props.antialiasing.name !== 'smaa')
|
|
774
772
|
return;
|
|
775
|
-
const input = PostprocessingPass.isEnabled(props)
|
|
776
|
-
? this.drawPass.postprocessing.target.texture
|
|
777
|
-
: this.drawPass.colorTarget.texture;
|
|
778
773
|
this.smaa.update(input, props.antialiasing.params);
|
|
779
774
|
this.smaa.render(camera.viewport, target);
|
|
780
775
|
}
|
|
781
|
-
_renderAntialiasing(camera, target, props) {
|
|
776
|
+
_renderAntialiasing(camera, input, target, props) {
|
|
782
777
|
if (props.antialiasing.name === 'fxaa') {
|
|
783
|
-
this._renderFxaa(camera, target, props);
|
|
778
|
+
this._renderFxaa(camera, input, target, props);
|
|
784
779
|
}
|
|
785
780
|
else if (props.antialiasing.name === 'smaa') {
|
|
786
|
-
this._renderSmaa(camera, target, props);
|
|
781
|
+
this._renderSmaa(camera, input, target, props);
|
|
787
782
|
}
|
|
788
783
|
}
|
|
789
|
-
_renderCas(camera, target, props) {
|
|
784
|
+
_renderCas(camera, input, target, props) {
|
|
790
785
|
if (props.sharpening.name !== 'on')
|
|
791
786
|
return;
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
: PostprocessingPass.isEnabled(props)
|
|
795
|
-
? this.drawPass.postprocessing.target.texture
|
|
796
|
-
: this.drawPass.colorTarget.texture;
|
|
787
|
+
if (props.antialiasing.name !== 'off')
|
|
788
|
+
input = this.internalTarget.texture;
|
|
797
789
|
this.cas.update(input, props.sharpening.params);
|
|
798
790
|
this.cas.render(camera.viewport, target);
|
|
799
791
|
}
|
|
800
|
-
render(camera, toDrawingBuffer, props) {
|
|
792
|
+
render(camera, input, toDrawingBuffer, props) {
|
|
801
793
|
if (props.antialiasing.name === 'off' && props.sharpening.name === 'off')
|
|
802
794
|
return;
|
|
803
795
|
if (props.antialiasing.name === 'smaa' && !this.smaa.supported) {
|
|
804
796
|
console.error('SMAA not supported, missing "HTMLImageElement"');
|
|
805
797
|
return;
|
|
806
798
|
}
|
|
807
|
-
const target = toDrawingBuffer
|
|
799
|
+
const target = toDrawingBuffer === true
|
|
800
|
+
? undefined : toDrawingBuffer === false
|
|
801
|
+
? this.target : toDrawingBuffer;
|
|
808
802
|
if (props.sharpening.name === 'off') {
|
|
809
|
-
this._renderAntialiasing(camera, target, props);
|
|
803
|
+
this._renderAntialiasing(camera, input, target, props);
|
|
810
804
|
}
|
|
811
805
|
else if (props.antialiasing.name === 'off') {
|
|
812
|
-
this._renderCas(camera, target, props);
|
|
806
|
+
this._renderCas(camera, input, target, props);
|
|
813
807
|
}
|
|
814
808
|
else {
|
|
815
|
-
this._renderAntialiasing(camera, this.internalTarget, props);
|
|
816
|
-
this._renderCas(camera, target, props);
|
|
809
|
+
this._renderAntialiasing(camera, input, this.internalTarget, props);
|
|
810
|
+
this._renderCas(camera, input, target, props);
|
|
817
811
|
}
|
|
818
812
|
}
|
|
819
813
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright (c) 2018-
|
|
2
|
+
* Copyright (c) 2018-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
|
*/
|
|
@@ -61,6 +61,7 @@ export declare namespace BaseGeometry {
|
|
|
61
61
|
scale: any;
|
|
62
62
|
}>[];
|
|
63
63
|
}>>;
|
|
64
|
+
emissive: PD.Numeric;
|
|
64
65
|
instanceGranularity: PD.BooleanParam;
|
|
65
66
|
lod: PD.Vec3;
|
|
66
67
|
cellSize: PD.Numeric;
|
|
@@ -87,6 +88,7 @@ export declare namespace BaseGeometry {
|
|
|
87
88
|
uMetalness: ValueCell<number, never>;
|
|
88
89
|
uRoughness: ValueCell<number, never>;
|
|
89
90
|
uBumpiness: ValueCell<number, never>;
|
|
91
|
+
uEmissive: ValueCell<number, never>;
|
|
90
92
|
dLightCount: ValueCell<number, never>;
|
|
91
93
|
dColorMarker: ValueCell<boolean, never>;
|
|
92
94
|
dClipObjectCount: ValueCell<number, never>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright (c) 2018-
|
|
2
|
+
* Copyright (c) 2018-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
|
*/
|
|
@@ -76,6 +76,7 @@ export var BaseGeometry;
|
|
|
76
76
|
quality: PD.Select('auto', VisualQualityOptions, { isEssential: true, description: 'Visual/rendering quality of the representation.' }),
|
|
77
77
|
material: Material.getParam(),
|
|
78
78
|
clip: PD.Group(Clip.Params),
|
|
79
|
+
emissive: PD.Numeric(0, { min: 0, max: 1, step: 0.01 }),
|
|
79
80
|
instanceGranularity: PD.Boolean(false, { description: 'Use instance granularity for marker, transparency, clipping, overpaint, substance data to save memory.' }),
|
|
80
81
|
lod: PD.Vec3(Vec3(), undefined, { ...BaseGeometry.CullingLodCategory, description: 'Level of detail.', fieldLabels: { x: 'Min Distance', y: 'Max Distance', z: 'Overlap (Shader)' } }),
|
|
81
82
|
cellSize: PD.Numeric(200, { min: 0, max: 5000, step: 100 }, { ...BaseGeometry.CullingLodCategory, description: 'Instance grid cell size.' }),
|
|
@@ -103,6 +104,7 @@ export var BaseGeometry;
|
|
|
103
104
|
uMetalness: ValueCell.create(props.material.metalness),
|
|
104
105
|
uRoughness: ValueCell.create(props.material.roughness),
|
|
105
106
|
uBumpiness: ValueCell.create(props.material.bumpiness),
|
|
107
|
+
uEmissive: ValueCell.create(props.emissive),
|
|
106
108
|
dLightCount: ValueCell.create(1),
|
|
107
109
|
dColorMarker: ValueCell.create(true),
|
|
108
110
|
dClipObjectCount: ValueCell.create(clip.objects.count),
|
|
@@ -122,6 +124,7 @@ export var BaseGeometry;
|
|
|
122
124
|
ValueCell.updateIfChanged(values.uMetalness, props.material.metalness);
|
|
123
125
|
ValueCell.updateIfChanged(values.uRoughness, props.material.roughness);
|
|
124
126
|
ValueCell.updateIfChanged(values.uBumpiness, props.material.bumpiness);
|
|
127
|
+
ValueCell.updateIfChanged(values.uEmissive, props.emissive);
|
|
125
128
|
const clip = Clip.getClip(props.clip);
|
|
126
129
|
ValueCell.updateIfChanged(values.dClipObjectCount, clip.objects.count);
|
|
127
130
|
ValueCell.updateIfChanged(values.dClipVariant, clip.variant);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright (c) 2020-
|
|
2
|
+
* Copyright (c) 2020-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
|
* @author Gianluca Tomasello <giagitom@gmail.com>
|
|
@@ -73,6 +73,7 @@ export declare namespace Cylinders {
|
|
|
73
73
|
scale: any;
|
|
74
74
|
}>[];
|
|
75
75
|
}>>;
|
|
76
|
+
emissive: PD.Numeric;
|
|
76
77
|
instanceGranularity: PD.BooleanParam;
|
|
77
78
|
lod: PD.Vec3;
|
|
78
79
|
cellSize: PD.Numeric;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright (c) 2020-
|
|
2
|
+
* Copyright (c) 2020-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
|
* @author Gianluca Tomasello <giagitom@gmail.com>
|
|
@@ -20,6 +20,7 @@ import { createEmptyTransparency } from '../transparency-data';
|
|
|
20
20
|
import { hashFnv32a } from '../../../mol-data/util';
|
|
21
21
|
import { createEmptyClipping } from '../clipping-data';
|
|
22
22
|
import { createEmptySubstance } from '../substance-data';
|
|
23
|
+
import { createEmptyEmissive } from '../emissive-data';
|
|
23
24
|
export var Cylinders;
|
|
24
25
|
(function (Cylinders) {
|
|
25
26
|
function create(mappings, indices, groups, starts, ends, scales, caps, colorModes, cylinderCount, cylinders) {
|
|
@@ -164,6 +165,7 @@ export var Cylinders;
|
|
|
164
165
|
: createMarkers(instanceCount * groupCount, 'groupInstance');
|
|
165
166
|
const overpaint = createEmptyOverpaint();
|
|
166
167
|
const transparency = createEmptyTransparency();
|
|
168
|
+
const emissive = createEmptyEmissive();
|
|
167
169
|
const material = createEmptySubstance();
|
|
168
170
|
const clipping = createEmptyClipping();
|
|
169
171
|
const counts = { drawCount: cylinders.cylinderCount * 4 * 3, vertexCount: cylinders.cylinderCount * 6, groupCount, instanceCount };
|
|
@@ -188,6 +190,7 @@ export var Cylinders;
|
|
|
188
190
|
...marker,
|
|
189
191
|
...overpaint,
|
|
190
192
|
...transparency,
|
|
193
|
+
...emissive,
|
|
191
194
|
...material,
|
|
192
195
|
...clipping,
|
|
193
196
|
...transform,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright (c) 2018-
|
|
2
|
+
* Copyright (c) 2018-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
|
*/
|
|
@@ -55,6 +55,7 @@ export declare namespace DirectVolume {
|
|
|
55
55
|
scale: any;
|
|
56
56
|
}>[];
|
|
57
57
|
}>>;
|
|
58
|
+
emissive: PD.Numeric;
|
|
58
59
|
instanceGranularity: PD.BooleanParam;
|
|
59
60
|
lod: PD.Vec3;
|
|
60
61
|
cellSize: PD.Numeric;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright (c) 2018-
|
|
2
|
+
* Copyright (c) 2018-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
|
*/
|
|
@@ -21,6 +21,7 @@ import { createTransferFunctionTexture, getControlPointsFromVec2Array } from './
|
|
|
21
21
|
import { createEmptyClipping } from '../clipping-data';
|
|
22
22
|
import { Grid } from '../../../mol-model/volume';
|
|
23
23
|
import { createEmptySubstance } from '../substance-data';
|
|
24
|
+
import { createEmptyEmissive } from '../emissive-data';
|
|
24
25
|
const VolumeBox = Box();
|
|
25
26
|
export var DirectVolume;
|
|
26
27
|
(function (DirectVolume) {
|
|
@@ -169,6 +170,7 @@ export var DirectVolume;
|
|
|
169
170
|
: createMarkers(instanceCount * groupCount, 'groupInstance');
|
|
170
171
|
const overpaint = createEmptyOverpaint();
|
|
171
172
|
const transparency = createEmptyTransparency();
|
|
173
|
+
const emissive = createEmptyEmissive();
|
|
172
174
|
const material = createEmptySubstance();
|
|
173
175
|
const clipping = createEmptyClipping();
|
|
174
176
|
const [x, y, z] = gridDimension.ref.value;
|
|
@@ -183,6 +185,7 @@ export var DirectVolume;
|
|
|
183
185
|
...marker,
|
|
184
186
|
...overpaint,
|
|
185
187
|
...transparency,
|
|
188
|
+
...emissive,
|
|
186
189
|
...material,
|
|
187
190
|
...clipping,
|
|
188
191
|
...transform,
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2024 mol* contributors, licensed under MIT, See LICENSE file for more info.
|
|
3
|
+
*
|
|
4
|
+
* @author Alexander Rose <alexander.rose@weirdbyte.de>
|
|
5
|
+
*/
|
|
6
|
+
import { ValueCell } from '../../mol-util/value-cell';
|
|
7
|
+
import { Vec2, Vec3, Vec4 } from '../../mol-math/linear-algebra';
|
|
8
|
+
import { TextureImage } from '../../mol-gl/renderable/util';
|
|
9
|
+
import { Texture } from '../../mol-gl/webgl/texture';
|
|
10
|
+
export type EmissiveType = 'instance' | 'groupInstance' | 'volumeInstance';
|
|
11
|
+
export type EmissiveData = {
|
|
12
|
+
tEmissive: ValueCell<TextureImage<Uint8Array>>;
|
|
13
|
+
uEmissiveTexDim: ValueCell<Vec2>;
|
|
14
|
+
dEmissive: ValueCell<boolean>;
|
|
15
|
+
emissiveAverage: ValueCell<number>;
|
|
16
|
+
tEmissiveGrid: ValueCell<Texture>;
|
|
17
|
+
uEmissiveGridDim: ValueCell<Vec3>;
|
|
18
|
+
uEmissiveGridTransform: ValueCell<Vec4>;
|
|
19
|
+
dEmissiveType: ValueCell<string>;
|
|
20
|
+
uEmissiveStrength: ValueCell<number>;
|
|
21
|
+
};
|
|
22
|
+
export declare function applyEmissiveValue(array: Uint8Array, start: number, end: number, value: number): boolean;
|
|
23
|
+
export declare function getEmissiveAverage(array: Uint8Array, count: number): number;
|
|
24
|
+
export declare function clearEmissive(array: Uint8Array, start: number, end: number): void;
|
|
25
|
+
export declare function createEmissive(count: number, type: EmissiveType, emissiveData?: EmissiveData): EmissiveData;
|
|
26
|
+
export declare function createEmptyEmissive(emissiveData?: EmissiveData): EmissiveData;
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2024 mol* contributors, licensed under MIT, See LICENSE file for more info.
|
|
3
|
+
*
|
|
4
|
+
* @author Alexander Rose <alexander.rose@weirdbyte.de>
|
|
5
|
+
*/
|
|
6
|
+
import { ValueCell } from '../../mol-util/value-cell';
|
|
7
|
+
import { Vec2, Vec3, Vec4 } from '../../mol-math/linear-algebra';
|
|
8
|
+
import { createTextureImage } from '../../mol-gl/renderable/util';
|
|
9
|
+
import { createNullTexture } from '../../mol-gl/webgl/texture';
|
|
10
|
+
export function applyEmissiveValue(array, start, end, value) {
|
|
11
|
+
for (let i = start; i < end; ++i) {
|
|
12
|
+
array[i] = value * 255;
|
|
13
|
+
}
|
|
14
|
+
return true;
|
|
15
|
+
}
|
|
16
|
+
export function getEmissiveAverage(array, count) {
|
|
17
|
+
if (count === 0 || array.length < count)
|
|
18
|
+
return 0;
|
|
19
|
+
let sum = 0;
|
|
20
|
+
for (let i = 0; i < count; ++i) {
|
|
21
|
+
sum += array[i];
|
|
22
|
+
}
|
|
23
|
+
return sum / (255 * count);
|
|
24
|
+
}
|
|
25
|
+
export function clearEmissive(array, start, end) {
|
|
26
|
+
array.fill(0, start, end);
|
|
27
|
+
}
|
|
28
|
+
export function createEmissive(count, type, emissiveData) {
|
|
29
|
+
const emissive = createTextureImage(Math.max(1, count), 1, Uint8Array, emissiveData && emissiveData.tEmissive.ref.value.array);
|
|
30
|
+
if (emissiveData) {
|
|
31
|
+
ValueCell.update(emissiveData.tEmissive, emissive);
|
|
32
|
+
ValueCell.update(emissiveData.uEmissiveTexDim, Vec2.create(emissive.width, emissive.height));
|
|
33
|
+
ValueCell.updateIfChanged(emissiveData.dEmissive, count > 0);
|
|
34
|
+
ValueCell.updateIfChanged(emissiveData.emissiveAverage, getEmissiveAverage(emissive.array, count));
|
|
35
|
+
ValueCell.updateIfChanged(emissiveData.dEmissiveType, type);
|
|
36
|
+
return emissiveData;
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
return {
|
|
40
|
+
tEmissive: ValueCell.create(emissive),
|
|
41
|
+
uEmissiveTexDim: ValueCell.create(Vec2.create(emissive.width, emissive.height)),
|
|
42
|
+
dEmissive: ValueCell.create(count > 0),
|
|
43
|
+
emissiveAverage: ValueCell.create(0),
|
|
44
|
+
tEmissiveGrid: ValueCell.create(createNullTexture()),
|
|
45
|
+
uEmissiveGridDim: ValueCell.create(Vec3.create(1, 1, 1)),
|
|
46
|
+
uEmissiveGridTransform: ValueCell.create(Vec4.create(0, 0, 0, 1)),
|
|
47
|
+
dEmissiveType: ValueCell.create(type),
|
|
48
|
+
uEmissiveStrength: ValueCell.create(1),
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
const emptyEmissiveTexture = { array: new Uint8Array(1), width: 1, height: 1 };
|
|
53
|
+
export function createEmptyEmissive(emissiveData) {
|
|
54
|
+
if (emissiveData) {
|
|
55
|
+
ValueCell.update(emissiveData.tEmissive, emptyEmissiveTexture);
|
|
56
|
+
ValueCell.update(emissiveData.uEmissiveTexDim, Vec2.create(1, 1));
|
|
57
|
+
return emissiveData;
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
return {
|
|
61
|
+
tEmissive: ValueCell.create(emptyEmissiveTexture),
|
|
62
|
+
uEmissiveTexDim: ValueCell.create(Vec2.create(1, 1)),
|
|
63
|
+
dEmissive: ValueCell.create(false),
|
|
64
|
+
emissiveAverage: ValueCell.create(0),
|
|
65
|
+
tEmissiveGrid: ValueCell.create(createNullTexture()),
|
|
66
|
+
uEmissiveGridDim: ValueCell.create(Vec3.create(1, 1, 1)),
|
|
67
|
+
uEmissiveGridTransform: ValueCell.create(Vec4.create(0, 0, 0, 1)),
|
|
68
|
+
dEmissiveType: ValueCell.create('groupInstance'),
|
|
69
|
+
uEmissiveStrength: ValueCell.create(1),
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright (c) 2020-
|
|
2
|
+
* Copyright (c) 2020-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
|
*/
|
|
@@ -49,6 +49,7 @@ declare namespace Image {
|
|
|
49
49
|
scale: any;
|
|
50
50
|
}>[];
|
|
51
51
|
}>>;
|
|
52
|
+
emissive: PD.Numeric;
|
|
52
53
|
instanceGranularity: PD.BooleanParam;
|
|
53
54
|
lod: PD.Vec3;
|
|
54
55
|
cellSize: PD.Numeric;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright (c) 2020-
|
|
2
|
+
* Copyright (c) 2020-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
|
*/
|
|
@@ -20,6 +20,7 @@ import { createEmptyClipping } from '../clipping-data';
|
|
|
20
20
|
import { NullLocation } from '../../../mol-model/location';
|
|
21
21
|
import { QuadPositions } from '../../../mol-gl/compute/util';
|
|
22
22
|
import { createEmptySubstance } from '../substance-data';
|
|
23
|
+
import { createEmptyEmissive } from '../emissive-data';
|
|
23
24
|
const QuadIndices = new Uint32Array([
|
|
24
25
|
0, 1, 2,
|
|
25
26
|
1, 3, 2
|
|
@@ -114,6 +115,7 @@ var Image;
|
|
|
114
115
|
: createMarkers(instanceCount * groupCount, 'groupInstance');
|
|
115
116
|
const overpaint = createEmptyOverpaint();
|
|
116
117
|
const transparency = createEmptyTransparency();
|
|
118
|
+
const emissive = createEmptyEmissive();
|
|
117
119
|
const material = createEmptySubstance();
|
|
118
120
|
const clipping = createEmptyClipping();
|
|
119
121
|
const counts = { drawCount: QuadIndices.length, vertexCount: QuadPositions.length / 3, groupCount, instanceCount };
|
|
@@ -125,6 +127,7 @@ var Image;
|
|
|
125
127
|
...marker,
|
|
126
128
|
...overpaint,
|
|
127
129
|
...transparency,
|
|
130
|
+
...emissive,
|
|
128
131
|
...material,
|
|
129
132
|
...clipping,
|
|
130
133
|
...transform,
|