molstar 4.2.0 → 4.3.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 (339) hide show
  1. package/LICENSE +20 -20
  2. package/README.md +197 -197
  3. package/build/viewer/embedded.html +52 -52
  4. package/build/viewer/index.html +129 -129
  5. package/build/viewer/molstar.js +1 -1
  6. package/build/viewer/molstar.js.LICENSE.txt +9 -0
  7. package/lib/apps/docking-viewer/index.html +36 -36
  8. package/lib/apps/mesoscale-explorer/index.html +100 -100
  9. package/lib/apps/mesoscale-explorer/style.scss +33 -33
  10. package/lib/apps/viewer/app.d.ts +2 -1
  11. package/lib/apps/viewer/app.js +2 -1
  12. package/lib/apps/viewer/embedded.html +52 -52
  13. package/lib/apps/viewer/index.html +129 -129
  14. package/lib/cli/chem-comp-dict/create-ions.js +9 -9
  15. package/lib/cli/chem-comp-dict/create-saccharides.js +9 -9
  16. package/lib/cli/cifschema/util/generate.js +12 -12
  17. package/lib/cli/lipid-params/index.js +9 -9
  18. package/lib/commonjs/apps/viewer/app.d.ts +2 -1
  19. package/lib/commonjs/apps/viewer/app.js +1 -0
  20. package/lib/commonjs/cli/chem-comp-dict/create-ions.js +9 -9
  21. package/lib/commonjs/cli/chem-comp-dict/create-saccharides.js +9 -9
  22. package/lib/commonjs/cli/cifschema/util/generate.js +12 -12
  23. package/lib/commonjs/cli/lipid-params/index.js +9 -9
  24. package/lib/commonjs/examples/alpha-orbitals/example-data.js +160 -160
  25. package/lib/commonjs/extensions/alpha-orbitals/gpu/shader.frag.js +136 -136
  26. package/lib/commonjs/extensions/assembly-symmetry/prop.js +24 -24
  27. package/lib/commonjs/extensions/dnatco/confal-pyramids/behavior.js +5 -5
  28. package/lib/commonjs/extensions/dnatco/ntc-tube/behavior.js +5 -5
  29. package/lib/commonjs/extensions/geo-export/usdz-exporter.js +41 -41
  30. package/lib/commonjs/extensions/meshes/mesh-extension.d.ts +1 -0
  31. package/lib/commonjs/extensions/mp4-export/encoder.js +1 -1
  32. package/lib/commonjs/extensions/mvs/components/annotation-label/representation.d.ts +0 -2
  33. package/lib/commonjs/extensions/mvs/components/custom-label/representation.d.ts +2 -2
  34. package/lib/commonjs/extensions/mvs/tree/mvs/mvs-builder.d.ts +8 -2
  35. package/lib/commonjs/extensions/sb-ncbr/index.d.ts +8 -0
  36. package/lib/commonjs/extensions/sb-ncbr/index.js +14 -1
  37. package/lib/commonjs/extensions/sb-ncbr/tunnels/actions.d.ts +20 -0
  38. package/lib/commonjs/extensions/sb-ncbr/tunnels/actions.js +89 -0
  39. package/lib/commonjs/extensions/sb-ncbr/tunnels/algorithm.d.ts +26 -0
  40. package/lib/commonjs/extensions/sb-ncbr/tunnels/algorithm.js +474 -0
  41. package/lib/commonjs/extensions/sb-ncbr/tunnels/behavior.d.ts +40 -0
  42. package/lib/commonjs/extensions/sb-ncbr/tunnels/behavior.js +96 -0
  43. package/lib/commonjs/extensions/sb-ncbr/tunnels/data-model.d.ts +146 -0
  44. package/lib/commonjs/extensions/sb-ncbr/tunnels/data-model.js +28 -0
  45. package/lib/commonjs/extensions/sb-ncbr/tunnels/examples.d.ts +12 -0
  46. package/lib/commonjs/extensions/sb-ncbr/tunnels/examples.js +54 -0
  47. package/lib/commonjs/extensions/sb-ncbr/tunnels/props.d.ts +19 -0
  48. package/lib/commonjs/extensions/sb-ncbr/tunnels/props.js +26 -0
  49. package/lib/commonjs/extensions/sb-ncbr/tunnels/representation.d.ts +29 -0
  50. package/lib/commonjs/extensions/sb-ncbr/tunnels/representation.js +99 -0
  51. package/lib/commonjs/mol-canvas3d/canvas3d.d.ts +17 -0
  52. package/lib/commonjs/mol-canvas3d/canvas3d.js +4 -0
  53. package/lib/commonjs/mol-canvas3d/passes/dof.d.ts +34 -0
  54. package/lib/commonjs/mol-canvas3d/passes/dof.js +167 -0
  55. package/lib/commonjs/mol-canvas3d/passes/draw.d.ts +2 -0
  56. package/lib/commonjs/mol-canvas3d/passes/draw.js +31 -8
  57. package/lib/commonjs/mol-canvas3d/passes/image.d.ts +8 -0
  58. package/lib/commonjs/mol-canvas3d/passes/postprocessing.d.ts +8 -0
  59. package/lib/commonjs/mol-canvas3d/passes/postprocessing.js +5 -0
  60. package/lib/commonjs/mol-geo/geometry/lines/lines.d.ts +0 -1
  61. package/lib/commonjs/mol-gl/shader/background.frag.js +95 -95
  62. package/lib/commonjs/mol-gl/shader/background.vert.js +11 -11
  63. package/lib/commonjs/mol-gl/shader/blend-back-dpoit.frag.js +13 -13
  64. package/lib/commonjs/mol-gl/shader/bloom/blur.frag.js +28 -28
  65. package/lib/commonjs/mol-gl/shader/bloom/composite.frag.js +33 -33
  66. package/lib/commonjs/mol-gl/shader/bloom/luminosity.frag.js +52 -52
  67. package/lib/commonjs/mol-gl/shader/cas.frag.js +144 -144
  68. package/lib/commonjs/mol-gl/shader/chunks/apply-fog.glsl.js +31 -31
  69. package/lib/commonjs/mol-gl/shader/chunks/apply-interior-color.glsl.js +12 -12
  70. package/lib/commonjs/mol-gl/shader/chunks/apply-light-color.glsl.js +77 -77
  71. package/lib/commonjs/mol-gl/shader/chunks/apply-marker-color.glsl.js +16 -16
  72. package/lib/commonjs/mol-gl/shader/chunks/assign-clipping-varying.glsl.js +8 -8
  73. package/lib/commonjs/mol-gl/shader/chunks/assign-color-varying.glsl.js +140 -140
  74. package/lib/commonjs/mol-gl/shader/chunks/assign-group.glsl.js +6 -6
  75. package/lib/commonjs/mol-gl/shader/chunks/assign-marker-varying.glsl.js +8 -8
  76. package/lib/commonjs/mol-gl/shader/chunks/assign-material-color.glsl.js +112 -112
  77. package/lib/commonjs/mol-gl/shader/chunks/assign-position.glsl.js +14 -14
  78. package/lib/commonjs/mol-gl/shader/chunks/assign-size.glsl.js +18 -18
  79. package/lib/commonjs/mol-gl/shader/chunks/check-picking-alpha.glsl.js +12 -12
  80. package/lib/commonjs/mol-gl/shader/chunks/check-transparency.glsl.js +16 -16
  81. package/lib/commonjs/mol-gl/shader/chunks/clip-instance.glsl.js +7 -7
  82. package/lib/commonjs/mol-gl/shader/chunks/clip-pixel.glsl.js +5 -5
  83. package/lib/commonjs/mol-gl/shader/chunks/color-frag-params.glsl.js +60 -60
  84. package/lib/commonjs/mol-gl/shader/chunks/color-vert-params.glsl.js +122 -122
  85. package/lib/commonjs/mol-gl/shader/chunks/common-clip.glsl.js +104 -104
  86. package/lib/commonjs/mol-gl/shader/chunks/common-frag-params.glsl.js +150 -150
  87. package/lib/commonjs/mol-gl/shader/chunks/common-vert-params.glsl.js +61 -61
  88. package/lib/commonjs/mol-gl/shader/chunks/common.glsl.js +234 -234
  89. package/lib/commonjs/mol-gl/shader/chunks/dpoit-write.glsl.js +62 -62
  90. package/lib/commonjs/mol-gl/shader/chunks/fade-lod.glsl.js +42 -42
  91. package/lib/commonjs/mol-gl/shader/chunks/float-to-rgba.glsl.js +39 -39
  92. package/lib/commonjs/mol-gl/shader/chunks/light-frag-params.glsl.js +127 -127
  93. package/lib/commonjs/mol-gl/shader/chunks/matrix-scale.glsl.js +5 -5
  94. package/lib/commonjs/mol-gl/shader/chunks/normal-frag-params.glsl.js +2 -2
  95. package/lib/commonjs/mol-gl/shader/chunks/read-from-texture.glsl.js +14 -14
  96. package/lib/commonjs/mol-gl/shader/chunks/rgba-to-float.glsl.js +84 -84
  97. package/lib/commonjs/mol-gl/shader/chunks/size-vert-params.glsl.js +11 -11
  98. package/lib/commonjs/mol-gl/shader/chunks/texture3d-from-1d-trilinear.glsl.js +23 -23
  99. package/lib/commonjs/mol-gl/shader/chunks/texture3d-from-2d-linear.glsl.js +17 -17
  100. package/lib/commonjs/mol-gl/shader/chunks/texture3d-from-2d-nearest.glsl.js +8 -8
  101. package/lib/commonjs/mol-gl/shader/chunks/wboit-write.glsl.js +25 -25
  102. package/lib/commonjs/mol-gl/shader/compose.frag.js +12 -12
  103. package/lib/commonjs/mol-gl/shader/compute/color-smoothing/accumulate.frag.js +23 -23
  104. package/lib/commonjs/mol-gl/shader/compute/color-smoothing/accumulate.vert.js +43 -43
  105. package/lib/commonjs/mol-gl/shader/compute/color-smoothing/normalize.frag.js +15 -15
  106. package/lib/commonjs/mol-gl/shader/copy.frag.js +11 -11
  107. package/lib/commonjs/mol-gl/shader/cylinders.frag.js +266 -266
  108. package/lib/commonjs/mol-gl/shader/cylinders.vert.js +89 -89
  109. package/lib/commonjs/mol-gl/shader/depth-merge.frag.js +23 -23
  110. package/lib/commonjs/mol-gl/shader/direct-volume.frag.js +362 -362
  111. package/lib/commonjs/mol-gl/shader/direct-volume.vert.js +41 -41
  112. package/lib/commonjs/mol-gl/shader/dof.frag.d.ts +7 -0
  113. package/lib/commonjs/mol-gl/shader/dof.frag.js +122 -0
  114. package/lib/commonjs/mol-gl/shader/evaluate-dpoit.frag.js +10 -10
  115. package/lib/commonjs/mol-gl/shader/evaluate-wboit.frag.js +17 -17
  116. package/lib/commonjs/mol-gl/shader/fxaa.frag.js +228 -228
  117. package/lib/commonjs/mol-gl/shader/gaussian-density.frag.js +49 -49
  118. package/lib/commonjs/mol-gl/shader/gaussian-density.vert.js +27 -27
  119. package/lib/commonjs/mol-gl/shader/hi-z.frag.js +18 -18
  120. package/lib/commonjs/mol-gl/shader/histogram-pyramid/reduction.frag.js +58 -58
  121. package/lib/commonjs/mol-gl/shader/histogram-pyramid/sum.frag.js +19 -19
  122. package/lib/commonjs/mol-gl/shader/image.frag.js +169 -169
  123. package/lib/commonjs/mol-gl/shader/image.vert.js +21 -21
  124. package/lib/commonjs/mol-gl/shader/lines.frag.js +42 -42
  125. package/lib/commonjs/mol-gl/shader/lines.vert.js +117 -117
  126. package/lib/commonjs/mol-gl/shader/marching-cubes/active-voxels.frag.js +70 -70
  127. package/lib/commonjs/mol-gl/shader/marching-cubes/isosurface.frag.js +311 -311
  128. package/lib/commonjs/mol-gl/shader/marking/edge.frag.js +28 -28
  129. package/lib/commonjs/mol-gl/shader/marking/overlay.frag.js +26 -26
  130. package/lib/commonjs/mol-gl/shader/mesh.frag.js +65 -65
  131. package/lib/commonjs/mol-gl/shader/mesh.vert.js +49 -49
  132. package/lib/commonjs/mol-gl/shader/outlines.frag.js +95 -95
  133. package/lib/commonjs/mol-gl/shader/points.frag.js +59 -59
  134. package/lib/commonjs/mol-gl/shader/points.vert.js +38 -38
  135. package/lib/commonjs/mol-gl/shader/postprocessing.frag.js +150 -150
  136. package/lib/commonjs/mol-gl/shader/quad.vert.js +10 -10
  137. package/lib/commonjs/mol-gl/shader/shadows.frag.js +123 -123
  138. package/lib/commonjs/mol-gl/shader/smaa/blend.frag.js +56 -56
  139. package/lib/commonjs/mol-gl/shader/smaa/blend.vert.js +25 -25
  140. package/lib/commonjs/mol-gl/shader/smaa/edges.frag.js +66 -66
  141. package/lib/commonjs/mol-gl/shader/smaa/edges.vert.js +26 -26
  142. package/lib/commonjs/mol-gl/shader/smaa/weights.frag.js +206 -206
  143. package/lib/commonjs/mol-gl/shader/smaa/weights.vert.js +32 -32
  144. package/lib/commonjs/mol-gl/shader/spheres.frag.js +148 -148
  145. package/lib/commonjs/mol-gl/shader/spheres.vert.js +132 -132
  146. package/lib/commonjs/mol-gl/shader/ssao-blur.frag.js +97 -97
  147. package/lib/commonjs/mol-gl/shader/ssao.frag.js +211 -211
  148. package/lib/commonjs/mol-gl/shader/text.frag.js +85 -85
  149. package/lib/commonjs/mol-gl/shader/text.vert.js +85 -85
  150. package/lib/commonjs/mol-gl/shader/util/grid3d-template.frag.js +46 -46
  151. package/lib/commonjs/mol-gl/shader-code.js +15 -15
  152. package/lib/commonjs/mol-gl/webgl/compat.js +12 -12
  153. package/lib/commonjs/mol-gl/webgl/context.js +1 -0
  154. package/lib/commonjs/mol-gl/webgl/timer.d.ts +1 -1
  155. package/lib/commonjs/mol-gl/webgl/timer.js +8 -1
  156. package/lib/commonjs/mol-math/linear-algebra/3d/minimize-rmsd.js +2 -1
  157. package/lib/commonjs/mol-plugin/animation-loop.d.ts +1 -0
  158. package/lib/commonjs/mol-plugin/behavior/dynamic/volume-streaming/behavior.d.ts +6 -6
  159. package/lib/commonjs/mol-plugin/behavior/dynamic/volume-streaming/model.d.ts +1 -1
  160. package/lib/commonjs/mol-plugin/behavior/dynamic/volume-streaming/transformers.d.ts +3 -3
  161. package/lib/commonjs/mol-plugin-state/animation/built-in/state-snapshots.js +7 -3
  162. package/lib/commonjs/mol-plugin-ui/viewport/simple-settings.js +3 -0
  163. package/lib/commonjs/servers/common/swagger-ui/indexTemplate.js +66 -66
  164. package/lib/commonjs/servers/volume/config.js +5 -5
  165. package/lib/examples/alpha-orbitals/example-data.js +160 -160
  166. package/lib/examples/alpha-orbitals/index.html +72 -72
  167. package/lib/examples/basic-wrapper/index.html +137 -137
  168. package/lib/examples/lighting/index.html +88 -88
  169. package/lib/examples/proteopedia-wrapper/index.html +236 -236
  170. package/lib/extensions/alpha-orbitals/gpu/shader.frag.js +136 -136
  171. package/lib/extensions/assembly-symmetry/prop.js +24 -24
  172. package/lib/extensions/dnatco/confal-pyramids/behavior.js +5 -5
  173. package/lib/extensions/dnatco/ntc-tube/behavior.js +5 -5
  174. package/lib/extensions/geo-export/usdz-exporter.js +41 -41
  175. package/lib/extensions/meshes/mesh-extension.d.ts +1 -0
  176. package/lib/extensions/mp4-export/encoder.js +1 -1
  177. package/lib/extensions/mvs/components/annotation-label/representation.d.ts +0 -2
  178. package/lib/extensions/mvs/components/custom-label/representation.d.ts +2 -2
  179. package/lib/extensions/mvs/tree/mvs/mvs-builder.d.ts +8 -2
  180. package/lib/extensions/sb-ncbr/index.d.ts +8 -0
  181. package/lib/extensions/sb-ncbr/index.js +8 -0
  182. package/lib/extensions/sb-ncbr/tunnels/actions.d.ts +20 -0
  183. package/lib/extensions/sb-ncbr/tunnels/actions.js +86 -0
  184. package/lib/extensions/sb-ncbr/tunnels/algorithm.d.ts +26 -0
  185. package/lib/extensions/sb-ncbr/tunnels/algorithm.js +469 -0
  186. package/lib/extensions/sb-ncbr/tunnels/behavior.d.ts +40 -0
  187. package/lib/extensions/sb-ncbr/tunnels/behavior.js +92 -0
  188. package/lib/extensions/sb-ncbr/tunnels/data-model.d.ts +146 -0
  189. package/lib/extensions/sb-ncbr/tunnels/data-model.js +23 -0
  190. package/lib/extensions/sb-ncbr/tunnels/examples.d.ts +12 -0
  191. package/lib/extensions/sb-ncbr/tunnels/examples.js +49 -0
  192. package/lib/extensions/sb-ncbr/tunnels/props.d.ts +19 -0
  193. package/lib/extensions/sb-ncbr/tunnels/props.js +22 -0
  194. package/lib/extensions/sb-ncbr/tunnels/representation.d.ts +29 -0
  195. package/lib/extensions/sb-ncbr/tunnels/representation.js +96 -0
  196. package/lib/mol-canvas3d/canvas3d.d.ts +17 -0
  197. package/lib/mol-canvas3d/canvas3d.js +4 -0
  198. package/lib/mol-canvas3d/passes/dof.d.ts +34 -0
  199. package/lib/mol-canvas3d/passes/dof.js +163 -0
  200. package/lib/mol-canvas3d/passes/draw.d.ts +2 -0
  201. package/lib/mol-canvas3d/passes/draw.js +31 -8
  202. package/lib/mol-canvas3d/passes/image.d.ts +8 -0
  203. package/lib/mol-canvas3d/passes/postprocessing.d.ts +8 -0
  204. package/lib/mol-canvas3d/passes/postprocessing.js +5 -0
  205. package/lib/mol-geo/geometry/lines/lines.d.ts +0 -1
  206. package/lib/mol-gl/shader/background.frag.js +95 -95
  207. package/lib/mol-gl/shader/background.vert.js +11 -11
  208. package/lib/mol-gl/shader/blend-back-dpoit.frag.js +13 -13
  209. package/lib/mol-gl/shader/bloom/blur.frag.js +28 -28
  210. package/lib/mol-gl/shader/bloom/composite.frag.js +33 -33
  211. package/lib/mol-gl/shader/bloom/luminosity.frag.js +52 -52
  212. package/lib/mol-gl/shader/cas.frag.js +144 -144
  213. package/lib/mol-gl/shader/chunks/apply-fog.glsl.js +31 -31
  214. package/lib/mol-gl/shader/chunks/apply-interior-color.glsl.js +12 -12
  215. package/lib/mol-gl/shader/chunks/apply-light-color.glsl.js +77 -77
  216. package/lib/mol-gl/shader/chunks/apply-marker-color.glsl.js +16 -16
  217. package/lib/mol-gl/shader/chunks/assign-clipping-varying.glsl.js +8 -8
  218. package/lib/mol-gl/shader/chunks/assign-color-varying.glsl.js +140 -140
  219. package/lib/mol-gl/shader/chunks/assign-group.glsl.js +6 -6
  220. package/lib/mol-gl/shader/chunks/assign-marker-varying.glsl.js +8 -8
  221. package/lib/mol-gl/shader/chunks/assign-material-color.glsl.js +112 -112
  222. package/lib/mol-gl/shader/chunks/assign-position.glsl.js +14 -14
  223. package/lib/mol-gl/shader/chunks/assign-size.glsl.js +18 -18
  224. package/lib/mol-gl/shader/chunks/check-picking-alpha.glsl.js +12 -12
  225. package/lib/mol-gl/shader/chunks/check-transparency.glsl.js +16 -16
  226. package/lib/mol-gl/shader/chunks/clip-instance.glsl.js +7 -7
  227. package/lib/mol-gl/shader/chunks/clip-pixel.glsl.js +5 -5
  228. package/lib/mol-gl/shader/chunks/color-frag-params.glsl.js +60 -60
  229. package/lib/mol-gl/shader/chunks/color-vert-params.glsl.js +122 -122
  230. package/lib/mol-gl/shader/chunks/common-clip.glsl.js +104 -104
  231. package/lib/mol-gl/shader/chunks/common-frag-params.glsl.js +150 -150
  232. package/lib/mol-gl/shader/chunks/common-vert-params.glsl.js +61 -61
  233. package/lib/mol-gl/shader/chunks/common.glsl.js +234 -234
  234. package/lib/mol-gl/shader/chunks/dpoit-write.glsl.js +62 -62
  235. package/lib/mol-gl/shader/chunks/fade-lod.glsl.js +42 -42
  236. package/lib/mol-gl/shader/chunks/float-to-rgba.glsl.js +39 -39
  237. package/lib/mol-gl/shader/chunks/light-frag-params.glsl.js +127 -127
  238. package/lib/mol-gl/shader/chunks/matrix-scale.glsl.js +5 -5
  239. package/lib/mol-gl/shader/chunks/normal-frag-params.glsl.js +2 -2
  240. package/lib/mol-gl/shader/chunks/read-from-texture.glsl.js +14 -14
  241. package/lib/mol-gl/shader/chunks/rgba-to-float.glsl.js +84 -84
  242. package/lib/mol-gl/shader/chunks/size-vert-params.glsl.js +11 -11
  243. package/lib/mol-gl/shader/chunks/texture3d-from-1d-trilinear.glsl.js +23 -23
  244. package/lib/mol-gl/shader/chunks/texture3d-from-2d-linear.glsl.js +17 -17
  245. package/lib/mol-gl/shader/chunks/texture3d-from-2d-nearest.glsl.js +8 -8
  246. package/lib/mol-gl/shader/chunks/wboit-write.glsl.js +25 -25
  247. package/lib/mol-gl/shader/compose.frag.js +12 -12
  248. package/lib/mol-gl/shader/compute/color-smoothing/accumulate.frag.js +23 -23
  249. package/lib/mol-gl/shader/compute/color-smoothing/accumulate.vert.js +43 -43
  250. package/lib/mol-gl/shader/compute/color-smoothing/normalize.frag.js +15 -15
  251. package/lib/mol-gl/shader/copy.frag.js +11 -11
  252. package/lib/mol-gl/shader/cylinders.frag.js +266 -266
  253. package/lib/mol-gl/shader/cylinders.vert.js +89 -89
  254. package/lib/mol-gl/shader/depth-merge.frag.js +23 -23
  255. package/lib/mol-gl/shader/direct-volume.frag.js +362 -362
  256. package/lib/mol-gl/shader/direct-volume.vert.js +41 -41
  257. package/lib/mol-gl/shader/dof.frag.d.ts +7 -0
  258. package/lib/mol-gl/shader/dof.frag.js +119 -0
  259. package/lib/mol-gl/shader/evaluate-dpoit.frag.js +10 -10
  260. package/lib/mol-gl/shader/evaluate-wboit.frag.js +17 -17
  261. package/lib/mol-gl/shader/fxaa.frag.js +228 -228
  262. package/lib/mol-gl/shader/gaussian-density.frag.js +49 -49
  263. package/lib/mol-gl/shader/gaussian-density.vert.js +27 -27
  264. package/lib/mol-gl/shader/hi-z.frag.js +18 -18
  265. package/lib/mol-gl/shader/histogram-pyramid/reduction.frag.js +58 -58
  266. package/lib/mol-gl/shader/histogram-pyramid/sum.frag.js +19 -19
  267. package/lib/mol-gl/shader/image.frag.js +169 -169
  268. package/lib/mol-gl/shader/image.vert.js +21 -21
  269. package/lib/mol-gl/shader/lines.frag.js +42 -42
  270. package/lib/mol-gl/shader/lines.vert.js +117 -117
  271. package/lib/mol-gl/shader/marching-cubes/active-voxels.frag.js +70 -70
  272. package/lib/mol-gl/shader/marching-cubes/isosurface.frag.js +311 -311
  273. package/lib/mol-gl/shader/marking/edge.frag.js +28 -28
  274. package/lib/mol-gl/shader/marking/overlay.frag.js +26 -26
  275. package/lib/mol-gl/shader/mesh.frag.js +65 -65
  276. package/lib/mol-gl/shader/mesh.vert.js +49 -49
  277. package/lib/mol-gl/shader/outlines.frag.js +95 -95
  278. package/lib/mol-gl/shader/points.frag.js +59 -59
  279. package/lib/mol-gl/shader/points.vert.js +38 -38
  280. package/lib/mol-gl/shader/postprocessing.frag.js +150 -150
  281. package/lib/mol-gl/shader/quad.vert.js +10 -10
  282. package/lib/mol-gl/shader/shadows.frag.js +123 -123
  283. package/lib/mol-gl/shader/smaa/blend.frag.js +56 -56
  284. package/lib/mol-gl/shader/smaa/blend.vert.js +25 -25
  285. package/lib/mol-gl/shader/smaa/edges.frag.js +66 -66
  286. package/lib/mol-gl/shader/smaa/edges.vert.js +26 -26
  287. package/lib/mol-gl/shader/smaa/weights.frag.js +206 -206
  288. package/lib/mol-gl/shader/smaa/weights.vert.js +32 -32
  289. package/lib/mol-gl/shader/spheres.frag.js +148 -148
  290. package/lib/mol-gl/shader/spheres.vert.js +132 -132
  291. package/lib/mol-gl/shader/ssao-blur.frag.js +97 -97
  292. package/lib/mol-gl/shader/ssao.frag.js +211 -211
  293. package/lib/mol-gl/shader/text.frag.js +85 -85
  294. package/lib/mol-gl/shader/text.vert.js +85 -85
  295. package/lib/mol-gl/shader/util/grid3d-template.frag.js +46 -46
  296. package/lib/mol-gl/shader-code.js +15 -15
  297. package/lib/mol-gl/webgl/compat.js +12 -12
  298. package/lib/mol-gl/webgl/context.js +1 -0
  299. package/lib/mol-gl/webgl/timer.d.ts +1 -1
  300. package/lib/mol-gl/webgl/timer.js +8 -1
  301. package/lib/mol-math/linear-algebra/3d/minimize-rmsd.js +2 -1
  302. package/lib/mol-plugin/animation-loop.d.ts +1 -0
  303. package/lib/mol-plugin/behavior/dynamic/volume-streaming/behavior.d.ts +6 -6
  304. package/lib/mol-plugin/behavior/dynamic/volume-streaming/model.d.ts +1 -1
  305. package/lib/mol-plugin/behavior/dynamic/volume-streaming/transformers.d.ts +3 -3
  306. package/lib/mol-plugin/version.js +2 -2
  307. package/lib/mol-plugin-state/animation/built-in/state-snapshots.js +7 -3
  308. package/lib/mol-plugin-ui/skin/base/base.scss +37 -37
  309. package/lib/mol-plugin-ui/skin/base/components/controls-base.scss +333 -333
  310. package/lib/mol-plugin-ui/skin/base/components/controls.scss +445 -445
  311. package/lib/mol-plugin-ui/skin/base/components/help.scss +27 -27
  312. package/lib/mol-plugin-ui/skin/base/components/line-graph.scss +67 -67
  313. package/lib/mol-plugin-ui/skin/base/components/log.scss +100 -100
  314. package/lib/mol-plugin-ui/skin/base/components/misc.scss +663 -663
  315. package/lib/mol-plugin-ui/skin/base/components/sequence.scss +125 -125
  316. package/lib/mol-plugin-ui/skin/base/components/slider.scss +165 -165
  317. package/lib/mol-plugin-ui/skin/base/components/tasks.scss +99 -99
  318. package/lib/mol-plugin-ui/skin/base/components/toast.scss +83 -83
  319. package/lib/mol-plugin-ui/skin/base/components/transformer.scss +163 -163
  320. package/lib/mol-plugin-ui/skin/base/components/viewport.scss +194 -194
  321. package/lib/mol-plugin-ui/skin/base/layout/common.scss +71 -71
  322. package/lib/mol-plugin-ui/skin/base/layout/controls-landscape.scss +89 -89
  323. package/lib/mol-plugin-ui/skin/base/layout/controls-outside.scss +98 -98
  324. package/lib/mol-plugin-ui/skin/base/layout/controls-portrait.scss +108 -108
  325. package/lib/mol-plugin-ui/skin/base/layout.scss +40 -40
  326. package/lib/mol-plugin-ui/skin/base/logo.scss +12 -12
  327. package/lib/mol-plugin-ui/skin/base/normalize.scss +209 -209
  328. package/lib/mol-plugin-ui/skin/base/ui.scss +40 -40
  329. package/lib/mol-plugin-ui/skin/base/variables.scss +88 -88
  330. package/lib/mol-plugin-ui/skin/blue.scss +1 -1
  331. package/lib/mol-plugin-ui/skin/colors/blue.scss +23 -23
  332. package/lib/mol-plugin-ui/skin/colors/dark.scss +23 -23
  333. package/lib/mol-plugin-ui/skin/colors/light.scss +29 -29
  334. package/lib/mol-plugin-ui/skin/dark.scss +1 -1
  335. package/lib/mol-plugin-ui/skin/light.scss +1 -1
  336. package/lib/mol-plugin-ui/viewport/simple-settings.js +3 -0
  337. package/lib/servers/common/swagger-ui/indexTemplate.js +66 -66
  338. package/lib/servers/volume/config.js +5 -5
  339. package/package.json +196 -195
