molstar 3.0.0-dev.6 → 3.0.0-dev.7

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 (367) hide show
  1. package/build/viewer/molstar.js +1 -1
  2. package/lib/commonjs/extensions/anvil/behavior.d.ts +4 -0
  3. package/lib/commonjs/extensions/anvil/representation.d.ts +50 -0
  4. package/lib/commonjs/extensions/cellpack/representation.d.ts +10 -0
  5. package/lib/commonjs/extensions/dnatco/confal-pyramids/representation.d.ts +30 -0
  6. package/lib/commonjs/extensions/rcsb/assembly-symmetry/behavior.d.ts +4 -0
  7. package/lib/commonjs/extensions/rcsb/assembly-symmetry/representation.d.ts +10 -0
  8. package/lib/commonjs/extensions/rcsb/validation-report/representation.d.ts +50 -0
  9. package/lib/commonjs/mol-canvas3d/canvas3d.d.ts +2 -8
  10. package/lib/commonjs/mol-canvas3d/canvas3d.js +2 -1
  11. package/lib/commonjs/mol-canvas3d/helper/bounding-sphere-helper.js +3 -2
  12. package/lib/commonjs/mol-canvas3d/helper/camera-helper.d.ts +4 -0
  13. package/lib/commonjs/mol-canvas3d/helper/camera-helper.js +2 -2
  14. package/lib/commonjs/mol-canvas3d/helper/handle-helper.d.ts +4 -0
  15. package/lib/commonjs/mol-canvas3d/helper/handle-helper.js +2 -2
  16. package/lib/commonjs/mol-canvas3d/helper/helper.d.ts +2 -0
  17. package/lib/commonjs/mol-canvas3d/passes/image.d.ts +1 -0
  18. package/lib/commonjs/mol-canvas3d/passes/pick.js +9 -9
  19. package/lib/commonjs/mol-canvas3d/passes/postprocessing.js +3 -3
  20. package/lib/commonjs/mol-canvas3d/passes/smaa.js +1 -1
  21. package/lib/commonjs/mol-geo/geometry/base.d.ts +18 -0
  22. package/lib/commonjs/mol-geo/geometry/base.js +18 -1
  23. package/lib/commonjs/mol-geo/geometry/clipping-data.d.ts +1 -3
  24. package/lib/commonjs/mol-geo/geometry/clipping-data.js +3 -8
  25. package/lib/commonjs/mol-geo/geometry/cylinders/cylinders.d.ts +10 -0
  26. package/lib/commonjs/mol-geo/geometry/cylinders/cylinders.js +2 -2
  27. package/lib/commonjs/mol-geo/geometry/direct-volume/direct-volume.d.ts +10 -0
  28. package/lib/commonjs/mol-geo/geometry/direct-volume/direct-volume.js +2 -2
  29. package/lib/commonjs/mol-geo/geometry/image/image.d.ts +10 -0
  30. package/lib/commonjs/mol-geo/geometry/lines/lines.d.ts +10 -0
  31. package/lib/commonjs/mol-geo/geometry/lines/lines.js +1 -1
  32. package/lib/commonjs/mol-geo/geometry/marker-data.d.ts +0 -1
  33. package/lib/commonjs/mol-geo/geometry/marker-data.js +0 -4
  34. package/lib/commonjs/mol-geo/geometry/mesh/mesh.d.ts +10 -0
  35. package/lib/commonjs/mol-geo/geometry/mesh/mesh.js +2 -2
  36. package/lib/commonjs/mol-geo/geometry/points/points.d.ts +10 -0
  37. package/lib/commonjs/mol-geo/geometry/spheres/spheres.d.ts +10 -0
  38. package/lib/commonjs/mol-geo/geometry/spheres/spheres.js +2 -2
  39. package/lib/commonjs/mol-geo/geometry/text/text.d.ts +10 -0
  40. package/lib/commonjs/mol-geo/geometry/texture-mesh/texture-mesh.d.ts +10 -0
  41. package/lib/commonjs/mol-geo/geometry/texture-mesh/texture-mesh.js +2 -2
  42. package/lib/commonjs/mol-gl/render-object.d.ts +2 -1
  43. package/lib/commonjs/mol-gl/render-object.js +10 -10
  44. package/lib/commonjs/mol-gl/renderable/cylinders.d.ts +10 -5
  45. package/lib/commonjs/mol-gl/renderable/cylinders.js +3 -3
  46. package/lib/commonjs/mol-gl/renderable/direct-volume.d.ts +10 -5
  47. package/lib/commonjs/mol-gl/renderable/direct-volume.js +3 -3
  48. package/lib/commonjs/mol-gl/renderable/image.d.ts +9 -4
  49. package/lib/commonjs/mol-gl/renderable/image.js +2 -2
  50. package/lib/commonjs/mol-gl/renderable/lines.d.ts +38 -33
  51. package/lib/commonjs/mol-gl/renderable/lines.js +3 -3
  52. package/lib/commonjs/mol-gl/renderable/mesh.d.ts +10 -5
  53. package/lib/commonjs/mol-gl/renderable/mesh.js +3 -3
  54. package/lib/commonjs/mol-gl/renderable/points.d.ts +9 -4
  55. package/lib/commonjs/mol-gl/renderable/points.js +2 -2
  56. package/lib/commonjs/mol-gl/renderable/schema.d.ts +9 -11
  57. package/lib/commonjs/mol-gl/renderable/schema.js +3 -9
  58. package/lib/commonjs/mol-gl/renderable/spheres.d.ts +10 -5
  59. package/lib/commonjs/mol-gl/renderable/spheres.js +3 -3
  60. package/lib/commonjs/mol-gl/renderable/text.d.ts +9 -4
  61. package/lib/commonjs/mol-gl/renderable/text.js +2 -2
  62. package/lib/commonjs/mol-gl/renderable/texture-mesh.d.ts +10 -5
  63. package/lib/commonjs/mol-gl/renderable/texture-mesh.js +3 -3
  64. package/lib/commonjs/mol-gl/renderable.d.ts +0 -1
  65. package/lib/commonjs/mol-gl/renderer.d.ts +12 -12
  66. package/lib/commonjs/mol-gl/renderer.js +12 -74
  67. package/lib/commonjs/mol-gl/scene.d.ts +2 -2
  68. package/lib/commonjs/mol-gl/scene.js +7 -5
  69. package/lib/commonjs/mol-gl/shader/chunks/apply-light-color.glsl.d.ts +1 -1
  70. package/lib/commonjs/mol-gl/shader/chunks/apply-light-color.glsl.js +1 -1
  71. package/lib/commonjs/mol-gl/shader/chunks/assign-color-varying.glsl.d.ts +1 -1
  72. package/lib/commonjs/mol-gl/shader/chunks/assign-color-varying.glsl.js +1 -1
  73. package/lib/commonjs/mol-gl/shader/chunks/assign-marker-varying.glsl.d.ts +1 -1
  74. package/lib/commonjs/mol-gl/shader/chunks/assign-marker-varying.glsl.js +1 -1
  75. package/lib/commonjs/mol-gl/shader/chunks/assign-material-color.glsl.d.ts +1 -1
  76. package/lib/commonjs/mol-gl/shader/chunks/assign-material-color.glsl.js +1 -1
  77. package/lib/commonjs/mol-gl/shader/chunks/color-frag-params.glsl.d.ts +1 -1
  78. package/lib/commonjs/mol-gl/shader/chunks/color-frag-params.glsl.js +1 -1
  79. package/lib/commonjs/mol-gl/shader/chunks/color-vert-params.glsl.d.ts +1 -1
  80. package/lib/commonjs/mol-gl/shader/chunks/color-vert-params.glsl.js +1 -1
  81. package/lib/commonjs/mol-gl/shader/chunks/common-frag-params.glsl.d.ts +1 -1
  82. package/lib/commonjs/mol-gl/shader/chunks/common-frag-params.glsl.js +1 -1
  83. package/lib/commonjs/mol-gl/shader/chunks/common-vert-params.glsl.d.ts +1 -1
  84. package/lib/commonjs/mol-gl/shader/chunks/common-vert-params.glsl.js +1 -1
  85. package/lib/commonjs/mol-gl/shader/chunks/common.glsl.d.ts +1 -1
  86. package/lib/commonjs/mol-gl/shader/chunks/common.glsl.js +1 -1
  87. package/lib/commonjs/mol-gl/shader/cylinders.frag.d.ts +1 -1
  88. package/lib/commonjs/mol-gl/shader/cylinders.frag.js +1 -1
  89. package/lib/commonjs/mol-gl/shader/direct-volume.frag.d.ts +1 -1
  90. package/lib/commonjs/mol-gl/shader/direct-volume.frag.js +1 -1
  91. package/lib/commonjs/mol-gl/shader/image.frag.d.ts +1 -1
  92. package/lib/commonjs/mol-gl/shader/image.frag.js +1 -1
  93. package/lib/commonjs/mol-gl/shader/mesh.frag.d.ts +1 -1
  94. package/lib/commonjs/mol-gl/shader/mesh.frag.js +1 -1
  95. package/lib/commonjs/mol-gl/shader/mesh.vert.d.ts +1 -1
  96. package/lib/commonjs/mol-gl/shader/mesh.vert.js +1 -1
  97. package/lib/commonjs/mol-gl/shader/spheres.frag.d.ts +1 -1
  98. package/lib/commonjs/mol-gl/shader/spheres.frag.js +1 -1
  99. package/lib/commonjs/mol-gl/shader-code.d.ts +3 -1
  100. package/lib/commonjs/mol-gl/shader-code.js +42 -13
  101. package/lib/commonjs/mol-gl/webgl/render-item.d.ts +7 -6
  102. package/lib/commonjs/mol-gl/webgl/render-item.js +10 -8
  103. package/lib/commonjs/mol-gl/webgl/resources.js +8 -1
  104. package/lib/commonjs/mol-math/linear-algebra/3d/quat.d.ts +9 -1
  105. package/lib/commonjs/mol-math/linear-algebra/3d/quat.js +20 -1
  106. package/lib/commonjs/mol-model-formats/shape/ply.d.ts +20 -0
  107. package/lib/commonjs/mol-model-props/computed/representations/interactions-inter-unit-cylinder.d.ts +10 -0
  108. package/lib/commonjs/mol-model-props/computed/representations/interactions-intra-unit-cylinder.d.ts +10 -0
  109. package/lib/commonjs/mol-model-props/computed/representations/interactions.d.ts +30 -0
  110. package/lib/commonjs/mol-model-props/integrative/cross-link-restraint/representation.d.ts +40 -0
  111. package/lib/commonjs/mol-plugin/behavior/dynamic/selection/structure-focus-representation.d.ts +11 -0
  112. package/lib/commonjs/mol-plugin/behavior/dynamic/selection/structure-focus-representation.js +3 -1
  113. package/lib/commonjs/mol-plugin/commands.d.ts +1 -4
  114. package/lib/commonjs/mol-plugin/spec.js +1 -0
  115. package/lib/commonjs/mol-plugin/util/viewport-screenshot.d.ts +12 -0
  116. package/lib/commonjs/mol-plugin-state/helpers/structure-clipping.d.ts +1 -1
  117. package/lib/commonjs/mol-plugin-state/helpers/structure-clipping.js +1 -1
  118. package/lib/commonjs/mol-plugin-state/manager/structure/component.d.ts +13 -1
  119. package/lib/commonjs/mol-plugin-state/manager/structure/component.js +13 -8
  120. package/lib/commonjs/mol-plugin-state/transforms/representation.d.ts +32 -0
  121. package/lib/commonjs/mol-plugin-ui/viewport/simple-settings.js +2 -6
  122. package/lib/commonjs/mol-repr/shape/loci/angle.d.ts +10 -0
  123. package/lib/commonjs/mol-repr/shape/loci/common.d.ts +10 -0
  124. package/lib/commonjs/mol-repr/shape/loci/dihedral.d.ts +10 -0
  125. package/lib/commonjs/mol-repr/shape/loci/distance.d.ts +10 -0
  126. package/lib/commonjs/mol-repr/shape/loci/label.d.ts +10 -0
  127. package/lib/commonjs/mol-repr/shape/loci/orientation.d.ts +10 -0
  128. package/lib/commonjs/mol-repr/shape/loci/plane.d.ts +10 -0
  129. package/lib/commonjs/mol-repr/shape/model/unitcell.d.ts +10 -0
  130. package/lib/commonjs/mol-repr/structure/complex-visual.d.ts +60 -0
  131. package/lib/commonjs/mol-repr/structure/params.d.ts +80 -0
  132. package/lib/commonjs/mol-repr/structure/registry.d.ts +140 -0
  133. package/lib/commonjs/mol-repr/structure/representation/backbone.d.ts +30 -0
  134. package/lib/commonjs/mol-repr/structure/representation/ball-and-stick.d.ts +30 -0
  135. package/lib/commonjs/mol-repr/structure/representation/carbohydrate.d.ts +30 -0
  136. package/lib/commonjs/mol-repr/structure/representation/cartoon.d.ts +30 -0
  137. package/lib/commonjs/mol-repr/structure/representation/ellipsoid.d.ts +30 -0
  138. package/lib/commonjs/mol-repr/structure/representation/gaussian-surface.d.ts +30 -0
  139. package/lib/commonjs/mol-repr/structure/representation/gaussian-volume.d.ts +30 -0
  140. package/lib/commonjs/mol-repr/structure/representation/label.d.ts +30 -0
  141. package/lib/commonjs/mol-repr/structure/representation/line.d.ts +30 -0
  142. package/lib/commonjs/mol-repr/structure/representation/molecular-surface.d.ts +30 -0
  143. package/lib/commonjs/mol-repr/structure/representation/orientation.d.ts +30 -0
  144. package/lib/commonjs/mol-repr/structure/representation/point.d.ts +30 -0
  145. package/lib/commonjs/mol-repr/structure/representation/putty.d.ts +30 -0
  146. package/lib/commonjs/mol-repr/structure/representation/spacefill.d.ts +30 -0
  147. package/lib/commonjs/mol-repr/structure/units-visual.d.ts +80 -0
  148. package/lib/commonjs/mol-repr/structure/visual/bond-inter-unit-cylinder.d.ts +20 -0
  149. package/lib/commonjs/mol-repr/structure/visual/bond-inter-unit-line.d.ts +10 -0
  150. package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-cylinder.d.ts +20 -0
  151. package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-line.d.ts +10 -0
  152. package/lib/commonjs/mol-repr/structure/visual/carbohydrate-link-cylinder.d.ts +10 -0
  153. package/lib/commonjs/mol-repr/structure/visual/carbohydrate-symbol-mesh.d.ts +10 -0
  154. package/lib/commonjs/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.d.ts +10 -0
  155. package/lib/commonjs/mol-repr/structure/visual/element-cross.d.ts +10 -0
  156. package/lib/commonjs/mol-repr/structure/visual/element-point.d.ts +10 -0
  157. package/lib/commonjs/mol-repr/structure/visual/element-sphere.d.ts +20 -0
  158. package/lib/commonjs/mol-repr/structure/visual/ellipsoid-mesh.d.ts +10 -0
  159. package/lib/commonjs/mol-repr/structure/visual/gaussian-density-volume.d.ts +20 -0
  160. package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-mesh.d.ts +40 -0
  161. package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-wireframe.d.ts +10 -0
  162. package/lib/commonjs/mol-repr/structure/visual/label-text.d.ts +10 -0
  163. package/lib/commonjs/mol-repr/structure/visual/molecular-surface-mesh.d.ts +10 -0
  164. package/lib/commonjs/mol-repr/structure/visual/molecular-surface-wireframe.d.ts +10 -0
  165. package/lib/commonjs/mol-repr/structure/visual/nucleotide-block-mesh.d.ts +10 -0
  166. package/lib/commonjs/mol-repr/structure/visual/nucleotide-ring-mesh.d.ts +10 -0
  167. package/lib/commonjs/mol-repr/structure/visual/orientation-ellipsoid-mesh.d.ts +10 -0
  168. package/lib/commonjs/mol-repr/structure/visual/polymer-backbone-cylinder.d.ts +20 -0
  169. package/lib/commonjs/mol-repr/structure/visual/polymer-backbone-sphere.d.ts +20 -0
  170. package/lib/commonjs/mol-repr/structure/visual/polymer-direction-wedge.d.ts +10 -0
  171. package/lib/commonjs/mol-repr/structure/visual/polymer-gap-cylinder.d.ts +10 -0
  172. package/lib/commonjs/mol-repr/structure/visual/polymer-trace-mesh.d.ts +10 -0
  173. package/lib/commonjs/mol-repr/structure/visual/polymer-tube-mesh.d.ts +10 -0
  174. package/lib/commonjs/mol-repr/visual.js +11 -7
  175. package/lib/commonjs/mol-repr/volume/direct-volume.d.ts +30 -0
  176. package/lib/commonjs/mol-repr/volume/isosurface.d.ts +60 -0
  177. package/lib/commonjs/mol-repr/volume/registry.d.ts +30 -0
  178. package/lib/commonjs/mol-repr/volume/representation.d.ts +10 -0
  179. package/lib/commonjs/mol-repr/volume/slice.d.ts +30 -0
  180. package/lib/commonjs/mol-theme/clipping.d.ts +7 -15
  181. package/lib/commonjs/mol-theme/clipping.js +5 -12
  182. package/lib/commonjs/mol-util/clip.d.ts +49 -0
  183. package/lib/commonjs/mol-util/clip.js +97 -0
  184. package/lib/extensions/anvil/behavior.d.ts +4 -0
  185. package/lib/extensions/anvil/representation.d.ts +50 -0
  186. package/lib/extensions/cellpack/representation.d.ts +10 -0
  187. package/lib/extensions/dnatco/confal-pyramids/representation.d.ts +30 -0
  188. package/lib/extensions/rcsb/assembly-symmetry/behavior.d.ts +4 -0
  189. package/lib/extensions/rcsb/assembly-symmetry/representation.d.ts +10 -0
  190. package/lib/extensions/rcsb/validation-report/representation.d.ts +50 -0
  191. package/lib/mol-canvas3d/canvas3d.d.ts +2 -8
  192. package/lib/mol-canvas3d/canvas3d.js +2 -1
  193. package/lib/mol-canvas3d/helper/bounding-sphere-helper.js +3 -2
  194. package/lib/mol-canvas3d/helper/camera-helper.d.ts +4 -0
  195. package/lib/mol-canvas3d/helper/camera-helper.js +2 -2
  196. package/lib/mol-canvas3d/helper/handle-helper.d.ts +4 -0
  197. package/lib/mol-canvas3d/helper/handle-helper.js +2 -2
  198. package/lib/mol-canvas3d/helper/helper.d.ts +2 -0
  199. package/lib/mol-canvas3d/passes/image.d.ts +1 -0
  200. package/lib/mol-canvas3d/passes/pick.js +9 -9
  201. package/lib/mol-canvas3d/passes/postprocessing.js +3 -3
  202. package/lib/mol-canvas3d/passes/smaa.js +1 -1
  203. package/lib/mol-geo/geometry/base.d.ts +18 -0
  204. package/lib/mol-geo/geometry/base.js +18 -1
  205. package/lib/mol-geo/geometry/clipping-data.d.ts +1 -3
  206. package/lib/mol-geo/geometry/clipping-data.js +3 -8
  207. package/lib/mol-geo/geometry/cylinders/cylinders.d.ts +10 -0
  208. package/lib/mol-geo/geometry/cylinders/cylinders.js +2 -2
  209. package/lib/mol-geo/geometry/direct-volume/direct-volume.d.ts +10 -0
  210. package/lib/mol-geo/geometry/direct-volume/direct-volume.js +2 -2
  211. package/lib/mol-geo/geometry/image/image.d.ts +10 -0
  212. package/lib/mol-geo/geometry/lines/lines.d.ts +10 -0
  213. package/lib/mol-geo/geometry/lines/lines.js +1 -1
  214. package/lib/mol-geo/geometry/marker-data.d.ts +0 -1
  215. package/lib/mol-geo/geometry/marker-data.js +0 -4
  216. package/lib/mol-geo/geometry/mesh/mesh.d.ts +10 -0
  217. package/lib/mol-geo/geometry/mesh/mesh.js +2 -2
  218. package/lib/mol-geo/geometry/points/points.d.ts +10 -0
  219. package/lib/mol-geo/geometry/spheres/spheres.d.ts +10 -0
  220. package/lib/mol-geo/geometry/spheres/spheres.js +2 -2
  221. package/lib/mol-geo/geometry/text/text.d.ts +10 -0
  222. package/lib/mol-geo/geometry/texture-mesh/texture-mesh.d.ts +10 -0
  223. package/lib/mol-geo/geometry/texture-mesh/texture-mesh.js +2 -2
  224. package/lib/mol-gl/render-object.d.ts +2 -1
  225. package/lib/mol-gl/render-object.js +10 -10
  226. package/lib/mol-gl/renderable/cylinders.d.ts +10 -5
  227. package/lib/mol-gl/renderable/cylinders.js +3 -3
  228. package/lib/mol-gl/renderable/direct-volume.d.ts +10 -5
  229. package/lib/mol-gl/renderable/direct-volume.js +3 -3
  230. package/lib/mol-gl/renderable/image.d.ts +9 -4
  231. package/lib/mol-gl/renderable/image.js +2 -2
  232. package/lib/mol-gl/renderable/lines.d.ts +38 -33
  233. package/lib/mol-gl/renderable/lines.js +4 -4
  234. package/lib/mol-gl/renderable/mesh.d.ts +10 -5
  235. package/lib/mol-gl/renderable/mesh.js +3 -3
  236. package/lib/mol-gl/renderable/points.d.ts +9 -4
  237. package/lib/mol-gl/renderable/points.js +2 -2
  238. package/lib/mol-gl/renderable/schema.d.ts +9 -11
  239. package/lib/mol-gl/renderable/schema.js +3 -9
  240. package/lib/mol-gl/renderable/spheres.d.ts +10 -5
  241. package/lib/mol-gl/renderable/spheres.js +3 -3
  242. package/lib/mol-gl/renderable/text.d.ts +9 -4
  243. package/lib/mol-gl/renderable/text.js +2 -2
  244. package/lib/mol-gl/renderable/texture-mesh.d.ts +10 -5
  245. package/lib/mol-gl/renderable/texture-mesh.js +3 -3
  246. package/lib/mol-gl/renderable.d.ts +0 -1
  247. package/lib/mol-gl/renderer.d.ts +12 -12
  248. package/lib/mol-gl/renderer.js +13 -75
  249. package/lib/mol-gl/scene.d.ts +2 -2
  250. package/lib/mol-gl/scene.js +7 -5
  251. package/lib/mol-gl/shader/chunks/apply-light-color.glsl.d.ts +1 -1
  252. package/lib/mol-gl/shader/chunks/apply-light-color.glsl.js +1 -1
  253. package/lib/mol-gl/shader/chunks/assign-color-varying.glsl.d.ts +1 -1
  254. package/lib/mol-gl/shader/chunks/assign-color-varying.glsl.js +1 -1
  255. package/lib/mol-gl/shader/chunks/assign-marker-varying.glsl.d.ts +1 -1
  256. package/lib/mol-gl/shader/chunks/assign-marker-varying.glsl.js +1 -1
  257. package/lib/mol-gl/shader/chunks/assign-material-color.glsl.d.ts +1 -1
  258. package/lib/mol-gl/shader/chunks/assign-material-color.glsl.js +1 -1
  259. package/lib/mol-gl/shader/chunks/color-frag-params.glsl.d.ts +1 -1
  260. package/lib/mol-gl/shader/chunks/color-frag-params.glsl.js +1 -1
  261. package/lib/mol-gl/shader/chunks/color-vert-params.glsl.d.ts +1 -1
  262. package/lib/mol-gl/shader/chunks/color-vert-params.glsl.js +1 -1
  263. package/lib/mol-gl/shader/chunks/common-frag-params.glsl.d.ts +1 -1
  264. package/lib/mol-gl/shader/chunks/common-frag-params.glsl.js +1 -1
  265. package/lib/mol-gl/shader/chunks/common-vert-params.glsl.d.ts +1 -1
  266. package/lib/mol-gl/shader/chunks/common-vert-params.glsl.js +1 -1
  267. package/lib/mol-gl/shader/chunks/common.glsl.d.ts +1 -1
  268. package/lib/mol-gl/shader/chunks/common.glsl.js +1 -1
  269. package/lib/mol-gl/shader/cylinders.frag.d.ts +1 -1
  270. package/lib/mol-gl/shader/cylinders.frag.js +1 -1
  271. package/lib/mol-gl/shader/direct-volume.frag.d.ts +1 -1
  272. package/lib/mol-gl/shader/direct-volume.frag.js +1 -1
  273. package/lib/mol-gl/shader/image.frag.d.ts +1 -1
  274. package/lib/mol-gl/shader/image.frag.js +1 -1
  275. package/lib/mol-gl/shader/mesh.frag.d.ts +1 -1
  276. package/lib/mol-gl/shader/mesh.frag.js +1 -1
  277. package/lib/mol-gl/shader/mesh.vert.d.ts +1 -1
  278. package/lib/mol-gl/shader/mesh.vert.js +1 -1
  279. package/lib/mol-gl/shader/spheres.frag.d.ts +1 -1
  280. package/lib/mol-gl/shader/spheres.frag.js +1 -1
  281. package/lib/mol-gl/shader-code.d.ts +3 -1
  282. package/lib/mol-gl/shader-code.js +42 -13
  283. package/lib/mol-gl/webgl/render-item.d.ts +7 -6
  284. package/lib/mol-gl/webgl/render-item.js +8 -6
  285. package/lib/mol-gl/webgl/resources.js +8 -1
  286. package/lib/mol-math/linear-algebra/3d/quat.d.ts +9 -1
  287. package/lib/mol-math/linear-algebra/3d/quat.js +20 -1
  288. package/lib/mol-model-formats/shape/ply.d.ts +20 -0
  289. package/lib/mol-model-props/computed/representations/interactions-inter-unit-cylinder.d.ts +10 -0
  290. package/lib/mol-model-props/computed/representations/interactions-intra-unit-cylinder.d.ts +10 -0
  291. package/lib/mol-model-props/computed/representations/interactions.d.ts +30 -0
  292. package/lib/mol-model-props/integrative/cross-link-restraint/representation.d.ts +40 -0
  293. package/lib/mol-plugin/behavior/dynamic/selection/structure-focus-representation.d.ts +11 -0
  294. package/lib/mol-plugin/behavior/dynamic/selection/structure-focus-representation.js +3 -1
  295. package/lib/mol-plugin/commands.d.ts +1 -4
  296. package/lib/mol-plugin/spec.js +1 -0
  297. package/lib/mol-plugin/util/viewport-screenshot.d.ts +12 -0
  298. package/lib/mol-plugin/version.js +2 -2
  299. package/lib/mol-plugin-state/helpers/structure-clipping.d.ts +1 -1
  300. package/lib/mol-plugin-state/helpers/structure-clipping.js +1 -1
  301. package/lib/mol-plugin-state/manager/structure/component.d.ts +13 -1
  302. package/lib/mol-plugin-state/manager/structure/component.js +13 -8
  303. package/lib/mol-plugin-state/transforms/representation.d.ts +32 -0
  304. package/lib/mol-plugin-ui/viewport/simple-settings.js +2 -6
  305. package/lib/mol-repr/shape/loci/angle.d.ts +10 -0
  306. package/lib/mol-repr/shape/loci/common.d.ts +10 -0
  307. package/lib/mol-repr/shape/loci/dihedral.d.ts +10 -0
  308. package/lib/mol-repr/shape/loci/distance.d.ts +10 -0
  309. package/lib/mol-repr/shape/loci/label.d.ts +10 -0
  310. package/lib/mol-repr/shape/loci/orientation.d.ts +10 -0
  311. package/lib/mol-repr/shape/loci/plane.d.ts +10 -0
  312. package/lib/mol-repr/shape/model/unitcell.d.ts +10 -0
  313. package/lib/mol-repr/structure/complex-visual.d.ts +60 -0
  314. package/lib/mol-repr/structure/params.d.ts +80 -0
  315. package/lib/mol-repr/structure/registry.d.ts +140 -0
  316. package/lib/mol-repr/structure/representation/backbone.d.ts +30 -0
  317. package/lib/mol-repr/structure/representation/ball-and-stick.d.ts +30 -0
  318. package/lib/mol-repr/structure/representation/carbohydrate.d.ts +30 -0
  319. package/lib/mol-repr/structure/representation/cartoon.d.ts +30 -0
  320. package/lib/mol-repr/structure/representation/ellipsoid.d.ts +30 -0
  321. package/lib/mol-repr/structure/representation/gaussian-surface.d.ts +30 -0
  322. package/lib/mol-repr/structure/representation/gaussian-volume.d.ts +30 -0
  323. package/lib/mol-repr/structure/representation/label.d.ts +30 -0
  324. package/lib/mol-repr/structure/representation/line.d.ts +30 -0
  325. package/lib/mol-repr/structure/representation/molecular-surface.d.ts +30 -0
  326. package/lib/mol-repr/structure/representation/orientation.d.ts +30 -0
  327. package/lib/mol-repr/structure/representation/point.d.ts +30 -0
  328. package/lib/mol-repr/structure/representation/putty.d.ts +30 -0
  329. package/lib/mol-repr/structure/representation/spacefill.d.ts +30 -0
  330. package/lib/mol-repr/structure/units-visual.d.ts +80 -0
  331. package/lib/mol-repr/structure/visual/bond-inter-unit-cylinder.d.ts +20 -0
  332. package/lib/mol-repr/structure/visual/bond-inter-unit-line.d.ts +10 -0
  333. package/lib/mol-repr/structure/visual/bond-intra-unit-cylinder.d.ts +20 -0
  334. package/lib/mol-repr/structure/visual/bond-intra-unit-line.d.ts +10 -0
  335. package/lib/mol-repr/structure/visual/carbohydrate-link-cylinder.d.ts +10 -0
  336. package/lib/mol-repr/structure/visual/carbohydrate-symbol-mesh.d.ts +10 -0
  337. package/lib/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.d.ts +10 -0
  338. package/lib/mol-repr/structure/visual/element-cross.d.ts +10 -0
  339. package/lib/mol-repr/structure/visual/element-point.d.ts +10 -0
  340. package/lib/mol-repr/structure/visual/element-sphere.d.ts +20 -0
  341. package/lib/mol-repr/structure/visual/ellipsoid-mesh.d.ts +10 -0
  342. package/lib/mol-repr/structure/visual/gaussian-density-volume.d.ts +20 -0
  343. package/lib/mol-repr/structure/visual/gaussian-surface-mesh.d.ts +40 -0
  344. package/lib/mol-repr/structure/visual/gaussian-surface-wireframe.d.ts +10 -0
  345. package/lib/mol-repr/structure/visual/label-text.d.ts +10 -0
  346. package/lib/mol-repr/structure/visual/molecular-surface-mesh.d.ts +10 -0
  347. package/lib/mol-repr/structure/visual/molecular-surface-wireframe.d.ts +10 -0
  348. package/lib/mol-repr/structure/visual/nucleotide-block-mesh.d.ts +10 -0
  349. package/lib/mol-repr/structure/visual/nucleotide-ring-mesh.d.ts +10 -0
  350. package/lib/mol-repr/structure/visual/orientation-ellipsoid-mesh.d.ts +10 -0
  351. package/lib/mol-repr/structure/visual/polymer-backbone-cylinder.d.ts +20 -0
  352. package/lib/mol-repr/structure/visual/polymer-backbone-sphere.d.ts +20 -0
  353. package/lib/mol-repr/structure/visual/polymer-direction-wedge.d.ts +10 -0
  354. package/lib/mol-repr/structure/visual/polymer-gap-cylinder.d.ts +10 -0
  355. package/lib/mol-repr/structure/visual/polymer-trace-mesh.d.ts +10 -0
  356. package/lib/mol-repr/structure/visual/polymer-tube-mesh.d.ts +10 -0
  357. package/lib/mol-repr/visual.js +11 -7
  358. package/lib/mol-repr/volume/direct-volume.d.ts +30 -0
  359. package/lib/mol-repr/volume/isosurface.d.ts +60 -0
  360. package/lib/mol-repr/volume/registry.d.ts +30 -0
  361. package/lib/mol-repr/volume/representation.d.ts +10 -0
  362. package/lib/mol-repr/volume/slice.d.ts +30 -0
  363. package/lib/mol-theme/clipping.d.ts +7 -15
  364. package/lib/mol-theme/clipping.js +5 -12
  365. package/lib/mol-util/clip.d.ts +49 -0
  366. package/lib/mol-util/clip.js +93 -0
  367. package/package.json +1 -1
