molstar 3.0.0-dev.5 → 3.0.0-dev.9
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 +187 -187
- package/build/viewer/embedded.html +43 -43
- package/build/viewer/index.html +106 -95
- package/build/viewer/molstar.js +1 -1
- package/lib/apps/docking-viewer/index.d.ts +2 -1
- package/lib/apps/docking-viewer/index.html +36 -36
- package/lib/apps/docking-viewer/index.js +87 -74
- package/lib/apps/viewer/app.d.ts +230 -0
- package/lib/apps/viewer/app.js +515 -0
- package/lib/apps/viewer/embedded.html +43 -43
- package/lib/apps/viewer/index.d.ts +2 -403
- package/lib/apps/viewer/index.html +106 -95
- package/lib/apps/viewer/index.js +2 -420
- package/lib/cli/cifschema/index.d.ts +1 -1
- package/lib/cli/cifschema/index.js +15 -35
- package/lib/commonjs/apps/docking-viewer/index.d.ts +2 -1
- package/lib/commonjs/apps/docking-viewer/index.js +86 -73
- package/lib/commonjs/apps/viewer/app.d.ts +230 -0
- package/lib/commonjs/apps/viewer/app.js +521 -0
- package/lib/commonjs/apps/viewer/index.d.ts +2 -403
- package/lib/commonjs/apps/viewer/index.js +2 -423
- package/lib/commonjs/cli/cifschema/index.d.ts +1 -1
- package/lib/commonjs/cli/cifschema/index.js +15 -35
- package/lib/commonjs/examples/alpha-orbitals/index.js +3 -4
- package/lib/commonjs/examples/basic-wrapper/index.js +23 -11
- package/lib/commonjs/examples/lighting/index.d.ts +1 -1
- package/lib/commonjs/examples/lighting/index.js +57 -41
- package/lib/commonjs/examples/proteopedia-wrapper/index.js +26 -14
- package/lib/commonjs/extensions/alpha-orbitals/transforms.d.ts +0 -1
- package/lib/commonjs/extensions/alpha-orbitals/transforms.js +1 -14
- package/lib/commonjs/extensions/anvil/behavior.d.ts +4 -0
- package/lib/commonjs/extensions/anvil/representation.d.ts +50 -0
- package/lib/commonjs/extensions/cellpack/representation.d.ts +10 -0
- package/lib/commonjs/extensions/dnatco/confal-pyramids/representation.d.ts +30 -0
- package/lib/commonjs/extensions/geo-export/mesh-exporter.js +4 -4
- package/lib/commonjs/extensions/model-archive/quality-assessment/behavior.d.ts +68 -0
- package/lib/commonjs/extensions/model-archive/quality-assessment/behavior.js +236 -0
- package/lib/commonjs/extensions/model-archive/quality-assessment/color/plddt.d.ts +14 -0
- package/lib/commonjs/extensions/model-archive/quality-assessment/color/plddt.js +125 -0
- package/lib/commonjs/extensions/model-archive/quality-assessment/color/qmean.d.ts +12 -0
- package/lib/commonjs/extensions/model-archive/quality-assessment/color/qmean.js +111 -0
- package/lib/commonjs/extensions/model-archive/quality-assessment/prop.d.ts +28 -0
- package/lib/commonjs/extensions/model-archive/quality-assessment/prop.js +130 -0
- package/lib/commonjs/extensions/pdbe/structure-quality-report/prop.js +1 -1
- package/lib/commonjs/extensions/rcsb/assembly-symmetry/behavior.d.ts +6 -2
- package/lib/commonjs/extensions/rcsb/assembly-symmetry/prop.js +1 -1
- package/lib/commonjs/extensions/rcsb/assembly-symmetry/representation.d.ts +10 -0
- package/lib/commonjs/extensions/rcsb/validation-report/prop.js +1 -1
- package/lib/commonjs/extensions/rcsb/validation-report/representation.d.ts +50 -0
- package/lib/commonjs/mol-canvas3d/canvas3d.d.ts +3 -9
- package/lib/commonjs/mol-canvas3d/canvas3d.js +34 -23
- package/lib/commonjs/mol-canvas3d/helper/bounding-sphere-helper.js +3 -2
- package/lib/commonjs/mol-canvas3d/helper/camera-helper.d.ts +4 -0
- package/lib/commonjs/mol-canvas3d/helper/camera-helper.js +2 -2
- package/lib/commonjs/mol-canvas3d/helper/handle-helper.d.ts +4 -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/draw.d.ts +13 -1
- package/lib/commonjs/mol-canvas3d/passes/draw.js +16 -15
- package/lib/commonjs/mol-canvas3d/passes/image.d.ts +1 -0
- package/lib/commonjs/mol-canvas3d/passes/image.js +3 -2
- package/lib/commonjs/mol-canvas3d/passes/marking.js +1 -1
- package/lib/commonjs/mol-canvas3d/passes/multi-sample.d.ts +10 -2
- package/lib/commonjs/mol-canvas3d/passes/multi-sample.js +18 -14
- package/lib/commonjs/mol-canvas3d/passes/pick.js +12 -12
- package/lib/commonjs/mol-canvas3d/passes/postprocessing.js +3 -3
- package/lib/commonjs/mol-canvas3d/passes/smaa.js +1 -1
- package/lib/commonjs/mol-geo/geometry/base.d.ts +18 -0
- package/lib/commonjs/mol-geo/geometry/base.js +18 -1
- package/lib/commonjs/mol-geo/geometry/clipping-data.d.ts +1 -3
- package/lib/commonjs/mol-geo/geometry/clipping-data.js +3 -8
- package/lib/commonjs/mol-geo/geometry/color-data.d.ts +1 -1
- package/lib/commonjs/mol-geo/geometry/color-data.js +22 -0
- package/lib/commonjs/mol-geo/geometry/cylinders/cylinders.d.ts +12 -2
- package/lib/commonjs/mol-geo/geometry/cylinders/cylinders.js +2 -2
- package/lib/commonjs/mol-geo/geometry/direct-volume/direct-volume.d.ts +15 -38
- package/lib/commonjs/mol-geo/geometry/direct-volume/direct-volume.js +21 -66
- package/lib/commonjs/mol-geo/geometry/direct-volume/transfer-function.d.ts +2 -4
- package/lib/commonjs/mol-geo/geometry/direct-volume/transfer-function.js +4 -7
- package/lib/commonjs/mol-geo/geometry/image/image.d.ts +10 -0
- package/lib/commonjs/mol-geo/geometry/image/image.js +1 -1
- package/lib/commonjs/mol-geo/geometry/lines/lines.d.ts +11 -0
- package/lib/commonjs/mol-geo/geometry/lines/lines.js +1 -1
- package/lib/commonjs/mol-geo/geometry/marker-data.d.ts +0 -1
- package/lib/commonjs/mol-geo/geometry/marker-data.js +13 -9
- package/lib/commonjs/mol-geo/geometry/mesh/mesh.d.ts +10 -0
- package/lib/commonjs/mol-geo/geometry/mesh/mesh.js +2 -2
- package/lib/commonjs/mol-geo/geometry/points/points.d.ts +11 -1
- package/lib/commonjs/mol-geo/geometry/points/points.js +1 -1
- package/lib/commonjs/mol-geo/geometry/size-data.js +5 -5
- package/lib/commonjs/mol-geo/geometry/spheres/spheres.d.ts +10 -0
- package/lib/commonjs/mol-geo/geometry/spheres/spheres.js +2 -2
- package/lib/commonjs/mol-geo/geometry/text/text.d.ts +10 -0
- package/lib/commonjs/mol-geo/geometry/text/text.js +1 -1
- package/lib/commonjs/mol-geo/geometry/texture-mesh/texture-mesh.d.ts +10 -0
- package/lib/commonjs/mol-geo/geometry/texture-mesh/texture-mesh.js +2 -2
- package/lib/commonjs/mol-gl/compute/histogram-pyramid/sum.js +2 -2
- package/lib/commonjs/mol-gl/compute/marching-cubes/isosurface.d.ts +2 -2
- package/lib/commonjs/mol-gl/compute/marching-cubes/isosurface.js +10 -9
- package/lib/commonjs/mol-gl/render-object.d.ts +2 -1
- package/lib/commonjs/mol-gl/render-object.js +10 -10
- package/lib/commonjs/mol-gl/renderable/cylinders.d.ts +11 -5
- package/lib/commonjs/mol-gl/renderable/cylinders.js +3 -3
- package/lib/commonjs/mol-gl/renderable/direct-volume.d.ts +15 -14
- package/lib/commonjs/mol-gl/renderable/direct-volume.js +3 -3
- package/lib/commonjs/mol-gl/renderable/image.d.ts +10 -4
- package/lib/commonjs/mol-gl/renderable/image.js +2 -2
- package/lib/commonjs/mol-gl/renderable/lines.d.ts +39 -33
- package/lib/commonjs/mol-gl/renderable/lines.js +3 -3
- package/lib/commonjs/mol-gl/renderable/mesh.d.ts +11 -5
- package/lib/commonjs/mol-gl/renderable/mesh.js +3 -3
- package/lib/commonjs/mol-gl/renderable/points.d.ts +10 -4
- package/lib/commonjs/mol-gl/renderable/points.js +2 -2
- package/lib/commonjs/mol-gl/renderable/schema.d.ts +10 -11
- package/lib/commonjs/mol-gl/renderable/schema.js +4 -10
- package/lib/commonjs/mol-gl/renderable/spheres.d.ts +11 -5
- package/lib/commonjs/mol-gl/renderable/spheres.js +3 -3
- package/lib/commonjs/mol-gl/renderable/text.d.ts +10 -4
- package/lib/commonjs/mol-gl/renderable/text.js +2 -2
- package/lib/commonjs/mol-gl/renderable/texture-mesh.d.ts +11 -6
- package/lib/commonjs/mol-gl/renderable/texture-mesh.js +3 -3
- package/lib/commonjs/mol-gl/renderable.d.ts +0 -1
- package/lib/commonjs/mol-gl/renderer.d.ts +12 -12
- package/lib/commonjs/mol-gl/renderer.js +23 -92
- package/lib/commonjs/mol-gl/scene.d.ts +2 -2
- package/lib/commonjs/mol-gl/scene.js +7 -5
- package/lib/commonjs/mol-gl/shader/chunks/apply-light-color.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/apply-light-color.glsl.js +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/assign-color-varying.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/assign-color-varying.glsl.js +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/assign-group.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/assign-group.glsl.js +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/assign-marker-varying.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/assign-marker-varying.glsl.js +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/assign-material-color.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/assign-material-color.glsl.js +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/assign-position.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/assign-position.glsl.js +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/assign-size.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/assign-size.glsl.js +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/color-frag-params.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/color-frag-params.glsl.js +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/color-vert-params.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/color-vert-params.glsl.js +1 -1
- 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 +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/common-vert-params.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/common-vert-params.glsl.js +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/common.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/common.glsl.js +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/wboit-write.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/wboit-write.glsl.js +1 -1
- package/lib/commonjs/mol-gl/shader/compute/color-smoothing/accumulate.vert.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/compute/color-smoothing/accumulate.vert.js +1 -1
- package/lib/commonjs/mol-gl/shader/cylinders.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/cylinders.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/direct-volume.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/direct-volume.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/gaussian-density.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/gaussian-density.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/histogram-pyramid/reduction.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/histogram-pyramid/reduction.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/image.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/image.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/marching-cubes/isosurface.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/marching-cubes/isosurface.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/mesh.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/mesh.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/mesh.vert.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/mesh.vert.js +1 -1
- package/lib/commonjs/mol-gl/shader/spheres.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/spheres.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader-code.d.ts +3 -1
- package/lib/commonjs/mol-gl/shader-code.js +43 -14
- package/lib/commonjs/mol-gl/webgl/render-item.d.ts +7 -6
- package/lib/commonjs/mol-gl/webgl/render-item.js +10 -8
- package/lib/commonjs/mol-gl/webgl/resources.js +8 -1
- package/lib/commonjs/mol-io/reader/cif/schema/mmcif.d.ts +326 -1
- package/lib/commonjs/mol-io/reader/cif/schema/mmcif.js +326 -1
- package/lib/commonjs/mol-io/reader/mol2/parser.d.ts +1 -1
- package/lib/commonjs/mol-io/reader/mol2/parser.js +33 -3
- package/lib/commonjs/mol-io/reader/mol2/schema.d.ts +12 -1
- package/lib/commonjs/mol-io/reader/mol2/schema.js +1 -1
- package/lib/commonjs/mol-math/geometry/gaussian-density/gpu.js +2 -2
- package/lib/commonjs/mol-math/geometry/symmetry-operator.js +3 -2
- package/lib/commonjs/mol-math/linear-algebra/3d/quat.d.ts +9 -1
- package/lib/commonjs/mol-math/linear-algebra/3d/quat.js +20 -1
- package/lib/commonjs/mol-model/structure/model/model.d.ts +1 -0
- package/lib/commonjs/mol-model/structure/model/model.js +8 -2
- package/lib/commonjs/mol-model/structure/model/properties/atomic/hierarchy.d.ts +6 -1
- package/lib/commonjs/mol-model/structure/model/properties/atomic/hierarchy.js +1 -1
- package/lib/commonjs/mol-model/structure/model/properties/utils/atomic-derived.d.ts +1 -1
- package/lib/commonjs/mol-model/structure/model/properties/utils/atomic-derived.js +4 -1
- package/lib/commonjs/mol-model/structure/model/properties/utils/atomic-index.d.ts +1 -1
- package/lib/commonjs/mol-model/structure/model/properties/utils/atomic-index.js +12 -1
- package/lib/commonjs/mol-model/structure/model/types.js +9 -0
- package/lib/commonjs/mol-model/structure/structure/element/stats.js +8 -0
- package/lib/commonjs/mol-model/structure/structure/unit/bonds/common.d.ts +2 -1
- package/lib/commonjs/mol-model/structure/structure/unit/bonds/common.js +11 -2
- package/lib/commonjs/mol-model/structure/structure/unit/bonds/inter-compute.d.ts +1 -1
- package/lib/commonjs/mol-model/structure/structure/unit/bonds/inter-compute.js +20 -10
- package/lib/commonjs/mol-model/structure/structure/unit/bonds/intra-compute.d.ts +1 -1
- package/lib/commonjs/mol-model/structure/structure/unit/bonds/intra-compute.js +21 -11
- package/lib/commonjs/mol-model/structure/structure/unit/rings.js +2 -0
- package/lib/commonjs/mol-model-formats/shape/ply.d.ts +20 -0
- package/lib/commonjs/mol-model-formats/structure/mol2.d.ts +1 -1
- package/lib/commonjs/mol-model-formats/structure/mol2.js +37 -7
- package/lib/commonjs/mol-model-formats/structure/property/bonds/index-pair.d.ts +18 -1
- package/lib/commonjs/mol-model-formats/structure/property/bonds/index-pair.js +18 -5
- package/lib/commonjs/mol-model-props/computed/representations/interactions-inter-unit-cylinder.d.ts +10 -0
- package/lib/commonjs/mol-model-props/computed/representations/interactions-intra-unit-cylinder.d.ts +10 -0
- package/lib/commonjs/mol-model-props/computed/representations/interactions.d.ts +30 -0
- package/lib/commonjs/mol-model-props/integrative/cross-link-restraint/representation.d.ts +40 -0
- package/lib/commonjs/mol-plugin/behavior/dynamic/representation.js +4 -6
- package/lib/commonjs/mol-plugin/behavior/dynamic/selection/structure-focus-representation.d.ts +11 -0
- package/lib/commonjs/mol-plugin/behavior/dynamic/selection/structure-focus-representation.js +3 -1
- package/lib/commonjs/mol-plugin/behavior/dynamic/volume-streaming/model.d.ts +3 -2
- package/lib/commonjs/mol-plugin/commands.d.ts +1 -4
- package/lib/commonjs/mol-plugin/config.d.ts +2 -2
- package/lib/commonjs/mol-plugin/config.js +5 -25
- package/lib/commonjs/mol-plugin/features.d.ts +9 -0
- package/lib/commonjs/mol-plugin/features.js +38 -0
- package/lib/commonjs/mol-plugin/spec.js +1 -0
- package/lib/commonjs/mol-plugin/util/viewport-screenshot.d.ts +12 -0
- package/lib/commonjs/mol-plugin-state/actions/structure.d.ts +8 -1
- package/lib/commonjs/mol-plugin-state/actions/structure.js +183 -72
- package/lib/commonjs/mol-plugin-state/builder/structure/hierarchy-preset.d.ts +5 -355
- package/lib/commonjs/mol-plugin-state/builder/structure/hierarchy-preset.js +13 -8
- package/lib/commonjs/mol-plugin-state/builder/structure/hierarchy.d.ts +1 -71
- package/lib/commonjs/mol-plugin-state/builder/structure/representation-preset.d.ts +4 -4
- package/lib/commonjs/mol-plugin-state/helpers/structure-clipping.d.ts +1 -1
- package/lib/commonjs/mol-plugin-state/helpers/structure-clipping.js +1 -1
- package/lib/commonjs/mol-plugin-state/helpers/structure-selection-query.js +33 -19
- package/lib/commonjs/mol-plugin-state/manager/structure/component.d.ts +13 -1
- package/lib/commonjs/mol-plugin-state/manager/structure/component.js +13 -8
- package/lib/commonjs/mol-plugin-state/manager/structure/selection.js +3 -1
- package/lib/commonjs/mol-plugin-state/transforms/representation.d.ts +32 -0
- package/lib/commonjs/mol-plugin-state/transforms/representation.js +2 -2
- package/lib/commonjs/mol-plugin-ui/index.d.ts +4 -4
- package/lib/commonjs/mol-plugin-ui/index.js +13 -16
- package/lib/commonjs/mol-plugin-ui/plugin.js +1 -1
- package/lib/commonjs/mol-plugin-ui/viewport/simple-settings.js +2 -6
- package/lib/commonjs/mol-repr/shape/loci/angle.d.ts +10 -0
- package/lib/commonjs/mol-repr/shape/loci/common.d.ts +10 -0
- package/lib/commonjs/mol-repr/shape/loci/dihedral.d.ts +10 -0
- package/lib/commonjs/mol-repr/shape/loci/distance.d.ts +10 -0
- package/lib/commonjs/mol-repr/shape/loci/label.d.ts +10 -0
- package/lib/commonjs/mol-repr/shape/loci/orientation.d.ts +10 -0
- package/lib/commonjs/mol-repr/shape/loci/plane.d.ts +10 -0
- package/lib/commonjs/mol-repr/shape/model/unitcell.d.ts +10 -0
- package/lib/commonjs/mol-repr/structure/complex-representation.js +1 -1
- package/lib/commonjs/mol-repr/structure/complex-visual.d.ts +61 -19
- package/lib/commonjs/mol-repr/structure/params.d.ts +81 -19
- package/lib/commonjs/mol-repr/structure/registry.d.ts +141 -19
- package/lib/commonjs/mol-repr/structure/representation/backbone.d.ts +30 -0
- package/lib/commonjs/mol-repr/structure/representation/ball-and-stick.d.ts +30 -0
- package/lib/commonjs/mol-repr/structure/representation/carbohydrate.d.ts +30 -0
- package/lib/commonjs/mol-repr/structure/representation/cartoon.d.ts +30 -0
- package/lib/commonjs/mol-repr/structure/representation/ellipsoid.d.ts +30 -0
- package/lib/commonjs/mol-repr/structure/representation/gaussian-surface.d.ts +30 -0
- package/lib/commonjs/mol-repr/structure/representation/gaussian-surface.js +1 -1
- package/lib/commonjs/mol-repr/structure/representation/gaussian-volume.d.ts +34 -58
- package/lib/commonjs/mol-repr/structure/representation/gaussian-volume.js +2 -7
- package/lib/commonjs/mol-repr/structure/representation/label.d.ts +30 -0
- package/lib/commonjs/mol-repr/structure/representation/label.js +1 -1
- package/lib/commonjs/mol-repr/structure/representation/line.d.ts +30 -0
- package/lib/commonjs/mol-repr/structure/representation/molecular-surface.d.ts +30 -0
- package/lib/commonjs/mol-repr/structure/representation/molecular-surface.js +1 -1
- package/lib/commonjs/mol-repr/structure/representation/orientation.d.ts +30 -0
- package/lib/commonjs/mol-repr/structure/representation/point.d.ts +30 -0
- package/lib/commonjs/mol-repr/structure/representation/putty.d.ts +30 -0
- package/lib/commonjs/mol-repr/structure/representation/spacefill.d.ts +30 -0
- package/lib/commonjs/mol-repr/structure/units-representation.js +1 -1
- package/lib/commonjs/mol-repr/structure/units-visual.d.ts +81 -19
- package/lib/commonjs/mol-repr/structure/visual/bond-inter-unit-cylinder.d.ts +20 -0
- package/lib/commonjs/mol-repr/structure/visual/bond-inter-unit-line.d.ts +10 -0
- package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-cylinder.d.ts +20 -0
- package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-cylinder.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-line.d.ts +10 -0
- 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 +10 -0
- package/lib/commonjs/mol-repr/structure/visual/carbohydrate-symbol-mesh.d.ts +10 -0
- package/lib/commonjs/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.d.ts +10 -0
- package/lib/commonjs/mol-repr/structure/visual/element-cross.d.ts +10 -0
- package/lib/commonjs/mol-repr/structure/visual/element-point.d.ts +10 -0
- package/lib/commonjs/mol-repr/structure/visual/element-sphere.d.ts +20 -0
- package/lib/commonjs/mol-repr/structure/visual/ellipsoid-mesh.d.ts +10 -0
- package/lib/commonjs/mol-repr/structure/visual/gaussian-density-volume.d.ts +22 -38
- package/lib/commonjs/mol-repr/structure/visual/gaussian-density-volume.js +8 -6
- package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-mesh.d.ts +40 -0
- package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-mesh.js +11 -8
- package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-wireframe.d.ts +10 -0
- package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-wireframe.js +1 -1
- package/lib/commonjs/mol-repr/structure/visual/label-text.d.ts +10 -0
- package/lib/commonjs/mol-repr/structure/visual/label-text.js +1 -2
- package/lib/commonjs/mol-repr/structure/visual/molecular-surface-mesh.d.ts +10 -0
- package/lib/commonjs/mol-repr/structure/visual/molecular-surface-mesh.js +1 -1
- package/lib/commonjs/mol-repr/structure/visual/molecular-surface-wireframe.d.ts +10 -0
- package/lib/commonjs/mol-repr/structure/visual/molecular-surface-wireframe.js +1 -1
- package/lib/commonjs/mol-repr/structure/visual/nucleotide-block-mesh.d.ts +10 -0
- package/lib/commonjs/mol-repr/structure/visual/nucleotide-ring-mesh.d.ts +10 -0
- package/lib/commonjs/mol-repr/structure/visual/orientation-ellipsoid-mesh.d.ts +10 -0
- package/lib/commonjs/mol-repr/structure/visual/polymer-backbone-cylinder.d.ts +20 -0
- package/lib/commonjs/mol-repr/structure/visual/polymer-backbone-sphere.d.ts +20 -0
- package/lib/commonjs/mol-repr/structure/visual/polymer-direction-wedge.d.ts +10 -0
- package/lib/commonjs/mol-repr/structure/visual/polymer-gap-cylinder.d.ts +10 -0
- package/lib/commonjs/mol-repr/structure/visual/polymer-trace-mesh.d.ts +10 -0
- package/lib/commonjs/mol-repr/structure/visual/polymer-trace-mesh.js +1 -1
- package/lib/commonjs/mol-repr/structure/visual/polymer-tube-mesh.d.ts +10 -0
- package/lib/commonjs/mol-repr/structure/visual/util/bond.js +1 -1
- package/lib/commonjs/mol-repr/structure/visual/util/common.d.ts +3 -2
- package/lib/commonjs/mol-repr/structure/visual/util/common.js +2 -5
- package/lib/commonjs/mol-repr/structure/visual/util/gaussian.d.ts +7 -6
- package/lib/commonjs/mol-repr/structure/visual/util/gaussian.js +12 -12
- package/lib/commonjs/mol-repr/structure/visual/util/molecular-surface.d.ts +2 -1
- package/lib/commonjs/mol-repr/structure/visual/util/molecular-surface.js +4 -4
- package/lib/commonjs/mol-repr/visual.js +11 -7
- package/lib/commonjs/mol-repr/volume/direct-volume.d.ts +33 -57
- package/lib/commonjs/mol-repr/volume/direct-volume.js +8 -12
- package/lib/commonjs/mol-repr/volume/isosurface.d.ts +60 -0
- package/lib/commonjs/mol-repr/volume/isosurface.js +11 -2
- package/lib/commonjs/mol-repr/volume/registry.d.ts +31 -19
- package/lib/commonjs/mol-repr/volume/representation.d.ts +10 -0
- package/lib/commonjs/mol-repr/volume/slice.d.ts +30 -0
- package/lib/commonjs/mol-repr/volume/slice.js +2 -2
- package/lib/commonjs/mol-repr/volume/util.js +2 -2
- package/lib/commonjs/mol-script/language/builder.d.ts +0 -1
- package/lib/commonjs/mol-theme/clipping.d.ts +7 -15
- package/lib/commonjs/mol-theme/clipping.js +5 -12
- package/lib/commonjs/mol-theme/color/volume-value.d.ts +17 -0
- package/lib/commonjs/mol-theme/color/volume-value.js +57 -0
- package/lib/commonjs/mol-theme/color.d.ts +3 -0
- package/lib/commonjs/mol-theme/color.js +2 -0
- package/lib/commonjs/mol-util/clip.d.ts +49 -0
- package/lib/commonjs/mol-util/clip.js +97 -0
- package/lib/commonjs/mol-util/number-packing.d.ts +11 -0
- package/lib/commonjs/mol-util/{float-packing.js → number-packing.js} +10 -19
- package/lib/examples/alpha-orbitals/index.html +61 -60
- package/lib/examples/alpha-orbitals/index.js +4 -5
- package/lib/examples/basic-wrapper/index.html +137 -136
- package/lib/examples/basic-wrapper/index.js +24 -12
- package/lib/examples/lighting/index.d.ts +1 -1
- package/lib/examples/lighting/index.html +88 -86
- package/lib/examples/lighting/index.js +58 -42
- package/lib/examples/proteopedia-wrapper/index.html +236 -235
- package/lib/examples/proteopedia-wrapper/index.js +27 -15
- package/lib/extensions/alpha-orbitals/transforms.d.ts +0 -1
- package/lib/extensions/alpha-orbitals/transforms.js +1 -14
- package/lib/extensions/anvil/behavior.d.ts +4 -0
- package/lib/extensions/anvil/representation.d.ts +50 -0
- package/lib/extensions/cellpack/representation.d.ts +10 -0
- package/lib/extensions/dnatco/confal-pyramids/representation.d.ts +30 -0
- package/lib/extensions/geo-export/mesh-exporter.js +4 -4
- package/lib/extensions/model-archive/quality-assessment/behavior.d.ts +68 -0
- package/lib/extensions/model-archive/quality-assessment/behavior.js +233 -0
- package/lib/extensions/model-archive/quality-assessment/color/plddt.d.ts +14 -0
- package/lib/extensions/model-archive/quality-assessment/color/plddt.js +120 -0
- package/lib/extensions/model-archive/quality-assessment/color/qmean.d.ts +12 -0
- package/lib/extensions/model-archive/quality-assessment/color/qmean.js +106 -0
- package/lib/extensions/model-archive/quality-assessment/prop.d.ts +28 -0
- package/lib/extensions/model-archive/quality-assessment/prop.js +127 -0
- package/lib/extensions/pdbe/structure-quality-report/prop.js +1 -1
- package/lib/extensions/rcsb/assembly-symmetry/behavior.d.ts +6 -2
- package/lib/extensions/rcsb/assembly-symmetry/prop.js +1 -1
- package/lib/extensions/rcsb/assembly-symmetry/representation.d.ts +10 -0
- package/lib/extensions/rcsb/validation-report/prop.js +1 -1
- package/lib/extensions/rcsb/validation-report/representation.d.ts +50 -0
- package/lib/mol-canvas3d/canvas3d.d.ts +3 -9
- package/lib/mol-canvas3d/canvas3d.js +34 -23
- package/lib/mol-canvas3d/helper/bounding-sphere-helper.js +3 -2
- package/lib/mol-canvas3d/helper/camera-helper.d.ts +4 -0
- package/lib/mol-canvas3d/helper/camera-helper.js +2 -2
- package/lib/mol-canvas3d/helper/handle-helper.d.ts +4 -0
- package/lib/mol-canvas3d/helper/handle-helper.js +2 -2
- package/lib/mol-canvas3d/helper/helper.d.ts +2 -0
- package/lib/mol-canvas3d/passes/draw.d.ts +13 -1
- package/lib/mol-canvas3d/passes/draw.js +16 -15
- package/lib/mol-canvas3d/passes/image.d.ts +1 -0
- package/lib/mol-canvas3d/passes/image.js +3 -2
- package/lib/mol-canvas3d/passes/marking.js +1 -1
- package/lib/mol-canvas3d/passes/multi-sample.d.ts +10 -2
- package/lib/mol-canvas3d/passes/multi-sample.js +18 -14
- package/lib/mol-canvas3d/passes/pick.js +11 -11
- package/lib/mol-canvas3d/passes/postprocessing.js +3 -3
- package/lib/mol-canvas3d/passes/smaa.js +1 -1
- package/lib/mol-geo/geometry/base.d.ts +18 -0
- package/lib/mol-geo/geometry/base.js +18 -1
- package/lib/mol-geo/geometry/clipping-data.d.ts +1 -3
- package/lib/mol-geo/geometry/clipping-data.js +3 -8
- package/lib/mol-geo/geometry/color-data.d.ts +1 -1
- package/lib/mol-geo/geometry/color-data.js +22 -0
- package/lib/mol-geo/geometry/cylinders/cylinders.d.ts +12 -2
- package/lib/mol-geo/geometry/cylinders/cylinders.js +2 -2
- package/lib/mol-geo/geometry/direct-volume/direct-volume.d.ts +15 -38
- package/lib/mol-geo/geometry/direct-volume/direct-volume.js +22 -67
- package/lib/mol-geo/geometry/direct-volume/transfer-function.d.ts +2 -4
- package/lib/mol-geo/geometry/direct-volume/transfer-function.js +4 -7
- package/lib/mol-geo/geometry/image/image.d.ts +10 -0
- package/lib/mol-geo/geometry/image/image.js +1 -1
- package/lib/mol-geo/geometry/lines/lines.d.ts +11 -0
- package/lib/mol-geo/geometry/lines/lines.js +1 -1
- package/lib/mol-geo/geometry/marker-data.d.ts +0 -1
- package/lib/mol-geo/geometry/marker-data.js +13 -9
- package/lib/mol-geo/geometry/mesh/mesh.d.ts +10 -0
- package/lib/mol-geo/geometry/mesh/mesh.js +2 -2
- package/lib/mol-geo/geometry/points/points.d.ts +11 -1
- package/lib/mol-geo/geometry/points/points.js +1 -1
- package/lib/mol-geo/geometry/size-data.js +5 -5
- package/lib/mol-geo/geometry/spheres/spheres.d.ts +10 -0
- package/lib/mol-geo/geometry/spheres/spheres.js +2 -2
- package/lib/mol-geo/geometry/text/text.d.ts +10 -0
- package/lib/mol-geo/geometry/text/text.js +1 -1
- package/lib/mol-geo/geometry/texture-mesh/texture-mesh.d.ts +10 -0
- package/lib/mol-geo/geometry/texture-mesh/texture-mesh.js +2 -2
- package/lib/mol-gl/compute/histogram-pyramid/sum.js +2 -2
- package/lib/mol-gl/compute/marching-cubes/isosurface.d.ts +2 -2
- package/lib/mol-gl/compute/marching-cubes/isosurface.js +10 -9
- package/lib/mol-gl/render-object.d.ts +2 -1
- package/lib/mol-gl/render-object.js +10 -10
- package/lib/mol-gl/renderable/cylinders.d.ts +11 -5
- package/lib/mol-gl/renderable/cylinders.js +3 -3
- package/lib/mol-gl/renderable/direct-volume.d.ts +15 -14
- package/lib/mol-gl/renderable/direct-volume.js +3 -3
- package/lib/mol-gl/renderable/image.d.ts +10 -4
- package/lib/mol-gl/renderable/image.js +2 -2
- package/lib/mol-gl/renderable/lines.d.ts +39 -33
- package/lib/mol-gl/renderable/lines.js +4 -4
- package/lib/mol-gl/renderable/mesh.d.ts +11 -5
- package/lib/mol-gl/renderable/mesh.js +3 -3
- package/lib/mol-gl/renderable/points.d.ts +10 -4
- package/lib/mol-gl/renderable/points.js +2 -2
- package/lib/mol-gl/renderable/schema.d.ts +10 -11
- package/lib/mol-gl/renderable/schema.js +4 -10
- package/lib/mol-gl/renderable/spheres.d.ts +11 -5
- package/lib/mol-gl/renderable/spheres.js +3 -3
- package/lib/mol-gl/renderable/text.d.ts +10 -4
- package/lib/mol-gl/renderable/text.js +2 -2
- package/lib/mol-gl/renderable/texture-mesh.d.ts +11 -6
- package/lib/mol-gl/renderable/texture-mesh.js +3 -3
- package/lib/mol-gl/renderable.d.ts +0 -1
- package/lib/mol-gl/renderer.d.ts +12 -12
- package/lib/mol-gl/renderer.js +24 -93
- package/lib/mol-gl/scene.d.ts +2 -2
- package/lib/mol-gl/scene.js +7 -5
- package/lib/mol-gl/shader/chunks/apply-light-color.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/apply-light-color.glsl.js +1 -1
- package/lib/mol-gl/shader/chunks/assign-color-varying.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/assign-color-varying.glsl.js +1 -1
- package/lib/mol-gl/shader/chunks/assign-group.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/assign-group.glsl.js +1 -1
- package/lib/mol-gl/shader/chunks/assign-marker-varying.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/assign-marker-varying.glsl.js +1 -1
- package/lib/mol-gl/shader/chunks/assign-material-color.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/assign-material-color.glsl.js +1 -1
- package/lib/mol-gl/shader/chunks/assign-position.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/assign-position.glsl.js +1 -1
- package/lib/mol-gl/shader/chunks/assign-size.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/assign-size.glsl.js +1 -1
- package/lib/mol-gl/shader/chunks/color-frag-params.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/color-frag-params.glsl.js +1 -1
- package/lib/mol-gl/shader/chunks/color-vert-params.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/color-vert-params.glsl.js +1 -1
- 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 +1 -1
- package/lib/mol-gl/shader/chunks/common-vert-params.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/common-vert-params.glsl.js +1 -1
- package/lib/mol-gl/shader/chunks/common.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/common.glsl.js +1 -1
- package/lib/mol-gl/shader/chunks/wboit-write.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/wboit-write.glsl.js +1 -1
- package/lib/mol-gl/shader/compute/color-smoothing/accumulate.vert.d.ts +1 -1
- package/lib/mol-gl/shader/compute/color-smoothing/accumulate.vert.js +1 -1
- package/lib/mol-gl/shader/cylinders.frag.d.ts +1 -1
- package/lib/mol-gl/shader/cylinders.frag.js +1 -1
- package/lib/mol-gl/shader/direct-volume.frag.d.ts +1 -1
- package/lib/mol-gl/shader/direct-volume.frag.js +1 -1
- package/lib/mol-gl/shader/gaussian-density.frag.d.ts +1 -1
- package/lib/mol-gl/shader/gaussian-density.frag.js +1 -1
- package/lib/mol-gl/shader/histogram-pyramid/reduction.frag.d.ts +1 -1
- package/lib/mol-gl/shader/histogram-pyramid/reduction.frag.js +1 -1
- package/lib/mol-gl/shader/image.frag.d.ts +1 -1
- package/lib/mol-gl/shader/image.frag.js +1 -1
- package/lib/mol-gl/shader/marching-cubes/isosurface.frag.d.ts +1 -1
- package/lib/mol-gl/shader/marching-cubes/isosurface.frag.js +1 -1
- package/lib/mol-gl/shader/mesh.frag.d.ts +1 -1
- package/lib/mol-gl/shader/mesh.frag.js +1 -1
- package/lib/mol-gl/shader/mesh.vert.d.ts +1 -1
- package/lib/mol-gl/shader/mesh.vert.js +1 -1
- package/lib/mol-gl/shader/spheres.frag.d.ts +1 -1
- package/lib/mol-gl/shader/spheres.frag.js +1 -1
- package/lib/mol-gl/shader-code.d.ts +3 -1
- package/lib/mol-gl/shader-code.js +43 -14
- package/lib/mol-gl/webgl/render-item.d.ts +7 -6
- package/lib/mol-gl/webgl/render-item.js +8 -6
- package/lib/mol-gl/webgl/resources.js +8 -1
- package/lib/mol-io/reader/cif/schema/mmcif.d.ts +326 -1
- package/lib/mol-io/reader/cif/schema/mmcif.js +326 -1
- package/lib/mol-io/reader/mol2/parser.d.ts +1 -1
- package/lib/mol-io/reader/mol2/parser.js +33 -3
- package/lib/mol-io/reader/mol2/schema.d.ts +12 -1
- package/lib/mol-io/reader/mol2/schema.js +1 -1
- package/lib/mol-math/geometry/gaussian-density/gpu.js +2 -2
- package/lib/mol-math/geometry/symmetry-operator.js +3 -2
- package/lib/mol-math/linear-algebra/3d/quat.d.ts +9 -1
- package/lib/mol-math/linear-algebra/3d/quat.js +20 -1
- package/lib/mol-model/structure/model/model.d.ts +1 -0
- package/lib/mol-model/structure/model/model.js +8 -2
- package/lib/mol-model/structure/model/properties/atomic/hierarchy.d.ts +6 -1
- package/lib/mol-model/structure/model/properties/atomic/hierarchy.js +1 -1
- package/lib/mol-model/structure/model/properties/utils/atomic-derived.d.ts +1 -1
- package/lib/mol-model/structure/model/properties/utils/atomic-derived.js +5 -2
- package/lib/mol-model/structure/model/properties/utils/atomic-index.d.ts +1 -1
- package/lib/mol-model/structure/model/properties/utils/atomic-index.js +12 -1
- package/lib/mol-model/structure/model/types.js +9 -0
- package/lib/mol-model/structure/structure/element/stats.js +8 -0
- package/lib/mol-model/structure/structure/unit/bonds/common.d.ts +2 -1
- package/lib/mol-model/structure/structure/unit/bonds/common.js +9 -1
- package/lib/mol-model/structure/structure/unit/bonds/inter-compute.d.ts +1 -1
- package/lib/mol-model/structure/structure/unit/bonds/inter-compute.js +21 -11
- package/lib/mol-model/structure/structure/unit/bonds/intra-compute.d.ts +1 -1
- package/lib/mol-model/structure/structure/unit/bonds/intra-compute.js +22 -12
- package/lib/mol-model/structure/structure/unit/rings.js +2 -0
- package/lib/mol-model-formats/shape/ply.d.ts +20 -0
- package/lib/mol-model-formats/structure/mol2.d.ts +1 -1
- package/lib/mol-model-formats/structure/mol2.js +37 -7
- package/lib/mol-model-formats/structure/property/bonds/index-pair.d.ts +18 -1
- package/lib/mol-model-formats/structure/property/bonds/index-pair.js +18 -5
- package/lib/mol-model-props/computed/representations/interactions-inter-unit-cylinder.d.ts +10 -0
- package/lib/mol-model-props/computed/representations/interactions-intra-unit-cylinder.d.ts +10 -0
- package/lib/mol-model-props/computed/representations/interactions.d.ts +30 -0
- package/lib/mol-model-props/integrative/cross-link-restraint/representation.d.ts +40 -0
- package/lib/mol-plugin/behavior/dynamic/representation.js +4 -6
- package/lib/mol-plugin/behavior/dynamic/selection/structure-focus-representation.d.ts +11 -0
- package/lib/mol-plugin/behavior/dynamic/selection/structure-focus-representation.js +3 -1
- package/lib/mol-plugin/behavior/dynamic/volume-streaming/model.d.ts +3 -2
- package/lib/mol-plugin/commands.d.ts +1 -4
- package/lib/mol-plugin/config.d.ts +2 -2
- package/lib/mol-plugin/config.js +4 -23
- package/lib/mol-plugin/features.d.ts +9 -0
- package/lib/mol-plugin/features.js +35 -0
- package/lib/mol-plugin/spec.js +1 -0
- package/lib/mol-plugin/util/viewport-screenshot.d.ts +12 -0
- package/lib/mol-plugin/version.js +2 -2
- package/lib/mol-plugin-state/actions/structure.d.ts +8 -1
- package/lib/mol-plugin-state/actions/structure.js +183 -72
- package/lib/mol-plugin-state/builder/structure/hierarchy-preset.d.ts +5 -355
- package/lib/mol-plugin-state/builder/structure/hierarchy-preset.js +14 -9
- package/lib/mol-plugin-state/builder/structure/hierarchy.d.ts +1 -71
- package/lib/mol-plugin-state/builder/structure/representation-preset.d.ts +4 -4
- package/lib/mol-plugin-state/helpers/structure-clipping.d.ts +1 -1
- package/lib/mol-plugin-state/helpers/structure-clipping.js +1 -1
- package/lib/mol-plugin-state/helpers/structure-selection-query.js +34 -20
- package/lib/mol-plugin-state/manager/structure/component.d.ts +13 -1
- package/lib/mol-plugin-state/manager/structure/component.js +14 -9
- package/lib/mol-plugin-state/manager/structure/selection.js +3 -1
- package/lib/mol-plugin-state/transforms/representation.d.ts +32 -0
- package/lib/mol-plugin-state/transforms/representation.js +2 -2
- package/lib/mol-plugin-ui/index.d.ts +4 -4
- package/lib/mol-plugin-ui/index.js +11 -13
- package/lib/mol-plugin-ui/plugin.js +1 -1
- package/lib/mol-plugin-ui/skin/base/base.scss +32 -32
- package/lib/mol-plugin-ui/skin/base/components/controls-base.scss +333 -333
- package/lib/mol-plugin-ui/skin/base/components/controls.scss +418 -418
- 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 +643 -643
- 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 +127 -127
- 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 +85 -85
- package/lib/mol-plugin-ui/skin/blue.scss +1 -1
- package/lib/mol-plugin-ui/skin/colors/blue.scss +23 -23
- package/lib/mol-plugin-ui/skin/colors/dark.scss +23 -23
- package/lib/mol-plugin-ui/skin/colors/light.scss +29 -29
- package/lib/mol-plugin-ui/skin/dark.scss +1 -1
- package/lib/mol-plugin-ui/skin/light.scss +1 -1
- package/lib/mol-plugin-ui/viewport/simple-settings.js +2 -6
- package/lib/mol-repr/shape/loci/angle.d.ts +10 -0
- package/lib/mol-repr/shape/loci/common.d.ts +10 -0
- package/lib/mol-repr/shape/loci/dihedral.d.ts +10 -0
- package/lib/mol-repr/shape/loci/distance.d.ts +10 -0
- package/lib/mol-repr/shape/loci/label.d.ts +10 -0
- package/lib/mol-repr/shape/loci/orientation.d.ts +10 -0
- package/lib/mol-repr/shape/loci/plane.d.ts +10 -0
- package/lib/mol-repr/shape/model/unitcell.d.ts +10 -0
- package/lib/mol-repr/structure/complex-representation.js +1 -1
- package/lib/mol-repr/structure/complex-visual.d.ts +61 -19
- package/lib/mol-repr/structure/params.d.ts +81 -19
- package/lib/mol-repr/structure/registry.d.ts +141 -19
- package/lib/mol-repr/structure/representation/backbone.d.ts +30 -0
- package/lib/mol-repr/structure/representation/ball-and-stick.d.ts +30 -0
- package/lib/mol-repr/structure/representation/carbohydrate.d.ts +30 -0
- package/lib/mol-repr/structure/representation/cartoon.d.ts +30 -0
- package/lib/mol-repr/structure/representation/ellipsoid.d.ts +30 -0
- package/lib/mol-repr/structure/representation/gaussian-surface.d.ts +30 -0
- package/lib/mol-repr/structure/representation/gaussian-surface.js +1 -1
- package/lib/mol-repr/structure/representation/gaussian-volume.d.ts +34 -58
- package/lib/mol-repr/structure/representation/gaussian-volume.js +2 -7
- package/lib/mol-repr/structure/representation/label.d.ts +30 -0
- package/lib/mol-repr/structure/representation/label.js +1 -1
- package/lib/mol-repr/structure/representation/line.d.ts +30 -0
- package/lib/mol-repr/structure/representation/molecular-surface.d.ts +30 -0
- package/lib/mol-repr/structure/representation/molecular-surface.js +1 -1
- package/lib/mol-repr/structure/representation/orientation.d.ts +30 -0
- package/lib/mol-repr/structure/representation/point.d.ts +30 -0
- package/lib/mol-repr/structure/representation/putty.d.ts +30 -0
- package/lib/mol-repr/structure/representation/spacefill.d.ts +30 -0
- package/lib/mol-repr/structure/units-representation.js +1 -1
- package/lib/mol-repr/structure/units-visual.d.ts +81 -19
- package/lib/mol-repr/structure/visual/bond-inter-unit-cylinder.d.ts +20 -0
- package/lib/mol-repr/structure/visual/bond-inter-unit-line.d.ts +10 -0
- package/lib/mol-repr/structure/visual/bond-intra-unit-cylinder.d.ts +20 -0
- package/lib/mol-repr/structure/visual/bond-intra-unit-cylinder.js +2 -2
- package/lib/mol-repr/structure/visual/bond-intra-unit-line.d.ts +10 -0
- package/lib/mol-repr/structure/visual/bond-intra-unit-line.js +2 -2
- package/lib/mol-repr/structure/visual/carbohydrate-link-cylinder.d.ts +10 -0
- package/lib/mol-repr/structure/visual/carbohydrate-symbol-mesh.d.ts +10 -0
- package/lib/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.d.ts +10 -0
- package/lib/mol-repr/structure/visual/element-cross.d.ts +10 -0
- package/lib/mol-repr/structure/visual/element-point.d.ts +10 -0
- package/lib/mol-repr/structure/visual/element-sphere.d.ts +20 -0
- package/lib/mol-repr/structure/visual/ellipsoid-mesh.d.ts +10 -0
- package/lib/mol-repr/structure/visual/gaussian-density-volume.d.ts +22 -38
- package/lib/mol-repr/structure/visual/gaussian-density-volume.js +8 -6
- package/lib/mol-repr/structure/visual/gaussian-surface-mesh.d.ts +40 -0
- package/lib/mol-repr/structure/visual/gaussian-surface-mesh.js +11 -8
- package/lib/mol-repr/structure/visual/gaussian-surface-wireframe.d.ts +10 -0
- package/lib/mol-repr/structure/visual/gaussian-surface-wireframe.js +1 -1
- package/lib/mol-repr/structure/visual/label-text.d.ts +10 -0
- package/lib/mol-repr/structure/visual/label-text.js +1 -2
- package/lib/mol-repr/structure/visual/molecular-surface-mesh.d.ts +10 -0
- package/lib/mol-repr/structure/visual/molecular-surface-mesh.js +1 -1
- package/lib/mol-repr/structure/visual/molecular-surface-wireframe.d.ts +10 -0
- package/lib/mol-repr/structure/visual/molecular-surface-wireframe.js +1 -1
- package/lib/mol-repr/structure/visual/nucleotide-block-mesh.d.ts +10 -0
- package/lib/mol-repr/structure/visual/nucleotide-ring-mesh.d.ts +10 -0
- package/lib/mol-repr/structure/visual/orientation-ellipsoid-mesh.d.ts +10 -0
- package/lib/mol-repr/structure/visual/polymer-backbone-cylinder.d.ts +20 -0
- package/lib/mol-repr/structure/visual/polymer-backbone-sphere.d.ts +20 -0
- package/lib/mol-repr/structure/visual/polymer-direction-wedge.d.ts +10 -0
- package/lib/mol-repr/structure/visual/polymer-gap-cylinder.d.ts +10 -0
- package/lib/mol-repr/structure/visual/polymer-trace-mesh.d.ts +10 -0
- package/lib/mol-repr/structure/visual/polymer-trace-mesh.js +1 -1
- package/lib/mol-repr/structure/visual/polymer-tube-mesh.d.ts +10 -0
- package/lib/mol-repr/structure/visual/util/bond.js +1 -1
- package/lib/mol-repr/structure/visual/util/common.d.ts +3 -2
- package/lib/mol-repr/structure/visual/util/common.js +2 -5
- package/lib/mol-repr/structure/visual/util/gaussian.d.ts +7 -6
- package/lib/mol-repr/structure/visual/util/gaussian.js +12 -12
- package/lib/mol-repr/structure/visual/util/molecular-surface.d.ts +2 -1
- package/lib/mol-repr/structure/visual/util/molecular-surface.js +4 -4
- package/lib/mol-repr/visual.js +11 -7
- package/lib/mol-repr/volume/direct-volume.d.ts +33 -57
- package/lib/mol-repr/volume/direct-volume.js +8 -12
- package/lib/mol-repr/volume/isosurface.d.ts +60 -0
- package/lib/mol-repr/volume/isosurface.js +11 -2
- package/lib/mol-repr/volume/registry.d.ts +31 -19
- package/lib/mol-repr/volume/representation.d.ts +10 -0
- package/lib/mol-repr/volume/slice.d.ts +30 -0
- package/lib/mol-repr/volume/slice.js +2 -2
- package/lib/mol-repr/volume/util.js +2 -2
- package/lib/mol-script/language/builder.d.ts +0 -1
- package/lib/mol-theme/clipping.d.ts +7 -15
- package/lib/mol-theme/clipping.js +5 -12
- package/lib/mol-theme/color/volume-value.d.ts +17 -0
- package/lib/mol-theme/color/volume-value.js +52 -0
- package/lib/mol-theme/color.d.ts +3 -0
- package/lib/mol-theme/color.js +2 -0
- package/lib/mol-util/clip.d.ts +49 -0
- package/lib/mol-util/clip.js +93 -0
- package/lib/mol-util/number-packing.d.ts +11 -0
- package/lib/mol-util/{float-packing.js → number-packing.js} +7 -14
- package/package.json +162 -162
- package/lib/commonjs/mol-util/float-packing.d.ts +0 -15
- package/lib/mol-util/float-packing.d.ts +0 -15
|
@@ -12,7 +12,7 @@ var render_item_1 = require("../../webgl/render-item");
|
|
|
12
12
|
var schema_1 = require("../../renderable/schema");
|
|
13
13
|
var shader_code_1 = require("../../../mol-gl/shader-code");
|
|
14
14
|
var mol_util_1 = require("../../../mol-util");
|
|
15
|
-
var
|
|
15
|
+
var number_packing_1 = require("../../../mol-util/number-packing");
|
|
16
16
|
var util_1 = require("../util");
|
|
17
17
|
var quad_vert_1 = require("../../../mol-gl/shader/quad.vert");
|
|
18
18
|
var sum_frag_1 = require("../../../mol-gl/shader/histogram-pyramid/sum.frag");
|
|
@@ -73,7 +73,7 @@ function getHistopyramidSum(ctx, pyramidTopTexture) {
|
|
|
73
73
|
ctx.unbindFramebuffer();
|
|
74
74
|
return (0, compat_1.isWebGL2)(gl)
|
|
75
75
|
? sumInts[0]
|
|
76
|
-
: (0,
|
|
76
|
+
: (0, number_packing_1.unpackRGBToInt)(sumBytes[0], sumBytes[1], sumBytes[2]);
|
|
77
77
|
}
|
|
78
78
|
exports.getHistopyramidSum = getHistopyramidSum;
|
|
79
79
|
//# sourceMappingURL=sum.js.map
|
|
@@ -7,7 +7,7 @@ import { WebGLContext } from '../../webgl/context';
|
|
|
7
7
|
import { Texture } from '../../../mol-gl/webgl/texture';
|
|
8
8
|
import { Vec3, Vec2, Mat4 } from '../../../mol-math/linear-algebra';
|
|
9
9
|
import { HistogramPyramid } from '../histogram-pyramid/reduction';
|
|
10
|
-
export declare function createIsosurfaceBuffers(ctx: WebGLContext, activeVoxelsBase: Texture, volumeData: Texture, histogramPyramid: HistogramPyramid, gridDim: Vec3, gridTexDim: Vec3, transform: Mat4, isoValue: number, invert: boolean, packedGroup: boolean, vertexTexture?: Texture, groupTexture?: Texture, normalTexture?: Texture): {
|
|
10
|
+
export declare function createIsosurfaceBuffers(ctx: WebGLContext, activeVoxelsBase: Texture, volumeData: Texture, histogramPyramid: HistogramPyramid, gridDim: Vec3, gridTexDim: Vec3, transform: Mat4, isoValue: number, invert: boolean, packedGroup: boolean, axisOrder: Vec3, vertexTexture?: Texture, groupTexture?: Texture, normalTexture?: Texture): {
|
|
11
11
|
vertexTexture: Texture;
|
|
12
12
|
groupTexture: Texture;
|
|
13
13
|
normalTexture: Texture;
|
|
@@ -22,7 +22,7 @@ export declare function createIsosurfaceBuffers(ctx: WebGLContext, activeVoxelsB
|
|
|
22
22
|
*
|
|
23
23
|
* Implementation based on http://www.miaumiau.cat/2016/10/stream-compaction-in-webgl/
|
|
24
24
|
*/
|
|
25
|
-
export declare function extractIsosurface(ctx: WebGLContext, volumeData: Texture, gridDim: Vec3, gridTexDim: Vec3, gridTexScale: Vec2, transform: Mat4, isoValue: number, invert: boolean, packedGroup: boolean, vertexTexture?: Texture, groupTexture?: Texture, normalTexture?: Texture): {
|
|
25
|
+
export declare function extractIsosurface(ctx: WebGLContext, volumeData: Texture, gridDim: Vec3, gridTexDim: Vec3, gridTexScale: Vec2, transform: Mat4, isoValue: number, invert: boolean, packedGroup: boolean, axisOrder: Vec3, vertexTexture?: Texture, groupTexture?: Texture, normalTexture?: Texture): {
|
|
26
26
|
vertexTexture: Texture;
|
|
27
27
|
groupTexture: Texture;
|
|
28
28
|
normalTexture: Texture;
|
|
@@ -19,9 +19,9 @@ var quad_vert_1 = require("../../../mol-gl/shader/quad.vert");
|
|
|
19
19
|
var isosurface_frag_1 = require("../../../mol-gl/shader/marching-cubes/isosurface.frag");
|
|
20
20
|
var active_voxels_1 = require("./active-voxels");
|
|
21
21
|
var compat_1 = require("../../webgl/compat");
|
|
22
|
-
var IsosurfaceSchema = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, util_1.QuadSchema), { tTriIndices: (0, schema_1.TextureSpec)('image-uint8', 'alpha', 'ubyte', 'nearest'), tActiveVoxelsPyramid: (0, schema_1.TextureSpec)('texture', 'rgba', 'float', 'nearest'), tActiveVoxelsBase: (0, schema_1.TextureSpec)('texture', 'rgba', 'float', 'nearest'), tVolumeData: (0, schema_1.TextureSpec)('texture', 'rgba', 'ubyte', 'nearest'), uIsoValue: (0, schema_1.UniformSpec)('f'), uSize: (0, schema_1.UniformSpec)('f'), uLevels: (0, schema_1.UniformSpec)('f'), uCount: (0, schema_1.UniformSpec)('f'), uInvert: (0, schema_1.UniformSpec)('b'), uGridDim: (0, schema_1.UniformSpec)('v3'), uGridTexDim: (0, schema_1.UniformSpec)('v3'), uGridTransform: (0, schema_1.UniformSpec)('m4'), uScale: (0, schema_1.UniformSpec)('v2'), dPackedGroup: (0, schema_1.DefineSpec)('boolean') });
|
|
22
|
+
var IsosurfaceSchema = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, util_1.QuadSchema), { tTriIndices: (0, schema_1.TextureSpec)('image-uint8', 'alpha', 'ubyte', 'nearest'), tActiveVoxelsPyramid: (0, schema_1.TextureSpec)('texture', 'rgba', 'float', 'nearest'), tActiveVoxelsBase: (0, schema_1.TextureSpec)('texture', 'rgba', 'float', 'nearest'), tVolumeData: (0, schema_1.TextureSpec)('texture', 'rgba', 'ubyte', 'nearest'), uIsoValue: (0, schema_1.UniformSpec)('f'), uSize: (0, schema_1.UniformSpec)('f'), uLevels: (0, schema_1.UniformSpec)('f'), uCount: (0, schema_1.UniformSpec)('f'), uInvert: (0, schema_1.UniformSpec)('b'), uGridDim: (0, schema_1.UniformSpec)('v3'), uGridTexDim: (0, schema_1.UniformSpec)('v3'), uGridTransform: (0, schema_1.UniformSpec)('m4'), uScale: (0, schema_1.UniformSpec)('v2'), dPackedGroup: (0, schema_1.DefineSpec)('boolean'), dAxisOrder: (0, schema_1.DefineSpec)('string', ['012', '021', '102', '120', '201', '210']) });
|
|
23
23
|
var IsosurfaceName = 'isosurface';
|
|
24
|
-
function getIsosurfaceRenderable(ctx, activeVoxelsPyramid, activeVoxelsBase, volumeData, gridDim, gridTexDim, transform, isoValue, levels, scale, count, invert, packedGroup) {
|
|
24
|
+
function getIsosurfaceRenderable(ctx, activeVoxelsPyramid, activeVoxelsBase, volumeData, gridDim, gridTexDim, transform, isoValue, levels, scale, count, invert, packedGroup, axisOrder) {
|
|
25
25
|
if (ctx.namedComputeRenderables[IsosurfaceName]) {
|
|
26
26
|
var v = ctx.namedComputeRenderables[IsosurfaceName].values;
|
|
27
27
|
mol_util_1.ValueCell.update(v.tActiveVoxelsPyramid, activeVoxelsPyramid);
|
|
@@ -37,16 +37,17 @@ function getIsosurfaceRenderable(ctx, activeVoxelsPyramid, activeVoxelsBase, vol
|
|
|
37
37
|
mol_util_1.ValueCell.update(v.uGridTransform, transform);
|
|
38
38
|
mol_util_1.ValueCell.update(v.uScale, scale);
|
|
39
39
|
mol_util_1.ValueCell.update(v.dPackedGroup, packedGroup);
|
|
40
|
+
mol_util_1.ValueCell.updateIfChanged(v.dAxisOrder, axisOrder.join(''));
|
|
40
41
|
ctx.namedComputeRenderables[IsosurfaceName].update();
|
|
41
42
|
}
|
|
42
43
|
else {
|
|
43
|
-
ctx.namedComputeRenderables[IsosurfaceName] = createIsosurfaceRenderable(ctx, activeVoxelsPyramid, activeVoxelsBase, volumeData, gridDim, gridTexDim, transform, isoValue, levels, scale, count, invert, packedGroup);
|
|
44
|
+
ctx.namedComputeRenderables[IsosurfaceName] = createIsosurfaceRenderable(ctx, activeVoxelsPyramid, activeVoxelsBase, volumeData, gridDim, gridTexDim, transform, isoValue, levels, scale, count, invert, packedGroup, axisOrder);
|
|
44
45
|
}
|
|
45
46
|
return ctx.namedComputeRenderables[IsosurfaceName];
|
|
46
47
|
}
|
|
47
|
-
function createIsosurfaceRenderable(ctx, activeVoxelsPyramid, activeVoxelsBase, volumeData, gridDim, gridTexDim, transform, isoValue, levels, scale, count, invert, packedGroup) {
|
|
48
|
+
function createIsosurfaceRenderable(ctx, activeVoxelsPyramid, activeVoxelsBase, volumeData, gridDim, gridTexDim, transform, isoValue, levels, scale, count, invert, packedGroup, axisOrder) {
|
|
48
49
|
// console.log('uSize', Math.pow(2, levels))
|
|
49
|
-
var values = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, util_1.QuadValues), { tTriIndices: mol_util_1.ValueCell.create((0, tables_1.getTriIndices)()), tActiveVoxelsPyramid: mol_util_1.ValueCell.create(activeVoxelsPyramid), tActiveVoxelsBase: mol_util_1.ValueCell.create(activeVoxelsBase), tVolumeData: mol_util_1.ValueCell.create(volumeData), uIsoValue: mol_util_1.ValueCell.create(isoValue), uSize: mol_util_1.ValueCell.create(Math.pow(2, levels)), uLevels: mol_util_1.ValueCell.create(levels), uCount: mol_util_1.ValueCell.create(count), uInvert: mol_util_1.ValueCell.create(invert), uGridDim: mol_util_1.ValueCell.create(gridDim), uGridTexDim: mol_util_1.ValueCell.create(gridTexDim), uGridTransform: mol_util_1.ValueCell.create(transform), uScale: mol_util_1.ValueCell.create(scale), dPackedGroup: mol_util_1.ValueCell.create(packedGroup) });
|
|
50
|
+
var values = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, util_1.QuadValues), { tTriIndices: mol_util_1.ValueCell.create((0, tables_1.getTriIndices)()), tActiveVoxelsPyramid: mol_util_1.ValueCell.create(activeVoxelsPyramid), tActiveVoxelsBase: mol_util_1.ValueCell.create(activeVoxelsBase), tVolumeData: mol_util_1.ValueCell.create(volumeData), uIsoValue: mol_util_1.ValueCell.create(isoValue), uSize: mol_util_1.ValueCell.create(Math.pow(2, levels)), uLevels: mol_util_1.ValueCell.create(levels), uCount: mol_util_1.ValueCell.create(count), uInvert: mol_util_1.ValueCell.create(invert), uGridDim: mol_util_1.ValueCell.create(gridDim), uGridTexDim: mol_util_1.ValueCell.create(gridTexDim), uGridTransform: mol_util_1.ValueCell.create(transform), uScale: mol_util_1.ValueCell.create(scale), dPackedGroup: mol_util_1.ValueCell.create(packedGroup), dAxisOrder: mol_util_1.ValueCell.create(axisOrder.join('')) });
|
|
50
51
|
var schema = (0, tslib_1.__assign)({}, IsosurfaceSchema);
|
|
51
52
|
var shaderCode = (0, shader_code_1.ShaderCode)('isosurface', quad_vert_1.quad_vert, isosurface_frag_1.isosurface_frag, { drawBuffers: 'required' });
|
|
52
53
|
var renderItem = (0, render_item_1.createComputeRenderItem)(ctx, 'triangles', shaderCode, schema, values);
|
|
@@ -62,7 +63,7 @@ function setRenderingDefaults(ctx) {
|
|
|
62
63
|
state.colorMask(true, true, true, true);
|
|
63
64
|
state.clearColor(0, 0, 0, 0);
|
|
64
65
|
}
|
|
65
|
-
function createIsosurfaceBuffers(ctx, activeVoxelsBase, volumeData, histogramPyramid, gridDim, gridTexDim, transform, isoValue, invert, packedGroup, vertexTexture, groupTexture, normalTexture) {
|
|
66
|
+
function createIsosurfaceBuffers(ctx, activeVoxelsBase, volumeData, histogramPyramid, gridDim, gridTexDim, transform, isoValue, invert, packedGroup, axisOrder, vertexTexture, groupTexture, normalTexture) {
|
|
66
67
|
var drawBuffers = ctx.extensions.drawBuffers;
|
|
67
68
|
if (!drawBuffers)
|
|
68
69
|
throw new Error('need WebGL draw buffers');
|
|
@@ -110,7 +111,7 @@ function createIsosurfaceBuffers(ctx, activeVoxelsBase, volumeData, histogramPyr
|
|
|
110
111
|
vertexTexture.attachFramebuffer(framebuffer, 0);
|
|
111
112
|
groupTexture.attachFramebuffer(framebuffer, 1);
|
|
112
113
|
normalTexture.attachFramebuffer(framebuffer, 2);
|
|
113
|
-
var renderable = getIsosurfaceRenderable(ctx, pyramidTex, activeVoxelsBase, volumeData, gridDim, gridTexDim, transform, isoValue, levels, scale, count, invert, packedGroup);
|
|
114
|
+
var renderable = getIsosurfaceRenderable(ctx, pyramidTex, activeVoxelsBase, volumeData, gridDim, gridTexDim, transform, isoValue, levels, scale, count, invert, packedGroup, axisOrder);
|
|
114
115
|
ctx.state.currentRenderItemId = -1;
|
|
115
116
|
framebuffer.bind();
|
|
116
117
|
drawBuffers.drawBuffers([
|
|
@@ -136,7 +137,7 @@ exports.createIsosurfaceBuffers = createIsosurfaceBuffers;
|
|
|
136
137
|
*
|
|
137
138
|
* Implementation based on http://www.miaumiau.cat/2016/10/stream-compaction-in-webgl/
|
|
138
139
|
*/
|
|
139
|
-
function extractIsosurface(ctx, volumeData, gridDim, gridTexDim, gridTexScale, transform, isoValue, invert, packedGroup, vertexTexture, groupTexture, normalTexture) {
|
|
140
|
+
function extractIsosurface(ctx, volumeData, gridDim, gridTexDim, gridTexScale, transform, isoValue, invert, packedGroup, axisOrder, vertexTexture, groupTexture, normalTexture) {
|
|
140
141
|
// console.time('calcActiveVoxels');
|
|
141
142
|
var activeVoxelsTex = (0, active_voxels_1.calcActiveVoxels)(ctx, volumeData, gridDim, gridTexDim, isoValue, gridTexScale);
|
|
142
143
|
// ctx.waitForGpuCommandsCompleteSync();
|
|
@@ -146,7 +147,7 @@ function extractIsosurface(ctx, volumeData, gridDim, gridTexDim, gridTexScale, t
|
|
|
146
147
|
// ctx.waitForGpuCommandsCompleteSync();
|
|
147
148
|
// console.timeEnd('createHistogramPyramid');
|
|
148
149
|
// console.time('createIsosurfaceBuffers');
|
|
149
|
-
var gv = createIsosurfaceBuffers(ctx, activeVoxelsTex, volumeData, compacted, gridDim, gridTexDim, transform, isoValue, invert, packedGroup, vertexTexture, groupTexture, normalTexture);
|
|
150
|
+
var gv = createIsosurfaceBuffers(ctx, activeVoxelsTex, volumeData, compacted, gridDim, gridTexDim, transform, isoValue, invert, packedGroup, axisOrder, vertexTexture, groupTexture, normalTexture);
|
|
150
151
|
// ctx.waitForGpuCommandsCompleteSync();
|
|
151
152
|
// console.timeEnd('createIsosurfaceBuffers');
|
|
152
153
|
return gv;
|
|
@@ -14,6 +14,7 @@ import { TextValues } from './renderable/text';
|
|
|
14
14
|
import { TextureMeshValues } from './renderable/texture-mesh';
|
|
15
15
|
import { ImageValues } from './renderable/image';
|
|
16
16
|
import { CylindersValues } from './renderable/cylinders';
|
|
17
|
+
import { GraphicsRenderVariant } from './webgl/render-item';
|
|
17
18
|
export declare const getNextMaterialId: () => number;
|
|
18
19
|
export interface GraphicsRenderObject<T extends RenderObjectType = RenderObjectType> {
|
|
19
20
|
readonly id: number;
|
|
@@ -25,4 +26,4 @@ export interface GraphicsRenderObject<T extends RenderObjectType = RenderObjectT
|
|
|
25
26
|
export declare type RenderObjectType = 'mesh' | 'points' | 'spheres' | 'cylinders' | 'text' | 'lines' | 'direct-volume' | 'image' | 'texture-mesh';
|
|
26
27
|
export declare type RenderObjectValues<T extends RenderObjectType> = T extends 'mesh' ? MeshValues : T extends 'points' ? PointsValues : T extends 'spheres' ? SpheresValues : T extends 'cylinders' ? CylindersValues : T extends 'text' ? TextValues : T extends 'lines' ? LinesValues : T extends 'direct-volume' ? DirectVolumeValues : T extends 'image' ? ImageValues : T extends 'texture-mesh' ? TextureMeshValues : never;
|
|
27
28
|
export declare function createRenderObject<T extends RenderObjectType>(type: T, values: RenderObjectValues<T>, state: RenderableState, materialId: number): GraphicsRenderObject<T>;
|
|
28
|
-
export declare function createRenderable<T extends RenderObjectType>(ctx: WebGLContext, o: GraphicsRenderObject<T
|
|
29
|
+
export declare function createRenderable<T extends RenderObjectType>(ctx: WebGLContext, o: GraphicsRenderObject<T>, variants: GraphicsRenderVariant[]): Renderable<any>;
|
|
@@ -23,17 +23,17 @@ function createRenderObject(type, values, state, materialId) {
|
|
|
23
23
|
return { id: getNextId(), type: type, values: values, state: state, materialId: materialId };
|
|
24
24
|
}
|
|
25
25
|
exports.createRenderObject = createRenderObject;
|
|
26
|
-
function createRenderable(ctx, o) {
|
|
26
|
+
function createRenderable(ctx, o, variants) {
|
|
27
27
|
switch (o.type) {
|
|
28
|
-
case 'mesh': return (0, mesh_1.MeshRenderable)(ctx, o.id, o.values, o.state, o.materialId);
|
|
29
|
-
case 'points': return (0, points_1.PointsRenderable)(ctx, o.id, o.values, o.state, o.materialId);
|
|
30
|
-
case 'spheres': return (0, spheres_1.SpheresRenderable)(ctx, o.id, o.values, o.state, o.materialId);
|
|
31
|
-
case 'cylinders': return (0, cylinders_1.CylindersRenderable)(ctx, o.id, o.values, o.state, o.materialId);
|
|
32
|
-
case 'text': return (0, text_1.TextRenderable)(ctx, o.id, o.values, o.state, o.materialId);
|
|
33
|
-
case 'lines': return (0, lines_1.LinesRenderable)(ctx, o.id, o.values, o.state, o.materialId);
|
|
34
|
-
case 'direct-volume': return (0, direct_volume_1.DirectVolumeRenderable)(ctx, o.id, o.values, o.state, o.materialId);
|
|
35
|
-
case 'image': return (0, image_1.ImageRenderable)(ctx, o.id, o.values, o.state, o.materialId);
|
|
36
|
-
case 'texture-mesh': return (0, texture_mesh_1.TextureMeshRenderable)(ctx, o.id, o.values, o.state, o.materialId);
|
|
28
|
+
case 'mesh': return (0, mesh_1.MeshRenderable)(ctx, o.id, o.values, o.state, o.materialId, variants);
|
|
29
|
+
case 'points': return (0, points_1.PointsRenderable)(ctx, o.id, o.values, o.state, o.materialId, variants);
|
|
30
|
+
case 'spheres': return (0, spheres_1.SpheresRenderable)(ctx, o.id, o.values, o.state, o.materialId, variants);
|
|
31
|
+
case 'cylinders': return (0, cylinders_1.CylindersRenderable)(ctx, o.id, o.values, o.state, o.materialId, variants);
|
|
32
|
+
case 'text': return (0, text_1.TextRenderable)(ctx, o.id, o.values, o.state, o.materialId, variants);
|
|
33
|
+
case 'lines': return (0, lines_1.LinesRenderable)(ctx, o.id, o.values, o.state, o.materialId, variants);
|
|
34
|
+
case 'direct-volume': return (0, direct_volume_1.DirectVolumeRenderable)(ctx, o.id, o.values, o.state, o.materialId, variants);
|
|
35
|
+
case 'image': return (0, image_1.ImageRenderable)(ctx, o.id, o.values, o.state, o.materialId, variants);
|
|
36
|
+
case 'texture-mesh': return (0, texture_mesh_1.TextureMeshRenderable)(ctx, o.id, o.values, o.state, o.materialId, variants);
|
|
37
37
|
}
|
|
38
38
|
throw new Error('unsupported type');
|
|
39
39
|
}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { Renderable, RenderableState } from '../renderable';
|
|
7
7
|
import { WebGLContext } from '../webgl/context';
|
|
8
|
+
import { GraphicsRenderVariant } from '../webgl/render-item';
|
|
8
9
|
import { AttributeSpec, Values, ElementsSpec, ValueSpec, DefineSpec, UniformSpec } from './schema';
|
|
9
10
|
export declare const CylindersSchema: {
|
|
10
11
|
aGroup: AttributeSpec<"float32">;
|
|
@@ -15,7 +16,7 @@ export declare const CylindersSchema: {
|
|
|
15
16
|
aCap: AttributeSpec<"float32">;
|
|
16
17
|
elements: ElementsSpec<"uint32">;
|
|
17
18
|
padding: ValueSpec<"number">;
|
|
18
|
-
|
|
19
|
+
uDoubleSided: UniformSpec<"b">;
|
|
19
20
|
dIgnoreLight: DefineSpec<"boolean">;
|
|
20
21
|
dXrayShaded: DefineSpec<"boolean">;
|
|
21
22
|
uBumpFrequency: UniformSpec<"f">;
|
|
@@ -26,6 +27,13 @@ export declare const CylindersSchema: {
|
|
|
26
27
|
dSizeType: DefineSpec<"string">;
|
|
27
28
|
uSizeFactor: UniformSpec<"f">;
|
|
28
29
|
dLightCount: DefineSpec<"number">;
|
|
30
|
+
dClipObjectCount: DefineSpec<"number">;
|
|
31
|
+
dClipVariant: DefineSpec<"string">;
|
|
32
|
+
uClipObjectType: UniformSpec<"i[]">;
|
|
33
|
+
uClipObjectInvert: UniformSpec<"b[]">;
|
|
34
|
+
uClipObjectPosition: UniformSpec<"v3[]">;
|
|
35
|
+
uClipObjectRotation: UniformSpec<"v4[]">;
|
|
36
|
+
uClipObjectScale: UniformSpec<"v3[]">;
|
|
29
37
|
aInstance: AttributeSpec<"float32">;
|
|
30
38
|
aTransform: AttributeSpec<"float32">;
|
|
31
39
|
uAlpha: UniformSpec<"f">;
|
|
@@ -45,8 +53,6 @@ export declare const CylindersSchema: {
|
|
|
45
53
|
hasReflection: ValueSpec<"boolean">;
|
|
46
54
|
boundingSphere: ValueSpec<"sphere">;
|
|
47
55
|
invariantBoundingSphere: ValueSpec<"sphere">;
|
|
48
|
-
dClipObjectCount: DefineSpec<"number">;
|
|
49
|
-
dClipVariant: DefineSpec<"string">;
|
|
50
56
|
uClippingTexDim: UniformSpec<"v2">;
|
|
51
57
|
tClipping: import("./schema").TextureSpec<"image-uint8">;
|
|
52
58
|
dClipping: DefineSpec<"boolean">;
|
|
@@ -75,7 +81,6 @@ export declare const CylindersSchema: {
|
|
|
75
81
|
uMarker: UniformSpec<"f">;
|
|
76
82
|
uMarkerTexDim: UniformSpec<"v2">;
|
|
77
83
|
tMarker: import("./schema").TextureSpec<"image-uint8">;
|
|
78
|
-
dMarkerType: DefineSpec<"string">;
|
|
79
84
|
markerAverage: ValueSpec<"number">;
|
|
80
85
|
markerStatus: ValueSpec<"number">;
|
|
81
86
|
uColor: UniformSpec<"v3">;
|
|
@@ -87,7 +92,8 @@ export declare const CylindersSchema: {
|
|
|
87
92
|
tColorGrid: import("./schema").TextureSpec<"texture">;
|
|
88
93
|
dColorType: DefineSpec<"string">;
|
|
89
94
|
dUsePalette: DefineSpec<"boolean">;
|
|
95
|
+
dGeometryType: DefineSpec<"string">;
|
|
90
96
|
};
|
|
91
97
|
export declare type CylindersSchema = typeof CylindersSchema;
|
|
92
98
|
export declare type CylindersValues = Values<CylindersSchema>;
|
|
93
|
-
export declare function CylindersRenderable(ctx: WebGLContext, id: number, values: CylindersValues, state: RenderableState, materialId: number): Renderable<CylindersValues>;
|
|
99
|
+
export declare function CylindersRenderable(ctx: WebGLContext, id: number, values: CylindersValues, state: RenderableState, materialId: number, variants: GraphicsRenderVariant[]): Renderable<CylindersValues>;
|
|
@@ -12,14 +12,14 @@ var render_item_1 = require("../webgl/render-item");
|
|
|
12
12
|
var schema_1 = require("./schema");
|
|
13
13
|
var shader_code_1 = require("../shader-code");
|
|
14
14
|
var mol_util_1 = require("../../mol-util");
|
|
15
|
-
exports.CylindersSchema = (0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, schema_1.BaseSchema), schema_1.SizeSchema), { aGroup: (0, schema_1.AttributeSpec)('float32', 1, 0), aStart: (0, schema_1.AttributeSpec)('float32', 3, 0), aEnd: (0, schema_1.AttributeSpec)('float32', 3, 0), aMapping: (0, schema_1.AttributeSpec)('float32', 3, 0), aScale: (0, schema_1.AttributeSpec)('float32', 1, 0), aCap: (0, schema_1.AttributeSpec)('float32', 1, 0), elements: (0, schema_1.ElementsSpec)('uint32'), padding: (0, schema_1.ValueSpec)('number'),
|
|
16
|
-
function CylindersRenderable(ctx, id, values, state, materialId) {
|
|
15
|
+
exports.CylindersSchema = (0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, schema_1.BaseSchema), schema_1.SizeSchema), { aGroup: (0, schema_1.AttributeSpec)('float32', 1, 0), aStart: (0, schema_1.AttributeSpec)('float32', 3, 0), aEnd: (0, schema_1.AttributeSpec)('float32', 3, 0), aMapping: (0, schema_1.AttributeSpec)('float32', 3, 0), aScale: (0, schema_1.AttributeSpec)('float32', 1, 0), aCap: (0, schema_1.AttributeSpec)('float32', 1, 0), elements: (0, schema_1.ElementsSpec)('uint32'), padding: (0, schema_1.ValueSpec)('number'), uDoubleSided: (0, schema_1.UniformSpec)('b'), dIgnoreLight: (0, schema_1.DefineSpec)('boolean'), dXrayShaded: (0, schema_1.DefineSpec)('boolean'), uBumpFrequency: (0, schema_1.UniformSpec)('f'), uBumpAmplitude: (0, schema_1.UniformSpec)('f') });
|
|
16
|
+
function CylindersRenderable(ctx, id, values, state, materialId, variants) {
|
|
17
17
|
var schema = (0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, schema_1.GlobalUniformSchema), schema_1.GlobalTextureSchema), schema_1.InternalSchema), exports.CylindersSchema);
|
|
18
18
|
var internalValues = {
|
|
19
19
|
uObjectId: mol_util_1.ValueCell.create(id),
|
|
20
20
|
};
|
|
21
21
|
var shaderCode = shader_code_1.CylindersShaderCode;
|
|
22
|
-
var renderItem = (0, render_item_1.createGraphicsRenderItem)(ctx, 'triangles', shaderCode, schema, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, values), internalValues), materialId);
|
|
22
|
+
var renderItem = (0, render_item_1.createGraphicsRenderItem)(ctx, 'triangles', shaderCode, schema, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, values), internalValues), materialId, variants);
|
|
23
23
|
return (0, renderable_1.createRenderable)(renderItem, values, state);
|
|
24
24
|
}
|
|
25
25
|
exports.CylindersRenderable = CylindersRenderable;
|
|
@@ -5,15 +5,11 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { Renderable, RenderableState } from '../renderable';
|
|
7
7
|
import { WebGLContext } from '../webgl/context';
|
|
8
|
+
import { GraphicsRenderVariant } from '../webgl/render-item';
|
|
8
9
|
import { AttributeSpec, Values, UniformSpec, TextureSpec, ElementsSpec, DefineSpec } from './schema';
|
|
9
10
|
export declare const DirectVolumeSchema: {
|
|
10
11
|
aPosition: AttributeSpec<"float32">;
|
|
11
12
|
elements: ElementsSpec<"uint32">;
|
|
12
|
-
uColor: UniformSpec<"v3">;
|
|
13
|
-
uColorTexDim: UniformSpec<"v2">;
|
|
14
|
-
tColor: TextureSpec<"image-uint8">;
|
|
15
|
-
dColorType: DefineSpec<"string">;
|
|
16
|
-
uIsoValue: UniformSpec<"v2">;
|
|
17
13
|
uBboxMin: UniformSpec<"v3">;
|
|
18
14
|
uBboxMax: UniformSpec<"v3">;
|
|
19
15
|
uBboxSize: UniformSpec<"v3">;
|
|
@@ -22,8 +18,6 @@ export declare const DirectVolumeSchema: {
|
|
|
22
18
|
uJumpLength: UniformSpec<"f">;
|
|
23
19
|
uTransform: UniformSpec<"m4">;
|
|
24
20
|
uGridDim: UniformSpec<"v3">;
|
|
25
|
-
dRenderMode: DefineSpec<"string">;
|
|
26
|
-
dSingleLayer: DefineSpec<"boolean">;
|
|
27
21
|
tTransferTex: TextureSpec<"image-uint8">;
|
|
28
22
|
uTransferScale: UniformSpec<"f">;
|
|
29
23
|
dGridTexType: DefineSpec<"string">;
|
|
@@ -34,12 +28,17 @@ export declare const DirectVolumeSchema: {
|
|
|
34
28
|
uCartnToUnit: UniformSpec<"m4">;
|
|
35
29
|
uUnitToCartn: UniformSpec<"m4">;
|
|
36
30
|
dPackedGroup: DefineSpec<"boolean">;
|
|
37
|
-
|
|
38
|
-
dFlipSided: DefineSpec<"boolean">;
|
|
39
|
-
dFlatShaded: DefineSpec<"boolean">;
|
|
31
|
+
dAxisOrder: DefineSpec<"string">;
|
|
40
32
|
dIgnoreLight: DefineSpec<"boolean">;
|
|
41
33
|
dXrayShaded: DefineSpec<"boolean">;
|
|
42
34
|
dLightCount: DefineSpec<"number">;
|
|
35
|
+
dClipObjectCount: DefineSpec<"number">;
|
|
36
|
+
dClipVariant: DefineSpec<"string">;
|
|
37
|
+
uClipObjectType: UniformSpec<"i[]">;
|
|
38
|
+
uClipObjectInvert: UniformSpec<"b[]">;
|
|
39
|
+
uClipObjectPosition: UniformSpec<"v3[]">;
|
|
40
|
+
uClipObjectRotation: UniformSpec<"v4[]">;
|
|
41
|
+
uClipObjectScale: UniformSpec<"v3[]">;
|
|
43
42
|
aInstance: AttributeSpec<"float32">;
|
|
44
43
|
aTransform: AttributeSpec<"float32">;
|
|
45
44
|
uAlpha: UniformSpec<"f">;
|
|
@@ -59,8 +58,6 @@ export declare const DirectVolumeSchema: {
|
|
|
59
58
|
hasReflection: import("./schema").ValueSpec<"boolean">;
|
|
60
59
|
boundingSphere: import("./schema").ValueSpec<"sphere">;
|
|
61
60
|
invariantBoundingSphere: import("./schema").ValueSpec<"sphere">;
|
|
62
|
-
dClipObjectCount: DefineSpec<"number">;
|
|
63
|
-
dClipVariant: DefineSpec<"string">;
|
|
64
61
|
uClippingTexDim: UniformSpec<"v2">;
|
|
65
62
|
tClipping: TextureSpec<"image-uint8">;
|
|
66
63
|
dClipping: DefineSpec<"boolean">;
|
|
@@ -89,15 +86,19 @@ export declare const DirectVolumeSchema: {
|
|
|
89
86
|
uMarker: UniformSpec<"f">;
|
|
90
87
|
uMarkerTexDim: UniformSpec<"v2">;
|
|
91
88
|
tMarker: TextureSpec<"image-uint8">;
|
|
92
|
-
dMarkerType: DefineSpec<"string">;
|
|
93
89
|
markerAverage: import("./schema").ValueSpec<"number">;
|
|
94
90
|
markerStatus: import("./schema").ValueSpec<"number">;
|
|
91
|
+
uColor: UniformSpec<"v3">;
|
|
92
|
+
uColorTexDim: UniformSpec<"v2">;
|
|
95
93
|
uColorGridDim: UniformSpec<"v3">;
|
|
96
94
|
uColorGridTransform: UniformSpec<"v4">;
|
|
95
|
+
tColor: TextureSpec<"image-uint8">;
|
|
97
96
|
tPalette: TextureSpec<"image-uint8">;
|
|
98
97
|
tColorGrid: TextureSpec<"texture">;
|
|
98
|
+
dColorType: DefineSpec<"string">;
|
|
99
99
|
dUsePalette: DefineSpec<"boolean">;
|
|
100
|
+
dGeometryType: DefineSpec<"string">;
|
|
100
101
|
};
|
|
101
102
|
export declare type DirectVolumeSchema = typeof DirectVolumeSchema;
|
|
102
103
|
export declare type DirectVolumeValues = Values<DirectVolumeSchema>;
|
|
103
|
-
export declare function DirectVolumeRenderable(ctx: WebGLContext, id: number, values: DirectVolumeValues, state: RenderableState, materialId: number): Renderable<DirectVolumeValues>;
|
|
104
|
+
export declare function DirectVolumeRenderable(ctx: WebGLContext, id: number, values: DirectVolumeValues, state: RenderableState, materialId: number, variants: GraphicsRenderVariant[]): Renderable<DirectVolumeValues>;
|
|
@@ -12,8 +12,8 @@ var render_item_1 = require("../webgl/render-item");
|
|
|
12
12
|
var schema_1 = require("./schema");
|
|
13
13
|
var shader_code_1 = require("../shader-code");
|
|
14
14
|
var mol_util_1 = require("../../mol-util");
|
|
15
|
-
exports.DirectVolumeSchema = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, schema_1.BaseSchema), { aPosition: (0, schema_1.AttributeSpec)('float32', 3, 0), elements: (0, schema_1.ElementsSpec)('uint32'),
|
|
16
|
-
function DirectVolumeRenderable(ctx, id, values, state, materialId) {
|
|
15
|
+
exports.DirectVolumeSchema = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, schema_1.BaseSchema), { aPosition: (0, schema_1.AttributeSpec)('float32', 3, 0), elements: (0, schema_1.ElementsSpec)('uint32'), uBboxMin: (0, schema_1.UniformSpec)('v3'), uBboxMax: (0, schema_1.UniformSpec)('v3'), uBboxSize: (0, schema_1.UniformSpec)('v3'), uMaxSteps: (0, schema_1.UniformSpec)('i'), uStepScale: (0, schema_1.UniformSpec)('f'), uJumpLength: (0, schema_1.UniformSpec)('f'), uTransform: (0, schema_1.UniformSpec)('m4'), uGridDim: (0, schema_1.UniformSpec)('v3'), tTransferTex: (0, schema_1.TextureSpec)('image-uint8', 'alpha', 'ubyte', 'linear'), uTransferScale: (0, schema_1.UniformSpec)('f'), dGridTexType: (0, schema_1.DefineSpec)('string', ['2d', '3d']), uGridTexDim: (0, schema_1.UniformSpec)('v3'), tGridTex: (0, schema_1.TextureSpec)('texture', 'rgba', 'ubyte', 'linear'), uGridStats: (0, schema_1.UniformSpec)('v4'), uCellDim: (0, schema_1.UniformSpec)('v3'), uCartnToUnit: (0, schema_1.UniformSpec)('m4'), uUnitToCartn: (0, schema_1.UniformSpec)('m4'), dPackedGroup: (0, schema_1.DefineSpec)('boolean'), dAxisOrder: (0, schema_1.DefineSpec)('string', ['012', '021', '102', '120', '201', '210']), dIgnoreLight: (0, schema_1.DefineSpec)('boolean'), dXrayShaded: (0, schema_1.DefineSpec)('boolean') });
|
|
16
|
+
function DirectVolumeRenderable(ctx, id, values, state, materialId, variants) {
|
|
17
17
|
var schema = (0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, schema_1.GlobalUniformSchema), schema_1.GlobalTextureSchema), schema_1.InternalSchema), exports.DirectVolumeSchema);
|
|
18
18
|
if (!ctx.isWebGL2) {
|
|
19
19
|
// workaround for webgl1 limitation that loop counters need to be `const`
|
|
@@ -23,7 +23,7 @@ function DirectVolumeRenderable(ctx, id, values, state, materialId) {
|
|
|
23
23
|
uObjectId: mol_util_1.ValueCell.create(id),
|
|
24
24
|
};
|
|
25
25
|
var shaderCode = shader_code_1.DirectVolumeShaderCode;
|
|
26
|
-
var renderItem = (0, render_item_1.createGraphicsRenderItem)(ctx, 'triangles', shaderCode, schema, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, values), internalValues), materialId);
|
|
26
|
+
var renderItem = (0, render_item_1.createGraphicsRenderItem)(ctx, 'triangles', shaderCode, schema, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, values), internalValues), materialId, variants);
|
|
27
27
|
return (0, renderable_1.createRenderable)(renderItem, values, state);
|
|
28
28
|
}
|
|
29
29
|
exports.DirectVolumeRenderable = DirectVolumeRenderable;
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { Renderable, RenderableState } from '../renderable';
|
|
7
7
|
import { WebGLContext } from '../webgl/context';
|
|
8
|
+
import { GraphicsRenderVariant } from '../webgl/render-item';
|
|
8
9
|
import { AttributeSpec, Values, TextureSpec, ElementsSpec, DefineSpec, UniformSpec } from './schema';
|
|
9
10
|
export declare const ImageSchema: {
|
|
10
11
|
aGroup: AttributeSpec<"float32">;
|
|
@@ -16,6 +17,13 @@ export declare const ImageSchema: {
|
|
|
16
17
|
tGroupTex: TextureSpec<"image-uint8">;
|
|
17
18
|
dInterpolation: DefineSpec<"string">;
|
|
18
19
|
dLightCount: DefineSpec<"number">;
|
|
20
|
+
dClipObjectCount: DefineSpec<"number">;
|
|
21
|
+
dClipVariant: DefineSpec<"string">;
|
|
22
|
+
uClipObjectType: UniformSpec<"i[]">;
|
|
23
|
+
uClipObjectInvert: UniformSpec<"b[]">;
|
|
24
|
+
uClipObjectPosition: UniformSpec<"v3[]">;
|
|
25
|
+
uClipObjectRotation: UniformSpec<"v4[]">;
|
|
26
|
+
uClipObjectScale: UniformSpec<"v3[]">;
|
|
19
27
|
aInstance: AttributeSpec<"float32">;
|
|
20
28
|
aTransform: AttributeSpec<"float32">;
|
|
21
29
|
uAlpha: UniformSpec<"f">;
|
|
@@ -35,8 +43,6 @@ export declare const ImageSchema: {
|
|
|
35
43
|
hasReflection: import("./schema").ValueSpec<"boolean">;
|
|
36
44
|
boundingSphere: import("./schema").ValueSpec<"sphere">;
|
|
37
45
|
invariantBoundingSphere: import("./schema").ValueSpec<"sphere">;
|
|
38
|
-
dClipObjectCount: DefineSpec<"number">;
|
|
39
|
-
dClipVariant: DefineSpec<"string">;
|
|
40
46
|
uClippingTexDim: UniformSpec<"v2">;
|
|
41
47
|
tClipping: TextureSpec<"image-uint8">;
|
|
42
48
|
dClipping: DefineSpec<"boolean">;
|
|
@@ -65,7 +71,6 @@ export declare const ImageSchema: {
|
|
|
65
71
|
uMarker: UniformSpec<"f">;
|
|
66
72
|
uMarkerTexDim: UniformSpec<"v2">;
|
|
67
73
|
tMarker: TextureSpec<"image-uint8">;
|
|
68
|
-
dMarkerType: DefineSpec<"string">;
|
|
69
74
|
markerAverage: import("./schema").ValueSpec<"number">;
|
|
70
75
|
markerStatus: import("./schema").ValueSpec<"number">;
|
|
71
76
|
uColor: UniformSpec<"v3">;
|
|
@@ -77,7 +82,8 @@ export declare const ImageSchema: {
|
|
|
77
82
|
tColorGrid: TextureSpec<"texture">;
|
|
78
83
|
dColorType: DefineSpec<"string">;
|
|
79
84
|
dUsePalette: DefineSpec<"boolean">;
|
|
85
|
+
dGeometryType: DefineSpec<"string">;
|
|
80
86
|
};
|
|
81
87
|
export declare type ImageSchema = typeof ImageSchema;
|
|
82
88
|
export declare type ImageValues = Values<ImageSchema>;
|
|
83
|
-
export declare function ImageRenderable(ctx: WebGLContext, id: number, values: ImageValues, state: RenderableState, materialId: number): Renderable<ImageValues>;
|
|
89
|
+
export declare function ImageRenderable(ctx: WebGLContext, id: number, values: ImageValues, state: RenderableState, materialId: number, variants: GraphicsRenderVariant[]): Renderable<ImageValues>;
|
|
@@ -14,13 +14,13 @@ var shader_code_1 = require("../shader-code");
|
|
|
14
14
|
var mol_util_1 = require("../../mol-util");
|
|
15
15
|
var image_1 = require("../../mol-geo/geometry/image/image");
|
|
16
16
|
exports.ImageSchema = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, schema_1.BaseSchema), { aGroup: (0, schema_1.AttributeSpec)('float32', 1, 0), aPosition: (0, schema_1.AttributeSpec)('float32', 3, 0), aUv: (0, schema_1.AttributeSpec)('float32', 2, 0), elements: (0, schema_1.ElementsSpec)('uint32'), uImageTexDim: (0, schema_1.UniformSpec)('v2'), tImageTex: (0, schema_1.TextureSpec)('image-uint8', 'rgba', 'ubyte', 'nearest'), tGroupTex: (0, schema_1.TextureSpec)('image-uint8', 'rgba', 'ubyte', 'nearest'), dInterpolation: (0, schema_1.DefineSpec)('string', image_1.InterpolationTypeNames) });
|
|
17
|
-
function ImageRenderable(ctx, id, values, state, materialId) {
|
|
17
|
+
function ImageRenderable(ctx, id, values, state, materialId, variants) {
|
|
18
18
|
var schema = (0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, schema_1.GlobalUniformSchema), schema_1.GlobalTextureSchema), schema_1.InternalSchema), exports.ImageSchema);
|
|
19
19
|
var internalValues = {
|
|
20
20
|
uObjectId: mol_util_1.ValueCell.create(id),
|
|
21
21
|
};
|
|
22
22
|
var shaderCode = shader_code_1.ImageShaderCode;
|
|
23
|
-
var renderItem = (0, render_item_1.createGraphicsRenderItem)(ctx, 'triangles', shaderCode, schema, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, values), internalValues), materialId);
|
|
23
|
+
var renderItem = (0, render_item_1.createGraphicsRenderItem)(ctx, 'triangles', shaderCode, schema, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, values), internalValues), materialId, variants);
|
|
24
24
|
return (0, renderable_1.createRenderable)(renderItem, values, state);
|
|
25
25
|
}
|
|
26
26
|
exports.ImageRenderable = ImageRenderable;
|
|
@@ -5,7 +5,8 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { Renderable, RenderableState } from '../renderable';
|
|
7
7
|
import { WebGLContext } from '../webgl/context';
|
|
8
|
-
import {
|
|
8
|
+
import { GraphicsRenderVariant } from '../webgl/render-item';
|
|
9
|
+
import { AttributeSpec, DefineSpec, Values, ElementsSpec, UniformSpec } from './schema';
|
|
9
10
|
export declare const LinesSchema: {
|
|
10
11
|
aGroup: AttributeSpec<"float32">;
|
|
11
12
|
aMapping: AttributeSpec<"float32">;
|
|
@@ -13,24 +14,31 @@ export declare const LinesSchema: {
|
|
|
13
14
|
aEnd: AttributeSpec<"float32">;
|
|
14
15
|
elements: ElementsSpec<"uint32">;
|
|
15
16
|
dLineSizeAttenuation: DefineSpec<"boolean">;
|
|
16
|
-
|
|
17
|
+
uDoubleSided: UniformSpec<"b">;
|
|
17
18
|
dFlipSided: DefineSpec<"boolean">;
|
|
18
|
-
uSize:
|
|
19
|
-
uSizeTexDim:
|
|
19
|
+
uSize: UniformSpec<"f">;
|
|
20
|
+
uSizeTexDim: UniformSpec<"v2">;
|
|
20
21
|
tSize: import("./schema").TextureSpec<"image-uint8">;
|
|
21
22
|
dSizeType: DefineSpec<"string">;
|
|
22
|
-
uSizeFactor:
|
|
23
|
+
uSizeFactor: UniformSpec<"f">;
|
|
23
24
|
dLightCount: DefineSpec<"number">;
|
|
25
|
+
dClipObjectCount: DefineSpec<"number">;
|
|
26
|
+
dClipVariant: DefineSpec<"string">;
|
|
27
|
+
uClipObjectType: UniformSpec<"i[]">;
|
|
28
|
+
uClipObjectInvert: UniformSpec<"b[]">;
|
|
29
|
+
uClipObjectPosition: UniformSpec<"v3[]">;
|
|
30
|
+
uClipObjectRotation: UniformSpec<"v4[]">;
|
|
31
|
+
uClipObjectScale: UniformSpec<"v3[]">;
|
|
24
32
|
aInstance: AttributeSpec<"float32">;
|
|
25
33
|
aTransform: AttributeSpec<"float32">;
|
|
26
|
-
uAlpha:
|
|
27
|
-
uMetalness:
|
|
28
|
-
uRoughness:
|
|
29
|
-
uBumpiness:
|
|
30
|
-
uVertexCount:
|
|
31
|
-
uInstanceCount:
|
|
32
|
-
uGroupCount:
|
|
33
|
-
uInvariantBoundingSphere:
|
|
34
|
+
uAlpha: UniformSpec<"f">;
|
|
35
|
+
uMetalness: UniformSpec<"f">;
|
|
36
|
+
uRoughness: UniformSpec<"f">;
|
|
37
|
+
uBumpiness: UniformSpec<"f">;
|
|
38
|
+
uVertexCount: UniformSpec<"i">;
|
|
39
|
+
uInstanceCount: UniformSpec<"i">;
|
|
40
|
+
uGroupCount: UniformSpec<"i">;
|
|
41
|
+
uInvariantBoundingSphere: UniformSpec<"v4">;
|
|
34
42
|
drawCount: import("./schema").ValueSpec<"number">;
|
|
35
43
|
instanceCount: import("./schema").ValueSpec<"number">;
|
|
36
44
|
alpha: import("./schema").ValueSpec<"number">;
|
|
@@ -40,49 +48,47 @@ export declare const LinesSchema: {
|
|
|
40
48
|
hasReflection: import("./schema").ValueSpec<"boolean">;
|
|
41
49
|
boundingSphere: import("./schema").ValueSpec<"sphere">;
|
|
42
50
|
invariantBoundingSphere: import("./schema").ValueSpec<"sphere">;
|
|
43
|
-
|
|
44
|
-
dClipVariant: DefineSpec<"string">;
|
|
45
|
-
uClippingTexDim: import("./schema").UniformSpec<"v2">;
|
|
51
|
+
uClippingTexDim: UniformSpec<"v2">;
|
|
46
52
|
tClipping: import("./schema").TextureSpec<"image-uint8">;
|
|
47
53
|
dClipping: DefineSpec<"boolean">;
|
|
48
|
-
uSubstanceTexDim:
|
|
54
|
+
uSubstanceTexDim: UniformSpec<"v2">;
|
|
49
55
|
tSubstance: import("./schema").TextureSpec<"image-uint8">;
|
|
50
56
|
dSubstance: DefineSpec<"boolean">;
|
|
51
|
-
uSubstanceGridDim:
|
|
52
|
-
uSubstanceGridTransform:
|
|
57
|
+
uSubstanceGridDim: UniformSpec<"v3">;
|
|
58
|
+
uSubstanceGridTransform: UniformSpec<"v4">;
|
|
53
59
|
tSubstanceGrid: import("./schema").TextureSpec<"texture">;
|
|
54
60
|
dSubstanceType: DefineSpec<"string">;
|
|
55
|
-
uTransparencyTexDim:
|
|
61
|
+
uTransparencyTexDim: UniformSpec<"v2">;
|
|
56
62
|
tTransparency: import("./schema").TextureSpec<"image-uint8">;
|
|
57
63
|
dTransparency: DefineSpec<"boolean">;
|
|
58
64
|
transparencyAverage: import("./schema").ValueSpec<"number">;
|
|
59
|
-
uTransparencyGridDim:
|
|
60
|
-
uTransparencyGridTransform:
|
|
65
|
+
uTransparencyGridDim: UniformSpec<"v3">;
|
|
66
|
+
uTransparencyGridTransform: UniformSpec<"v4">;
|
|
61
67
|
tTransparencyGrid: import("./schema").TextureSpec<"texture">;
|
|
62
68
|
dTransparencyType: DefineSpec<"string">;
|
|
63
|
-
uOverpaintTexDim:
|
|
69
|
+
uOverpaintTexDim: UniformSpec<"v2">;
|
|
64
70
|
tOverpaint: import("./schema").TextureSpec<"image-uint8">;
|
|
65
71
|
dOverpaint: DefineSpec<"boolean">;
|
|
66
|
-
uOverpaintGridDim:
|
|
67
|
-
uOverpaintGridTransform:
|
|
72
|
+
uOverpaintGridDim: UniformSpec<"v3">;
|
|
73
|
+
uOverpaintGridTransform: UniformSpec<"v4">;
|
|
68
74
|
tOverpaintGrid: import("./schema").TextureSpec<"texture">;
|
|
69
75
|
dOverpaintType: DefineSpec<"string">;
|
|
70
|
-
uMarker:
|
|
71
|
-
uMarkerTexDim:
|
|
76
|
+
uMarker: UniformSpec<"f">;
|
|
77
|
+
uMarkerTexDim: UniformSpec<"v2">;
|
|
72
78
|
tMarker: import("./schema").TextureSpec<"image-uint8">;
|
|
73
|
-
dMarkerType: DefineSpec<"string">;
|
|
74
79
|
markerAverage: import("./schema").ValueSpec<"number">;
|
|
75
80
|
markerStatus: import("./schema").ValueSpec<"number">;
|
|
76
|
-
uColor:
|
|
77
|
-
uColorTexDim:
|
|
78
|
-
uColorGridDim:
|
|
79
|
-
uColorGridTransform:
|
|
81
|
+
uColor: UniformSpec<"v3">;
|
|
82
|
+
uColorTexDim: UniformSpec<"v2">;
|
|
83
|
+
uColorGridDim: UniformSpec<"v3">;
|
|
84
|
+
uColorGridTransform: UniformSpec<"v4">;
|
|
80
85
|
tColor: import("./schema").TextureSpec<"image-uint8">;
|
|
81
86
|
tPalette: import("./schema").TextureSpec<"image-uint8">;
|
|
82
87
|
tColorGrid: import("./schema").TextureSpec<"texture">;
|
|
83
88
|
dColorType: DefineSpec<"string">;
|
|
84
89
|
dUsePalette: DefineSpec<"boolean">;
|
|
90
|
+
dGeometryType: DefineSpec<"string">;
|
|
85
91
|
};
|
|
86
92
|
export declare type LinesSchema = typeof LinesSchema;
|
|
87
93
|
export declare type LinesValues = Values<LinesSchema>;
|
|
88
|
-
export declare function LinesRenderable(ctx: WebGLContext, id: number, values: LinesValues, state: RenderableState, materialId: number): Renderable<LinesValues>;
|
|
94
|
+
export declare function LinesRenderable(ctx: WebGLContext, id: number, values: LinesValues, state: RenderableState, materialId: number, variants: GraphicsRenderVariant[]): Renderable<LinesValues>;
|
|
@@ -12,14 +12,14 @@ var render_item_1 = require("../webgl/render-item");
|
|
|
12
12
|
var schema_1 = require("./schema");
|
|
13
13
|
var mol_util_1 = require("../../mol-util");
|
|
14
14
|
var shader_code_1 = require("../shader-code");
|
|
15
|
-
exports.LinesSchema = (0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, schema_1.BaseSchema), schema_1.SizeSchema), { aGroup: (0, schema_1.AttributeSpec)('float32', 1, 0), aMapping: (0, schema_1.AttributeSpec)('float32', 2, 0), aStart: (0, schema_1.AttributeSpec)('float32', 3, 0), aEnd: (0, schema_1.AttributeSpec)('float32', 3, 0), elements: (0, schema_1.ElementsSpec)('uint32'), dLineSizeAttenuation: (0, schema_1.DefineSpec)('boolean'),
|
|
16
|
-
function LinesRenderable(ctx, id, values, state, materialId) {
|
|
15
|
+
exports.LinesSchema = (0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, schema_1.BaseSchema), schema_1.SizeSchema), { aGroup: (0, schema_1.AttributeSpec)('float32', 1, 0), aMapping: (0, schema_1.AttributeSpec)('float32', 2, 0), aStart: (0, schema_1.AttributeSpec)('float32', 3, 0), aEnd: (0, schema_1.AttributeSpec)('float32', 3, 0), elements: (0, schema_1.ElementsSpec)('uint32'), dLineSizeAttenuation: (0, schema_1.DefineSpec)('boolean'), uDoubleSided: (0, schema_1.UniformSpec)('b'), dFlipSided: (0, schema_1.DefineSpec)('boolean') });
|
|
16
|
+
function LinesRenderable(ctx, id, values, state, materialId, variants) {
|
|
17
17
|
var schema = (0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, schema_1.GlobalUniformSchema), schema_1.GlobalTextureSchema), schema_1.InternalSchema), exports.LinesSchema);
|
|
18
18
|
var internalValues = {
|
|
19
19
|
uObjectId: mol_util_1.ValueCell.create(id),
|
|
20
20
|
};
|
|
21
21
|
var shaderCode = shader_code_1.LinesShaderCode;
|
|
22
|
-
var renderItem = (0, render_item_1.createGraphicsRenderItem)(ctx, 'triangles', shaderCode, schema, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, values), internalValues), materialId);
|
|
22
|
+
var renderItem = (0, render_item_1.createGraphicsRenderItem)(ctx, 'triangles', shaderCode, schema, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, values), internalValues), materialId, variants);
|
|
23
23
|
return (0, renderable_1.createRenderable)(renderItem, values, state);
|
|
24
24
|
}
|
|
25
25
|
exports.LinesRenderable = LinesRenderable;
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { Renderable, RenderableState } from '../renderable';
|
|
7
7
|
import { WebGLContext } from '../webgl/context';
|
|
8
|
+
import { GraphicsRenderVariant } from '../webgl/render-item';
|
|
8
9
|
import { AttributeSpec, ElementsSpec, DefineSpec, Values, ValueSpec, UniformSpec } from './schema';
|
|
9
10
|
export declare const MeshSchema: {
|
|
10
11
|
readonly aGroup: AttributeSpec<"float32">;
|
|
@@ -12,7 +13,7 @@ export declare const MeshSchema: {
|
|
|
12
13
|
readonly aNormal: AttributeSpec<"float32">;
|
|
13
14
|
readonly elements: ElementsSpec<"uint32">;
|
|
14
15
|
readonly dFlatShaded: DefineSpec<"boolean">;
|
|
15
|
-
readonly
|
|
16
|
+
readonly uDoubleSided: UniformSpec<"b">;
|
|
16
17
|
readonly dFlipSided: DefineSpec<"boolean">;
|
|
17
18
|
readonly dIgnoreLight: DefineSpec<"boolean">;
|
|
18
19
|
readonly dXrayShaded: DefineSpec<"boolean">;
|
|
@@ -20,6 +21,13 @@ export declare const MeshSchema: {
|
|
|
20
21
|
readonly uBumpAmplitude: UniformSpec<"f">;
|
|
21
22
|
readonly meta: ValueSpec<"unknown">;
|
|
22
23
|
readonly dLightCount: DefineSpec<"number">;
|
|
24
|
+
readonly dClipObjectCount: DefineSpec<"number">;
|
|
25
|
+
readonly dClipVariant: DefineSpec<"string">;
|
|
26
|
+
readonly uClipObjectType: UniformSpec<"i[]">;
|
|
27
|
+
readonly uClipObjectInvert: UniformSpec<"b[]">;
|
|
28
|
+
readonly uClipObjectPosition: UniformSpec<"v3[]">;
|
|
29
|
+
readonly uClipObjectRotation: UniformSpec<"v4[]">;
|
|
30
|
+
readonly uClipObjectScale: UniformSpec<"v3[]">;
|
|
23
31
|
readonly aInstance: AttributeSpec<"float32">;
|
|
24
32
|
readonly aTransform: AttributeSpec<"float32">;
|
|
25
33
|
readonly uAlpha: UniformSpec<"f">;
|
|
@@ -39,8 +47,6 @@ export declare const MeshSchema: {
|
|
|
39
47
|
readonly hasReflection: ValueSpec<"boolean">;
|
|
40
48
|
readonly boundingSphere: ValueSpec<"sphere">;
|
|
41
49
|
readonly invariantBoundingSphere: ValueSpec<"sphere">;
|
|
42
|
-
readonly dClipObjectCount: DefineSpec<"number">;
|
|
43
|
-
readonly dClipVariant: DefineSpec<"string">;
|
|
44
50
|
readonly uClippingTexDim: UniformSpec<"v2">;
|
|
45
51
|
readonly tClipping: import("./schema").TextureSpec<"image-uint8">;
|
|
46
52
|
readonly dClipping: DefineSpec<"boolean">;
|
|
@@ -69,7 +75,6 @@ export declare const MeshSchema: {
|
|
|
69
75
|
readonly uMarker: UniformSpec<"f">;
|
|
70
76
|
readonly uMarkerTexDim: UniformSpec<"v2">;
|
|
71
77
|
readonly tMarker: import("./schema").TextureSpec<"image-uint8">;
|
|
72
|
-
readonly dMarkerType: DefineSpec<"string">;
|
|
73
78
|
readonly markerAverage: ValueSpec<"number">;
|
|
74
79
|
readonly markerStatus: ValueSpec<"number">;
|
|
75
80
|
readonly uColor: UniformSpec<"v3">;
|
|
@@ -81,7 +86,8 @@ export declare const MeshSchema: {
|
|
|
81
86
|
readonly tColorGrid: import("./schema").TextureSpec<"texture">;
|
|
82
87
|
readonly dColorType: DefineSpec<"string">;
|
|
83
88
|
readonly dUsePalette: DefineSpec<"boolean">;
|
|
89
|
+
readonly dGeometryType: DefineSpec<"string">;
|
|
84
90
|
};
|
|
85
91
|
export declare type MeshSchema = typeof MeshSchema;
|
|
86
92
|
export declare type MeshValues = Values<MeshSchema>;
|
|
87
|
-
export declare function MeshRenderable(ctx: WebGLContext, id: number, values: MeshValues, state: RenderableState, materialId: number): Renderable<MeshValues>;
|
|
93
|
+
export declare function MeshRenderable(ctx: WebGLContext, id: number, values: MeshValues, state: RenderableState, materialId: number, variants: GraphicsRenderVariant[]): Renderable<MeshValues>;
|