molstar 2.4.1 → 3.0.0-dev.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.
Files changed (456) hide show
  1. package/build/viewer/molstar.js +1 -1
  2. package/lib/apps/docking-viewer/viewport.js +14 -14
  3. package/lib/apps/docking-viewer/viewport.js.map +1 -1
  4. package/lib/commonjs/apps/docking-viewer/viewport.js +14 -14
  5. package/lib/commonjs/apps/docking-viewer/viewport.js.map +1 -1
  6. package/lib/commonjs/extensions/anvil/behavior.d.ts +1 -0
  7. package/lib/commonjs/extensions/anvil/representation.d.ts +20 -0
  8. package/lib/commonjs/extensions/cellpack/representation.d.ts +4 -0
  9. package/lib/commonjs/extensions/dnatco/confal-pyramids/representation.d.ts +12 -0
  10. package/lib/commonjs/extensions/geo-export/controls.js +15 -17
  11. package/lib/commonjs/extensions/geo-export/controls.js.map +1 -1
  12. package/lib/commonjs/extensions/geo-export/glb-exporter.d.ts +4 -3
  13. package/lib/commonjs/extensions/geo-export/glb-exporter.js +23 -11
  14. package/lib/commonjs/extensions/geo-export/glb-exporter.js.map +1 -1
  15. package/lib/commonjs/extensions/geo-export/usdz-exporter.d.ts +2 -5
  16. package/lib/commonjs/extensions/geo-export/usdz-exporter.js +14 -15
  17. package/lib/commonjs/extensions/geo-export/usdz-exporter.js.map +1 -1
  18. package/lib/commonjs/extensions/rcsb/assembly-symmetry/behavior.d.ts +3 -2
  19. package/lib/commonjs/extensions/rcsb/assembly-symmetry/representation.d.ts +4 -0
  20. package/lib/commonjs/extensions/rcsb/validation-report/representation.d.ts +20 -0
  21. package/lib/commonjs/mol-canvas3d/canvas3d.d.ts +18 -14
  22. package/lib/commonjs/mol-canvas3d/helper/camera-helper.d.ts +1 -0
  23. package/lib/commonjs/mol-canvas3d/helper/handle-helper.d.ts +1 -0
  24. package/lib/commonjs/mol-canvas3d/helper/helper.d.ts +2 -0
  25. package/lib/commonjs/mol-canvas3d/passes/image.d.ts +1 -0
  26. package/lib/commonjs/mol-geo/geometry/base.d.ts +11 -2
  27. package/lib/commonjs/mol-geo/geometry/base.js +14 -4
  28. package/lib/commonjs/mol-geo/geometry/base.js.map +1 -1
  29. package/lib/commonjs/mol-geo/geometry/cylinders/cylinders.d.ts +4 -0
  30. package/lib/commonjs/mol-geo/geometry/cylinders/cylinders.js +3 -1
  31. package/lib/commonjs/mol-geo/geometry/cylinders/cylinders.js.map +1 -1
  32. package/lib/commonjs/mol-geo/geometry/direct-volume/direct-volume.d.ts +4 -0
  33. package/lib/commonjs/mol-geo/geometry/direct-volume/direct-volume.js +4 -3
  34. package/lib/commonjs/mol-geo/geometry/direct-volume/direct-volume.js.map +1 -1
  35. package/lib/commonjs/mol-geo/geometry/image/image.d.ts +4 -0
  36. package/lib/commonjs/mol-geo/geometry/image/image.js +3 -1
  37. package/lib/commonjs/mol-geo/geometry/image/image.js.map +1 -1
  38. package/lib/commonjs/mol-geo/geometry/lines/lines.d.ts +4 -0
  39. package/lib/commonjs/mol-geo/geometry/lines/lines.js +3 -1
  40. package/lib/commonjs/mol-geo/geometry/lines/lines.js.map +1 -1
  41. package/lib/commonjs/mol-geo/geometry/mesh/color-smoothing.d.ts +1 -0
  42. package/lib/commonjs/mol-geo/geometry/mesh/color-smoothing.js +35 -1
  43. package/lib/commonjs/mol-geo/geometry/mesh/color-smoothing.js.map +1 -1
  44. package/lib/commonjs/mol-geo/geometry/mesh/mesh.d.ts +4 -0
  45. package/lib/commonjs/mol-geo/geometry/mesh/mesh.js +3 -1
  46. package/lib/commonjs/mol-geo/geometry/mesh/mesh.js.map +1 -1
  47. package/lib/commonjs/mol-geo/geometry/points/points.d.ts +4 -0
  48. package/lib/commonjs/mol-geo/geometry/points/points.js +3 -1
  49. package/lib/commonjs/mol-geo/geometry/points/points.js.map +1 -1
  50. package/lib/commonjs/mol-geo/geometry/spheres/spheres.d.ts +4 -0
  51. package/lib/commonjs/mol-geo/geometry/spheres/spheres.js +3 -1
  52. package/lib/commonjs/mol-geo/geometry/spheres/spheres.js.map +1 -1
  53. package/lib/commonjs/mol-geo/geometry/substance-data.d.ts +23 -0
  54. package/lib/commonjs/mol-geo/geometry/substance-data.js +68 -0
  55. package/lib/commonjs/mol-geo/geometry/substance-data.js.map +1 -0
  56. package/lib/commonjs/mol-geo/geometry/text/text.d.ts +4 -0
  57. package/lib/commonjs/mol-geo/geometry/text/text.js +3 -1
  58. package/lib/commonjs/mol-geo/geometry/text/text.js.map +1 -1
  59. package/lib/commonjs/mol-geo/geometry/texture-mesh/color-smoothing.d.ts +1 -0
  60. package/lib/commonjs/mol-geo/geometry/texture-mesh/color-smoothing.js +33 -1
  61. package/lib/commonjs/mol-geo/geometry/texture-mesh/color-smoothing.js.map +1 -1
  62. package/lib/commonjs/mol-geo/geometry/texture-mesh/texture-mesh.d.ts +4 -0
  63. package/lib/commonjs/mol-geo/geometry/texture-mesh/texture-mesh.js +3 -1
  64. package/lib/commonjs/mol-geo/geometry/texture-mesh/texture-mesh.js.map +1 -1
  65. package/lib/commonjs/mol-gl/_spec/renderer.spec.js +1 -1
  66. package/lib/commonjs/mol-gl/renderable/cylinders.d.ts +10 -0
  67. package/lib/commonjs/mol-gl/renderable/direct-volume.d.ts +10 -0
  68. package/lib/commonjs/mol-gl/renderable/image.d.ts +10 -0
  69. package/lib/commonjs/mol-gl/renderable/lines.d.ts +10 -0
  70. package/lib/commonjs/mol-gl/renderable/mesh.d.ts +10 -0
  71. package/lib/commonjs/mol-gl/renderable/points.d.ts +10 -0
  72. package/lib/commonjs/mol-gl/renderable/points.js +1 -2
  73. package/lib/commonjs/mol-gl/renderable/points.js.map +1 -1
  74. package/lib/commonjs/mol-gl/renderable/schema.d.ts +24 -5
  75. package/lib/commonjs/mol-gl/renderable/schema.js +15 -11
  76. package/lib/commonjs/mol-gl/renderable/schema.js.map +1 -1
  77. package/lib/commonjs/mol-gl/renderable/spheres.d.ts +10 -0
  78. package/lib/commonjs/mol-gl/renderable/text.d.ts +10 -0
  79. package/lib/commonjs/mol-gl/renderable/texture-mesh.d.ts +10 -0
  80. package/lib/commonjs/mol-gl/renderer.d.ts +9 -15
  81. package/lib/commonjs/mol-gl/renderer.js +53 -61
  82. package/lib/commonjs/mol-gl/renderer.js.map +1 -1
  83. package/lib/commonjs/mol-gl/shader/chunks/apply-light-color.glsl.d.ts +3 -3
  84. package/lib/commonjs/mol-gl/shader/chunks/apply-light-color.glsl.js +3 -3
  85. package/lib/commonjs/mol-gl/shader/chunks/apply-light-color.glsl.js.map +1 -1
  86. package/lib/commonjs/mol-gl/shader/chunks/assign-color-varying.glsl.d.ts +1 -1
  87. package/lib/commonjs/mol-gl/shader/chunks/assign-color-varying.glsl.js +1 -1
  88. package/lib/commonjs/mol-gl/shader/chunks/assign-color-varying.glsl.js.map +1 -1
  89. package/lib/commonjs/mol-gl/shader/chunks/assign-material-color.glsl.d.ts +1 -1
  90. package/lib/commonjs/mol-gl/shader/chunks/assign-material-color.glsl.js +1 -1
  91. package/lib/commonjs/mol-gl/shader/chunks/assign-material-color.glsl.js.map +1 -1
  92. package/lib/commonjs/mol-gl/shader/chunks/color-frag-params.glsl.d.ts +1 -1
  93. package/lib/commonjs/mol-gl/shader/chunks/color-frag-params.glsl.js +1 -1
  94. package/lib/commonjs/mol-gl/shader/chunks/color-frag-params.glsl.js.map +1 -1
  95. package/lib/commonjs/mol-gl/shader/chunks/color-vert-params.glsl.d.ts +1 -1
  96. package/lib/commonjs/mol-gl/shader/chunks/color-vert-params.glsl.js +1 -1
  97. package/lib/commonjs/mol-gl/shader/chunks/color-vert-params.glsl.js.map +1 -1
  98. package/lib/commonjs/mol-gl/shader/chunks/common-clip.glsl.d.ts +1 -1
  99. package/lib/commonjs/mol-gl/shader/chunks/common-clip.glsl.js +1 -1
  100. package/lib/commonjs/mol-gl/shader/chunks/common-clip.glsl.js.map +1 -1
  101. package/lib/commonjs/mol-gl/shader/chunks/light-frag-params.glsl.d.ts +3 -3
  102. package/lib/commonjs/mol-gl/shader/chunks/light-frag-params.glsl.js +3 -3
  103. package/lib/commonjs/mol-gl/shader/chunks/light-frag-params.glsl.js.map +1 -1
  104. package/lib/commonjs/mol-gl/shader/direct-volume.frag.d.ts +1 -1
  105. package/lib/commonjs/mol-gl/shader/direct-volume.frag.js +1 -1
  106. package/lib/commonjs/mol-gl/shader/direct-volume.frag.js.map +1 -1
  107. package/lib/commonjs/mol-gl/shader/mesh.frag.d.ts +1 -1
  108. package/lib/commonjs/mol-gl/shader/mesh.frag.js +1 -1
  109. package/lib/commonjs/mol-gl/shader/mesh.frag.js.map +1 -1
  110. package/lib/commonjs/mol-gl/shader-code.d.ts +0 -1
  111. package/lib/commonjs/mol-gl/shader-code.js +31 -13
  112. package/lib/commonjs/mol-gl/shader-code.js.map +1 -1
  113. package/lib/commonjs/mol-gl/webgl/extensions.js +2 -4
  114. package/lib/commonjs/mol-gl/webgl/extensions.js.map +1 -1
  115. package/lib/commonjs/mol-math/linear-algebra/3d/vec3.d.ts +6 -0
  116. package/lib/commonjs/mol-math/linear-algebra/3d/vec3.js +9 -0
  117. package/lib/commonjs/mol-math/linear-algebra/3d/vec3.js.map +1 -1
  118. package/lib/commonjs/mol-model/loci.d.ts +18 -18
  119. package/lib/commonjs/mol-model-formats/shape/ply.d.ts +8 -0
  120. package/lib/commonjs/mol-model-props/computed/representations/interactions-inter-unit-cylinder.d.ts +4 -0
  121. package/lib/commonjs/mol-model-props/computed/representations/interactions-intra-unit-cylinder.d.ts +4 -0
  122. package/lib/commonjs/mol-model-props/computed/representations/interactions.d.ts +12 -0
  123. package/lib/commonjs/mol-model-props/integrative/cross-link-restraint/representation.d.ts +16 -0
  124. package/lib/commonjs/mol-plugin/behavior/dynamic/representation.d.ts +2 -2
  125. package/lib/commonjs/mol-plugin/behavior/dynamic/selection/structure-focus-representation.d.ts +5 -0
  126. package/lib/commonjs/mol-plugin/behavior/dynamic/selection/structure-focus-representation.js +4 -2
  127. package/lib/commonjs/mol-plugin/behavior/dynamic/selection/structure-focus-representation.js.map +1 -1
  128. package/lib/commonjs/mol-plugin/commands.d.ts +9 -7
  129. package/lib/commonjs/mol-plugin/spec.js +1 -0
  130. package/lib/commonjs/mol-plugin/spec.js.map +1 -1
  131. package/lib/commonjs/mol-plugin/util/viewport-screenshot.d.ts +3 -0
  132. package/lib/commonjs/mol-plugin-state/builder/structure/representation-preset.d.ts +4 -4
  133. package/lib/commonjs/mol-plugin-state/helpers/structure-substance.d.ts +13 -0
  134. package/lib/commonjs/mol-plugin-state/helpers/structure-substance.js +126 -0
  135. package/lib/commonjs/mol-plugin-state/helpers/structure-substance.js.map +1 -0
  136. package/lib/commonjs/mol-plugin-state/manager/structure/component.d.ts +9 -2
  137. package/lib/commonjs/mol-plugin-state/manager/structure/component.js +44 -22
  138. package/lib/commonjs/mol-plugin-state/manager/structure/component.js.map +1 -1
  139. package/lib/commonjs/mol-plugin-state/transforms/representation.d.ts +31 -4
  140. package/lib/commonjs/mol-plugin-state/transforms/representation.js +120 -1
  141. package/lib/commonjs/mol-plugin-state/transforms/representation.js.map +1 -1
  142. package/lib/commonjs/mol-plugin-ui/viewport/simple-settings.js +2 -5
  143. package/lib/commonjs/mol-plugin-ui/viewport/simple-settings.js.map +1 -1
  144. package/lib/commonjs/mol-repr/representation.d.ts +3 -0
  145. package/lib/commonjs/mol-repr/representation.js +7 -1
  146. package/lib/commonjs/mol-repr/representation.js.map +1 -1
  147. package/lib/commonjs/mol-repr/shape/loci/angle.d.ts +5 -1
  148. package/lib/commonjs/mol-repr/shape/loci/common.d.ts +5 -1
  149. package/lib/commonjs/mol-repr/shape/loci/dihedral.d.ts +5 -1
  150. package/lib/commonjs/mol-repr/shape/loci/distance.d.ts +5 -1
  151. package/lib/commonjs/mol-repr/shape/loci/label.d.ts +5 -1
  152. package/lib/commonjs/mol-repr/shape/loci/orientation.d.ts +4 -0
  153. package/lib/commonjs/mol-repr/shape/loci/plane.d.ts +4 -0
  154. package/lib/commonjs/mol-repr/shape/model/unitcell.d.ts +4 -0
  155. package/lib/commonjs/mol-repr/shape/representation.js +3 -0
  156. package/lib/commonjs/mol-repr/shape/representation.js.map +1 -1
  157. package/lib/commonjs/mol-repr/structure/complex-representation.js +6 -0
  158. package/lib/commonjs/mol-repr/structure/complex-representation.js.map +1 -1
  159. package/lib/commonjs/mol-repr/structure/complex-visual.d.ts +25 -1
  160. package/lib/commonjs/mol-repr/structure/complex-visual.js +4 -0
  161. package/lib/commonjs/mol-repr/structure/complex-visual.js.map +1 -1
  162. package/lib/commonjs/mol-repr/structure/params.d.ts +33 -1
  163. package/lib/commonjs/mol-repr/structure/registry.d.ts +57 -1
  164. package/lib/commonjs/mol-repr/structure/representation/backbone.d.ts +12 -0
  165. package/lib/commonjs/mol-repr/structure/representation/ball-and-stick.d.ts +12 -0
  166. package/lib/commonjs/mol-repr/structure/representation/carbohydrate.d.ts +12 -0
  167. package/lib/commonjs/mol-repr/structure/representation/cartoon.d.ts +12 -0
  168. package/lib/commonjs/mol-repr/structure/representation/ellipsoid.d.ts +12 -0
  169. package/lib/commonjs/mol-repr/structure/representation/gaussian-surface.d.ts +12 -0
  170. package/lib/commonjs/mol-repr/structure/representation/gaussian-volume.d.ts +12 -0
  171. package/lib/commonjs/mol-repr/structure/representation/label.d.ts +15 -3
  172. package/lib/commonjs/mol-repr/structure/representation/line.d.ts +12 -0
  173. package/lib/commonjs/mol-repr/structure/representation/molecular-surface.d.ts +12 -0
  174. package/lib/commonjs/mol-repr/structure/representation/orientation.d.ts +12 -0
  175. package/lib/commonjs/mol-repr/structure/representation/point.d.ts +12 -0
  176. package/lib/commonjs/mol-repr/structure/representation/putty.d.ts +12 -0
  177. package/lib/commonjs/mol-repr/structure/representation/spacefill.d.ts +12 -0
  178. package/lib/commonjs/mol-repr/structure/units-representation.js +8 -2
  179. package/lib/commonjs/mol-repr/structure/units-representation.js.map +1 -1
  180. package/lib/commonjs/mol-repr/structure/units-visual.d.ts +33 -1
  181. package/lib/commonjs/mol-repr/structure/units-visual.js +4 -0
  182. package/lib/commonjs/mol-repr/structure/units-visual.js.map +1 -1
  183. package/lib/commonjs/mol-repr/structure/visual/bond-inter-unit-cylinder.d.ts +8 -0
  184. package/lib/commonjs/mol-repr/structure/visual/bond-inter-unit-line.d.ts +4 -0
  185. package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-cylinder.d.ts +8 -0
  186. package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-line.d.ts +4 -0
  187. package/lib/commonjs/mol-repr/structure/visual/carbohydrate-link-cylinder.d.ts +4 -0
  188. package/lib/commonjs/mol-repr/structure/visual/carbohydrate-symbol-mesh.d.ts +4 -0
  189. package/lib/commonjs/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.d.ts +4 -0
  190. package/lib/commonjs/mol-repr/structure/visual/element-cross.d.ts +4 -0
  191. package/lib/commonjs/mol-repr/structure/visual/element-point.d.ts +4 -0
  192. package/lib/commonjs/mol-repr/structure/visual/element-sphere.d.ts +8 -0
  193. package/lib/commonjs/mol-repr/structure/visual/ellipsoid-mesh.d.ts +4 -0
  194. package/lib/commonjs/mol-repr/structure/visual/gaussian-density-volume.d.ts +8 -0
  195. package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-mesh.d.ts +16 -0
  196. package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-wireframe.d.ts +4 -0
  197. package/lib/commonjs/mol-repr/structure/visual/label-text.d.ts +5 -1
  198. package/lib/commonjs/mol-repr/structure/visual/molecular-surface-mesh.d.ts +4 -0
  199. package/lib/commonjs/mol-repr/structure/visual/molecular-surface-wireframe.d.ts +4 -0
  200. package/lib/commonjs/mol-repr/structure/visual/nucleotide-block-mesh.d.ts +4 -0
  201. package/lib/commonjs/mol-repr/structure/visual/nucleotide-ring-mesh.d.ts +4 -0
  202. package/lib/commonjs/mol-repr/structure/visual/orientation-ellipsoid-mesh.d.ts +4 -0
  203. package/lib/commonjs/mol-repr/structure/visual/polymer-backbone-cylinder.d.ts +8 -0
  204. package/lib/commonjs/mol-repr/structure/visual/polymer-backbone-sphere.d.ts +8 -0
  205. package/lib/commonjs/mol-repr/structure/visual/polymer-direction-wedge.d.ts +4 -0
  206. package/lib/commonjs/mol-repr/structure/visual/polymer-gap-cylinder.d.ts +4 -0
  207. package/lib/commonjs/mol-repr/structure/visual/polymer-trace-mesh.d.ts +4 -0
  208. package/lib/commonjs/mol-repr/structure/visual/polymer-tube-mesh.d.ts +4 -0
  209. package/lib/commonjs/mol-repr/visual.d.ts +3 -0
  210. package/lib/commonjs/mol-repr/visual.js +53 -2
  211. package/lib/commonjs/mol-repr/visual.js.map +1 -1
  212. package/lib/commonjs/mol-repr/volume/direct-volume.d.ts +12 -0
  213. package/lib/commonjs/mol-repr/volume/isosurface.d.ts +24 -0
  214. package/lib/commonjs/mol-repr/volume/registry.d.ts +12 -0
  215. package/lib/commonjs/mol-repr/volume/representation.d.ts +4 -0
  216. package/lib/commonjs/mol-repr/volume/representation.js +3 -0
  217. package/lib/commonjs/mol-repr/volume/representation.js.map +1 -1
  218. package/lib/commonjs/mol-repr/volume/slice.d.ts +12 -0
  219. package/lib/commonjs/mol-theme/overpaint.js +1 -1
  220. package/lib/commonjs/mol-theme/overpaint.js.map +1 -1
  221. package/lib/commonjs/mol-theme/substance.d.ts +43 -0
  222. package/lib/commonjs/mol-theme/substance.js +132 -0
  223. package/lib/commonjs/mol-theme/substance.js.map +1 -0
  224. package/lib/commonjs/mol-util/material.d.ts +32 -0
  225. package/lib/commonjs/mol-util/material.js +51 -0
  226. package/lib/commonjs/mol-util/material.js.map +1 -0
  227. package/lib/commonjs/mol-util/number.d.ts +1 -0
  228. package/lib/commonjs/mol-util/number.js +5 -1
  229. package/lib/commonjs/mol-util/number.js.map +1 -1
  230. package/lib/extensions/anvil/behavior.d.ts +1 -0
  231. package/lib/extensions/anvil/representation.d.ts +20 -0
  232. package/lib/extensions/cellpack/representation.d.ts +4 -0
  233. package/lib/extensions/dnatco/confal-pyramids/representation.d.ts +12 -0
  234. package/lib/extensions/geo-export/controls.js +15 -17
  235. package/lib/extensions/geo-export/controls.js.map +1 -1
  236. package/lib/extensions/geo-export/glb-exporter.d.ts +4 -3
  237. package/lib/extensions/geo-export/glb-exporter.js +23 -11
  238. package/lib/extensions/geo-export/glb-exporter.js.map +1 -1
  239. package/lib/extensions/geo-export/usdz-exporter.d.ts +2 -5
  240. package/lib/extensions/geo-export/usdz-exporter.js +14 -15
  241. package/lib/extensions/geo-export/usdz-exporter.js.map +1 -1
  242. package/lib/extensions/rcsb/assembly-symmetry/behavior.d.ts +3 -2
  243. package/lib/extensions/rcsb/assembly-symmetry/representation.d.ts +4 -0
  244. package/lib/extensions/rcsb/validation-report/representation.d.ts +20 -0
  245. package/lib/mol-canvas3d/canvas3d.d.ts +18 -14
  246. package/lib/mol-canvas3d/helper/camera-helper.d.ts +1 -0
  247. package/lib/mol-canvas3d/helper/handle-helper.d.ts +1 -0
  248. package/lib/mol-canvas3d/helper/helper.d.ts +2 -0
  249. package/lib/mol-canvas3d/passes/image.d.ts +1 -0
  250. package/lib/mol-geo/geometry/base.d.ts +11 -2
  251. package/lib/mol-geo/geometry/base.js +14 -4
  252. package/lib/mol-geo/geometry/base.js.map +1 -1
  253. package/lib/mol-geo/geometry/cylinders/cylinders.d.ts +4 -0
  254. package/lib/mol-geo/geometry/cylinders/cylinders.js +3 -1
  255. package/lib/mol-geo/geometry/cylinders/cylinders.js.map +1 -1
  256. package/lib/mol-geo/geometry/direct-volume/direct-volume.d.ts +4 -0
  257. package/lib/mol-geo/geometry/direct-volume/direct-volume.js +4 -3
  258. package/lib/mol-geo/geometry/direct-volume/direct-volume.js.map +1 -1
  259. package/lib/mol-geo/geometry/image/image.d.ts +4 -0
  260. package/lib/mol-geo/geometry/image/image.js +3 -1
  261. package/lib/mol-geo/geometry/image/image.js.map +1 -1
  262. package/lib/mol-geo/geometry/lines/lines.d.ts +4 -0
  263. package/lib/mol-geo/geometry/lines/lines.js +3 -1
  264. package/lib/mol-geo/geometry/lines/lines.js.map +1 -1
  265. package/lib/mol-geo/geometry/mesh/color-smoothing.d.ts +1 -0
  266. package/lib/mol-geo/geometry/mesh/color-smoothing.js +33 -0
  267. package/lib/mol-geo/geometry/mesh/color-smoothing.js.map +1 -1
  268. package/lib/mol-geo/geometry/mesh/mesh.d.ts +4 -0
  269. package/lib/mol-geo/geometry/mesh/mesh.js +3 -1
  270. package/lib/mol-geo/geometry/mesh/mesh.js.map +1 -1
  271. package/lib/mol-geo/geometry/points/points.d.ts +4 -0
  272. package/lib/mol-geo/geometry/points/points.js +3 -1
  273. package/lib/mol-geo/geometry/points/points.js.map +1 -1
  274. package/lib/mol-geo/geometry/spheres/spheres.d.ts +4 -0
  275. package/lib/mol-geo/geometry/spheres/spheres.js +3 -1
  276. package/lib/mol-geo/geometry/spheres/spheres.js.map +1 -1
  277. package/lib/mol-geo/geometry/substance-data.d.ts +23 -0
  278. package/lib/mol-geo/geometry/substance-data.js +61 -0
  279. package/lib/mol-geo/geometry/substance-data.js.map +1 -0
  280. package/lib/mol-geo/geometry/text/text.d.ts +4 -0
  281. package/lib/mol-geo/geometry/text/text.js +3 -1
  282. package/lib/mol-geo/geometry/text/text.js.map +1 -1
  283. package/lib/mol-geo/geometry/texture-mesh/color-smoothing.d.ts +1 -0
  284. package/lib/mol-geo/geometry/texture-mesh/color-smoothing.js +31 -0
  285. package/lib/mol-geo/geometry/texture-mesh/color-smoothing.js.map +1 -1
  286. package/lib/mol-geo/geometry/texture-mesh/texture-mesh.d.ts +4 -0
  287. package/lib/mol-geo/geometry/texture-mesh/texture-mesh.js +3 -1
  288. package/lib/mol-geo/geometry/texture-mesh/texture-mesh.js.map +1 -1
  289. package/lib/mol-gl/_spec/renderer.spec.js +1 -1
  290. package/lib/mol-gl/renderable/cylinders.d.ts +10 -0
  291. package/lib/mol-gl/renderable/direct-volume.d.ts +10 -0
  292. package/lib/mol-gl/renderable/image.d.ts +10 -0
  293. package/lib/mol-gl/renderable/lines.d.ts +10 -0
  294. package/lib/mol-gl/renderable/mesh.d.ts +10 -0
  295. package/lib/mol-gl/renderable/points.d.ts +10 -0
  296. package/lib/mol-gl/renderable/points.js +1 -2
  297. package/lib/mol-gl/renderable/points.js.map +1 -1
  298. package/lib/mol-gl/renderable/schema.d.ts +24 -5
  299. package/lib/mol-gl/renderable/schema.js +14 -10
  300. package/lib/mol-gl/renderable/schema.js.map +1 -1
  301. package/lib/mol-gl/renderable/spheres.d.ts +10 -0
  302. package/lib/mol-gl/renderable/text.d.ts +10 -0
  303. package/lib/mol-gl/renderable/texture-mesh.d.ts +10 -0
  304. package/lib/mol-gl/renderer.d.ts +9 -15
  305. package/lib/mol-gl/renderer.js +52 -59
  306. package/lib/mol-gl/renderer.js.map +1 -1
  307. package/lib/mol-gl/shader/chunks/apply-light-color.glsl.d.ts +3 -3
  308. package/lib/mol-gl/shader/chunks/apply-light-color.glsl.js +3 -3
  309. package/lib/mol-gl/shader/chunks/apply-light-color.glsl.js.map +1 -1
  310. package/lib/mol-gl/shader/chunks/assign-color-varying.glsl.d.ts +1 -1
  311. package/lib/mol-gl/shader/chunks/assign-color-varying.glsl.js +1 -1
  312. package/lib/mol-gl/shader/chunks/assign-color-varying.glsl.js.map +1 -1
  313. package/lib/mol-gl/shader/chunks/assign-material-color.glsl.d.ts +1 -1
  314. package/lib/mol-gl/shader/chunks/assign-material-color.glsl.js +1 -1
  315. package/lib/mol-gl/shader/chunks/assign-material-color.glsl.js.map +1 -1
  316. package/lib/mol-gl/shader/chunks/color-frag-params.glsl.d.ts +1 -1
  317. package/lib/mol-gl/shader/chunks/color-frag-params.glsl.js +1 -1
  318. package/lib/mol-gl/shader/chunks/color-frag-params.glsl.js.map +1 -1
  319. package/lib/mol-gl/shader/chunks/color-vert-params.glsl.d.ts +1 -1
  320. package/lib/mol-gl/shader/chunks/color-vert-params.glsl.js +1 -1
  321. package/lib/mol-gl/shader/chunks/color-vert-params.glsl.js.map +1 -1
  322. package/lib/mol-gl/shader/chunks/common-clip.glsl.d.ts +1 -1
  323. package/lib/mol-gl/shader/chunks/common-clip.glsl.js +1 -1
  324. package/lib/mol-gl/shader/chunks/common-clip.glsl.js.map +1 -1
  325. package/lib/mol-gl/shader/chunks/light-frag-params.glsl.d.ts +3 -3
  326. package/lib/mol-gl/shader/chunks/light-frag-params.glsl.js +3 -3
  327. package/lib/mol-gl/shader/chunks/light-frag-params.glsl.js.map +1 -1
  328. package/lib/mol-gl/shader/direct-volume.frag.d.ts +1 -1
  329. package/lib/mol-gl/shader/direct-volume.frag.js +1 -1
  330. package/lib/mol-gl/shader/direct-volume.frag.js.map +1 -1
  331. package/lib/mol-gl/shader/mesh.frag.d.ts +1 -1
  332. package/lib/mol-gl/shader/mesh.frag.js +1 -1
  333. package/lib/mol-gl/shader/mesh.frag.js.map +1 -1
  334. package/lib/mol-gl/shader-code.d.ts +0 -1
  335. package/lib/mol-gl/shader-code.js +31 -13
  336. package/lib/mol-gl/shader-code.js.map +1 -1
  337. package/lib/mol-gl/webgl/extensions.js +2 -4
  338. package/lib/mol-gl/webgl/extensions.js.map +1 -1
  339. package/lib/mol-math/linear-algebra/3d/vec3.d.ts +6 -0
  340. package/lib/mol-math/linear-algebra/3d/vec3.js +9 -0
  341. package/lib/mol-math/linear-algebra/3d/vec3.js.map +1 -1
  342. package/lib/mol-model/loci.d.ts +18 -18
  343. package/lib/mol-model-formats/shape/ply.d.ts +8 -0
  344. package/lib/mol-model-props/computed/representations/interactions-inter-unit-cylinder.d.ts +4 -0
  345. package/lib/mol-model-props/computed/representations/interactions-intra-unit-cylinder.d.ts +4 -0
  346. package/lib/mol-model-props/computed/representations/interactions.d.ts +12 -0
  347. package/lib/mol-model-props/integrative/cross-link-restraint/representation.d.ts +16 -0
  348. package/lib/mol-plugin/behavior/dynamic/representation.d.ts +2 -2
  349. package/lib/mol-plugin/behavior/dynamic/selection/structure-focus-representation.d.ts +5 -0
  350. package/lib/mol-plugin/behavior/dynamic/selection/structure-focus-representation.js +4 -2
  351. package/lib/mol-plugin/behavior/dynamic/selection/structure-focus-representation.js.map +1 -1
  352. package/lib/mol-plugin/commands.d.ts +9 -7
  353. package/lib/mol-plugin/spec.js +1 -0
  354. package/lib/mol-plugin/spec.js.map +1 -1
  355. package/lib/mol-plugin/util/viewport-screenshot.d.ts +3 -0
  356. package/lib/mol-plugin/version.js +2 -2
  357. package/lib/mol-plugin-state/builder/structure/representation-preset.d.ts +4 -4
  358. package/lib/mol-plugin-state/helpers/structure-substance.d.ts +13 -0
  359. package/lib/mol-plugin-state/helpers/structure-substance.js +121 -0
  360. package/lib/mol-plugin-state/helpers/structure-substance.js.map +1 -0
  361. package/lib/mol-plugin-state/manager/structure/component.d.ts +9 -2
  362. package/lib/mol-plugin-state/manager/structure/component.js +44 -22
  363. package/lib/mol-plugin-state/manager/structure/component.js.map +1 -1
  364. package/lib/mol-plugin-state/transforms/representation.d.ts +31 -4
  365. package/lib/mol-plugin-state/transforms/representation.js +119 -0
  366. package/lib/mol-plugin-state/transforms/representation.js.map +1 -1
  367. package/lib/mol-plugin-ui/viewport/simple-settings.js +2 -5
  368. package/lib/mol-plugin-ui/viewport/simple-settings.js.map +1 -1
  369. package/lib/mol-repr/representation.d.ts +3 -0
  370. package/lib/mol-repr/representation.js +7 -1
  371. package/lib/mol-repr/representation.js.map +1 -1
  372. package/lib/mol-repr/shape/loci/angle.d.ts +5 -1
  373. package/lib/mol-repr/shape/loci/common.d.ts +5 -1
  374. package/lib/mol-repr/shape/loci/dihedral.d.ts +5 -1
  375. package/lib/mol-repr/shape/loci/distance.d.ts +5 -1
  376. package/lib/mol-repr/shape/loci/label.d.ts +5 -1
  377. package/lib/mol-repr/shape/loci/orientation.d.ts +4 -0
  378. package/lib/mol-repr/shape/loci/plane.d.ts +4 -0
  379. package/lib/mol-repr/shape/model/unitcell.d.ts +4 -0
  380. package/lib/mol-repr/shape/representation.js +3 -0
  381. package/lib/mol-repr/shape/representation.js.map +1 -1
  382. package/lib/mol-repr/structure/complex-representation.js +6 -0
  383. package/lib/mol-repr/structure/complex-representation.js.map +1 -1
  384. package/lib/mol-repr/structure/complex-visual.d.ts +25 -1
  385. package/lib/mol-repr/structure/complex-visual.js +4 -0
  386. package/lib/mol-repr/structure/complex-visual.js.map +1 -1
  387. package/lib/mol-repr/structure/params.d.ts +33 -1
  388. package/lib/mol-repr/structure/registry.d.ts +57 -1
  389. package/lib/mol-repr/structure/representation/backbone.d.ts +12 -0
  390. package/lib/mol-repr/structure/representation/ball-and-stick.d.ts +12 -0
  391. package/lib/mol-repr/structure/representation/carbohydrate.d.ts +12 -0
  392. package/lib/mol-repr/structure/representation/cartoon.d.ts +12 -0
  393. package/lib/mol-repr/structure/representation/ellipsoid.d.ts +12 -0
  394. package/lib/mol-repr/structure/representation/gaussian-surface.d.ts +12 -0
  395. package/lib/mol-repr/structure/representation/gaussian-volume.d.ts +12 -0
  396. package/lib/mol-repr/structure/representation/label.d.ts +15 -3
  397. package/lib/mol-repr/structure/representation/line.d.ts +12 -0
  398. package/lib/mol-repr/structure/representation/molecular-surface.d.ts +12 -0
  399. package/lib/mol-repr/structure/representation/orientation.d.ts +12 -0
  400. package/lib/mol-repr/structure/representation/point.d.ts +12 -0
  401. package/lib/mol-repr/structure/representation/putty.d.ts +12 -0
  402. package/lib/mol-repr/structure/representation/spacefill.d.ts +12 -0
  403. package/lib/mol-repr/structure/units-representation.js +8 -2
  404. package/lib/mol-repr/structure/units-representation.js.map +1 -1
  405. package/lib/mol-repr/structure/units-visual.d.ts +33 -1
  406. package/lib/mol-repr/structure/units-visual.js +4 -0
  407. package/lib/mol-repr/structure/units-visual.js.map +1 -1
  408. package/lib/mol-repr/structure/visual/bond-inter-unit-cylinder.d.ts +8 -0
  409. package/lib/mol-repr/structure/visual/bond-inter-unit-line.d.ts +4 -0
  410. package/lib/mol-repr/structure/visual/bond-intra-unit-cylinder.d.ts +8 -0
  411. package/lib/mol-repr/structure/visual/bond-intra-unit-line.d.ts +4 -0
  412. package/lib/mol-repr/structure/visual/carbohydrate-link-cylinder.d.ts +4 -0
  413. package/lib/mol-repr/structure/visual/carbohydrate-symbol-mesh.d.ts +4 -0
  414. package/lib/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.d.ts +4 -0
  415. package/lib/mol-repr/structure/visual/element-cross.d.ts +4 -0
  416. package/lib/mol-repr/structure/visual/element-point.d.ts +4 -0
  417. package/lib/mol-repr/structure/visual/element-sphere.d.ts +8 -0
  418. package/lib/mol-repr/structure/visual/ellipsoid-mesh.d.ts +4 -0
  419. package/lib/mol-repr/structure/visual/gaussian-density-volume.d.ts +8 -0
  420. package/lib/mol-repr/structure/visual/gaussian-surface-mesh.d.ts +16 -0
  421. package/lib/mol-repr/structure/visual/gaussian-surface-wireframe.d.ts +4 -0
  422. package/lib/mol-repr/structure/visual/label-text.d.ts +5 -1
  423. package/lib/mol-repr/structure/visual/molecular-surface-mesh.d.ts +4 -0
  424. package/lib/mol-repr/structure/visual/molecular-surface-wireframe.d.ts +4 -0
  425. package/lib/mol-repr/structure/visual/nucleotide-block-mesh.d.ts +4 -0
  426. package/lib/mol-repr/structure/visual/nucleotide-ring-mesh.d.ts +4 -0
  427. package/lib/mol-repr/structure/visual/orientation-ellipsoid-mesh.d.ts +4 -0
  428. package/lib/mol-repr/structure/visual/polymer-backbone-cylinder.d.ts +8 -0
  429. package/lib/mol-repr/structure/visual/polymer-backbone-sphere.d.ts +8 -0
  430. package/lib/mol-repr/structure/visual/polymer-direction-wedge.d.ts +4 -0
  431. package/lib/mol-repr/structure/visual/polymer-gap-cylinder.d.ts +4 -0
  432. package/lib/mol-repr/structure/visual/polymer-trace-mesh.d.ts +4 -0
  433. package/lib/mol-repr/structure/visual/polymer-tube-mesh.d.ts +4 -0
  434. package/lib/mol-repr/visual.d.ts +3 -0
  435. package/lib/mol-repr/visual.js +55 -4
  436. package/lib/mol-repr/visual.js.map +1 -1
  437. package/lib/mol-repr/volume/direct-volume.d.ts +12 -0
  438. package/lib/mol-repr/volume/isosurface.d.ts +24 -0
  439. package/lib/mol-repr/volume/registry.d.ts +12 -0
  440. package/lib/mol-repr/volume/representation.d.ts +4 -0
  441. package/lib/mol-repr/volume/representation.js +3 -0
  442. package/lib/mol-repr/volume/representation.js.map +1 -1
  443. package/lib/mol-repr/volume/slice.d.ts +12 -0
  444. package/lib/mol-theme/overpaint.js +1 -1
  445. package/lib/mol-theme/overpaint.js.map +1 -1
  446. package/lib/mol-theme/substance.d.ts +43 -0
  447. package/lib/mol-theme/substance.js +128 -0
  448. package/lib/mol-theme/substance.js.map +1 -0
  449. package/lib/mol-util/material.d.ts +32 -0
  450. package/lib/mol-util/material.js +47 -0
  451. package/lib/mol-util/material.js.map +1 -0
  452. package/lib/mol-util/number.d.ts +1 -0
  453. package/lib/mol-util/number.js +3 -0
  454. package/lib/mol-util/number.js.map +1 -1
  455. package/lib/tsconfig.commonjs.tsbuildinfo +1 -1
  456. package/package.json +1 -1