@@ -32,6 +32,10 @@ declare const MembraneOrientation3D: StateTransformer<PluginStateObject.Molecule
32
32
  roughness: number;
33
33
  bumpiness: number;
34
34
  }>;
35
+ clip: PD.Normalize<{
36
+ variant: any;
37
+ objects: any;
38
+ }>;
35
39
  sectorOpacity: number;
36
40
  doubleSided: boolean;
37
41
  flipSided: boolean;
@@ -27,6 +27,16 @@ declare const BilayerPlanesParams: {
27
27
  roughness: number;
28
28
  bumpiness: number;
29
29
  }>>;
30
+ clip: PD.Group<PD.Normalize<{
31
+ variant: import("../../mol-util/clip").Clip.Variant;
32
+ objects: PD.Normalize<{
33
+ type: any;
34
+ invert: any;
35
+ position: any;
36
+ rotation: any;
37
+ scale: any;
38
+ }>[];
39
+ }>>;
30
40
  };
31
41
  export declare type BilayerPlanesParams = typeof BilayerPlanesParams;
32
42
  export declare type BilayerPlanesProps = PD.Values<BilayerPlanesParams>;
@@ -44,6 +54,16 @@ declare const BilayerRimsParams: {
44
54
  roughness: number;
45
55
  bumpiness: number;
46
56
  }>>;
