@visactor/vrender-kits 0.19.6-alpha.3 → 0.19.6

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 (302) hide show
  1. package/cjs/canvas/contributions/browser/canvas.js +1 -2
  2. package/cjs/canvas/contributions/browser/canvas.js.map +1 -1
  3. package/cjs/canvas/contributions/browser/context.js +13 -26
  4. package/cjs/canvas/contributions/browser/context.js.map +1 -1
  5. package/cjs/canvas/contributions/feishu/canvas.js +1 -2
  6. package/cjs/canvas/contributions/feishu/canvas.js.map +1 -1
  7. package/cjs/canvas/contributions/feishu/context.js +3 -4
  8. package/cjs/canvas/contributions/feishu/context.js.map +1 -1
  9. package/cjs/canvas/contributions/harmony/canvas.js +1 -2
  10. package/cjs/canvas/contributions/harmony/canvas.js.map +1 -1
  11. package/cjs/canvas/contributions/harmony/context.js +4 -4
  12. package/cjs/canvas/contributions/harmony/context.js.map +1 -1
  13. package/cjs/canvas/contributions/lynx/canvas.js +1 -2
  14. package/cjs/canvas/contributions/lynx/canvas.js.map +1 -1
  15. package/cjs/canvas/contributions/lynx/context.js +1 -2
  16. package/cjs/canvas/contributions/lynx/context.js.map +1 -1
  17. package/cjs/canvas/contributions/node/canvas.js +1 -2
  18. package/cjs/canvas/contributions/node/canvas.js.map +1 -1
  19. package/cjs/canvas/contributions/node/context.js +2 -3
  20. package/cjs/canvas/contributions/node/context.js.map +1 -1
  21. package/cjs/canvas/contributions/taro/canvas.js +1 -2
  22. package/cjs/canvas/contributions/taro/canvas.js.map +1 -1
  23. package/cjs/canvas/contributions/taro/context.js +6 -5
  24. package/cjs/canvas/contributions/taro/context.js.map +1 -1
  25. package/cjs/canvas/contributions/tt/canvas.js +1 -2
  26. package/cjs/canvas/contributions/tt/canvas.js.map +1 -1
  27. package/cjs/canvas/contributions/tt/context.js +3 -4
  28. package/cjs/canvas/contributions/tt/context.js.map +1 -1
  29. package/cjs/canvas/contributions/wx/canvas.js +1 -2
  30. package/cjs/canvas/contributions/wx/canvas.js.map +1 -1
  31. package/cjs/canvas/contributions/wx/context.js +2 -2
  32. package/cjs/canvas/contributions/wx/context.js.map +1 -1
  33. package/cjs/env/contributions/browser-contribution.js +11 -10
  34. package/cjs/env/contributions/browser-contribution.js.map +1 -1
  35. package/cjs/env/contributions/canvas-wrap.js +0 -12
  36. package/cjs/env/contributions/canvas-wrap.js.map +1 -1
  37. package/cjs/env/contributions/feishu-contribution.js +6 -8
  38. package/cjs/env/contributions/feishu-contribution.js.map +1 -1
  39. package/cjs/env/contributions/harmony-contribution.js +4 -5
  40. package/cjs/env/contributions/harmony-contribution.js.map +1 -1
  41. package/cjs/env/contributions/lynx-contribution.js +7 -10
  42. package/cjs/env/contributions/lynx-contribution.js.map +1 -1
  43. package/cjs/env/contributions/node-contribution.js +3 -4
  44. package/cjs/env/contributions/node-contribution.js.map +1 -1
  45. package/cjs/env/contributions/taro-contribution.js +5 -9
  46. package/cjs/env/contributions/taro-contribution.js.map +1 -1
  47. package/cjs/env/contributions/tt-contribution.js +44 -20
  48. package/cjs/env/contributions/tt-contribution.js.map +1 -1
  49. package/cjs/env/contributions/wx-contribution.js +48 -24
  50. package/cjs/env/contributions/wx-contribution.js.map +1 -1
  51. package/cjs/event/extension/drag.js +34 -34
  52. package/cjs/event/extension/drag.js.map +1 -1
  53. package/cjs/event/extension/gesture.js +79 -100
  54. package/cjs/event/extension/gesture.js.map +1 -1
  55. package/cjs/event/extension/index.js +1 -1
  56. package/cjs/event/extension/interface.js +1 -1
  57. package/cjs/jsx/graphicType.js +6 -8
  58. package/cjs/jsx/graphicType.js.map +1 -1
  59. package/cjs/jsx/jsx-classic.js +11 -1
  60. package/cjs/jsx/jsx-classic.js.map +1 -1
  61. package/cjs/picker/canvas-picker-service.js +0 -3
  62. package/cjs/picker/canvas-picker-service.js.map +1 -1
  63. package/cjs/picker/contributions/canvas-picker/arc-picker.js +2 -5
  64. package/cjs/picker/contributions/canvas-picker/arc-picker.js.map +1 -1
  65. package/cjs/picker/contributions/canvas-picker/arc3d-picker.js +2 -5
  66. package/cjs/picker/contributions/canvas-picker/arc3d-picker.js.map +1 -1
  67. package/cjs/picker/contributions/canvas-picker/area-picker.js +2 -5
  68. package/cjs/picker/contributions/canvas-picker/area-picker.js.map +1 -1
  69. package/cjs/picker/contributions/canvas-picker/circle-picker.js +2 -5
  70. package/cjs/picker/contributions/canvas-picker/circle-picker.js.map +1 -1
  71. package/cjs/picker/contributions/canvas-picker/glyph-picker.js +3 -6
  72. package/cjs/picker/contributions/canvas-picker/glyph-picker.js.map +1 -1
  73. package/cjs/picker/contributions/canvas-picker/group-picker.js +3 -2
  74. package/cjs/picker/contributions/canvas-picker/group-picker.js.map +1 -1
  75. package/cjs/picker/contributions/canvas-picker/image-picker.js +4 -3
  76. package/cjs/picker/contributions/canvas-picker/image-picker.js.map +1 -1
  77. package/cjs/picker/contributions/canvas-picker/line-picker.js +2 -5
  78. package/cjs/picker/contributions/canvas-picker/line-picker.js.map +1 -1
  79. package/cjs/picker/contributions/canvas-picker/path-picker.js +2 -5
  80. package/cjs/picker/contributions/canvas-picker/path-picker.js.map +1 -1
  81. package/cjs/picker/contributions/canvas-picker/polygon-picker.js +2 -5
  82. package/cjs/picker/contributions/canvas-picker/polygon-picker.js.map +1 -1
  83. package/cjs/picker/contributions/canvas-picker/pyramid3d-picker.js +2 -5
  84. package/cjs/picker/contributions/canvas-picker/pyramid3d-picker.js.map +1 -1
  85. package/cjs/picker/contributions/canvas-picker/rect-picker.js +2 -5
  86. package/cjs/picker/contributions/canvas-picker/rect-picker.js.map +1 -1
  87. package/cjs/picker/contributions/canvas-picker/rect3d-picker.js +2 -5
  88. package/cjs/picker/contributions/canvas-picker/rect3d-picker.js.map +1 -1
  89. package/cjs/picker/contributions/canvas-picker/richtext-picker.js +1 -4
  90. package/cjs/picker/contributions/canvas-picker/richtext-picker.js.map +1 -1
  91. package/cjs/picker/contributions/canvas-picker/symbol-picker.js +2 -5
  92. package/cjs/picker/contributions/canvas-picker/symbol-picker.js.map +1 -1
  93. package/cjs/picker/contributions/canvas-picker/text-picker.js +2 -5
  94. package/cjs/picker/contributions/canvas-picker/text-picker.js.map +1 -1
  95. package/cjs/picker/contributions/math-picker/arc-picker.js +2 -5
  96. package/cjs/picker/contributions/math-picker/arc-picker.js.map +1 -1
  97. package/cjs/picker/contributions/math-picker/area-picker.js +2 -5
  98. package/cjs/picker/contributions/math-picker/area-picker.js.map +1 -1
  99. package/cjs/picker/contributions/math-picker/circle-picker.js +2 -5
  100. package/cjs/picker/contributions/math-picker/circle-picker.js.map +1 -1
  101. package/cjs/picker/contributions/math-picker/glyph-picker.js +3 -6
  102. package/cjs/picker/contributions/math-picker/glyph-picker.js.map +1 -1
  103. package/cjs/picker/contributions/math-picker/image-picker.js +4 -3
  104. package/cjs/picker/contributions/math-picker/image-picker.js.map +1 -1
  105. package/cjs/picker/contributions/math-picker/line-picker.js +2 -5
  106. package/cjs/picker/contributions/math-picker/line-picker.js.map +1 -1
  107. package/cjs/picker/contributions/math-picker/path-picker.js +2 -5
  108. package/cjs/picker/contributions/math-picker/path-picker.js.map +1 -1
  109. package/cjs/picker/contributions/math-picker/polygon-picker.js +2 -5
  110. package/cjs/picker/contributions/math-picker/polygon-picker.js.map +1 -1
  111. package/cjs/picker/contributions/math-picker/rect-picker.js +2 -5
  112. package/cjs/picker/contributions/math-picker/rect-picker.js.map +1 -1
  113. package/cjs/picker/contributions/math-picker/richtext-picker.js +1 -4
  114. package/cjs/picker/contributions/math-picker/richtext-picker.js.map +1 -1
  115. package/cjs/picker/contributions/math-picker/symbol-picker.js +2 -5
  116. package/cjs/picker/contributions/math-picker/symbol-picker.js.map +1 -1
  117. package/cjs/picker/contributions/math-picker/text-picker.js +3 -2
  118. package/cjs/picker/contributions/math-picker/text-picker.js.map +1 -1
  119. package/cjs/picker/math-picker-service.js +0 -2
  120. package/cjs/picker/math-picker-service.js.map +1 -1
  121. package/cjs/render/contributions/rough/rough-arc.js +1 -5
  122. package/cjs/render/contributions/rough/rough-arc.js.map +1 -1
  123. package/cjs/render/contributions/rough/rough-area.js +7 -4
  124. package/cjs/render/contributions/rough/rough-area.js.map +1 -1
  125. package/cjs/render/contributions/rough/rough-circle.js +2 -3
  126. package/cjs/render/contributions/rough/rough-circle.js.map +1 -1
  127. package/cjs/render/contributions/rough/rough-line.js +7 -4
  128. package/cjs/render/contributions/rough/rough-line.js.map +1 -1
  129. package/cjs/render/contributions/rough/rough-path.js +2 -5
  130. package/cjs/render/contributions/rough/rough-path.js.map +1 -1
  131. package/cjs/render/contributions/rough/rough-rect.js +4 -6
  132. package/cjs/render/contributions/rough/rough-rect.js.map +1 -1
  133. package/cjs/render/contributions/rough/rough-symbol.js +0 -4
  134. package/cjs/render/contributions/rough/rough-symbol.js.map +1 -1
  135. package/cjs/window/contributions/browser-contribution.js +7 -11
  136. package/cjs/window/contributions/browser-contribution.js.map +1 -1
  137. package/cjs/window/contributions/feishu-contribution.js +6 -9
  138. package/cjs/window/contributions/feishu-contribution.js.map +1 -1
  139. package/cjs/window/contributions/harmony-contribution.js +6 -9
  140. package/cjs/window/contributions/harmony-contribution.js.map +1 -1
  141. package/cjs/window/contributions/lynx-contribution.js +6 -9
  142. package/cjs/window/contributions/lynx-contribution.js.map +1 -1
  143. package/cjs/window/contributions/node-contribution.js +3 -7
  144. package/cjs/window/contributions/node-contribution.js.map +1 -1
  145. package/cjs/window/contributions/taro-contribution.js +10 -15
  146. package/cjs/window/contributions/taro-contribution.js.map +1 -1
  147. package/cjs/window/contributions/tt-contribution.js +6 -9
  148. package/cjs/window/contributions/tt-contribution.js.map +1 -1
  149. package/cjs/window/contributions/wx-contribution.js +11 -13
  150. package/cjs/window/contributions/wx-contribution.js.map +1 -1
  151. package/dist/index.es.js +561 -584
  152. package/es/canvas/contributions/browser/canvas.js +1 -2
  153. package/es/canvas/contributions/browser/canvas.js.map +1 -1
  154. package/es/canvas/contributions/browser/context.js +13 -26
  155. package/es/canvas/contributions/browser/context.js.map +1 -1
  156. package/es/canvas/contributions/feishu/canvas.js +1 -2
  157. package/es/canvas/contributions/feishu/canvas.js.map +1 -1
  158. package/es/canvas/contributions/feishu/context.js +3 -4
  159. package/es/canvas/contributions/feishu/context.js.map +1 -1
  160. package/es/canvas/contributions/harmony/canvas.js +1 -2
  161. package/es/canvas/contributions/harmony/canvas.js.map +1 -1
  162. package/es/canvas/contributions/harmony/context.js +4 -4
  163. package/es/canvas/contributions/harmony/context.js.map +1 -1
  164. package/es/canvas/contributions/lynx/canvas.js +1 -2
  165. package/es/canvas/contributions/lynx/canvas.js.map +1 -1
  166. package/es/canvas/contributions/lynx/context.js +1 -2
  167. package/es/canvas/contributions/lynx/context.js.map +1 -1
  168. package/es/canvas/contributions/node/canvas.js +1 -2
  169. package/es/canvas/contributions/node/canvas.js.map +1 -1
  170. package/es/canvas/contributions/node/context.js +2 -3
  171. package/es/canvas/contributions/node/context.js.map +1 -1
  172. package/es/canvas/contributions/taro/canvas.js +1 -2
  173. package/es/canvas/contributions/taro/canvas.js.map +1 -1
  174. package/es/canvas/contributions/taro/context.js +6 -4
  175. package/es/canvas/contributions/taro/context.js.map +1 -1
  176. package/es/canvas/contributions/tt/canvas.js +1 -2
  177. package/es/canvas/contributions/tt/canvas.js.map +1 -1
  178. package/es/canvas/contributions/tt/context.js +2 -4
  179. package/es/canvas/contributions/tt/context.js.map +1 -1
  180. package/es/canvas/contributions/wx/canvas.js +1 -2
  181. package/es/canvas/contributions/wx/canvas.js.map +1 -1
  182. package/es/canvas/contributions/wx/context.js +1 -2
  183. package/es/canvas/contributions/wx/context.js.map +1 -1
  184. package/es/env/contributions/browser-contribution.js +11 -10
  185. package/es/env/contributions/browser-contribution.js.map +1 -1
  186. package/es/env/contributions/canvas-wrap.js +0 -12
  187. package/es/env/contributions/canvas-wrap.js.map +1 -1
  188. package/es/env/contributions/feishu-contribution.js +6 -8
  189. package/es/env/contributions/feishu-contribution.js.map +1 -1
  190. package/es/env/contributions/harmony-contribution.js +4 -5
  191. package/es/env/contributions/harmony-contribution.js.map +1 -1
  192. package/es/env/contributions/lynx-contribution.js +7 -10
  193. package/es/env/contributions/lynx-contribution.js.map +1 -1
  194. package/es/env/contributions/node-contribution.js +3 -4
  195. package/es/env/contributions/node-contribution.js.map +1 -1
  196. package/es/env/contributions/taro-contribution.js +5 -9
  197. package/es/env/contributions/taro-contribution.js.map +1 -1
  198. package/es/env/contributions/tt-contribution.js +44 -20
  199. package/es/env/contributions/tt-contribution.js.map +1 -1
  200. package/es/env/contributions/wx-contribution.js +48 -24
  201. package/es/env/contributions/wx-contribution.js.map +1 -1
  202. package/es/event/extension/drag.js +34 -34
  203. package/es/event/extension/drag.js.map +1 -1
  204. package/es/event/extension/gesture.js +79 -100
  205. package/es/event/extension/gesture.js.map +1 -1
  206. package/es/event/extension/index.js +1 -1
  207. package/es/event/extension/interface.js +1 -1
  208. package/es/jsx/graphicType.js +6 -8
  209. package/es/jsx/graphicType.js.map +1 -1
  210. package/es/jsx/jsx-classic.js +11 -1
  211. package/es/jsx/jsx-classic.js.map +1 -1
  212. package/es/picker/canvas-picker-service.js +0 -3
  213. package/es/picker/canvas-picker-service.js.map +1 -1
  214. package/es/picker/contributions/canvas-picker/arc-picker.js +2 -5
  215. package/es/picker/contributions/canvas-picker/arc-picker.js.map +1 -1
  216. package/es/picker/contributions/canvas-picker/arc3d-picker.js +2 -5
  217. package/es/picker/contributions/canvas-picker/arc3d-picker.js.map +1 -1
  218. package/es/picker/contributions/canvas-picker/area-picker.js +2 -5
  219. package/es/picker/contributions/canvas-picker/area-picker.js.map +1 -1
  220. package/es/picker/contributions/canvas-picker/circle-picker.js +2 -5
  221. package/es/picker/contributions/canvas-picker/circle-picker.js.map +1 -1
  222. package/es/picker/contributions/canvas-picker/glyph-picker.js +3 -6
  223. package/es/picker/contributions/canvas-picker/glyph-picker.js.map +1 -1
  224. package/es/picker/contributions/canvas-picker/group-picker.js +3 -2
  225. package/es/picker/contributions/canvas-picker/group-picker.js.map +1 -1
  226. package/es/picker/contributions/canvas-picker/image-picker.js +4 -3
  227. package/es/picker/contributions/canvas-picker/image-picker.js.map +1 -1
  228. package/es/picker/contributions/canvas-picker/line-picker.js +2 -5
  229. package/es/picker/contributions/canvas-picker/line-picker.js.map +1 -1
  230. package/es/picker/contributions/canvas-picker/path-picker.js +2 -5
  231. package/es/picker/contributions/canvas-picker/path-picker.js.map +1 -1
  232. package/es/picker/contributions/canvas-picker/polygon-picker.js +2 -5
  233. package/es/picker/contributions/canvas-picker/polygon-picker.js.map +1 -1
  234. package/es/picker/contributions/canvas-picker/pyramid3d-picker.js +2 -5
  235. package/es/picker/contributions/canvas-picker/pyramid3d-picker.js.map +1 -1
  236. package/es/picker/contributions/canvas-picker/rect-picker.js +2 -5
  237. package/es/picker/contributions/canvas-picker/rect-picker.js.map +1 -1
  238. package/es/picker/contributions/canvas-picker/rect3d-picker.js +2 -5
  239. package/es/picker/contributions/canvas-picker/rect3d-picker.js.map +1 -1
  240. package/es/picker/contributions/canvas-picker/richtext-picker.js +1 -4
  241. package/es/picker/contributions/canvas-picker/richtext-picker.js.map +1 -1
  242. package/es/picker/contributions/canvas-picker/symbol-picker.js +2 -5
  243. package/es/picker/contributions/canvas-picker/symbol-picker.js.map +1 -1
  244. package/es/picker/contributions/canvas-picker/text-picker.js +2 -5
  245. package/es/picker/contributions/canvas-picker/text-picker.js.map +1 -1
  246. package/es/picker/contributions/math-picker/arc-picker.js +2 -5
  247. package/es/picker/contributions/math-picker/arc-picker.js.map +1 -1
  248. package/es/picker/contributions/math-picker/area-picker.js +2 -5
  249. package/es/picker/contributions/math-picker/area-picker.js.map +1 -1
  250. package/es/picker/contributions/math-picker/circle-picker.js +2 -5
  251. package/es/picker/contributions/math-picker/circle-picker.js.map +1 -1
  252. package/es/picker/contributions/math-picker/glyph-picker.js +3 -6
  253. package/es/picker/contributions/math-picker/glyph-picker.js.map +1 -1
  254. package/es/picker/contributions/math-picker/image-picker.js +4 -3
  255. package/es/picker/contributions/math-picker/image-picker.js.map +1 -1
  256. package/es/picker/contributions/math-picker/line-picker.js +2 -5
  257. package/es/picker/contributions/math-picker/line-picker.js.map +1 -1
  258. package/es/picker/contributions/math-picker/path-picker.js +2 -5
  259. package/es/picker/contributions/math-picker/path-picker.js.map +1 -1
  260. package/es/picker/contributions/math-picker/polygon-picker.js +2 -5
  261. package/es/picker/contributions/math-picker/polygon-picker.js.map +1 -1
  262. package/es/picker/contributions/math-picker/rect-picker.js +2 -5
  263. package/es/picker/contributions/math-picker/rect-picker.js.map +1 -1
  264. package/es/picker/contributions/math-picker/richtext-picker.js +1 -4
  265. package/es/picker/contributions/math-picker/richtext-picker.js.map +1 -1
  266. package/es/picker/contributions/math-picker/symbol-picker.js +2 -5
  267. package/es/picker/contributions/math-picker/symbol-picker.js.map +1 -1
  268. package/es/picker/contributions/math-picker/text-picker.js +3 -2
  269. package/es/picker/contributions/math-picker/text-picker.js.map +1 -1
  270. package/es/picker/math-picker-service.js +0 -2
  271. package/es/picker/math-picker-service.js.map +1 -1
  272. package/es/render/contributions/rough/rough-arc.js +1 -5
  273. package/es/render/contributions/rough/rough-arc.js.map +1 -1
  274. package/es/render/contributions/rough/rough-area.js +7 -4
  275. package/es/render/contributions/rough/rough-area.js.map +1 -1
  276. package/es/render/contributions/rough/rough-circle.js +2 -3
  277. package/es/render/contributions/rough/rough-circle.js.map +1 -1
  278. package/es/render/contributions/rough/rough-line.js +7 -4
  279. package/es/render/contributions/rough/rough-line.js.map +1 -1
  280. package/es/render/contributions/rough/rough-path.js +2 -5
  281. package/es/render/contributions/rough/rough-path.js.map +1 -1
  282. package/es/render/contributions/rough/rough-rect.js +4 -6
  283. package/es/render/contributions/rough/rough-rect.js.map +1 -1
  284. package/es/render/contributions/rough/rough-symbol.js +0 -4
  285. package/es/render/contributions/rough/rough-symbol.js.map +1 -1
  286. package/es/window/contributions/browser-contribution.js +8 -12
  287. package/es/window/contributions/browser-contribution.js.map +1 -1
  288. package/es/window/contributions/feishu-contribution.js +5 -8
  289. package/es/window/contributions/feishu-contribution.js.map +1 -1
  290. package/es/window/contributions/harmony-contribution.js +5 -8
  291. package/es/window/contributions/harmony-contribution.js.map +1 -1
  292. package/es/window/contributions/lynx-contribution.js +5 -8
  293. package/es/window/contributions/lynx-contribution.js.map +1 -1
  294. package/es/window/contributions/node-contribution.js +2 -6
  295. package/es/window/contributions/node-contribution.js.map +1 -1
  296. package/es/window/contributions/taro-contribution.js +9 -14
  297. package/es/window/contributions/taro-contribution.js.map +1 -1
  298. package/es/window/contributions/tt-contribution.js +5 -8
  299. package/es/window/contributions/tt-contribution.js.map +1 -1
  300. package/es/window/contributions/wx-contribution.js +10 -12
  301. package/es/window/contributions/wx-contribution.js.map +1 -1
  302. package/package.json +7 -6