@@ -0,0 +1,128 @@
1
+ /**
2
+ * Copyright (c) 2021 mol* contributors, licensed under MIT, See LICENSE file for more info.
3
+ *
4
+ * @author Alexander Rose <alexander.rose@weirdbyte.de>
5
+ */
6
+ import { Loci } from '../mol-model/loci';
7
+ import { StructureElement } from '../mol-model/structure';
8
+ import { Script } from '../mol-script/script';
9
+ import { Material } from '../mol-util/material';
10
+ export { Substance };
11
+ function Substance(layers) {
12
+ return { layers: layers };
13
+ }
14
+ (function (Substance) {
15
+ Substance.Empty = { layers: [] };
16
+ function areEqual(sA, sB) {
17
+ if (sA.layers.length === 0 && sB.layers.length === 0)
18
+ return true;
19
+ if (sA.layers.length !== sB.layers.length)
20
+ return false;
21
+ for (var i = 0, il = sA.layers.length; i < il; ++i) {
22
+ if (sA.layers[i].clear !== sB.layers[i].clear)
23
+ return false;
24
+ if (sA.layers[i].material !== sB.layers[i].material)
25
+ return false;
26
+ if (!Loci.areEqual(sA.layers[i].loci, sB.layers[i].loci))
27
+ return false;
28
+ }
29
+ return true;
30
+ }
31
+ Substance.areEqual = areEqual;
32
+ function isEmpty(overpaint) {
33
+ return overpaint.layers.length === 0;
34
+ }
35
+ Substance.isEmpty = isEmpty;
36
+ function remap(substance, structure) {
37
+ var layers = [];
38
+ for (var _i = 0, _a = substance.layers; _i < _a.length; _i++) {
39
+ var layer = _a[_i];
40
+ var loci = layer.loci, material = layer.material, clear = layer.clear;
41
+ loci = StructureElement.Loci.remap(loci, structure);
42
+ if (!StructureElement.Loci.isEmpty(loci)) {
43
+ layers.push({ loci: loci, material: material, clear: clear });
44
+ }
45
+ }
46
+ return { layers: layers };
47
+ }
48
+ Substance.remap = remap;
49
+ function merge(substance) {
50
+ if (isEmpty(substance))
51
+ return substance;
52
+ var structure = substance.layers[0].loci.structure;
53
+ var map = new Map();
54
+ var shadowed = StructureElement.Loci.none(structure);
55
+ for (var i = 0, il = substance.layers.length; i < il; ++i) {
56
+ var _a = substance.layers[il - i - 1], loci = _a.loci, material = _a.material, clear = _a.clear; // process from end
57
+ loci = StructureElement.Loci.subtract(loci, shadowed);
58
+ shadowed = StructureElement.Loci.union(loci, shadowed);
59
+ if (!StructureElement.Loci.isEmpty(loci)) {
60
+ var materialOrClear = clear ? -1 : material;
61
+ if (map.has(materialOrClear)) {
62
+ loci = StructureElement.Loci.union(loci, map.get(materialOrClear));
63
+ }
64
+ map.set(materialOrClear, loci);
65
+ }
66
+ }
67
+ var layers = [];
68
+ map.forEach(function (loci, materialOrClear) {
69
+ var clear = materialOrClear === -1;
70
+ var material = clear ? Material(0) : materialOrClear;
71
+ layers.push({ loci: loci, material: material, clear: clear });
72
+ });
73
+ return { layers: layers };
74
+ }
75
+ Substance.merge = merge;
76
+ function filter(substance, filter) {
77
+ if (isEmpty(substance))
78
+ return substance;
79
+ var structure = substance.layers[0].loci.structure;
80
+ var layers = [];
81
+ for (var _i = 0, _a = substance.layers; _i < _a.length; _i++) {
82
+ var layer = _a[_i];
83
+ var loci = layer.loci, material = layer.material, clear = layer.clear;
84
+ // filter by first map to the `filter` structure and
85
+ // then map back to the original structure of the substance loci
86
+ var filtered = StructureElement.Loci.remap(loci, filter);
87
+ loci = StructureElement.Loci.remap(filtered, structure);
88
+ if (!StructureElement.Loci.isEmpty(loci)) {
89
+ layers.push({ loci: loci, material: material, clear: clear });
90
+ }
91
+ }
92
+ return { layers: layers };
93
+ }
94
+ Substance.filter = filter;
95
+ function ofScript(scriptLayers, structure) {
96
+ var layers = [];
97
+ for (var i = 0, il = scriptLayers.length; i < il; ++i) {
98
+ var _a = scriptLayers[i], script = _a.script, material = _a.material, clear = _a.clear;
99
+ var loci = Script.toLoci(script, structure);
100
+ if (!StructureElement.Loci.isEmpty(loci)) {
101
+ layers.push({ loci: loci, material: material, clear: clear });
102
+ }
103
+ }
104
+ return { layers: layers };
105
+ }
106
+ Substance.ofScript = ofScript;
107
+ function ofBundle(bundleLayers, structure) {
108
+ var layers = [];
109
+ for (var i = 0, il = bundleLayers.length; i < il; ++i) {
110
+ var _a = bundleLayers[i], bundle = _a.bundle, material = _a.material, clear = _a.clear;
111
+ var loci = StructureElement.Bundle.toLoci(bundle, structure.root);
112
+ layers.push({ loci: loci, material: material, clear: clear });
113
+ }
114
+ return { layers: layers };
115
+ }
116
+ Substance.ofBundle = ofBundle;
117
+ function toBundle(overpaint) {
118
+ var layers = [];
119
+ for (var i = 0, il = overpaint.layers.length; i < il; ++i) {
120
+ var _a = overpaint.layers[i], loci = _a.loci, material = _a.material, clear = _a.clear;
121
+ var bundle = StructureElement.Bundle.fromLoci(loci);
122
+ layers.push({ bundle: bundle, material: material, clear: clear });
123
+ }
124
+ return { layers: layers };
125
+ }
126
+ Substance.toBundle = toBundle;
127
+ })(Substance || (Substance = {}));
128
+ //# sourceMappingURL=substance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"substance.js","sourceRoot":"","sources":["../../src/mol-theme/substance.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Copyright (c) 2021 mol* contributors, licensed under MIT, See LICENSE file for more info.
3
+ *
4
+ * @author Alexander Rose <alexander.rose@weirdbyte.de>
5
+ */
6
+ import { NumberArray } from './type-helpers';
7
+ import { ParamDefinition as PD } from './param-definition';
8
+ /** Material properties expressed as a single number */
9
+ export declare type Material = {
10
+ readonly '@type': 'material';
11
+ } & number;
12
+ export declare function Material(hex: number): Material;
13
+ export declare namespace Material {
14
+ function fromNormalized(metalness: number, roughness: number): Material;
15
+ function fromObjectNormalized(v: {
16
+ metalness: number;
17
+ roughness: number;
18
+ }): Material;
19
+ function toObjectNormalized(material: Material, fractionDigits?: number): {
20
+ metalness: number;
21
+ roughness: number;
22
+ };
23
+ function toArray(material: Material, array: NumberArray, offset: number): NumberArray;
24
+ function toString(material: Material): string;
25
+ function getParam(info?: {
26
+ isExpanded?: boolean;
27
+ isFlat?: boolean;
28
+ }): PD.Converted<Material, PD.Normalize<{
29
+ metalness: number;
30
+ roughness: number;
31
+ }>>;
32
+ }
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Copyright (c) 2021 mol* contributors, licensed under MIT, See LICENSE file for more info.
3
+ *
4
+ * @author Alexander Rose <alexander.rose@weirdbyte.de>
5
+ */
6
+ import { ParamDefinition as PD } from './param-definition';
7
+ import { toFixed } from './number';
8
+ export function Material(hex) { return hex; }
9
+ (function (Material) {
10
+ function fromNormalized(metalness, roughness) {
11
+ return (((metalness * 255) << 16) | ((roughness * 255) << 8));
12
+ }
13
+ Material.fromNormalized = fromNormalized;
14
+ function fromObjectNormalized(v) {
15
+ return fromNormalized(v.metalness, v.roughness);
16
+ }
17
+ Material.fromObjectNormalized = fromObjectNormalized;
18
+ function toObjectNormalized(material, fractionDigits) {
19
+ var metalness = (material >> 16 & 255) / 255;
20
+ var roughness = (material >> 8 & 255) / 255;
21
+ return {
22
+ metalness: fractionDigits ? toFixed(metalness, fractionDigits) : metalness,
23
+ roughness: fractionDigits ? toFixed(roughness, fractionDigits) : roughness
24
+ };
25
+ }
26
+ Material.toObjectNormalized = toObjectNormalized;
27
+ function toArray(material, array, offset) {
28
+ array[offset] = (material >> 16 & 255);
29
+ array[offset + 1] = (material >> 8 & 255);
30
+ return array;
31
+ }
32
+ Material.toArray = toArray;
33
+ function toString(material) {
34
+ var metalness = (material >> 16 & 255) / 255;
35
+ var roughness = (material >> 8 & 255) / 255;
36
+ return "M ".concat(metalness, " | R ").concat(roughness);
37
+ }
38
+ Material.toString = toString;
39
+ function getParam(info) {
40
+ return PD.Converted(function (v) { return toObjectNormalized(v, 2); }, function (v) { return fromObjectNormalized(v); }, PD.Group({
41
+ metalness: PD.Numeric(0, { min: 0, max: 1, step: 0.01 }),
42
+ roughness: PD.Numeric(1, { min: 0, max: 1, step: 0.01 }),
43
+ }, info));
44
+ }
45
+ Material.getParam = getParam;
46
+ })(Material || (Material = {}));
47
+ //# sourceMappingURL=material.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"material.js","sourceRoot":"","sources":["../../src/mol-util/material.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,eAAe,IAAI,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAKnC,MAAM,UAAU,QAAQ,CAAC,GAAW,IAAI,OAAO,GAAe,CAAC,CAAC,CAAC;AAEjE,WAAiB,QAAQ;IACrB,SAAgB,cAAc,CAAC,SAAiB,EAAE,SAAiB;QAC/D,OAAO,CAAC,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAa,CAAC;IAC9E,CAAC;IAFe,uBAAc,iBAE7B,CAAA;IAED,SAAgB,oBAAoB,CAAC,CAA2C;QAC5E,OAAO,cAAc,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;IACpD,CAAC;IAFe,6BAAoB,uBAEnC,CAAA;IAED,SAAgB,kBAAkB,CAAC,QAAkB,EAAE,cAAuB;QAC1E,IAAM,SAAS,GAAG,CAAC,QAAQ,IAAI,EAAE,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QAC/C,IAAM,SAAS,GAAG,CAAC,QAAQ,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QAC9C,OAAO;YACH,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS;YAC1E,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS;SAC7E,CAAC;IACN,CAAC;IAPe,2BAAkB,qBAOjC,CAAA;IAED,SAAgB,OAAO,CAAC,QAAkB,EAAE,KAAkB,EAAE,MAAc;QAC1E,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,GAAG,GAAG,CAAC,CAAC;QACvC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QAC1C,OAAO,KAAK,CAAC;IACjB,CAAC;IAJe,gBAAO,UAItB,CAAA;IAED,SAAgB,QAAQ,CAAC,QAAkB;QACvC,IAAM,SAAS,GAAG,CAAC,QAAQ,IAAI,EAAE,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QAC/C,IAAM,SAAS,GAAG,CAAC,QAAQ,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QAC9C,OAAO,YAAK,SAAS,kBAAQ,SAAS,CAAE,CAAC;IAC7C,CAAC;IAJe,iBAAQ,WAIvB,CAAA;IAED,SAAgB,QAAQ,CAAC,IAAiD;QACtE,OAAO,EAAE,CAAC,SAAS,CACf,UAAC,CAAW,IAAK,OAAA,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAxB,CAAwB,EACzC,UAAC,CAA2C,IAAK,OAAA,oBAAoB,CAAC,CAAC,CAAC,EAAvB,CAAuB,EACxE,EAAE,CAAC,KAAK,CAAC;YACL,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YACxD,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;SAC3D,EAAE,IAAI,CAAC,CACX,CAAC;IACN,CAAC;IATe,iBAAQ,WASvB,CAAA;AACL,CAAC,EAxCgB,QAAQ,KAAR,QAAQ,QAwCxB"}
@@ -23,3 +23,4 @@ export declare function getArrayDigitCount(xs: ArrayLike<number>, maxDigits: num
23
23
  export declare function isInteger(s: string): boolean;
24
24
  export declare function getPrecision(v: number): number;
25
25
  export declare function toPrecision(v: number, precision: number): number;
26
+ export declare function toFixed(v: number, fractionDigits: number): number;
@@ -69,4 +69,7 @@ export function getPrecision(v) {
69
69
  export function toPrecision(v, precision) {
70
70
  return parseFloat(v.toPrecision(precision));
71
71
  }
72
+ export function toFixed(v, fractionDigits) {
73
+ return parseFloat(v.toFixed(fractionDigits));
74
+ }
72
75
  //# sourceMappingURL=number.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"number.js","sourceRoot":"","sources":["../../src/mol-util/number.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"number.js","sourceRoot":"","sources":["../../src/mol-util/number.ts"],"names":[],"mappings":"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"}