57
+ clip: PD.Group<PD.Normalize<{
58
+ variant: import("../../mol-util/clip").Clip.Variant;
59
+ objects: PD.Normalize<{
60
+ type: any;
61
+ invert: any;
62
+ position: any;
63
+ rotation: any;
64
+ scale: any;
65
+ }>[];
66
+ }>>;
47
67
  };
48
68
  export declare type BilayerRimsParams = typeof BilayerRimsParams;
49
69
  export declare type BilayerRimsProps = PD.Values<BilayerRimsParams>;
@@ -62,6 +82,16 @@ export declare const MembraneOrientationParams: {
62
82
  roughness: number;
63
83
  bumpiness: number;
64
84
  }>>;
85
+ clip: PD.Group<PD.Normalize<{
86
+ variant: import("../../mol-util/clip").Clip.Variant;
87
+ objects: PD.Normalize<{
88
+ type: any;
89
+ invert: any;
90
+ position: any;
91
+ rotation: any;
92
+ scale: any;
93
+ }>[];
94
+ }>>;
65
95
  sectorOpacity: PD.Numeric;
66
96
  doubleSided: PD.BooleanParam;
67
97
  flipSided: PD.BooleanParam;
@@ -88,6 +118,16 @@ export declare function getMembraneOrientationParams(ctx: ThemeRegistryContext,
88
118
  roughness: number;
89
119
  bumpiness: number;
90
120
  }>>;