@@ -6,89 +6,89 @@
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
8
  exports.text_frag = void 0;
9
- exports.text_frag = `
10
- precision highp float;
11
- precision highp int;
12
-
13
- #include common
14
- #include common_frag_params
15
- #include color_frag_params
16
- #include common_clip
17
-
18
- uniform sampler2D tFont;
19
-
20
- uniform vec3 uBorderColor;
21
- uniform float uBorderWidth;
22
- uniform vec3 uBackgroundColor;
23
- uniform float uBackgroundOpacity;
24
-
25
- varying vec2 vTexCoord;
26
-
27
- const float smoothness = 32.0;
28
- const float gamma = 2.2;
29
-
30
- void main2(){
31
- gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);
32
- }
33
-
34
- void main(){
35
- #include fade_lod
36
- #include clip_pixel
37
-
38
- float fragmentDepth = gl_FragCoord.z;
39
- #include assign_material_color
40
-
41
- if (vTexCoord.x > 1.0) {
42
- #if defined(dRenderVariant_color)
43
- material = vec4(uBackgroundColor, uBackgroundOpacity * material.a);
44
- #endif
45
- } else {
46
- // retrieve signed distance
47
- float sdf = texture2D(tFont, vTexCoord).a + uBorderWidth;
48
-
49
- // perform adaptive anti-aliasing of the edges
50
- float w = clamp(smoothness * (abs(dFdx(vTexCoord.x)) + abs(dFdy(vTexCoord.y))), 0.0, 0.5);
51
- float a = clamp(0.0, 1.0, smoothstep(0.5 - w, 0.5 + w, sdf));
52
-
53
- // gamma correction for linear attenuation
54
- a = pow(a, 1.0 / gamma);
55
-
56
- if (a < 0.5) discard;
57
-
58
- #if defined(dRenderVariant_color)
59
- // add border
60
- float t = 0.5 + uBorderWidth;
61
- if (uBorderWidth > 0.0 && sdf < t) {
62
- material.xyz = mix(uBorderColor, material.xyz, smoothstep(t - w, t, sdf));
63
- }
64
- #endif
65
- }
66
-
67
- #include check_transparency
68
-
69
- #if defined(dRenderVariant_pick)
70
- #include check_picking_alpha
71
- #ifdef requiredDrawBuffers
72
- gl_FragColor = vObject;
73
- gl_FragData[1] = vInstance;
74
- gl_FragData[2] = vGroup;
75
- gl_FragData[3] = packDepthToRGBA(fragmentDepth);
76
- #else
77
- gl_FragColor = vColor;
78
- #endif
79
- #elif defined(dRenderVariant_depth)
80
- gl_FragColor = material;
81
- #elif defined(dRenderVariant_marking)
82
- gl_FragColor = material;
83
- #elif defined(dRenderVariant_emissive)
84
- gl_FragColor = material;
85
- #elif defined(dRenderVariant_color)
86
- gl_FragColor = material;
87
-
88
- #include apply_marker_color
89
- #include apply_fog
90
- #include wboit_write
91
- #include dpoit_write
92
- #endif
93
- }
9
+ exports.text_frag = `
10
+ precision highp float;
11
+ precision highp int;
12
+
13
+ #include common
14
+ #include common_frag_params
15
+ #include color_frag_params
16
+ #include common_clip
17
+
18
+ uniform sampler2D tFont;
19
+
20
+ uniform vec3 uBorderColor;
21
+ uniform float uBorderWidth;
22
+ uniform vec3 uBackgroundColor;
23
+ uniform float uBackgroundOpacity;
24
+
25
+ varying vec2 vTexCoord;
26
+
27
+ const float smoothness = 32.0;
28
+ const float gamma = 2.2;
29
+
30
+ void main2(){
31
+ gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);
32
+ }
33
+
34
+ void main(){
35
+ #include fade_lod
36
+ #include clip_pixel
37
+
38
+ float fragmentDepth = gl_FragCoord.z;
39
+ #include assign_material_color
40
+
41
+ if (vTexCoord.x > 1.0) {
42
+ #if defined(dRenderVariant_color)
43
+ material = vec4(uBackgroundColor, uBackgroundOpacity * material.a);
44
+ #endif
45
+ } else {
46
+ // retrieve signed distance
47
+ float sdf = texture2D(tFont, vTexCoord).a + uBorderWidth;
48
+
49
+ // perform adaptive anti-aliasing of the edges
50
+ float w = clamp(smoothness * (abs(dFdx(vTexCoord.x)) + abs(dFdy(vTexCoord.y))), 0.0, 0.5);
51
+ float a = clamp(0.0, 1.0, smoothstep(0.5 - w, 0.5 + w, sdf));
52
+
53
+ // gamma correction for linear attenuation
54
+ a = pow(a, 1.0 / gamma);
55
+
56
+ if (a < 0.5) discard;
57
+
58
+ #if defined(dRenderVariant_color)
59
+ // add border
60
+ float t = 0.5 + uBorderWidth;
61
+ if (uBorderWidth > 0.0 && sdf < t) {
62
+ material.xyz = mix(uBorderColor, material.xyz, smoothstep(t - w, t, sdf));
63
+ }
64
+ #endif
65
+ }
66
+
67
+ #include check_transparency
68
+
69
+ #if defined(dRenderVariant_pick)
70
+ #include check_picking_alpha
71
+ #ifdef requiredDrawBuffers
72
+ gl_FragColor = vObject;
73
+ gl_FragData[1] = vInstance;
74
+ gl_FragData[2] = vGroup;
75
+ gl_FragData[3] = packDepthToRGBA(fragmentDepth);
76
+ #else
77
+ gl_FragColor = vColor;
78
+ #endif
79
+ #elif defined(dRenderVariant_depth)
80
+ gl_FragColor = material;
81
+ #elif defined(dRenderVariant_marking)
82
+ gl_FragColor = material;
83
+ #elif defined(dRenderVariant_emissive)
84
+ gl_FragColor = material;
85
+ #elif defined(dRenderVariant_color)
86
+ gl_FragColor = material;
87
+
88
+ #include apply_marker_color
89
+ #include apply_fog
90
+ #include wboit_write
91
+ #include dpoit_write
92
+ #endif
93
+ }
94
94
  `;
@@ -6,89 +6,89 @@
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
8
  exports.text_vert = void 0;
9
- exports.text_vert = `
10
- precision highp float;
11
- precision highp int;
12
-
13
- #include common
14
- #include read_from_texture
15
- #include common_vert_params
16
- #include color_vert_params
17
- #include size_vert_params
18
- #include common_clip
19
-
20
- uniform mat4 uModelView;
21
-
22
- attribute vec3 aPosition;
23
- attribute vec2 aMapping;
24
- attribute float aDepth;
25
- attribute vec2 aTexCoord;
26
- attribute mat4 aTransform;
27
- attribute float aInstance;
28
- attribute float aGroup;
29
-
30
- uniform float uOffsetX;
31
- uniform float uOffsetY;
32
- uniform float uOffsetZ;
33
-
34
- uniform float uIsOrtho;
35
- uniform float uPixelRatio;
36
- uniform vec4 uViewport;
37
-
38
- varying vec2 vTexCoord;
39
-
40
- #include matrix_scale
41
-
42
- void main(void){
43
- #include assign_group
44
- #include assign_color_varying
45
- #include assign_marker_varying
46
- #include assign_clipping_varying
47
- #include assign_size
48
-
49
- vTexCoord = aTexCoord;
50
-
51
- float scale = matrixScale(uModelView);
52
-
53
- float offsetX = uOffsetX * scale;
54
- float offsetY = uOffsetY * scale;
55
- float offsetZ = (uOffsetZ + aDepth * 0.95) * scale;
56
-
57
- vec4 position4 = vec4(aPosition, 1.0);
58
- vec4 mvPosition = uModelView * aTransform * position4;
59
-
60
- vModelPosition = (uModel * aTransform * position4).xyz; // for clipping in frag shader
61
-
62
- // TODO
63
- // #ifdef FIXED_SIZE
64
- // if (ortho) {
65
- // scale /= pixelRatio * ((uViewport.w / 2.0) / -uCameraPosition.z) * 0.1;
66
- // } else {
67
- // scale /= pixelRatio * ((uViewport.w / 2.0) / -mvPosition.z) * 0.1;
68
- // }
69
- // #endif
70
-
71
- vec4 mvCorner = vec4(mvPosition.xyz, 1.0);
72
-
73
- if (vTexCoord.x == 10.0) { // indicates background plane
74
- // move a bit to the back, taking distance to camera into account to avoid z-fighting
75
- offsetZ -= 0.001 * distance(uCameraPosition, (uProjection * mvCorner).xyz);
76
- }
77
-
78
- mvCorner.xy += aMapping * size * scale;
79
- mvCorner.x += offsetX;
80
- mvCorner.y += offsetY;
81
-
82
- if (uIsOrtho == 1.0) {
83
- mvCorner.z += offsetZ;
84
- } else {
85
- mvCorner.xyz += normalize(-mvCorner.xyz) * offsetZ;
86
- }
87
-
88
- gl_Position = uProjection * mvCorner;
89
-
90
- vViewPosition = -mvCorner.xyz;
91
-
92
- #include clip_instance
93
- }
9
+ exports.text_vert = `
10
+ precision highp float;
11
+ precision highp int;
12
+
13
+ #include common
14
+ #include read_from_texture
15
+ #include common_vert_params
16
+ #include color_vert_params
17
+ #include size_vert_params
18
+ #include common_clip
19
+
20
+ uniform mat4 uModelView;
21
+
22
+ attribute vec3 aPosition;
23
+ attribute vec2 aMapping;
24
+ attribute float aDepth;
25
+ attribute vec2 aTexCoord;
26
+ attribute mat4 aTransform;
27
+ attribute float aInstance;
28
+ attribute float aGroup;
29
+
30
+ uniform float uOffsetX;
31
+ uniform float uOffsetY;
32
+ uniform float uOffsetZ;
33
+
34
+ uniform float uIsOrtho;
35
+ uniform float uPixelRatio;
36
+ uniform vec4 uViewport;
37
+
38
+ varying vec2 vTexCoord;
39
+
40
+ #include matrix_scale
41
+
42
+ void main(void){
43
+ #include assign_group
44
+ #include assign_color_varying
45
+ #include assign_marker_varying
46
+ #include assign_clipping_varying
47
+ #include assign_size
48
+
49
+ vTexCoord = aTexCoord;
50
+
51
+ float scale = matrixScale(uModelView);
52
+
53
+ float offsetX = uOffsetX * scale;
54
+ float offsetY = uOffsetY * scale;
55
+ float offsetZ = (uOffsetZ + aDepth * 0.95) * scale;
56
+
57
+ vec4 position4 = vec4(aPosition, 1.0);
58
+ vec4 mvPosition = uModelView * aTransform * position4;
59
+
60
+ vModelPosition = (uModel * aTransform * position4).xyz; // for clipping in frag shader
61
+
62
+ // TODO
63
+ // #ifdef FIXED_SIZE
64
+ // if (ortho) {
65
+ // scale /= pixelRatio * ((uViewport.w / 2.0) / -uCameraPosition.z) * 0.1;
66
+ // } else {
67
+ // scale /= pixelRatio * ((uViewport.w / 2.0) / -mvPosition.z) * 0.1;
68
+ // }
69
+ // #endif
70
+
71
+ vec4 mvCorner = vec4(mvPosition.xyz, 1.0);
72
+
73
+ if (vTexCoord.x == 10.0) { // indicates background plane
74
+ // move a bit to the back, taking distance to camera into account to avoid z-fighting
75
+ offsetZ -= 0.001 * distance(uCameraPosition, (uProjection * mvCorner).xyz);
76
+ }
77
+
78
+ mvCorner.xy += aMapping * size * scale;
79
+ mvCorner.x += offsetX;
80
+ mvCorner.y += offsetY;
81
+
82
+ if (uIsOrtho == 1.0) {
83
+ mvCorner.z += offsetZ;
84
+ } else {
85
+ mvCorner.xyz += normalize(-mvCorner.xyz) * offsetZ;
86
+ }
87
+
88
+ gl_Position = uProjection * mvCorner;
89
+
90
+ vViewPosition = -mvCorner.xyz;
91
+
92
+ #include clip_instance
93
+ }
94
94
  `;
