molstar 4.3.0 → 4.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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.css +1 -1
- 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 +1 -1
- package/lib/apps/docking-viewer/viewport.js +2 -1
- package/lib/apps/mesoscale-explorer/app.d.ts +3 -1
- package/lib/apps/mesoscale-explorer/app.js +12 -1
- package/lib/apps/mesoscale-explorer/behavior/camera.d.ts +12 -0
- package/lib/apps/mesoscale-explorer/behavior/camera.js +32 -6
- package/lib/apps/mesoscale-explorer/behavior/select.d.ts +1 -0
- package/lib/apps/mesoscale-explorer/behavior/select.js +58 -9
- package/lib/apps/mesoscale-explorer/data/cellpack/model.js +4 -6
- package/lib/apps/mesoscale-explorer/data/cellpack/preset.js +8 -5
- package/lib/apps/mesoscale-explorer/data/generic/model.d.ts +1 -0
- package/lib/apps/mesoscale-explorer/data/generic/model.js +2 -1
- package/lib/apps/mesoscale-explorer/data/generic/preset.js +7 -6
- package/lib/apps/mesoscale-explorer/data/mmcif/model.js +3 -1
- package/lib/apps/mesoscale-explorer/data/mmcif/preset.js +6 -3
- package/lib/apps/mesoscale-explorer/data/petworld/model.js +3 -1
- package/lib/apps/mesoscale-explorer/data/petworld/preset.js +6 -3
- package/lib/apps/mesoscale-explorer/data/state.d.ts +48 -10
- package/lib/apps/mesoscale-explorer/data/state.js +83 -8
- package/lib/apps/mesoscale-explorer/index.html +106 -101
- package/lib/apps/mesoscale-explorer/style.scss +66 -33
- package/lib/apps/mesoscale-explorer/ui/entities.d.ts +23 -1
- package/lib/apps/mesoscale-explorer/ui/entities.js +301 -32
- package/lib/apps/mesoscale-explorer/ui/panels.d.ts +1 -0
- package/lib/apps/mesoscale-explorer/ui/panels.js +42 -5
- package/lib/apps/mesoscale-explorer/ui/states.d.ts +60 -2
- package/lib/apps/mesoscale-explorer/ui/states.js +471 -11
- package/lib/apps/viewer/app.d.ts +10 -4
- package/lib/apps/viewer/app.js +28 -0
- package/lib/apps/viewer/embedded.html +52 -52
- package/lib/apps/viewer/index.html +129 -129
- package/lib/cli/chem-comp-dict/create-ions.js +9 -9
- package/lib/cli/chem-comp-dict/create-saccharides.js +9 -9
- package/lib/cli/cifschema/util/generate.js +12 -12
- package/lib/cli/lipid-params/index.js +9 -9
- package/lib/commonjs/apps/docking-viewer/viewport.d.ts +1 -1
- package/lib/commonjs/apps/docking-viewer/viewport.js +2 -1
- package/lib/commonjs/apps/mesoscale-explorer/app.d.ts +3 -1
- package/lib/commonjs/apps/mesoscale-explorer/app.js +12 -1
- package/lib/commonjs/apps/mesoscale-explorer/behavior/camera.d.ts +12 -0
- package/lib/commonjs/apps/mesoscale-explorer/behavior/camera.js +34 -8
- package/lib/commonjs/apps/mesoscale-explorer/behavior/select.d.ts +1 -0
- package/lib/commonjs/apps/mesoscale-explorer/behavior/select.js +58 -9
- package/lib/commonjs/apps/mesoscale-explorer/data/cellpack/model.js +4 -6
- package/lib/commonjs/apps/mesoscale-explorer/data/cellpack/preset.js +8 -6
- package/lib/commonjs/apps/mesoscale-explorer/data/generic/model.d.ts +1 -0
- package/lib/commonjs/apps/mesoscale-explorer/data/generic/model.js +2 -1
- package/lib/commonjs/apps/mesoscale-explorer/data/generic/preset.js +9 -9
- package/lib/commonjs/apps/mesoscale-explorer/data/mmcif/model.js +3 -1
- package/lib/commonjs/apps/mesoscale-explorer/data/mmcif/preset.js +6 -4
- package/lib/commonjs/apps/mesoscale-explorer/data/petworld/model.js +3 -1
- package/lib/commonjs/apps/mesoscale-explorer/data/petworld/preset.js +6 -4
- package/lib/commonjs/apps/mesoscale-explorer/data/state.d.ts +48 -10
- package/lib/commonjs/apps/mesoscale-explorer/data/state.js +107 -28
- package/lib/commonjs/apps/mesoscale-explorer/data/util.js +2 -3
- package/lib/commonjs/apps/mesoscale-explorer/ui/entities.d.ts +23 -1
- package/lib/commonjs/apps/mesoscale-explorer/ui/entities.js +302 -30
- package/lib/commonjs/apps/mesoscale-explorer/ui/panels.d.ts +1 -0
- package/lib/commonjs/apps/mesoscale-explorer/ui/panels.js +39 -2
- package/lib/commonjs/apps/mesoscale-explorer/ui/states.d.ts +60 -2
- package/lib/commonjs/apps/mesoscale-explorer/ui/states.js +477 -13
- package/lib/commonjs/apps/viewer/app.d.ts +10 -4
- package/lib/commonjs/apps/viewer/app.js +28 -0
- package/lib/commonjs/cli/chem-comp-dict/create-ions.js +9 -9
- package/lib/commonjs/cli/chem-comp-dict/create-saccharides.js +9 -9
- package/lib/commonjs/cli/chem-comp-dict/util.js +7 -7
- package/lib/commonjs/cli/cif2bcif/converter.js +1 -2
- package/lib/commonjs/cli/cifschema/util/cif-dic.js +2 -3
- package/lib/commonjs/cli/cifschema/util/generate.js +13 -14
- package/lib/commonjs/cli/cifschema/util/helper.js +1 -2
- package/lib/commonjs/cli/cifschema/util/schema.js +9 -10
- package/lib/commonjs/cli/lipid-params/index.js +9 -9
- package/lib/commonjs/cli/state-docs/pd-to-md.js +1 -2
- package/lib/commonjs/cli/structure-info/helpers.js +2 -3
- package/lib/commonjs/cli/structure-info/model.js +11 -12
- package/lib/commonjs/examples/alpha-orbitals/controls.js +1 -2
- package/lib/commonjs/examples/alpha-orbitals/example-data.js +160 -160
- package/lib/commonjs/examples/basic-wrapper/custom-theme.js +2 -2
- package/lib/commonjs/examples/basic-wrapper/superposition.js +3 -3
- package/lib/commonjs/examples/domain-annotation-server/mapping.js +1 -2
- package/lib/commonjs/examples/lighting/index.d.ts +1 -1
- package/lib/commonjs/examples/lighting/index.js +2 -1
- package/lib/commonjs/examples/proteopedia-wrapper/coloring.d.ts +5 -20
- package/lib/commonjs/examples/proteopedia-wrapper/coloring.js +1 -2
- package/lib/commonjs/examples/proteopedia-wrapper/ui/controls.js +1 -2
- package/lib/commonjs/examples/task.js +6 -6
- package/lib/commonjs/extensions/alpha-orbitals/collocation.js +1 -2
- package/lib/commonjs/extensions/alpha-orbitals/data-model.js +4 -5
- package/lib/commonjs/extensions/alpha-orbitals/density.js +2 -3
- package/lib/commonjs/extensions/alpha-orbitals/gpu/compute.js +2 -3
- package/lib/commonjs/extensions/alpha-orbitals/gpu/shader.frag.js +136 -136
- package/lib/commonjs/extensions/alpha-orbitals/orbitals.js +2 -3
- package/lib/commonjs/extensions/alpha-orbitals/spherical-functions.js +2 -2
- package/lib/commonjs/extensions/alpha-orbitals/transforms.d.ts +3 -3
- package/lib/commonjs/extensions/anvil/algorithm.js +5 -5
- package/lib/commonjs/extensions/anvil/behavior.d.ts +1 -0
- package/lib/commonjs/extensions/anvil/behavior.js +2 -2
- package/lib/commonjs/extensions/anvil/representation.d.ts +4 -0
- package/lib/commonjs/extensions/anvil/representation.js +3 -3
- package/lib/commonjs/extensions/assembly-symmetry/behavior.d.ts +1 -0
- package/lib/commonjs/extensions/assembly-symmetry/behavior.js +3 -3
- package/lib/commonjs/extensions/assembly-symmetry/color.d.ts +2 -2
- package/lib/commonjs/extensions/assembly-symmetry/color.js +3 -3
- package/lib/commonjs/extensions/assembly-symmetry/prop.js +27 -27
- package/lib/commonjs/extensions/assembly-symmetry/representation.d.ts +1 -0
- package/lib/commonjs/extensions/assembly-symmetry/representation.js +2 -2
- package/lib/commonjs/extensions/dnatco/confal-pyramids/behavior.js +7 -7
- package/lib/commonjs/extensions/dnatco/confal-pyramids/color.js +3 -3
- package/lib/commonjs/extensions/dnatco/confal-pyramids/representation.d.ts +3 -0
- package/lib/commonjs/extensions/dnatco/confal-pyramids/representation.js +3 -3
- package/lib/commonjs/extensions/dnatco/ntc-tube/behavior.js +7 -7
- package/lib/commonjs/extensions/dnatco/ntc-tube/color.js +3 -3
- package/lib/commonjs/extensions/dnatco/ntc-tube/representation.d.ts +3 -0
- package/lib/commonjs/extensions/dnatco/ntc-tube/representation.js +3 -3
- package/lib/commonjs/extensions/g3d/data.js +2 -3
- package/lib/commonjs/extensions/g3d/format.d.ts +3 -3
- package/lib/commonjs/extensions/g3d/model.js +5 -5
- package/lib/commonjs/extensions/geo-export/mesh-exporter.d.ts +2 -2
- package/lib/commonjs/extensions/geo-export/ui.d.ts +0 -1
- package/lib/commonjs/extensions/geo-export/usdz-exporter.js +41 -41
- package/lib/commonjs/extensions/meshes/examples.js +9 -9
- package/lib/commonjs/extensions/meshes/mesh-extension.d.ts +3 -6
- package/lib/commonjs/extensions/meshes/mesh-extension.js +2 -2
- package/lib/commonjs/extensions/meshes/mesh-streaming/behavior.d.ts +3 -3
- package/lib/commonjs/extensions/meshes/mesh-streaming/server-info.d.ts +3 -3
- package/lib/commonjs/extensions/meshes/mesh-utils.js +9 -9
- package/lib/commonjs/extensions/model-archive/quality-assessment/color/plddt.d.ts +1 -1
- package/lib/commonjs/extensions/model-archive/quality-assessment/color/plddt.js +11 -8
- package/lib/commonjs/extensions/model-archive/quality-assessment/color/qmean.js +3 -3
- package/lib/commonjs/extensions/model-export/export.js +2 -2
- package/lib/commonjs/extensions/model-export/ui.d.ts +0 -1
- package/lib/commonjs/extensions/mp4-export/controls.d.ts +1 -1
- package/lib/commonjs/extensions/mp4-export/encoder.js +1 -2
- package/lib/commonjs/extensions/mp4-export/ui.d.ts +0 -1
- package/lib/commonjs/extensions/mvs/camera.js +4 -5
- package/lib/commonjs/extensions/mvs/components/annotation-color-theme.js +2 -2
- package/lib/commonjs/extensions/mvs/components/annotation-label/representation.d.ts +32 -32
- package/lib/commonjs/extensions/mvs/components/annotation-label/representation.js +2 -2
- package/lib/commonjs/extensions/mvs/components/annotation-label/visual.d.ts +16 -16
- package/lib/commonjs/extensions/mvs/components/annotation-label/visual.js +2 -2
- package/lib/commonjs/extensions/mvs/components/annotation-prop.js +2 -2
- package/lib/commonjs/extensions/mvs/components/annotation-structure-component.js +4 -4
- package/lib/commonjs/extensions/mvs/components/custom-label/representation.d.ts +32 -32
- package/lib/commonjs/extensions/mvs/components/custom-label/representation.js +2 -2
- package/lib/commonjs/extensions/mvs/components/custom-label/visual.d.ts +16 -16
- package/lib/commonjs/extensions/mvs/components/custom-label/visual.js +2 -2
- package/lib/commonjs/extensions/mvs/components/formats.d.ts +6 -6
- package/lib/commonjs/extensions/mvs/components/formats.js +2 -2
- package/lib/commonjs/extensions/mvs/components/is-mvs-model-prop.js +3 -3
- package/lib/commonjs/extensions/mvs/components/multilayer-color-theme.js +3 -3
- package/lib/commonjs/extensions/mvs/components/selector.js +3 -3
- package/lib/commonjs/extensions/mvs/helpers/indexing.d.ts +2 -2
- package/lib/commonjs/extensions/mvs/helpers/label-text.js +1 -2
- package/lib/commonjs/extensions/mvs/helpers/param-definition.js +2 -3
- package/lib/commonjs/extensions/mvs/helpers/schemas.d.ts +1 -1
- package/lib/commonjs/extensions/mvs/helpers/schemas.js +2 -2
- package/lib/commonjs/extensions/mvs/helpers/selections.js +6 -7
- package/lib/commonjs/extensions/mvs/helpers/utils.d.ts +1 -1
- package/lib/commonjs/extensions/mvs/helpers/utils.js +7 -7
- package/lib/commonjs/extensions/mvs/load-helpers.d.ts +1 -1
- package/lib/commonjs/extensions/mvs/load-helpers.js +17 -17
- package/lib/commonjs/extensions/mvs/load.js +1 -2
- package/lib/commonjs/extensions/mvs/tree/generic/params-schema.js +8 -8
- package/lib/commonjs/extensions/mvs/tree/generic/tree-schema.js +8 -9
- package/lib/commonjs/extensions/mvs/tree/generic/tree-utils.js +10 -11
- package/lib/commonjs/extensions/mvs/tree/molstar/conversion.js +4 -4
- package/lib/commonjs/extensions/mvs/tree/mvs/mvs-builder.d.ts +0 -8
- package/lib/commonjs/extensions/mvs/tree/mvs/mvs-builder.js +3 -3
- package/lib/commonjs/extensions/pdbe/structure-quality-report/color.js +2 -2
- package/lib/commonjs/extensions/rcsb/validation-report/color/density-fit.js +2 -2
- package/lib/commonjs/extensions/rcsb/validation-report/color/geometry-quality.js +3 -3
- package/lib/commonjs/extensions/rcsb/validation-report/color/random-coil-index.js +2 -2
- package/lib/commonjs/extensions/rcsb/validation-report/representation.d.ts +5 -0
- package/lib/commonjs/extensions/rcsb/validation-report/representation.js +5 -5
- package/lib/commonjs/extensions/sb-ncbr/partial-charges/color.js +3 -3
- package/lib/commonjs/extensions/sb-ncbr/partial-charges/labels.js +1 -2
- package/lib/commonjs/extensions/sb-ncbr/partial-charges/property.js +2 -2
- package/lib/commonjs/extensions/sb-ncbr/tunnels/algorithm.js +2 -3
- package/lib/commonjs/extensions/sb-ncbr/tunnels/behavior.js +2 -2
- package/lib/commonjs/extensions/sb-ncbr/tunnels/data-model.d.ts +6 -6
- package/lib/commonjs/extensions/sb-ncbr/tunnels/examples.js +3 -3
- package/lib/commonjs/extensions/sb-ncbr/tunnels/props.js +2 -2
- package/lib/commonjs/extensions/volumes-and-segmentations/entry-root.d.ts +3 -3
- package/lib/commonjs/extensions/volumes-and-segmentations/entry-root.js +3 -3
- package/lib/commonjs/extensions/volumes-and-segmentations/entry-state.d.ts +3 -3
- package/lib/commonjs/extensions/volumes-and-segmentations/external-api.js +2 -3
- package/lib/commonjs/extensions/volumes-and-segmentations/global-state.d.ts +3 -3
- package/lib/commonjs/extensions/volumes-and-segmentations/helpers.js +6 -6
- package/lib/commonjs/extensions/volumes-and-segmentations/ui.d.ts +0 -1
- package/lib/commonjs/extensions/zenodo/ui.d.ts +0 -1
- package/lib/commonjs/mol-canvas3d/camera/transition.d.ts +1 -1
- package/lib/commonjs/mol-canvas3d/camera/transition.js +23 -6
- package/lib/commonjs/mol-canvas3d/camera/util.js +3 -4
- package/lib/commonjs/mol-canvas3d/canvas3d.d.ts +9 -1
- package/lib/commonjs/mol-canvas3d/helper/bounding-sphere-helper.d.ts +1 -6
- package/lib/commonjs/mol-canvas3d/helper/camera-helper.js +2 -2
- package/lib/commonjs/mol-canvas3d/helper/handle-helper.d.ts +1 -0
- package/lib/commonjs/mol-canvas3d/helper/handle-helper.js +2 -2
- package/lib/commonjs/mol-canvas3d/helper/helper.d.ts +2 -0
- package/lib/commonjs/mol-canvas3d/passes/image.d.ts +2 -0
- package/lib/commonjs/mol-canvas3d/passes/multi-sample.d.ts +2 -1
- package/lib/commonjs/mol-canvas3d/passes/multi-sample.js +4 -3
- package/lib/commonjs/mol-canvas3d/passes/postprocessing.d.ts +1 -0
- package/lib/commonjs/mol-canvas3d/passes/postprocessing.js +7 -2
- package/lib/commonjs/mol-canvas3d/util.js +3 -4
- package/lib/commonjs/mol-data/db/column-helpers.js +6 -7
- package/lib/commonjs/mol-data/db/column.d.ts +1 -1
- package/lib/commonjs/mol-data/generic/hash-set.js +1 -2
- package/lib/commonjs/mol-data/generic/linked-list.js +1 -2
- package/lib/commonjs/mol-data/int/impl/interval.js +15 -15
- package/lib/commonjs/mol-data/int/impl/ordered-set.js +25 -25
- package/lib/commonjs/mol-data/int/impl/segmentation.js +7 -7
- package/lib/commonjs/mol-data/int/impl/sorted-array.js +31 -31
- package/lib/commonjs/mol-data/int/linked-index.js +1 -2
- package/lib/commonjs/mol-data/util/array.js +5 -6
- package/lib/commonjs/mol-data/util/buckets.js +1 -2
- package/lib/commonjs/mol-data/util/combination.js +2 -2
- package/lib/commonjs/mol-data/util/equivalence-classes.js +2 -2
- package/lib/commonjs/mol-data/util/grouping.js +2 -3
- package/lib/commonjs/mol-data/util/hash-functions.js +9 -10
- package/lib/commonjs/mol-data/util/sort.js +5 -6
- package/lib/commonjs/mol-geo/geometry/base.d.ts +1 -1
- package/lib/commonjs/mol-geo/geometry/base.js +3 -3
- package/lib/commonjs/mol-geo/geometry/clipping-data.js +4 -5
- package/lib/commonjs/mol-geo/geometry/color-data.js +4 -5
- package/lib/commonjs/mol-geo/geometry/cylinders/cylinders.d.ts +1 -0
- package/lib/commonjs/mol-geo/geometry/cylinders/cylinders.js +3 -0
- package/lib/commonjs/mol-geo/geometry/direct-volume/direct-volume.d.ts +1 -0
- package/lib/commonjs/mol-geo/geometry/direct-volume/direct-volume.js +3 -0
- package/lib/commonjs/mol-geo/geometry/direct-volume/transfer-function.js +3 -4
- package/lib/commonjs/mol-geo/geometry/emissive-data.js +5 -6
- package/lib/commonjs/mol-geo/geometry/image/image.d.ts +1 -1
- package/lib/commonjs/mol-geo/geometry/marker-data.js +3 -4
- package/lib/commonjs/mol-geo/geometry/mesh/builder/axes.js +1 -2
- package/lib/commonjs/mol-geo/geometry/mesh/builder/box.js +2 -3
- package/lib/commonjs/mol-geo/geometry/mesh/builder/cylinder.js +4 -5
- package/lib/commonjs/mol-geo/geometry/mesh/builder/ellipsoid.js +1 -2
- package/lib/commonjs/mol-geo/geometry/mesh/builder/ribbon.js +1 -2
- package/lib/commonjs/mol-geo/geometry/mesh/builder/sheet.js +1 -2
- package/lib/commonjs/mol-geo/geometry/mesh/builder/sphere.js +2 -3
- package/lib/commonjs/mol-geo/geometry/mesh/builder/tube.js +1 -2
- package/lib/commonjs/mol-geo/geometry/mesh/color-smoothing.js +7 -8
- package/lib/commonjs/mol-geo/geometry/mesh/mesh.d.ts +1 -0
- package/lib/commonjs/mol-geo/geometry/mesh/mesh.js +3 -0
- package/lib/commonjs/mol-geo/geometry/overpaint-data.js +4 -5
- package/lib/commonjs/mol-geo/geometry/points/points.d.ts +1 -1
- package/lib/commonjs/mol-geo/geometry/size-data.js +9 -9
- package/lib/commonjs/mol-geo/geometry/spheres/spheres.d.ts +1 -0
- package/lib/commonjs/mol-geo/geometry/spheres/spheres.js +3 -0
- package/lib/commonjs/mol-geo/geometry/substance-data.js +4 -5
- package/lib/commonjs/mol-geo/geometry/text/font-atlas.js +3 -3
- package/lib/commonjs/mol-geo/geometry/texture-mesh/color-smoothing.js +7 -7
- package/lib/commonjs/mol-geo/geometry/texture-mesh/texture-mesh.d.ts +1 -0
- package/lib/commonjs/mol-geo/geometry/texture-mesh/texture-mesh.js +3 -0
- package/lib/commonjs/mol-geo/geometry/transform-data.js +4 -5
- package/lib/commonjs/mol-geo/geometry/transparency-data.js +5 -6
- package/lib/commonjs/mol-geo/primitive/box.js +3 -4
- package/lib/commonjs/mol-geo/primitive/cage.js +3 -4
- package/lib/commonjs/mol-geo/primitive/circle.js +2 -2
- package/lib/commonjs/mol-geo/primitive/cylinder.js +2 -2
- package/lib/commonjs/mol-geo/primitive/dodecahedron.js +3 -3
- package/lib/commonjs/mol-geo/primitive/icosahedron.js +2 -3
- package/lib/commonjs/mol-geo/primitive/octahedron.js +4 -4
- package/lib/commonjs/mol-geo/primitive/plane.js +2 -3
- package/lib/commonjs/mol-geo/primitive/polygon.js +1 -2
- package/lib/commonjs/mol-geo/primitive/polyhedron.js +2 -2
- package/lib/commonjs/mol-geo/primitive/primitive.js +4 -5
- package/lib/commonjs/mol-geo/primitive/prism.js +11 -11
- package/lib/commonjs/mol-geo/primitive/pyramid.js +6 -7
- package/lib/commonjs/mol-geo/primitive/sphere.js +2 -3
- package/lib/commonjs/mol-geo/primitive/spiked-ball.js +1 -2
- package/lib/commonjs/mol-geo/primitive/star.js +2 -2
- package/lib/commonjs/mol-geo/primitive/tetrahedron.js +3 -3
- package/lib/commonjs/mol-geo/primitive/torus.js +2 -2
- package/lib/commonjs/mol-geo/primitive/wedge.js +3 -4
- package/lib/commonjs/mol-geo/util/location-iterator.js +3 -4
- package/lib/commonjs/mol-geo/util/marching-cubes/algorithm.js +2 -3
- package/lib/commonjs/mol-geo/util/marching-cubes/builder.js +2 -3
- package/lib/commonjs/mol-geo/util/marching-cubes/tables.js +3 -3
- package/lib/commonjs/mol-geo/util.js +7 -8
- package/lib/commonjs/mol-gl/compute/grid3d.js +2 -3
- package/lib/commonjs/mol-gl/compute/hi-z.js +1 -2
- package/lib/commonjs/mol-gl/compute/histogram-pyramid/reduction.js +1 -2
- package/lib/commonjs/mol-gl/compute/histogram-pyramid/sum.js +1 -2
- package/lib/commonjs/mol-gl/compute/marching-cubes/active-voxels.js +1 -2
- package/lib/commonjs/mol-gl/compute/marching-cubes/isosurface.js +2 -3
- package/lib/commonjs/mol-gl/compute/marching-cubes/tables.js +2 -3
- package/lib/commonjs/mol-gl/compute/util.js +5 -5
- package/lib/commonjs/mol-gl/render-object.js +3 -3
- package/lib/commonjs/mol-gl/renderable/cylinders.d.ts +1 -0
- package/lib/commonjs/mol-gl/renderable/cylinders.js +3 -2
- package/lib/commonjs/mol-gl/renderable/direct-volume.d.ts +1 -0
- package/lib/commonjs/mol-gl/renderable/direct-volume.js +3 -2
- package/lib/commonjs/mol-gl/renderable/image.js +2 -2
- package/lib/commonjs/mol-gl/renderable/lines.js +2 -2
- package/lib/commonjs/mol-gl/renderable/mesh.d.ts +1 -0
- package/lib/commonjs/mol-gl/renderable/mesh.js +3 -2
- package/lib/commonjs/mol-gl/renderable/points.js +2 -2
- package/lib/commonjs/mol-gl/renderable/schema.d.ts +1 -0
- package/lib/commonjs/mol-gl/renderable/schema.js +10 -9
- package/lib/commonjs/mol-gl/renderable/spheres.d.ts +1 -0
- package/lib/commonjs/mol-gl/renderable/spheres.js +3 -2
- package/lib/commonjs/mol-gl/renderable/text.js +2 -2
- package/lib/commonjs/mol-gl/renderable/texture-mesh.d.ts +1 -0
- package/lib/commonjs/mol-gl/renderable/texture-mesh.js +3 -2
- package/lib/commonjs/mol-gl/renderable/util.js +7 -8
- package/lib/commonjs/mol-gl/renderable.js +2 -3
- package/lib/commonjs/mol-gl/renderer.d.ts +1 -0
- package/lib/commonjs/mol-gl/renderer.js +6 -0
- package/lib/commonjs/mol-gl/shader/background.frag.js +95 -95
- package/lib/commonjs/mol-gl/shader/background.vert.js +11 -11
- package/lib/commonjs/mol-gl/shader/blend-back-dpoit.frag.js +13 -13
- package/lib/commonjs/mol-gl/shader/bloom/blur.frag.js +28 -28
- package/lib/commonjs/mol-gl/shader/bloom/composite.frag.js +33 -33
- package/lib/commonjs/mol-gl/shader/bloom/luminosity.frag.js +52 -52
- package/lib/commonjs/mol-gl/shader/cas.frag.js +144 -144
- package/lib/commonjs/mol-gl/shader/chunks/apply-fog.glsl.js +31 -31
- package/lib/commonjs/mol-gl/shader/chunks/apply-interior-color.glsl.js +12 -12
- package/lib/commonjs/mol-gl/shader/chunks/apply-light-color.glsl.d.ts +2 -1
- package/lib/commonjs/mol-gl/shader/chunks/apply-light-color.glsl.js +110 -77
- package/lib/commonjs/mol-gl/shader/chunks/apply-marker-color.glsl.js +16 -16
- package/lib/commonjs/mol-gl/shader/chunks/assign-clipping-varying.glsl.js +8 -8
- package/lib/commonjs/mol-gl/shader/chunks/assign-color-varying.glsl.js +140 -140
- package/lib/commonjs/mol-gl/shader/chunks/assign-group.glsl.js +6 -6
- package/lib/commonjs/mol-gl/shader/chunks/assign-marker-varying.glsl.js +8 -8
- package/lib/commonjs/mol-gl/shader/chunks/assign-material-color.glsl.js +112 -112
- package/lib/commonjs/mol-gl/shader/chunks/assign-position.glsl.js +14 -14
- package/lib/commonjs/mol-gl/shader/chunks/assign-size.glsl.js +18 -18
- package/lib/commonjs/mol-gl/shader/chunks/check-picking-alpha.glsl.js +12 -12
- package/lib/commonjs/mol-gl/shader/chunks/check-transparency.glsl.js +16 -16
- package/lib/commonjs/mol-gl/shader/chunks/clip-instance.glsl.js +7 -7
- package/lib/commonjs/mol-gl/shader/chunks/clip-pixel.glsl.js +5 -5
- package/lib/commonjs/mol-gl/shader/chunks/color-frag-params.glsl.js +60 -60
- package/lib/commonjs/mol-gl/shader/chunks/color-vert-params.glsl.js +122 -122
- package/lib/commonjs/mol-gl/shader/chunks/common-clip.glsl.js +104 -104
- package/lib/commonjs/mol-gl/shader/chunks/common-frag-params.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/common-frag-params.glsl.js +151 -150
- package/lib/commonjs/mol-gl/shader/chunks/common-vert-params.glsl.js +61 -61
- package/lib/commonjs/mol-gl/shader/chunks/common.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/common.glsl.js +240 -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 -1
- package/lib/commonjs/mol-gl/shader/cylinders.frag.js +275 -266
- package/lib/commonjs/mol-gl/shader/cylinders.vert.js +89 -89
- package/lib/commonjs/mol-gl/shader/depth-merge.frag.js +23 -23
- package/lib/commonjs/mol-gl/shader/direct-volume.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/direct-volume.frag.js +363 -362
- package/lib/commonjs/mol-gl/shader/direct-volume.vert.js +41 -41
- package/lib/commonjs/mol-gl/shader/dof.frag.js +112 -112
- package/lib/commonjs/mol-gl/shader/evaluate-dpoit.frag.js +10 -10
- package/lib/commonjs/mol-gl/shader/evaluate-wboit.frag.js +17 -17
- package/lib/commonjs/mol-gl/shader/fxaa.frag.js +228 -228
- package/lib/commonjs/mol-gl/shader/gaussian-density.frag.js +49 -49
- package/lib/commonjs/mol-gl/shader/gaussian-density.vert.js +27 -27
- package/lib/commonjs/mol-gl/shader/hi-z.frag.js +18 -18
- package/lib/commonjs/mol-gl/shader/histogram-pyramid/reduction.frag.js +58 -58
- package/lib/commonjs/mol-gl/shader/histogram-pyramid/sum.frag.js +19 -19
- package/lib/commonjs/mol-gl/shader/image.frag.js +169 -169
- package/lib/commonjs/mol-gl/shader/image.vert.js +21 -21
- package/lib/commonjs/mol-gl/shader/lines.frag.js +42 -42
- package/lib/commonjs/mol-gl/shader/lines.vert.js +117 -117
- package/lib/commonjs/mol-gl/shader/marching-cubes/active-voxels.frag.js +70 -70
- package/lib/commonjs/mol-gl/shader/marching-cubes/isosurface.frag.js +311 -311
- package/lib/commonjs/mol-gl/shader/marking/edge.frag.js +28 -28
- package/lib/commonjs/mol-gl/shader/marking/overlay.frag.js +26 -26
- package/lib/commonjs/mol-gl/shader/mesh.frag.js +65 -65
- package/lib/commonjs/mol-gl/shader/mesh.vert.js +49 -49
- package/lib/commonjs/mol-gl/shader/outlines.frag.js +95 -95
- package/lib/commonjs/mol-gl/shader/points.frag.js +59 -59
- package/lib/commonjs/mol-gl/shader/points.vert.js +38 -38
- package/lib/commonjs/mol-gl/shader/postprocessing.frag.js +150 -150
- package/lib/commonjs/mol-gl/shader/quad.vert.js +10 -10
- package/lib/commonjs/mol-gl/shader/shadows.frag.js +123 -123
- package/lib/commonjs/mol-gl/shader/smaa/blend.frag.js +56 -56
- package/lib/commonjs/mol-gl/shader/smaa/blend.vert.js +25 -25
- package/lib/commonjs/mol-gl/shader/smaa/edges.frag.js +66 -66
- package/lib/commonjs/mol-gl/shader/smaa/edges.vert.js +26 -26
- package/lib/commonjs/mol-gl/shader/smaa/weights.frag.js +206 -206
- package/lib/commonjs/mol-gl/shader/smaa/weights.vert.js +32 -32
- package/lib/commonjs/mol-gl/shader/spheres.frag.js +148 -148
- package/lib/commonjs/mol-gl/shader/spheres.vert.js +132 -132
- package/lib/commonjs/mol-gl/shader/ssao-blur.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/ssao-blur.frag.js +100 -97
- package/lib/commonjs/mol-gl/shader/ssao.frag.js +211 -211
- package/lib/commonjs/mol-gl/shader/text.frag.js +85 -85
- package/lib/commonjs/mol-gl/shader/text.vert.js +85 -85
- package/lib/commonjs/mol-gl/shader/util/grid3d-template.frag.js +46 -46
- package/lib/commonjs/mol-gl/shader-code.js +19 -19
- package/lib/commonjs/mol-gl/webgl/buffer.js +8 -9
- package/lib/commonjs/mol-gl/webgl/compat.js +44 -45
- package/lib/commonjs/mol-gl/webgl/context.js +6 -7
- package/lib/commonjs/mol-gl/webgl/extensions.js +1 -2
- package/lib/commonjs/mol-gl/webgl/framebuffer.js +3 -4
- package/lib/commonjs/mol-gl/webgl/program.js +2 -3
- package/lib/commonjs/mol-gl/webgl/render-item.d.ts +2 -2
- package/lib/commonjs/mol-gl/webgl/render-item.js +5 -5
- package/lib/commonjs/mol-gl/webgl/render-target.js +2 -3
- package/lib/commonjs/mol-gl/webgl/renderbuffer.js +3 -4
- package/lib/commonjs/mol-gl/webgl/resources.js +1 -2
- package/lib/commonjs/mol-gl/webgl/shader.js +2 -3
- package/lib/commonjs/mol-gl/webgl/state.js +1 -2
- package/lib/commonjs/mol-gl/webgl/texture.js +13 -14
- package/lib/commonjs/mol-gl/webgl/timer.js +2 -3
- package/lib/commonjs/mol-gl/webgl/uniform.js +6 -7
- package/lib/commonjs/mol-gl/webgl/vertex-array.js +1 -2
- package/lib/commonjs/mol-io/common/ascii.js +1 -2
- package/lib/commonjs/mol-io/common/binary-cif/classifier.js +2 -3
- package/lib/commonjs/mol-io/common/binary-cif/decoder.js +1 -2
- package/lib/commonjs/mol-io/common/binary.js +3 -3
- package/lib/commonjs/mol-io/common/msgpack/decode.js +1 -2
- package/lib/commonjs/mol-io/common/msgpack/encode.js +1 -2
- package/lib/commonjs/mol-io/common/simple-buffer.d.ts +0 -1
- package/lib/commonjs/mol-io/common/typed-array.js +6 -6
- package/lib/commonjs/mol-io/common/utf8.js +3 -4
- package/lib/commonjs/mol-io/reader/ccp4/parser.js +6 -7
- package/lib/commonjs/mol-io/reader/cif/binary/field.js +1 -2
- package/lib/commonjs/mol-io/reader/cif/binary/parser.js +1 -2
- package/lib/commonjs/mol-io/reader/cif/data-model.js +8 -8
- 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.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 +9 -1
- package/lib/commonjs/mol-io/reader/cif/schema/mmcif.js +9 -1
- package/lib/commonjs/mol-io/reader/cif/schema.js +4 -4
- package/lib/commonjs/mol-io/reader/cif/text/parser.js +1 -2
- package/lib/commonjs/mol-io/reader/common/text/column/fixed.d.ts +1 -1
- package/lib/commonjs/mol-io/reader/common/text/column/fixed.js +2 -3
- package/lib/commonjs/mol-io/reader/common/text/column/token.d.ts +1 -1
- package/lib/commonjs/mol-io/reader/common/text/column/token.js +4 -5
- package/lib/commonjs/mol-io/reader/common/text/number-parser.js +6 -6
- package/lib/commonjs/mol-io/reader/common/text/tokenizer.js +3 -3
- package/lib/commonjs/mol-io/reader/csv/data-model.js +3 -3
- package/lib/commonjs/mol-io/reader/csv/parser.js +1 -2
- package/lib/commonjs/mol-io/reader/cube/parser.js +1 -2
- package/lib/commonjs/mol-io/reader/dcd/parser.js +2 -3
- package/lib/commonjs/mol-io/reader/dsn6/parser.js +6 -6
- package/lib/commonjs/mol-io/reader/dx/parser.js +1 -2
- package/lib/commonjs/mol-io/reader/gro/parser.js +1 -2
- package/lib/commonjs/mol-io/reader/mol/parser.js +6 -7
- package/lib/commonjs/mol-io/reader/mol2/parser.js +1 -2
- package/lib/commonjs/mol-io/reader/nctraj/parser.js +1 -2
- package/lib/commonjs/mol-io/reader/obj/parser.js +1 -2
- package/lib/commonjs/mol-io/reader/pdb/parser.js +1 -2
- package/lib/commonjs/mol-io/reader/ply/parser.js +1 -2
- package/lib/commonjs/mol-io/reader/ply/schema.d.ts +1 -1
- package/lib/commonjs/mol-io/reader/ply/schema.js +3 -3
- package/lib/commonjs/mol-io/reader/prmtop/parser.js +1 -2
- package/lib/commonjs/mol-io/reader/psf/parser.js +1 -2
- package/lib/commonjs/mol-io/reader/sdf/parser-v3-util.js +4 -5
- package/lib/commonjs/mol-io/reader/sdf/parser.js +1 -2
- package/lib/commonjs/mol-io/reader/top/parser.js +1 -2
- package/lib/commonjs/mol-io/reader/trr/parser.js +1 -2
- package/lib/commonjs/mol-io/reader/xtc/parser.js +1 -2
- package/lib/commonjs/mol-io/reader/xyz/parser.js +1 -2
- package/lib/commonjs/mol-io/writer/cif/encoder/util.js +3 -4
- package/lib/commonjs/mol-math/approx.js +24 -25
- package/lib/commonjs/mol-math/easing.js +18 -19
- package/lib/commonjs/mol-math/geometry/boundary.js +2 -3
- package/lib/commonjs/mol-math/geometry/common.js +2 -3
- package/lib/commonjs/mol-math/geometry/distance-transform.js +1 -2
- package/lib/commonjs/mol-math/geometry/gaussian-density/cpu.js +1 -2
- package/lib/commonjs/mol-math/geometry/gaussian-density/gpu.js +4 -5
- package/lib/commonjs/mol-math/geometry/gaussian-density.js +5 -5
- package/lib/commonjs/mol-math/geometry/instance-grid.js +2 -3
- package/lib/commonjs/mol-math/geometry/lookup3d/grid.js +1 -2
- package/lib/commonjs/mol-math/geometry/molecular-surface.js +2 -2
- package/lib/commonjs/mol-math/geometry/polygon.js +1 -2
- package/lib/commonjs/mol-math/geometry/primitives/axes3d.js +1 -2
- package/lib/commonjs/mol-math/geometry/primitives/box3d.js +1 -2
- package/lib/commonjs/mol-math/geometry/primitives/frustum3d.js +1 -2
- package/lib/commonjs/mol-math/geometry/primitives/plane3d.js +1 -2
- package/lib/commonjs/mol-math/geometry/primitives/sphere3d.js +1 -2
- package/lib/commonjs/mol-math/geometry/spacegroup/cell.js +1 -2
- package/lib/commonjs/mol-math/geometry/spacegroup/tables.js +4 -4
- package/lib/commonjs/mol-math/histogram.js +1 -2
- package/lib/commonjs/mol-math/interpolate.js +12 -13
- package/lib/commonjs/mol-math/linear-algebra/3d/common.js +2 -2
- package/lib/commonjs/mol-math/linear-algebra/3d/euler.js +1 -2
- package/lib/commonjs/mol-math/linear-algebra/3d/mat3.js +1 -2
- package/lib/commonjs/mol-math/linear-algebra/3d/mat4.js +1 -2
- package/lib/commonjs/mol-math/linear-algebra/3d/quat.js +1 -2
- package/lib/commonjs/mol-math/linear-algebra/3d/vec2.js +1 -2
- package/lib/commonjs/mol-math/linear-algebra/3d/vec3.js +1 -2
- package/lib/commonjs/mol-math/linear-algebra/3d/vec4.js +1 -2
- package/lib/commonjs/mol-math/linear-algebra/matrix/svd.js +4 -5
- package/lib/commonjs/mol-math/misc.js +7 -7
- package/lib/commonjs/mol-model/custom-property.js +2 -2
- package/lib/commonjs/mol-model/location.js +4 -4
- package/lib/commonjs/mol-model/loci.d.ts +1 -1
- package/lib/commonjs/mol-model/loci.js +7 -7
- package/lib/commonjs/mol-model/sequence/alignment/alignment.d.ts +2 -1
- package/lib/commonjs/mol-model/sequence/alignment/alignment.js +1 -2
- package/lib/commonjs/mol-model/sequence/alignment/sequence.js +3 -3
- package/lib/commonjs/mol-model/sequence/constants.js +3 -4
- package/lib/commonjs/mol-model/structure/coordinates/coordinates.js +2 -2
- package/lib/commonjs/mol-model/structure/export/categories/atom_site.js +5 -5
- package/lib/commonjs/mol-model/structure/export/categories/atom_site_operator_mapping.js +2 -2
- package/lib/commonjs/mol-model/structure/export/categories/utils.js +6 -7
- package/lib/commonjs/mol-model/structure/export/mmcif.js +3 -3
- package/lib/commonjs/mol-model/structure/model/properties/atomic/bonds.js +2 -3
- package/lib/commonjs/mol-model/structure/model/properties/atomic/measures.js +4 -4
- package/lib/commonjs/mol-model/structure/model/properties/atomic/types.js +14 -14
- package/lib/commonjs/mol-model/structure/model/properties/secondary-structure.js +1 -2
- package/lib/commonjs/mol-model/structure/model/properties/utils/atomic-derived.js +1 -2
- package/lib/commonjs/mol-model/structure/model/properties/utils/atomic-index.js +1 -2
- package/lib/commonjs/mol-model/structure/model/properties/utils/atomic-ranges.js +1 -2
- package/lib/commonjs/mol-model/structure/model/properties/utils/coarse-keys.js +1 -2
- package/lib/commonjs/mol-model/structure/model/properties/utils/coarse-ranges.js +1 -2
- package/lib/commonjs/mol-model/structure/model/types/saccharides.js +1 -1
- package/lib/commonjs/mol-model/structure/model/types.d.ts +3 -3
- package/lib/commonjs/mol-model/structure/model/types.js +12 -12
- package/lib/commonjs/mol-model/structure/model/util.js +2 -3
- package/lib/commonjs/mol-model/structure/query/queries/atom-set.js +3 -4
- package/lib/commonjs/mol-model/structure/query/queries/combinators.js +2 -3
- package/lib/commonjs/mol-model/structure/query/queries/filters.js +7 -8
- package/lib/commonjs/mol-model/structure/query/queries/generators.js +9 -9
- package/lib/commonjs/mol-model/structure/query/queries/internal.js +7 -8
- package/lib/commonjs/mol-model/structure/query/queries/modifiers.js +9 -10
- package/lib/commonjs/mol-model/structure/query/utils/structure-distance.js +2 -3
- package/lib/commonjs/mol-model/structure/query/utils/structure-set.js +5 -6
- package/lib/commonjs/mol-model/structure/structure/carbohydrates/compute.js +1 -2
- package/lib/commonjs/mol-model/structure/structure/carbohydrates/constants.js +4 -4
- package/lib/commonjs/mol-model/structure/structure/element/loci.js +1 -2
- package/lib/commonjs/mol-model/structure/structure/element/util.js +6 -7
- package/lib/commonjs/mol-model/structure/structure/properties.d.ts +1 -0
- package/lib/commonjs/mol-model/structure/structure/properties.js +1 -0
- package/lib/commonjs/mol-model/structure/structure/unit/bonds/common.js +6 -6
- package/lib/commonjs/mol-model/structure/structure/unit/bonds/inter-compute.js +1 -2
- package/lib/commonjs/mol-model/structure/structure/unit/bonds/intra-compute.js +1 -2
- package/lib/commonjs/mol-model/structure/structure/unit/resonance.js +1 -2
- package/lib/commonjs/mol-model/structure/structure/unit/rings/compute.js +3 -4
- package/lib/commonjs/mol-model/structure/structure/util/boundary.js +1 -2
- package/lib/commonjs/mol-model/structure/structure/util/lookup3d.js +2 -2
- package/lib/commonjs/mol-model/structure/structure/util/polymer.js +6 -7
- package/lib/commonjs/mol-model/structure/structure/util/principal-axes.js +2 -3
- package/lib/commonjs/mol-model/structure/structure/util/superposition-sifts-mapping.js +1 -2
- package/lib/commonjs/mol-model/structure/structure/util/superposition.js +3 -4
- package/lib/commonjs/mol-model/structure/util.js +5 -6
- package/lib/commonjs/mol-model/volume/volume.d.ts +6 -6
- package/lib/commonjs/mol-model-formats/shape/ply.d.ts +2 -0
- package/lib/commonjs/mol-model-formats/shape/ply.js +2 -2
- package/lib/commonjs/mol-model-formats/structure/basic/atomic.js +1 -2
- package/lib/commonjs/mol-model-formats/structure/basic/coarse.js +2 -2
- package/lib/commonjs/mol-model-formats/structure/basic/entities.js +2 -3
- package/lib/commonjs/mol-model-formats/structure/basic/parser.js +1 -2
- package/lib/commonjs/mol-model-formats/structure/basic/properties.js +4 -5
- package/lib/commonjs/mol-model-formats/structure/basic/schema.d.ts +1 -0
- package/lib/commonjs/mol-model-formats/structure/basic/schema.js +2 -2
- package/lib/commonjs/mol-model-formats/structure/basic/sequence.js +1 -2
- package/lib/commonjs/mol-model-formats/structure/basic/sort.js +1 -2
- package/lib/commonjs/mol-model-formats/structure/basic/util.js +2 -3
- package/lib/commonjs/mol-model-formats/structure/cif-core.js +2 -2
- package/lib/commonjs/mol-model-formats/structure/common/entity.d.ts +1 -0
- package/lib/commonjs/mol-model-formats/structure/cube.js +1 -2
- package/lib/commonjs/mol-model-formats/structure/dcd.js +1 -2
- package/lib/commonjs/mol-model-formats/structure/gro.js +2 -2
- package/lib/commonjs/mol-model-formats/structure/mmcif.js +3 -3
- package/lib/commonjs/mol-model-formats/structure/mol.js +3 -3
- package/lib/commonjs/mol-model-formats/structure/mol2.js +2 -2
- package/lib/commonjs/mol-model-formats/structure/nctraj.js +1 -2
- package/lib/commonjs/mol-model-formats/structure/pdb/anisotropic.js +3 -4
- package/lib/commonjs/mol-model-formats/structure/pdb/assembly.js +3 -4
- package/lib/commonjs/mol-model-formats/structure/pdb/atom-site.js +3 -4
- package/lib/commonjs/mol-model-formats/structure/pdb/conect.js +1 -2
- package/lib/commonjs/mol-model-formats/structure/pdb/entity.js +2 -3
- package/lib/commonjs/mol-model-formats/structure/pdb/header.js +1 -2
- package/lib/commonjs/mol-model-formats/structure/pdb/secondary-structure.js +2 -3
- package/lib/commonjs/mol-model-formats/structure/pdb/to-cif.js +1 -2
- package/lib/commonjs/mol-model-formats/structure/pdb.js +2 -2
- package/lib/commonjs/mol-model-formats/structure/prmtop.js +2 -2
- package/lib/commonjs/mol-model-formats/structure/property/assembly.js +3 -4
- package/lib/commonjs/mol-model-formats/structure/psf.js +2 -2
- package/lib/commonjs/mol-model-formats/structure/sdf.js +2 -2
- package/lib/commonjs/mol-model-formats/structure/top.js +2 -2
- package/lib/commonjs/mol-model-formats/structure/trr.js +1 -2
- package/lib/commonjs/mol-model-formats/structure/util.js +2 -3
- package/lib/commonjs/mol-model-formats/structure/xtc.js +1 -2
- package/lib/commonjs/mol-model-formats/structure/xyz.js +2 -2
- package/lib/commonjs/mol-model-formats/volume/ccp4.js +3 -3
- package/lib/commonjs/mol-model-formats/volume/cube.js +2 -2
- package/lib/commonjs/mol-model-formats/volume/density-server.js +2 -2
- package/lib/commonjs/mol-model-formats/volume/dsn6.js +2 -2
- package/lib/commonjs/mol-model-formats/volume/dx.js +2 -2
- package/lib/commonjs/mol-model-formats/volume/segmentation.js +2 -2
- package/lib/commonjs/mol-model-props/computed/accessible-surface-area/shrake-rupley/area.js +1 -2
- package/lib/commonjs/mol-model-props/computed/accessible-surface-area/shrake-rupley/radii.js +1 -2
- package/lib/commonjs/mol-model-props/computed/chemistry/functional-group.js +16 -17
- package/lib/commonjs/mol-model-props/computed/chemistry/geometry.js +5 -5
- package/lib/commonjs/mol-model-props/computed/chemistry/util.js +16 -17
- package/lib/commonjs/mol-model-props/computed/chemistry/valence-model.js +4 -4
- package/lib/commonjs/mol-model-props/computed/helix-orientation/helix-orientation.js +1 -2
- package/lib/commonjs/mol-model-props/computed/interactions/common.js +4 -4
- package/lib/commonjs/mol-model-props/computed/interactions/contacts.js +3 -3
- package/lib/commonjs/mol-model-props/computed/interactions/interactions.js +2 -2
- package/lib/commonjs/mol-model-props/computed/interactions/refine.js +1 -2
- 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-inter-unit-cylinder.js +2 -2
- 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-intra-unit-cylinder.js +2 -2
- package/lib/commonjs/mol-model-props/computed/representations/interactions.d.ts +3 -0
- package/lib/commonjs/mol-model-props/computed/representations/interactions.js +3 -3
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/backbone-hbonds.js +1 -2
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/bends.js +1 -2
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/bridges.js +1 -2
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/dihedral-angles.js +1 -2
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/helices.js +1 -2
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/ladders.js +1 -2
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/protein-info.js +1 -2
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/sheets.js +1 -2
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/trace-lookup.js +1 -2
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/turns.js +1 -2
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp.js +2 -2
- package/lib/commonjs/mol-model-props/computed/themes/accessible-surface-area.js +3 -3
- package/lib/commonjs/mol-model-props/computed/themes/interaction-type.js +3 -3
- package/lib/commonjs/mol-model-props/integrative/cross-link-restraint/color.js +3 -3
- package/lib/commonjs/mol-model-props/integrative/cross-link-restraint/representation.d.ts +4 -0
- package/lib/commonjs/mol-model-props/integrative/cross-link-restraint/representation.js +4 -4
- package/lib/commonjs/mol-model-props/sequence/themes/sifts-mapping.d.ts +2 -2
- package/lib/commonjs/mol-model-props/sequence/themes/sifts-mapping.js +3 -3
- package/lib/commonjs/mol-plugin/behavior/behavior.d.ts +9 -9
- package/lib/commonjs/mol-plugin/behavior/dynamic/volume-streaming/behavior.d.ts +3 -3
- package/lib/commonjs/mol-plugin/behavior/dynamic/volume-streaming/model.d.ts +4 -4
- package/lib/commonjs/mol-plugin/behavior/dynamic/volume-streaming/util.js +8 -9
- package/lib/commonjs/mol-plugin/behavior/static/camera.js +6 -7
- package/lib/commonjs/mol-plugin/behavior/static/misc.js +2 -3
- package/lib/commonjs/mol-plugin/behavior/static/representation.js +4 -5
- package/lib/commonjs/mol-plugin/behavior/static/state.js +12 -13
- package/lib/commonjs/mol-plugin/command.js +2 -2
- package/lib/commonjs/mol-plugin/commands.d.ts +23 -87
- package/lib/commonjs/mol-plugin/context.d.ts +3 -2
- package/lib/commonjs/mol-plugin/context.js +4 -2
- package/lib/commonjs/mol-plugin/state.d.ts +7 -7
- package/lib/commonjs/mol-plugin/util/headless-screenshot.d.ts +1 -1
- package/lib/commonjs/mol-plugin/util/headless-screenshot.js +7 -5
- package/lib/commonjs/mol-plugin/util/viewport-screenshot.d.ts +1 -1
- package/lib/commonjs/mol-plugin/util/viewport-screenshot.js +2 -1
- package/lib/commonjs/mol-plugin-state/actions/volume.d.ts +1 -1
- package/lib/commonjs/mol-plugin-state/actions/volume.js +4 -12
- package/lib/commonjs/mol-plugin-state/animation/built-in/model-index.d.ts +2 -2
- package/lib/commonjs/mol-plugin-state/animation/helpers.js +5 -5
- package/lib/commonjs/mol-plugin-state/builder/structure/hierarchy-preset.js +2 -2
- package/lib/commonjs/mol-plugin-state/builder/structure/representation-preset.js +4 -4
- package/lib/commonjs/mol-plugin-state/formats/provider.js +2 -3
- package/lib/commonjs/mol-plugin-state/formats/registry.d.ts +1 -1
- package/lib/commonjs/mol-plugin-state/formats/trajectory.d.ts +9 -9
- package/lib/commonjs/mol-plugin-state/formats/volume.d.ts +0 -1
- package/lib/commonjs/mol-plugin-state/helpers/structure-clipping.js +1 -2
- package/lib/commonjs/mol-plugin-state/helpers/structure-component.js +3 -3
- package/lib/commonjs/mol-plugin-state/helpers/structure-emissive.js +2 -3
- package/lib/commonjs/mol-plugin-state/helpers/structure-overpaint.js +2 -3
- package/lib/commonjs/mol-plugin-state/helpers/structure-representation-params.js +4 -5
- package/lib/commonjs/mol-plugin-state/helpers/structure-selection-query.js +9 -9
- package/lib/commonjs/mol-plugin-state/helpers/structure-substance.js +2 -3
- package/lib/commonjs/mol-plugin-state/helpers/structure-transparency.js +2 -3
- package/lib/commonjs/mol-plugin-state/helpers/volume-representation-params.js +4 -5
- package/lib/commonjs/mol-plugin-state/manager/focus-camera/focus-first-residue.js +2 -3
- package/lib/commonjs/mol-plugin-state/manager/focus-camera/orient-axes.js +4 -4
- package/lib/commonjs/mol-plugin-state/manager/structure/hierarchy-state.js +2 -3
- package/lib/commonjs/mol-plugin-state/manager/structure/hierarchy.d.ts +3 -3
- package/lib/commonjs/mol-plugin-state/manager/structure/measurement.d.ts +4 -0
- package/lib/commonjs/mol-plugin-state/manager/volume/hierarchy-state.js +2 -3
- package/lib/commonjs/mol-plugin-state/objects.d.ts +97 -97
- package/lib/commonjs/mol-plugin-state/transforms/data.d.ts +10 -1
- package/lib/commonjs/mol-plugin-state/transforms/data.js +31 -2
- package/lib/commonjs/mol-plugin-state/transforms/helpers.js +6 -7
- package/lib/commonjs/mol-plugin-state/transforms/representation.d.ts +6 -0
- package/lib/commonjs/mol-plugin-state/transforms/shape.js +2 -2
- package/lib/commonjs/mol-plugin-ui/base.js +2 -1
- package/lib/commonjs/mol-plugin-ui/controls/color.js +3 -3
- package/lib/commonjs/mol-plugin-ui/controls/common.js +5 -5
- package/lib/commonjs/mol-plugin-ui/controls/icons.d.ts +5 -0
- package/lib/commonjs/mol-plugin-ui/controls/icons.js +87 -73
- package/lib/commonjs/mol-plugin-ui/controls/legend.js +2 -2
- package/lib/commonjs/mol-plugin-ui/controls/parameters.d.ts +3 -3
- package/lib/commonjs/mol-plugin-ui/controls/parameters.js +2 -2
- package/lib/commonjs/mol-plugin-ui/controls.js +3 -3
- package/lib/commonjs/mol-plugin-ui/hooks/use-behavior.js +1 -2
- package/lib/commonjs/mol-plugin-ui/index.js +1 -2
- package/lib/commonjs/mol-plugin-ui/left-panel.d.ts +0 -1
- package/lib/commonjs/mol-plugin-ui/plugin.js +5 -4
- package/lib/commonjs/mol-plugin-ui/react18.js +1 -2
- package/lib/commonjs/mol-plugin-ui/sequence.js +8 -8
- package/lib/commonjs/mol-plugin-ui/spec.d.ts +10 -10
- package/lib/commonjs/mol-plugin-ui/spec.js +1 -1
- package/lib/commonjs/mol-plugin-ui/state/apply-action.d.ts +1 -1
- package/lib/commonjs/mol-plugin-ui/state/update-transform.d.ts +1 -1
- package/lib/commonjs/mol-plugin-ui/structure/quick-styles.d.ts +2 -1
- package/lib/commonjs/mol-plugin-ui/structure/quick-styles.js +5 -2
- package/lib/commonjs/mol-plugin-ui/structure/selection.d.ts +2 -2
- package/lib/commonjs/mol-plugin-ui/task.js +2 -3
- package/lib/commonjs/mol-repr/representation.d.ts +3 -3
- package/lib/commonjs/mol-repr/shape/loci/angle.d.ts +1 -0
- package/lib/commonjs/mol-repr/shape/loci/angle.js +2 -2
- package/lib/commonjs/mol-repr/shape/loci/dihedral.d.ts +1 -0
- package/lib/commonjs/mol-repr/shape/loci/dihedral.js +2 -2
- package/lib/commonjs/mol-repr/shape/loci/distance.js +2 -2
- package/lib/commonjs/mol-repr/shape/loci/label.js +2 -2
- package/lib/commonjs/mol-repr/shape/loci/orientation.d.ts +1 -0
- package/lib/commonjs/mol-repr/shape/loci/orientation.js +2 -2
- package/lib/commonjs/mol-repr/shape/loci/plane.d.ts +1 -0
- package/lib/commonjs/mol-repr/shape/loci/plane.js +2 -2
- package/lib/commonjs/mol-repr/shape/model/unitcell.d.ts +1 -0
- package/lib/commonjs/mol-repr/shape/model/unitcell.js +3 -3
- package/lib/commonjs/mol-repr/shape/representation.js +1 -2
- package/lib/commonjs/mol-repr/structure/complex-representation.js +1 -2
- package/lib/commonjs/mol-repr/structure/complex-visual.d.ts +5 -0
- package/lib/commonjs/mol-repr/structure/complex-visual.js +9 -9
- package/lib/commonjs/mol-repr/structure/params.d.ts +5 -0
- package/lib/commonjs/mol-repr/structure/params.js +2 -2
- package/lib/commonjs/mol-repr/structure/registry.d.ts +11 -0
- package/lib/commonjs/mol-repr/structure/representation/backbone.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/backbone.js +3 -3
- package/lib/commonjs/mol-repr/structure/representation/ball-and-stick.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/ball-and-stick.js +3 -3
- package/lib/commonjs/mol-repr/structure/representation/carbohydrate.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/carbohydrate.js +3 -3
- package/lib/commonjs/mol-repr/structure/representation/cartoon.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/cartoon.js +3 -3
- package/lib/commonjs/mol-repr/structure/representation/ellipsoid.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/ellipsoid.js +3 -3
- package/lib/commonjs/mol-repr/structure/representation/gaussian-surface.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/gaussian-surface.js +3 -3
- package/lib/commonjs/mol-repr/structure/representation/gaussian-volume.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/gaussian-volume.js +3 -3
- package/lib/commonjs/mol-repr/structure/representation/label.js +3 -3
- package/lib/commonjs/mol-repr/structure/representation/line.js +3 -3
- package/lib/commonjs/mol-repr/structure/representation/molecular-surface.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/molecular-surface.js +3 -3
- package/lib/commonjs/mol-repr/structure/representation/orientation.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/orientation.js +3 -3
- package/lib/commonjs/mol-repr/structure/representation/point.js +3 -3
- package/lib/commonjs/mol-repr/structure/representation/putty.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/putty.js +3 -3
- package/lib/commonjs/mol-repr/structure/representation/spacefill.d.ts +3 -0
- package/lib/commonjs/mol-repr/structure/representation/spacefill.js +3 -3
- package/lib/commonjs/mol-repr/structure/representation.js +2 -2
- package/lib/commonjs/mol-repr/structure/units-representation.js +1 -2
- package/lib/commonjs/mol-repr/structure/units-visual.d.ts +5 -0
- package/lib/commonjs/mol-repr/structure/units-visual.js +10 -10
- 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-cylinder.js +4 -4
- package/lib/commonjs/mol-repr/structure/visual/bond-inter-unit-line.js +2 -2
- 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-cylinder.js +4 -4
- package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-line.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/carbohydrate-link-cylinder.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/carbohydrate-link-cylinder.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/carbohydrate-symbol-mesh.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/carbohydrate-symbol-mesh.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/element-cross.js +3 -3
- package/lib/commonjs/mol-repr/structure/visual/element-point.js +3 -3
- package/lib/commonjs/mol-repr/structure/visual/element-sphere.d.ts +4 -0
- package/lib/commonjs/mol-repr/structure/visual/element-sphere.js +7 -7
- package/lib/commonjs/mol-repr/structure/visual/ellipsoid-mesh.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/ellipsoid-mesh.js +3 -3
- package/lib/commonjs/mol-repr/structure/visual/gaussian-density-volume.d.ts +2 -0
- package/lib/commonjs/mol-repr/structure/visual/gaussian-density-volume.js +3 -3
- 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 +7 -7
- package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-wireframe.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/label-text.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/molecular-surface-mesh.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/molecular-surface-mesh.js +3 -3
- package/lib/commonjs/mol-repr/structure/visual/molecular-surface-wireframe.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/nucleotide-atomic-bond.d.ts +2 -0
- package/lib/commonjs/mol-repr/structure/visual/nucleotide-atomic-bond.js +4 -4
- package/lib/commonjs/mol-repr/structure/visual/nucleotide-atomic-element.d.ts +2 -0
- package/lib/commonjs/mol-repr/structure/visual/nucleotide-atomic-element.js +4 -4
- package/lib/commonjs/mol-repr/structure/visual/nucleotide-atomic-ring-fill.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/nucleotide-atomic-ring-fill.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/nucleotide-block-mesh.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/nucleotide-block-mesh.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/nucleotide-ring-mesh.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/nucleotide-ring-mesh.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/orientation-ellipsoid-mesh.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/orientation-ellipsoid-mesh.js +3 -3
- package/lib/commonjs/mol-repr/structure/visual/polymer-backbone-cylinder.d.ts +2 -0
- package/lib/commonjs/mol-repr/structure/visual/polymer-backbone-cylinder.js +4 -4
- package/lib/commonjs/mol-repr/structure/visual/polymer-backbone-sphere.d.ts +2 -0
- package/lib/commonjs/mol-repr/structure/visual/polymer-backbone-sphere.js +4 -4
- package/lib/commonjs/mol-repr/structure/visual/polymer-direction-wedge.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/polymer-direction-wedge.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/polymer-gap-cylinder.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/polymer-gap-cylinder.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/polymer-trace-mesh.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/polymer-trace-mesh.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/polymer-tube-mesh.d.ts +1 -0
- package/lib/commonjs/mol-repr/structure/visual/polymer-tube-mesh.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/util/bond.js +8 -8
- package/lib/commonjs/mol-repr/structure/visual/util/common.js +14 -14
- package/lib/commonjs/mol-repr/structure/visual/util/element.js +10 -10
- package/lib/commonjs/mol-repr/structure/visual/util/gaussian.js +8 -8
- package/lib/commonjs/mol-repr/structure/visual/util/link.js +5 -5
- package/lib/commonjs/mol-repr/structure/visual/util/molecular-surface.js +2 -3
- package/lib/commonjs/mol-repr/structure/visual/util/nucleotide.d.ts +60 -60
- package/lib/commonjs/mol-repr/structure/visual/util/nucleotide.js +11 -11
- package/lib/commonjs/mol-repr/structure/visual/util/polymer/backbone.js +3 -4
- package/lib/commonjs/mol-repr/structure/visual/util/polymer/curve-segment.js +5 -6
- package/lib/commonjs/mol-repr/structure/visual/util/polymer/gap-iterator.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/util/polymer/trace-iterator.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/util/polymer.js +8 -8
- package/lib/commonjs/mol-repr/util.js +3 -3
- package/lib/commonjs/mol-repr/volume/direct-volume.d.ts +48 -45
- package/lib/commonjs/mol-repr/volume/direct-volume.js +9 -9
- package/lib/commonjs/mol-repr/volume/isosurface.d.ts +95 -90
- package/lib/commonjs/mol-repr/volume/isosurface.js +10 -10
- package/lib/commonjs/mol-repr/volume/registry.d.ts +63 -60
- package/lib/commonjs/mol-repr/volume/representation.js +4 -4
- package/lib/commonjs/mol-repr/volume/segment.d.ts +80 -75
- package/lib/commonjs/mol-repr/volume/segment.js +8 -8
- package/lib/commonjs/mol-repr/volume/slice.d.ts +45 -45
- package/lib/commonjs/mol-repr/volume/slice.js +5 -5
- package/lib/commonjs/mol-repr/volume/util.js +5 -6
- package/lib/commonjs/mol-script/language/expression-formatter.js +1 -2
- package/lib/commonjs/mol-script/language/helpers.js +3 -4
- package/lib/commonjs/mol-script/language/parser.js +1 -2
- package/lib/commonjs/mol-script/language/symbol-table/core.d.ts +1 -1
- package/lib/commonjs/mol-script/language/symbol.js +5 -5
- package/lib/commonjs/mol-script/runtime/query/base.js +2 -2
- package/lib/commonjs/mol-script/script/mol-script/script-macro.js +4 -5
- package/lib/commonjs/mol-script/script/mol-script/symbols.js +3 -3
- package/lib/commonjs/mol-script/script.js +1 -2
- package/lib/commonjs/mol-script/transpile.js +1 -2
- package/lib/commonjs/mol-script/transpilers/helper.js +28 -28
- package/lib/commonjs/mol-script/transpilers/jmol/properties.js +2 -2
- package/lib/commonjs/mol-script/transpilers/vmd/properties.js +2 -2
- package/lib/commonjs/mol-script/util/id-list.js +1 -2
- package/lib/commonjs/mol-state/object.d.ts +4 -4
- package/lib/commonjs/mol-state/state.d.ts +4 -4
- package/lib/commonjs/mol-state/transform.d.ts +1 -1
- package/lib/commonjs/mol-state/transformer.d.ts +1 -1
- package/lib/commonjs/mol-task/execution/observable.js +4 -5
- package/lib/commonjs/mol-task/util/chunked.js +1 -2
- package/lib/commonjs/mol-task/util/multistep.js +1 -2
- package/lib/commonjs/mol-task/util/scheduler.d.ts +0 -1
- package/lib/commonjs/mol-theme/clipping.js +1 -2
- package/lib/commonjs/mol-theme/color/atom-id.d.ts +2 -2
- package/lib/commonjs/mol-theme/color/atom-id.js +3 -3
- package/lib/commonjs/mol-theme/color/carbohydrate-symbol.js +3 -3
- package/lib/commonjs/mol-theme/color/cartoon.js +3 -3
- package/lib/commonjs/mol-theme/color/chain-id.d.ts +2 -2
- package/lib/commonjs/mol-theme/color/chain-id.js +3 -3
- package/lib/commonjs/mol-theme/color/element-index.d.ts +2 -2
- package/lib/commonjs/mol-theme/color/element-index.js +3 -3
- package/lib/commonjs/mol-theme/color/element-symbol.js +4 -4
- package/lib/commonjs/mol-theme/color/entity-id.d.ts +2 -2
- package/lib/commonjs/mol-theme/color/entity-id.js +3 -3
- package/lib/commonjs/mol-theme/color/entity-source.d.ts +2 -2
- package/lib/commonjs/mol-theme/color/entity-source.js +3 -3
- package/lib/commonjs/mol-theme/color/external-volume.d.ts +2 -2
- package/lib/commonjs/mol-theme/color/external-volume.js +2 -2
- package/lib/commonjs/mol-theme/color/hydrophobicity.js +4 -4
- package/lib/commonjs/mol-theme/color/illustrative.js +3 -3
- package/lib/commonjs/mol-theme/color/model-index.d.ts +2 -2
- package/lib/commonjs/mol-theme/color/model-index.js +3 -3
- package/lib/commonjs/mol-theme/color/molecule-type.js +4 -4
- package/lib/commonjs/mol-theme/color/occupancy.js +4 -4
- package/lib/commonjs/mol-theme/color/operator-hkl.d.ts +2 -2
- package/lib/commonjs/mol-theme/color/operator-hkl.js +3 -3
- package/lib/commonjs/mol-theme/color/operator-name.d.ts +2 -2
- package/lib/commonjs/mol-theme/color/operator-name.js +3 -3
- package/lib/commonjs/mol-theme/color/partial-charge.js +3 -3
- package/lib/commonjs/mol-theme/color/polymer-id.d.ts +2 -2
- package/lib/commonjs/mol-theme/color/polymer-id.js +3 -3
- package/lib/commonjs/mol-theme/color/polymer-index.d.ts +2 -2
- package/lib/commonjs/mol-theme/color/polymer-index.js +3 -3
- package/lib/commonjs/mol-theme/color/residue-name.js +4 -4
- package/lib/commonjs/mol-theme/color/secondary-structure.js +4 -4
- package/lib/commonjs/mol-theme/color/sequence-id.js +3 -3
- package/lib/commonjs/mol-theme/color/shape-group.js +3 -3
- package/lib/commonjs/mol-theme/color/structure-index.d.ts +2 -2
- package/lib/commonjs/mol-theme/color/structure-index.js +3 -3
- package/lib/commonjs/mol-theme/color/trajectory-index.d.ts +2 -2
- package/lib/commonjs/mol-theme/color/trajectory-index.js +3 -3
- package/lib/commonjs/mol-theme/color/uncertainty.js +4 -4
- package/lib/commonjs/mol-theme/color/uniform.js +3 -3
- package/lib/commonjs/mol-theme/color/unit-index.d.ts +2 -2
- package/lib/commonjs/mol-theme/color/unit-index.js +3 -3
- package/lib/commonjs/mol-theme/color/volume-segment.d.ts +2 -2
- package/lib/commonjs/mol-theme/color/volume-segment.js +3 -3
- package/lib/commonjs/mol-theme/color/volume-value.js +3 -3
- package/lib/commonjs/mol-theme/color.d.ts +16 -16
- package/lib/commonjs/mol-theme/color.js +2 -2
- package/lib/commonjs/mol-theme/emissive.js +1 -2
- package/lib/commonjs/mol-theme/label.js +11 -11
- package/lib/commonjs/mol-theme/overpaint.js +1 -2
- package/lib/commonjs/mol-theme/size/physical.js +4 -4
- package/lib/commonjs/mol-theme/size/shape-group.js +3 -3
- package/lib/commonjs/mol-theme/size/uncertainty.js +4 -4
- package/lib/commonjs/mol-theme/size/uniform.js +3 -3
- package/lib/commonjs/mol-theme/substance.js +1 -2
- package/lib/commonjs/mol-theme/theme.d.ts +3 -3
- package/lib/commonjs/mol-theme/transparency.js +1 -2
- package/lib/commonjs/mol-util/array.js +22 -23
- package/lib/commonjs/mol-util/binding.js +1 -2
- package/lib/commonjs/mol-util/clip.js +1 -2
- package/lib/commonjs/mol-util/color/color.js +6 -7
- package/lib/commonjs/mol-util/color/distinct.js +2 -2
- package/lib/commonjs/mol-util/color/lists.js +2 -2
- package/lib/commonjs/mol-util/color/palette.d.ts +4 -3
- package/lib/commonjs/mol-util/color/palette.js +2 -3
- package/lib/commonjs/mol-util/color/params.js +1 -2
- package/lib/commonjs/mol-util/color/scale.d.ts +2 -1
- package/lib/commonjs/mol-util/color/spaces/hcl.js +1 -2
- package/lib/commonjs/mol-util/color/spaces/lab.js +1 -2
- package/lib/commonjs/mol-util/data-source.d.ts +0 -1
- package/lib/commonjs/mol-util/data-source.js +7 -7
- package/lib/commonjs/mol-util/date.js +2 -3
- package/lib/commonjs/mol-util/debug.js +7 -7
- package/lib/commonjs/mol-util/download.js +1 -2
- package/lib/commonjs/mol-util/file-info.js +1 -2
- package/lib/commonjs/mol-util/id-factory.js +1 -2
- package/lib/commonjs/mol-util/index.js +13 -13
- package/lib/commonjs/mol-util/input/event-offset.js +1 -2
- package/lib/commonjs/mol-util/input/input-observer.js +4 -4
- package/lib/commonjs/mol-util/is-little-endian.js +1 -2
- package/lib/commonjs/mol-util/json.js +2 -3
- package/lib/commonjs/mol-util/legend.js +2 -3
- package/lib/commonjs/mol-util/make-dir.js +1 -2
- package/lib/commonjs/mol-util/map.js +1 -2
- package/lib/commonjs/mol-util/marker-action.js +6 -6
- package/lib/commonjs/mol-util/mask.js +2 -2
- package/lib/commonjs/mol-util/material.js +1 -2
- package/lib/commonjs/mol-util/memoize.js +2 -3
- package/lib/commonjs/mol-util/nodejs-shims.d.ts +1 -1
- package/lib/commonjs/mol-util/now.js +2 -2
- package/lib/commonjs/mol-util/number-packing.js +3 -4
- package/lib/commonjs/mol-util/number.js +7 -8
- package/lib/commonjs/mol-util/object.js +14 -15
- package/lib/commonjs/mol-util/param-mapping.js +1 -2
- package/lib/commonjs/mol-util/read.js +6 -7
- package/lib/commonjs/mol-util/reference-cache.js +3 -4
- package/lib/commonjs/mol-util/retry-if.js +1 -2
- package/lib/commonjs/mol-util/sleep.js +1 -2
- package/lib/commonjs/mol-util/string.js +18 -18
- package/lib/commonjs/mol-util/type-helpers.js +3 -4
- package/lib/commonjs/mol-util/url.js +2 -3
- package/lib/commonjs/mol-util/zip/bin.js +9 -10
- package/lib/commonjs/mol-util/zip/checksum.js +2 -3
- package/lib/commonjs/mol-util/zip/deflate.js +1 -2
- package/lib/commonjs/mol-util/zip/huffman.js +1 -2
- package/lib/commonjs/mol-util/zip/inflate.js +1 -2
- package/lib/commonjs/mol-util/zip/util.js +4 -4
- package/lib/commonjs/mol-util/zip/zip.js +8 -9
- package/lib/commonjs/servers/common/file-handle.js +1 -2
- package/lib/commonjs/servers/common/swagger-ui/index.js +2 -3
- package/lib/commonjs/servers/common/swagger-ui/indexTemplate.js +66 -66
- package/lib/commonjs/servers/common/util.js +1 -2
- package/lib/commonjs/servers/model/config.d.ts +4 -4
- package/lib/commonjs/servers/model/config.js +2 -2
- package/lib/commonjs/servers/model/preprocess/converter.js +1 -2
- package/lib/commonjs/servers/model/preprocess/parallel.js +2 -3
- package/lib/commonjs/servers/model/preprocess/preprocess.js +1 -2
- package/lib/commonjs/servers/model/preprocess/util.js +2 -3
- package/lib/commonjs/servers/model/property-provider.js +2 -3
- package/lib/commonjs/servers/model/query/atoms.js +1 -2
- package/lib/commonjs/servers/model/server/api-local.js +1 -2
- package/lib/commonjs/servers/model/server/api-schema.js +2 -2
- package/lib/commonjs/servers/model/server/api-web-multiple.js +1 -2
- package/lib/commonjs/servers/model/server/api-web.js +2 -3
- package/lib/commonjs/servers/model/server/api.js +4 -4
- package/lib/commonjs/servers/model/server/jobs.js +3 -3
- package/lib/commonjs/servers/model/server/query.js +2 -3
- package/lib/commonjs/servers/model/server/structure-wrapper.js +6 -6
- package/lib/commonjs/servers/model/utils/fetch-retry.js +1 -2
- package/lib/commonjs/servers/model/utils/tar.d.ts +0 -1
- package/lib/commonjs/servers/model/utils/tar.js +2 -2
- package/lib/commonjs/servers/plugin-state/api-schema.js +2 -2
- package/lib/commonjs/servers/plugin-state/config.js +1 -2
- package/lib/commonjs/servers/volume/common/binary-schema.d.ts +0 -1
- package/lib/commonjs/servers/volume/common/binary-schema.js +5 -5
- package/lib/commonjs/servers/volume/common/data-format.d.ts +0 -1
- package/lib/commonjs/servers/volume/common/data-format.js +2 -3
- package/lib/commonjs/servers/volume/common/file.js +4 -5
- package/lib/commonjs/servers/volume/config.d.ts +1 -5
- package/lib/commonjs/servers/volume/config.js +8 -8
- package/lib/commonjs/servers/volume/pack/data-model.js +2 -3
- package/lib/commonjs/servers/volume/pack/downsampling.js +2 -3
- package/lib/commonjs/servers/volume/pack/format/ccp4.js +2 -2
- package/lib/commonjs/servers/volume/pack/format/dsn6.js +2 -2
- package/lib/commonjs/servers/volume/pack/format.js +4 -5
- package/lib/commonjs/servers/volume/pack/main.js +1 -2
- package/lib/commonjs/servers/volume/pack/sampling.js +2 -3
- package/lib/commonjs/servers/volume/pack/writer.js +1 -2
- package/lib/commonjs/servers/volume/server/algebra/box.js +14 -15
- package/lib/commonjs/servers/volume/server/algebra/coordinate.js +17 -18
- package/lib/commonjs/servers/volume/server/api.js +3 -4
- package/lib/commonjs/servers/volume/server/local-api.js +1 -2
- package/lib/commonjs/servers/volume/server/query/compose.js +1 -2
- package/lib/commonjs/servers/volume/server/query/encode.js +1 -2
- package/lib/commonjs/servers/volume/server/query/execute.js +1 -2
- package/lib/commonjs/servers/volume/server/query/identify.js +1 -2
- package/lib/commonjs/servers/volume/server/web-api.js +1 -2
- package/lib/commonjs/servers/volume/server/web-schema.js +2 -2
- 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.d.ts +1 -1
- package/lib/examples/lighting/index.html +88 -88
- package/lib/examples/lighting/index.js +2 -1
- package/lib/examples/proteopedia-wrapper/coloring.d.ts +5 -20
- 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 +3 -3
- package/lib/extensions/anvil/behavior.d.ts +1 -0
- package/lib/extensions/anvil/representation.d.ts +4 -0
- package/lib/extensions/assembly-symmetry/behavior.d.ts +1 -0
- package/lib/extensions/assembly-symmetry/color.d.ts +2 -2
- package/lib/extensions/assembly-symmetry/prop.js +24 -24
- package/lib/extensions/assembly-symmetry/representation.d.ts +1 -0
- 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.js +5 -5
- package/lib/extensions/dnatco/ntc-tube/representation.d.ts +3 -0
- package/lib/extensions/g3d/format.d.ts +3 -3
- package/lib/extensions/geo-export/mesh-exporter.d.ts +2 -2
- package/lib/extensions/geo-export/ui.d.ts +0 -1
- package/lib/extensions/geo-export/usdz-exporter.js +41 -41
- package/lib/extensions/meshes/mesh-extension.d.ts +3 -6
- package/lib/extensions/meshes/mesh-streaming/behavior.d.ts +3 -3
- package/lib/extensions/meshes/mesh-streaming/server-info.d.ts +3 -3
- package/lib/extensions/model-archive/quality-assessment/color/plddt.d.ts +1 -1
- package/lib/extensions/model-archive/quality-assessment/color/plddt.js +8 -5
- package/lib/extensions/model-export/ui.d.ts +0 -1
- package/lib/extensions/mp4-export/controls.d.ts +1 -1
- package/lib/extensions/mp4-export/ui.d.ts +0 -1
- package/lib/extensions/mvs/components/annotation-label/representation.d.ts +32 -32
- package/lib/extensions/mvs/components/annotation-label/visual.d.ts +16 -16
- package/lib/extensions/mvs/components/custom-label/representation.d.ts +32 -32
- package/lib/extensions/mvs/components/custom-label/visual.d.ts +16 -16
- package/lib/extensions/mvs/components/formats.d.ts +6 -6
- package/lib/extensions/mvs/helpers/indexing.d.ts +2 -2
- package/lib/extensions/mvs/helpers/schemas.d.ts +1 -1
- package/lib/extensions/mvs/helpers/utils.d.ts +1 -1
- package/lib/extensions/mvs/load-helpers.d.ts +1 -1
- package/lib/extensions/mvs/tree/mvs/mvs-builder.d.ts +0 -8
- package/lib/extensions/rcsb/validation-report/representation.d.ts +5 -0
- package/lib/extensions/sb-ncbr/tunnels/data-model.d.ts +6 -6
- package/lib/extensions/volumes-and-segmentations/entry-root.d.ts +3 -3
- package/lib/extensions/volumes-and-segmentations/entry-state.d.ts +3 -3
- package/lib/extensions/volumes-and-segmentations/global-state.d.ts +3 -3
- package/lib/extensions/volumes-and-segmentations/ui.d.ts +0 -1
- package/lib/extensions/zenodo/ui.d.ts +0 -1
- package/lib/mol-canvas3d/camera/transition.d.ts +1 -1
- package/lib/mol-canvas3d/camera/transition.js +23 -6
- package/lib/mol-canvas3d/canvas3d.d.ts +9 -1
- package/lib/mol-canvas3d/helper/bounding-sphere-helper.d.ts +1 -6
- 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/image.d.ts +2 -0
- package/lib/mol-canvas3d/passes/multi-sample.d.ts +2 -1
- package/lib/mol-canvas3d/passes/multi-sample.js +4 -3
- package/lib/mol-canvas3d/passes/postprocessing.d.ts +1 -0
- package/lib/mol-canvas3d/passes/postprocessing.js +5 -0
- package/lib/mol-data/db/column.d.ts +1 -1
- package/lib/mol-geo/geometry/base.d.ts +1 -1
- package/lib/mol-geo/geometry/cylinders/cylinders.d.ts +1 -0
- package/lib/mol-geo/geometry/cylinders/cylinders.js +3 -0
- package/lib/mol-geo/geometry/direct-volume/direct-volume.d.ts +1 -0
- package/lib/mol-geo/geometry/direct-volume/direct-volume.js +3 -0
- package/lib/mol-geo/geometry/image/image.d.ts +1 -1
- package/lib/mol-geo/geometry/mesh/mesh.d.ts +1 -0
- package/lib/mol-geo/geometry/mesh/mesh.js +3 -0
- package/lib/mol-geo/geometry/points/points.d.ts +1 -1
- package/lib/mol-geo/geometry/spheres/spheres.d.ts +1 -0
- package/lib/mol-geo/geometry/spheres/spheres.js +3 -0
- package/lib/mol-geo/geometry/texture-mesh/texture-mesh.d.ts +1 -0
- package/lib/mol-geo/geometry/texture-mesh/texture-mesh.js +3 -0
- package/lib/mol-gl/renderable/cylinders.d.ts +1 -0
- package/lib/mol-gl/renderable/cylinders.js +1 -0
- package/lib/mol-gl/renderable/direct-volume.d.ts +1 -0
- package/lib/mol-gl/renderable/direct-volume.js +1 -0
- package/lib/mol-gl/renderable/mesh.d.ts +1 -0
- package/lib/mol-gl/renderable/mesh.js +1 -0
- package/lib/mol-gl/renderable/schema.d.ts +1 -0
- package/lib/mol-gl/renderable/schema.js +1 -0
- package/lib/mol-gl/renderable/spheres.d.ts +1 -0
- package/lib/mol-gl/renderable/spheres.js +1 -0
- package/lib/mol-gl/renderable/texture-mesh.d.ts +1 -0
- package/lib/mol-gl/renderable/texture-mesh.js +1 -0
- package/lib/mol-gl/renderer.d.ts +1 -0
- package/lib/mol-gl/renderer.js +6 -0
- package/lib/mol-gl/shader/background.frag.js +95 -95
- package/lib/mol-gl/shader/background.vert.js +11 -11
- package/lib/mol-gl/shader/blend-back-dpoit.frag.js +13 -13
- package/lib/mol-gl/shader/bloom/blur.frag.js +28 -28
- package/lib/mol-gl/shader/bloom/composite.frag.js +33 -33
- package/lib/mol-gl/shader/bloom/luminosity.frag.js +52 -52
- package/lib/mol-gl/shader/cas.frag.js +144 -144
- package/lib/mol-gl/shader/chunks/apply-fog.glsl.js +31 -31
- package/lib/mol-gl/shader/chunks/apply-interior-color.glsl.js +12 -12
- package/lib/mol-gl/shader/chunks/apply-light-color.glsl.d.ts +2 -1
- package/lib/mol-gl/shader/chunks/apply-light-color.glsl.js +110 -77
- package/lib/mol-gl/shader/chunks/apply-marker-color.glsl.js +16 -16
- package/lib/mol-gl/shader/chunks/assign-clipping-varying.glsl.js +8 -8
- package/lib/mol-gl/shader/chunks/assign-color-varying.glsl.js +140 -140
- package/lib/mol-gl/shader/chunks/assign-group.glsl.js +6 -6
- package/lib/mol-gl/shader/chunks/assign-marker-varying.glsl.js +8 -8
- package/lib/mol-gl/shader/chunks/assign-material-color.glsl.js +112 -112
- package/lib/mol-gl/shader/chunks/assign-position.glsl.js +14 -14
- package/lib/mol-gl/shader/chunks/assign-size.glsl.js +18 -18
- package/lib/mol-gl/shader/chunks/check-picking-alpha.glsl.js +12 -12
- package/lib/mol-gl/shader/chunks/check-transparency.glsl.js +16 -16
- package/lib/mol-gl/shader/chunks/clip-instance.glsl.js +7 -7
- package/lib/mol-gl/shader/chunks/clip-pixel.glsl.js +5 -5
- package/lib/mol-gl/shader/chunks/color-frag-params.glsl.js +60 -60
- package/lib/mol-gl/shader/chunks/color-vert-params.glsl.js +122 -122
- package/lib/mol-gl/shader/chunks/common-clip.glsl.js +104 -104
- package/lib/mol-gl/shader/chunks/common-frag-params.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/common-frag-params.glsl.js +151 -150
- package/lib/mol-gl/shader/chunks/common-vert-params.glsl.js +61 -61
- package/lib/mol-gl/shader/chunks/common.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/common.glsl.js +240 -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 -1
- package/lib/mol-gl/shader/cylinders.frag.js +275 -266
- package/lib/mol-gl/shader/cylinders.vert.js +89 -89
- package/lib/mol-gl/shader/depth-merge.frag.js +23 -23
- package/lib/mol-gl/shader/direct-volume.frag.d.ts +1 -1
- package/lib/mol-gl/shader/direct-volume.frag.js +363 -362
- package/lib/mol-gl/shader/direct-volume.vert.js +41 -41
- package/lib/mol-gl/shader/dof.frag.js +112 -112
- package/lib/mol-gl/shader/evaluate-dpoit.frag.js +10 -10
- package/lib/mol-gl/shader/evaluate-wboit.frag.js +17 -17
- package/lib/mol-gl/shader/fxaa.frag.js +228 -228
- package/lib/mol-gl/shader/gaussian-density.frag.js +49 -49
- package/lib/mol-gl/shader/gaussian-density.vert.js +27 -27
- package/lib/mol-gl/shader/hi-z.frag.js +18 -18
- package/lib/mol-gl/shader/histogram-pyramid/reduction.frag.js +58 -58
- package/lib/mol-gl/shader/histogram-pyramid/sum.frag.js +19 -19
- package/lib/mol-gl/shader/image.frag.js +169 -169
- package/lib/mol-gl/shader/image.vert.js +21 -21
- package/lib/mol-gl/shader/lines.frag.js +42 -42
- package/lib/mol-gl/shader/lines.vert.js +117 -117
- package/lib/mol-gl/shader/marching-cubes/active-voxels.frag.js +70 -70
- package/lib/mol-gl/shader/marching-cubes/isosurface.frag.js +311 -311
- package/lib/mol-gl/shader/marking/edge.frag.js +28 -28
- package/lib/mol-gl/shader/marking/overlay.frag.js +26 -26
- package/lib/mol-gl/shader/mesh.frag.js +65 -65
- package/lib/mol-gl/shader/mesh.vert.js +49 -49
- package/lib/mol-gl/shader/outlines.frag.js +95 -95
- package/lib/mol-gl/shader/points.frag.js +59 -59
- package/lib/mol-gl/shader/points.vert.js +38 -38
- package/lib/mol-gl/shader/postprocessing.frag.js +150 -150
- package/lib/mol-gl/shader/quad.vert.js +10 -10
- package/lib/mol-gl/shader/shadows.frag.js +123 -123
- package/lib/mol-gl/shader/smaa/blend.frag.js +56 -56
- package/lib/mol-gl/shader/smaa/blend.vert.js +25 -25
- package/lib/mol-gl/shader/smaa/edges.frag.js +66 -66
- package/lib/mol-gl/shader/smaa/edges.vert.js +26 -26
- package/lib/mol-gl/shader/smaa/weights.frag.js +206 -206
- package/lib/mol-gl/shader/smaa/weights.vert.js +32 -32
- package/lib/mol-gl/shader/spheres.frag.js +148 -148
- package/lib/mol-gl/shader/spheres.vert.js +132 -132
- package/lib/mol-gl/shader/ssao-blur.frag.d.ts +1 -1
- package/lib/mol-gl/shader/ssao-blur.frag.js +100 -97
- package/lib/mol-gl/shader/ssao.frag.js +211 -211
- package/lib/mol-gl/shader/text.frag.js +85 -85
- package/lib/mol-gl/shader/text.vert.js +85 -85
- package/lib/mol-gl/shader/util/grid3d-template.frag.js +46 -46
- package/lib/mol-gl/shader-code.js +16 -16
- package/lib/mol-gl/webgl/compat.js +12 -12
- package/lib/mol-gl/webgl/render-item.d.ts +2 -2
- package/lib/mol-io/common/simple-buffer.d.ts +0 -1
- 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.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 +9 -1
- package/lib/mol-io/reader/cif/schema/mmcif.js +9 -1
- package/lib/mol-io/reader/common/text/column/fixed.d.ts +1 -1
- package/lib/mol-io/reader/common/text/column/token.d.ts +1 -1
- package/lib/mol-io/reader/ply/schema.d.ts +1 -1
- package/lib/mol-model/loci.d.ts +1 -1
- package/lib/mol-model/sequence/alignment/alignment.d.ts +2 -1
- package/lib/mol-model/structure/model/types/saccharides.js +1 -1
- package/lib/mol-model/structure/model/types.d.ts +3 -3
- package/lib/mol-model/structure/query/queries/generators.js +2 -2
- package/lib/mol-model/structure/structure/properties.d.ts +1 -0
- package/lib/mol-model/structure/structure/properties.js +1 -0
- package/lib/mol-model/volume/volume.d.ts +6 -6
- package/lib/mol-model-formats/shape/ply.d.ts +2 -0
- package/lib/mol-model-formats/structure/basic/schema.d.ts +1 -0
- package/lib/mol-model-formats/structure/common/entity.d.ts +1 -0
- 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-model-props/sequence/themes/sifts-mapping.d.ts +2 -2
- package/lib/mol-plugin/behavior/behavior.d.ts +9 -9
- package/lib/mol-plugin/behavior/dynamic/volume-streaming/behavior.d.ts +3 -3
- package/lib/mol-plugin/behavior/dynamic/volume-streaming/model.d.ts +4 -4
- package/lib/mol-plugin/commands.d.ts +23 -87
- package/lib/mol-plugin/context.d.ts +3 -2
- package/lib/mol-plugin/context.js +4 -2
- package/lib/mol-plugin/state.d.ts +7 -7
- package/lib/mol-plugin/util/headless-screenshot.d.ts +1 -1
- package/lib/mol-plugin/util/headless-screenshot.js +3 -1
- package/lib/mol-plugin/util/viewport-screenshot.d.ts +1 -1
- package/lib/mol-plugin/util/viewport-screenshot.js +2 -1
- package/lib/mol-plugin/version.js +2 -2
- package/lib/mol-plugin-state/actions/volume.d.ts +1 -1
- package/lib/mol-plugin-state/actions/volume.js +4 -12
- package/lib/mol-plugin-state/animation/built-in/model-index.d.ts +2 -2
- package/lib/mol-plugin-state/formats/registry.d.ts +1 -1
- package/lib/mol-plugin-state/formats/trajectory.d.ts +9 -9
- package/lib/mol-plugin-state/formats/volume.d.ts +0 -1
- package/lib/mol-plugin-state/manager/structure/hierarchy.d.ts +3 -3
- package/lib/mol-plugin-state/manager/structure/measurement.d.ts +4 -0
- package/lib/mol-plugin-state/objects.d.ts +97 -97
- package/lib/mol-plugin-state/transforms/data.d.ts +10 -1
- package/lib/mol-plugin-state/transforms/data.js +30 -1
- package/lib/mol-plugin-state/transforms/representation.d.ts +6 -0
- package/lib/mol-plugin-ui/base.js +2 -1
- package/lib/mol-plugin-ui/controls/icons.d.ts +5 -0
- package/lib/mol-plugin-ui/controls/icons.js +10 -0
- package/lib/mol-plugin-ui/controls/parameters.d.ts +3 -3
- package/lib/mol-plugin-ui/controls.js +1 -1
- package/lib/mol-plugin-ui/left-panel.d.ts +0 -1
- package/lib/mol-plugin-ui/plugin.js +3 -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 +451 -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/spec.d.ts +10 -10
- package/lib/mol-plugin-ui/spec.js +1 -1
- package/lib/mol-plugin-ui/state/apply-action.d.ts +1 -1
- package/lib/mol-plugin-ui/state/update-transform.d.ts +1 -1
- package/lib/mol-plugin-ui/structure/quick-styles.d.ts +2 -1
- package/lib/mol-plugin-ui/structure/quick-styles.js +5 -2
- package/lib/mol-plugin-ui/structure/selection.d.ts +2 -2
- package/lib/mol-repr/representation.d.ts +3 -3
- package/lib/mol-repr/shape/loci/angle.d.ts +1 -0
- package/lib/mol-repr/shape/loci/dihedral.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-visual.d.ts +5 -0
- package/lib/mol-repr/structure/params.d.ts +5 -0
- package/lib/mol-repr/structure/registry.d.ts +11 -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/molecular-surface.d.ts +3 -0
- package/lib/mol-repr/structure/representation/orientation.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-visual.d.ts +5 -0
- package/lib/mol-repr/structure/visual/bond-inter-unit-cylinder.d.ts +2 -0
- package/lib/mol-repr/structure/visual/bond-intra-unit-cylinder.d.ts +2 -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-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/molecular-surface-mesh.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/structure/visual/util/nucleotide.d.ts +60 -60
- package/lib/mol-repr/volume/direct-volume.d.ts +48 -45
- package/lib/mol-repr/volume/isosurface.d.ts +95 -90
- package/lib/mol-repr/volume/registry.d.ts +63 -60
- package/lib/mol-repr/volume/segment.d.ts +80 -75
- package/lib/mol-repr/volume/slice.d.ts +45 -45
- package/lib/mol-script/language/symbol-table/core.d.ts +1 -1
- package/lib/mol-state/object.d.ts +4 -4
- package/lib/mol-state/state.d.ts +4 -4
- package/lib/mol-state/transform.d.ts +1 -1
- package/lib/mol-state/transformer.d.ts +1 -1
- package/lib/mol-task/util/scheduler.d.ts +0 -1
- package/lib/mol-theme/color/atom-id.d.ts +2 -2
- package/lib/mol-theme/color/chain-id.d.ts +2 -2
- package/lib/mol-theme/color/element-index.d.ts +2 -2
- package/lib/mol-theme/color/entity-id.d.ts +2 -2
- package/lib/mol-theme/color/entity-source.d.ts +2 -2
- package/lib/mol-theme/color/external-volume.d.ts +2 -2
- package/lib/mol-theme/color/model-index.d.ts +2 -2
- package/lib/mol-theme/color/operator-hkl.d.ts +2 -2
- package/lib/mol-theme/color/operator-name.d.ts +2 -2
- package/lib/mol-theme/color/polymer-id.d.ts +2 -2
- package/lib/mol-theme/color/polymer-index.d.ts +2 -2
- package/lib/mol-theme/color/structure-index.d.ts +2 -2
- package/lib/mol-theme/color/trajectory-index.d.ts +2 -2
- package/lib/mol-theme/color/unit-index.d.ts +2 -2
- package/lib/mol-theme/color/volume-segment.d.ts +2 -2
- package/lib/mol-theme/color.d.ts +16 -16
- package/lib/mol-theme/theme.d.ts +3 -3
- package/lib/mol-util/color/palette.d.ts +4 -3
- package/lib/mol-util/color/scale.d.ts +2 -1
- package/lib/mol-util/data-source.d.ts +0 -1
- package/lib/mol-util/nodejs-shims.d.ts +1 -1
- package/lib/servers/common/swagger-ui/indexTemplate.js +66 -66
- package/lib/servers/model/config.d.ts +4 -4
- package/lib/servers/model/utils/tar.d.ts +0 -1
- package/lib/servers/volume/common/binary-schema.d.ts +0 -1
- package/lib/servers/volume/common/data-format.d.ts +0 -1
- package/lib/servers/volume/config.d.ts +1 -5
- package/lib/servers/volume/config.js +5 -5
- package/package.json +197 -196
|
@@ -1,315 +1,315 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.isosurface_frag = void 0;
|
|
4
|
-
exports.isosurface_frag = `
|
|
5
|
-
precision highp float;
|
|
6
|
-
precision highp int;
|
|
7
|
-
precision highp sampler2D;
|
|
8
|
-
|
|
9
|
-
#if __VERSION__ == 100
|
|
10
|
-
uniform sampler2D tActiveVoxelsPyramid;
|
|
11
|
-
#else
|
|
12
|
-
precision highp isampler2D;
|
|
13
|
-
uniform isampler2D tActiveVoxelsPyramid;
|
|
14
|
-
#endif
|
|
15
|
-
|
|
16
|
-
uniform sampler2D tActiveVoxelsBase;
|
|
17
|
-
uniform sampler2D tVolumeData;
|
|
18
|
-
uniform sampler2D tTriIndices;
|
|
19
|
-
|
|
20
|
-
uniform float uIsoValue;
|
|
21
|
-
uniform float uLevels;
|
|
22
|
-
uniform float uSize;
|
|
23
|
-
uniform float uCount;
|
|
24
|
-
uniform bool uInvert;
|
|
25
|
-
|
|
26
|
-
uniform vec3 uGridDim;
|
|
27
|
-
uniform vec3 uGridTexDim;
|
|
28
|
-
uniform mat4 uGridTransform;
|
|
29
|
-
|
|
30
|
-
// scale to volume data coord
|
|
31
|
-
uniform vec2 uScale;
|
|
32
|
-
|
|
33
|
-
#include common
|
|
34
|
-
|
|
35
|
-
// cube corners (excluding origin)
|
|
36
|
-
const vec3 c1 = vec3(1., 0., 0.);
|
|
37
|
-
const vec3 c2 = vec3(1., 1., 0.);
|
|
38
|
-
const vec3 c3 = vec3(0., 1., 0.);
|
|
39
|
-
const vec3 c4 = vec3(0., 0., 1.);
|
|
40
|
-
const vec3 c5 = vec3(1., 0., 1.);
|
|
41
|
-
const vec3 c6 = vec3(1., 1., 1.);
|
|
42
|
-
const vec3 c7 = vec3(0., 1., 1.);
|
|
43
|
-
|
|
44
|
-
vec3 index3dFrom2d(vec2 coord) {
|
|
45
|
-
vec2 gridTexPos = coord * uGridTexDim.xy;
|
|
46
|
-
vec2 columnRow = ivec2Div(gridTexPos, uGridDim.xy);
|
|
47
|
-
vec2 posXY = gridTexPos - columnRow * uGridDim.xy;
|
|
48
|
-
float posZ = columnRow.y * intDiv(uGridTexDim.x, uGridDim.x) + columnRow.x;
|
|
49
|
-
return vec3(posXY, posZ);
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
vec4 texture3dFrom2dNearest(sampler2D tex, vec3 pos, vec3 gridDim, vec2 texDim) {
|
|
53
|
-
float zSlice = floor(pos.z * gridDim.z + 0.5); // round to nearest z-slice
|
|
54
|
-
float column = intDiv(intMod(zSlice * gridDim.x, texDim.x), gridDim.x);
|
|
55
|
-
float row = intDiv(zSlice * gridDim.x, texDim.x);
|
|
56
|
-
vec2 coord = (vec2(column * gridDim.x, row * gridDim.y) + (pos.xy * gridDim.xy)) / (texDim / uScale);
|
|
57
|
-
return texture2D(tex, coord + 0.5 / (texDim / uScale));
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
vec4 voxel(vec3 pos) {
|
|
61
|
-
pos = min(max(vec3(0.0), pos), uGridDim - vec3(1.0));
|
|
62
|
-
return texture3dFrom2dNearest(tVolumeData, pos / uGridDim, uGridDim, uGridTexDim.xy);
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
vec4 voxelPadded(vec3 pos) {
|
|
66
|
-
pos = min(max(vec3(0.0), pos), uGridDim - vec3(vec2(2.0), 1.0)); // remove xy padding
|
|
67
|
-
return texture3dFrom2dNearest(tVolumeData, pos / uGridDim, uGridDim, uGridTexDim.xy);
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
int idot2(const in ivec2 a, const in ivec2 b) {
|
|
71
|
-
return a.x * b.x + a.y * b.y;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
int idot4(const in ivec4 a, const in ivec4 b) {
|
|
75
|
-
return a.x * b.x + a.y * b.y + a.z * b.z + a.w * b.w;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
#if __VERSION__ == 100
|
|
79
|
-
int pyramidVoxel(vec2 pos) {
|
|
80
|
-
return int(unpackRGBToInt(texture2D(tActiveVoxelsPyramid, pos / (vec2(1.0, 0.5) * uSize)).rgb));
|
|
81
|
-
}
|
|
82
|
-
#else
|
|
83
|
-
int pyramidVoxel(vec2 pos) {
|
|
84
|
-
return texture2D(tActiveVoxelsPyramid, pos / (vec2(1.0, 0.5) * uSize)).r;
|
|
85
|
-
}
|
|
86
|
-
#endif
|
|
87
|
-
|
|
88
|
-
vec4 baseVoxel(vec2 pos) {
|
|
89
|
-
return texture2D(tActiveVoxelsBase, pos / uSize);
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
vec4 getGroup(const in vec3 p) {
|
|
93
|
-
vec3 gridDim = uGridDim - vec3(1.0, 1.0, 0.0); // remove xy padding
|
|
94
|
-
// note that we swap x and z because the texture is flipped around y
|
|
95
|
-
#if defined(dAxisOrder_012)
|
|
96
|
-
float group = p.z + p.y * gridDim.z + p.x * gridDim.z * gridDim.y; // 210
|
|
97
|
-
#elif defined(dAxisOrder_021)
|
|
98
|
-
float group = p.y + p.z * gridDim.y + p.x * gridDim.y * gridDim.z; // 120
|
|
99
|
-
#elif defined(dAxisOrder_102)
|
|
100
|
-
float group = p.z + p.x * gridDim.z + p.y * gridDim.z * gridDim.x; // 201
|
|
101
|
-
#elif defined(dAxisOrder_120)
|
|
102
|
-
float group = p.x + p.z * gridDim.x + p.y * gridDim.x * gridDim.z; // 021
|
|
103
|
-
#elif defined(dAxisOrder_201)
|
|
104
|
-
float group = p.y + p.x * gridDim.y + p.z * gridDim.y * gridDim.x; // 102
|
|
105
|
-
#elif defined(dAxisOrder_210)
|
|
106
|
-
float group = p.x + p.y * gridDim.x + p.z * gridDim.x * gridDim.y; // 012
|
|
107
|
-
#endif
|
|
108
|
-
return vec4(group > 16777215.5 ? vec3(1.0) : packIntToRGB(group), 1.0);
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
void main(void) {
|
|
112
|
-
// get 1D index
|
|
113
|
-
int vI = int(gl_FragCoord.x) + int(gl_FragCoord.y) * int(uSize);
|
|
114
|
-
|
|
115
|
-
// ignore 1D indices outside of the grid
|
|
116
|
-
if(vI >= int(uCount)) discard;
|
|
117
|
-
|
|
118
|
-
ivec2 offset = ivec2(int(uSize) - 2, 0);
|
|
119
|
-
|
|
120
|
-
int start = 0;
|
|
121
|
-
ivec4 starts = ivec4(0);
|
|
122
|
-
ivec4 ends = ivec4(0);
|
|
123
|
-
int diff = 2;
|
|
124
|
-
ivec4 m = ivec4(0);
|
|
125
|
-
ivec2 position = ivec2(0);
|
|
126
|
-
ivec4 vI4 = ivec4(vI);
|
|
127
|
-
|
|
128
|
-
ivec2 relativePosition = ivec2(0);
|
|
129
|
-
int end = 0;
|
|
130
|
-
ivec2 pos1 = ivec2(0);
|
|
131
|
-
ivec2 pos2 = ivec2(0);
|
|
132
|
-
ivec2 pos3 = ivec2(0);
|
|
133
|
-
ivec2 pos4 = ivec2(0);
|
|
134
|
-
ivec3 vI3 = ivec3(vI);
|
|
135
|
-
ivec3 mask = ivec3(0);
|
|
136
|
-
|
|
137
|
-
// traverse the different levels of the pyramid
|
|
138
|
-
for(int i = 1; i < 14; i++) {
|
|
139
|
-
if(float(i) >= uLevels) break;
|
|
140
|
-
|
|
141
|
-
offset.x -= diff;
|
|
142
|
-
diff *= 2;
|
|
143
|
-
relativePosition = position + offset;
|
|
144
|
-
|
|
145
|
-
end = start + pyramidVoxel(vec2(relativePosition));
|
|
146
|
-
pos1 = ivec2(relativePosition);
|
|
147
|
-
starts.x = start;
|
|
148
|
-
ends.x = end;
|
|
149
|
-
pos2 = ivec2(relativePosition + ivec2(1, 0));
|
|
150
|
-
starts.y = ends.x;
|
|
151
|
-
ends.y = ends.x + pyramidVoxel(vec2(pos2));
|
|
152
|
-
pos3 = relativePosition + ivec2(0, 1);
|
|
153
|
-
starts.z = ends.y;
|
|
154
|
-
ends.z = ends.y + pyramidVoxel(vec2(pos3));
|
|
155
|
-
pos4 = relativePosition + ivec2(1, 1);
|
|
156
|
-
starts.w = ends.z;
|
|
157
|
-
mask = ivec3(greaterThanEqual(vI3, starts.rgb)) * ivec3(lessThan(vI3, ends.rgb));
|
|
158
|
-
m = ivec4(mask, 1 - int(any(bvec3(mask))));
|
|
159
|
-
|
|
160
|
-
relativePosition = m.x * pos1 + m.y * pos2 + m.z * pos3 + m.w * pos4;
|
|
161
|
-
start = idot4(m, starts);
|
|
162
|
-
position = 2 * (relativePosition - offset);
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
end = start + int(baseVoxel(vec2(position)).r * 255.0);
|
|
166
|
-
pos1 = position;
|
|
167
|
-
starts.x = start;
|
|
168
|
-
ends.x = end;
|
|
169
|
-
pos2 = position + ivec2(1, 0);
|
|
170
|
-
starts.y = ends.x;
|
|
171
|
-
ends.y = ends.x + int(baseVoxel(vec2(pos2)).r * 255.0);
|
|
172
|
-
pos3 = position + ivec2(0, 1);
|
|
173
|
-
starts.z = ends.y;
|
|
174
|
-
ends.z = ends.y + int(baseVoxel(vec2(pos3)).r * 255.0);
|
|
175
|
-
pos4 = position + ivec2(1, 1);
|
|
176
|
-
starts.w = ends.z;
|
|
177
|
-
mask = ivec3(greaterThanEqual(vI3, starts.rgb)) * ivec3(lessThan(vI3, ends.rgb));
|
|
178
|
-
m = ivec4(mask, 1 - int(any(bvec3(mask))));
|
|
179
|
-
position = m.x * pos1 + m.y * pos2 + m.z * pos3 + m.w * pos4;
|
|
180
|
-
|
|
181
|
-
vec2 coord2d = (vec2(position) / uSize) / uScale;
|
|
182
|
-
vec3 coord3d = floor(index3dFrom2d(coord2d) + 0.5);
|
|
183
|
-
|
|
184
|
-
float edgeIndex = floor(baseVoxel(vec2(position)).a * 255.0 + 0.5);
|
|
185
|
-
|
|
186
|
-
// current vertex for the up to 15 MC cases
|
|
187
|
-
int currentVertex = vI - idot4(m, starts);
|
|
188
|
-
|
|
189
|
-
// ensure winding-order is the same for negative and positive iso-levels
|
|
190
|
-
if (uInvert) {
|
|
191
|
-
int v = imod(currentVertex + 1, 3);
|
|
192
|
-
if (v == 1) currentVertex += 2;
|
|
193
|
-
else if (v == 0) currentVertex -= 2;
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
// get index into triIndices table
|
|
197
|
-
int mcIndex = 16 * int(edgeIndex) + currentVertex;
|
|
198
|
-
vec4 mcData = texture2D(tTriIndices, vec2(imod(mcIndex, 64), mcIndex / 64) / 64.);
|
|
199
|
-
|
|
200
|
-
// bit mask to avoid conditionals (see comment below) for getting MC case corner
|
|
201
|
-
vec4 m0 = vec4(floor(mcData.a * 255.0 + 0.5));
|
|
202
|
-
|
|
203
|
-
// get edge value masks
|
|
204
|
-
vec4 m1 = vec4(equal(m0, vec4(0., 1., 2., 3.)));
|
|
205
|
-
vec4 m2 = vec4(equal(m0, vec4(4., 5., 6., 7.)));
|
|
206
|
-
vec4 m3 = vec4(equal(m0, vec4(8., 9., 10., 11.)));
|
|
207
|
-
|
|
208
|
-
// apply bit masks
|
|
209
|
-
vec3 b0 = coord3d +
|
|
210
|
-
m1.y * c1 +
|
|
211
|
-
m1.z * c2 +
|
|
212
|
-
m1.w * c3 +
|
|
213
|
-
m2.x * c4 +
|
|
214
|
-
m2.y * c5 +
|
|
215
|
-
m2.z * c6 +
|
|
216
|
-
m2.w * c7 +
|
|
217
|
-
m3.y * c1 +
|
|
218
|
-
m3.z * c2 +
|
|
219
|
-
m3.w * c3;
|
|
220
|
-
vec3 b1 = coord3d +
|
|
221
|
-
m1.x * c1 +
|
|
222
|
-
m1.y * c2 +
|
|
223
|
-
m1.z * c3 +
|
|
224
|
-
m2.x * c5 +
|
|
225
|
-
m2.y * c6 +
|
|
226
|
-
m2.z * c7 +
|
|
227
|
-
m2.w * c4 +
|
|
228
|
-
m3.x * c4 +
|
|
229
|
-
m3.y * c5 +
|
|
230
|
-
m3.z * c6 +
|
|
231
|
-
m3.w * c7;
|
|
232
|
-
|
|
233
|
-
// the conditionals that are avoided by above bitmasks
|
|
234
|
-
// vec3 b0 = coord3d;
|
|
235
|
-
// vec3 b1 = coord3d;
|
|
236
|
-
// if (mcIndex == 0.0) {
|
|
237
|
-
// b1 += c1;
|
|
238
|
-
// } else if (mcIndex == 1.0) {
|
|
239
|
-
// b0 += c1; b1 += c2;
|
|
240
|
-
// } else if (mcIndex == 2.0) {
|
|
241
|
-
// b0 += c2; b1 += c3;
|
|
242
|
-
// } else if (mcIndex == 3.0) {
|
|
243
|
-
// b0 += c3;
|
|
244
|
-
// } else if (mcIndex == 4.0) {
|
|
245
|
-
// b0 += c4; b1 += c5;
|
|
246
|
-
// } else if (mcIndex == 5.0) {
|
|
247
|
-
// b0 += c5; b1 += c6;
|
|
248
|
-
// } else if (mcIndex == 6.0) {
|
|
249
|
-
// b0 += c6; b1 += c7;
|
|
250
|
-
// } else if (mcIndex == 7.0) {
|
|
251
|
-
// b0 += c7; b1 += c4;
|
|
252
|
-
// } else if (mcIndex == 8.0) {
|
|
253
|
-
// b1 += c4;
|
|
254
|
-
// } else if (mcIndex == 9.0) {
|
|
255
|
-
// b0 += c1; b1 += c5;
|
|
256
|
-
// } else if (mcIndex == 10.0) {
|
|
257
|
-
// b0 += c2; b1 += c6;
|
|
258
|
-
// } else if (mcIndex == 11.0) {
|
|
259
|
-
// b0 += c3; b1 += c7;
|
|
260
|
-
// }
|
|
261
|
-
// b0 = floor(b0 + 0.5);
|
|
262
|
-
// b1 = floor(b1 + 0.5);
|
|
263
|
-
|
|
264
|
-
vec4 d0 = voxel(b0);
|
|
265
|
-
vec4 d1 = voxel(b1);
|
|
266
|
-
|
|
267
|
-
float v0 = d0.a;
|
|
268
|
-
float v1 = d1.a;
|
|
269
|
-
|
|
270
|
-
float t = (uIsoValue - v0) / (v0 - v1);
|
|
271
|
-
gl_FragData[0].xyz = (uGridTransform * vec4(b0 + t * (b0 - b1), 1.0)).xyz;
|
|
272
|
-
|
|
273
|
-
// group id
|
|
274
|
-
#if __VERSION__ == 100 || defined(dConstantGroup)
|
|
275
|
-
// webgl1 does not support 'flat' interpolation (i.e. no interpolation)
|
|
276
|
-
// ensure a constant group id per triangle as needed
|
|
277
|
-
#ifdef dPackedGroup
|
|
278
|
-
gl_FragData[1] = vec4(voxel(coord3d).rgb, 1.0);
|
|
279
|
-
#else
|
|
280
|
-
gl_FragData[1] = getGroup(coord3d);
|
|
281
|
-
#endif
|
|
282
|
-
#else
|
|
283
|
-
#ifdef dPackedGroup
|
|
284
|
-
gl_FragData[1] = vec4(t < 0.5 ? d0.rgb : d1.rgb, 1.0);
|
|
285
|
-
#else
|
|
286
|
-
gl_FragData[1] = getGroup(t < 0.5 ? b0 : b1);
|
|
287
|
-
#endif
|
|
288
|
-
#endif
|
|
289
|
-
|
|
290
|
-
// normals from gradients
|
|
291
|
-
vec3 n0 = -normalize(vec3(
|
|
292
|
-
voxelPadded(b0 - c1).a - voxelPadded(b0 + c1).a,
|
|
293
|
-
voxelPadded(b0 - c3).a - voxelPadded(b0 + c3).a,
|
|
294
|
-
voxelPadded(b0 - c4).a - voxelPadded(b0 + c4).a
|
|
295
|
-
));
|
|
296
|
-
vec3 n1 = -normalize(vec3(
|
|
297
|
-
voxelPadded(b1 - c1).a - voxelPadded(b1 + c1).a,
|
|
298
|
-
voxelPadded(b1 - c3).a - voxelPadded(b1 + c3).a,
|
|
299
|
-
voxelPadded(b1 - c4).a - voxelPadded(b1 + c4).a
|
|
300
|
-
));
|
|
301
|
-
gl_FragData[2].xyz = -vec3(
|
|
302
|
-
n0.x + t * (n0.x - n1.x),
|
|
303
|
-
n0.y + t * (n0.y - n1.y),
|
|
304
|
-
n0.z + t * (n0.z - n1.z)
|
|
305
|
-
);
|
|
306
|
-
|
|
307
|
-
// ensure normal-direction is the same for negative and positive iso-levels
|
|
308
|
-
if (uInvert) {
|
|
309
|
-
gl_FragData[2].xyz *= -1.0;
|
|
310
|
-
}
|
|
311
|
-
|
|
312
|
-
// apply normal matrix
|
|
313
|
-
gl_FragData[2].xyz *= transpose3(inverse3(mat3(uGridTransform)));
|
|
314
|
-
}
|
|
4
|
+
exports.isosurface_frag = `
|
|
5
|
+
precision highp float;
|
|
6
|
+
precision highp int;
|
|
7
|
+
precision highp sampler2D;
|
|
8
|
+
|
|
9
|
+
#if __VERSION__ == 100
|
|
10
|
+
uniform sampler2D tActiveVoxelsPyramid;
|
|
11
|
+
#else
|
|
12
|
+
precision highp isampler2D;
|
|
13
|
+
uniform isampler2D tActiveVoxelsPyramid;
|
|
14
|
+
#endif
|
|
15
|
+
|
|
16
|
+
uniform sampler2D tActiveVoxelsBase;
|
|
17
|
+
uniform sampler2D tVolumeData;
|
|
18
|
+
uniform sampler2D tTriIndices;
|
|
19
|
+
|
|
20
|
+
uniform float uIsoValue;
|
|
21
|
+
uniform float uLevels;
|
|
22
|
+
uniform float uSize;
|
|
23
|
+
uniform float uCount;
|
|
24
|
+
uniform bool uInvert;
|
|
25
|
+
|
|
26
|
+
uniform vec3 uGridDim;
|
|
27
|
+
uniform vec3 uGridTexDim;
|
|
28
|
+
uniform mat4 uGridTransform;
|
|
29
|
+
|
|
30
|
+
// scale to volume data coord
|
|
31
|
+
uniform vec2 uScale;
|
|
32
|
+
|
|
33
|
+
#include common
|
|
34
|
+
|
|
35
|
+
// cube corners (excluding origin)
|
|
36
|
+
const vec3 c1 = vec3(1., 0., 0.);
|
|
37
|
+
const vec3 c2 = vec3(1., 1., 0.);
|
|
38
|
+
const vec3 c3 = vec3(0., 1., 0.);
|
|
39
|
+
const vec3 c4 = vec3(0., 0., 1.);
|
|
40
|
+
const vec3 c5 = vec3(1., 0., 1.);
|
|
41
|
+
const vec3 c6 = vec3(1., 1., 1.);
|
|
42
|
+
const vec3 c7 = vec3(0., 1., 1.);
|
|
43
|
+
|
|
44
|
+
vec3 index3dFrom2d(vec2 coord) {
|
|
45
|
+
vec2 gridTexPos = coord * uGridTexDim.xy;
|
|
46
|
+
vec2 columnRow = ivec2Div(gridTexPos, uGridDim.xy);
|
|
47
|
+
vec2 posXY = gridTexPos - columnRow * uGridDim.xy;
|
|
48
|
+
float posZ = columnRow.y * intDiv(uGridTexDim.x, uGridDim.x) + columnRow.x;
|
|
49
|
+
return vec3(posXY, posZ);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
vec4 texture3dFrom2dNearest(sampler2D tex, vec3 pos, vec3 gridDim, vec2 texDim) {
|
|
53
|
+
float zSlice = floor(pos.z * gridDim.z + 0.5); // round to nearest z-slice
|
|
54
|
+
float column = intDiv(intMod(zSlice * gridDim.x, texDim.x), gridDim.x);
|
|
55
|
+
float row = intDiv(zSlice * gridDim.x, texDim.x);
|
|
56
|
+
vec2 coord = (vec2(column * gridDim.x, row * gridDim.y) + (pos.xy * gridDim.xy)) / (texDim / uScale);
|
|
57
|
+
return texture2D(tex, coord + 0.5 / (texDim / uScale));
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
vec4 voxel(vec3 pos) {
|
|
61
|
+
pos = min(max(vec3(0.0), pos), uGridDim - vec3(1.0));
|
|
62
|
+
return texture3dFrom2dNearest(tVolumeData, pos / uGridDim, uGridDim, uGridTexDim.xy);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
vec4 voxelPadded(vec3 pos) {
|
|
66
|
+
pos = min(max(vec3(0.0), pos), uGridDim - vec3(vec2(2.0), 1.0)); // remove xy padding
|
|
67
|
+
return texture3dFrom2dNearest(tVolumeData, pos / uGridDim, uGridDim, uGridTexDim.xy);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
int idot2(const in ivec2 a, const in ivec2 b) {
|
|
71
|
+
return a.x * b.x + a.y * b.y;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
int idot4(const in ivec4 a, const in ivec4 b) {
|
|
75
|
+
return a.x * b.x + a.y * b.y + a.z * b.z + a.w * b.w;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
#if __VERSION__ == 100
|
|
79
|
+
int pyramidVoxel(vec2 pos) {
|
|
80
|
+
return int(unpackRGBToInt(texture2D(tActiveVoxelsPyramid, pos / (vec2(1.0, 0.5) * uSize)).rgb));
|
|
81
|
+
}
|
|
82
|
+
#else
|
|
83
|
+
int pyramidVoxel(vec2 pos) {
|
|
84
|
+
return texture2D(tActiveVoxelsPyramid, pos / (vec2(1.0, 0.5) * uSize)).r;
|
|
85
|
+
}
|
|
86
|
+
#endif
|
|
87
|
+
|
|
88
|
+
vec4 baseVoxel(vec2 pos) {
|
|
89
|
+
return texture2D(tActiveVoxelsBase, pos / uSize);
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
vec4 getGroup(const in vec3 p) {
|
|
93
|
+
vec3 gridDim = uGridDim - vec3(1.0, 1.0, 0.0); // remove xy padding
|
|
94
|
+
// note that we swap x and z because the texture is flipped around y
|
|
95
|
+
#if defined(dAxisOrder_012)
|
|
96
|
+
float group = p.z + p.y * gridDim.z + p.x * gridDim.z * gridDim.y; // 210
|
|
97
|
+
#elif defined(dAxisOrder_021)
|
|
98
|
+
float group = p.y + p.z * gridDim.y + p.x * gridDim.y * gridDim.z; // 120
|
|
99
|
+
#elif defined(dAxisOrder_102)
|
|
100
|
+
float group = p.z + p.x * gridDim.z + p.y * gridDim.z * gridDim.x; // 201
|
|
101
|
+
#elif defined(dAxisOrder_120)
|
|
102
|
+
float group = p.x + p.z * gridDim.x + p.y * gridDim.x * gridDim.z; // 021
|
|
103
|
+
#elif defined(dAxisOrder_201)
|
|
104
|
+
float group = p.y + p.x * gridDim.y + p.z * gridDim.y * gridDim.x; // 102
|
|
105
|
+
#elif defined(dAxisOrder_210)
|
|
106
|
+
float group = p.x + p.y * gridDim.x + p.z * gridDim.x * gridDim.y; // 012
|
|
107
|
+
#endif
|
|
108
|
+
return vec4(group > 16777215.5 ? vec3(1.0) : packIntToRGB(group), 1.0);
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
void main(void) {
|
|
112
|
+
// get 1D index
|
|
113
|
+
int vI = int(gl_FragCoord.x) + int(gl_FragCoord.y) * int(uSize);
|
|
114
|
+
|
|
115
|
+
// ignore 1D indices outside of the grid
|
|
116
|
+
if(vI >= int(uCount)) discard;
|
|
117
|
+
|
|
118
|
+
ivec2 offset = ivec2(int(uSize) - 2, 0);
|
|
119
|
+
|
|
120
|
+
int start = 0;
|
|
121
|
+
ivec4 starts = ivec4(0);
|
|
122
|
+
ivec4 ends = ivec4(0);
|
|
123
|
+
int diff = 2;
|
|
124
|
+
ivec4 m = ivec4(0);
|
|
125
|
+
ivec2 position = ivec2(0);
|
|
126
|
+
ivec4 vI4 = ivec4(vI);
|
|
127
|
+
|
|
128
|
+
ivec2 relativePosition = ivec2(0);
|
|
129
|
+
int end = 0;
|
|
130
|
+
ivec2 pos1 = ivec2(0);
|
|
131
|
+
ivec2 pos2 = ivec2(0);
|
|
132
|
+
ivec2 pos3 = ivec2(0);
|
|
133
|
+
ivec2 pos4 = ivec2(0);
|
|
134
|
+
ivec3 vI3 = ivec3(vI);
|
|
135
|
+
ivec3 mask = ivec3(0);
|
|
136
|
+
|
|
137
|
+
// traverse the different levels of the pyramid
|
|
138
|
+
for(int i = 1; i < 14; i++) {
|
|
139
|
+
if(float(i) >= uLevels) break;
|
|
140
|
+
|
|
141
|
+
offset.x -= diff;
|
|
142
|
+
diff *= 2;
|
|
143
|
+
relativePosition = position + offset;
|
|
144
|
+
|
|
145
|
+
end = start + pyramidVoxel(vec2(relativePosition));
|
|
146
|
+
pos1 = ivec2(relativePosition);
|
|
147
|
+
starts.x = start;
|
|
148
|
+
ends.x = end;
|
|
149
|
+
pos2 = ivec2(relativePosition + ivec2(1, 0));
|
|
150
|
+
starts.y = ends.x;
|
|
151
|
+
ends.y = ends.x + pyramidVoxel(vec2(pos2));
|
|
152
|
+
pos3 = relativePosition + ivec2(0, 1);
|
|
153
|
+
starts.z = ends.y;
|
|
154
|
+
ends.z = ends.y + pyramidVoxel(vec2(pos3));
|
|
155
|
+
pos4 = relativePosition + ivec2(1, 1);
|
|
156
|
+
starts.w = ends.z;
|
|
157
|
+
mask = ivec3(greaterThanEqual(vI3, starts.rgb)) * ivec3(lessThan(vI3, ends.rgb));
|
|
158
|
+
m = ivec4(mask, 1 - int(any(bvec3(mask))));
|
|
159
|
+
|
|
160
|
+
relativePosition = m.x * pos1 + m.y * pos2 + m.z * pos3 + m.w * pos4;
|
|
161
|
+
start = idot4(m, starts);
|
|
162
|
+
position = 2 * (relativePosition - offset);
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
end = start + int(baseVoxel(vec2(position)).r * 255.0);
|
|
166
|
+
pos1 = position;
|
|
167
|
+
starts.x = start;
|
|
168
|
+
ends.x = end;
|
|
169
|
+
pos2 = position + ivec2(1, 0);
|
|
170
|
+
starts.y = ends.x;
|
|
171
|
+
ends.y = ends.x + int(baseVoxel(vec2(pos2)).r * 255.0);
|
|
172
|
+
pos3 = position + ivec2(0, 1);
|
|
173
|
+
starts.z = ends.y;
|
|
174
|
+
ends.z = ends.y + int(baseVoxel(vec2(pos3)).r * 255.0);
|
|
175
|
+
pos4 = position + ivec2(1, 1);
|
|
176
|
+
starts.w = ends.z;
|
|
177
|
+
mask = ivec3(greaterThanEqual(vI3, starts.rgb)) * ivec3(lessThan(vI3, ends.rgb));
|
|
178
|
+
m = ivec4(mask, 1 - int(any(bvec3(mask))));
|
|
179
|
+
position = m.x * pos1 + m.y * pos2 + m.z * pos3 + m.w * pos4;
|
|
180
|
+
|
|
181
|
+
vec2 coord2d = (vec2(position) / uSize) / uScale;
|
|
182
|
+
vec3 coord3d = floor(index3dFrom2d(coord2d) + 0.5);
|
|
183
|
+
|
|
184
|
+
float edgeIndex = floor(baseVoxel(vec2(position)).a * 255.0 + 0.5);
|
|
185
|
+
|
|
186
|
+
// current vertex for the up to 15 MC cases
|
|
187
|
+
int currentVertex = vI - idot4(m, starts);
|
|
188
|
+
|
|
189
|
+
// ensure winding-order is the same for negative and positive iso-levels
|
|
190
|
+
if (uInvert) {
|
|
191
|
+
int v = imod(currentVertex + 1, 3);
|
|
192
|
+
if (v == 1) currentVertex += 2;
|
|
193
|
+
else if (v == 0) currentVertex -= 2;
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
// get index into triIndices table
|
|
197
|
+
int mcIndex = 16 * int(edgeIndex) + currentVertex;
|
|
198
|
+
vec4 mcData = texture2D(tTriIndices, vec2(imod(mcIndex, 64), mcIndex / 64) / 64.);
|
|
199
|
+
|
|
200
|
+
// bit mask to avoid conditionals (see comment below) for getting MC case corner
|
|
201
|
+
vec4 m0 = vec4(floor(mcData.a * 255.0 + 0.5));
|
|
202
|
+
|
|
203
|
+
// get edge value masks
|
|
204
|
+
vec4 m1 = vec4(equal(m0, vec4(0., 1., 2., 3.)));
|
|
205
|
+
vec4 m2 = vec4(equal(m0, vec4(4., 5., 6., 7.)));
|
|
206
|
+
vec4 m3 = vec4(equal(m0, vec4(8., 9., 10., 11.)));
|
|
207
|
+
|
|
208
|
+
// apply bit masks
|
|
209
|
+
vec3 b0 = coord3d +
|
|
210
|
+
m1.y * c1 +
|
|
211
|
+
m1.z * c2 +
|
|
212
|
+
m1.w * c3 +
|
|
213
|
+
m2.x * c4 +
|
|
214
|
+
m2.y * c5 +
|
|
215
|
+
m2.z * c6 +
|
|
216
|
+
m2.w * c7 +
|
|
217
|
+
m3.y * c1 +
|
|
218
|
+
m3.z * c2 +
|
|
219
|
+
m3.w * c3;
|
|
220
|
+
vec3 b1 = coord3d +
|
|
221
|
+
m1.x * c1 +
|
|
222
|
+
m1.y * c2 +
|
|
223
|
+
m1.z * c3 +
|
|
224
|
+
m2.x * c5 +
|
|
225
|
+
m2.y * c6 +
|
|
226
|
+
m2.z * c7 +
|
|
227
|
+
m2.w * c4 +
|
|
228
|
+
m3.x * c4 +
|
|
229
|
+
m3.y * c5 +
|
|
230
|
+
m3.z * c6 +
|
|
231
|
+
m3.w * c7;
|
|
232
|
+
|
|
233
|
+
// the conditionals that are avoided by above bitmasks
|
|
234
|
+
// vec3 b0 = coord3d;
|
|
235
|
+
// vec3 b1 = coord3d;
|
|
236
|
+
// if (mcIndex == 0.0) {
|
|
237
|
+
// b1 += c1;
|
|
238
|
+
// } else if (mcIndex == 1.0) {
|
|
239
|
+
// b0 += c1; b1 += c2;
|
|
240
|
+
// } else if (mcIndex == 2.0) {
|
|
241
|
+
// b0 += c2; b1 += c3;
|
|
242
|
+
// } else if (mcIndex == 3.0) {
|
|
243
|
+
// b0 += c3;
|
|
244
|
+
// } else if (mcIndex == 4.0) {
|
|
245
|
+
// b0 += c4; b1 += c5;
|
|
246
|
+
// } else if (mcIndex == 5.0) {
|
|
247
|
+
// b0 += c5; b1 += c6;
|
|
248
|
+
// } else if (mcIndex == 6.0) {
|
|
249
|
+
// b0 += c6; b1 += c7;
|
|
250
|
+
// } else if (mcIndex == 7.0) {
|
|
251
|
+
// b0 += c7; b1 += c4;
|
|
252
|
+
// } else if (mcIndex == 8.0) {
|
|
253
|
+
// b1 += c4;
|
|
254
|
+
// } else if (mcIndex == 9.0) {
|
|
255
|
+
// b0 += c1; b1 += c5;
|
|
256
|
+
// } else if (mcIndex == 10.0) {
|
|
257
|
+
// b0 += c2; b1 += c6;
|
|
258
|
+
// } else if (mcIndex == 11.0) {
|
|
259
|
+
// b0 += c3; b1 += c7;
|
|
260
|
+
// }
|
|
261
|
+
// b0 = floor(b0 + 0.5);
|
|
262
|
+
// b1 = floor(b1 + 0.5);
|
|
263
|
+
|
|
264
|
+
vec4 d0 = voxel(b0);
|
|
265
|
+
vec4 d1 = voxel(b1);
|
|
266
|
+
|
|
267
|
+
float v0 = d0.a;
|
|
268
|
+
float v1 = d1.a;
|
|
269
|
+
|
|
270
|
+
float t = (uIsoValue - v0) / (v0 - v1);
|
|
271
|
+
gl_FragData[0].xyz = (uGridTransform * vec4(b0 + t * (b0 - b1), 1.0)).xyz;
|
|
272
|
+
|
|
273
|
+
// group id
|
|
274
|
+
#if __VERSION__ == 100 || defined(dConstantGroup)
|
|
275
|
+
// webgl1 does not support 'flat' interpolation (i.e. no interpolation)
|
|
276
|
+
// ensure a constant group id per triangle as needed
|
|
277
|
+
#ifdef dPackedGroup
|
|
278
|
+
gl_FragData[1] = vec4(voxel(coord3d).rgb, 1.0);
|
|
279
|
+
#else
|
|
280
|
+
gl_FragData[1] = getGroup(coord3d);
|
|
281
|
+
#endif
|
|
282
|
+
#else
|
|
283
|
+
#ifdef dPackedGroup
|
|
284
|
+
gl_FragData[1] = vec4(t < 0.5 ? d0.rgb : d1.rgb, 1.0);
|
|
285
|
+
#else
|
|
286
|
+
gl_FragData[1] = getGroup(t < 0.5 ? b0 : b1);
|
|
287
|
+
#endif
|
|
288
|
+
#endif
|
|
289
|
+
|
|
290
|
+
// normals from gradients
|
|
291
|
+
vec3 n0 = -normalize(vec3(
|
|
292
|
+
voxelPadded(b0 - c1).a - voxelPadded(b0 + c1).a,
|
|
293
|
+
voxelPadded(b0 - c3).a - voxelPadded(b0 + c3).a,
|
|
294
|
+
voxelPadded(b0 - c4).a - voxelPadded(b0 + c4).a
|
|
295
|
+
));
|
|
296
|
+
vec3 n1 = -normalize(vec3(
|
|
297
|
+
voxelPadded(b1 - c1).a - voxelPadded(b1 + c1).a,
|
|
298
|
+
voxelPadded(b1 - c3).a - voxelPadded(b1 + c3).a,
|
|
299
|
+
voxelPadded(b1 - c4).a - voxelPadded(b1 + c4).a
|
|
300
|
+
));
|
|
301
|
+
gl_FragData[2].xyz = -vec3(
|
|
302
|
+
n0.x + t * (n0.x - n1.x),
|
|
303
|
+
n0.y + t * (n0.y - n1.y),
|
|
304
|
+
n0.z + t * (n0.z - n1.z)
|
|
305
|
+
);
|
|
306
|
+
|
|
307
|
+
// ensure normal-direction is the same for negative and positive iso-levels
|
|
308
|
+
if (uInvert) {
|
|
309
|
+
gl_FragData[2].xyz *= -1.0;
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
// apply normal matrix
|
|
313
|
+
gl_FragData[2].xyz *= transpose3(inverse3(mat3(uGridTransform)));
|
|
314
|
+
}
|
|
315
315
|
`;
|