121
+ clip: PD.Group<PD.Normalize<{
122
+ variant: import("../../mol-util/clip").Clip.Variant;
123
+ objects: PD.Normalize<{
124
+ type: any;
125
+ invert: any;
126
+ position: any;
127
+ rotation: any;
128
+ scale: any;
129
+ }>[];
130
+ }>>;
91
131
  sectorOpacity: PD.Numeric;
92
132
  doubleSided: PD.BooleanParam;
93
133
  flipSided: PD.BooleanParam;
@@ -114,6 +154,16 @@ export declare const MembraneOrientationRepresentationProvider: StructureReprese
114
154
  roughness: number;
115
155
  bumpiness: number;
116
156
  }>>;
157
+ clip: PD.Group<PD.Normalize<{
158
+ variant: import("../../mol-util/clip").Clip.Variant;
159
+ objects: PD.Normalize<{
160
+ type: any;
161
+ invert: any;
162
+ position: any;
163
+ rotation: any;
164
+ scale: any;
165
+ }>[];
166
+ }>>;
117
167
  sectorOpacity: PD.Numeric;
118
168
  doubleSided: PD.BooleanParam;
119
169
  flipSided: PD.BooleanParam;
@@ -52,6 +52,16 @@ export declare const MBParams: {
52
52
  roughness: number;
53
53
  bumpiness: number;
54
54
  }>>;
55
+ clip: PD.Group<PD.Normalize<{
56
+ variant: import("../../mol-util/clip").Clip.Variant;
57
+ objects: PD.Normalize<{
58
+ type: any;
59
+ invert: any;
60
+ position: any;
61
+ rotation: any;
62
+ scale: any;
63
+ }>[];
64
+ }>>;
55
65
  };
56
66
  export declare type MBParams = typeof MBParams;
57
67
  export declare type UnitcellProps = PD.Values<MBParams>;
@@ -26,6 +26,16 @@ export declare const ConfalPyramidsParams: {
26
26
  roughness: number;
27
27
  bumpiness: number;
28
28
  }>>;
29
+ clip: PD.Group<PD.Normalize<{
30
+ variant: import("../../../mol-util/clip").Clip.Variant;
31
+ objects: PD.Normalize<{
32
+ type: any;
33
+ invert: any;
34
+ position: any;
35
+ rotation: any;
36
+ scale: any;
37
+ }>[];
38
+ }>>;
29
39
  };
30
40
  export declare type ConfalPyramidsParams = typeof ConfalPyramidsParams;
31
41
  export declare function getConfalPyramidsParams(ctx: ThemeRegistryContext, structure: Structure): {
@@ -45,6 +55,16 @@ export declare function getConfalPyramidsParams(ctx: ThemeRegistryContext, struc
45
55
  roughness: number;
46
56
  bumpiness: number;
47
57
  }>>;
58
+ clip: PD.Group<PD.Normalize<{
59
+ variant: import("../../../mol-util/clip").Clip.Variant;
60
+ objects: PD.Normalize<{
61
+ type: any;
62
+ invert: any;
63
+ position: any;
64
+ rotation: any;
65
+ scale: any;
66
+ }>[];
67
+ }>>;
48
68
  };