@@ -115,14 +115,12 @@ export function VRichText(params) {
115
115
  }
116
116
 
117
117
  VRichText.Text = function(params) {
118
- return {
119
- type: "rich/text",
120
- ...params
121
- };
118
+ return Object.assign({
119
+ type: "rich/text"
120
+ }, params);
122
121
  }, VRichText.Image = function(params) {
123
- return {
124
- type: "rich/image",
125
- ...params
126
- };
122
+ return Object.assign({
123
+ type: "rich/image"
124
+ }, params);
127
125
  };
128
126
  //# sourceMappingURL=graphicType.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/jsx/graphicType.ts"],"names":[],"mappings":"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","file":"graphicType.js","sourcesContent":["import {\n graphicCreator,\n type IArc3dGraphicAttribute,\n type IArcGraphicAttribute,\n type IAreaGraphicAttribute,\n type ICircleGraphicAttribute,\n type IGlyphGraphicAttribute,\n type IGroupGraphicAttribute,\n type IImageGraphicAttribute,\n type ILineGraphicAttribute,\n type IPathGraphicAttribute,\n type IPolygonGraphicAttribute,\n type IPyramid3dGraphicAttribute,\n type IRect3dGraphicAttribute,\n type IRectGraphicAttribute,\n type IRichTextCharacter,\n type IRichTextGraphicAttribute,\n type IRichTextImageCharacter,\n type ISymbolGraphicAttribute,\n type ITextGraphicAttribute\n} from '@visactor/vrender-core';\n\nexport const REACT_TO_CANOPUS_EVENTS = {\n onPointerDown: 'pointerdown',\n onPointerUp: 'pointerup',\n onPointerUpOutside: 'pointerupoutside',\n onPointerTap: 'pointertap',\n onPointerOver: 'pointerover',\n onPointerMove: 'pointermove',\n onPointerEnter: 'pointerenter',\n onPointerLeave: 'pointerleave',\n onPointerOut: 'pointerout',\n onMouseDown: 'mousedown',\n onMouseUp: 'mouseup',\n onMouseUpOutside: 'mouseupoutside',\n onMouseMove: 'mousemove',\n onMouseOver: 'mouseover',\n onMouseOut: 'mouseout',\n onMouseEnter: 'mouseenter',\n onMouseLeave: 'mouseleave',\n onPinch: 'pinch',\n onPinchStart: 'pinchstart',\n onPinchEnd: 'pinchend',\n onPan: 'pan',\n onPanStart: 'panstart',\n onPanEnd: 'panend',\n onDrag: 'drag',\n onDragStart: 'dragstart',\n onDragEnter: 'dragenter',\n onDragLeave: 'dragleave',\n onDragOver: 'dragover',\n onDragEnd: 'dragend',\n onRightDown: 'rightdown',\n onRightUp: 'rightup',\n onRightUpOutside: 'rightupoutside',\n onTouchStart: 'touchstart',\n onTouchEnd: 'touchend',\n onTouchEndOutside: 'touchendoutside',\n onTouchMove: 'touchmove',\n onTouchCancel: 'touchcancel',\n onPress: 'press',\n onPressUp: 'pressup',\n onPressEnd: 'pressend',\n onSwipe: 'swipe',\n onDrop: 'drop',\n onWeel: 'wheel',\n onClick: 'click',\n onDblClick: 'dblclick'\n};\n\nexport const REACT_TO_CANOPUS_EVENTS_LIST = Object.keys(REACT_TO_CANOPUS_EVENTS);\n\nexport type IEventParamsType = {\n [t in keyof typeof REACT_TO_CANOPUS_EVENTS]?: (d: any) => void;\n};\n\nexport type IDefaultGraphicParamsType<T> = {\n attribute?: T;\n stateProxy?: (stateName: string, targetStates?: string[]) => Partial<T>;\n // react可能类型报错\n children?: any;\n name?: string;\n id?: string;\n} & IEventParamsType;\n\nexport function VArc(params: IDefaultGraphicParamsType<IArcGraphicAttribute>) {\n return (graphicCreator as any).arc(params ? params.attribute : {});\n}\nexport function VArc3d(params: IDefaultGraphicParamsType<IArc3dGraphicAttribute>) {\n return (graphicCreator as any).arc3d(params ? params.attribute : {});\n}\nexport function VArea(params: IDefaultGraphicParamsType<IAreaGraphicAttribute>) {\n return (graphicCreator as any).area(params ? params.attribute : {});\n}\nexport function VCircle(params: IDefaultGraphicParamsType<ICircleGraphicAttribute>) {\n return (graphicCreator as any).circle(params ? params.attribute : {});\n}\nexport function VGroup(params: IDefaultGraphicParamsType<IGroupGraphicAttribute>) {\n return (graphicCreator as any).group(params ? params.attribute : {});\n}\nexport function VGlyph(params: IDefaultGraphicParamsType<IGlyphGraphicAttribute>) {\n return (graphicCreator as any).glyph(params ? params.attribute : {});\n}\nexport function VImage(params: IDefaultGraphicParamsType<IImageGraphicAttribute>) {\n return (graphicCreator as any).image(params ? params.attribute : {});\n}\nexport function VLine(params: IDefaultGraphicParamsType<ILineGraphicAttribute>) {\n return (graphicCreator as any).line(params ? params.attribute : {});\n}\nexport function VPath(params: IDefaultGraphicParamsType<IPathGraphicAttribute>) {\n return (graphicCreator as any).path(params ? params.attribute : {});\n}\nexport function VPolygon(params: IDefaultGraphicParamsType<IPolygonGraphicAttribute>) {\n return (graphicCreator as any).polygon(params ? params.attribute : {});\n}\nexport function VPyramid3d(params: IDefaultGraphicParamsType<IPyramid3dGraphicAttribute>) {\n return (graphicCreator as any).pyramid3d(params ? params.attribute : {});\n}\nexport function VRect(params: IDefaultGraphicParamsType<IRectGraphicAttribute>) {\n return (graphicCreator as any).rect(params ? params.attribute : {});\n}\nexport function VRect3d(params: IDefaultGraphicParamsType<IRect3dGraphicAttribute>) {\n return (graphicCreator as any).rect3d(params ? params.attribute : {});\n}\nexport function VSymbol(params: IDefaultGraphicParamsType<ISymbolGraphicAttribute>) {\n return (graphicCreator as any).symbol(params ? params.attribute : {});\n}\nexport function VText(params: IDefaultGraphicParamsType<ITextGraphicAttribute>) {\n return (graphicCreator as any).text(params ? params.attribute : {});\n}\nexport function VRichText(params: IDefaultGraphicParamsType<IRichTextGraphicAttribute>) {\n return (graphicCreator as any).richtext(params ? params.attribute : {});\n}\n\nVRichText.Text = function (params: IDefaultGraphicParamsType<IRichTextCharacter>) {\n return {\n type: 'rich/text',\n ...params\n };\n};\n\nVRichText.Image = function (params: IDefaultGraphicParamsType<IRichTextImageCharacter>) {\n return {\n type: 'rich/image',\n ...params\n };\n};\n"]}