@@ -6,50 +6,50 @@
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
8
  exports.grid3dTemplate_frag = void 0;
9
- exports.grid3dTemplate_frag = `
10
- precision highp float;
11
- precision highp int;
12
- precision highp sampler2D;
13
-
14
- uniform vec2 uQuadShift;
15
- uniform vec3 uDimensions;
16
- uniform vec3 uMin;
17
- uniform vec3 uDelta;
18
- uniform bool uLittleEndian;
19
- uniform float uWidth;
20
-
21
- #ifdef CUMULATIVE
22
- uniform sampler2D tCumulativeSum;
23
- #endif
24
-
25
- {UNIFORMS}
26
-
27
- {UTILS}
28
-
29
- #include float_to_rgba
30
- #ifdef CUMULATIVE
31
- #include rgba_to_float
32
- #endif
33
-
34
- float intDiv(float a, float b) { return float(int(a) / int(b)); }
35
- float intMod(float a, float b) { return a - b * float(int(a) / int(b)); }
36
-
37
- void main(void) {
38
- float offset = floor(gl_FragCoord.x) + floor(gl_FragCoord.y) * uWidth;
39
-
40
- // axis order fast to slow Z, Y, X
41
- // TODO: support arbitrary axis orders?
42
- float k = intMod(offset, uDimensions.z), kk = intDiv(offset, uDimensions.z);
43
- float j = intMod(kk, uDimensions.y);
44
- float i = intDiv(kk, uDimensions.y);
45
-
46
- vec3 xyz = uMin + uDelta * vec3(i, j, k);
47
-
48
- {MAIN}
49
-
50
- #ifdef CUMULATIVE
51
- float current = rgbaToFloat(texture2D(tCumulativeSum, gl_FragCoord.xy / vec2(uWidth, uWidth)), uLittleEndian);
52
- #endif
53
- gl_FragColor = floatToRgba({RETURN}, uLittleEndian);
54
- }
9
+ exports.grid3dTemplate_frag = `
10
+ precision highp float;
11
+ precision highp int;
12
+ precision highp sampler2D;
13
+
14
+ uniform vec2 uQuadShift;
15
+ uniform vec3 uDimensions;
16
+ uniform vec3 uMin;
17
+ uniform vec3 uDelta;
18
+ uniform bool uLittleEndian;
19
+ uniform float uWidth;
20
+
21
+ #ifdef CUMULATIVE
22
+ uniform sampler2D tCumulativeSum;
23
+ #endif
24
+
25
+ {UNIFORMS}
26
+
27
+ {UTILS}
28
+
29
+ #include float_to_rgba
30
+ #ifdef CUMULATIVE
31
+ #include rgba_to_float
32
+ #endif
33
+
34
+ float intDiv(float a, float b) { return float(int(a) / int(b)); }
35
+ float intMod(float a, float b) { return a - b * float(int(a) / int(b)); }
36
+
37
+ void main(void) {
38
+ float offset = floor(gl_FragCoord.x) + floor(gl_FragCoord.y) * uWidth;
39
+
40
+ // axis order fast to slow Z, Y, X
41
+ // TODO: support arbitrary axis orders?
42
+ float k = intMod(offset, uDimensions.z), kk = intDiv(offset, uDimensions.z);
43
+ float j = intMod(kk, uDimensions.y);
44
+ float i = intDiv(kk, uDimensions.y);
45
+
46
+ vec3 xyz = uMin + uDelta * vec3(i, j, k);
47
+
48
+ {MAIN}
49
+
50
+ #ifdef CUMULATIVE
51
+ float current = rgbaToFloat(texture2D(tCumulativeSum, gl_FragCoord.xy / vec2(uWidth, uWidth)), uLittleEndian);
52
+ #endif
53
+ gl_FragColor = floatToRgba({RETURN}, uLittleEndian);
54
+ }
55
55
  `;
@@ -265,22 +265,22 @@ function getGlsl100FragPrefix(extensions, shaderExtensions) {
265
265
  }
266
266
  return prefix.join('\n') + '\n';
267
267
  }
268
- const glsl300VertPrefixCommon = `
269
- #define attribute in
270
- #define varying out
271
- #define texture2D texture
268
+ const glsl300VertPrefixCommon = `
269
+ #define attribute in
270
+ #define varying out
271
+ #define texture2D texture
272
272
  `;