49
69
  export declare type ConfalPyramidsRepresentation = StructureRepresentation<ConfalPyramidsParams>;
50
70
  export declare function ConfalPyramidsRepresentation(ctx: RepresentationContext, getParams: RepresentationParamsGetter<Structure, ConfalPyramidsParams>): ConfalPyramidsRepresentation;
@@ -65,4 +85,14 @@ export declare const ConfalPyramidsRepresentationProvider: StructureRepresentati
65
85
  roughness: number;
66
86
  bumpiness: number;
67
87
  }>>;
88
+ clip: PD.Group<PD.Normalize<{
89
+ variant: import("../../../mol-util/clip").Clip.Variant;
90
+ objects: PD.Normalize<{
91
+ type: any;
92
+ invert: any;
93
+ position: any;
94
+ rotation: any;
95
+ scale: any;
96
+ }>[];
97
+ }>>;
68
98
  }, "confal-pyramids">;
@@ -33,6 +33,10 @@ declare const AssemblySymmetry3D: StateTransformer<PluginStateObject.Molecule.St
33
33
  roughness: number;
34
34
  bumpiness: number;
35
35
  }>;
36
+ clip: PD.Normalize<{
37
+ variant: any;
38
+ objects: any;
39
+ }>;
36
40
  axesColor: PD.NamedParams<PD.Normalize<{
37
41
  colorValue: any;
38
42
  }>, "uniform"> | PD.NamedParams<PD.Normalize<unknown>, "byOrder">;
@@ -25,6 +25,16 @@ export declare const AssemblySymmetryParams: {
25
25
  roughness: number;
26
26
  bumpiness: number;
27
27
  }>>;
28
+ clip: PD.Group<PD.Normalize<{
29
+ variant: import("../../../mol-util/clip").Clip.Variant;
30
+ objects: PD.Normalize<{
31
+ type: any;
32
+ invert: any;
33
+ position: any;
34
+ rotation: any;
35
+ scale: any;
36
+ }>[];
37
+ }>>;
28
38
  axesColor: PD.Mapped<PD.NamedParams<PD.Normalize<{
29
39
  colorValue: Color;
30
40
  }>, "uniform"> | PD.NamedParams<PD.Normalize<unknown>, "byOrder">>;
@@ -40,6 +40,16 @@ export declare const IntraUnitClashParams: {
40
40
  roughness: number;
41
41
  bumpiness: number;
42
42
  }>>;
43
+ clip: PD.Group<PD.Normalize<{
44
+ variant: import("../../../mol-util/clip").Clip.Variant;
45
+ objects: PD.Normalize<{
46
+ type: any;
47
+ invert: any;
48
+ position: any;
49
+ rotation: any;
50
+ scale: any;
51
+ }>[];
52
+ }>>;
43
53
  };
44
54
  export declare type IntraUnitClashParams = typeof IntraUnitClashParams;
45
55
  export declare function IntraUnitClashVisual(materialId: number): UnitsVisual<IntraUnitClashParams>;
@@ -72,6 +82,16 @@ export declare const InterUnitClashParams: {
72
82
  roughness: number;
73
83
  bumpiness: number;
74
84
  }>>;
85
+ clip: PD.Group<PD.Normalize<{
86
+ variant: import("../../../mol-util/clip").Clip.Variant;
87
+ objects: PD.Normalize<{
88
+ type: any;
89
+ invert: any;
90
+ position: any;
91
+ rotation: any;
92
+ scale: any;
93
+ }>[];
94
+ }>>;
75
95
  };
76
96
  export declare type InterUnitClashParams = typeof InterUnitClashParams;
77
97
  export declare function InterUnitClashVisual(materialId: number): ComplexVisual<InterUnitClashParams>;
@@ -105,6 +125,16 @@ export declare const ClashesParams: {
105
125
  roughness: number;
106
126
  bumpiness: number;
107
127
  }>>;
128
+ clip: PD.Group<PD.Normalize<{
129
+ variant: import("../../../mol-util/clip").Clip.Variant;
130
+ objects: PD.Normalize<{
131
+ type: any;
132
+ invert: any;
133
+ position: any;
134
+ rotation: any;
135
+ scale: any;
136
+ }>[];
137
+ }>>;
108
138
  };
109
139
  export declare type ClashesParams = typeof ClashesParams;
110
140
  export declare function getClashesParams(ctx: ThemeRegistryContext, structure: Structure): {
@@ -137,6 +167,16 @@ export declare function getClashesParams(ctx: ThemeRegistryContext, structure: S
137
167
  roughness: number;
138
168
  bumpiness: number;
139
169
  }>>;
170
+ clip: PD.Group<PD.Normalize<{
171
+ variant: import("../../../mol-util/clip").Clip.Variant;
172
+ objects: PD.Normalize<{
173
+ type: any;
174
+ invert: any;
175
+ position: any;
176
+ rotation: any;
177
+ scale: any;
178
+ }>[];
179
+ }>>;
140
180
  };
141
181
  export declare type ClashesRepresentation = StructureRepresentation<ClashesParams>;
142
182
  export declare function ClashesRepresentation(ctx: RepresentationContext, getParams: RepresentationParamsGetter<Structure, ClashesParams>): ClashesRepresentation;
@@ -170,4 +210,14 @@ export declare const ClashesRepresentationProvider: StructureRepresentationProvi
170
210
  roughness: number;
171
211
  bumpiness: number;
172
212
  }>>;
213
+ clip: PD.Group<PD.Normalize<{
214
+ variant: import("../../../mol-util/clip").Clip.Variant;
215
+ objects: PD.Normalize<{
216
+ type: any;
217
+ invert: any;
218
+ position: any;
219
+ rotation: any;
220
+ scale: any;
221
+ }>[];
222
+ }>>;
173
223
  }, ValidationReport.Tag.Clashes>;
@@ -107,10 +107,6 @@ export declare const Canvas3DParams: {
107
107
  }>[];
108
108
  ambientColor: import("../mol-util/color").Color;
109
109
  ambientIntensity: number;
110
- clip: PD.Normalize<{
111
- variant: any;
112
- objects: any;
113
- }>;
114
110
  }>>;
115
111
  trackball: PD.Group<PD.Normalize<{
116
112
  noScroll: boolean;
@@ -169,6 +165,7 @@ export declare const Canvas3DParams: {
169
165
  bumpAmplitude: any;
170
166
  quality: any;
171
167
  material: any;
168
+ clip: any;
172
169
  }>, "on">;
173
170
  }>>;
174
171
  };
@@ -258,10 +255,6 @@ export declare const DefaultCanvas3DParams: PD.Values<{
258
255
  }>[];
259
256
  ambientColor: import("../mol-util/color").Color;
260
257
  ambientIntensity: number;
261
- clip: PD.Normalize<{
262
- variant: any;
263
- objects: any;
264
- }>;
265
258
  }>>;
266
259
  trackball: PD.Group<PD.Normalize<{
267
260
  noScroll: boolean;
@@ -320,6 +313,7 @@ export declare const DefaultCanvas3DParams: PD.Values<{
320
313
  bumpAmplitude: any;
321
314
  quality: any;
322
315
  material: any;
316
+ clip: any;
323
317
  }>, "on">;
324
318
  }>>;
325
319
  }>;
@@ -38,6 +38,7 @@ var helper_1 = require("./helper/helper");
38
38
  var passes_1 = require("./passes/passes");
39
39
  var mol_util_1 = require("../mol-util");
40
40
  var marking_1 = require("./passes/marking");