1
+ {"version":3,"sources":["../src/jsx/graphicType.ts"],"names":[],"mappings":"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","file":"graphicType.js","sourcesContent":["import {\n graphicCreator,\n type IArc3dGraphicAttribute,\n type IArcGraphicAttribute,\n type IAreaGraphicAttribute,\n type ICircleGraphicAttribute,\n type IGlyphGraphicAttribute,\n type IGroupGraphicAttribute,\n type IImageGraphicAttribute,\n type ILineGraphicAttribute,\n type IPathGraphicAttribute,\n type IPolygonGraphicAttribute,\n type IPyramid3dGraphicAttribute,\n type IRect3dGraphicAttribute,\n type IRectGraphicAttribute,\n type IRichTextCharacter,\n type IRichTextGraphicAttribute,\n type IRichTextImageCharacter,\n type ISymbolGraphicAttribute,\n type ITextGraphicAttribute\n} from '@visactor/vrender-core';\n\nexport const REACT_TO_CANOPUS_EVENTS = {\n onPointerDown: 'pointerdown',\n onPointerUp: 'pointerup',\n onPointerUpOutside: 'pointerupoutside',\n onPointerTap: 'pointertap',\n onPointerOver: 'pointerover',\n onPointerMove: 'pointermove',\n onPointerEnter: 'pointerenter',\n onPointerLeave: 'pointerleave',\n onPointerOut: 'pointerout',\n onMouseDown: 'mousedown',\n onMouseUp: 'mouseup',\n onMouseUpOutside: 'mouseupoutside',\n onMouseMove: 'mousemove',\n onMouseOver: 'mouseover',\n onMouseOut: 'mouseout',\n onMouseEnter: 'mouseenter',\n onMouseLeave: 'mouseleave',\n onPinch: 'pinch',\n onPinchStart: 'pinchstart',\n onPinchEnd: 'pinchend',\n onPan: 'pan',\n onPanStart: 'panstart',\n onPanEnd: 'panend',\n onDrag: 'drag',\n onDragStart: 'dragstart',\n onDragEnter: 'dragenter',\n onDragLeave: 'dragleave',\n onDragOver: 'dragover',\n onDragEnd: 'dragend',\n onRightDown: 'rightdown',\n onRightUp: 'rightup',\n onRightUpOutside: 'rightupoutside',\n onTouchStart: 'touchstart',\n onTouchEnd: 'touchend',\n onTouchEndOutside: 'touchendoutside',\n onTouchMove: 'touchmove',\n onTouchCancel: 'touchcancel',\n onPress: 'press',\n onPressUp: 'pressup',\n onPressEnd: 'pressend',\n onSwipe: 'swipe',\n onDrop: 'drop',\n onWeel: 'wheel',\n onClick: 'click',\n onDblClick: 'dblclick'\n};\n\nexport const REACT_TO_CANOPUS_EVENTS_LIST = Object.keys(REACT_TO_CANOPUS_EVENTS);\n\nexport type IEventParamsType = {\n [t in keyof typeof REACT_TO_CANOPUS_EVENTS]?: (d: any) => void;\n};\n\nexport type IDefaultGraphicParamsType<T> = {\n attribute?: T;\n stateProxy?: (stateName: string, targetStates?: string[]) => Partial<T>;\n // react可能类型报错\n children?: any;\n name?: string;\n id?: string;\n} & IEventParamsType;\n\nexport function VArc(params: IDefaultGraphicParamsType<IArcGraphicAttribute>) {\n return (graphicCreator as any).arc(params ? params.attribute : {});\n}\nexport function VArc3d(params: IDefaultGraphicParamsType<IArc3dGraphicAttribute>) {\n return (graphicCreator as any).arc3d(params ? params.attribute : {});\n}\nexport function VArea(params: IDefaultGraphicParamsType<IAreaGraphicAttribute>) {\n return (graphicCreator as any).area(params ? params.attribute : {});\n}\nexport function VCircle(params: IDefaultGraphicParamsType<ICircleGraphicAttribute>) {\n return (graphicCreator as any).circle(params ? params.attribute : {});\n}\nexport function VGroup(params: IDefaultGraphicParamsType<IGroupGraphicAttribute>) {\n return (graphicCreator as any).group(params ? params.attribute : {});\n}\nexport function VGlyph(params: IDefaultGraphicParamsType<IGlyphGraphicAttribute>) {\n return (graphicCreator as any).glyph(params ? params.attribute : {});\n}\nexport function VImage(params: IDefaultGraphicParamsType<IImageGraphicAttribute>) {\n return (graphicCreator as any).image(params ? params.attribute : {});\n}\nexport function VLine(params: IDefaultGraphicParamsType<ILineGraphicAttribute>) {\n return (graphicCreator as any).line(params ? params.attribute : {});\n}\nexport function VPath(params: IDefaultGraphicParamsType<IPathGraphicAttribute>) {\n return (graphicCreator as any).path(params ? params.attribute : {});\n}\nexport function VPolygon(params: IDefaultGraphicParamsType<IPolygonGraphicAttribute>) {\n return (graphicCreator as any).polygon(params ? params.attribute : {});\n}\nexport function VPyramid3d(params: IDefaultGraphicParamsType<IPyramid3dGraphicAttribute>) {\n return (graphicCreator as any).pyramid3d(params ? params.attribute : {});\n}\nexport function VRect(params: IDefaultGraphicParamsType<IRectGraphicAttribute>) {\n return (graphicCreator as any).rect(params ? params.attribute : {});\n}\nexport function VRect3d(params: IDefaultGraphicParamsType<IRect3dGraphicAttribute>) {\n return (graphicCreator as any).rect3d(params ? params.attribute : {});\n}\nexport function VSymbol(params: IDefaultGraphicParamsType<ISymbolGraphicAttribute>) {\n return (graphicCreator as any).symbol(params ? params.attribute : {});\n}\nexport function VText(params: IDefaultGraphicParamsType<ITextGraphicAttribute>) {\n return (graphicCreator as any).text(params ? params.attribute : {});\n}\nexport function VRichText(params: IDefaultGraphicParamsType<IRichTextGraphicAttribute>) {\n return (graphicCreator as any).richtext(params ? params.attribute : {});\n}\n\nVRichText.Text = function (params: IDefaultGraphicParamsType<IRichTextCharacter>) {\n return {\n type: 'rich/text',\n ...params\n };\n};\n\nVRichText.Image = function (params: IDefaultGraphicParamsType<IRichTextImageCharacter>) {\n return {\n type: 'rich/image',\n ...params\n };\n};\n"]}
@@ -1,3 +1,13 @@
1
+ var __rest = this && this.__rest || function(s, e) {
2
+ var t = {};
3
+ for (var p in s) Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0 && (t[p] = s[p]);
4
+ if (null != s && "function" == typeof Object.getOwnPropertySymbols) {
5
+ var i = 0;
6
+ for (p = Object.getOwnPropertySymbols(s); i < p.length; i++) e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]) && (t[p[i]] = s[p[i]]);
7
+ }
8
+ return t;
9
+ };
10
+
1
11
  import { isArray, isString } from "@visactor/vutils";
2
12
 
3
13
  import { Group, graphicCreator } from "@visactor/vrender-core";
@@ -10,7 +20,7 @@ function flatten(list, out) {
10
20
  }
11
21
 
