molstar 3.8.2 → 3.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +20 -20
- package/README.md +202 -202
- package/build/viewer/embedded.html +43 -43
- package/build/viewer/index.html +109 -106
- package/build/viewer/molstar.js +1 -1
- package/lib/apps/docking-viewer/index.html +36 -36
- package/lib/apps/viewer/app.d.ts +5 -2
- package/lib/apps/viewer/app.js +11 -7
- package/lib/apps/viewer/embedded.html +43 -43
- package/lib/apps/viewer/index.html +109 -106
- package/lib/cli/cif2bcif/converter.js +1 -1
- package/lib/commonjs/apps/viewer/app.d.ts +5 -2
- package/lib/commonjs/apps/viewer/app.js +12 -7
- package/lib/commonjs/cli/cif2bcif/converter.js +1 -1
- package/lib/commonjs/examples/alpha-orbitals/index.d.ts +1 -1
- package/lib/commonjs/examples/alpha-orbitals/index.js +4 -1
- package/lib/commonjs/examples/basic-wrapper/custom-theme.js +1 -1
- package/lib/commonjs/examples/proteopedia-wrapper/coloring.js +3 -3
- package/lib/commonjs/extensions/alpha-orbitals/density.d.ts +1 -1
- package/lib/commonjs/extensions/alpha-orbitals/density.js +6 -2
- package/lib/commonjs/extensions/alpha-orbitals/orbitals.d.ts +1 -1
- package/lib/commonjs/extensions/alpha-orbitals/orbitals.js +6 -3
- package/lib/commonjs/extensions/anvil/algorithm.js +1 -1
- package/lib/commonjs/extensions/cellpack/color/generate.js +1 -1
- package/lib/commonjs/extensions/cellpack/color/provided.js +1 -1
- package/lib/commonjs/extensions/cellpack/state.js +1 -1
- package/lib/commonjs/extensions/dnatco/confal-pyramids/color.js +1 -1
- package/lib/commonjs/extensions/g3d/model.js +1 -1
- package/lib/commonjs/extensions/geo-export/ui.js +1 -0
- package/lib/commonjs/extensions/model-archive/quality-assessment/color/plddt.js +1 -1
- package/lib/commonjs/extensions/model-archive/quality-assessment/color/qmean.js +1 -1
- package/lib/commonjs/extensions/mp4-export/ui.js +1 -0
- package/lib/commonjs/extensions/pdbe/structure-quality-report/color.js +1 -1
- package/lib/commonjs/extensions/rcsb/assembly-symmetry/color.js +4 -4
- package/lib/commonjs/extensions/rcsb/validation-report/color/density-fit.js +1 -1
- package/lib/commonjs/extensions/rcsb/validation-report/color/geometry-quality.js +2 -2
- package/lib/commonjs/extensions/rcsb/validation-report/color/random-coil-index.js +1 -1
- package/lib/commonjs/extensions/rcsb/validation-report/representation.js +2 -2
- package/lib/commonjs/mol-canvas3d/canvas3d.js +4 -0
- package/lib/commonjs/mol-canvas3d/controls/trackball.js +7 -7
- package/lib/commonjs/mol-canvas3d/helper/camera-helper.js +14 -14
- package/lib/commonjs/mol-canvas3d/helper/interaction-events.js +5 -5
- package/lib/commonjs/mol-canvas3d/passes/draw.js +34 -5
- package/lib/commonjs/mol-canvas3d/passes/fxaa.js +5 -0
- package/lib/commonjs/mol-canvas3d/passes/marking.js +5 -0
- package/lib/commonjs/mol-canvas3d/passes/multi-sample.js +9 -0
- package/lib/commonjs/mol-canvas3d/passes/pick.d.ts +18 -5
- package/lib/commonjs/mol-canvas3d/passes/pick.js +125 -24
- package/lib/commonjs/mol-canvas3d/passes/postprocessing.js +5 -0
- package/lib/commonjs/mol-canvas3d/passes/smaa.js +4 -0
- package/lib/commonjs/mol-canvas3d/passes/wboit.js +4 -0
- package/lib/commonjs/mol-data/db/column.js +5 -5
- package/lib/commonjs/mol-data/db/table.js +2 -2
- package/lib/commonjs/mol-data/util/array.d.ts +1 -1
- package/lib/commonjs/mol-geo/geometry/cylinders/cylinders.d.ts +1 -1
- package/lib/commonjs/mol-geo/geometry/lines/lines.d.ts +0 -1
- package/lib/commonjs/mol-geo/geometry/points/points.d.ts +1 -1
- package/lib/commonjs/mol-geo/geometry/texture-mesh/color-smoothing.js +13 -0
- package/lib/commonjs/mol-gl/compute/grid3d.d.ts +2 -2
- package/lib/commonjs/mol-gl/compute/grid3d.js +30 -8
- package/lib/commonjs/mol-gl/compute/histogram-pyramid/reduction.d.ts +1 -1
- package/lib/commonjs/mol-gl/compute/histogram-pyramid/reduction.js +6 -1
- package/lib/commonjs/mol-gl/compute/histogram-pyramid/sum.d.ts +1 -1
- package/lib/commonjs/mol-gl/compute/histogram-pyramid/sum.js +6 -1
- package/lib/commonjs/mol-gl/compute/marching-cubes/active-voxels.d.ts +1 -1
- package/lib/commonjs/mol-gl/compute/marching-cubes/active-voxels.js +6 -1
- package/lib/commonjs/mol-gl/compute/marching-cubes/isosurface.d.ts +1 -1
- package/lib/commonjs/mol-gl/compute/marching-cubes/isosurface.js +10 -10
- package/lib/commonjs/mol-gl/renderer.js +77 -32
- package/lib/commonjs/mol-gl/scene.js +2 -0
- 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-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/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/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/image.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/image.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/lines.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/lines.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/points.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/points.frag.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/text.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/text.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader-code.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader-code.js +41 -9
- package/lib/commonjs/mol-gl/webgl/compat.d.ts +34 -1
- package/lib/commonjs/mol-gl/webgl/compat.js +50 -2
- package/lib/commonjs/mol-gl/webgl/context.d.ts +2 -0
- package/lib/commonjs/mol-gl/webgl/context.js +3 -0
- package/lib/commonjs/mol-gl/webgl/extensions.d.ts +3 -2
- package/lib/commonjs/mol-gl/webgl/extensions.js +6 -1
- package/lib/commonjs/mol-gl/webgl/timer.d.ts +22 -0
- package/lib/commonjs/mol-gl/webgl/timer.js +169 -0
- package/lib/commonjs/mol-io/common/binary-cif/array-encoder.js +18 -18
- package/lib/commonjs/mol-io/common/binary-cif/decoder.js +16 -16
- package/lib/commonjs/mol-io/common/binary-cif/encoding.js +9 -9
- package/lib/commonjs/mol-io/reader/cif/binary/field.js +3 -3
- package/lib/commonjs/mol-io/reader/cif/data-model.js +14 -14
- package/lib/commonjs/mol-io/reader/cif/schema.js +1 -1
- package/lib/commonjs/mol-io/reader/cif/text/parser.js +23 -23
- package/lib/commonjs/mol-io/reader/common/text/column/fixed.js +1 -1
- package/lib/commonjs/mol-io/reader/common/text/column/token.js +1 -1
- package/lib/commonjs/mol-io/reader/common/text/number-parser.js +6 -6
- package/lib/commonjs/mol-io/reader/csv/parser.js +8 -8
- package/lib/commonjs/mol-io/writer/cif/encoder/binary.js +10 -10
- package/lib/commonjs/mol-io/writer/cif/encoder/text.js +7 -7
- package/lib/commonjs/mol-io/writer/cif/encoder.js +8 -8
- package/lib/commonjs/mol-io/writer/mol2/encoder.js +4 -4
- package/lib/commonjs/mol-math/geometry/gaussian-density/gpu.js +13 -2
- package/lib/commonjs/mol-model/sequence/alignment/sequence.js +3 -3
- package/lib/commonjs/mol-model/sequence/sequence.js +9 -9
- package/lib/commonjs/mol-model/structure/export/categories/atom_site_operator_mapping.js +3 -3
- package/lib/commonjs/mol-model/structure/export/categories/secondary-structure.js +2 -2
- package/lib/commonjs/mol-model/structure/export/categories/utils.js +1 -1
- package/lib/commonjs/mol-model/structure/model/model.js +2 -2
- package/lib/commonjs/mol-model/structure/model/properties/custom/indexed.js +6 -6
- package/lib/commonjs/mol-model/structure/model/properties/utils/atomic-ranges.js +1 -1
- package/lib/commonjs/mol-model/structure/model/types.js +116 -116
- package/lib/commonjs/mol-model/structure/query/context.js +1 -1
- package/lib/commonjs/mol-model/structure/query/queries/generators.js +5 -5
- package/lib/commonjs/mol-model/structure/query/queries/internal.js +4 -4
- package/lib/commonjs/mol-model/structure/query/queries/modifiers.js +4 -4
- package/lib/commonjs/mol-model/structure/query/utils/structure-distance.d.ts +5 -54
- package/lib/commonjs/mol-model/structure/query/utils/structure-distance.js +9 -9
- package/lib/commonjs/mol-model/structure/structure/carbohydrates/constants.d.ts +3 -1
- package/lib/commonjs/mol-model/structure/structure/carbohydrates/constants.js +192 -108
- package/lib/commonjs/mol-model/structure/structure/element/loci.js +5 -5
- package/lib/commonjs/mol-model/structure/structure/element/stats.js +5 -5
- package/lib/commonjs/mol-model/structure/structure/properties.js +5 -5
- package/lib/commonjs/mol-model/structure/structure/structure.js +11 -11
- package/lib/commonjs/mol-model/structure/structure/unit/bonds/inter-compute.js +5 -5
- package/lib/commonjs/mol-model/structure/structure/unit/bonds/intra-compute.js +4 -4
- package/lib/commonjs/mol-model/structure/structure/unit/bonds.js +2 -2
- package/lib/commonjs/mol-model/structure/structure/unit/resonance.js +1 -1
- package/lib/commonjs/mol-model/structure/structure/unit/rings/compute.js +6 -6
- package/lib/commonjs/mol-model/structure/structure/unit/rings.js +6 -6
- package/lib/commonjs/mol-model/structure/structure/unit.js +16 -16
- package/lib/commonjs/mol-model/structure/structure/util/superposition-sifts-mapping.js +1 -1
- package/lib/commonjs/mol-model/structure/util.js +4 -4
- package/lib/commonjs/mol-model-formats/structure/basic/atomic.js +2 -2
- package/lib/commonjs/mol-model-formats/structure/basic/parser.js +4 -4
- package/lib/commonjs/mol-model-formats/structure/basic/properties.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/basic/sort.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/basic/util.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/cif-core.js +6 -6
- package/lib/commonjs/mol-model-formats/structure/common/entity.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/cube.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/gro.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/mol.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/mol2.js +4 -4
- package/lib/commonjs/mol-model-formats/structure/prmtop.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/property/bonds/chem_comp.js +3 -3
- package/lib/commonjs/mol-model-formats/structure/property/bonds/index-pair.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/property/bonds/struct_conn.js +6 -6
- package/lib/commonjs/mol-model-formats/structure/property/secondary-structure.js +8 -8
- package/lib/commonjs/mol-model-formats/structure/psf.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/top.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/xyz.js +1 -1
- package/lib/commonjs/mol-model-props/computed/accessible-surface-area/shrake-rupley/radii.js +2 -2
- package/lib/commonjs/mol-model-props/computed/accessible-surface-area/shrake-rupley.js +3 -3
- package/lib/commonjs/mol-model-props/computed/accessible-surface-area.js +2 -2
- package/lib/commonjs/mol-model-props/computed/chemistry/functional-group.js +31 -31
- package/lib/commonjs/mol-model-props/computed/chemistry/geometry.js +22 -22
- package/lib/commonjs/mol-model-props/computed/chemistry/valence-model.js +32 -32
- package/lib/commonjs/mol-model-props/computed/interactions/charged.js +39 -39
- package/lib/commonjs/mol-model-props/computed/interactions/common.js +34 -34
- package/lib/commonjs/mol-model-props/computed/interactions/contacts-builder.js +1 -1
- package/lib/commonjs/mol-model-props/computed/interactions/contacts.js +1 -1
- package/lib/commonjs/mol-model-props/computed/interactions/halogen-bonds.js +12 -12
- package/lib/commonjs/mol-model-props/computed/interactions/hydrogen-bonds.js +32 -32
- package/lib/commonjs/mol-model-props/computed/interactions/hydrophobic.js +9 -9
- package/lib/commonjs/mol-model-props/computed/interactions/metal.js +26 -26
- package/lib/commonjs/mol-model-props/computed/interactions/refine.js +20 -20
- package/lib/commonjs/mol-model-props/computed/representations/interactions-inter-unit-cylinder.js +2 -2
- package/lib/commonjs/mol-model-props/computed/representations/interactions-intra-unit-cylinder.js +2 -2
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/bends.js +1 -1
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/bridges.js +12 -12
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/helices.js +6 -6
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/ladders.js +3 -3
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/sheets.js +11 -11
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/turns.js +3 -3
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp.js +30 -30
- package/lib/commonjs/mol-model-props/computed/themes/accessible-surface-area.js +1 -1
- package/lib/commonjs/mol-model-props/computed/themes/interaction-type.js +10 -10
- package/lib/commonjs/mol-model-props/integrative/cross-link-restraint/color.js +1 -1
- package/lib/commonjs/mol-model-props/integrative/cross-link-restraint/format.js +3 -3
- package/lib/commonjs/mol-model-props/sequence/sifts-mapping.js +1 -1
- package/lib/commonjs/mol-model-props/sequence/themes/sifts-mapping.js +1 -1
- package/lib/commonjs/mol-plugin/animation-loop.d.ts +2 -1
- package/lib/commonjs/mol-plugin/animation-loop.js +18 -5
- package/lib/commonjs/mol-plugin/behavior/dynamic/camera.js +12 -12
- package/lib/commonjs/mol-plugin/behavior/dynamic/representation.js +7 -7
- package/lib/commonjs/mol-plugin/behavior/dynamic/volume-streaming/model.d.ts +2 -3
- package/lib/commonjs/mol-plugin/config.d.ts +3 -0
- package/lib/commonjs/mol-plugin/config.js +3 -1
- package/lib/commonjs/mol-plugin/context.d.ts +2 -2
- package/lib/commonjs/mol-plugin/context.js +3 -0
- package/lib/commonjs/mol-plugin/state.d.ts +1 -14
- package/lib/commonjs/mol-plugin-state/formats/volume.d.ts +12 -11
- package/lib/commonjs/mol-plugin-state/formats/volume.js +20 -13
- package/lib/commonjs/mol-plugin-state/helpers/structure-selection-query.js +5 -5
- package/lib/commonjs/mol-plugin-state/transforms/representation.js +2 -2
- package/lib/commonjs/mol-plugin-ui/controls/parameters.d.ts +1 -1
- package/lib/commonjs/mol-plugin-ui/controls.js +1 -1
- package/lib/commonjs/mol-plugin-ui/sequence/polymer.js +1 -1
- package/lib/commonjs/mol-plugin-ui/sequence/sequence.js +1 -1
- package/lib/commonjs/mol-plugin-ui/state/snapshots.js +1 -0
- package/lib/commonjs/mol-plugin-ui/structure/focus.js +1 -1
- package/lib/commonjs/mol-plugin-ui/viewport/screenshot.js +1 -0
- package/lib/commonjs/mol-plugin-ui/viewport.d.ts +2 -2
- package/lib/commonjs/mol-repr/shape/representation.d.ts +1 -1
- package/lib/commonjs/mol-repr/shape/representation.js +2 -1
- package/lib/commonjs/mol-repr/structure/complex-visual.d.ts +1 -1
- package/lib/commonjs/mol-repr/structure/complex-visual.js +2 -1
- package/lib/commonjs/mol-repr/structure/units-visual.d.ts +1 -1
- package/lib/commonjs/mol-repr/structure/units-visual.js +2 -1
- package/lib/commonjs/mol-repr/structure/visual/bond-inter-unit-cylinder.js +10 -10
- package/lib/commonjs/mol-repr/structure/visual/bond-inter-unit-line.js +10 -10
- package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-cylinder.js +12 -15
- package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-line.js +12 -15
- package/lib/commonjs/mol-repr/structure/visual/carbohydrate-symbol-mesh.js +16 -16
- package/lib/commonjs/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.js +1 -1
- package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-mesh.js +9 -0
- package/lib/commonjs/mol-repr/structure/visual/orientation-ellipsoid-mesh.js +4 -4
- package/lib/commonjs/mol-repr/structure/visual/polymer-direction-wedge.js +1 -1
- package/lib/commonjs/mol-repr/structure/visual/polymer-trace-mesh.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/util/bond.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/util/common.js +3 -3
- package/lib/commonjs/mol-repr/structure/visual/util/link.js +30 -30
- package/lib/commonjs/mol-repr/structure/visual/util/polymer/backbone.js +6 -6
- package/lib/commonjs/mol-repr/structure/visual/util/polymer/gap-iterator.js +3 -3
- package/lib/commonjs/mol-repr/structure/visual/util/polymer/trace-iterator.js +20 -20
- package/lib/commonjs/mol-repr/structure/visual/util/polymer.js +6 -6
- package/lib/commonjs/mol-repr/volume/representation.d.ts +1 -1
- package/lib/commonjs/mol-repr/volume/representation.js +2 -1
- package/lib/commonjs/mol-script/language/builder.d.ts +1 -0
- package/lib/commonjs/mol-script/language/symbol-table/core.d.ts +2 -2
- package/lib/commonjs/mol-script/runtime/query/table.js +13 -13
- package/lib/commonjs/mol-state/object.d.ts +3 -3
- package/lib/commonjs/mol-task/util/user-timing.js +1 -1
- package/lib/commonjs/mol-theme/clipping.js +19 -19
- package/lib/commonjs/mol-theme/color/atom-id.js +1 -1
- package/lib/commonjs/mol-theme/color/carbohydrate-symbol.js +1 -1
- package/lib/commonjs/mol-theme/color/chain-id.js +4 -4
- package/lib/commonjs/mol-theme/color/element-index.js +1 -1
- package/lib/commonjs/mol-theme/color/element-symbol.js +1 -1
- package/lib/commonjs/mol-theme/color/entity-id.js +4 -4
- package/lib/commonjs/mol-theme/color/entity-source.js +5 -4
- package/lib/commonjs/mol-theme/color/hydrophobicity.js +1 -1
- package/lib/commonjs/mol-theme/color/illustrative.js +1 -1
- package/lib/commonjs/mol-theme/color/model-index.js +1 -1
- package/lib/commonjs/mol-theme/color/molecule-type.js +8 -8
- package/lib/commonjs/mol-theme/color/occupancy.js +1 -1
- package/lib/commonjs/mol-theme/color/operator-hkl.js +1 -1
- package/lib/commonjs/mol-theme/color/operator-name.js +1 -1
- package/lib/commonjs/mol-theme/color/partial-charge.js +1 -1
- package/lib/commonjs/mol-theme/color/polymer-id.js +4 -4
- package/lib/commonjs/mol-theme/color/polymer-index.js +1 -1
- package/lib/commonjs/mol-theme/color/residue-name.js +1 -1
- package/lib/commonjs/mol-theme/color/secondary-structure.js +12 -12
- package/lib/commonjs/mol-theme/color/sequence-id.js +7 -7
- package/lib/commonjs/mol-theme/color/shape-group.js +1 -1
- package/lib/commonjs/mol-theme/color/uncertainty.js +1 -1
- package/lib/commonjs/mol-theme/color/uniform.js +1 -1
- package/lib/commonjs/mol-theme/color/unit-index.js +1 -1
- package/lib/commonjs/mol-theme/color/volume-value.js +1 -1
- package/lib/commonjs/mol-theme/label.js +3 -3
- package/lib/commonjs/mol-util/binding.js +4 -4
- package/lib/commonjs/mol-util/debug.d.ts +6 -1
- package/lib/commonjs/mol-util/debug.js +11 -1
- package/lib/commonjs/mol-util/input/input-observer.js +20 -20
- package/lib/commonjs/mol-util/string-builder.js +1 -1
- package/lib/commonjs/servers/model/preprocess/converter.js +1 -1
- package/lib/commonjs/servers/model/server/query.js +1 -1
- package/lib/commonjs/servers/model/utils/fetch-retry.js +3 -2
- package/lib/commonjs/servers/volume/server/algebra/coordinate.js +6 -6
- package/lib/commonjs/servers/volume/server/query/encode.js +1 -1
- package/lib/examples/alpha-orbitals/index.d.ts +1 -1
- package/lib/examples/alpha-orbitals/index.html +72 -61
- package/lib/examples/alpha-orbitals/index.js +4 -1
- package/lib/examples/basic-wrapper/custom-theme.js +1 -1
- package/lib/examples/basic-wrapper/index.html +137 -137
- package/lib/examples/lighting/index.html +88 -88
- package/lib/examples/proteopedia-wrapper/coloring.js +3 -3
- package/lib/examples/proteopedia-wrapper/index.html +236 -236
- package/lib/extensions/alpha-orbitals/density.d.ts +1 -1
- package/lib/extensions/alpha-orbitals/density.js +6 -2
- package/lib/extensions/alpha-orbitals/orbitals.d.ts +1 -1
- package/lib/extensions/alpha-orbitals/orbitals.js +6 -3
- package/lib/extensions/anvil/algorithm.js +1 -1
- package/lib/extensions/cellpack/color/generate.js +1 -1
- package/lib/extensions/cellpack/color/provided.js +1 -1
- package/lib/extensions/cellpack/state.js +1 -1
- package/lib/extensions/dnatco/confal-pyramids/color.js +1 -1
- package/lib/extensions/g3d/model.js +1 -1
- package/lib/extensions/geo-export/ui.js +1 -0
- package/lib/extensions/model-archive/quality-assessment/color/plddt.js +1 -1
- package/lib/extensions/model-archive/quality-assessment/color/qmean.js +1 -1
- package/lib/extensions/mp4-export/ui.js +1 -0
- package/lib/extensions/pdbe/structure-quality-report/color.js +1 -1
- package/lib/extensions/rcsb/assembly-symmetry/color.js +4 -4
- package/lib/extensions/rcsb/validation-report/color/density-fit.js +1 -1
- package/lib/extensions/rcsb/validation-report/color/geometry-quality.js +2 -2
- package/lib/extensions/rcsb/validation-report/color/random-coil-index.js +1 -1
- package/lib/extensions/rcsb/validation-report/representation.js +2 -2
- package/lib/mol-canvas3d/canvas3d.js +5 -1
- package/lib/mol-canvas3d/controls/trackball.js +7 -7
- package/lib/mol-canvas3d/helper/camera-helper.js +14 -14
- package/lib/mol-canvas3d/helper/interaction-events.js +5 -5
- package/lib/mol-canvas3d/passes/draw.js +34 -5
- package/lib/mol-canvas3d/passes/fxaa.js +5 -0
- package/lib/mol-canvas3d/passes/marking.js +5 -0
- package/lib/mol-canvas3d/passes/multi-sample.js +9 -0
- package/lib/mol-canvas3d/passes/pick.d.ts +18 -5
- package/lib/mol-canvas3d/passes/pick.js +125 -24
- package/lib/mol-canvas3d/passes/postprocessing.js +5 -0
- package/lib/mol-canvas3d/passes/smaa.js +5 -1
- package/lib/mol-canvas3d/passes/wboit.js +5 -1
- package/lib/mol-data/db/column.js +5 -5
- package/lib/mol-data/db/table.js +2 -2
- package/lib/mol-data/util/array.d.ts +1 -1
- package/lib/mol-geo/geometry/cylinders/cylinders.d.ts +1 -1
- package/lib/mol-geo/geometry/lines/lines.d.ts +0 -1
- package/lib/mol-geo/geometry/points/points.d.ts +1 -1
- package/lib/mol-geo/geometry/texture-mesh/color-smoothing.js +13 -0
- package/lib/mol-gl/compute/grid3d.d.ts +2 -2
- package/lib/mol-gl/compute/grid3d.js +30 -8
- package/lib/mol-gl/compute/histogram-pyramid/reduction.d.ts +1 -1
- package/lib/mol-gl/compute/histogram-pyramid/reduction.js +6 -1
- package/lib/mol-gl/compute/histogram-pyramid/sum.d.ts +1 -1
- package/lib/mol-gl/compute/histogram-pyramid/sum.js +6 -1
- package/lib/mol-gl/compute/marching-cubes/active-voxels.d.ts +1 -1
- package/lib/mol-gl/compute/marching-cubes/active-voxels.js +6 -1
- package/lib/mol-gl/compute/marching-cubes/isosurface.d.ts +1 -1
- package/lib/mol-gl/compute/marching-cubes/isosurface.js +10 -10
- package/lib/mol-gl/renderer.js +77 -32
- package/lib/mol-gl/scene.js +2 -0
- 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-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/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/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/image.frag.d.ts +1 -1
- package/lib/mol-gl/shader/image.frag.js +1 -1
- package/lib/mol-gl/shader/lines.frag.d.ts +1 -1
- package/lib/mol-gl/shader/lines.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/points.frag.d.ts +1 -1
- package/lib/mol-gl/shader/points.frag.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/text.frag.d.ts +1 -1
- package/lib/mol-gl/shader/text.frag.js +1 -1
- package/lib/mol-gl/shader-code.d.ts +1 -1
- package/lib/mol-gl/shader-code.js +41 -9
- package/lib/mol-gl/webgl/compat.d.ts +34 -1
- package/lib/mol-gl/webgl/compat.js +48 -1
- package/lib/mol-gl/webgl/context.d.ts +2 -0
- package/lib/mol-gl/webgl/context.js +3 -0
- package/lib/mol-gl/webgl/extensions.d.ts +3 -2
- package/lib/mol-gl/webgl/extensions.js +7 -2
- package/lib/mol-gl/webgl/timer.d.ts +22 -0
- package/lib/mol-gl/webgl/timer.js +164 -0
- package/lib/mol-io/common/binary-cif/array-encoder.js +18 -18
- package/lib/mol-io/common/binary-cif/decoder.js +16 -16
- package/lib/mol-io/common/binary-cif/encoding.js +9 -9
- package/lib/mol-io/reader/cif/binary/field.js +3 -3
- package/lib/mol-io/reader/cif/data-model.js +14 -14
- package/lib/mol-io/reader/cif/schema.js +1 -1
- package/lib/mol-io/reader/cif/text/parser.js +23 -23
- package/lib/mol-io/reader/common/text/column/fixed.js +1 -1
- package/lib/mol-io/reader/common/text/column/token.js +1 -1
- package/lib/mol-io/reader/common/text/number-parser.js +6 -6
- package/lib/mol-io/reader/csv/parser.js +8 -8
- package/lib/mol-io/writer/cif/encoder/binary.js +10 -10
- package/lib/mol-io/writer/cif/encoder/text.js +7 -7
- package/lib/mol-io/writer/cif/encoder.js +8 -8
- package/lib/mol-io/writer/mol2/encoder.js +4 -4
- package/lib/mol-math/geometry/gaussian-density/gpu.js +13 -2
- package/lib/mol-model/sequence/alignment/sequence.js +3 -3
- package/lib/mol-model/sequence/sequence.js +9 -9
- package/lib/mol-model/structure/export/categories/atom_site_operator_mapping.js +3 -3
- package/lib/mol-model/structure/export/categories/secondary-structure.js +2 -2
- package/lib/mol-model/structure/export/categories/utils.js +1 -1
- package/lib/mol-model/structure/model/model.js +2 -2
- package/lib/mol-model/structure/model/properties/custom/indexed.js +6 -6
- package/lib/mol-model/structure/model/properties/utils/atomic-ranges.js +1 -1
- package/lib/mol-model/structure/model/types.js +116 -116
- package/lib/mol-model/structure/query/context.js +1 -1
- package/lib/mol-model/structure/query/queries/generators.js +5 -5
- package/lib/mol-model/structure/query/queries/internal.js +4 -4
- package/lib/mol-model/structure/query/queries/modifiers.js +4 -4
- package/lib/mol-model/structure/query/utils/structure-distance.d.ts +5 -54
- package/lib/mol-model/structure/query/utils/structure-distance.js +9 -9
- package/lib/mol-model/structure/structure/carbohydrates/constants.d.ts +3 -1
- package/lib/mol-model/structure/structure/carbohydrates/constants.js +190 -107
- package/lib/mol-model/structure/structure/element/loci.js +5 -5
- package/lib/mol-model/structure/structure/element/stats.js +5 -5
- package/lib/mol-model/structure/structure/properties.js +5 -5
- package/lib/mol-model/structure/structure/structure.js +11 -11
- package/lib/mol-model/structure/structure/unit/bonds/inter-compute.js +5 -5
- package/lib/mol-model/structure/structure/unit/bonds/intra-compute.js +4 -4
- package/lib/mol-model/structure/structure/unit/bonds.js +2 -2
- package/lib/mol-model/structure/structure/unit/resonance.js +1 -1
- package/lib/mol-model/structure/structure/unit/rings/compute.js +6 -6
- package/lib/mol-model/structure/structure/unit/rings.js +6 -6
- package/lib/mol-model/structure/structure/unit.js +16 -16
- package/lib/mol-model/structure/structure/util/superposition-sifts-mapping.js +1 -1
- package/lib/mol-model/structure/util.js +4 -4
- package/lib/mol-model-formats/structure/basic/atomic.js +2 -2
- package/lib/mol-model-formats/structure/basic/parser.js +4 -4
- package/lib/mol-model-formats/structure/basic/properties.js +1 -1
- package/lib/mol-model-formats/structure/basic/sort.js +1 -1
- package/lib/mol-model-formats/structure/basic/util.js +1 -1
- package/lib/mol-model-formats/structure/cif-core.js +6 -6
- package/lib/mol-model-formats/structure/common/entity.js +1 -1
- package/lib/mol-model-formats/structure/cube.js +1 -1
- package/lib/mol-model-formats/structure/gro.js +1 -1
- package/lib/mol-model-formats/structure/mol.js +1 -1
- package/lib/mol-model-formats/structure/mol2.js +4 -4
- package/lib/mol-model-formats/structure/prmtop.js +1 -1
- package/lib/mol-model-formats/structure/property/bonds/chem_comp.js +3 -3
- package/lib/mol-model-formats/structure/property/bonds/index-pair.js +1 -1
- package/lib/mol-model-formats/structure/property/bonds/struct_conn.js +6 -6
- package/lib/mol-model-formats/structure/property/secondary-structure.js +8 -8
- package/lib/mol-model-formats/structure/psf.js +1 -1
- package/lib/mol-model-formats/structure/top.js +1 -1
- package/lib/mol-model-formats/structure/xyz.js +1 -1
- package/lib/mol-model-props/computed/accessible-surface-area/shrake-rupley/radii.js +2 -2
- package/lib/mol-model-props/computed/accessible-surface-area/shrake-rupley.js +3 -3
- package/lib/mol-model-props/computed/accessible-surface-area.js +2 -2
- package/lib/mol-model-props/computed/chemistry/functional-group.js +31 -31
- package/lib/mol-model-props/computed/chemistry/geometry.js +22 -22
- package/lib/mol-model-props/computed/chemistry/valence-model.js +32 -32
- package/lib/mol-model-props/computed/interactions/charged.js +39 -39
- package/lib/mol-model-props/computed/interactions/common.js +34 -34
- package/lib/mol-model-props/computed/interactions/contacts-builder.js +1 -1
- package/lib/mol-model-props/computed/interactions/contacts.js +1 -1
- package/lib/mol-model-props/computed/interactions/halogen-bonds.js +12 -12
- package/lib/mol-model-props/computed/interactions/hydrogen-bonds.js +32 -32
- package/lib/mol-model-props/computed/interactions/hydrophobic.js +9 -9
- package/lib/mol-model-props/computed/interactions/metal.js +26 -26
- package/lib/mol-model-props/computed/interactions/refine.js +20 -20
- package/lib/mol-model-props/computed/representations/interactions-inter-unit-cylinder.js +2 -2
- package/lib/mol-model-props/computed/representations/interactions-intra-unit-cylinder.js +2 -2
- package/lib/mol-model-props/computed/secondary-structure/dssp/bends.js +1 -1
- package/lib/mol-model-props/computed/secondary-structure/dssp/bridges.js +12 -12
- package/lib/mol-model-props/computed/secondary-structure/dssp/helices.js +6 -6
- package/lib/mol-model-props/computed/secondary-structure/dssp/ladders.js +3 -3
- package/lib/mol-model-props/computed/secondary-structure/dssp/sheets.js +11 -11
- package/lib/mol-model-props/computed/secondary-structure/dssp/turns.js +3 -3
- package/lib/mol-model-props/computed/secondary-structure/dssp.js +30 -30
- package/lib/mol-model-props/computed/themes/accessible-surface-area.js +1 -1
- package/lib/mol-model-props/computed/themes/interaction-type.js +10 -10
- package/lib/mol-model-props/integrative/cross-link-restraint/color.js +1 -1
- package/lib/mol-model-props/integrative/cross-link-restraint/format.js +3 -3
- package/lib/mol-model-props/sequence/sifts-mapping.js +1 -1
- package/lib/mol-model-props/sequence/themes/sifts-mapping.js +1 -1
- package/lib/mol-plugin/animation-loop.d.ts +2 -1
- package/lib/mol-plugin/animation-loop.js +18 -5
- package/lib/mol-plugin/behavior/dynamic/camera.js +12 -12
- package/lib/mol-plugin/behavior/dynamic/representation.js +7 -7
- package/lib/mol-plugin/behavior/dynamic/volume-streaming/model.d.ts +2 -3
- package/lib/mol-plugin/config.d.ts +3 -0
- package/lib/mol-plugin/config.js +3 -1
- package/lib/mol-plugin/context.d.ts +2 -2
- package/lib/mol-plugin/context.js +3 -0
- package/lib/mol-plugin/state.d.ts +1 -14
- package/lib/mol-plugin/version.js +2 -2
- package/lib/mol-plugin-state/formats/volume.d.ts +12 -11
- package/lib/mol-plugin-state/formats/volume.js +20 -13
- package/lib/mol-plugin-state/helpers/structure-selection-query.js +5 -5
- package/lib/mol-plugin-state/transforms/representation.js +2 -2
- package/lib/mol-plugin-ui/controls/parameters.d.ts +1 -1
- package/lib/mol-plugin-ui/controls.js +1 -1
- package/lib/mol-plugin-ui/sequence/polymer.js +1 -1
- package/lib/mol-plugin-ui/sequence/sequence.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 +128 -128
- 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/state/snapshots.js +1 -0
- package/lib/mol-plugin-ui/structure/focus.js +1 -1
- package/lib/mol-plugin-ui/viewport/screenshot.js +1 -0
- package/lib/mol-plugin-ui/viewport.d.ts +2 -2
- package/lib/mol-repr/shape/representation.d.ts +1 -1
- package/lib/mol-repr/shape/representation.js +2 -1
- package/lib/mol-repr/structure/complex-visual.d.ts +1 -1
- package/lib/mol-repr/structure/complex-visual.js +2 -1
- package/lib/mol-repr/structure/units-visual.d.ts +1 -1
- package/lib/mol-repr/structure/units-visual.js +2 -1
- package/lib/mol-repr/structure/visual/bond-inter-unit-cylinder.js +10 -10
- package/lib/mol-repr/structure/visual/bond-inter-unit-line.js +10 -10
- package/lib/mol-repr/structure/visual/bond-intra-unit-cylinder.js +12 -15
- package/lib/mol-repr/structure/visual/bond-intra-unit-line.js +12 -15
- package/lib/mol-repr/structure/visual/carbohydrate-symbol-mesh.js +16 -16
- package/lib/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.js +1 -1
- package/lib/mol-repr/structure/visual/gaussian-surface-mesh.js +9 -0
- package/lib/mol-repr/structure/visual/orientation-ellipsoid-mesh.js +4 -4
- package/lib/mol-repr/structure/visual/polymer-direction-wedge.js +1 -1
- package/lib/mol-repr/structure/visual/polymer-trace-mesh.js +2 -2
- package/lib/mol-repr/structure/visual/util/bond.js +2 -2
- package/lib/mol-repr/structure/visual/util/common.js +3 -3
- package/lib/mol-repr/structure/visual/util/link.js +30 -30
- package/lib/mol-repr/structure/visual/util/polymer/backbone.js +6 -6
- package/lib/mol-repr/structure/visual/util/polymer/gap-iterator.js +3 -3
- package/lib/mol-repr/structure/visual/util/polymer/trace-iterator.js +20 -20
- package/lib/mol-repr/structure/visual/util/polymer.js +6 -6
- package/lib/mol-repr/volume/representation.d.ts +1 -1
- package/lib/mol-repr/volume/representation.js +2 -1
- package/lib/mol-script/language/builder.d.ts +1 -0
- package/lib/mol-script/language/symbol-table/core.d.ts +2 -2
- package/lib/mol-script/runtime/query/table.js +13 -13
- package/lib/mol-state/object.d.ts +3 -3
- package/lib/mol-task/util/user-timing.js +1 -1
- package/lib/mol-theme/clipping.js +19 -19
- package/lib/mol-theme/color/atom-id.js +1 -1
- package/lib/mol-theme/color/carbohydrate-symbol.js +1 -1
- package/lib/mol-theme/color/chain-id.js +4 -4
- package/lib/mol-theme/color/element-index.js +1 -1
- package/lib/mol-theme/color/element-symbol.js +1 -1
- package/lib/mol-theme/color/entity-id.js +4 -4
- package/lib/mol-theme/color/entity-source.js +5 -4
- package/lib/mol-theme/color/hydrophobicity.js +1 -1
- package/lib/mol-theme/color/illustrative.js +1 -1
- package/lib/mol-theme/color/model-index.js +1 -1
- package/lib/mol-theme/color/molecule-type.js +8 -8
- package/lib/mol-theme/color/occupancy.js +1 -1
- package/lib/mol-theme/color/operator-hkl.js +1 -1
- package/lib/mol-theme/color/operator-name.js +1 -1
- package/lib/mol-theme/color/partial-charge.js +1 -1
- package/lib/mol-theme/color/polymer-id.js +4 -4
- package/lib/mol-theme/color/polymer-index.js +1 -1
- package/lib/mol-theme/color/residue-name.js +1 -1
- package/lib/mol-theme/color/secondary-structure.js +12 -12
- package/lib/mol-theme/color/sequence-id.js +7 -7
- package/lib/mol-theme/color/shape-group.js +1 -1
- package/lib/mol-theme/color/uncertainty.js +1 -1
- package/lib/mol-theme/color/uniform.js +1 -1
- package/lib/mol-theme/color/unit-index.js +1 -1
- package/lib/mol-theme/color/volume-value.js +1 -1
- package/lib/mol-theme/label.js +3 -3
- package/lib/mol-util/binding.js +4 -4
- package/lib/mol-util/debug.d.ts +6 -1
- package/lib/mol-util/debug.js +9 -1
- package/lib/mol-util/input/input-observer.js +20 -20
- package/lib/mol-util/string-builder.js +1 -1
- package/lib/servers/model/preprocess/converter.js +1 -1
- package/lib/servers/model/server/query.js +1 -1
- package/lib/servers/model/utils/fetch-retry.js +3 -2
- package/lib/servers/volume/server/algebra/coordinate.js +6 -6
- package/lib/servers/volume/server/query/encode.js +1 -1
- package/package.json +162 -162
|
@@ -23,19 +23,19 @@ function addHydrophobicAtom(structure, unit, builder) {
|
|
|
23
23
|
var _loop_1 = function (i, il) {
|
|
24
24
|
var element = typeSymbol(unit, i);
|
|
25
25
|
var flag = false;
|
|
26
|
-
if (element === "C" /* C */) {
|
|
26
|
+
if (element === "C" /* Elements.C */) {
|
|
27
27
|
flag = true;
|
|
28
28
|
eachBondedAtom(structure, unit, i, function (unitB, indexB) {
|
|
29
29
|
var elementB = typeSymbol(unitB, indexB);
|
|
30
|
-
if (elementB !== "C" /* C */ && elementB !== "H" /* H */)
|
|
30
|
+
if (elementB !== "C" /* Elements.C */ && elementB !== "H" /* Elements.H */)
|
|
31
31
|
flag = false;
|
|
32
32
|
});
|
|
33
33
|
}
|
|
34
|
-
else if (element === "F" /* F */) {
|
|
34
|
+
else if (element === "F" /* Elements.F */) {
|
|
35
35
|
flag = true;
|
|
36
36
|
}
|
|
37
37
|
if (flag) {
|
|
38
|
-
builder.add(8 /* HydrophobicAtom */, 0 /* None */, x[elements[i]], y[elements[i]], z[elements[i]], i);
|
|
38
|
+
builder.add(8 /* FeatureType.HydrophobicAtom */, 0 /* FeatureGroup.None */, x[elements[i]], y[elements[i]], z[elements[i]], i);
|
|
39
39
|
}
|
|
40
40
|
};
|
|
41
41
|
for (var i = 0, il = elements.length; i < il; ++i) {
|
|
@@ -43,7 +43,7 @@ function addHydrophobicAtom(structure, unit, builder) {
|
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
45
|
function isHydrophobicContact(ti, tj) {
|
|
46
|
-
return ti === 8 /* HydrophobicAtom */ && tj === 8 /* HydrophobicAtom */;
|
|
46
|
+
return ti === 8 /* FeatureType.HydrophobicAtom */ && tj === 8 /* FeatureType.HydrophobicAtom */;
|
|
47
47
|
}
|
|
48
48
|
function testHydrophobic(structure, infoA, infoB, distanceSq) {
|
|
49
49
|
var typeA = infoA.types[infoA.feature];
|
|
@@ -52,19 +52,19 @@ function testHydrophobic(structure, infoA, infoB, distanceSq) {
|
|
|
52
52
|
return;
|
|
53
53
|
var indexA = infoA.members[infoA.offsets[infoA.feature]];
|
|
54
54
|
var indexB = infoB.members[infoB.offsets[infoB.feature]];
|
|
55
|
-
if (typeSymbol(infoA.unit, indexA) === "F" /* F */ && typeSymbol(infoB.unit, indexB) === "F" /* F */)
|
|
55
|
+
if (typeSymbol(infoA.unit, indexA) === "F" /* Elements.F */ && typeSymbol(infoB.unit, indexB) === "F" /* Elements.F */)
|
|
56
56
|
return;
|
|
57
|
-
return 6 /* Hydrophobic */;
|
|
57
|
+
return 6 /* InteractionType.Hydrophobic */;
|
|
58
58
|
}
|
|
59
59
|
//
|
|
60
|
-
export var HydrophobicAtomProvider = Features.Provider([8 /* HydrophobicAtom */], addHydrophobicAtom);
|
|
60
|
+
export var HydrophobicAtomProvider = Features.Provider([8 /* FeatureType.HydrophobicAtom */], addHydrophobicAtom);
|
|
61
61
|
export var HydrophobicProvider = {
|
|
62
62
|
name: 'hydrophobic',
|
|
63
63
|
params: HydrophobicParams,
|
|
64
64
|
createTester: function (props) {
|
|
65
65
|
return {
|
|
66
66
|
maxDistance: props.distanceMax,
|
|
67
|
-
requiredFeatures: new Set([8 /* HydrophobicAtom */]),
|
|
67
|
+
requiredFeatures: new Set([8 /* FeatureType.HydrophobicAtom */]),
|
|
68
68
|
getType: function (structure, infoA, infoB, distanceSq) { return testHydrophobic(structure, infoA, infoB, distanceSq); }
|
|
69
69
|
};
|
|
70
70
|
}
|
|
@@ -14,25 +14,25 @@ export var MetalCoordinationParams = {
|
|
|
14
14
|
distanceMax: PD.Numeric(3.0, { min: 1, max: 5, step: 0.1 }),
|
|
15
15
|
};
|
|
16
16
|
var IonicTypeMetals = [
|
|
17
|
-
"LI" /* LI */, "NA" /* NA */, "K" /* K */, "RB" /* RB */, "CS" /* CS */,
|
|
18
|
-
"MG" /* MG */, "CA" /* CA */, "SR" /* SR */, "BA" /* BA */, "AL" /* AL */,
|
|
19
|
-
"GA" /* GA */, "IN" /* IN */, "TL" /* TL */, "SC" /* SC */, "SN" /* SN */,
|
|
20
|
-
"PB" /* PB */, "BI" /* BI */, "SB" /* SB */, "HG" /* HG */
|
|
17
|
+
"LI" /* Elements.LI */, "NA" /* Elements.NA */, "K" /* Elements.K */, "RB" /* Elements.RB */, "CS" /* Elements.CS */,
|
|
18
|
+
"MG" /* Elements.MG */, "CA" /* Elements.CA */, "SR" /* Elements.SR */, "BA" /* Elements.BA */, "AL" /* Elements.AL */,
|
|
19
|
+
"GA" /* Elements.GA */, "IN" /* Elements.IN */, "TL" /* Elements.TL */, "SC" /* Elements.SC */, "SN" /* Elements.SN */,
|
|
20
|
+
"PB" /* Elements.PB */, "BI" /* Elements.BI */, "SB" /* Elements.SB */, "HG" /* Elements.HG */
|
|
21
21
|
];
|
|
22
22
|
function addMetal(structure, unit, builder) {
|
|
23
23
|
var elements = unit.elements;
|
|
24
24
|
var _a = unit.model.atomicConformation, x = _a.x, y = _a.y, z = _a.z;
|
|
25
25
|
for (var i = 0, il = elements.length; i < il; ++i) {
|
|
26
26
|
var element = typeSymbol(unit, i);
|
|
27
|
-
var type = 0 /* None */;
|
|
27
|
+
var type = 0 /* FeatureType.None */;
|
|
28
28
|
if (IonicTypeMetals.includes(element)) {
|
|
29
|
-
type = 13 /* IonicTypeMetal */;
|
|
29
|
+
type = 13 /* FeatureType.IonicTypeMetal */;
|
|
30
30
|
}
|
|
31
|
-
else if (isTransitionMetal(element) || element === "ZN" /* ZN */ || element === "CD" /* CD */) {
|
|
32
|
-
type = 12 /* TransitionMetal */;
|
|
31
|
+
else if (isTransitionMetal(element) || element === "ZN" /* Elements.ZN */ || element === "CD" /* Elements.CD */) {
|
|
32
|
+
type = 12 /* FeatureType.TransitionMetal */;
|
|
33
33
|
}
|
|
34
34
|
if (type) {
|
|
35
|
-
builder.add(type, 0 /* None */, x[elements[i]], y[elements[i]], z[elements[i]], i);
|
|
35
|
+
builder.add(type, 0 /* FeatureGroup.None */, x[elements[i]], y[elements[i]], z[elements[i]], i);
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
38
|
}
|
|
@@ -60,17 +60,17 @@ function addMetalBinding(structure, unit, builder) {
|
|
|
60
60
|
var isStandardAminoacid = AminoAcidNames.has(resname);
|
|
61
61
|
var isStandardBase = BaseNames.has(resname);
|
|
62
62
|
if (!isStandardAminoacid && !isStandardBase) {
|
|
63
|
-
if (isHalogen(element) || element === "O" /* O */ || element === "S" /* S */) {
|
|
63
|
+
if (isHalogen(element) || element === "O" /* Elements.O */ || element === "S" /* Elements.S */) {
|
|
64
64
|
dative = true;
|
|
65
65
|
ionic = true;
|
|
66
66
|
}
|
|
67
|
-
else if (element === "N" /* N */) {
|
|
67
|
+
else if (element === "N" /* Elements.N */) {
|
|
68
68
|
dative = true;
|
|
69
69
|
}
|
|
70
70
|
}
|
|
71
71
|
else if (isStandardAminoacid) {
|
|
72
72
|
// main chain oxygen atom or oxygen, nitrogen and sulfur from specific amino acids
|
|
73
|
-
if (element === "O" /* O */) {
|
|
73
|
+
if (element === "O" /* Elements.O */) {
|
|
74
74
|
if (['ASP', 'GLU', 'SER', 'THR', 'TYR', 'ASN', 'GLN'].includes(resname) && isProteinSidechain(atomname)) {
|
|
75
75
|
dative = true;
|
|
76
76
|
ionic = true;
|
|
@@ -80,11 +80,11 @@ function addMetalBinding(structure, unit, builder) {
|
|
|
80
80
|
ionic = true;
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
|
-
else if (element === "S" /* S */ && (resname === 'CYS' || resname === 'MET')) {
|
|
83
|
+
else if (element === "S" /* Elements.S */ && (resname === 'CYS' || resname === 'MET')) {
|
|
84
84
|
dative = true;
|
|
85
85
|
ionic = true;
|
|
86
86
|
}
|
|
87
|
-
else if (element === "N" /* N */) {
|
|
87
|
+
else if (element === "N" /* Elements.N */) {
|
|
88
88
|
if (resname === 'HIS' && isProteinSidechain(atomname)) {
|
|
89
89
|
dative = true;
|
|
90
90
|
}
|
|
@@ -93,7 +93,7 @@ function addMetalBinding(structure, unit, builder) {
|
|
|
93
93
|
else if (isStandardBase) {
|
|
94
94
|
// http://pubs.acs.org/doi/pdf/10.1021/acs.accounts.6b00253
|
|
95
95
|
// http://onlinelibrary.wiley.com/doi/10.1002/anie.200900399/full
|
|
96
|
-
if (element === "O" /* O */ && isNucleicBackbone(atomname)) {
|
|
96
|
+
if (element === "O" /* Elements.O */ && isNucleicBackbone(atomname)) {
|
|
97
97
|
dative = true;
|
|
98
98
|
ionic = true;
|
|
99
99
|
}
|
|
@@ -106,20 +106,20 @@ function addMetalBinding(structure, unit, builder) {
|
|
|
106
106
|
}
|
|
107
107
|
}
|
|
108
108
|
if (dative) {
|
|
109
|
-
builder.add(11 /* DativeBondPartner */, 0 /* None */, x[elements[i]], y[elements[i]], z[elements[i]], i);
|
|
109
|
+
builder.add(11 /* FeatureType.DativeBondPartner */, 0 /* FeatureGroup.None */, x[elements[i]], y[elements[i]], z[elements[i]], i);
|
|
110
110
|
}
|
|
111
111
|
if (ionic) {
|
|
112
|
-
builder.add(10 /* IonicTypePartner */, 0 /* None */, x[elements[i]], y[elements[i]], z[elements[i]], i);
|
|
112
|
+
builder.add(10 /* FeatureType.IonicTypePartner */, 0 /* FeatureGroup.None */, x[elements[i]], y[elements[i]], z[elements[i]], i);
|
|
113
113
|
}
|
|
114
114
|
}
|
|
115
115
|
}
|
|
116
116
|
function isMetalCoordination(ti, tj) {
|
|
117
|
-
if (ti === 12 /* TransitionMetal */) {
|
|
118
|
-
return (tj === 11 /* DativeBondPartner */ ||
|
|
119
|
-
tj === 12 /* TransitionMetal */);
|
|
117
|
+
if (ti === 12 /* FeatureType.TransitionMetal */) {
|
|
118
|
+
return (tj === 11 /* FeatureType.DativeBondPartner */ ||
|
|
119
|
+
tj === 12 /* FeatureType.TransitionMetal */);
|
|
120
120
|
}
|
|
121
|
-
else if (ti === 13 /* IonicTypeMetal */) {
|
|
122
|
-
return (tj === 10 /* IonicTypePartner */);
|
|
121
|
+
else if (ti === 13 /* FeatureType.IonicTypeMetal */) {
|
|
122
|
+
return (tj === 10 /* FeatureType.IonicTypePartner */);
|
|
123
123
|
}
|
|
124
124
|
}
|
|
125
125
|
function testMetalCoordination(structure, infoA, infoB, distanceSq) {
|
|
@@ -127,18 +127,18 @@ function testMetalCoordination(structure, infoA, infoB, distanceSq) {
|
|
|
127
127
|
var typeB = infoB.types[infoB.feature];
|
|
128
128
|
if (!isMetalCoordination(typeA, typeB) && !isMetalCoordination(typeB, typeA))
|
|
129
129
|
return;
|
|
130
|
-
return 7 /* MetalCoordination */;
|
|
130
|
+
return 7 /* InteractionType.MetalCoordination */;
|
|
131
131
|
}
|
|
132
132
|
//
|
|
133
|
-
export var MetalProvider = Features.Provider([13 /* IonicTypeMetal */, 12 /* TransitionMetal */], addMetal);
|
|
134
|
-
export var MetalBindingProvider = Features.Provider([10 /* IonicTypePartner */, 11 /* DativeBondPartner */], addMetalBinding);
|
|
133
|
+
export var MetalProvider = Features.Provider([13 /* FeatureType.IonicTypeMetal */, 12 /* FeatureType.TransitionMetal */], addMetal);
|
|
134
|
+
export var MetalBindingProvider = Features.Provider([10 /* FeatureType.IonicTypePartner */, 11 /* FeatureType.DativeBondPartner */], addMetalBinding);
|
|
135
135
|
export var MetalCoordinationProvider = {
|
|
136
136
|
name: 'metal-coordination',
|
|
137
137
|
params: MetalCoordinationParams,
|
|
138
138
|
createTester: function (props) {
|
|
139
139
|
return {
|
|
140
140
|
maxDistance: props.distanceMax,
|
|
141
|
-
requiredFeatures: new Set([13 /* IonicTypeMetal */, 12 /* TransitionMetal */, 10 /* IonicTypePartner */, 11 /* DativeBondPartner */]),
|
|
141
|
+
requiredFeatures: new Set([13 /* FeatureType.IonicTypeMetal */, 12 /* FeatureType.TransitionMetal */, 10 /* FeatureType.IonicTypePartner */, 11 /* FeatureType.DativeBondPartner */]),
|
|
142
142
|
getType: function (structure, infoA, infoB, distanceSq) { return testMetalCoordination(structure, infoA, infoB, distanceSq); }
|
|
143
143
|
};
|
|
144
144
|
}
|
|
@@ -89,17 +89,17 @@ function hydrophobicRefiner(structure, interactions) {
|
|
|
89
89
|
handleResidueContact(dist, edge, keyB, map, set);
|
|
90
90
|
}
|
|
91
91
|
var residueInterMap = new Map();
|
|
92
|
-
var setInterFiltered = function (i) { return contacts.edges[i].props.flag = 1 /* Filtered */; };
|
|
92
|
+
var setInterFiltered = function (i) { return contacts.edges[i].props.flag = 1 /* InteractionFlag.Filtered */; };
|
|
93
93
|
var residueIntraMap;
|
|
94
94
|
var setIntraFiltered;
|
|
95
95
|
return {
|
|
96
|
-
isApplicable: function (type) { return type === 6 /* Hydrophobic */; },
|
|
96
|
+
isApplicable: function (type) { return type === 6 /* InteractionType.Hydrophobic */; },
|
|
97
97
|
handleInterContact: function (index, infoA, infoB) {
|
|
98
98
|
handleEdge(index, infoA, infoB, residueInterMap, setInterFiltered);
|
|
99
99
|
},
|
|
100
100
|
startUnit: function (unit, contacts, features) {
|
|
101
101
|
residueIntraMap = new Map();
|
|
102
|
-
setIntraFiltered = function (i) { return contacts.edgeProps.flag[i] = 1 /* Filtered */; };
|
|
102
|
+
setIntraFiltered = function (i) { return contacts.edgeProps.flag[i] = 1 /* InteractionFlag.Filtered */; };
|
|
103
103
|
},
|
|
104
104
|
handleIntraContact: function (index, infoA, infoB) {
|
|
105
105
|
handleEdge(index, infoA, infoB, residueIntraMap, setIntraFiltered);
|
|
@@ -113,34 +113,34 @@ function hydrophobicRefiner(structure, interactions) {
|
|
|
113
113
|
function weakHydrogenBondsRefiner(structure, interactions) {
|
|
114
114
|
var contacts = interactions.contacts;
|
|
115
115
|
var hasHydrogenBond = function (infoA, infoB) {
|
|
116
|
-
var acc = infoA.types[infoA.feature] === 9 /* WeakHydrogenDonor */ ? infoB : infoA;
|
|
116
|
+
var acc = infoA.types[infoA.feature] === 9 /* FeatureType.WeakHydrogenDonor */ ? infoB : infoA;
|
|
117
117
|
// check intra
|
|
118
118
|
var eI = acc.members[acc.offsets[acc.feature]];
|
|
119
119
|
var _a = interactions.unitsContacts.get(acc.unit.id), type = _a.edgeProps.type, _b = _a.elementsIndex, offsets = _b.offsets, indices = _b.indices;
|
|
120
120
|
for (var i = offsets[eI], il = offsets[eI + 1]; i < il; ++i) {
|
|
121
|
-
if (type[indices[i]] === 4 /* HydrogenBond */)
|
|
121
|
+
if (type[indices[i]] === 4 /* InteractionType.HydrogenBond */)
|
|
122
122
|
return true;
|
|
123
123
|
}
|
|
124
124
|
// check inter
|
|
125
125
|
var interIndices = contacts.getEdgeIndices(acc.feature, acc.unit.id);
|
|
126
126
|
for (var i = 0, il = interIndices.length; i < il; ++i) {
|
|
127
|
-
if (contacts.edges[interIndices[i]].props.type === 4 /* HydrogenBond */)
|
|
127
|
+
if (contacts.edges[interIndices[i]].props.type === 4 /* InteractionType.HydrogenBond */)
|
|
128
128
|
return true;
|
|
129
129
|
}
|
|
130
130
|
return false;
|
|
131
131
|
};
|
|
132
132
|
return {
|
|
133
|
-
isApplicable: function (type) { return type === 8 /* WeakHydrogenBond */; },
|
|
133
|
+
isApplicable: function (type) { return type === 8 /* InteractionType.WeakHydrogenBond */; },
|
|
134
134
|
handleInterContact: function (index, infoA, infoB) {
|
|
135
135
|
if (hasHydrogenBond(infoA, infoB)) {
|
|
136
|
-
contacts.edges[index].props.flag = 1 /* Filtered */;
|
|
136
|
+
contacts.edges[index].props.flag = 1 /* InteractionFlag.Filtered */;
|
|
137
137
|
}
|
|
138
138
|
},
|
|
139
139
|
startUnit: function () { },
|
|
140
140
|
handleIntraContact: function (index, infoA, infoB) {
|
|
141
141
|
if (hasHydrogenBond(infoA, infoB)) {
|
|
142
142
|
var flag = interactions.unitsContacts.get(infoA.unit.id).edgeProps.flag;
|
|
143
|
-
flag[index] = 1 /* Filtered */;
|
|
143
|
+
flag[index] = 1 /* InteractionFlag.Filtered */;
|
|
144
144
|
}
|
|
145
145
|
}
|
|
146
146
|
};
|
|
@@ -160,7 +160,7 @@ function filterInter(types, index, infoA, infoB, contacts) {
|
|
|
160
160
|
for (var j = offsetsB[featureB], jl = offsetsB[featureB + 1]; j < jl; ++j) {
|
|
161
161
|
var bI = infoB.members[j];
|
|
162
162
|
if (contacts.getContactIndicesForElement(bI, infoB.unit).includes(cI)) {
|
|
163
|
-
contacts.edges[index].props.flag = 1 /* Filtered */;
|
|
163
|
+
contacts.edges[index].props.flag = 1 /* InteractionFlag.Filtered */;
|
|
164
164
|
return;
|
|
165
165
|
}
|
|
166
166
|
}
|
|
@@ -184,7 +184,7 @@ function filterIntra(types, index, infoA, infoB, contacts) {
|
|
|
184
184
|
var bI = infoB.members[j];
|
|
185
185
|
for (var l = offsets[bI], ll = offsets[bI + 1]; l < ll; ++l) {
|
|
186
186
|
if (cI === indices[l]) {
|
|
187
|
-
flag[index] = 1 /* Filtered */;
|
|
187
|
+
flag[index] = 1 /* InteractionFlag.Filtered */;
|
|
188
188
|
return;
|
|
189
189
|
}
|
|
190
190
|
}
|
|
@@ -200,13 +200,13 @@ function filterIntra(types, index, infoA, infoB, contacts) {
|
|
|
200
200
|
function saltBridgeRefiner(structure, interactions) {
|
|
201
201
|
var contacts = interactions.contacts;
|
|
202
202
|
return {
|
|
203
|
-
isApplicable: function (type) { return type === 1 /* Ionic */; },
|
|
203
|
+
isApplicable: function (type) { return type === 1 /* InteractionType.Ionic */; },
|
|
204
204
|
handleInterContact: function (index, infoA, infoB) {
|
|
205
|
-
filterInter([4 /* HydrogenBond */, 8 /* WeakHydrogenBond */], index, infoA, infoB, contacts);
|
|
205
|
+
filterInter([4 /* InteractionType.HydrogenBond */, 8 /* InteractionType.WeakHydrogenBond */], index, infoA, infoB, contacts);
|
|
206
206
|
},
|
|
207
207
|
startUnit: function () { },
|
|
208
208
|
handleIntraContact: function (index, infoA, infoB) {
|
|
209
|
-
filterIntra([4 /* HydrogenBond */, 8 /* WeakHydrogenBond */], index, infoA, infoB, interactions.unitsContacts.get(infoA.unit.id));
|
|
209
|
+
filterIntra([4 /* InteractionType.HydrogenBond */, 8 /* InteractionType.WeakHydrogenBond */], index, infoA, infoB, interactions.unitsContacts.get(infoA.unit.id));
|
|
210
210
|
}
|
|
211
211
|
};
|
|
212
212
|
}
|
|
@@ -217,13 +217,13 @@ function saltBridgeRefiner(structure, interactions) {
|
|
|
217
217
|
function piStackingRefiner(structure, interactions) {
|
|
218
218
|
var contacts = interactions.contacts;
|
|
219
219
|
return {
|
|
220
|
-
isApplicable: function (type) { return type === 6 /* Hydrophobic */ || type === 2 /* CationPi */; },
|
|
220
|
+
isApplicable: function (type) { return type === 6 /* InteractionType.Hydrophobic */ || type === 2 /* InteractionType.CationPi */; },
|
|
221
221
|
handleInterContact: function (index, infoA, infoB) {
|
|
222
|
-
filterInter([3 /* PiStacking */], index, infoA, infoB, contacts);
|
|
222
|
+
filterInter([3 /* InteractionType.PiStacking */], index, infoA, infoB, contacts);
|
|
223
223
|
},
|
|
224
224
|
startUnit: function () { },
|
|
225
225
|
handleIntraContact: function (index, infoA, infoB) {
|
|
226
|
-
filterIntra([3 /* PiStacking */], index, infoA, infoB, interactions.unitsContacts.get(infoA.unit.id));
|
|
226
|
+
filterIntra([3 /* InteractionType.PiStacking */], index, infoA, infoB, interactions.unitsContacts.get(infoA.unit.id));
|
|
227
227
|
}
|
|
228
228
|
};
|
|
229
229
|
}
|
|
@@ -234,13 +234,13 @@ function piStackingRefiner(structure, interactions) {
|
|
|
234
234
|
function metalCoordinationRefiner(structure, interactions) {
|
|
235
235
|
var contacts = interactions.contacts;
|
|
236
236
|
return {
|
|
237
|
-
isApplicable: function (type) { return type === 1 /* Ionic */; },
|
|
237
|
+
isApplicable: function (type) { return type === 1 /* InteractionType.Ionic */; },
|
|
238
238
|
handleInterContact: function (index, infoA, infoB) {
|
|
239
|
-
filterInter([7 /* MetalCoordination */], index, infoA, infoB, contacts);
|
|
239
|
+
filterInter([7 /* InteractionType.MetalCoordination */], index, infoA, infoB, contacts);
|
|
240
240
|
},
|
|
241
241
|
startUnit: function () { },
|
|
242
242
|
handleIntraContact: function (index, infoA, infoB) {
|
|
243
|
-
filterIntra([7 /* MetalCoordination */], index, infoA, infoB, interactions.unitsContacts.get(infoA.unit.id));
|
|
243
|
+
filterIntra([7 /* InteractionType.MetalCoordination */], index, infoA, infoB, interactions.unitsContacts.get(infoA.unit.id));
|
|
244
244
|
}
|
|
245
245
|
};
|
|
246
246
|
}
|
|
@@ -41,7 +41,7 @@ function createInterUnitInteractionCylinderMesh(ctx, structure, theme, props, me
|
|
|
41
41
|
Vec3.set(posB, fB.x[indexB], fB.y[indexB], fB.z[indexB]);
|
|
42
42
|
Vec3.transformMat4(posB, posB, uB.conformation.operator.matrix);
|
|
43
43
|
},
|
|
44
|
-
style: function (edgeIndex) { return 1 /* Dashed */; },
|
|
44
|
+
style: function (edgeIndex) { return 1 /* LinkStyle.Dashed */; },
|
|
45
45
|
radius: function (edgeIndex) {
|
|
46
46
|
var b = edges[edgeIndex];
|
|
47
47
|
var fA = unitsFeatures.get(b.unitA);
|
|
@@ -55,7 +55,7 @@ function createInterUnitInteractionCylinderMesh(ctx, structure, theme, props, me
|
|
|
55
55
|
return Math.min(sizeA, sizeB) * sizeFactor;
|
|
56
56
|
},
|
|
57
57
|
ignore: function (edgeIndex) {
|
|
58
|
-
if (edges[edgeIndex].props.flag === 1 /* Filtered */)
|
|
58
|
+
if (edges[edgeIndex].props.flag === 1 /* InteractionFlag.Filtered */)
|
|
59
59
|
return true;
|
|
60
60
|
if (child) {
|
|
61
61
|
var b = edges[edgeIndex];
|
|
@@ -41,7 +41,7 @@ function createIntraUnitInteractionsCylinderMesh(ctx, unit, structure, theme, pr
|
|
|
41
41
|
Vec3.set(posA, x[a[edgeIndex]], y[a[edgeIndex]], z[a[edgeIndex]]);
|
|
42
42
|
Vec3.set(posB, x[b[edgeIndex]], y[b[edgeIndex]], z[b[edgeIndex]]);
|
|
43
43
|
},
|
|
44
|
-
style: function (edgeIndex) { return 1 /* Dashed */; },
|
|
44
|
+
style: function (edgeIndex) { return 1 /* LinkStyle.Dashed */; },
|
|
45
45
|
radius: function (edgeIndex) {
|
|
46
46
|
location.element = unit.elements[members[offsets[a[edgeIndex]]]];
|
|
47
47
|
var sizeA = theme.size.size(location);
|
|
@@ -50,7 +50,7 @@ function createIntraUnitInteractionsCylinderMesh(ctx, unit, structure, theme, pr
|
|
|
50
50
|
return Math.min(sizeA, sizeB) * sizeFactor;
|
|
51
51
|
},
|
|
52
52
|
ignore: function (edgeIndex) {
|
|
53
|
-
if (flag[edgeIndex] === 1 /* Filtered */)
|
|
53
|
+
if (flag[edgeIndex] === 1 /* InteractionFlag.Filtered */)
|
|
54
54
|
return true;
|
|
55
55
|
if (childUnit) {
|
|
56
56
|
var f = a[edgeIndex];
|
|
@@ -34,34 +34,34 @@ export function assignBridges(ctx) {
|
|
|
34
34
|
i = k + 1; // k is i - 1
|
|
35
35
|
j = l;
|
|
36
36
|
if (i !== j && hbonds.getDirectedEdgeIndex(j, i + 1) !== -1) {
|
|
37
|
-
flags[i] |= 2 /* B */;
|
|
38
|
-
flags[j] |= 2 /* B */;
|
|
37
|
+
flags[i] |= 2 /* DSSPType.Flag.B */;
|
|
38
|
+
flags[j] |= 2 /* DSSPType.Flag.B */;
|
|
39
39
|
// TODO move to constructor, actually omit object all together
|
|
40
|
-
bridges[bridges.length] = new Bridge(i, j, 0 /* PARALLEL */);
|
|
40
|
+
bridges[bridges.length] = new Bridge(i, j, 0 /* BridgeType.PARALLEL */);
|
|
41
41
|
}
|
|
42
42
|
// Parallel Bridge(i, j) =: [Hbond(j - 1, i) and Hbond(i, j + 1)]
|
|
43
43
|
i = k;
|
|
44
44
|
j = l - 1; // l is j + 1
|
|
45
45
|
if (i !== j && hbonds.getDirectedEdgeIndex(j - 1, i) !== -1) {
|
|
46
|
-
flags[i] |= 2 /* B */;
|
|
47
|
-
flags[j] |= 2 /* B */;
|
|
48
|
-
bridges[bridges.length] = new Bridge(j, i, 0 /* PARALLEL */);
|
|
46
|
+
flags[i] |= 2 /* DSSPType.Flag.B */;
|
|
47
|
+
flags[j] |= 2 /* DSSPType.Flag.B */;
|
|
48
|
+
bridges[bridges.length] = new Bridge(j, i, 0 /* BridgeType.PARALLEL */);
|
|
49
49
|
}
|
|
50
50
|
// Antiparallel Bridge(i, j) =: [Hbond(i, j) and Hbond(j, i)]
|
|
51
51
|
i = k;
|
|
52
52
|
j = l;
|
|
53
53
|
if (i !== j && hbonds.getDirectedEdgeIndex(j, i) !== -1) {
|
|
54
|
-
flags[i] |= 2 /* B */;
|
|
55
|
-
flags[j] |= 2 /* B */;
|
|
56
|
-
bridges[bridges.length] = new Bridge(j, i, 1 /* ANTI_PARALLEL */);
|
|
54
|
+
flags[i] |= 2 /* DSSPType.Flag.B */;
|
|
55
|
+
flags[j] |= 2 /* DSSPType.Flag.B */;
|
|
56
|
+
bridges[bridges.length] = new Bridge(j, i, 1 /* BridgeType.ANTI_PARALLEL */);
|
|
57
57
|
}
|
|
58
58
|
// Antiparallel Bridge(i, j) =: [Hbond(i - 1, j + 1) and Hbond(j - 1, i + l)]
|
|
59
59
|
i = k + 1;
|
|
60
60
|
j = l - 1;
|
|
61
61
|
if (i !== j && hbonds.getDirectedEdgeIndex(j - 1, i + 1) !== -1) {
|
|
62
|
-
flags[i] |= 2 /* B */;
|
|
63
|
-
flags[j] |= 2 /* B */;
|
|
64
|
-
bridges[bridges.length] = new Bridge(j, i, 1 /* ANTI_PARALLEL */);
|
|
62
|
+
flags[i] |= 2 /* DSSPType.Flag.B */;
|
|
63
|
+
flags[j] |= 2 /* DSSPType.Flag.B */;
|
|
64
|
+
bridges[bridges.length] = new Bridge(j, i, 1 /* BridgeType.ANTI_PARALLEL */);
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
67
|
}
|
|
@@ -19,8 +19,8 @@ import { DSSPType } from './common';
|
|
|
19
19
|
export function assignHelices(ctx) {
|
|
20
20
|
var proteinInfo = ctx.proteinInfo, flags = ctx.flags;
|
|
21
21
|
var residueCount = proteinInfo.residueIndices.length;
|
|
22
|
-
var turnFlag = [1024 /* T3S */, 2048 /* T4S */, 4096 /* T5S */, 128 /* T3 */, 256 /* T4 */, 512 /* T5 */];
|
|
23
|
-
var helixFlag = [0, 0, 0, 8 /* G */, 1 /* H */, 16 /* I */];
|
|
22
|
+
var turnFlag = [1024 /* DSSPType.Flag.T3S */, 2048 /* DSSPType.Flag.T4S */, 4096 /* DSSPType.Flag.T5S */, 128 /* DSSPType.Flag.T3 */, 256 /* DSSPType.Flag.T4 */, 512 /* DSSPType.Flag.T5 */];
|
|
23
|
+
var helixFlag = [0, 0, 0, 8 /* DSSPType.Flag.G */, 1 /* DSSPType.Flag.H */, 16 /* DSSPType.Flag.I */];
|
|
24
24
|
var helixCheckOrder = ctx.params.oldOrdering ? [4, 3, 5] : [3, 4, 5];
|
|
25
25
|
for (var ni = 0; ni < helixCheckOrder.length; ni++) {
|
|
26
26
|
var n = helixCheckOrder[ni];
|
|
@@ -30,14 +30,14 @@ export function assignHelices(ctx) {
|
|
|
30
30
|
var fI2 = DSSPType.create(flags[i + 1]);
|
|
31
31
|
// TODO rework to elegant solution which will not break instantly
|
|
32
32
|
if (ctx.params.oldOrdering) {
|
|
33
|
-
if ((n === 3 && (DSSPType.is(fI, 1 /* H */) || DSSPType.is(fI2, 1 /* H */)) || // for 3-10 yield to alpha helix
|
|
34
|
-
(n === 5 && ((DSSPType.is(fI, 1 /* H */) || DSSPType.is(fI, 8 /* G */)) || (DSSPType.is(fI2, 1 /* H */) || DSSPType.is(fI2, 8 /* G */)))))) { // for pi yield to all other helices
|
|
33
|
+
if ((n === 3 && (DSSPType.is(fI, 1 /* DSSPType.Flag.H */) || DSSPType.is(fI2, 1 /* DSSPType.Flag.H */)) || // for 3-10 yield to alpha helix
|
|
34
|
+
(n === 5 && ((DSSPType.is(fI, 1 /* DSSPType.Flag.H */) || DSSPType.is(fI, 8 /* DSSPType.Flag.G */)) || (DSSPType.is(fI2, 1 /* DSSPType.Flag.H */) || DSSPType.is(fI2, 8 /* DSSPType.Flag.G */)))))) { // for pi yield to all other helices
|
|
35
35
|
continue;
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
38
|
else {
|
|
39
|
-
if ((n === 4 && (DSSPType.is(fI, 8 /* G */) || DSSPType.is(fI2, 8 /* G */)) || // for alpha helix yield to 3-10
|
|
40
|
-
(n === 5 && ((DSSPType.is(fI, 1 /* H */) || DSSPType.is(fI, 8 /* G */)) || (DSSPType.is(fI2, 1 /* H */) || DSSPType.is(fI2, 8 /* G */)))))) { // for pi yield to all other helices
|
|
39
|
+
if ((n === 4 && (DSSPType.is(fI, 8 /* DSSPType.Flag.G */) || DSSPType.is(fI2, 8 /* DSSPType.Flag.G */)) || // for alpha helix yield to 3-10
|
|
40
|
+
(n === 5 && ((DSSPType.is(fI, 1 /* DSSPType.Flag.H */) || DSSPType.is(fI, 8 /* DSSPType.Flag.G */)) || (DSSPType.is(fI2, 1 /* DSSPType.Flag.H */) || DSSPType.is(fI2, 8 /* DSSPType.Flag.G */)))))) { // for pi yield to all other helices
|
|
41
41
|
continue;
|
|
42
42
|
}
|
|
43
43
|
}
|
|
@@ -11,7 +11,7 @@ function shouldExtendLadder(ladder, bridge) {
|
|
|
11
11
|
// only extend if residue 1 is sequence neighbor with regard to ladder
|
|
12
12
|
if (bridge.partner1 !== ladder.firstEnd + 1)
|
|
13
13
|
return false;
|
|
14
|
-
if (bridge.type === 0 /* PARALLEL */) {
|
|
14
|
+
if (bridge.type === 0 /* BridgeType.PARALLEL */) {
|
|
15
15
|
if (bridge.partner2 === ladder.secondEnd + 1) {
|
|
16
16
|
return true;
|
|
17
17
|
}
|
|
@@ -32,7 +32,7 @@ function resemblesBulge(ladder1, ladder2) {
|
|
|
32
32
|
if (!(ladder1.type === ladder2.type && ladder2.firstStart - ladder1.firstEnd < 6 &&
|
|
33
33
|
ladder1.firstStart < ladder2.firstStart && ladder2.nextLadder === 0))
|
|
34
34
|
return false;
|
|
35
|
-
if (ladder1.type === 0 /* PARALLEL */) {
|
|
35
|
+
if (ladder1.type === 0 /* BridgeType.PARALLEL */) {
|
|
36
36
|
return bulgeCriterion2(ladder1, ladder2);
|
|
37
37
|
}
|
|
38
38
|
else {
|
|
@@ -59,7 +59,7 @@ export function assignLadders(ctx) {
|
|
|
59
59
|
if (shouldExtendLadder(ladder, bridge)) {
|
|
60
60
|
found = true;
|
|
61
61
|
ladder.firstEnd++;
|
|
62
|
-
if (bridge.type === 0 /* PARALLEL */) {
|
|
62
|
+
if (bridge.type === 0 /* BridgeType.PARALLEL */) {
|
|
63
63
|
ladder.secondEnd++;
|
|
64
64
|
}
|
|
65
65
|
else {
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import { DSSPType } from './common';
|
|
8
8
|
function isHelixType(f) {
|
|
9
|
-
return DSSPType.is(f, 8 /* G */) || DSSPType.is(f, 1 /* H */) || DSSPType.is(f, 16 /* I */);
|
|
9
|
+
return DSSPType.is(f, 8 /* DSSPType.Flag.G */) || DSSPType.is(f, 1 /* DSSPType.Flag.H */) || DSSPType.is(f, 16 /* DSSPType.Flag.I */);
|
|
10
10
|
}
|
|
11
11
|
/**
|
|
12
12
|
* sheet=: set of one or more ladders connected by shared residues
|
|
@@ -21,15 +21,15 @@ export function assignSheets(ctx) {
|
|
|
21
21
|
var diff = ladder.firstStart - lcount;
|
|
22
22
|
var l2count = ladder.secondStart - diff;
|
|
23
23
|
if (ladder.firstStart !== ladder.firstEnd) {
|
|
24
|
-
flags[lcount] |= 4 /* E */;
|
|
25
|
-
flags[l2count] |= 4 /* E */;
|
|
24
|
+
flags[lcount] |= 4 /* DSSPType.Flag.E */;
|
|
25
|
+
flags[l2count] |= 4 /* DSSPType.Flag.E */;
|
|
26
26
|
}
|
|
27
27
|
else {
|
|
28
|
-
if (!isHelixType(flags[lcount]) && DSSPType.is(flags[lcount], 4 /* E */)) {
|
|
29
|
-
flags[lcount] |= 2 /* B */;
|
|
28
|
+
if (!isHelixType(flags[lcount]) && DSSPType.is(flags[lcount], 4 /* DSSPType.Flag.E */)) {
|
|
29
|
+
flags[lcount] |= 2 /* DSSPType.Flag.B */;
|
|
30
30
|
}
|
|
31
|
-
if (!isHelixType(flags[l2count]) && DSSPType.is(flags[l2count], 4 /* E */)) {
|
|
32
|
-
flags[l2count] |= 2 /* B */;
|
|
31
|
+
if (!isHelixType(flags[l2count]) && DSSPType.is(flags[l2count], 4 /* DSSPType.Flag.E */)) {
|
|
32
|
+
flags[l2count] |= 2 /* DSSPType.Flag.B */;
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
}
|
|
@@ -37,16 +37,16 @@ export function assignSheets(ctx) {
|
|
|
37
37
|
continue;
|
|
38
38
|
var conladder = ladders[ladder.nextLadder];
|
|
39
39
|
for (var lcount = ladder.firstStart; lcount <= conladder.firstEnd; lcount++) {
|
|
40
|
-
flags[lcount] |= 4 /* E */;
|
|
40
|
+
flags[lcount] |= 4 /* DSSPType.Flag.E */;
|
|
41
41
|
}
|
|
42
|
-
if (ladder.type === 0 /* PARALLEL */) {
|
|
42
|
+
if (ladder.type === 0 /* BridgeType.PARALLEL */) {
|
|
43
43
|
for (var lcount = ladder.secondStart; lcount <= conladder.secondEnd; lcount++) {
|
|
44
|
-
flags[lcount] |= 4 /* E */;
|
|
44
|
+
flags[lcount] |= 4 /* DSSPType.Flag.E */;
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
47
|
else {
|
|
48
48
|
for (var lcount = conladder.secondEnd; lcount <= ladder.secondStart; lcount++) {
|
|
49
|
-
flags[lcount] |= 4 /* E */;
|
|
49
|
+
flags[lcount] |= 4 /* DSSPType.Flag.E */;
|
|
50
50
|
}
|
|
51
51
|
}
|
|
52
52
|
}
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
*/
|
|
14
14
|
export function assignTurns(ctx) {
|
|
15
15
|
var proteinInfo = ctx.proteinInfo, hbonds = ctx.hbonds, flags = ctx.flags;
|
|
16
|
-
var turnFlag = [1024 /* T3S */, 2048 /* T4S */, 4096 /* T5S */, 128 /* T3 */, 256 /* T4 */, 512 /* T5 */];
|
|
16
|
+
var turnFlag = [1024 /* DSSPType.Flag.T3S */, 2048 /* DSSPType.Flag.T4S */, 4096 /* DSSPType.Flag.T5S */, 128 /* DSSPType.Flag.T3 */, 256 /* DSSPType.Flag.T4 */, 512 /* DSSPType.Flag.T5 */];
|
|
17
17
|
for (var idx = 0; idx < 3; idx++) {
|
|
18
18
|
for (var i = 0, il = proteinInfo.residueIndices.length - 1; i < il; ++i) {
|
|
19
19
|
// check if hbond exists
|
|
@@ -21,12 +21,12 @@ export function assignTurns(ctx) {
|
|
|
21
21
|
flags[i] |= turnFlag[idx + 3] | turnFlag[idx];
|
|
22
22
|
if (ctx.params.oldDefinition) {
|
|
23
23
|
for (var k = 1; k < idx + 3; ++k) {
|
|
24
|
-
flags[i + k] |= turnFlag[idx + 3] | 64 /* T */;
|
|
24
|
+
flags[i + k] |= turnFlag[idx + 3] | 64 /* DSSPType.Flag.T */;
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
27
|
else {
|
|
28
28
|
for (var k = 0; k <= idx + 3; ++k) {
|
|
29
|
-
flags[i + k] |= turnFlag[idx + 3] | 64 /* T */;
|
|
29
|
+
flags[i + k] |= turnFlag[idx + 3] | 64 /* DSSPType.Flag.T */;
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
}
|