41
+ var render_item_1 = require("../mol-gl/webgl/render-item");
41
42
  exports.Canvas3DParams = {
42
43
  camera: param_definition_1.ParamDefinition.Group({
43
44
  mode: param_definition_1.ParamDefinition.Select('perspective', param_definition_1.ParamDefinition.arrayToOptions(['perspective', 'orthographic']), { label: 'Camera' }),
@@ -202,7 +203,7 @@ var Canvas3D;
202
203
  var width = 128;
203
204
  var height = 128;
204
205
  updateViewport();
205
- var scene = scene_1.Scene.create(webgl);
206
+ var scene = scene_1.Scene.create(webgl, passes.draw.wboitEnabled ? render_item_1.GraphicsRenderVariantsWboit : render_item_1.GraphicsRenderVariantsBlended);
206
207
  var camera = new camera_1.Camera({
207
208
  position: linear_algebra_1.Vec3.create(0, 0, 100),
208
209
  mode: p.camera.mode,
@@ -18,6 +18,7 @@ var names_1 = require("../../mol-util/color/names");
18
18
  var sphere_2 = require("../../mol-geo/primitive/sphere");
19
19
  var mol_util_1 = require("../../mol-util");
20
20
  var geometry_2 = require("../../mol-geo/geometry/geometry");
21
+ var render_item_1 = require("../../mol-gl/webgl/render-item");
21
22
  exports.DebugHelperParams = {
22
23
  sceneBoundingSpheres: param_definition_1.ParamDefinition.Boolean(false, { description: 'Show full scene bounding spheres.' }),
23
24
  visibleSceneBoundingSpheres: param_definition_1.ParamDefinition.Boolean(false, { description: 'Show visible scene bounding spheres.' }),
@@ -28,7 +29,7 @@ var BoundingSphereHelper = /** @class */ (function () {
28
29
  function BoundingSphereHelper(ctx, parent, props) {
29
30
  this.objectsData = new Map();
30
31
  this.instancesData = new Map();
31
- this.scene = scene_1.Scene.create(ctx);
32
+ this.scene = scene_1.Scene.create(ctx, render_item_1.GraphicsRenderVariantsBlended);
32
33
  this.parent = parent;
33
34
  this._props = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, param_definition_1.ParamDefinition.getDefaultValues(exports.DebugHelperParams)), props);
34
35
  }
@@ -151,6 +152,6 @@ var objectMaterialId = (0, render_object_1.getNextMaterialId)();
151
152
  var instanceMaterialId = (0, render_object_1.getNextMaterialId)();
152
153
  function createBoundingSphereRenderObject(mesh, color, materialId, transform) {
153
154
  var values = mesh_1.Mesh.Utils.createValuesSimple(mesh, { alpha: 0.1, doubleSided: false }, color, 1, transform);
154
- return (0, render_object_1.createRenderObject)('mesh', values, { disposed: false, visible: true, alphaFactor: 1, pickable: false, colorOnly: false, opaque: false, writeDepth: false, noClip: false }, materialId);
155
+ return (0, render_object_1.createRenderObject)('mesh', values, { disposed: false, visible: true, alphaFactor: 1, pickable: false, colorOnly: false, opaque: false, writeDepth: false }, materialId);
155
156
  }
156
157
  //# sourceMappingURL=bounding-sphere-helper.js.map
@@ -30,6 +30,10 @@ export declare const CameraHelperParams: {
30
30
  roughness: number;
31
31
  bumpiness: number;
32
32
  }>;
33
+ clip: PD.Normalize<{
34
+ variant: any;
35
+ objects: any;
36
+ }>;
33
37
  }>, "on">>;
34
38
  };
35
39
  export declare type CameraHelperParams = typeof CameraHelperParams;
@@ -14,6 +14,7 @@ var sphere_1 = require("../../mol-geo/geometry/mesh/builder/sphere");
14
14
  var mesh_1 = require("../../mol-geo/geometry/mesh/mesh");
15
15
  var mesh_builder_1 = require("../../mol-geo/geometry/mesh/mesh-builder");
16
16
  var scene_1 = require("../../mol-gl/scene");
17
+ var render_item_1 = require("../../mol-gl/webgl/render-item");
17
18
  var geometry_1 = require("../../mol-math/geometry");
18
19
  var linear_algebra_1 = require("../../mol-math/linear-algebra");
19
20
  var loci_1 = require("../../mol-model/loci");
@@ -55,7 +56,7 @@ var CameraHelper = /** @class */ (function () {
55
56
  }
56
57
  return changed;
57
58
  };
58
- this.scene = scene_1.Scene.create(webgl);
59
+ this.scene = scene_1.Scene.create(webgl, render_item_1.GraphicsRenderVariantsBlended);
59
60
  this.camera = new camera_1.Camera();
60
61
  linear_algebra_1.Vec3.set(this.camera.up, 0, 1, 0);
61
62
  linear_algebra_1.Vec3.set(this.camera.target, 0, 0, 0);
@@ -70,7 +71,6 @@ var CameraHelper = /** @class */ (function () {
70
71
  _this.scene.clear();
71
72
  var params = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, props.axes.params), { scale: props.axes.params.scale * _this.webgl.pixelRatio });
72
73
  _this.renderObject = createAxesRenderObject(params);
73
- _this.renderObject.state.noClip = true;
74
74
  _this.scene.add(_this.renderObject);
75
75
  _this.scene.commit();
76
76
  linear_algebra_1.Vec3.set(_this.camera.position, 0, 0, params.scale * 200);
@@ -32,6 +32,10 @@ export declare const HandleHelperParams: {
32
32
  roughness: number;
33
33
  bumpiness: number;
34
34
  }>;
35
+ clip: PD.Normalize<{
36
+ variant: any;
37
+ objects: any;
38
+ }>;
35
39
  }>, "on">>;
36
40
  };
37
41
  export declare type HandleHelperParams = typeof HandleHelperParams;
@@ -23,6 +23,7 @@ var loci_1 = require("../../mol-model/loci");
23
23
  var marker_action_1 = require("../../mol-util/marker-action");
24
24
  var visual_1 = require("../../mol-repr/visual");
25
25
  var int_1 = require("../../mol-data/int");
26
+ var render_item_1 = require("../../mol-gl/webgl/render-item");
26
27
  var HandleParams = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, mesh_1.Mesh.Params), { alpha: (0, tslib_1.__assign)((0, tslib_1.__assign)({}, mesh_1.Mesh.Params.alpha), { defaultValue: 1 }), ignoreLight: (0, tslib_1.__assign)((0, tslib_1.__assign)({}, mesh_1.Mesh.Params.ignoreLight), { defaultValue: true }), colorX: param_definition_1.ParamDefinition.Color(names_1.ColorNames.red, { isEssential: true }), colorY: param_definition_1.ParamDefinition.Color(names_1.ColorNames.green, { isEssential: true }), colorZ: param_definition_1.ParamDefinition.Color(names_1.ColorNames.blue, { isEssential: true }), scale: param_definition_1.ParamDefinition.Numeric(0.33, { min: 0.1, max: 2, step: 0.1 }, { isEssential: true }) });
27
28
  exports.HandleHelperParams = {
28
29
  handle: param_definition_1.ParamDefinition.MappedStatic('off', {
@@ -55,7 +56,7 @@ var HandleHelper = /** @class */ (function () {
55
56
  }
56
57
  return changed;
57
58
  };
58
- this.scene = scene_1.Scene.create(webgl);
59
+ this.scene = scene_1.Scene.create(webgl, render_item_1.GraphicsRenderVariantsBlended);
59
60
  this.setProps(props);
60
61
  }
61
62
  HandleHelper.prototype.getBoundingSphere = function (out, instanceId) {
@@ -75,7 +76,6 @@ var HandleHelper = /** @class */ (function () {
75
76
  _this.scene.clear();
76
77
  var params = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, props.handle.params), { scale: props.handle.params.scale * _this.webgl.pixelRatio });
77
78
  _this.renderObject = createHandleRenderObject(params);
78
- _this.renderObject.state.noClip = true;
79
79
  _this.scene.add(_this.renderObject);
80
80
  _this.scene.commit();
81
81
  p.handle.params = (0, tslib_1.__assign)({}, props.handle.params);
@@ -37,6 +37,7 @@ export declare const HelperParams: {
37
37
  bumpAmplitude: any;
38
38
  quality: any;
39
39
  material: any;
40
+ clip: any;
40
41
  }>, "on">;
41
42
  }>>;
42
43
  };
@@ -68,6 +69,7 @@ export declare const DefaultHelperProps: PD.Values<{
68
69
  bumpAmplitude: any;
69
70
  quality: any;
70
71
  material: any;
72
+ clip: any;
71
73
  }>, "on">;
72
74
  }>>;
73
75
  }>;
@@ -63,6 +63,7 @@ export declare const ImageParams: {
63
63
  bumpAmplitude: any;
64
64
  quality: any;
65
65
  material: any;
66
+ clip: any;
66
67
  }>, "on">;
67
68
  }>>;
68
69
  };
@@ -46,29 +46,29 @@ var PickPass = /** @class */ (function () {
46
46
  this.depthPickTarget.setSize(this.pickWidth, this.pickHeight);
47
47
  }
48
48
  };
49
- PickPass.prototype.renderVariant = function (renderer, camera, scene, helper, variant) {
49
+ PickPass.prototype.renderVariant = function (renderer, camera, scene, helper, variant, pickType) {
50
50
  var depth = this.drawPass.depthTexturePrimitives;
51
51
  renderer.clear(false);
52
52
  renderer.update(camera);
53
- renderer.renderPick(scene.primitives, camera, variant, null);
54
- renderer.renderPick(scene.volumes, camera, variant, depth);
55
- renderer.renderPick(helper.handle.scene, camera, variant, null);
53
+ renderer.renderPick(scene.primitives, camera, variant, null, pickType);
54
+ renderer.renderPick(scene.volumes, camera, variant, depth, pickType);
55
+ renderer.renderPick(helper.handle.scene, camera, variant, null, pickType);
56
56
  if (helper.camera.isEnabled) {
57
57
  helper.camera.update(camera);
58
58
  renderer.update(helper.camera.camera);
59
- renderer.renderPick(helper.camera.scene, helper.camera.camera, variant, null);
59
+ renderer.renderPick(helper.camera.scene, helper.camera.camera, variant, null, pickType);
60
60
  }
61
61
  };
62
62
  PickPass.prototype.render = function (renderer, camera, scene, helper) {
63
63
  this.objectPickTarget.bind();
64
- this.renderVariant(renderer, camera, scene, helper, 'pickObject');
64
+ this.renderVariant(renderer, camera, scene, helper, 'pick', 1 /* Object */);
65
65
  this.instancePickTarget.bind();
66
- this.renderVariant(renderer, camera, scene, helper, 'pickInstance');
66
+ this.renderVariant(renderer, camera, scene, helper, 'pick', 2 /* Instance */);
67
67
  this.groupPickTarget.bind();
68
- this.renderVariant(renderer, camera, scene, helper, 'pickGroup');
68
+ this.renderVariant(renderer, camera, scene, helper, 'pick', 3 /* Group */);
69
69
  // printTexture(this.webgl, this.groupPickTarget.texture, { id: 'group' })
70
70
  this.depthPickTarget.bind();
71
- this.renderVariant(renderer, camera, scene, helper, 'depth');
71
+ this.renderVariant(renderer, camera, scene, helper, 'depth', 0 /* None */);
72
72
  };
73
73
  return PickPass;
74
74
  }());
@@ -34,7 +34,7 @@ function getOutlinesRenderable(ctx, depthTexture) {
34
34
  }