12
22
  export function jsx(type, config, ...children) {
13
- const {key: key, name: name, id: id, attribute: attribute, stateProxy: stateProxy, ...props} = config || {};
23
+ const _a = config || {}, {key: key, name: name, id: id, attribute: attribute, stateProxy: stateProxy} = _a, props = __rest(_a, [ "key", "name", "id", "attribute", "stateProxy" ]);
14
24
  let c = type;
15
25
  isString(type) && (c = graphicCreator[type]);
16
26
  const childrenList = [];
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/jsx/jsx-classic.ts"],"names":[],"mappings":"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","file":"jsx-classic.js","sourcesContent":["import { isArray, isString } from '@visactor/vutils';\nimport { Group, graphicCreator } from '@visactor/vrender-core';\nimport { REACT_TO_CANOPUS_EVENTS } from './graphicType';\n\nfunction flatten(list: any, out: any[]): void {\n if (isArray(list)) {\n return list.forEach(i => flatten(i, out));\n }\n out.push(list);\n}\n\nexport function jsx(type: string | any, config: Record<string, any>, ...children: any) {\n const { key, name, id, attribute, stateProxy, ...props } = config || {};\n\n let c = type;\n if (isString(type)) {\n c = graphicCreator[type];\n }\n\n const childrenList: any[] = [];\n if (children.length) {\n flatten(children.length === 1 ? children[0] : children, childrenList);\n }\n\n const g = c.name === 'Group' ? new c(attribute) : c(config);\n parseToGraphic(g, childrenList, props);\n\n if (stateProxy) {\n g.stateProxy = stateProxy;\n }\n\n return g;\n}\n\nfunction parseToGraphic(g: any, childrenList: any[], props: any) {\n let isGraphic: boolean = false;\n let out: any;\n switch (g.type) {\n case 'richtext':\n break;\n case 'rich/text':\n out = g.attribute || {};\n childrenList[0] && (out.text = childrenList[0]);\n break;\n case 'rich/image':\n break;\n default:\n isGraphic = true;\n }\n\n if (isGraphic) {\n childrenList.forEach((c: any) => {\n c && g.add(c);\n });\n\n Object.keys(props).forEach(k => {\n const en = REACT_TO_CANOPUS_EVENTS[k];\n if (en) {\n g.on(en, props[k]);\n }\n });\n } else {\n if (g.type === 'richtext') {\n g.attribute.textConfig = childrenList.map(item => item.attribute).filter(item => item);\n }\n }\n}\n\nexport const Fragment = Group;\n"]}
1
+ {"version":3,"sources":["../src/jsx/jsx-classic.ts"],"names":[],"mappings":"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","file":"jsx-classic.js","sourcesContent":["import { isArray, isString } from '@visactor/vutils';\nimport { Group, graphicCreator } from '@visactor/vrender-core';\nimport { REACT_TO_CANOPUS_EVENTS } from './graphicType';\n\nfunction flatten(list: any, out: any[]): void {\n if (isArray(list)) {\n return list.forEach(i => flatten(i, out));\n }\n out.push(list);\n}\n\nexport function jsx(type: string | any, config: Record<string, any>, ...children: any) {\n const { key, name, id, attribute, stateProxy, ...props } = config || {};\n\n let c = type;\n if (isString(type)) {\n c = graphicCreator[type];\n }\n\n const childrenList: any[] = [];\n if (children.length) {\n flatten(children.length === 1 ? children[0] : children, childrenList);\n }\n\n const g = c.name === 'Group' ? new c(attribute) : c(config);\n parseToGraphic(g, childrenList, props);\n\n if (stateProxy) {\n g.stateProxy = stateProxy;\n }\n\n return g;\n}\n\nfunction parseToGraphic(g: any, childrenList: any[], props: any) {\n let isGraphic: boolean = false;\n let out: any;\n switch (g.type) {\n case 'richtext':\n break;\n case 'rich/text':\n out = g.attribute || {};\n childrenList[0] && (out.text = childrenList[0]);\n break;\n case 'rich/image':\n break;\n default:\n isGraphic = true;\n }\n\n if (isGraphic) {\n childrenList.forEach((c: any) => {\n c && g.add(c);\n });\n\n Object.keys(props).forEach(k => {\n const en = REACT_TO_CANOPUS_EVENTS[k];\n if (en) {\n g.on(en, props[k]);\n }\n });\n } else {\n if (g.type === 'richtext') {\n g.attribute.textConfig = childrenList.map(item => item.attribute).filter(item => item);\n }\n }\n}\n\nexport const Fragment = Group;\n"]}
@@ -15,9 +15,6 @@ import { ContributionProvider, inject, injectable, named, DefaultPickService, Dr
15
15
  import { CanvasPickerContribution } from "./contributions/constants";
16
16
 
17
17
  let DefaultCanvasPickerService = class extends DefaultPickService {
18
- contributions;
19
- drawContribution;
20
- pickItemInterceptorContributions;
21
18
  constructor(contributions, drawContribution, pickItemInterceptorContributions) {
22
19
  super(pickItemInterceptorContributions), this.contributions = contributions, this.drawContribution = drawContribution,
23
20
  this.pickItemInterceptorContributions = pickItemInterceptorContributions, this.global.hooks.onSetEnv.tap("canvas-picker-service", ((_, env, global) => {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/picker/canvas-picker-service.ts"],"names":[],"mappings":"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","file":"canvas-picker-service.js","sourcesContent":["import type { IMatrix, IPointLike } from '@visactor/vutils';\n// eslint-disable-next-line\nimport {\n ContributionProvider,\n inject,\n injectable,\n named,\n DefaultPickService,\n DrawContribution,\n PickItemInterceptor,\n canvasAllocate,\n application\n} from '@visactor/vrender-core';\nimport type {\n ICanvas,\n IContext2d,\n IGraphic,\n EnvType,\n IGlobal,\n IGraphicPicker,\n IPickerService,\n IDrawContribution,\n IContributionProvider,\n IPickItemInterceptorContribution,\n IPickParams,\n PickResult\n} from '@visactor/vrender-core';\nimport {\n CanvasArcPicker,\n CanvasAreaPicker,\n CanvasCirclePicker,\n CanvasImagePicker,\n CanvasLinePicker,\n CanvasPathPicker,\n CanvasPickerContribution,\n CanvasPolygonPicker,\n CanvasRectPicker,\n CanvasSymbolPicker,\n CanvasTextPicker,\n CanvasRichTextPicker\n} from './contributions/constants';\n\n// 默认的pick-service,提供基本的最优选中策略,尽量不需要用户自己实现contribution\n// 用户可以写plugin\n@injectable()\nexport class DefaultCanvasPickerService extends DefaultPickService implements IPickerService {\n declare type: 'default';\n // pcik canvas\n declare pickCanvas: ICanvas;\n declare pickContext: IContext2d;\n declare pickerMap: Map<number, IGraphicPicker>;\n\n constructor(\n @inject(ContributionProvider)\n @named(CanvasPickerContribution)\n protected readonly contributions: IContributionProvider<IGraphicPicker>,\n\n @inject(DrawContribution)\n public readonly drawContribution: IDrawContribution,\n // 拦截器\n @inject(ContributionProvider)\n @named(PickItemInterceptor)\n protected readonly pickItemInterceptorContributions: IContributionProvider<IPickItemInterceptorContribution>\n ) {\n super(pickItemInterceptorContributions);\n this.global.hooks.onSetEnv.tap('canvas-picker-service', (_, env, global) => {\n this.configure(global, env);\n });\n this.configure(this.global, this.global.env);\n this.pickerMap = new Map();\n this.init();\n }\n\n init() {\n this.contributions.getContributions().forEach(item => {\n this.pickerMap.set(item.numberType, item);\n });\n super._init();\n }\n\n configure(global: IGlobal, env: EnvType) {\n // if (!this.global.env) return;\n // this.contributions.getContributions().forEach(handlerContribution => {\n // handlerContribution.configure(this, this.global);\n // });\n\n // 创建pick canvas\n this.pickCanvas = canvasAllocate.shareCanvas();\n this.pickContext = this.pickCanvas.getContext('2d');\n }\n\n // todo: switch统一改为数字map\n pickItem(graphic: IGraphic, point: IPointLike, parentMatrix: IMatrix | null, params: IPickParams): PickResult | null {\n if (graphic.attribute.pickable === false) {\n return null;\n }\n // 添加拦截器\n if (this.InterceptorContributions.length) {\n for (let i = 0; i < this.InterceptorContributions.length; i++) {\n const drawContribution = this.InterceptorContributions[i];\n if (drawContribution.beforePickItem) {\n const ret = drawContribution.beforePickItem(graphic, this, point, params, { parentMatrix });\n if (ret) {\n return ret;\n }\n }\n }\n }\n const picker = this.pickerMap.get(graphic.numberType);\n if (!picker) {\n return null;\n }\n const pd = picker.contains(graphic, point, params);\n const g = pd ? graphic : null;\n\n const data = {\n graphic: g,\n params: pd\n };\n if (g) {\n return data;\n }\n // 添加拦截器\n if (this.InterceptorContributions.length) {\n for (let i = 0; i < this.InterceptorContributions.length; i++) {\n const drawContribution = this.InterceptorContributions[i];\n if (drawContribution.afterPickItem) {\n const ret = drawContribution.afterPickItem(graphic, this, point, params, { parentMatrix });\n if (ret) {\n return ret;\n }\n }\n }\n }\n return data;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/picker/canvas-picker-service.ts"],"names":[],"mappings":"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","file":"canvas-picker-service.js","sourcesContent":["import type { IMatrix, IPointLike } from '@visactor/vutils';\n// eslint-disable-next-line\nimport {\n ContributionProvider,\n inject,\n injectable,\n named,\n DefaultPickService,\n DrawContribution,\n PickItemInterceptor,\n canvasAllocate,\n application\n} from '@visactor/vrender-core';\nimport type {\n ICanvas,\n IContext2d,\n IGraphic,\n EnvType,\n IGlobal,\n IGraphicPicker,\n IPickerService,\n IDrawContribution,\n IContributionProvider,\n IPickItemInterceptorContribution,\n IPickParams,\n PickResult\n} from '@visactor/vrender-core';\nimport {\n CanvasArcPicker,\n CanvasAreaPicker,\n CanvasCirclePicker,\n CanvasImagePicker,\n CanvasLinePicker,\n CanvasPathPicker,\n CanvasPickerContribution,\n CanvasPolygonPicker,\n CanvasRectPicker,\n CanvasSymbolPicker,\n CanvasTextPicker,\n CanvasRichTextPicker\n} from './contributions/constants';\n\n// 默认的pick-service,提供基本的最优选中策略,尽量不需要用户自己实现contribution\n// 用户可以写plugin\n@injectable()\nexport class DefaultCanvasPickerService extends DefaultPickService implements IPickerService {\n declare type: 'default';\n // pcik canvas\n declare pickCanvas: ICanvas;\n declare pickContext: IContext2d;\n declare pickerMap: Map<number, IGraphicPicker>;\n\n constructor(\n @inject(ContributionProvider)\n @named(CanvasPickerContribution)\n protected readonly contributions: IContributionProvider<IGraphicPicker>,\n\n @inject(DrawContribution)\n public readonly drawContribution: IDrawContribution,\n // 拦截器\n @inject(ContributionProvider)\n @named(PickItemInterceptor)\n protected readonly pickItemInterceptorContributions: IContributionProvider<IPickItemInterceptorContribution>\n ) {\n super(pickItemInterceptorContributions);\n this.global.hooks.onSetEnv.tap('canvas-picker-service', (_, env, global) => {\n this.configure(global, env);\n });\n this.configure(this.global, this.global.env);\n this.pickerMap = new Map();\n this.init();\n }\n\n init() {\n this.contributions.getContributions().forEach(item => {\n this.pickerMap.set(item.numberType, item);\n });\n super._init();\n }\n\n configure(global: IGlobal, env: EnvType) {\n // if (!this.global.env) return;\n // this.contributions.getContributions().forEach(handlerContribution => {\n // handlerContribution.configure(this, this.global);\n // });\n\n // 创建pick canvas\n this.pickCanvas = canvasAllocate.shareCanvas();\n this.pickContext = this.pickCanvas.getContext('2d');\n }\n\n // todo: switch统一改为数字map\n pickItem(graphic: IGraphic, point: IPointLike, parentMatrix: IMatrix | null, params: IPickParams): PickResult | null {\n if (graphic.attribute.pickable === false) {\n return null;\n }\n // 添加拦截器\n if (this.InterceptorContributions.length) {\n for (let i = 0; i < this.InterceptorContributions.length; i++) {\n const drawContribution = this.InterceptorContributions[i];\n if (drawContribution.beforePickItem) {\n const ret = drawContribution.beforePickItem(graphic, this, point, params, { parentMatrix });\n if (ret) {\n return ret;\n }\n }\n }\n }\n const picker = this.pickerMap.get(graphic.numberType);\n if (!picker) {\n return null;\n }\n const pd = picker.contains(graphic, point, params);\n const g = pd ? graphic : null;\n\n const data = {\n graphic: g,\n params: pd\n };\n if (g) {\n return data;\n }\n // 添加拦截器\n if (this.InterceptorContributions.length) {\n for (let i = 0; i < this.InterceptorContributions.length; i++) {\n const drawContribution = this.InterceptorContributions[i];\n if (drawContribution.afterPickItem) {\n const ret = drawContribution.afterPickItem(graphic, this, point, params, { parentMatrix });\n if (ret) {\n return ret;\n }\n }\n }\n }\n return data;\n }\n}\n"]}
@@ -13,16 +13,13 @@ var __decorate = this && this.__decorate || function(decorators, target, key, de
13
13
  import { inject, injectable, getTheme, ArcRender, getScaledStroke, ARC_NUMBER_TYPE } from "@visactor/vrender-core";
14
14
 
15
15
  let DefaultCanvasArcPicker = class {
16
- canvasRenderer;
17
- type="arc";
18
- numberType=ARC_NUMBER_TYPE;
19
16
  constructor(canvasRenderer) {
20
- this.canvasRenderer = canvasRenderer;
17
+ this.canvasRenderer = canvasRenderer, this.type = "arc", this.numberType = ARC_NUMBER_TYPE;
21
18
  }
22
19
  contains(arc, point, params) {
23
20
  if (!arc.AABBBounds.containsPoint(point)) return !1;
24
21
  if ("imprecise" === arc.attribute.pickMode) return !0;
25
- const {pickContext: pickContext} = params ?? {};
22
+ const {pickContext: pickContext} = null != params ? params : {};
26
23
  if (!pickContext) return !1;
27
24
  const arcAttribute = getTheme(arc).arc;
28
25
  pickContext.highPerformanceSave();
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/picker/contributions/canvas-picker/arc-picker.ts"],"names":[],"mappings":"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","file":"arc-picker.js","sourcesContent":["import { inject, injectable, getTheme, ArcRender, getScaledStroke, ARC_NUMBER_TYPE } from '@visactor/vrender-core';\nimport type { IPoint } from '@visactor/vutils';\nimport type {\n IArc,\n IGraphicAttribute,\n IContext2d,\n IMarkAttribute,\n IThemeAttribute,\n IGraphicPicker,\n IGraphicRender,\n IPickParams\n} from '@visactor/vrender-core';\n\n@injectable()\nexport class DefaultCanvasArcPicker implements IGraphicPicker {\n type: string = 'arc';\n numberType: number = ARC_NUMBER_TYPE;\n\n constructor(@inject(ArcRender) public readonly canvasRenderer: IGraphicRender) {}\n\n contains(arc: IArc, point: IPoint, params?: IPickParams): boolean {\n if (!arc.AABBBounds.containsPoint(point)) {\n return false;\n }\n if (arc.attribute.pickMode === 'imprecise') {\n return true;\n }\n\n const { pickContext } = params ?? {};\n if (!pickContext) {\n return false;\n }\n\n const arcAttribute = getTheme(arc).arc;\n\n // const arcAttribute = graphicService.themeService.getCurrentTheme().arcAttribute;\n\n pickContext.highPerformanceSave();\n let { x = arcAttribute.x, y = arcAttribute.y } = arc.attribute;\n if (!arc.transMatrix.onlyTranslate()) {\n // 性能较差\n x = 0;\n y = 0;\n pickContext.transformFromMatrix(arc.transMatrix, true);\n } else {\n const point = arc.getOffsetXY(arcAttribute);\n x += point.x;\n y += point.y;\n // 当前context有rotate/scale,重置matrix\n pickContext.setTransformForCurrent();\n }\n\n // 详细形状判断\n let picked = false;\n this.canvasRenderer.drawShape(\n arc,\n pickContext,\n x,\n y,\n {} as any,\n null,\n (\n context: IContext2d,\n arcAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n picked = context.isPointInPath(point.x, point.y);\n return picked;\n },\n (\n context: IContext2d,\n arcAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n const lineWidth = arcAttribute.lineWidth || themeAttribute.lineWidth;\n const pickStrokeBuffer = arcAttribute.pickStrokeBuffer || themeAttribute.pickStrokeBuffer;\n pickContext.lineWidth = getScaledStroke(pickContext, lineWidth + pickStrokeBuffer, pickContext.dpr);\n picked = context.isPointInStroke(point.x, point.y);\n return picked;\n }\n );\n\n pickContext.highPerformanceRestore();\n return picked;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/picker/contributions/canvas-picker/arc-picker.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAc5G,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAIjC,YAA+C,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;QAH7E,SAAI,GAAW,KAAK,CAAC;QACrB,eAAU,GAAW,eAAe,CAAC;IAE2C,CAAC;IAEjF,QAAQ,CAAC,GAAS,EAAE,KAAa,EAAE,MAAoB;QACrD,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE;YACxC,OAAO,KAAK,CAAC;SACd;QACD,IAAI,GAAG,CAAC,SAAS,CAAC,QAAQ,KAAK,WAAW,EAAE;YAC1C,OAAO,IAAI,CAAC;SACb;QAED,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,EAAE,CAAC;QACrC,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO,KAAK,CAAC;SACd;QAED,MAAM,YAAY,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;QAIvC,WAAW,CAAC,mBAAmB,EAAE,CAAC;QAClC,IAAI,EAAE,CAAC,GAAG,YAAY,CAAC,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,SAAS,CAAC;QAC/D,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,aAAa,EAAE,EAAE;YAEpC,CAAC,GAAG,CAAC,CAAC;YACN,CAAC,GAAG,CAAC,CAAC;YACN,WAAW,CAAC,mBAAmB,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;SACxD;aAAM;YACL,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YAC5C,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;YACb,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;YAEb,WAAW,CAAC,sBAAsB,EAAE,CAAC;SACtC;QAGD,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,cAAc,CAAC,SAAS,CAC3B,GAAG,EACH,WAAW,EACX,CAAC,EACD,CAAC,EACD,EAAS,EACT,IAAI,EACJ,CACE,OAAmB,EACnB,YAAyD,EACzD,cAA+B,EAC/B,EAAE;YAEF,IAAI,MAAM,EAAE;gBACV,OAAO,IAAI,CAAC;aACb;YACD,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;YACjD,OAAO,MAAM,CAAC;QAChB,CAAC,EACD,CACE,OAAmB,EACnB,YAAyD,EACzD,cAA+B,EAC/B,EAAE;YAEF,IAAI,MAAM,EAAE;gBACV,OAAO,IAAI,CAAC;aACb;YACD,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,IAAI,cAAc,CAAC,SAAS,CAAC;YACrE,MAAM,gBAAgB,GAAG,YAAY,CAAC,gBAAgB,IAAI,cAAc,CAAC,gBAAgB,CAAC;YAC1F,WAAW,CAAC,SAAS,GAAG,eAAe,CAAC,WAAW,EAAE,SAAS,GAAG,gBAAgB,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;YACpG,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;YACnD,OAAO,MAAM,CAAC;QAChB,CAAC,CACF,CAAC;QAEF,WAAW,CAAC,sBAAsB,EAAE,CAAC;QACrC,OAAO,MAAM,CAAC;IAChB,CAAC;CACF,CAAA;AA/EY,sBAAsB;IADlC,UAAU,EAAE;IAKE,WAAA,MAAM,CAAC,SAAS,CAAC,CAAA;;GAJnB,sBAAsB,CA+ElC;SA/EY,sBAAsB","file":"arc-picker.js","sourcesContent":["import { inject, injectable, getTheme, ArcRender, getScaledStroke, ARC_NUMBER_TYPE } from '@visactor/vrender-core';\nimport type { IPoint } from '@visactor/vutils';\nimport type {\n IArc,\n IGraphicAttribute,\n IContext2d,\n IMarkAttribute,\n IThemeAttribute,\n IGraphicPicker,\n IGraphicRender,\n IPickParams\n} from '@visactor/vrender-core';\n\n@injectable()\nexport class DefaultCanvasArcPicker implements IGraphicPicker {\n type: string = 'arc';\n numberType: number = ARC_NUMBER_TYPE;\n\n constructor(@inject(ArcRender) public readonly canvasRenderer: IGraphicRender) {}\n\n contains(arc: IArc, point: IPoint, params?: IPickParams): boolean {\n if (!arc.AABBBounds.containsPoint(point)) {\n return false;\n }\n if (arc.attribute.pickMode === 'imprecise') {\n return true;\n }\n\n const { pickContext } = params ?? {};\n if (!pickContext) {\n return false;\n }\n\n const arcAttribute = getTheme(arc).arc;\n\n // const arcAttribute = graphicService.themeService.getCurrentTheme().arcAttribute;\n\n pickContext.highPerformanceSave();\n let { x = arcAttribute.x, y = arcAttribute.y } = arc.attribute;\n if (!arc.transMatrix.onlyTranslate()) {\n // 性能较差\n x = 0;\n y = 0;\n pickContext.transformFromMatrix(arc.transMatrix, true);\n } else {\n const point = arc.getOffsetXY(arcAttribute);\n x += point.x;\n y += point.y;\n // 当前context有rotate/scale,重置matrix\n pickContext.setTransformForCurrent();\n }\n\n // 详细形状判断\n let picked = false;\n this.canvasRenderer.drawShape(\n arc,\n pickContext,\n x,\n y,\n {} as any,\n null,\n (\n context: IContext2d,\n arcAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n picked = context.isPointInPath(point.x, point.y);\n return picked;\n },\n (\n context: IContext2d,\n arcAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n const lineWidth = arcAttribute.lineWidth || themeAttribute.lineWidth;\n const pickStrokeBuffer = arcAttribute.pickStrokeBuffer || themeAttribute.pickStrokeBuffer;\n pickContext.lineWidth = getScaledStroke(pickContext, lineWidth + pickStrokeBuffer, pickContext.dpr);\n picked = context.isPointInStroke(point.x, point.y);\n return picked;\n }\n );\n\n pickContext.highPerformanceRestore();\n return picked;\n }\n}\n"]}
@@ -15,14 +15,11 @@ import { inject, injectable, getTheme, Arc3dRender, mat4Allocate, ARC3D_NUMBER_T
15
15
  import { BasePicker } from "./base-picker";
16
16
 
17
17
  let DefaultCanvasArc3dPicker = class extends BasePicker {
18
- canvasRenderer;
19
- type="arc3d";
20
- numberType=ARC3D_NUMBER_TYPE;
21
18
  constructor(canvasRenderer) {
22
- super(), this.canvasRenderer = canvasRenderer;
19
+ super(), this.canvasRenderer = canvasRenderer, this.type = "arc3d", this.numberType = ARC3D_NUMBER_TYPE;
23
20
  }
24
21
  contains(arc3d, point, params) {
25
- const {pickContext: pickContext} = params ?? {};
22
+ const {pickContext: pickContext} = null != params ? params : {};
26
23
  if (!pickContext) return !1;
27
24
  const arc3dAttribute = getTheme(arc3d).arc;
28
25
  pickContext.highPerformanceSave();
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/picker/contributions/canvas-picker/arc3d-picker.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAWpH,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAGpC,IAAM,wBAAwB,GAA9B,MAAM,wBAAyB,SAAQ,UAAkB;IAIb;IAHjD,IAAI,GAAW,OAAO,CAAC;IACvB,UAAU,GAAW,iBAAiB,CAAC;IAEvC,YAAiD,cAA8B;QAC7E,KAAK,EAAE,CAAC;QADuC,mBAAc,GAAd,cAAc,CAAgB;IAE/E,CAAC;IAED,QAAQ,CAAC,KAAa,EAAE,KAAa,EAAE,MAAoB;QACzD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QACrC,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO,KAAK,CAAC;SACd;QACD,MAAM,cAAc,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC;QAE3C,WAAW,CAAC,mBAAmB,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;QAChE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC;QAE1C,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,IAAI,WAAW,CAAC,MAAM,EAAE;YACtB,SAAS,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;YAC1B,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC;YACpD,SAAS,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC;YACnF,SAAS,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC;SACpF;QAED,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC;QAE1B,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,cAAc,CAAC,SAAS,CAC3B,KAAK,EACL,WAAW,EACX,CAAC,EACD,CAAC,EACD,MAAa,EACb,IAAI,EACJ,CACE,OAAmB,EACnB,cAA2D,EAC3D,cAA+B,EAC/B,EAAE;YAEF,IAAI,MAAM,EAAE;gBACV,OAAO,IAAI,CAAC;aACb;YACD,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;YACzD,OAAO,MAAM,CAAC;QAChB,CAAC,CACF,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC;QAG1B,IAAI,WAAW,CAAC,WAAW,KAAK,eAAe,EAAE;YAC/C,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;SAC5C;QACD,WAAW,CAAC,WAAW,GAAG,eAAe,CAAC;QAE1C,WAAW,CAAC,sBAAsB,EAAE,CAAC;QACrC,OAAO,MAAM,CAAC;IAChB,CAAC;CACF,CAAA;AA7DY,wBAAwB;IADpC,UAAU,EAAE;IAKE,WAAA,MAAM,CAAC,WAAW,CAAC,CAAA;;GAJrB,wBAAwB,CA6DpC;SA7DY,wBAAwB","file":"arc3d-picker.js","sourcesContent":["import type { IPoint } from '@visactor/vutils';\nimport { AABBBounds } from '@visactor/vutils';\nimport { inject, injectable, getTheme, Arc3dRender, mat4Allocate, ARC3D_NUMBER_TYPE } from '@visactor/vrender-core';\nimport type {\n IGraphicAttribute,\n IContext2d,\n IMarkAttribute,\n IArc3d,\n IThemeAttribute,\n IGraphicPicker,\n IGraphicRender,\n IPickParams\n} from '@visactor/vrender-core';\nimport { BasePicker } from './base-picker';\n\n@injectable()\nexport class DefaultCanvasArc3dPicker extends BasePicker<IArc3d> implements IGraphicPicker {\n type: string = 'arc3d';\n numberType: number = ARC3D_NUMBER_TYPE;\n\n constructor(@inject(Arc3dRender) public readonly canvasRenderer: IGraphicRender) {\n super();\n }\n\n contains(arc3d: IArc3d, point: IPoint, params?: IPickParams): boolean {\n const { pickContext } = params ?? {};\n if (!pickContext) {\n return false;\n }\n const arc3dAttribute = getTheme(arc3d).arc;\n\n pickContext.highPerformanceSave();\n const data = this.transform(arc3d, arc3dAttribute, pickContext);\n const { x, y, z, lastModelMatrix } = data;\n\n let pickPoint = point;\n if (pickContext.camera) {\n pickPoint = point.clone();\n const globalMatrix = arc3d.parent.globalTransMatrix;\n pickPoint.x = globalMatrix.a * point.x + globalMatrix.c * point.y + globalMatrix.e;\n pickPoint.y = globalMatrix.b * point.x + globalMatrix.d * point.y + globalMatrix.f;\n }\n\n this.canvasRenderer.z = z;\n // 详细形状判断\n let picked = false;\n this.canvasRenderer.drawShape(\n arc3d,\n pickContext,\n x,\n y,\n params as any,\n null,\n (\n context: IContext2d,\n arc3dAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n picked = context.isPointInPath(pickPoint.x, pickPoint.y);\n return picked;\n }\n );\n this.canvasRenderer.z = 0;\n\n // mat4Allocate.free(pickContext.modelMatrix);\n if (pickContext.modelMatrix !== lastModelMatrix) {\n mat4Allocate.free(pickContext.modelMatrix);\n }\n pickContext.modelMatrix = lastModelMatrix;\n\n pickContext.highPerformanceRestore();\n return picked;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/picker/contributions/canvas-picker/arc3d-picker.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAWpH,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAGpC,IAAM,wBAAwB,GAA9B,MAAM,wBAAyB,SAAQ,UAAkB;IAI9D,YAAiD,cAA8B;QAC7E,KAAK,EAAE,CAAC;QADuC,mBAAc,GAAd,cAAc,CAAgB;QAH/E,SAAI,GAAW,OAAO,CAAC;QACvB,eAAU,GAAW,iBAAiB,CAAC;IAIvC,CAAC;IAED,QAAQ,CAAC,KAAa,EAAE,KAAa,EAAE,MAAoB;QACzD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,EAAE,CAAC;QACrC,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO,KAAK,CAAC;SACd;QACD,MAAM,cAAc,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC;QAE3C,WAAW,CAAC,mBAAmB,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;QAChE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC;QAE1C,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,IAAI,WAAW,CAAC,MAAM,EAAE;YACtB,SAAS,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;YAC1B,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC;YACpD,SAAS,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC;YACnF,SAAS,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC;SACpF;QAED,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC;QAE1B,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,cAAc,CAAC,SAAS,CAC3B,KAAK,EACL,WAAW,EACX,CAAC,EACD,CAAC,EACD,MAAa,EACb,IAAI,EACJ,CACE,OAAmB,EACnB,cAA2D,EAC3D,cAA+B,EAC/B,EAAE;YAEF,IAAI,MAAM,EAAE;gBACV,OAAO,IAAI,CAAC;aACb;YACD,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;YACzD,OAAO,MAAM,CAAC;QAChB,CAAC,CACF,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC;QAG1B,IAAI,WAAW,CAAC,WAAW,KAAK,eAAe,EAAE;YAC/C,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;SAC5C;QACD,WAAW,CAAC,WAAW,GAAG,eAAe,CAAC;QAE1C,WAAW,CAAC,sBAAsB,EAAE,CAAC;QACrC,OAAO,MAAM,CAAC;IAChB,CAAC;CACF,CAAA;AA7DY,wBAAwB;IADpC,UAAU,EAAE;IAKE,WAAA,MAAM,CAAC,WAAW,CAAC,CAAA;;GAJrB,wBAAwB,CA6DpC;SA7DY,wBAAwB","file":"arc3d-picker.js","sourcesContent":["import type { IPoint } from '@visactor/vutils';\nimport { AABBBounds } from '@visactor/vutils';\nimport { inject, injectable, getTheme, Arc3dRender, mat4Allocate, ARC3D_NUMBER_TYPE } from '@visactor/vrender-core';\nimport type {\n IGraphicAttribute,\n IContext2d,\n IMarkAttribute,\n IArc3d,\n IThemeAttribute,\n IGraphicPicker,\n IGraphicRender,\n IPickParams\n} from '@visactor/vrender-core';\nimport { BasePicker } from './base-picker';\n\n@injectable()\nexport class DefaultCanvasArc3dPicker extends BasePicker<IArc3d> implements IGraphicPicker {\n type: string = 'arc3d';\n numberType: number = ARC3D_NUMBER_TYPE;\n\n constructor(@inject(Arc3dRender) public readonly canvasRenderer: IGraphicRender) {\n super();\n }\n\n contains(arc3d: IArc3d, point: IPoint, params?: IPickParams): boolean {\n const { pickContext } = params ?? {};\n if (!pickContext) {\n return false;\n }\n const arc3dAttribute = getTheme(arc3d).arc;\n\n pickContext.highPerformanceSave();\n const data = this.transform(arc3d, arc3dAttribute, pickContext);\n const { x, y, z, lastModelMatrix } = data;\n\n let pickPoint = point;\n if (pickContext.camera) {\n pickPoint = point.clone();\n const globalMatrix = arc3d.parent.globalTransMatrix;\n pickPoint.x = globalMatrix.a * point.x + globalMatrix.c * point.y + globalMatrix.e;\n pickPoint.y = globalMatrix.b * point.x + globalMatrix.d * point.y + globalMatrix.f;\n }\n\n this.canvasRenderer.z = z;\n // 详细形状判断\n let picked = false;\n this.canvasRenderer.drawShape(\n arc3d,\n pickContext,\n x,\n y,\n params as any,\n null,\n (\n context: IContext2d,\n arc3dAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n picked = context.isPointInPath(pickPoint.x, pickPoint.y);\n return picked;\n }\n );\n this.canvasRenderer.z = 0;\n\n // mat4Allocate.free(pickContext.modelMatrix);\n if (pickContext.modelMatrix !== lastModelMatrix) {\n mat4Allocate.free(pickContext.modelMatrix);\n }\n pickContext.modelMatrix = lastModelMatrix;\n\n pickContext.highPerformanceRestore();\n return picked;\n }\n}\n"]}
@@ -13,16 +13,13 @@ var __decorate = this && this.__decorate || function(decorators, target, key, de
13
13
  import { inject, injectable, getTheme, AreaRender, AREA_NUMBER_TYPE, getScaledStroke } from "@visactor/vrender-core";
14
14
 
15
15
  let DefaultCanvasAreaPicker = class {
16
- canvasRenderer;
17
- type="area";
18
- numberType=AREA_NUMBER_TYPE;
19
16
  constructor(canvasRenderer) {
20
- this.canvasRenderer = canvasRenderer;
17
+ this.canvasRenderer = canvasRenderer, this.type = "area", this.numberType = AREA_NUMBER_TYPE;
21
18
  }
22
19
  contains(area, point, params) {
23
20
  if (!area.AABBBounds.containsPoint(point)) return !1;
24
21
  if ("imprecise" === area.attribute.pickMode) return !0;
25
- const {pickContext: pickContext} = params ?? {};
22
+ const {pickContext: pickContext} = null != params ? params : {};
26
23
  if (!pickContext) return !1;
27
24
  const areaAttribute = getTheme(area).area;
28
25
  let {x: x = areaAttribute.x, y: y = areaAttribute.y} = area.attribute;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/picker/contributions/canvas-picker/area-picker.ts"],"names":[],"mappings":"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","file":"area-picker.js","sourcesContent":["import { inject, injectable, getTheme, AreaRender, AREA_NUMBER_TYPE, getScaledStroke } from '@visactor/vrender-core';\nimport type { IPoint } from '@visactor/vutils';\nimport type {\n IArea,\n IContext2d,\n IGraphicAttribute,\n IGraphicPicker,\n IGraphicRender,\n IMarkAttribute,\n IPickParams,\n IThemeAttribute\n} from '@visactor/vrender-core';\n\n@injectable()\nexport class DefaultCanvasAreaPicker implements IGraphicPicker {\n type: string = 'area';\n numberType: number = AREA_NUMBER_TYPE;\n\n constructor(@inject(AreaRender) public readonly canvasRenderer: IGraphicRender) {}\n\n contains(area: IArea, point: IPoint, params?: IPickParams): boolean {\n if (!area.AABBBounds.containsPoint(point)) {\n return false;\n }\n if (area.attribute.pickMode === 'imprecise') {\n return true;\n }\n\n const { pickContext } = params ?? {};\n if (!pickContext) {\n return false;\n }\n\n // const areaAttribute = graphicService.themeService.getCurrentTheme().areaAttribute;\n const areaAttribute = getTheme(area).area;\n let { x = areaAttribute.x, y = areaAttribute.y } = area.attribute;\n const { fillPickable = areaAttribute.fillPickable, strokePickable = areaAttribute.strokePickable } = area.attribute;\n\n pickContext.highPerformanceSave();\n if (!area.transMatrix.onlyTranslate()) {\n // 性能较差\n x = 0;\n y = 0;\n pickContext.transformFromMatrix(area.transMatrix, true);\n } else {\n const point = area.getOffsetXY(areaAttribute);\n x += point.x;\n y += point.y;\n // 当前context有rotate/scale,重置matrix\n pickContext.setTransformForCurrent();\n }\n\n // 详细形状判断\n let picked = false;\n this.canvasRenderer.drawShape(\n area,\n pickContext,\n x,\n y,\n {} as any,\n null,\n context => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n if (!fillPickable) {\n return false;\n }\n picked = context.isPointInPath(point.x, point.y);\n return picked;\n },\n (\n context: IContext2d,\n areaAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n if (!strokePickable) {\n return false;\n }\n const lineWidth = areaAttribute.lineWidth || themeAttribute.lineWidth;\n const pickStrokeBuffer = areaAttribute.pickStrokeBuffer || themeAttribute.pickStrokeBuffer;\n pickContext.lineWidth = getScaledStroke(pickContext, lineWidth + pickStrokeBuffer, pickContext.dpr);\n picked = context.isPointInStroke(point.x, point.y);\n return picked;\n }\n );\n\n pickContext.highPerformanceRestore();\n // area没有stroke pick\n return picked;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/picker/contributions/canvas-picker/area-picker.ts"],"names":[],"mappings":"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","file":"area-picker.js","sourcesContent":["import { inject, injectable, getTheme, AreaRender, AREA_NUMBER_TYPE, getScaledStroke } from '@visactor/vrender-core';\nimport type { IPoint } from '@visactor/vutils';\nimport type {\n IArea,\n IContext2d,\n IGraphicAttribute,\n IGraphicPicker,\n IGraphicRender,\n IMarkAttribute,\n IPickParams,\n IThemeAttribute\n} from '@visactor/vrender-core';\n\n@injectable()\nexport class DefaultCanvasAreaPicker implements IGraphicPicker {\n type: string = 'area';\n numberType: number = AREA_NUMBER_TYPE;\n\n constructor(@inject(AreaRender) public readonly canvasRenderer: IGraphicRender) {}\n\n contains(area: IArea, point: IPoint, params?: IPickParams): boolean {\n if (!area.AABBBounds.containsPoint(point)) {\n return false;\n }\n if (area.attribute.pickMode === 'imprecise') {\n return true;\n }\n\n const { pickContext } = params ?? {};\n if (!pickContext) {\n return false;\n }\n\n // const areaAttribute = graphicService.themeService.getCurrentTheme().areaAttribute;\n const areaAttribute = getTheme(area).area;\n let { x = areaAttribute.x, y = areaAttribute.y } = area.attribute;\n const { fillPickable = areaAttribute.fillPickable, strokePickable = areaAttribute.strokePickable } = area.attribute;\n\n pickContext.highPerformanceSave();\n if (!area.transMatrix.onlyTranslate()) {\n // 性能较差\n x = 0;\n y = 0;\n pickContext.transformFromMatrix(area.transMatrix, true);\n } else {\n const point = area.getOffsetXY(areaAttribute);\n x += point.x;\n y += point.y;\n // 当前context有rotate/scale,重置matrix\n pickContext.setTransformForCurrent();\n }\n\n // 详细形状判断\n let picked = false;\n this.canvasRenderer.drawShape(\n area,\n pickContext,\n x,\n y,\n {} as any,\n null,\n context => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n if (!fillPickable) {\n return false;\n }\n picked = context.isPointInPath(point.x, point.y);\n return picked;\n },\n (\n context: IContext2d,\n areaAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n if (!strokePickable) {\n return false;\n }\n const lineWidth = areaAttribute.lineWidth || themeAttribute.lineWidth;\n const pickStrokeBuffer = areaAttribute.pickStrokeBuffer || themeAttribute.pickStrokeBuffer;\n pickContext.lineWidth = getScaledStroke(pickContext, lineWidth + pickStrokeBuffer, pickContext.dpr);\n picked = context.isPointInStroke(point.x, point.y);\n return picked;\n }\n );\n\n pickContext.highPerformanceRestore();\n // area没有stroke pick\n return picked;\n }\n}\n"]}
@@ -13,16 +13,13 @@ var __decorate = this && this.__decorate || function(decorators, target, key, de
13
13
  import { inject, injectable, getTheme, CircleRender, getScaledStroke, CIRCLE_NUMBER_TYPE } from "@visactor/vrender-core";
14
14
 
15
15
  let DefaultCanvasCirclePicker = class {
16
- canvasRenderer;
17
- type="circle";
18
- numberType=CIRCLE_NUMBER_TYPE;
19
16
  constructor(canvasRenderer) {
20
- this.canvasRenderer = canvasRenderer;
17
+ this.canvasRenderer = canvasRenderer, this.type = "circle", this.numberType = CIRCLE_NUMBER_TYPE;
21
18
  }
22
19
  contains(circle, point, params) {
23
20
  if (!circle.AABBBounds.containsPoint(point)) return !1;
24
21
  if ("imprecise" === circle.attribute.pickMode) return !0;
25
- const {pickContext: pickContext} = params ?? {};
22
+ const {pickContext: pickContext} = null != params ? params : {};
26
23
  if (!pickContext) return !1;
27
24
  const circleAttribute = getTheme(circle).circle;
28
25
  let {x: x = circleAttribute.x, y: y = circleAttribute.y} = circle.attribute;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/picker/contributions/canvas-picker/circle-picker.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,EACL,MAAM,EACN,UAAU,EACV,QAAQ,EACR,YAAY,EACZ,eAAe,EACf,kBAAkB,EACnB,MAAM,wBAAwB,CAAC;AAazB,IAAM,yBAAyB,GAA/B,MAAM,yBAAyB;IAIc;IAHlD,IAAI,GAAW,QAAQ,CAAC;IACxB,UAAU,GAAW,kBAAkB,CAAC;IAExC,YAAkD,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;IAAG,CAAC;IAEpF,QAAQ,CAAC,MAAe,EAAE,KAAa,EAAE,MAAoB;QAC3D,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE;YAC3C,OAAO,KAAK,CAAC;SACd;QACD,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,KAAK,WAAW,EAAE;YAC7C,OAAO,IAAI,CAAC;SACb;QAED,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QACrC,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO,KAAK,CAAC;SACd;QAGD,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;QAChD,IAAI,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,SAAS,CAAC;QAExE,WAAW,CAAC,mBAAmB,EAAE,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,aAAa,EAAE,EAAE;YAEvC,CAAC,GAAG,CAAC,CAAC;YACN,CAAC,GAAG,CAAC,CAAC;YACN,WAAW,CAAC,mBAAmB,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;SAC3D;aAAM;YACL,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;YAClD,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;YACb,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;YAEb,WAAW,CAAC,sBAAsB,EAAE,CAAC;SACtC;QAGD,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,cAAc,CAAC,SAAS,CAC3B,MAAM,EACN,WAAW,EACX,CAAC,EACD,CAAC,EACD,EAAS,EACT,IAAI,EACJ,CACE,OAAmB,EACnB,eAA4D,EAC5D,cAA+B,EAC/B,EAAE;YAEF,IAAI,MAAM,EAAE;gBACV,OAAO,IAAI,CAAC;aACb;YACD,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;YACjD,OAAO,MAAM,CAAC;QAChB,CAAC,EACD,CACE,OAAmB,EACnB,eAA4D,EAC5D,cAA+B,EAC/B,EAAE;YAEF,IAAI,MAAM,EAAE;gBACV,OAAO,IAAI,CAAC;aACb;YACD,MAAM,SAAS,GAAG,eAAe,CAAC,SAAS,IAAI,cAAc,CAAC,SAAS,CAAC;YACxE,MAAM,gBAAgB,GAAG,eAAe,CAAC,gBAAgB,IAAI,cAAc,CAAC,gBAAgB,CAAC;YAC7F,WAAW,CAAC,SAAS,GAAG,eAAe,CAAC,WAAW,EAAE,SAAS,GAAG,gBAAgB,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;YACpG,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;YACnD,OAAO,MAAM,CAAC;QAChB,CAAC,CACF,CAAC;QAEF,WAAW,CAAC,sBAAsB,EAAE,CAAC;QACrC,OAAO,MAAM,CAAC;IAChB,CAAC;CACF,CAAA;AA9EY,yBAAyB;IADrC,UAAU,EAAE;IAKE,WAAA,MAAM,CAAC,YAAY,CAAC,CAAA;;GAJtB,yBAAyB,CA8ErC;SA9EY,yBAAyB","file":"circle-picker.js","sourcesContent":["import type { IPoint } from '@visactor/vutils';\nimport {\n inject,\n injectable,\n getTheme,\n CircleRender,\n getScaledStroke,\n CIRCLE_NUMBER_TYPE\n} from '@visactor/vrender-core';\nimport type {\n IGraphicAttribute,\n ICircle,\n IContext2d,\n IMarkAttribute,\n IThemeAttribute,\n IGraphicPicker,\n IGraphicRender,\n IPickParams\n} from '@visactor/vrender-core';\n\n@injectable()\nexport class DefaultCanvasCirclePicker implements IGraphicPicker {\n type: string = 'circle';\n numberType: number = CIRCLE_NUMBER_TYPE;\n\n constructor(@inject(CircleRender) public readonly canvasRenderer: IGraphicRender) {}\n\n contains(circle: ICircle, point: IPoint, params?: IPickParams): boolean {\n if (!circle.AABBBounds.containsPoint(point)) {\n return false;\n }\n if (circle.attribute.pickMode === 'imprecise') {\n return true;\n }\n\n const { pickContext } = params ?? {};\n if (!pickContext) {\n return false;\n }\n\n // const circleAttribute = graphicService.themeService.getCurrentTheme().circleAttribute;\n const circleAttribute = getTheme(circle).circle;\n let { x = circleAttribute.x, y = circleAttribute.y } = circle.attribute;\n\n pickContext.highPerformanceSave();\n if (!circle.transMatrix.onlyTranslate()) {\n // 性能较差\n x = 0;\n y = 0;\n pickContext.transformFromMatrix(circle.transMatrix, true);\n } else {\n const point = circle.getOffsetXY(circleAttribute);\n x += point.x;\n y += point.y;\n // 当前context有rotate/scale,重置matrix\n pickContext.setTransformForCurrent();\n }\n\n // 详细形状判断\n let picked = false;\n this.canvasRenderer.drawShape(\n circle,\n pickContext,\n x,\n y,\n {} as any,\n null,\n (\n context: IContext2d,\n circleAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n picked = context.isPointInPath(point.x, point.y);\n return picked;\n },\n (\n context: IContext2d,\n circleAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n const lineWidth = circleAttribute.lineWidth || themeAttribute.lineWidth;\n const pickStrokeBuffer = circleAttribute.pickStrokeBuffer || themeAttribute.pickStrokeBuffer;\n pickContext.lineWidth = getScaledStroke(pickContext, lineWidth + pickStrokeBuffer, pickContext.dpr);\n picked = context.isPointInStroke(point.x, point.y);\n return picked;\n }\n );\n\n pickContext.highPerformanceRestore();\n return picked;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/picker/contributions/canvas-picker/circle-picker.ts"],"names":[],"mappings":"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","file":"circle-picker.js","sourcesContent":["import type { IPoint } from '@visactor/vutils';\nimport {\n inject,\n injectable,\n getTheme,\n CircleRender,\n getScaledStroke,\n CIRCLE_NUMBER_TYPE\n} from '@visactor/vrender-core';\nimport type {\n IGraphicAttribute,\n ICircle,\n IContext2d,\n IMarkAttribute,\n IThemeAttribute,\n IGraphicPicker,\n IGraphicRender,\n IPickParams\n} from '@visactor/vrender-core';\n\n@injectable()\nexport class DefaultCanvasCirclePicker implements IGraphicPicker {\n type: string = 'circle';\n numberType: number = CIRCLE_NUMBER_TYPE;\n\n constructor(@inject(CircleRender) public readonly canvasRenderer: IGraphicRender) {}\n\n contains(circle: ICircle, point: IPoint, params?: IPickParams): boolean {\n if (!circle.AABBBounds.containsPoint(point)) {\n return false;\n }\n if (circle.attribute.pickMode === 'imprecise') {\n return true;\n }\n\n const { pickContext } = params ?? {};\n if (!pickContext) {\n return false;\n }\n\n // const circleAttribute = graphicService.themeService.getCurrentTheme().circleAttribute;\n const circleAttribute = getTheme(circle).circle;\n let { x = circleAttribute.x, y = circleAttribute.y } = circle.attribute;\n\n pickContext.highPerformanceSave();\n if (!circle.transMatrix.onlyTranslate()) {\n // 性能较差\n x = 0;\n y = 0;\n pickContext.transformFromMatrix(circle.transMatrix, true);\n } else {\n const point = circle.getOffsetXY(circleAttribute);\n x += point.x;\n y += point.y;\n // 当前context有rotate/scale,重置matrix\n pickContext.setTransformForCurrent();\n }\n\n // 详细形状判断\n let picked = false;\n this.canvasRenderer.drawShape(\n circle,\n pickContext,\n x,\n y,\n {} as any,\n null,\n (\n context: IContext2d,\n circleAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n picked = context.isPointInPath(point.x, point.y);\n return picked;\n },\n (\n context: IContext2d,\n circleAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n const lineWidth = circleAttribute.lineWidth || themeAttribute.lineWidth;\n const pickStrokeBuffer = circleAttribute.pickStrokeBuffer || themeAttribute.pickStrokeBuffer;\n pickContext.lineWidth = getScaledStroke(pickContext, lineWidth + pickStrokeBuffer, pickContext.dpr);\n picked = context.isPointInStroke(point.x, point.y);\n return picked;\n }\n );\n\n pickContext.highPerformanceRestore();\n return picked;\n }\n}\n"]}
@@ -13,18 +13,15 @@ var __decorate = this && this.__decorate || function(decorators, target, key, de
13
13
  import { inject, injectable, GLYPH_NUMBER_TYPE, GlyphRender } from "@visactor/vrender-core";
14
14
 
15
15
  let DefaultCanvasGlyphPicker = class {
16
- canvasRenderer;
17
- type="glyph";
18
- numberType=GLYPH_NUMBER_TYPE;
19
16
  constructor(canvasRenderer) {
20
- this.canvasRenderer = canvasRenderer;
17
+ this.canvasRenderer = canvasRenderer, this.type = "glyph", this.numberType = GLYPH_NUMBER_TYPE;
21
18
  }
22
19
  contains(glyph, point, params) {
23
20
  if (!glyph.AABBBounds.containsPoint(point)) return !1;
24
21
  if ("imprecise" === glyph.attribute.pickMode) return !0;
25
- const {pickContext: pickContext} = params ?? {};
22
+ const {pickContext: pickContext} = null != params ? params : {};
26
23
  if (!pickContext) return !1;
27
- const pickerService = params?.pickerService;
24
+ const pickerService = null == params ? void 0 : params.pickerService;
28
25
  if (pickerService) {
29
26
  let picked = !1;
30
27
  return glyph.getSubGraphic().forEach((g => {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/picker/contributions/canvas-picker/glyph-picker.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAIrF,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IAIc;IAHjD,IAAI,GAAW,OAAO,CAAC;IACvB,UAAU,GAAW,iBAAiB,CAAC;IAEvC,YAAiD,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;IAAG,CAAC;IAEnF,QAAQ,CAAC,KAAa,EAAE,KAAa,EAAE,MAAoB;QACzD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE;YAC1C,OAAO,KAAK,CAAC;SACd;QACD,IAAI,KAAK,CAAC,SAAS,CAAC,QAAQ,KAAK,WAAW,EAAE;YAC5C,OAAO,IAAI,CAAC;SACb;QAED,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QACrC,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO,KAAK,CAAC;SACd;QAED,MAAM,aAAa,GAAG,MAAM,EAAE,aAAa,CAAC;QAC5C,IAAI,aAAa,EAAE;YAEjB,IAAI,MAAM,GAAG,KAAK,CAAC;YACnB,KAAK,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBAChC,IAAI,MAAM,EAAE;oBACV,OAAO;iBACR;gBACD,MAAM,IAAI,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;gBAC5D,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;YACpC,CAAC,CAAC,CAAC;YACH,OAAO,MAAM,CAAC;SACf;QACD,OAAO,KAAK,CAAC;IA0Cf,CAAC;CACF,CAAA;AA3EY,wBAAwB;IADpC,UAAU,EAAE;IAKE,WAAA,MAAM,CAAC,WAAW,CAAC,CAAA;;GAJrB,wBAAwB,CA2EpC;SA3EY,wBAAwB","file":"glyph-picker.js","sourcesContent":["import type { IPoint } from '@visactor/vutils';\nimport { inject, injectable, GLYPH_NUMBER_TYPE, GlyphRender } from '@visactor/vrender-core';\nimport type { IGlyph, IGraphicPicker, IGraphicRender, IPickParams } from '@visactor/vrender-core';\n\n@injectable()\nexport class DefaultCanvasGlyphPicker implements IGraphicPicker {\n type: string = 'glyph';\n numberType: number = GLYPH_NUMBER_TYPE;\n\n constructor(@inject(GlyphRender) public readonly canvasRenderer: IGraphicRender) {}\n\n contains(glyph: IGlyph, point: IPoint, params?: IPickParams): boolean {\n if (!glyph.AABBBounds.containsPoint(point)) {\n return false;\n }\n if (glyph.attribute.pickMode === 'imprecise') {\n return true;\n }\n\n const { pickContext } = params ?? {};\n if (!pickContext) {\n return false;\n }\n\n const pickerService = params?.pickerService;\n if (pickerService) {\n // 遍历所有的子元素pick\n let picked = false;\n glyph.getSubGraphic().forEach(g => {\n if (picked) {\n return;\n }\n const data = pickerService.pickItem(g, point, null, params);\n picked = !!(data && data.graphic);\n });\n return picked;\n }\n return false;\n\n // const { rectAttribute } = graphicService.themeService.getCurrentTheme();\n // const glyphAttribute = getTheme(glyph).glyph;\n // let { x = glyphAttribute.x, y = glyphAttribute.y } = glyph.attribute;\n\n // pickContext.highPerformanceSave();\n // if (!glyph.transMatrix.onlyTranslate()) {\n // // 性能较差\n // x = 0;\n // y = 0;\n // pickContext.transformFromMatrix(glyph.transMatrix, true);\n // } else {\n // const { dx = glyphAttribute.dx, dy = glyphAttribute.dy } = glyph.attribute;\n // x += dx;\n // y += dy;\n // // 当前context有rotate/scale,重置matrix\n // pickContext.setTransformForCurrent();\n // }\n // // 详细形状判断\n // let picked = false;\n // this.canvasRenderer.drawShape(\n // glyph,\n // pickContext,\n // x,\n // y,\n // {\n // drawContribution: params.pickerService?.drawContribution\n // } as any,\n // null,\n // context => {\n // // 选中后面就不需要再走逻辑了\n // if (picked) {\n // return true;\n // }\n // picked = context.isPointInPath(point.x, point.y);\n // return picked;\n // }\n // );\n\n // pickContext.highPerformanceRestore();\n // return picked; // 无圆角形状判断通过\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/picker/contributions/canvas-picker/glyph-picker.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAIrF,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IAInC,YAAiD,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;QAH/E,SAAI,GAAW,OAAO,CAAC;QACvB,eAAU,GAAW,iBAAiB,CAAC;IAE2C,CAAC;IAEnF,QAAQ,CAAC,KAAa,EAAE,KAAa,EAAE,MAAoB;QACzD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE;YAC1C,OAAO,KAAK,CAAC;SACd;QACD,IAAI,KAAK,CAAC,SAAS,CAAC,QAAQ,KAAK,WAAW,EAAE;YAC5C,OAAO,IAAI,CAAC;SACb;QAED,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,EAAE,CAAC;QACrC,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO,KAAK,CAAC;SACd;QAED,MAAM,aAAa,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,aAAa,CAAC;QAC5C,IAAI,aAAa,EAAE;YAEjB,IAAI,MAAM,GAAG,KAAK,CAAC;YACnB,KAAK,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBAChC,IAAI,MAAM,EAAE;oBACV,OAAO;iBACR;gBACD,MAAM,IAAI,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;gBAC5D,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;YACpC,CAAC,CAAC,CAAC;YACH,OAAO,MAAM,CAAC;SACf;QACD,OAAO,KAAK,CAAC;IA0Cf,CAAC;CACF,CAAA;AA3EY,wBAAwB;IADpC,UAAU,EAAE;IAKE,WAAA,MAAM,CAAC,WAAW,CAAC,CAAA;;GAJrB,wBAAwB,CA2EpC;SA3EY,wBAAwB","file":"glyph-picker.js","sourcesContent":["import type { IPoint } from '@visactor/vutils';\nimport { inject, injectable, GLYPH_NUMBER_TYPE, GlyphRender } from '@visactor/vrender-core';\nimport type { IGlyph, IGraphicPicker, IGraphicRender, IPickParams } from '@visactor/vrender-core';\n\n@injectable()\nexport class DefaultCanvasGlyphPicker implements IGraphicPicker {\n type: string = 'glyph';\n numberType: number = GLYPH_NUMBER_TYPE;\n\n constructor(@inject(GlyphRender) public readonly canvasRenderer: IGraphicRender) {}\n\n contains(glyph: IGlyph, point: IPoint, params?: IPickParams): boolean {\n if (!glyph.AABBBounds.containsPoint(point)) {\n return false;\n }\n if (glyph.attribute.pickMode === 'imprecise') {\n return true;\n }\n\n const { pickContext } = params ?? {};\n if (!pickContext) {\n return false;\n }\n\n const pickerService = params?.pickerService;\n if (pickerService) {\n // 遍历所有的子元素pick\n let picked = false;\n glyph.getSubGraphic().forEach(g => {\n if (picked) {\n return;\n }\n const data = pickerService.pickItem(g, point, null, params);\n picked = !!(data && data.graphic);\n });\n return picked;\n }\n return false;\n\n // const { rectAttribute } = graphicService.themeService.getCurrentTheme();\n // const glyphAttribute = getTheme(glyph).glyph;\n // let { x = glyphAttribute.x, y = glyphAttribute.y } = glyph.attribute;\n\n // pickContext.highPerformanceSave();\n // if (!glyph.transMatrix.onlyTranslate()) {\n // // 性能较差\n // x = 0;\n // y = 0;\n // pickContext.transformFromMatrix(glyph.transMatrix, true);\n // } else {\n // const { dx = glyphAttribute.dx, dy = glyphAttribute.dy } = glyph.attribute;\n // x += dx;\n // y += dy;\n // // 当前context有rotate/scale,重置matrix\n // pickContext.setTransformForCurrent();\n // }\n // // 详细形状判断\n // let picked = false;\n // this.canvasRenderer.drawShape(\n // glyph,\n // pickContext,\n // x,\n // y,\n // {\n // drawContribution: params.pickerService?.drawContribution\n // } as any,\n // null,\n // context => {\n // // 选中后面就不需要再走逻辑了\n // if (picked) {\n // return true;\n // }\n // picked = context.isPointInPath(point.x, point.y);\n // return picked;\n // }\n // );\n\n // pickContext.highPerformanceRestore();\n // return picked; // 无圆角形状判断通过\n }\n}\n"]}
@@ -7,8 +7,9 @@ var __decorate = this && this.__decorate || function(decorators, target, key, de
7
7
  import { injectable, GROUP_NUMBER_TYPE } from "@visactor/vrender-core";
8
8
 
9
9
  let DefaultCanvasGroupPicker = class {
10
- type="group";
11
- numberType=GROUP_NUMBER_TYPE;
10
+ constructor() {
11
+ this.type = "group", this.numberType = GROUP_NUMBER_TYPE;
12
+ }
12
13
  contains(group, point, params) {
13
14
  return !1;
14
15
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/picker/contributions/canvas-picker/group-picker.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAIhE,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IACnC,IAAI,GAAW,OAAO,CAAC;IACvB,UAAU,GAAW,iBAAiB,CAAC;IAIvC,QAAQ,CAAC,KAAa,EAAE,KAAa,EAAE,MAAoB;QAGzD,OAAO,KAAK,CAAC;IAIf,CAAC;CACF,CAAA;AAdY,wBAAwB;IADpC,UAAU,EAAE;GACA,wBAAwB,CAcpC;SAdY,wBAAwB","file":"group-picker.js","sourcesContent":["import type { IPoint } from '@visactor/vutils';\nimport { injectable, GROUP_NUMBER_TYPE } from '@visactor/vrender-core';\nimport type { IGraphicPicker, IPickParams, IGroup } from '@visactor/vrender-core';\n\n@injectable()\nexport class DefaultCanvasGroupPicker implements IGraphicPicker {\n type: string = 'group';\n numberType: number = GROUP_NUMBER_TYPE;\n\n // constructor(@inject(RectRender) public readonly canvasRenderer: IGraphicRender) {}\n\n contains(group: IGroup, point: IPoint, params?: IPickParams): boolean {\n // Group作为特殊节点,本身不支持被pick\n // 存在shadowDOM的group,它的shadow可以被pick,但是不会冒泡到场景树中\n return false;\n // if (group.attribute.pickMode === 'imprecise') {\n // return true;\n // }\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/picker/contributions/canvas-picker/group-picker.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAIhE,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IAA9B;QACL,SAAI,GAAW,OAAO,CAAC;QACvB,eAAU,GAAW,iBAAiB,CAAC;IAYzC,CAAC;IARC,QAAQ,CAAC,KAAa,EAAE,KAAa,EAAE,MAAoB;QAGzD,OAAO,KAAK,CAAC;IAIf,CAAC;CACF,CAAA;AAdY,wBAAwB;IADpC,UAAU,EAAE;GACA,wBAAwB,CAcpC;SAdY,wBAAwB","file":"group-picker.js","sourcesContent":["import type { IPoint } from '@visactor/vutils';\nimport { injectable, GROUP_NUMBER_TYPE } from '@visactor/vrender-core';\nimport type { IGraphicPicker, IPickParams, IGroup } from '@visactor/vrender-core';\n\n@injectable()\nexport class DefaultCanvasGroupPicker implements IGraphicPicker {\n type: string = 'group';\n numberType: number = GROUP_NUMBER_TYPE;\n\n // constructor(@inject(RectRender) public readonly canvasRenderer: IGraphicRender) {}\n\n contains(group: IGroup, point: IPoint, params?: IPickParams): boolean {\n // Group作为特殊节点,本身不支持被pick\n // 存在shadowDOM的group,它的shadow可以被pick,但是不会冒泡到场景树中\n return false;\n // if (group.attribute.pickMode === 'imprecise') {\n // return true;\n // }\n }\n}\n"]}
@@ -7,10 +7,11 @@ var __decorate = this && this.__decorate || function(decorators, target, key, de
7
7
  import { injectable, IMAGE_NUMBER_TYPE } from "@visactor/vrender-core";
8
8
 
9
9
  let DefaultCanvasImagePicker = class {
10
- type="image";
11
- numberType=IMAGE_NUMBER_TYPE;
10
+ constructor() {
11
+ this.type = "image", this.numberType = IMAGE_NUMBER_TYPE;
12
+ }
12
13
  contains(image, point, params) {
13
- const {pickContext: pickContext} = params ?? {};
14
+ const {pickContext: pickContext} = null != params ? params : {};
14
15
  return !!pickContext && !!image.AABBBounds.containsPoint(point);
15
16
  }
16
17
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/picker/contributions/canvas-picker/image-picker.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAIhE,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IACnC,IAAI,GAAW,OAAO,CAAC;IACvB,UAAU,GAAW,iBAAiB,CAAC;IAEvC,QAAQ,CAAC,KAAa,EAAE,KAAa,EAAE,MAAoB;QAOzD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QACrC,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO,KAAK,CAAC;SACd;QAED,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE;YAC1C,OAAO,KAAK,CAAC;SACd;QAGD,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAvBY,wBAAwB;IADpC,UAAU,EAAE;GACA,wBAAwB,CAuBpC;SAvBY,wBAAwB","file":"image-picker.js","sourcesContent":["import type { IPoint } from '@visactor/vutils';\nimport { injectable, IMAGE_NUMBER_TYPE } from '@visactor/vrender-core';\nimport type { IGraphicPicker, IImage, IPickParams } from '@visactor/vrender-core';\n\n@injectable()\nexport class DefaultCanvasImagePicker implements IGraphicPicker {\n type: string = 'image';\n numberType: number = IMAGE_NUMBER_TYPE;\n\n contains(image: IImage, point: IPoint, params?: IPickParams): boolean {\n // const { imageAttribute } = graphicService.themeService.getCurrentTheme();\n // const {\n // x = imageAttribute.x,\n // y = imageAttribute.y,\n // } = image.attribute;\n\n const { pickContext } = params ?? {};\n if (!pickContext) {\n return false;\n }\n\n if (!image.AABBBounds.containsPoint(point)) {\n return false;\n }\n\n // TODO: 详细形状判断\n return true;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/picker/contributions/canvas-picker/image-picker.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAIhE,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IAA9B;QACL,SAAI,GAAW,OAAO,CAAC;QACvB,eAAU,GAAW,iBAAiB,CAAC;IAqBzC,CAAC;IAnBC,QAAQ,CAAC,KAAa,EAAE,KAAa,EAAE,MAAoB;QAOzD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,EAAE,CAAC;QACrC,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO,KAAK,CAAC;SACd;QAED,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE;YAC1C,OAAO,KAAK,CAAC;SACd;QAGD,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAvBY,wBAAwB;IADpC,UAAU,EAAE;GACA,wBAAwB,CAuBpC;SAvBY,wBAAwB","file":"image-picker.js","sourcesContent":["import type { IPoint } from '@visactor/vutils';\nimport { injectable, IMAGE_NUMBER_TYPE } from '@visactor/vrender-core';\nimport type { IGraphicPicker, IImage, IPickParams } from '@visactor/vrender-core';\n\n@injectable()\nexport class DefaultCanvasImagePicker implements IGraphicPicker {\n type: string = 'image';\n numberType: number = IMAGE_NUMBER_TYPE;\n\n contains(image: IImage, point: IPoint, params?: IPickParams): boolean {\n // const { imageAttribute } = graphicService.themeService.getCurrentTheme();\n // const {\n // x = imageAttribute.x,\n // y = imageAttribute.y,\n // } = image.attribute;\n\n const { pickContext } = params ?? {};\n if (!pickContext) {\n return false;\n }\n\n if (!image.AABBBounds.containsPoint(point)) {\n return false;\n }\n\n // TODO: 详细形状判断\n return true;\n }\n}\n"]}
@@ -15,16 +15,13 @@ import { inject, injectable, LineRender, getTheme, mat4Allocate, getScaledStroke
15
15
  import { BasePicker } from "./base-picker";
16
16
 
17
17
  let DefaultCanvasLinePicker = class extends BasePicker {
18
- canvasRenderer;
19
- type="line";
20
- numberType=LINE_NUMBER_TYPE;
21
18
  constructor(canvasRenderer) {
22
- super(), this.canvasRenderer = canvasRenderer;
19
+ super(), this.canvasRenderer = canvasRenderer, this.type = "line", this.numberType = LINE_NUMBER_TYPE;
23
20
  }
24
21
  contains(line, point, params) {
25
22
  if (!line.AABBBounds.containsPoint(point)) return !1;
26
23
  if ("imprecise" === line.attribute.pickMode) return !0;
27
- const {pickContext: pickContext} = params ?? {};
24
+ const {pickContext: pickContext} = null != params ? params : {};
28
25
  if (!pickContext) return !1;
29
26
  pickContext.highPerformanceSave();
30
27
  const lineAttribute = getTheme(line).line, data = this.transform(line, lineAttribute, pickContext), {x: x, y: y, z: z, lastModelMatrix: lastModelMatrix} = data;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/picker/contributions/canvas-picker/line-picker.ts"],"names":[],"mappings":"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","file":"line-picker.js","sourcesContent":["import {\n inject,\n injectable,\n LineRender,\n getTheme,\n mat4Allocate,\n getScaledStroke,\n LINE_NUMBER_TYPE\n} from '@visactor/vrender-core';\nimport type { IPoint } from '@visactor/vutils';\nimport type {\n ILine,\n IContext2d,\n IMarkAttribute,\n IGraphicAttribute,\n IThemeAttribute,\n IGraphicPicker,\n IGraphicRender,\n IPickParams\n} from '@visactor/vrender-core';\nimport { BasePicker } from './base-picker';\n\n@injectable()\nexport class DefaultCanvasLinePicker extends BasePicker<ILine> implements IGraphicPicker {\n type: string = 'line';\n numberType: number = LINE_NUMBER_TYPE;\n\n constructor(@inject(LineRender) public readonly canvasRenderer: IGraphicRender) {\n super();\n }\n // numberType?: number = LINE_NUMBER_TYPE;\n\n contains(line: ILine, point: IPoint, params?: IPickParams): boolean {\n if (!line.AABBBounds.containsPoint(point)) {\n return false;\n }\n if (line.attribute.pickMode === 'imprecise') {\n return true;\n }\n\n const { pickContext } = params ?? {};\n if (!pickContext) {\n return false;\n }\n\n // const lineAttribute = graphicService.themeService.getCurrentTheme().lineAttribute;\n pickContext.highPerformanceSave();\n const lineAttribute = getTheme(line).line;\n\n const data = this.transform(line, lineAttribute, pickContext);\n const { x, y, z, lastModelMatrix } = data;\n\n let pickPoint = point;\n if (pickContext.camera) {\n pickPoint = point.clone();\n const globalMatrix = line.parent.globalTransMatrix;\n pickPoint.x = globalMatrix.a * point.x + globalMatrix.c * point.y + globalMatrix.e;\n pickPoint.y = globalMatrix.b * point.x + globalMatrix.d * point.y + globalMatrix.f;\n }\n\n this.canvasRenderer.z = z;\n // 详细形状判断\n let picked = false;\n this.canvasRenderer.drawShape(\n line,\n pickContext,\n x,\n y,\n {} as any,\n null,\n context => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n picked = context.isPointInPath(pickPoint.x, pickPoint.y);\n return picked;\n },\n (\n context: IContext2d,\n lineAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n const lineWidth = lineAttribute.lineWidth || themeAttribute.lineWidth;\n const pickStrokeBuffer = lineAttribute.pickStrokeBuffer || themeAttribute.pickStrokeBuffer;\n pickContext.lineWidth = getScaledStroke(pickContext, lineWidth + pickStrokeBuffer, pickContext.dpr);\n picked = context.isPointInStroke(pickPoint.x, pickPoint.y);\n return picked;\n }\n );\n this.canvasRenderer.z = 0;\n\n if (pickContext.modelMatrix !== lastModelMatrix) {\n mat4Allocate.free(pickContext.modelMatrix);\n }\n pickContext.modelMatrix = lastModelMatrix;\n pickContext.highPerformanceRestore();\n return picked;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/picker/contributions/canvas-picker/line-picker.ts"],"names":[],"mappings":"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","file":"line-picker.js","sourcesContent":["import {\n inject,\n injectable,\n LineRender,\n getTheme,\n mat4Allocate,\n getScaledStroke,\n LINE_NUMBER_TYPE\n} from '@visactor/vrender-core';\nimport type { IPoint } from '@visactor/vutils';\nimport type {\n ILine,\n IContext2d,\n IMarkAttribute,\n IGraphicAttribute,\n IThemeAttribute,\n IGraphicPicker,\n IGraphicRender,\n IPickParams\n} from '@visactor/vrender-core';\nimport { BasePicker } from './base-picker';\n\n@injectable()\nexport class DefaultCanvasLinePicker extends BasePicker<ILine> implements IGraphicPicker {\n type: string = 'line';\n numberType: number = LINE_NUMBER_TYPE;\n\n constructor(@inject(LineRender) public readonly canvasRenderer: IGraphicRender) {\n super();\n }\n // numberType?: number = LINE_NUMBER_TYPE;\n\n contains(line: ILine, point: IPoint, params?: IPickParams): boolean {\n if (!line.AABBBounds.containsPoint(point)) {\n return false;\n }\n if (line.attribute.pickMode === 'imprecise') {\n return true;\n }\n\n const { pickContext } = params ?? {};\n if (!pickContext) {\n return false;\n }\n\n // const lineAttribute = graphicService.themeService.getCurrentTheme().lineAttribute;\n pickContext.highPerformanceSave();\n const lineAttribute = getTheme(line).line;\n\n const data = this.transform(line, lineAttribute, pickContext);\n const { x, y, z, lastModelMatrix } = data;\n\n let pickPoint = point;\n if (pickContext.camera) {\n pickPoint = point.clone();\n const globalMatrix = line.parent.globalTransMatrix;\n pickPoint.x = globalMatrix.a * point.x + globalMatrix.c * point.y + globalMatrix.e;\n pickPoint.y = globalMatrix.b * point.x + globalMatrix.d * point.y + globalMatrix.f;\n }\n\n this.canvasRenderer.z = z;\n // 详细形状判断\n let picked = false;\n this.canvasRenderer.drawShape(\n line,\n pickContext,\n x,\n y,\n {} as any,\n null,\n context => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n picked = context.isPointInPath(pickPoint.x, pickPoint.y);\n return picked;\n },\n (\n context: IContext2d,\n lineAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n const lineWidth = lineAttribute.lineWidth || themeAttribute.lineWidth;\n const pickStrokeBuffer = lineAttribute.pickStrokeBuffer || themeAttribute.pickStrokeBuffer;\n pickContext.lineWidth = getScaledStroke(pickContext, lineWidth + pickStrokeBuffer, pickContext.dpr);\n picked = context.isPointInStroke(pickPoint.x, pickPoint.y);\n return picked;\n }\n );\n this.canvasRenderer.z = 0;\n\n if (pickContext.modelMatrix !== lastModelMatrix) {\n mat4Allocate.free(pickContext.modelMatrix);\n }\n pickContext.modelMatrix = lastModelMatrix;\n pickContext.highPerformanceRestore();\n return picked;\n }\n}\n"]}
@@ -15,16 +15,13 @@ import { inject, injectable, getTheme, PathRender, mat4Allocate, getScaledStroke
15
15
  import { BasePicker } from "./base-picker";
16
16
 
17
17
  let DefaultCanvasPathPicker = class extends BasePicker {
18
- canvasRenderer;
19
- type="path";
20
- numberType=PATH_NUMBER_TYPE;
21
18
  constructor(canvasRenderer) {
22
- super(), this.canvasRenderer = canvasRenderer;
19
+ super(), this.canvasRenderer = canvasRenderer, this.type = "path", this.numberType = PATH_NUMBER_TYPE;
23
20
  }
24
21
  contains(path, point, params) {
25
22
  if (!path.AABBBounds.containsPoint(point)) return !1;
26
23
  if ("imprecise" === path.attribute.pickMode) return !0;
27
- const {pickContext: pickContext} = params ?? {};
24
+ const {pickContext: pickContext} = null != params ? params : {};
28
25
  if (!pickContext) return !1;
29
26
  const pathAttribute = getTheme(path).path;
30
27
  pickContext.highPerformanceSave();
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/picker/contributions/canvas-picker/path-picker.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EACL,MAAM,EACN,UAAU,EACV,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,eAAe,EACf,gBAAgB,EACjB,MAAM,wBAAwB,CAAC;AAYhC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAGpC,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,UAAiB;IAIZ;IAHhD,IAAI,GAAW,MAAM,CAAC;IACtB,UAAU,GAAW,gBAAgB,CAAC;IAEtC,YAAgD,cAA8B;QAC5E,KAAK,EAAE,CAAC;QADsC,mBAAc,GAAd,cAAc,CAAgB;IAE9E,CAAC;IAED,QAAQ,CAAC,IAAW,EAAE,KAAa,EAAE,MAAoB;QACvD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE;YACzC,OAAO,KAAK,CAAC;SACd;QACD,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,KAAK,WAAW,EAAE;YAC3C,OAAO,IAAI,CAAC;SACb;QAED,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QACrC,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO,KAAK,CAAC;SACd;QAGD,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;QAE1C,WAAW,CAAC,mBAAmB,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;QAC9D,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC;QAE1C,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,IAAI,WAAW,CAAC,MAAM,EAAE;YACtB,SAAS,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;YAC1B,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC;YACnD,SAAS,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC;YACnF,SAAS,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC;SACpF;QAED,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC;QAE1B,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,cAAc,CAAC,SAAS,CAC3B,IAAI,EACJ,WAAW,EACX,CAAC,EACD,CAAC,EACD,EAAS,EACT,IAAI,EACJ,CACE,OAAmB,EACnB,aAA0D,EAC1D,cAA+B,EAC/B,EAAE;YAEF,IAAI,MAAM,EAAE;gBACV,OAAO,IAAI,CAAC;aACb;YACD,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;YACzD,OAAO,MAAM,CAAC;QAChB,CAAC,EACD,CACE,OAAmB,EACnB,aAA0D,EAC1D,cAA+B,EAC/B,EAAE;YAEF,IAAI,MAAM,EAAE;gBACV,OAAO,IAAI,CAAC;aACb;YACD,MAAM,SAAS,GAAG,aAAa,CAAC,SAAS,IAAI,cAAc,CAAC,SAAS,CAAC;YACtE,MAAM,gBAAgB,GAAG,aAAa,CAAC,gBAAgB,IAAI,cAAc,CAAC,gBAAgB,CAAC;YAC3F,WAAW,CAAC,SAAS,GAAG,eAAe,CAAC,WAAW,EAAE,SAAS,GAAG,gBAAgB,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;YACpG,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;YAC3D,OAAO,MAAM,CAAC;QAChB,CAAC,CACF,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC;QAE1B,IAAI,WAAW,CAAC,WAAW,KAAK,eAAe,EAAE;YAC/C,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;SAC5C;QACD,WAAW,CAAC,WAAW,GAAG,eAAe,CAAC;QAE1C,WAAW,CAAC,sBAAsB,EAAE,CAAC;QAErC,OAAO,MAAM,CAAC;IAChB,CAAC;CACF,CAAA;AArFY,uBAAuB;IADnC,UAAU,EAAE;IAKE,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;;GAJpB,uBAAuB,CAqFnC;SArFY,uBAAuB","file":"path-picker.js","sourcesContent":["import {\n inject,\n injectable,\n getTheme,\n PathRender,\n mat4Allocate,\n getScaledStroke,\n PATH_NUMBER_TYPE\n} from '@visactor/vrender-core';\nimport type { IPoint } from '@visactor/vutils';\nimport type {\n IContext2d,\n IPath,\n IMarkAttribute,\n IGraphicAttribute,\n IThemeAttribute,\n IGraphicRender,\n IGraphicPicker,\n IPickParams\n} from '@visactor/vrender-core';\nimport { BasePicker } from './base-picker';\n\n@injectable()\nexport class DefaultCanvasPathPicker extends BasePicker<IPath> implements IGraphicPicker {\n type: string = 'path';\n numberType: number = PATH_NUMBER_TYPE;\n\n constructor(@inject(PathRender) public readonly canvasRenderer: IGraphicRender) {\n super();\n }\n\n contains(path: IPath, point: IPoint, params?: IPickParams): boolean {\n if (!path.AABBBounds.containsPoint(point)) {\n return false;\n }\n if (path.attribute.pickMode === 'imprecise') {\n return true;\n }\n\n const { pickContext } = params ?? {};\n if (!pickContext) {\n return false;\n }\n\n // const pathAttribute = graphicService.themeService.getCurrentTheme().pathAttribute;\n const pathAttribute = getTheme(path).path;\n\n pickContext.highPerformanceSave();\n const data = this.transform(path, pathAttribute, pickContext);\n const { x, y, z, lastModelMatrix } = data;\n\n let pickPoint = point;\n if (pickContext.camera) {\n pickPoint = point.clone();\n const globalMatrix = path.parent.globalTransMatrix;\n pickPoint.x = globalMatrix.a * point.x + globalMatrix.c * point.y + globalMatrix.e;\n pickPoint.y = globalMatrix.b * point.x + globalMatrix.d * point.y + globalMatrix.f;\n }\n\n this.canvasRenderer.z = z;\n // 详细形状判断\n let picked = false;\n this.canvasRenderer.drawShape(\n path,\n pickContext,\n x,\n y,\n {} as any,\n null,\n (\n context: IContext2d,\n pathAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n picked = context.isPointInPath(pickPoint.x, pickPoint.y);\n return picked;\n },\n (\n context: IContext2d,\n pathAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n const lineWidth = pathAttribute.lineWidth || themeAttribute.lineWidth;\n const pickStrokeBuffer = pathAttribute.pickStrokeBuffer || themeAttribute.pickStrokeBuffer;\n pickContext.lineWidth = getScaledStroke(pickContext, lineWidth + pickStrokeBuffer, pickContext.dpr);\n picked = context.isPointInStroke(pickPoint.x, pickPoint.y);\n return picked;\n }\n );\n this.canvasRenderer.z = 0;\n\n if (pickContext.modelMatrix !== lastModelMatrix) {\n mat4Allocate.free(pickContext.modelMatrix);\n }\n pickContext.modelMatrix = lastModelMatrix;\n\n pickContext.highPerformanceRestore();\n\n return picked;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/picker/contributions/canvas-picker/path-picker.ts"],"names":[],"mappings":"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","file":"path-picker.js","sourcesContent":["import {\n inject,\n injectable,\n getTheme,\n PathRender,\n mat4Allocate,\n getScaledStroke,\n PATH_NUMBER_TYPE\n} from '@visactor/vrender-core';\nimport type { IPoint } from '@visactor/vutils';\nimport type {\n IContext2d,\n IPath,\n IMarkAttribute,\n IGraphicAttribute,\n IThemeAttribute,\n IGraphicRender,\n IGraphicPicker,\n IPickParams\n} from '@visactor/vrender-core';\nimport { BasePicker } from './base-picker';\n\n@injectable()\nexport class DefaultCanvasPathPicker extends BasePicker<IPath> implements IGraphicPicker {\n type: string = 'path';\n numberType: number = PATH_NUMBER_TYPE;\n\n constructor(@inject(PathRender) public readonly canvasRenderer: IGraphicRender) {\n super();\n }\n\n contains(path: IPath, point: IPoint, params?: IPickParams): boolean {\n if (!path.AABBBounds.containsPoint(point)) {\n return false;\n }\n if (path.attribute.pickMode === 'imprecise') {\n return true;\n }\n\n const { pickContext } = params ?? {};\n if (!pickContext) {\n return false;\n }\n\n // const pathAttribute = graphicService.themeService.getCurrentTheme().pathAttribute;\n const pathAttribute = getTheme(path).path;\n\n pickContext.highPerformanceSave();\n const data = this.transform(path, pathAttribute, pickContext);\n const { x, y, z, lastModelMatrix } = data;\n\n let pickPoint = point;\n if (pickContext.camera) {\n pickPoint = point.clone();\n const globalMatrix = path.parent.globalTransMatrix;\n pickPoint.x = globalMatrix.a * point.x + globalMatrix.c * point.y + globalMatrix.e;\n pickPoint.y = globalMatrix.b * point.x + globalMatrix.d * point.y + globalMatrix.f;\n }\n\n this.canvasRenderer.z = z;\n // 详细形状判断\n let picked = false;\n this.canvasRenderer.drawShape(\n path,\n pickContext,\n x,\n y,\n {} as any,\n null,\n (\n context: IContext2d,\n pathAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n picked = context.isPointInPath(pickPoint.x, pickPoint.y);\n return picked;\n },\n (\n context: IContext2d,\n pathAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => {\n // 选中后面就不需要再走逻辑了\n if (picked) {\n return true;\n }\n const lineWidth = pathAttribute.lineWidth || themeAttribute.lineWidth;\n const pickStrokeBuffer = pathAttribute.pickStrokeBuffer || themeAttribute.pickStrokeBuffer;\n pickContext.lineWidth = getScaledStroke(pickContext, lineWidth + pickStrokeBuffer, pickContext.dpr);\n picked = context.isPointInStroke(pickPoint.x, pickPoint.y);\n return picked;\n }\n );\n this.canvasRenderer.z = 0;\n\n if (pickContext.modelMatrix !== lastModelMatrix) {\n mat4Allocate.free(pickContext.modelMatrix);\n }\n pickContext.modelMatrix = lastModelMatrix;\n\n pickContext.highPerformanceRestore();\n\n return picked;\n }\n}\n"]}
@@ -13,16 +13,13 @@ var __decorate = this && this.__decorate || function(decorators, target, key, de
13
13
  import { inject, injectable, getTheme, PolygonRender, POLYGON_NUMBER_TYPE, getScaledStroke } from "@visactor/vrender-core";
14
14
 
15
15
  let DefaultCanvasPolygonPicker = class {
16
- canvasRenderer;
17
- type="polygon";
18
- numberType=POLYGON_NUMBER_TYPE;
19
16
  constructor(canvasRenderer) {
20
- this.canvasRenderer = canvasRenderer;
17
+ this.canvasRenderer = canvasRenderer, this.type = "polygon", this.numberType = POLYGON_NUMBER_TYPE;
21
18
  }
22
19
  contains(polygon, point, params) {
23
20
  if (!polygon.AABBBounds.contains(point.x, point.y)) return !1;
24
21
  if ("imprecise" === polygon.attribute.pickMode) return !0;
25
- const {pickContext: pickContext} = params ?? {};
22
+ const {pickContext: pickContext} = null != params ? params : {};
26
23
  if (!pickContext) return !1;
27
24
  const polygonAttribute = getTheme(polygon).polygon;
28
25
  let {x: x = polygonAttribute.x, y: y = polygonAttribute.y} = polygon.attribute;