273
- const glsl300FragPrefixCommon = `
274
- #define varying in
275
- #define texture2D texture
276
- #define textureCube texture
277
- #define texture2DLodEXT textureLod
278
- #define textureCubeLodEXT textureLod
279
-
280
- #define gl_FragColor out_FragData0
281
- #define gl_FragDepthEXT gl_FragDepth
282
-
283
- #define depthTextureSupport
273
+ const glsl300FragPrefixCommon = `
274
+ #define varying in
275
+ #define texture2D texture
276
+ #define textureCube texture
277
+ #define texture2DLodEXT textureLod
278
+ #define textureCubeLodEXT textureLod
279
+
280
+ #define gl_FragColor out_FragData0
281
+ #define gl_FragDepthEXT gl_FragDepth
282
+
283
+ #define depthTextureSupport
284
284
  `;
285
285
  function getGlsl300VertPrefix(extensions, shaderExtensions) {
286
286
  const prefix = [
@@ -460,19 +460,19 @@ function getNoNonInstancedActiveAttribs(gl) {
460
460
  }
461
461
  exports.getNoNonInstancedActiveAttribs = getNoNonInstancedActiveAttribs;
462
462
  //
463
- const TextureTestVertShader = `
464
- attribute vec4 aPosition;
465
-
466
- void main() {
467
- gl_Position = aPosition;
463
+ const TextureTestVertShader = `
464
+ attribute vec4 aPosition;
465
+
466
+ void main() {
467
+ gl_Position = aPosition;
468
468
  }`;
469
- const TextureTestFragShader = `
470
- precision mediump float;
471
- uniform vec4 uColor;
472
- uniform sampler2D uTexture;
473
-
474
- void main() {
475
- gl_FragColor = texture2D(uTexture, vec2(0.5, 0.5)) * uColor;
469
+ const TextureTestFragShader = `
470
+ precision mediump float;
471
+ uniform vec4 uColor;
472
+ uniform sampler2D uTexture;
473
+
474
+ void main() {
475
+ gl_FragColor = texture2D(uTexture, vec2(0.5, 0.5)) * uColor;
476
476
  }`;
477
477
  const TextureTestTexCoords = new Float32Array([
478
478
  -1.0, -1.0, 1.0, -1.0, -1.0, 1.0, -1.0, 1.0, 1.0, -1.0, 1.0, 1.0
@@ -279,6 +279,7 @@ function createContext(gl, props = {}) {
279
279
  contextRestored,
280
280
  setContextLost: () => {
281
281
  isContextLost = true;
282
+ timer.clear();
282
283
  },
283
284
  handleContextRestored: (extraResets) => {
284
285
  Object.assign(extensions, (0, extensions_1.createExtensions)(gl));
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) 2022-2023 mol* contributors, licensed under MIT, See LICENSE file for more info.
2
+ * Copyright (c) 2022-2024 mol* contributors, licensed under MIT, See LICENSE file for more info.
3
3
  *
4
4
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
5
5
  */
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  /**
3
- * Copyright (c) 2022-2023 mol* contributors, licensed under MIT, See LICENSE file for more info.
3
+ * Copyright (c) 2022-2024 mol* contributors, licensed under MIT, See LICENSE file for more info.
4
4
  *
5
5
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
6
6
  */
@@ -25,6 +25,9 @@ class MovingAverage {
25
25
  stats() {
26
26
  return Object.fromEntries(this.avgs.entries());
27
27
  }
28
+ clear() {
29
+ this.avgs.clear();
30
+ }
28
31
  constructor(count) {
29
32
  this.count = count;
30
33
  this.avgs = new Map();
@@ -61,8 +64,12 @@ function createTimer(gl, extensions, stats, options) {
61
64
  dtq.deleteQuery(query);
62
65
  });
63
66
  pending.clear();
67
+ stack.length = 0;
68
+ gpuAvgs.clear();
69
+ cpuAvgs.clear();
64
70
  measures = [];
65
71
  current = null;
72
+ capturingStats = false;
66
73
  };
67
74
  const add = () => {
68
75
  if (!dtq)
@@ -55,7 +55,8 @@ function computeN(state) {
55
55
  const cA = state.centerA;
56
56
  const cB = state.centerB;
57
57
  let sizeSq = 0.0;
58
- for (let i = 0, _l = state.a.x.length; i < _l; i++) {
58
+ const L = Math.min(state.a.x.length, state.b.x.length);
59
+ for (let i = 0; i < L; i++) {
59
60
  const aX = xsA[i] - cA[0], aY = ysA[i] - cA[1], aZ = zsA[i] - cA[2];
60
61
  const bX = xsB[i] - cB[0], bY = ysB[i] - cB[1], bZ = zsB[i] - cB[2];
61
62
  sizeSq += aX * aX + aY * aY + aZ * aZ + bX * bX + bY * bY + bZ * bZ;
@@ -15,6 +15,7 @@ export declare class PluginAnimationLoop {
15
15
  isSynchronous?: boolean;
16
16
  manualDraw?: boolean;
17
17
  animation?: PluginAnimationManager.AnimationInfo;
18
+ updateControls?: boolean;
18
19
  }): Promise<void>;
19
20
  private frame;
20
21
  resetTime(t?: number): void;
@@ -55,14 +55,14 @@ export declare namespace VolumeStreaming {
55
55
  topRight: Vec3;
56
56
  }>, "box"> | PD.NamedParams<PD.Normalize<{
57
57
  radius: number;
58
+ dynamicDetailLevel: number;
58
59
  bottomLeft: Vec3;
59
60
  topRight: Vec3;
60
- }>, "selection-box"> | PD.NamedParams<PD.Normalize<{
61
+ }>, "camera-target"> | PD.NamedParams<PD.Normalize<{
61
62
  radius: number;
62
- dynamicDetailLevel: number;
63
63
  bottomLeft: Vec3;
64
64
  topRight: Vec3;
65
- }>, "camera-target">>;
65
+ }>, "selection-box">>;
66
66
  detailLevel: PD.Select<number>;
67
67
  channels: PD.Group<PD.Normalize<{
68
68
  em: PD.Normalize<ChannelParams>;
@@ -92,14 +92,14 @@ export declare namespace VolumeStreaming {
92
92
  topRight: Vec3;
93
93
  }>, "box"> | PD.NamedParams<PD.Normalize<{
94
94
  radius: number;
95
+ dynamicDetailLevel: number;
95
96
  bottomLeft: Vec3;
96
97
  topRight: Vec3;
97
- }>, "selection-box"> | PD.NamedParams<PD.Normalize<{
98
+ }>, "camera-target"> | PD.NamedParams<PD.Normalize<{
98
99
  radius: number;
99
- dynamicDetailLevel: number;
100
100
  bottomLeft: Vec3;
101
101
  topRight: Vec3;
102
- }>, "camera-target">>;
102
+ }>, "selection-box">>;
103
103
  detailLevel: PD.Select<number>;
104
104
  channels: PD.Group<PD.Normalize<{
105
105
  em: PD.Normalize<ChannelParams>;
@@ -12,7 +12,7 @@ declare const VolumeServerInfo_base: {
12
12
  label: string;
13
13
  description?: string | undefined;
14
14
  } | undefined): {
15
- id: import("../../../../mol-util").UUID;
15
+ id: import("../../../../mol-util").UUID; /** The value are stored in blockSize^3 cubes */
16
16
  type: PluginStateObject.TypeInfo;
17
17
  label: string;
18
18
  description?: string | undefined;
@@ -50,14 +50,14 @@ declare const CreateVolumeStreamingBehavior: StateTransformer<VolumeServerInfo,
50
50
  topRight: any;
51
51
  }>, "box"> | PD.NamedParams<PD.Normalize<{
52
52
  radius: any;
53
+ dynamicDetailLevel: any;
53
54
  bottomLeft: any;
54
55
  topRight: any;
55
- }>, "selection-box"> | PD.NamedParams<PD.Normalize<{
56
+ }>, "camera-target"> | PD.NamedParams<PD.Normalize<{
56
57
  radius: any;
57
- dynamicDetailLevel: any;
58
58
  bottomLeft: any;
59
59
  topRight: any;
60
- }>, "camera-target">>;
60
+ }>, "selection-box">>;
61
61
  detailLevel: PD.Select<number>;
62
62
  channels: PD.Group<PD.Normalize<{
63
63
  em: any;