35
35
  var SsaoSchema = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, util_1.QuadSchema), { tDepth: (0, schema_1.TextureSpec)('texture', 'rgba', 'ubyte', 'nearest'), uSamples: (0, schema_1.UniformSpec)('v3[]'), dNSamples: (0, schema_1.DefineSpec)('number'), uProjection: (0, schema_1.UniformSpec)('m4'), uInvProjection: (0, schema_1.UniformSpec)('m4'), uBounds: (0, schema_1.UniformSpec)('v4'), uTexSize: (0, schema_1.UniformSpec)('v2'), uRadius: (0, schema_1.UniformSpec)('f'), uBias: (0, schema_1.UniformSpec)('f') });
36
36
  function getSsaoRenderable(ctx, depthTexture) {
37
- var values = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, util_1.QuadValues), { tDepth: mol_util_1.ValueCell.create(depthTexture), uSamples: mol_util_1.ValueCell.create([0.0, 0.0, 1.0]), dNSamples: mol_util_1.ValueCell.create(1), uProjection: mol_util_1.ValueCell.create(linear_algebra_1.Mat4.identity()), uInvProjection: mol_util_1.ValueCell.create(linear_algebra_1.Mat4.identity()), uBounds: mol_util_1.ValueCell.create((0, linear_algebra_1.Vec4)()), uTexSize: mol_util_1.ValueCell.create(linear_algebra_1.Vec2.create(ctx.gl.drawingBufferWidth, ctx.gl.drawingBufferHeight)), uRadius: mol_util_1.ValueCell.create(8.0), uBias: mol_util_1.ValueCell.create(0.025) });
37
+ var values = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, util_1.QuadValues), { tDepth: mol_util_1.ValueCell.create(depthTexture), uSamples: mol_util_1.ValueCell.create([0.0, 0.0, 1.0]), dNSamples: mol_util_1.ValueCell.create(32), uProjection: mol_util_1.ValueCell.create(linear_algebra_1.Mat4.identity()), uInvProjection: mol_util_1.ValueCell.create(linear_algebra_1.Mat4.identity()), uBounds: mol_util_1.ValueCell.create((0, linear_algebra_1.Vec4)()), uTexSize: mol_util_1.ValueCell.create(linear_algebra_1.Vec2.create(ctx.gl.drawingBufferWidth, ctx.gl.drawingBufferHeight)), uRadius: mol_util_1.ValueCell.create(8.0), uBias: mol_util_1.ValueCell.create(0.025) });
38
38
  var schema = (0, tslib_1.__assign)({}, SsaoSchema);
39
39
  var shaderCode = (0, shader_code_1.ShaderCode)('ssao', quad_vert_1.quad_vert, ssao_frag_1.ssao_frag);
40
40
  var renderItem = (0, render_item_1.createComputeRenderItem)(ctx, 'triangles', shaderCode, schema, values);
@@ -42,7 +42,7 @@ function getSsaoRenderable(ctx, depthTexture) {
42
42
  }
43
43
  var SsaoBlurSchema = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, util_1.QuadSchema), { tSsaoDepth: (0, schema_1.TextureSpec)('texture', 'rgba', 'ubyte', 'nearest'), uTexSize: (0, schema_1.UniformSpec)('v2'), uKernel: (0, schema_1.UniformSpec)('f[]'), dOcclusionKernelSize: (0, schema_1.DefineSpec)('number'), uBlurDirectionX: (0, schema_1.UniformSpec)('f'), uBlurDirectionY: (0, schema_1.UniformSpec)('f'), uMaxPossibleViewZDiff: (0, schema_1.UniformSpec)('f'), uNear: (0, schema_1.UniformSpec)('f'), uFar: (0, schema_1.UniformSpec)('f'), uBounds: (0, schema_1.UniformSpec)('v4'), dOrthographic: (0, schema_1.DefineSpec)('number') });
44
44
  function getSsaoBlurRenderable(ctx, ssaoDepthTexture, direction) {
45
- var values = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, util_1.QuadValues), { tSsaoDepth: mol_util_1.ValueCell.create(ssaoDepthTexture), uTexSize: mol_util_1.ValueCell.create(linear_algebra_1.Vec2.create(ssaoDepthTexture.getWidth(), ssaoDepthTexture.getHeight())), uKernel: mol_util_1.ValueCell.create([0.0]), dOcclusionKernelSize: mol_util_1.ValueCell.create(1), uBlurDirectionX: mol_util_1.ValueCell.create(direction === 'horizontal' ? 1 : 0), uBlurDirectionY: mol_util_1.ValueCell.create(direction === 'vertical' ? 1 : 0), uMaxPossibleViewZDiff: mol_util_1.ValueCell.create(0.5), uNear: mol_util_1.ValueCell.create(0.0), uFar: mol_util_1.ValueCell.create(10000.0), uBounds: mol_util_1.ValueCell.create((0, linear_algebra_1.Vec4)()), dOrthographic: mol_util_1.ValueCell.create(0) });
45
+ var values = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, util_1.QuadValues), { tSsaoDepth: mol_util_1.ValueCell.create(ssaoDepthTexture), uTexSize: mol_util_1.ValueCell.create(linear_algebra_1.Vec2.create(ssaoDepthTexture.getWidth(), ssaoDepthTexture.getHeight())), uKernel: mol_util_1.ValueCell.create([0.0]), dOcclusionKernelSize: mol_util_1.ValueCell.create(15), uBlurDirectionX: mol_util_1.ValueCell.create(direction === 'horizontal' ? 1 : 0), uBlurDirectionY: mol_util_1.ValueCell.create(direction === 'vertical' ? 1 : 0), uMaxPossibleViewZDiff: mol_util_1.ValueCell.create(0.5), uNear: mol_util_1.ValueCell.create(0.0), uFar: mol_util_1.ValueCell.create(10000.0), uBounds: mol_util_1.ValueCell.create((0, linear_algebra_1.Vec4)()), dOrthographic: mol_util_1.ValueCell.create(0) });
46
46
  var schema = (0, tslib_1.__assign)({}, SsaoBlurSchema);
47
47
  var shaderCode = (0, shader_code_1.ShaderCode)('ssao_blur', quad_vert_1.quad_vert, ssao_blur_frag_1.ssaoBlur_frag);
48
48
  var renderItem = (0, render_item_1.createComputeRenderItem)(ctx, 'triangles', shaderCode, schema, values);
@@ -70,7 +70,7 @@ function getSamples(vectorSamples, nSamples) {
70
70
  }
71
71
  var PostprocessingSchema = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, util_1.QuadSchema), { tSsaoDepth: (0, schema_1.TextureSpec)('texture', 'rgba', 'ubyte', 'nearest'), tColor: (0, schema_1.TextureSpec)('texture', 'rgba', 'ubyte', 'nearest'), tDepth: (0, schema_1.TextureSpec)('texture', 'rgba', 'ubyte', 'nearest'), tOutlines: (0, schema_1.TextureSpec)('texture', 'rgba', 'ubyte', 'nearest'), uTexSize: (0, schema_1.UniformSpec)('v2'), dOrthographic: (0, schema_1.DefineSpec)('number'), uNear: (0, schema_1.UniformSpec)('f'), uFar: (0, schema_1.UniformSpec)('f'), uFogNear: (0, schema_1.UniformSpec)('f'), uFogFar: (0, schema_1.UniformSpec)('f'), uFogColor: (0, schema_1.UniformSpec)('v3'), uOutlineColor: (0, schema_1.UniformSpec)('v3'), uTransparentBackground: (0, schema_1.UniformSpec)('b'), uMaxPossibleViewZDiff: (0, schema_1.UniformSpec)('f'), dOcclusionEnable: (0, schema_1.DefineSpec)('boolean'), dOutlineEnable: (0, schema_1.DefineSpec)('boolean'), dOutlineScale: (0, schema_1.DefineSpec)('number'), uOutlineThreshold: (0, schema_1.UniformSpec)('f') });
72
72
  function getPostprocessingRenderable(ctx, colorTexture, depthTexture, outlinesTexture, ssaoDepthTexture) {
73
- var values = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, util_1.QuadValues), { tSsaoDepth: mol_util_1.ValueCell.create(ssaoDepthTexture), tColor: mol_util_1.ValueCell.create(colorTexture), tDepth: mol_util_1.ValueCell.create(depthTexture), tOutlines: mol_util_1.ValueCell.create(outlinesTexture), uTexSize: mol_util_1.ValueCell.create(linear_algebra_1.Vec2.create(colorTexture.getWidth(), colorTexture.getHeight())), dOrthographic: mol_util_1.ValueCell.create(0), uNear: mol_util_1.ValueCell.create(1), uFar: mol_util_1.ValueCell.create(10000), uFogNear: mol_util_1.ValueCell.create(10000), uFogFar: mol_util_1.ValueCell.create(10000), uFogColor: mol_util_1.ValueCell.create(linear_algebra_1.Vec3.create(1, 1, 1)), uOutlineColor: mol_util_1.ValueCell.create(linear_algebra_1.Vec3.create(0, 0, 0)), uTransparentBackground: mol_util_1.ValueCell.create(false), uMaxPossibleViewZDiff: mol_util_1.ValueCell.create(0.5), dOcclusionEnable: mol_util_1.ValueCell.create(false), dOutlineEnable: mol_util_1.ValueCell.create(false), dOutlineScale: mol_util_1.ValueCell.create(1), uOutlineThreshold: mol_util_1.ValueCell.create(0.33) });
73
+ var values = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, util_1.QuadValues), { tSsaoDepth: mol_util_1.ValueCell.create(ssaoDepthTexture), tColor: mol_util_1.ValueCell.create(colorTexture), tDepth: mol_util_1.ValueCell.create(depthTexture), tOutlines: mol_util_1.ValueCell.create(outlinesTexture), uTexSize: mol_util_1.ValueCell.create(linear_algebra_1.Vec2.create(colorTexture.getWidth(), colorTexture.getHeight())), dOrthographic: mol_util_1.ValueCell.create(0), uNear: mol_util_1.ValueCell.create(1), uFar: mol_util_1.ValueCell.create(10000), uFogNear: mol_util_1.ValueCell.create(10000), uFogFar: mol_util_1.ValueCell.create(10000), uFogColor: mol_util_1.ValueCell.create(linear_algebra_1.Vec3.create(1, 1, 1)), uOutlineColor: mol_util_1.ValueCell.create(linear_algebra_1.Vec3.create(0, 0, 0)), uTransparentBackground: mol_util_1.ValueCell.create(false), uMaxPossibleViewZDiff: mol_util_1.ValueCell.create(0.5), dOcclusionEnable: mol_util_1.ValueCell.create(true), dOutlineEnable: mol_util_1.ValueCell.create(false), dOutlineScale: mol_util_1.ValueCell.create(1), uOutlineThreshold: mol_util_1.ValueCell.create(0.33) });
74
74
  var schema = (0, tslib_1.__assign)({}, PostprocessingSchema);
75
75
  var shaderCode = (0, shader_code_1.ShaderCode)('postprocessing', quad_vert_1.quad_vert, postprocessing_frag_1.postprocessing_frag);
76
76
  var renderItem = (0, render_item_1.createComputeRenderItem)(ctx, 'triangles', shaderCode, schema, values);
@@ -138,7 +138,7 @@ function getWeightsRenderable(ctx, edgesTexture) {
138
138
  var height = edgesTexture.getHeight();
139
139
  var areaTexture = (0, texture_1.createTexture)(ctx.gl, ctx.extensions, 'image-uint8', 'rgb', 'ubyte', 'linear');
140
140
  var searchTexture = (0, texture_1.createTexture)(ctx.gl, ctx.extensions, 'image-uint8', 'rgba', 'ubyte', 'nearest');
141
- var values = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, util_1.QuadValues), { tEdges: mol_util_1.ValueCell.create(edgesTexture), tArea: mol_util_1.ValueCell.create(areaTexture), tSearch: mol_util_1.ValueCell.create(searchTexture), uTexSizeInv: mol_util_1.ValueCell.create(linear_algebra_1.Vec2.create(1 / width, 1 / height)), uViewport: mol_util_1.ValueCell.create((0, linear_algebra_1.Vec4)()), dMaxSearchSteps: mol_util_1.ValueCell.create(8) });
141
+ var values = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, util_1.QuadValues), { tEdges: mol_util_1.ValueCell.create(edgesTexture), tArea: mol_util_1.ValueCell.create(areaTexture), tSearch: mol_util_1.ValueCell.create(searchTexture), uTexSizeInv: mol_util_1.ValueCell.create(linear_algebra_1.Vec2.create(1 / width, 1 / height)), uViewport: mol_util_1.ValueCell.create((0, linear_algebra_1.Vec4)()), dMaxSearchSteps: mol_util_1.ValueCell.create(16) });
142
142
  // Note: loading image textures requires `HTMLImageElement` to be available
143
143
  (0, texture_1.loadImageTexture)(getAreaTexture(), values.tArea, areaTexture);
144
144
  (0, texture_1.loadImageTexture)(getSearchTexture(), values.tSearch, searchTexture);
@@ -10,6 +10,7 @@ import { LocationIterator } from '../util/location-iterator';
10
10
  import { ParamDefinition as PD } from '../../mol-util/param-definition';
11
11
  import { TransformData } from './transform-data';
12
12
  import { Theme } from '../../mol-theme/theme';
13
+ import { Clip } from '../../mol-util/clip';
13
14
  export declare const VisualQualityInfo: {
14
15
  custom: {};
15
16
  auto: {};
@@ -48,6 +49,16 @@ export declare namespace BaseGeometry {
48
49
  roughness: number;
49
50
  bumpiness: number;
50
51
  }>>;
52
+ clip: PD.Group<PD.Normalize<{
53
+ variant: Clip.Variant;
54
+ objects: PD.Normalize<{
55
+ type: any;
56
+ invert: any;
57
+ position: any;
58
+ rotation: any;
59
+ scale: any;
60
+ }>[];
61
+ }>>;
51
62
  };
52
63
  type Params = typeof Params;
53
64
  type Counts = {
@@ -71,6 +82,13 @@ export declare namespace BaseGeometry {
71
82
  uRoughness: ValueCell<number, never>;
72
83
  uBumpiness: ValueCell<number, never>;
73
84
  dLightCount: ValueCell<number, never>;
85
+ dClipObjectCount: ValueCell<number, never>;
86
+ dClipVariant: ValueCell<Clip.Variant, never>;
87
+ uClipObjectType: ValueCell<number[], never>;
88
+ uClipObjectInvert: ValueCell<boolean[], never>;
89
+ uClipObjectPosition: ValueCell<number[], never>;
90
+ uClipObjectRotation: ValueCell<number[], never>;
91
+ uClipObjectScale: ValueCell<number[], never>;
74
92
  };
75
93
  function updateValues(values: BaseValues, props: PD.Values<Params>): void;
76
94
  function createRenderableState(props?: Partial<PD.Values<Params>>): RenderableState;
@@ -16,6 +16,7 @@ var uniform_1 = require("../../mol-theme/color/uniform");
16
16
  var uniform_2 = require("../../mol-theme/size/uniform");
17
17
  var interpolate_1 = require("../../mol-math/interpolate");
18
18
  var material_1 = require("../../mol-util/material");
19
+ var clip_1 = require("../../mol-util/clip");
19
20
  exports.VisualQualityInfo = {
20
21
  'custom': {},
21
22
  'auto': {},
@@ -76,6 +77,7 @@ var BaseGeometry;
76
77
  alpha: param_definition_1.ParamDefinition.Numeric(1, { min: 0, max: 1, step: 0.01 }, { label: 'Opacity', isEssential: true, description: 'How opaque/transparent the representation is rendered.' }),
77
78
  quality: param_definition_1.ParamDefinition.Select('auto', exports.VisualQualityOptions, { isEssential: true, description: 'Visual/rendering quality of the representation.' }),
78
79
  material: material_1.Material.getParam(),
80
+ clip: param_definition_1.ParamDefinition.Group(clip_1.Clip.Params),
79
81
  };
80
82
  function createSimple(colorValue, sizeValue, transform) {
81
83
  if (colorValue === void 0) { colorValue = names_1.ColorNames.grey; }
@@ -91,6 +93,7 @@ var BaseGeometry;
91
93
  }
92
94
  BaseGeometry.createSimple = createSimple;
93
95
  function createValues(props, counts) {
96
+ var clip = clip_1.Clip.getClip(props.clip);
94
97
  return {
95
98
  alpha: mol_util_1.ValueCell.create(props.alpha),
96
99
  uAlpha: mol_util_1.ValueCell.create(props.alpha),
@@ -101,6 +104,13 @@ var BaseGeometry;
101
104
  uRoughness: mol_util_1.ValueCell.create(props.material.roughness),
102
105
  uBumpiness: mol_util_1.ValueCell.create(props.material.bumpiness),
103
106
  dLightCount: mol_util_1.ValueCell.create(1),
107
+ dClipObjectCount: mol_util_1.ValueCell.create(clip.objects.count),
108
+ dClipVariant: mol_util_1.ValueCell.create(clip.variant),
109
+ uClipObjectType: mol_util_1.ValueCell.create(clip.objects.type),
110
+ uClipObjectInvert: mol_util_1.ValueCell.create(clip.objects.invert),
111
+ uClipObjectPosition: mol_util_1.ValueCell.create(clip.objects.position),
112
+ uClipObjectRotation: mol_util_1.ValueCell.create(clip.objects.rotation),
113
+ uClipObjectScale: mol_util_1.ValueCell.create(clip.objects.scale),
104
114
  };
105
115
  }
106
116
  BaseGeometry.createValues = createValues;
@@ -109,6 +119,14 @@ var BaseGeometry;
109
119
  mol_util_1.ValueCell.updateIfChanged(values.uMetalness, props.material.metalness);
110
120
  mol_util_1.ValueCell.updateIfChanged(values.uRoughness, props.material.roughness);
111
121
  mol_util_1.ValueCell.updateIfChanged(values.uBumpiness, props.material.bumpiness);
122
+ var clip = clip_1.Clip.getClip(props.clip);
123
+ mol_util_1.ValueCell.update(values.dClipObjectCount, clip.objects.count);
124
+ mol_util_1.ValueCell.update(values.dClipVariant, clip.variant);
125
+ mol_util_1.ValueCell.update(values.uClipObjectType, clip.objects.type);
126
+ mol_util_1.ValueCell.update(values.uClipObjectInvert, clip.objects.invert);
127
+ mol_util_1.ValueCell.update(values.uClipObjectPosition, clip.objects.position);
128
+ mol_util_1.ValueCell.update(values.uClipObjectRotation, clip.objects.rotation);
129
+ mol_util_1.ValueCell.update(values.uClipObjectScale, clip.objects.scale);
112
130
  }
113
131
  BaseGeometry.updateValues = updateValues;
114
132
  function createRenderableState(props) {
@@ -122,7 +140,6 @@ var BaseGeometry;
122
140
  colorOnly: false,
123
141
  opaque: opaque,
124
142
  writeDepth: opaque,
125
- noClip: false,
126
143
  };
127
144
  }
128
145
  BaseGeometry.createRenderableState = createRenderableState;