@visactor/vrender 0.9.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -0
- package/cjs/allocator/allocator-modules.d.ts +3 -0
- package/cjs/allocator/allocator-modules.js +22 -0
- package/cjs/allocator/allocator-modules.js.map +1 -0
- package/cjs/allocator/canvas-allocate.d.ts +18 -0
- package/cjs/allocator/canvas-allocate.js +62 -0
- package/cjs/allocator/canvas-allocate.js.map +1 -0
- package/cjs/allocator/graphic-allocate.d.ts +58 -0
- package/cjs/allocator/graphic-allocate.js +160 -0
- package/cjs/allocator/graphic-allocate.js.map +1 -0
- package/cjs/allocator/interface.d.ts +6 -0
- package/cjs/allocator/interface.js +6 -0
- package/cjs/allocator/interface.js.map +1 -0
- package/cjs/allocator/matrix-allocate.d.ts +25 -0
- package/cjs/allocator/matrix-allocate.js +84 -0
- package/cjs/allocator/matrix-allocate.js.map +1 -0
- package/cjs/allocator/point-allocate.d.ts +1 -0
- package/cjs/allocator/point-allocate.js +3 -0
- package/cjs/allocator/point-allocate.js.map +1 -0
- package/cjs/animate/Ticker/default-ticker.d.ts +101 -0
- package/cjs/animate/Ticker/default-ticker.js +244 -0
- package/cjs/animate/Ticker/default-ticker.js.map +1 -0
- package/cjs/animate/Ticker/index.d.ts +2 -0
- package/cjs/animate/Ticker/index.js +21 -0
- package/cjs/animate/Ticker/index.js.map +1 -0
- package/cjs/animate/Ticker/interface.d.ts +12 -0
- package/cjs/animate/Ticker/interface.js +6 -0
- package/cjs/animate/Ticker/interface.js.map +1 -0
- package/cjs/animate/animate.d.ts +146 -0
- package/cjs/animate/animate.js +392 -0
- package/cjs/animate/animate.js.map +1 -0
- package/cjs/animate/config.d.ts +3 -0
- package/cjs/animate/config.js +13 -0
- package/cjs/animate/config.js.map +1 -0
- package/cjs/animate/custom-animate.d.ts +229 -0
- package/cjs/animate/custom-animate.js +645 -0
- package/cjs/animate/custom-animate.js.map +1 -0
- package/cjs/animate/easing.d.ts +39 -0
- package/cjs/animate/easing.js +100 -0
- package/cjs/animate/easing.js.map +1 -0
- package/cjs/animate/index.d.ts +6 -0
- package/cjs/animate/index.js +23 -0
- package/cjs/animate/index.js.map +1 -0
- package/cjs/animate/morphing.d.ts +52 -0
- package/cjs/animate/morphing.js +291 -0
- package/cjs/animate/morphing.js.map +1 -0
- package/cjs/animate/timeline.d.ts +27 -0
- package/cjs/animate/timeline.js +46 -0
- package/cjs/animate/timeline.js.map +1 -0
- package/cjs/canvas/contributions/browser/canvas.d.ts +51 -0
- package/cjs/canvas/contributions/browser/canvas.js +138 -0
- package/cjs/canvas/contributions/browser/canvas.js.map +1 -0
- package/cjs/canvas/contributions/browser/conical-gradient.d.ts +13 -0
- package/cjs/canvas/contributions/browser/conical-gradient.js +123 -0
- package/cjs/canvas/contributions/browser/conical-gradient.js.map +1 -0
- package/cjs/canvas/contributions/browser/context.d.ts +171 -0
- package/cjs/canvas/contributions/browser/context.js +489 -0
- package/cjs/canvas/contributions/browser/context.js.map +1 -0
- package/cjs/canvas/contributions/browser/index.d.ts +3 -0
- package/cjs/canvas/contributions/browser/index.js +22 -0
- package/cjs/canvas/contributions/browser/index.js.map +1 -0
- package/cjs/canvas/contributions/browser/modules.d.ts +3 -0
- package/cjs/canvas/contributions/browser/modules.js +13 -0
- package/cjs/canvas/contributions/browser/modules.js.map +1 -0
- package/cjs/canvas/contributions/feishu/canvas.d.ts +48 -0
- package/cjs/canvas/contributions/feishu/canvas.js +102 -0
- package/cjs/canvas/contributions/feishu/canvas.js.map +1 -0
- package/cjs/canvas/contributions/feishu/context.d.ts +11 -0
- package/cjs/canvas/contributions/feishu/context.js +53 -0
- package/cjs/canvas/contributions/feishu/context.js.map +1 -0
- package/cjs/canvas/contributions/feishu/index.d.ts +2 -0
- package/cjs/canvas/contributions/feishu/index.js +21 -0
- package/cjs/canvas/contributions/feishu/index.js.map +1 -0
- package/cjs/canvas/contributions/feishu/modules.d.ts +3 -0
- package/cjs/canvas/contributions/feishu/modules.js +13 -0
- package/cjs/canvas/contributions/feishu/modules.js.map +1 -0
- package/cjs/canvas/contributions/lynx/canvas.d.ts +48 -0
- package/cjs/canvas/contributions/lynx/canvas.js +102 -0
- package/cjs/canvas/contributions/lynx/canvas.js.map +1 -0
- package/cjs/canvas/contributions/lynx/context.d.ts +10 -0
- package/cjs/canvas/contributions/lynx/context.js +34 -0
- package/cjs/canvas/contributions/lynx/context.js.map +1 -0
- package/cjs/canvas/contributions/lynx/index.d.ts +2 -0
- package/cjs/canvas/contributions/lynx/index.js +21 -0
- package/cjs/canvas/contributions/lynx/index.js.map +1 -0
- package/cjs/canvas/contributions/lynx/modules.d.ts +3 -0
- package/cjs/canvas/contributions/lynx/modules.js +13 -0
- package/cjs/canvas/contributions/lynx/modules.js.map +1 -0
- package/cjs/canvas/contributions/modules.d.ts +2 -0
- package/cjs/canvas/contributions/modules.js +21 -0
- package/cjs/canvas/contributions/modules.js.map +1 -0
- package/cjs/canvas/contributions/taro/canvas.d.ts +47 -0
- package/cjs/canvas/contributions/taro/canvas.js +102 -0
- package/cjs/canvas/contributions/taro/canvas.js.map +1 -0
- package/cjs/canvas/contributions/taro/context.d.ts +31 -0
- package/cjs/canvas/contributions/taro/context.js +65 -0
- package/cjs/canvas/contributions/taro/context.js.map +1 -0
- package/cjs/canvas/contributions/taro/index.d.ts +2 -0
- package/cjs/canvas/contributions/taro/index.js +21 -0
- package/cjs/canvas/contributions/taro/index.js.map +1 -0
- package/cjs/canvas/contributions/taro/modules.d.ts +3 -0
- package/cjs/canvas/contributions/taro/modules.js +13 -0
- package/cjs/canvas/contributions/taro/modules.js.map +1 -0
- package/cjs/canvas/contributions/tt/canvas.d.ts +48 -0
- package/cjs/canvas/contributions/tt/canvas.js +102 -0
- package/cjs/canvas/contributions/tt/canvas.js.map +1 -0
- package/cjs/canvas/contributions/tt/context.d.ts +9 -0
- package/cjs/canvas/contributions/tt/context.js +29 -0
- package/cjs/canvas/contributions/tt/context.js.map +1 -0
- package/cjs/canvas/contributions/tt/index.d.ts +2 -0
- package/cjs/canvas/contributions/tt/index.js +21 -0
- package/cjs/canvas/contributions/tt/index.js.map +1 -0
- package/cjs/canvas/contributions/tt/modules.d.ts +3 -0
- package/cjs/canvas/contributions/tt/modules.js +13 -0
- package/cjs/canvas/contributions/tt/modules.js.map +1 -0
- package/cjs/canvas/empty-context.d.ts +97 -0
- package/cjs/canvas/empty-context.js +209 -0
- package/cjs/canvas/empty-context.js.map +1 -0
- package/cjs/canvas/index.d.ts +6 -0
- package/cjs/canvas/index.js +34 -0
- package/cjs/canvas/index.js.map +1 -0
- package/cjs/canvas/interface.d.ts +9 -0
- package/cjs/canvas/interface.js +7 -0
- package/cjs/canvas/interface.js.map +1 -0
- package/cjs/canvas/util.d.ts +21 -0
- package/cjs/canvas/util.js +387 -0
- package/cjs/canvas/util.js.map +1 -0
- package/cjs/color-string/colorName.d.ts +151 -0
- package/cjs/color-string/colorName.js +155 -0
- package/cjs/color-string/colorName.js.map +1 -0
- package/cjs/color-string/index.d.ts +14 -0
- package/cjs/color-string/index.js +166 -0
- package/cjs/color-string/index.js.map +1 -0
- package/cjs/color-string/interpolate.d.ts +7 -0
- package/cjs/color-string/interpolate.js +92 -0
- package/cjs/color-string/interpolate.js.map +1 -0
- package/cjs/common/bezier.d.ts +8 -0
- package/cjs/common/bezier.js +45 -0
- package/cjs/common/bezier.js.map +1 -0
- package/cjs/common/bounds-context.d.ts +18 -0
- package/cjs/common/bounds-context.js +60 -0
- package/cjs/common/bounds-context.js.map +1 -0
- package/cjs/common/canvas-utils.d.ts +7 -0
- package/cjs/common/canvas-utils.js +43 -0
- package/cjs/common/canvas-utils.js.map +1 -0
- package/cjs/common/contribution-provider.d.ts +6 -0
- package/cjs/common/contribution-provider.js +22 -0
- package/cjs/common/contribution-provider.js.map +1 -0
- package/cjs/common/curve/basis.d.ts +18 -0
- package/cjs/common/curve/basis.js +68 -0
- package/cjs/common/curve/basis.js.map +1 -0
- package/cjs/common/curve/common.d.ts +3 -0
- package/cjs/common/curve/common.js +12 -0
- package/cjs/common/curve/common.js.map +1 -0
- package/cjs/common/curve/index.d.ts +12 -0
- package/cjs/common/curve/index.js +57 -0
- package/cjs/common/curve/index.js.map +1 -0
- package/cjs/common/curve/interface.d.ts +42 -0
- package/cjs/common/curve/interface.js +18 -0
- package/cjs/common/curve/interface.js.map +1 -0
- package/cjs/common/curve/linear-closed.d.ts +17 -0
- package/cjs/common/curve/linear-closed.js +60 -0
- package/cjs/common/curve/linear-closed.js.map +1 -0
- package/cjs/common/curve/linear.d.ts +17 -0
- package/cjs/common/curve/linear.js +59 -0
- package/cjs/common/curve/linear.js.map +1 -0
- package/cjs/common/curve/monotone.d.ts +26 -0
- package/cjs/common/curve/monotone.js +128 -0
- package/cjs/common/curve/monotone.js.map +1 -0
- package/cjs/common/curve/step.d.ts +18 -0
- package/cjs/common/curve/step.js +65 -0
- package/cjs/common/curve/step.js.map +1 -0
- package/cjs/common/enums.d.ts +52 -0
- package/cjs/common/enums.js +38 -0
- package/cjs/common/enums.js.map +1 -0
- package/cjs/common/generator.d.ts +4 -0
- package/cjs/common/generator.js +14 -0
- package/cjs/common/generator.js.map +1 -0
- package/cjs/common/index.d.ts +20 -0
- package/cjs/common/index.js +30 -0
- package/cjs/common/index.js.map +1 -0
- package/cjs/common/matrix.d.ts +1 -0
- package/cjs/common/matrix.js +1 -0
- package/cjs/common/matrix.js.map +1 -0
- package/cjs/common/morphing-utils.d.ts +18 -0
- package/cjs/common/morphing-utils.js +297 -0
- package/cjs/common/morphing-utils.js.map +1 -0
- package/cjs/common/path-svg.d.ts +12 -0
- package/cjs/common/path-svg.js +64 -0
- package/cjs/common/path-svg.js.map +1 -0
- package/cjs/common/path.d.ts +160 -0
- package/cjs/common/path.js +552 -0
- package/cjs/common/path.js.map +1 -0
- package/cjs/common/polygon.d.ts +4 -0
- package/cjs/common/polygon.js +42 -0
- package/cjs/common/polygon.js.map +1 -0
- package/cjs/common/render-area.d.ts +8 -0
- package/cjs/common/render-area.js +75 -0
- package/cjs/common/render-area.js.map +1 -0
- package/cjs/common/render-command-list.d.ts +2 -0
- package/cjs/common/render-command-list.js +17 -0
- package/cjs/common/render-command-list.js.map +1 -0
- package/cjs/common/render-curve.d.ts +15 -0
- package/cjs/common/render-curve.js +71 -0
- package/cjs/common/render-curve.js.map +1 -0
- package/cjs/common/seg-context.d.ts +40 -0
- package/cjs/common/seg-context.js +101 -0
- package/cjs/common/seg-context.js.map +1 -0
- package/cjs/common/shape/arc.d.ts +2 -0
- package/cjs/common/shape/arc.js +35 -0
- package/cjs/common/shape/arc.js.map +1 -0
- package/cjs/common/shape/rect.d.ts +2 -0
- package/cjs/common/shape/rect.js +54 -0
- package/cjs/common/shape/rect.js.map +1 -0
- package/cjs/common/sort.d.ts +4 -0
- package/cjs/common/sort.js +101 -0
- package/cjs/common/sort.js.map +1 -0
- package/cjs/common/split-path.d.ts +44 -0
- package/cjs/common/split-path.js +272 -0
- package/cjs/common/split-path.js.map +1 -0
- package/cjs/common/store.d.ts +2 -0
- package/cjs/common/store.js +2 -0
- package/cjs/common/store.js.map +1 -0
- package/cjs/common/text.d.ts +13 -0
- package/cjs/common/text.js +25 -0
- package/cjs/common/text.js.map +1 -0
- package/cjs/common/utils.d.ts +27 -0
- package/cjs/common/utils.js +125 -0
- package/cjs/common/utils.js.map +1 -0
- package/cjs/core/application.d.ts +7 -0
- package/cjs/core/application.js +6 -0
- package/cjs/core/application.js.map +1 -0
- package/cjs/core/camera.d.ts +21 -0
- package/cjs/core/camera.js +125 -0
- package/cjs/core/camera.js.map +1 -0
- package/cjs/core/contributions/env/base-contribution.d.ts +46 -0
- package/cjs/core/contributions/env/base-contribution.js +57 -0
- package/cjs/core/contributions/env/base-contribution.js.map +1 -0
- package/cjs/core/contributions/env/browser-contribution.d.ts +31 -0
- package/cjs/core/contributions/env/browser-contribution.js +116 -0
- package/cjs/core/contributions/env/browser-contribution.js.map +1 -0
- package/cjs/core/contributions/env/feishu-contribution.d.ts +51 -0
- package/cjs/core/contributions/env/feishu-contribution.js +109 -0
- package/cjs/core/contributions/env/feishu-contribution.js.map +1 -0
- package/cjs/core/contributions/env/lynx-contribution.d.ts +50 -0
- package/cjs/core/contributions/env/lynx-contribution.js +104 -0
- package/cjs/core/contributions/env/lynx-contribution.js.map +1 -0
- package/cjs/core/contributions/env/modules.d.ts +3 -0
- package/cjs/core/contributions/env/modules.js +17 -0
- package/cjs/core/contributions/env/modules.js.map +1 -0
- package/cjs/core/contributions/env/taro-contribution.d.ts +84 -0
- package/cjs/core/contributions/env/taro-contribution.js +136 -0
- package/cjs/core/contributions/env/taro-contribution.js.map +1 -0
- package/cjs/core/contributions/index.d.ts +3 -0
- package/cjs/core/contributions/index.js +31 -0
- package/cjs/core/contributions/index.js.map +1 -0
- package/cjs/core/contributions/interface.d.ts +3 -0
- package/cjs/core/contributions/interface.js +6 -0
- package/cjs/core/contributions/interface.js.map +1 -0
- package/cjs/core/contributions/layerHandler/canvas2d-contribution.d.ts +21 -0
- package/cjs/core/contributions/layerHandler/canvas2d-contribution.js +84 -0
- package/cjs/core/contributions/layerHandler/canvas2d-contribution.js.map +1 -0
- package/cjs/core/contributions/layerHandler/modules.d.ts +3 -0
- package/cjs/core/contributions/layerHandler/modules.js +13 -0
- package/cjs/core/contributions/layerHandler/modules.js.map +1 -0
- package/cjs/core/contributions/layerHandler/offscreen2d-contribution.d.ts +20 -0
- package/cjs/core/contributions/layerHandler/offscreen2d-contribution.js +75 -0
- package/cjs/core/contributions/layerHandler/offscreen2d-contribution.js.map +1 -0
- package/cjs/core/contributions/modules.d.ts +2 -0
- package/cjs/core/contributions/modules.js +21 -0
- package/cjs/core/contributions/modules.js.map +1 -0
- package/cjs/core/contributions/textMeasure/AtextMeasure.d.ts +27 -0
- package/cjs/core/contributions/textMeasure/AtextMeasure.js +116 -0
- package/cjs/core/contributions/textMeasure/AtextMeasure.js.map +1 -0
- package/cjs/core/contributions/textMeasure/ITextMeasure.d.ts +25 -0
- package/cjs/core/contributions/textMeasure/ITextMeasure.js +6 -0
- package/cjs/core/contributions/textMeasure/ITextMeasure.js.map +1 -0
- package/cjs/core/contributions/textMeasure/layout.d.ts +39 -0
- package/cjs/core/contributions/textMeasure/layout.js +90 -0
- package/cjs/core/contributions/textMeasure/layout.js.map +1 -0
- package/cjs/core/contributions/textMeasure/modules.d.ts +3 -0
- package/cjs/core/contributions/textMeasure/modules.js +14 -0
- package/cjs/core/contributions/textMeasure/modules.js.map +1 -0
- package/cjs/core/contributions/textMeasure/textMeasure-contribution.d.ts +4 -0
- package/cjs/core/contributions/textMeasure/textMeasure-contribution.js +21 -0
- package/cjs/core/contributions/textMeasure/textMeasure-contribution.js.map +1 -0
- package/cjs/core/contributions/window/base-contribution.d.ts +43 -0
- package/cjs/core/contributions/window/base-contribution.js +31 -0
- package/cjs/core/contributions/window/base-contribution.js.map +1 -0
- package/cjs/core/contributions/window/browser-contribution.d.ts +38 -0
- package/cjs/core/contributions/window/browser-contribution.js +145 -0
- package/cjs/core/contributions/window/browser-contribution.js.map +1 -0
- package/cjs/core/contributions/window/feishu-contribution.d.ts +47 -0
- package/cjs/core/contributions/window/feishu-contribution.js +157 -0
- package/cjs/core/contributions/window/feishu-contribution.js.map +1 -0
- package/cjs/core/contributions/window/lynx-contribution.d.ts +47 -0
- package/cjs/core/contributions/window/lynx-contribution.js +157 -0
- package/cjs/core/contributions/window/lynx-contribution.js.map +1 -0
- package/cjs/core/contributions/window/modules.d.ts +3 -0
- package/cjs/core/contributions/window/modules.js +15 -0
- package/cjs/core/contributions/window/modules.js.map +1 -0
- package/cjs/core/contributions/window/native-contribution.d.ts +1 -0
- package/cjs/core/contributions/window/native-contribution.js +3 -0
- package/cjs/core/contributions/window/native-contribution.js.map +1 -0
- package/cjs/core/contributions/window/node-contribution.d.ts +1 -0
- package/cjs/core/contributions/window/node-contribution.js +3 -0
- package/cjs/core/contributions/window/node-contribution.js.map +1 -0
- package/cjs/core/contributions/window/taro-contribution.d.ts +47 -0
- package/cjs/core/contributions/window/taro-contribution.js +164 -0
- package/cjs/core/contributions/window/taro-contribution.js.map +1 -0
- package/cjs/core/core-modules.d.ts +3 -0
- package/cjs/core/core-modules.js +16 -0
- package/cjs/core/core-modules.js.map +1 -0
- package/cjs/core/global.d.ts +58 -0
- package/cjs/core/global.js +122 -0
- package/cjs/core/global.js.map +1 -0
- package/cjs/core/graphic-utils.d.ts +60 -0
- package/cjs/core/graphic-utils.js +127 -0
- package/cjs/core/graphic-utils.js.map +1 -0
- package/cjs/core/index.d.ts +7 -0
- package/cjs/core/index.js +24 -0
- package/cjs/core/index.js.map +1 -0
- package/cjs/core/layer-service.d.ts +19 -0
- package/cjs/core/layer-service.js +52 -0
- package/cjs/core/layer-service.js.map +1 -0
- package/cjs/core/layer.d.ts +88 -0
- package/cjs/core/layer.js +131 -0
- package/cjs/core/layer.js.map +1 -0
- package/cjs/core/light.d.ts +10 -0
- package/cjs/core/light.js +28 -0
- package/cjs/core/light.js.map +1 -0
- package/cjs/core/stage.d.ts +112 -0
- package/cjs/core/stage.js +368 -0
- package/cjs/core/stage.js.map +1 -0
- package/cjs/core/window.d.ts +113 -0
- package/cjs/core/window.js +116 -0
- package/cjs/core/window.js.map +1 -0
- package/cjs/create.d.ts +3 -0
- package/cjs/create.js +13 -0
- package/cjs/create.js.map +1 -0
- package/cjs/event/constant.d.ts +1 -0
- package/cjs/event/constant.js +6 -0
- package/cjs/event/constant.js.map +1 -0
- package/cjs/event/event-manager.d.ts +60 -0
- package/cjs/event/event-manager.js +275 -0
- package/cjs/event/event-manager.js.map +1 -0
- package/cjs/event/event-system.d.ts +38 -0
- package/cjs/event/event-system.js +202 -0
- package/cjs/event/event-system.js.map +1 -0
- package/cjs/event/event-target.d.ts +3 -0
- package/cjs/event/event-target.js +22 -0
- package/cjs/event/event-target.js.map +1 -0
- package/cjs/event/extension/drag.d.ts +9 -0
- package/cjs/event/extension/drag.js +54 -0
- package/cjs/event/extension/drag.js.map +1 -0
- package/cjs/event/extension/gesture.d.ts +61 -0
- package/cjs/event/extension/gesture.js +181 -0
- package/cjs/event/extension/gesture.js.map +1 -0
- package/cjs/event/extension/index.d.ts +3 -0
- package/cjs/event/extension/index.js +24 -0
- package/cjs/event/extension/index.js.map +1 -0
- package/cjs/event/federated-event/base-event.d.ts +53 -0
- package/cjs/event/federated-event/base-event.js +69 -0
- package/cjs/event/federated-event/base-event.js.map +1 -0
- package/cjs/event/federated-event/custom-event.d.ts +4 -0
- package/cjs/event/federated-event/custom-event.js +16 -0
- package/cjs/event/federated-event/custom-event.js.map +1 -0
- package/cjs/event/federated-event/index.d.ts +5 -0
- package/cjs/event/federated-event/index.js +23 -0
- package/cjs/event/federated-event/index.js.map +1 -0
- package/cjs/event/federated-event/mouse-event.d.ts +29 -0
- package/cjs/event/federated-event/mouse-event.js +53 -0
- package/cjs/event/federated-event/mouse-event.js.map +1 -0
- package/cjs/event/federated-event/pointer-event.d.ts +17 -0
- package/cjs/event/federated-event/pointer-event.js +32 -0
- package/cjs/event/federated-event/pointer-event.js.map +1 -0
- package/cjs/event/federated-event/wheel-event.d.ts +14 -0
- package/cjs/event/federated-event/wheel-event.js +27 -0
- package/cjs/event/federated-event/wheel-event.js.map +1 -0
- package/cjs/event/index.d.ts +6 -0
- package/cjs/event/index.js +23 -0
- package/cjs/event/index.js.map +1 -0
- package/cjs/event/interface.d.ts +24 -0
- package/cjs/event/interface.js +6 -0
- package/cjs/event/interface.js.map +1 -0
- package/cjs/event/type.d.ts +24 -0
- package/cjs/event/type.js +6 -0
- package/cjs/event/type.js.map +1 -0
- package/cjs/event/util.d.ts +1 -0
- package/cjs/event/util.js +6 -0
- package/cjs/event/util.js.map +1 -0
- package/cjs/export.d.ts +1 -0
- package/cjs/export.js +1 -0
- package/cjs/export.js.map +1 -0
- package/cjs/graphic/arc.d.ts +32 -0
- package/cjs/graphic/arc.js +138 -0
- package/cjs/graphic/arc.js.map +1 -0
- package/cjs/graphic/arc3d.d.ts +10 -0
- package/cjs/graphic/arc3d.js +27 -0
- package/cjs/graphic/arc3d.js.map +1 -0
- package/cjs/graphic/area.d.ts +20 -0
- package/cjs/graphic/area.js +83 -0
- package/cjs/graphic/area.js.map +1 -0
- package/cjs/graphic/bounds.d.ts +4 -0
- package/cjs/graphic/bounds.js +16 -0
- package/cjs/graphic/bounds.js.map +1 -0
- package/cjs/graphic/builtin-symbol/arrow.d.ts +13 -0
- package/cjs/graphic/builtin-symbol/arrow.js +36 -0
- package/cjs/graphic/builtin-symbol/arrow.js.map +1 -0
- package/cjs/graphic/builtin-symbol/arrow2-left.d.ts +13 -0
- package/cjs/graphic/builtin-symbol/arrow2-left.js +30 -0
- package/cjs/graphic/builtin-symbol/arrow2-left.js.map +1 -0
- package/cjs/graphic/builtin-symbol/arrow2-right.d.ts +13 -0
- package/cjs/graphic/builtin-symbol/arrow2-right.js +30 -0
- package/cjs/graphic/builtin-symbol/arrow2-right.js.map +1 -0
- package/cjs/graphic/builtin-symbol/circle.d.ts +13 -0
- package/cjs/graphic/builtin-symbol/circle.js +33 -0
- package/cjs/graphic/builtin-symbol/circle.js.map +1 -0
- package/cjs/graphic/builtin-symbol/cross.d.ts +14 -0
- package/cjs/graphic/builtin-symbol/cross.js +43 -0
- package/cjs/graphic/builtin-symbol/cross.js.map +1 -0
- package/cjs/graphic/builtin-symbol/diamond.d.ts +14 -0
- package/cjs/graphic/builtin-symbol/diamond.js +32 -0
- package/cjs/graphic/builtin-symbol/diamond.js.map +1 -0
- package/cjs/graphic/builtin-symbol/index.d.ts +5 -0
- package/cjs/graphic/builtin-symbol/index.js +32 -0
- package/cjs/graphic/builtin-symbol/index.js.map +1 -0
- package/cjs/graphic/builtin-symbol/interface.d.ts +10 -0
- package/cjs/graphic/builtin-symbol/interface.js +6 -0
- package/cjs/graphic/builtin-symbol/interface.js.map +1 -0
- package/cjs/graphic/builtin-symbol/rect.d.ts +13 -0
- package/cjs/graphic/builtin-symbol/rect.js +33 -0
- package/cjs/graphic/builtin-symbol/rect.js.map +1 -0
- package/cjs/graphic/builtin-symbol/square.d.ts +13 -0
- package/cjs/graphic/builtin-symbol/square.js +29 -0
- package/cjs/graphic/builtin-symbol/square.js.map +1 -0
- package/cjs/graphic/builtin-symbol/star.d.ts +13 -0
- package/cjs/graphic/builtin-symbol/star.js +38 -0
- package/cjs/graphic/builtin-symbol/star.js.map +1 -0
- package/cjs/graphic/builtin-symbol/stroke.d.ts +13 -0
- package/cjs/graphic/builtin-symbol/stroke.js +28 -0
- package/cjs/graphic/builtin-symbol/stroke.js.map +1 -0
- package/cjs/graphic/builtin-symbol/thin-triangle.d.ts +14 -0
- package/cjs/graphic/builtin-symbol/thin-triangle.js +35 -0
- package/cjs/graphic/builtin-symbol/thin-triangle.js.map +1 -0
- package/cjs/graphic/builtin-symbol/triangle-down.d.ts +14 -0
- package/cjs/graphic/builtin-symbol/triangle-down.js +35 -0
- package/cjs/graphic/builtin-symbol/triangle-down.js.map +1 -0
- package/cjs/graphic/builtin-symbol/triangle-left.d.ts +14 -0
- package/cjs/graphic/builtin-symbol/triangle-left.js +35 -0
- package/cjs/graphic/builtin-symbol/triangle-left.js.map +1 -0
- package/cjs/graphic/builtin-symbol/triangle-right.d.ts +14 -0
- package/cjs/graphic/builtin-symbol/triangle-right.js +35 -0
- package/cjs/graphic/builtin-symbol/triangle-right.js.map +1 -0
- package/cjs/graphic/builtin-symbol/triangle-up.d.ts +14 -0
- package/cjs/graphic/builtin-symbol/triangle-up.js +35 -0
- package/cjs/graphic/builtin-symbol/triangle-up.js.map +1 -0
- package/cjs/graphic/builtin-symbol/triangle.d.ts +9 -0
- package/cjs/graphic/builtin-symbol/triangle.js +18 -0
- package/cjs/graphic/builtin-symbol/triangle.js.map +1 -0
- package/cjs/graphic/builtin-symbol/utils.d.ts +12 -0
- package/cjs/graphic/builtin-symbol/utils.js +28 -0
- package/cjs/graphic/builtin-symbol/utils.js.map +1 -0
- package/cjs/graphic/builtin-symbol/wedge.d.ts +13 -0
- package/cjs/graphic/builtin-symbol/wedge.js +30 -0
- package/cjs/graphic/builtin-symbol/wedge.js.map +1 -0
- package/cjs/graphic/builtin-symbol/wye.d.ts +13 -0
- package/cjs/graphic/builtin-symbol/wye.js +39 -0
- package/cjs/graphic/builtin-symbol/wye.js.map +1 -0
- package/cjs/graphic/circle.d.ts +18 -0
- package/cjs/graphic/circle.js +65 -0
- package/cjs/graphic/circle.js.map +1 -0
- package/cjs/graphic/config.d.ts +24 -0
- package/cjs/graphic/config.js +207 -0
- package/cjs/graphic/config.js.map +1 -0
- package/cjs/graphic/glyph.d.ts +40 -0
- package/cjs/graphic/glyph.js +122 -0
- package/cjs/graphic/glyph.js.map +1 -0
- package/cjs/graphic/graphic-creator.d.ts +36 -0
- package/cjs/graphic/graphic-creator.js +104 -0
- package/cjs/graphic/graphic-creator.js.map +1 -0
- package/cjs/graphic/graphic-service/arc-contribution.d.ts +9 -0
- package/cjs/graphic/graphic-service/arc-contribution.js +21 -0
- package/cjs/graphic/graphic-service/arc-contribution.js.map +1 -0
- package/cjs/graphic/graphic-service/area-contribution.d.ts +6 -0
- package/cjs/graphic/graphic-service/area-contribution.js +6 -0
- package/cjs/graphic/graphic-service/area-contribution.js.map +1 -0
- package/cjs/graphic/graphic-service/circle-contribution.d.ts +9 -0
- package/cjs/graphic/graphic-service/circle-contribution.js +21 -0
- package/cjs/graphic/graphic-service/circle-contribution.js.map +1 -0
- package/cjs/graphic/graphic-service/common-contribution.d.ts +5 -0
- package/cjs/graphic/graphic-service/common-contribution.js +28 -0
- package/cjs/graphic/graphic-service/common-contribution.js.map +1 -0
- package/cjs/graphic/graphic-service/default-theme.d.ts +1 -0
- package/cjs/graphic/graphic-service/default-theme.js +3 -0
- package/cjs/graphic/graphic-service/default-theme.js.map +1 -0
- package/cjs/graphic/graphic-service/graphic-module.d.ts +3 -0
- package/cjs/graphic/graphic-service/graphic-module.js +27 -0
- package/cjs/graphic/graphic-service/graphic-module.js.map +1 -0
- package/cjs/graphic/graphic-service/graphic-service.d.ts +140 -0
- package/cjs/graphic/graphic-service/graphic-service.js +499 -0
- package/cjs/graphic/graphic-service/graphic-service.js.map +1 -0
- package/cjs/graphic/graphic-service/path-contribution.d.ts +9 -0
- package/cjs/graphic/graphic-service/path-contribution.js +21 -0
- package/cjs/graphic/graphic-service/path-contribution.js.map +1 -0
- package/cjs/graphic/graphic-service/rect-contribution.d.ts +9 -0
- package/cjs/graphic/graphic-service/rect-contribution.js +21 -0
- package/cjs/graphic/graphic-service/rect-contribution.js.map +1 -0
- package/cjs/graphic/graphic-service/symbol-contribution.d.ts +10 -0
- package/cjs/graphic/graphic-service/symbol-contribution.js +30 -0
- package/cjs/graphic/graphic-service/symbol-contribution.js.map +1 -0
- package/cjs/graphic/graphic-service/theme-service.d.ts +1 -0
- package/cjs/graphic/graphic-service/theme-service.js +3 -0
- package/cjs/graphic/graphic-service/theme-service.js.map +1 -0
- package/cjs/graphic/graphic.d.ts +140 -0
- package/cjs/graphic/graphic.js +553 -0
- package/cjs/graphic/graphic.js.map +1 -0
- package/cjs/graphic/group.d.ts +50 -0
- package/cjs/graphic/group.js +173 -0
- package/cjs/graphic/group.js.map +1 -0
- package/cjs/graphic/image.d.ts +28 -0
- package/cjs/graphic/image.js +96 -0
- package/cjs/graphic/image.js.map +1 -0
- package/cjs/graphic/index.d.ts +26 -0
- package/cjs/graphic/index.js +33 -0
- package/cjs/graphic/index.js.map +1 -0
- package/cjs/graphic/line.d.ts +19 -0
- package/cjs/graphic/line.js +75 -0
- package/cjs/graphic/line.js.map +1 -0
- package/cjs/graphic/node-tree.d.ts +75 -0
- package/cjs/graphic/node-tree.js +353 -0
- package/cjs/graphic/node-tree.js.map +1 -0
- package/cjs/graphic/path.d.ts +22 -0
- package/cjs/graphic/path.js +76 -0
- package/cjs/graphic/path.js.map +1 -0
- package/cjs/graphic/polygon.d.ts +20 -0
- package/cjs/graphic/polygon.js +67 -0
- package/cjs/graphic/polygon.js.map +1 -0
- package/cjs/graphic/pyramid3d.d.ts +13 -0
- package/cjs/graphic/pyramid3d.js +91 -0
- package/cjs/graphic/pyramid3d.js.map +1 -0
- package/cjs/graphic/rect.d.ts +18 -0
- package/cjs/graphic/rect.js +62 -0
- package/cjs/graphic/rect.js.map +1 -0
- package/cjs/graphic/rect3d.d.ts +9 -0
- package/cjs/graphic/rect3d.js +52 -0
- package/cjs/graphic/rect3d.js.map +1 -0
- package/cjs/graphic/richtext/frame.d.ts +43 -0
- package/cjs/graphic/richtext/frame.js +150 -0
- package/cjs/graphic/richtext/frame.js.map +1 -0
- package/cjs/graphic/richtext/icon.d.ts +24 -0
- package/cjs/graphic/richtext/icon.js +43 -0
- package/cjs/graphic/richtext/icon.js.map +1 -0
- package/cjs/graphic/richtext/line.d.ts +27 -0
- package/cjs/graphic/richtext/line.js +105 -0
- package/cjs/graphic/richtext/line.js.map +1 -0
- package/cjs/graphic/richtext/paragraph.d.ts +27 -0
- package/cjs/graphic/richtext/paragraph.js +78 -0
- package/cjs/graphic/richtext/paragraph.js.map +1 -0
- package/cjs/graphic/richtext/utils.d.ts +44 -0
- package/cjs/graphic/richtext/utils.js +201 -0
- package/cjs/graphic/richtext/utils.js.map +1 -0
- package/cjs/graphic/richtext/wrapper.d.ts +25 -0
- package/cjs/graphic/richtext/wrapper.js +57 -0
- package/cjs/graphic/richtext/wrapper.js.map +1 -0
- package/cjs/graphic/richtext.d.ts +42 -0
- package/cjs/graphic/richtext.js +181 -0
- package/cjs/graphic/richtext.js.map +1 -0
- package/cjs/graphic/shadow-root.d.ts +13 -0
- package/cjs/graphic/shadow-root.js +44 -0
- package/cjs/graphic/shadow-root.js.map +1 -0
- package/cjs/graphic/symbol.d.ts +23 -0
- package/cjs/graphic/symbol.js +80 -0
- package/cjs/graphic/symbol.js.map +1 -0
- package/cjs/graphic/text.d.ts +27 -0
- package/cjs/graphic/text.js +135 -0
- package/cjs/graphic/text.js.map +1 -0
- package/cjs/graphic/theme.d.ts +20 -0
- package/cjs/graphic/theme.js +124 -0
- package/cjs/graphic/theme.js.map +1 -0
- package/cjs/graphic/tools.d.ts +5 -0
- package/cjs/graphic/tools.js +70 -0
- package/cjs/graphic/tools.js.map +1 -0
- package/cjs/graphic/wrap-text.d.ts +9 -0
- package/cjs/graphic/wrap-text.js +98 -0
- package/cjs/graphic/wrap-text.js.map +1 -0
- package/cjs/index.d.ts +18 -0
- package/cjs/index.js +36 -0
- package/cjs/index.js.map +1 -0
- package/cjs/interface/animate.d.ts +154 -0
- package/cjs/interface/animate.js +6 -0
- package/cjs/interface/animate.js.map +1 -0
- package/cjs/interface/camera.d.ts +24 -0
- package/cjs/interface/camera.js +6 -0
- package/cjs/interface/camera.js.map +1 -0
- package/cjs/interface/canvas.d.ts +55 -0
- package/cjs/interface/canvas.js +6 -0
- package/cjs/interface/canvas.js.map +1 -0
- package/cjs/interface/color.d.ts +37 -0
- package/cjs/interface/color.js +6 -0
- package/cjs/interface/color.js.map +1 -0
- package/cjs/interface/common.d.ts +25 -0
- package/cjs/interface/common.js +6 -0
- package/cjs/interface/common.js.map +1 -0
- package/cjs/interface/context.d.ts +195 -0
- package/cjs/interface/context.js +6 -0
- package/cjs/interface/context.js.map +1 -0
- package/cjs/interface/contribution.d.ts +4 -0
- package/cjs/interface/contribution.js +6 -0
- package/cjs/interface/contribution.js.map +1 -0
- package/cjs/interface/creator.d.ts +4 -0
- package/cjs/interface/creator.js +6 -0
- package/cjs/interface/creator.js.map +1 -0
- package/cjs/interface/global.d.ts +124 -0
- package/cjs/interface/global.js +7 -0
- package/cjs/interface/global.js.map +1 -0
- package/cjs/interface/graphic/arc.d.ts +35 -0
- package/cjs/interface/graphic/arc.js +6 -0
- package/cjs/interface/graphic/arc.js.map +1 -0
- package/cjs/interface/graphic/arc3d.d.ts +21 -0
- package/cjs/interface/graphic/arc3d.js +6 -0
- package/cjs/interface/graphic/arc3d.js.map +1 -0
- package/cjs/interface/graphic/area.d.ts +23 -0
- package/cjs/interface/graphic/area.js +6 -0
- package/cjs/interface/graphic/area.js.map +1 -0
- package/cjs/interface/graphic/bounds.d.ts +37 -0
- package/cjs/interface/graphic/bounds.js +10 -0
- package/cjs/interface/graphic/bounds.js.map +1 -0
- package/cjs/interface/graphic/circle.d.ts +8 -0
- package/cjs/interface/graphic/circle.js +6 -0
- package/cjs/interface/graphic/circle.js.map +1 -0
- package/cjs/interface/graphic/creator.d.ts +32 -0
- package/cjs/interface/graphic/creator.js +6 -0
- package/cjs/interface/graphic/creator.js.map +1 -0
- package/cjs/interface/graphic/dynamic-path.d.ts +1 -0
- package/cjs/interface/graphic/dynamic-path.js +3 -0
- package/cjs/interface/graphic/dynamic-path.js.map +1 -0
- package/cjs/interface/graphic/ellipse.d.ts +8 -0
- package/cjs/interface/graphic/ellipse.js +6 -0
- package/cjs/interface/graphic/ellipse.js.map +1 -0
- package/cjs/interface/graphic/face3d.d.ts +11 -0
- package/cjs/interface/graphic/face3d.js +6 -0
- package/cjs/interface/graphic/face3d.js.map +1 -0
- package/cjs/interface/graphic/glyph.d.ts +24 -0
- package/cjs/interface/graphic/glyph.js +6 -0
- package/cjs/interface/graphic/glyph.js.map +1 -0
- package/cjs/interface/graphic/group.d.ts +23 -0
- package/cjs/interface/graphic/group.js +6 -0
- package/cjs/interface/graphic/group.js.map +1 -0
- package/cjs/interface/graphic/image.d.ts +14 -0
- package/cjs/interface/graphic/image.js +6 -0
- package/cjs/interface/graphic/image.js.map +1 -0
- package/cjs/interface/graphic/index.d.ts +2 -0
- package/cjs/interface/graphic/index.js +21 -0
- package/cjs/interface/graphic/index.js.map +1 -0
- package/cjs/interface/graphic/isogon.d.ts +7 -0
- package/cjs/interface/graphic/isogon.js +6 -0
- package/cjs/interface/graphic/isogon.js.map +1 -0
- package/cjs/interface/graphic/line.d.ts +22 -0
- package/cjs/interface/graphic/line.js +6 -0
- package/cjs/interface/graphic/line.js.map +1 -0
- package/cjs/interface/graphic/path.d.ts +15 -0
- package/cjs/interface/graphic/path.js +6 -0
- package/cjs/interface/graphic/path.js.map +1 -0
- package/cjs/interface/graphic/polygon.d.ts +8 -0
- package/cjs/interface/graphic/polygon.js +6 -0
- package/cjs/interface/graphic/polygon.js.map +1 -0
- package/cjs/interface/graphic/polyline.d.ts +3 -0
- package/cjs/interface/graphic/polyline.js +6 -0
- package/cjs/interface/graphic/polyline.js.map +1 -0
- package/cjs/interface/graphic/pyramid3d.d.ts +7 -0
- package/cjs/interface/graphic/pyramid3d.js +6 -0
- package/cjs/interface/graphic/pyramid3d.js.map +1 -0
- package/cjs/interface/graphic/rect.d.ts +11 -0
- package/cjs/interface/graphic/rect.js +6 -0
- package/cjs/interface/graphic/rect.js.map +1 -0
- package/cjs/interface/graphic/rect3d.d.ts +9 -0
- package/cjs/interface/graphic/rect3d.js +6 -0
- package/cjs/interface/graphic/rect3d.js.map +1 -0
- package/cjs/interface/graphic/richText.d.ts +99 -0
- package/cjs/interface/graphic/richText.js +6 -0
- package/cjs/interface/graphic/richText.js.map +1 -0
- package/cjs/interface/graphic/shadow-root.d.ts +5 -0
- package/cjs/interface/graphic/shadow-root.js +6 -0
- package/cjs/interface/graphic/shadow-root.js.map +1 -0
- package/cjs/interface/graphic/svg.d.ts +7 -0
- package/cjs/interface/graphic/svg.js +6 -0
- package/cjs/interface/graphic/svg.js.map +1 -0
- package/cjs/interface/graphic/symbol.d.ts +11 -0
- package/cjs/interface/graphic/symbol.js +6 -0
- package/cjs/interface/graphic/symbol.js.map +1 -0
- package/cjs/interface/graphic/text.d.ts +40 -0
- package/cjs/interface/graphic/text.js +6 -0
- package/cjs/interface/graphic/text.js.map +1 -0
- package/cjs/interface/graphic/theme.d.ts +56 -0
- package/cjs/interface/graphic/theme.js +6 -0
- package/cjs/interface/graphic/theme.js.map +1 -0
- package/cjs/interface/graphic/util.d.ts +15 -0
- package/cjs/interface/graphic/util.js +6 -0
- package/cjs/interface/graphic/util.js.map +1 -0
- package/cjs/interface/graphic-utils.d.ts +1 -0
- package/cjs/interface/graphic-utils.js +3 -0
- package/cjs/interface/graphic-utils.js.map +1 -0
- package/cjs/interface/graphic.d.ts +205 -0
- package/cjs/interface/graphic.js +6 -0
- package/cjs/interface/graphic.js.map +1 -0
- package/cjs/interface/index.d.ts +34 -0
- package/cjs/interface/index.js +37 -0
- package/cjs/interface/index.js.map +1 -0
- package/cjs/interface/layer.d.ts +60 -0
- package/cjs/interface/layer.js +6 -0
- package/cjs/interface/layer.js.map +1 -0
- package/cjs/interface/light.d.ts +6 -0
- package/cjs/interface/light.js +6 -0
- package/cjs/interface/light.js.map +1 -0
- package/cjs/interface/matrix.d.ts +21 -0
- package/cjs/interface/matrix.js +6 -0
- package/cjs/interface/matrix.js.map +1 -0
- package/cjs/interface/node-tree.d.ts +43 -0
- package/cjs/interface/node-tree.js +6 -0
- package/cjs/interface/node-tree.js.map +1 -0
- package/cjs/interface/path.d.ts +106 -0
- package/cjs/interface/path.js +13 -0
- package/cjs/interface/path.js.map +1 -0
- package/cjs/interface/stage.d.ts +124 -0
- package/cjs/interface/stage.js +6 -0
- package/cjs/interface/stage.js.map +1 -0
- package/cjs/interface/util.d.ts +1 -0
- package/cjs/interface/util.js +3 -0
- package/cjs/interface/util.js.map +1 -0
- package/cjs/kits/env.d.ts +2 -0
- package/cjs/kits/env.js +18 -0
- package/cjs/kits/env.js.map +1 -0
- package/cjs/kits/index.d.ts +1 -0
- package/cjs/kits/index.js +21 -0
- package/cjs/kits/index.js.map +1 -0
- package/cjs/modules.d.ts +26 -0
- package/cjs/modules.js +30 -0
- package/cjs/modules.js.map +1 -0
- package/cjs/picker/canvas-picker-service.d.ts +31 -0
- package/cjs/picker/canvas-picker-service.js +73 -0
- package/cjs/picker/canvas-picker-service.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/arc-picker.d.ts +11 -0
- package/cjs/picker/contributions/canvas-picker/arc-picker.js +51 -0
- package/cjs/picker/contributions/canvas-picker/arc-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/arc3d-picker.d.ts +12 -0
- package/cjs/picker/contributions/canvas-picker/arc3d-picker.js +50 -0
- package/cjs/picker/contributions/canvas-picker/arc3d-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/area-picker.d.ts +11 -0
- package/cjs/picker/contributions/canvas-picker/area-picker.js +45 -0
- package/cjs/picker/contributions/canvas-picker/area-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/base-picker.d.ts +4 -0
- package/cjs/picker/contributions/canvas-picker/base-picker.js +18 -0
- package/cjs/picker/contributions/canvas-picker/base-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/circle-picker.d.ts +11 -0
- package/cjs/picker/contributions/canvas-picker/circle-picker.js +50 -0
- package/cjs/picker/contributions/canvas-picker/circle-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/glyph-picker.d.ts +11 -0
- package/cjs/picker/contributions/canvas-picker/glyph-picker.js +44 -0
- package/cjs/picker/contributions/canvas-picker/glyph-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/image-picker.d.ts +8 -0
- package/cjs/picker/contributions/canvas-picker/image-picker.js +27 -0
- package/cjs/picker/contributions/canvas-picker/image-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/line-picker.d.ts +12 -0
- package/cjs/picker/contributions/canvas-picker/line-picker.js +56 -0
- package/cjs/picker/contributions/canvas-picker/line-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/module.d.ts +3 -0
- package/cjs/picker/contributions/canvas-picker/module.js +44 -0
- package/cjs/picker/contributions/canvas-picker/module.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/path-picker.d.ts +12 -0
- package/cjs/picker/contributions/canvas-picker/path-picker.js +55 -0
- package/cjs/picker/contributions/canvas-picker/path-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/polygon-picker.d.ts +11 -0
- package/cjs/picker/contributions/canvas-picker/polygon-picker.js +49 -0
- package/cjs/picker/contributions/canvas-picker/polygon-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/pyramid3d-picker.d.ts +12 -0
- package/cjs/picker/contributions/canvas-picker/pyramid3d-picker.js +51 -0
- package/cjs/picker/contributions/canvas-picker/pyramid3d-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/rect-picker.d.ts +11 -0
- package/cjs/picker/contributions/canvas-picker/rect-picker.js +62 -0
- package/cjs/picker/contributions/canvas-picker/rect-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/rect3d-picker.d.ts +12 -0
- package/cjs/picker/contributions/canvas-picker/rect3d-picker.js +50 -0
- package/cjs/picker/contributions/canvas-picker/rect3d-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/richtext-picker.d.ts +11 -0
- package/cjs/picker/contributions/canvas-picker/richtext-picker.js +33 -0
- package/cjs/picker/contributions/canvas-picker/richtext-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/symbol-picker.d.ts +12 -0
- package/cjs/picker/contributions/canvas-picker/symbol-picker.js +58 -0
- package/cjs/picker/contributions/canvas-picker/symbol-picker.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/text-picker.d.ts +12 -0
- package/cjs/picker/contributions/canvas-picker/text-picker.js +57 -0
- package/cjs/picker/contributions/canvas-picker/text-picker.js.map +1 -0
- package/cjs/picker/contributions/constants.d.ts +28 -0
- package/cjs/picker/contributions/constants.js +20 -0
- package/cjs/picker/contributions/constants.js.map +1 -0
- package/cjs/picker/contributions/math-picker/arc-picker.d.ts +11 -0
- package/cjs/picker/contributions/math-picker/arc-picker.js +51 -0
- package/cjs/picker/contributions/math-picker/arc-picker.js.map +1 -0
- package/cjs/picker/contributions/math-picker/area-picker.d.ts +11 -0
- package/cjs/picker/contributions/math-picker/area-picker.js +45 -0
- package/cjs/picker/contributions/math-picker/area-picker.js.map +1 -0
- package/cjs/picker/contributions/math-picker/circle-picker.d.ts +11 -0
- package/cjs/picker/contributions/math-picker/circle-picker.js +50 -0
- package/cjs/picker/contributions/math-picker/circle-picker.js.map +1 -0
- package/cjs/picker/contributions/math-picker/glyph-picker.d.ts +11 -0
- package/cjs/picker/contributions/math-picker/glyph-picker.js +44 -0
- package/cjs/picker/contributions/math-picker/glyph-picker.js.map +1 -0
- package/cjs/picker/contributions/math-picker/line-picker.d.ts +11 -0
- package/cjs/picker/contributions/math-picker/line-picker.js +50 -0
- package/cjs/picker/contributions/math-picker/line-picker.js.map +1 -0
- package/cjs/picker/contributions/math-picker/module.d.ts +3 -0
- package/cjs/picker/contributions/math-picker/module.js +32 -0
- package/cjs/picker/contributions/math-picker/module.js.map +1 -0
- package/cjs/picker/contributions/math-picker/path-picker.d.ts +11 -0
- package/cjs/picker/contributions/math-picker/path-picker.js +50 -0
- package/cjs/picker/contributions/math-picker/path-picker.js.map +1 -0
- package/cjs/picker/contributions/math-picker/polygon-picker.d.ts +11 -0
- package/cjs/picker/contributions/math-picker/polygon-picker.js +49 -0
- package/cjs/picker/contributions/math-picker/polygon-picker.js.map +1 -0
- package/cjs/picker/contributions/math-picker/rect-picker.d.ts +11 -0
- package/cjs/picker/contributions/math-picker/rect-picker.js +62 -0
- package/cjs/picker/contributions/math-picker/rect-picker.js.map +1 -0
- package/cjs/picker/contributions/math-picker/symbol-picker.d.ts +11 -0
- package/cjs/picker/contributions/math-picker/symbol-picker.js +50 -0
- package/cjs/picker/contributions/math-picker/symbol-picker.js.map +1 -0
- package/cjs/picker/contributions/math-picker/text-picker.d.ts +8 -0
- package/cjs/picker/contributions/math-picker/text-picker.js +26 -0
- package/cjs/picker/contributions/math-picker/text-picker.js.map +1 -0
- package/cjs/picker/contributions/modules.d.ts +2 -0
- package/cjs/picker/contributions/modules.js +20 -0
- package/cjs/picker/contributions/modules.js.map +1 -0
- package/cjs/picker/contributions/old/circle-picker.d.ts +1 -0
- package/cjs/picker/contributions/old/circle-picker.js +3 -0
- package/cjs/picker/contributions/old/circle-picker.js.map +1 -0
- package/cjs/picker/contributions/old/rect-picker.d.ts +1 -0
- package/cjs/picker/contributions/old/rect-picker.js +3 -0
- package/cjs/picker/contributions/old/rect-picker.js.map +1 -0
- package/cjs/picker/global-picker-service.d.ts +22 -0
- package/cjs/picker/global-picker-service.js +72 -0
- package/cjs/picker/global-picker-service.js.map +1 -0
- package/cjs/picker/index.d.ts +4 -0
- package/cjs/picker/index.js +22 -0
- package/cjs/picker/index.js.map +1 -0
- package/cjs/picker/math-picker-service.d.ts +18 -0
- package/cjs/picker/math-picker-service.js +50 -0
- package/cjs/picker/math-picker-service.js.map +1 -0
- package/cjs/picker/pick-interceptor.d.ts +20 -0
- package/cjs/picker/pick-interceptor.js +80 -0
- package/cjs/picker/pick-interceptor.js.map +1 -0
- package/cjs/picker/pick-modules.d.ts +3 -0
- package/cjs/picker/pick-modules.js +19 -0
- package/cjs/picker/pick-modules.js.map +1 -0
- package/cjs/picker/picker-service.d.ts +49 -0
- package/cjs/picker/picker-service.js +113 -0
- package/cjs/picker/picker-service.js.map +1 -0
- package/cjs/picker/type.d.ts +5 -0
- package/cjs/picker/type.js +6 -0
- package/cjs/picker/type.js.map +1 -0
- package/cjs/plugins/builtin-plugin/3dview-transform-plugin.d.ts +18 -0
- package/cjs/plugins/builtin-plugin/3dview-transform-plugin.js +42 -0
- package/cjs/plugins/builtin-plugin/3dview-transform-plugin.js.map +1 -0
- package/cjs/plugins/builtin-plugin/auto-render-plugin.d.ts +10 -0
- package/cjs/plugins/builtin-plugin/auto-render-plugin.js +28 -0
- package/cjs/plugins/builtin-plugin/auto-render-plugin.js.map +1 -0
- package/cjs/plugins/builtin-plugin/dirty-bounds-plugin.d.ts +10 -0
- package/cjs/plugins/builtin-plugin/dirty-bounds-plugin.js +36 -0
- package/cjs/plugins/builtin-plugin/dirty-bounds-plugin.js.map +1 -0
- package/cjs/plugins/builtin-plugin/incremental-auto-render-plugin.d.ts +17 -0
- package/cjs/plugins/builtin-plugin/incremental-auto-render-plugin.js +58 -0
- package/cjs/plugins/builtin-plugin/incremental-auto-render-plugin.js.map +1 -0
- package/cjs/plugins/interface.d.ts +1 -0
- package/cjs/plugins/interface.js +3 -0
- package/cjs/plugins/interface.js.map +1 -0
- package/cjs/plugins/plugin-modules.d.ts +3 -0
- package/cjs/plugins/plugin-modules.js +12 -0
- package/cjs/plugins/plugin-modules.js.map +1 -0
- package/cjs/plugins/plugin-service.d.ts +26 -0
- package/cjs/plugins/plugin-service.js +49 -0
- package/cjs/plugins/plugin-service.js.map +1 -0
- package/cjs/render/contributions/interface.d.ts +3 -0
- package/cjs/render/contributions/interface.js +6 -0
- package/cjs/render/contributions/interface.js.map +1 -0
- package/cjs/render/contributions/modules.d.ts +2 -0
- package/cjs/render/contributions/modules.js +20 -0
- package/cjs/render/contributions/modules.js.map +1 -0
- package/cjs/render/contributions/render/arc-render.d.ts +16 -0
- package/cjs/render/contributions/render/arc-render.js +243 -0
- package/cjs/render/contributions/render/arc-render.js.map +1 -0
- package/cjs/render/contributions/render/arc3d-render.d.ts +11 -0
- package/cjs/render/contributions/render/arc3d-render.js +115 -0
- package/cjs/render/contributions/render/arc3d-render.js.map +1 -0
- package/cjs/render/contributions/render/area-render.d.ts +15 -0
- package/cjs/render/contributions/render/area-render.js +163 -0
- package/cjs/render/contributions/render/area-render.js.map +1 -0
- package/cjs/render/contributions/render/base-render.d.ts +12 -0
- package/cjs/render/contributions/render/base-render.js +70 -0
- package/cjs/render/contributions/render/base-render.js.map +1 -0
- package/cjs/render/contributions/render/circle-render.d.ts +14 -0
- package/cjs/render/contributions/render/circle-render.js +58 -0
- package/cjs/render/contributions/render/circle-render.js.map +1 -0
- package/cjs/render/contributions/render/clear-screen.d.ts +1 -0
- package/cjs/render/contributions/render/clear-screen.js +3 -0
- package/cjs/render/contributions/render/clear-screen.js.map +1 -0
- package/cjs/render/contributions/render/contributions/arc-contribution-render.d.ts +18 -0
- package/cjs/render/contributions/render/contributions/arc-contribution-render.js +85 -0
- package/cjs/render/contributions/render/contributions/arc-contribution-render.js.map +1 -0
- package/cjs/render/contributions/render/contributions/area-contribution-render.d.ts +17 -0
- package/cjs/render/contributions/render/contributions/area-contribution-render.js +75 -0
- package/cjs/render/contributions/render/contributions/area-contribution-render.js.map +1 -0
- package/cjs/render/contributions/render/contributions/base-contribution-render.d.ts +33 -0
- package/cjs/render/contributions/render/contributions/base-contribution-render.js +161 -0
- package/cjs/render/contributions/render/contributions/base-contribution-render.js.map +1 -0
- package/cjs/render/contributions/render/contributions/circle-contribution-render.d.ts +18 -0
- package/cjs/render/contributions/render/contributions/circle-contribution-render.js +69 -0
- package/cjs/render/contributions/render/contributions/circle-contribution-render.js.map +1 -0
- package/cjs/render/contributions/render/contributions/group-contribution-render.d.ts +13 -0
- package/cjs/render/contributions/render/contributions/group-contribution-render.js +37 -0
- package/cjs/render/contributions/render/contributions/group-contribution-render.js.map +1 -0
- package/cjs/render/contributions/render/contributions/image-contribution-render.d.ts +10 -0
- package/cjs/render/contributions/render/contributions/image-contribution-render.js +44 -0
- package/cjs/render/contributions/render/contributions/image-contribution-render.js.map +1 -0
- package/cjs/render/contributions/render/contributions/index.d.ts +7 -0
- package/cjs/render/contributions/render/contributions/index.js +24 -0
- package/cjs/render/contributions/render/contributions/index.js.map +1 -0
- package/cjs/render/contributions/render/contributions/path-contribution-render.d.ts +12 -0
- package/cjs/render/contributions/render/contributions/path-contribution-render.js +34 -0
- package/cjs/render/contributions/render/contributions/path-contribution-render.js.map +1 -0
- package/cjs/render/contributions/render/contributions/polygon-contribution-render.d.ts +12 -0
- package/cjs/render/contributions/render/contributions/polygon-contribution-render.js +34 -0
- package/cjs/render/contributions/render/contributions/polygon-contribution-render.js.map +1 -0
- package/cjs/render/contributions/render/contributions/rect-contribution-render.d.ts +36 -0
- package/cjs/render/contributions/render/contributions/rect-contribution-render.js +110 -0
- package/cjs/render/contributions/render/contributions/rect-contribution-render.js.map +1 -0
- package/cjs/render/contributions/render/contributions/symbol-contribution-render.d.ts +18 -0
- package/cjs/render/contributions/render/contributions/symbol-contribution-render.js +69 -0
- package/cjs/render/contributions/render/contributions/symbol-contribution-render.js.map +1 -0
- package/cjs/render/contributions/render/draw-contribution.d.ts +33 -0
- package/cjs/render/contributions/render/draw-contribution.js +173 -0
- package/cjs/render/contributions/render/draw-contribution.js.map +1 -0
- package/cjs/render/contributions/render/draw-interceptor.d.ts +18 -0
- package/cjs/render/contributions/render/draw-interceptor.js +116 -0
- package/cjs/render/contributions/render/draw-interceptor.js.map +1 -0
- package/cjs/render/contributions/render/glyph-render.d.ts +9 -0
- package/cjs/render/contributions/render/glyph-render.js +40 -0
- package/cjs/render/contributions/render/glyph-render.js.map +1 -0
- package/cjs/render/contributions/render/graphic-render.d.ts +22 -0
- package/cjs/render/contributions/render/graphic-render.js +19 -0
- package/cjs/render/contributions/render/graphic-render.js.map +1 -0
- package/cjs/render/contributions/render/group-render.d.ts +14 -0
- package/cjs/render/contributions/render/group-render.js +83 -0
- package/cjs/render/contributions/render/group-render.js.map +1 -0
- package/cjs/render/contributions/render/image-render.d.ts +14 -0
- package/cjs/render/contributions/render/image-render.js +63 -0
- package/cjs/render/contributions/render/image-render.js.map +1 -0
- package/cjs/render/contributions/render/incremental-area-render.d.ts +10 -0
- package/cjs/render/contributions/render/incremental-area-render.js +42 -0
- package/cjs/render/contributions/render/incremental-area-render.js.map +1 -0
- package/cjs/render/contributions/render/incremental-draw-contribution.d.ts +44 -0
- package/cjs/render/contributions/render/incremental-draw-contribution.js +169 -0
- package/cjs/render/contributions/render/incremental-draw-contribution.js.map +1 -0
- package/cjs/render/contributions/render/incremental-line-render.d.ts +10 -0
- package/cjs/render/contributions/render/incremental-line-render.js +44 -0
- package/cjs/render/contributions/render/incremental-line-render.js.map +1 -0
- package/cjs/render/contributions/render/index.d.ts +13 -0
- package/cjs/render/contributions/render/index.js +27 -0
- package/cjs/render/contributions/render/index.js.map +1 -0
- package/cjs/render/contributions/render/line-render.d.ts +13 -0
- package/cjs/render/contributions/render/line-render.js +87 -0
- package/cjs/render/contributions/render/line-render.js.map +1 -0
- package/cjs/render/contributions/render/module.d.ts +3 -0
- package/cjs/render/contributions/render/module.js +98 -0
- package/cjs/render/contributions/render/module.js.map +1 -0
- package/cjs/render/contributions/render/path-render.d.ts +16 -0
- package/cjs/render/contributions/render/path-render.js +60 -0
- package/cjs/render/contributions/render/path-render.js.map +1 -0
- package/cjs/render/contributions/render/polygon-render.d.ts +14 -0
- package/cjs/render/contributions/render/polygon-render.js +61 -0
- package/cjs/render/contributions/render/polygon-render.js.map +1 -0
- package/cjs/render/contributions/render/pyramid3d-render.d.ts +13 -0
- package/cjs/render/contributions/render/pyramid3d-render.js +98 -0
- package/cjs/render/contributions/render/pyramid3d-render.js.map +1 -0
- package/cjs/render/contributions/render/rect-render.d.ts +14 -0
- package/cjs/render/contributions/render/rect-render.js +67 -0
- package/cjs/render/contributions/render/rect-render.js.map +1 -0
- package/cjs/render/contributions/render/rect3d-render.d.ts +13 -0
- package/cjs/render/contributions/render/rect3d-render.js +97 -0
- package/cjs/render/contributions/render/rect3d-render.js.map +1 -0
- package/cjs/render/contributions/render/render-slector.d.ts +8 -0
- package/cjs/render/contributions/render/render-slector.js +23 -0
- package/cjs/render/contributions/render/render-slector.js.map +1 -0
- package/cjs/render/contributions/render/richtext-render.d.ts +10 -0
- package/cjs/render/contributions/render/richtext-render.js +56 -0
- package/cjs/render/contributions/render/richtext-render.js.map +1 -0
- package/cjs/render/contributions/render/symbol-render.d.ts +16 -0
- package/cjs/render/contributions/render/symbol-render.js +65 -0
- package/cjs/render/contributions/render/symbol-render.js.map +1 -0
- package/cjs/render/contributions/render/symbol.d.ts +20 -0
- package/cjs/render/contributions/render/symbol.js +17 -0
- package/cjs/render/contributions/render/symbol.js.map +1 -0
- package/cjs/render/contributions/render/text-render.d.ts +14 -0
- package/cjs/render/contributions/render/text-render.js +107 -0
- package/cjs/render/contributions/render/text-render.js.map +1 -0
- package/cjs/render/contributions/render/utils.d.ts +10 -0
- package/cjs/render/contributions/render/utils.js +52 -0
- package/cjs/render/contributions/render/utils.js.map +1 -0
- package/cjs/render/index.d.ts +2 -0
- package/cjs/render/index.js +21 -0
- package/cjs/render/index.js.map +1 -0
- package/cjs/render/render-modules.d.ts +3 -0
- package/cjs/render/render-modules.js +12 -0
- package/cjs/render/render-modules.js.map +1 -0
- package/cjs/render/render-service.d.ts +73 -0
- package/cjs/render/render-service.js +57 -0
- package/cjs/render/render-service.js.map +1 -0
- package/cjs/resource-loader/loader.d.ts +27 -0
- package/cjs/resource-loader/loader.js +61 -0
- package/cjs/resource-loader/loader.js.map +1 -0
- package/cjs/tapable/Hook.d.ts +29 -0
- package/cjs/tapable/Hook.js +60 -0
- package/cjs/tapable/Hook.js.map +1 -0
- package/cjs/tapable/SyncHook.d.ts +4 -0
- package/cjs/tapable/SyncHook.js +16 -0
- package/cjs/tapable/SyncHook.js.map +1 -0
- package/cjs/tapable/index.d.ts +1 -0
- package/cjs/tapable/index.js +21 -0
- package/cjs/tapable/index.js.map +1 -0
- package/dist/vrender.js.js +1 -0
- package/dist/vrender.js.min.js +1 -0
- package/es/allocator/allocator-modules.d.ts +3 -0
- package/es/allocator/allocator-modules.js +22 -0
- package/es/allocator/allocator-modules.js.map +1 -0
- package/es/allocator/canvas-allocate.d.ts +18 -0
- package/es/allocator/canvas-allocate.js +60 -0
- package/es/allocator/canvas-allocate.js.map +1 -0
- package/es/allocator/graphic-allocate.d.ts +58 -0
- package/es/allocator/graphic-allocate.js +181 -0
- package/es/allocator/graphic-allocate.js.map +1 -0
- package/es/allocator/interface.d.ts +6 -0
- package/es/allocator/interface.js +2 -0
- package/es/allocator/interface.js.map +1 -0
- package/es/allocator/matrix-allocate.d.ts +25 -0
- package/es/allocator/matrix-allocate.js +83 -0
- package/es/allocator/matrix-allocate.js.map +1 -0
- package/es/allocator/point-allocate.d.ts +1 -0
- package/es/allocator/point-allocate.js +3 -0
- package/es/allocator/point-allocate.js.map +1 -0
- package/es/animate/Ticker/default-ticker.d.ts +101 -0
- package/es/animate/Ticker/default-ticker.js +230 -0
- package/es/animate/Ticker/default-ticker.js.map +1 -0
- package/es/animate/Ticker/index.d.ts +2 -0
- package/es/animate/Ticker/index.js +4 -0
- package/es/animate/Ticker/index.js.map +1 -0
- package/es/animate/Ticker/interface.d.ts +12 -0
- package/es/animate/Ticker/interface.js +2 -0
- package/es/animate/Ticker/interface.js.map +1 -0
- package/es/animate/animate.d.ts +146 -0
- package/es/animate/animate.js +384 -0
- package/es/animate/animate.js.map +1 -0
- package/es/animate/config.d.ts +3 -0
- package/es/animate/config.js +10 -0
- package/es/animate/config.js.map +1 -0
- package/es/animate/custom-animate.d.ts +229 -0
- package/es/animate/custom-animate.js +613 -0
- package/es/animate/custom-animate.js.map +1 -0
- package/es/animate/easing.d.ts +39 -0
- package/es/animate/easing.js +93 -0
- package/es/animate/easing.js.map +1 -0
- package/es/animate/index.d.ts +6 -0
- package/es/animate/index.js +12 -0
- package/es/animate/index.js.map +1 -0
- package/es/animate/morphing.d.ts +52 -0
- package/es/animate/morphing.js +293 -0
- package/es/animate/morphing.js.map +1 -0
- package/es/animate/timeline.d.ts +27 -0
- package/es/animate/timeline.js +40 -0
- package/es/animate/timeline.js.map +1 -0
- package/es/canvas/contributions/browser/canvas.d.ts +51 -0
- package/es/canvas/contributions/browser/canvas.js +139 -0
- package/es/canvas/contributions/browser/canvas.js.map +1 -0
- package/es/canvas/contributions/browser/conical-gradient.d.ts +13 -0
- package/es/canvas/contributions/browser/conical-gradient.js +120 -0
- package/es/canvas/contributions/browser/conical-gradient.js.map +1 -0
- package/es/canvas/contributions/browser/context.d.ts +171 -0
- package/es/canvas/contributions/browser/context.js +496 -0
- package/es/canvas/contributions/browser/context.js.map +1 -0
- package/es/canvas/contributions/browser/index.d.ts +3 -0
- package/es/canvas/contributions/browser/index.js +6 -0
- package/es/canvas/contributions/browser/index.js.map +1 -0
- package/es/canvas/contributions/browser/modules.d.ts +3 -0
- package/es/canvas/contributions/browser/modules.js +13 -0
- package/es/canvas/contributions/browser/modules.js.map +1 -0
- package/es/canvas/contributions/feishu/canvas.d.ts +48 -0
- package/es/canvas/contributions/feishu/canvas.js +101 -0
- package/es/canvas/contributions/feishu/canvas.js.map +1 -0
- package/es/canvas/contributions/feishu/context.d.ts +11 -0
- package/es/canvas/contributions/feishu/context.js +50 -0
- package/es/canvas/contributions/feishu/context.js.map +1 -0
- package/es/canvas/contributions/feishu/index.d.ts +2 -0
- package/es/canvas/contributions/feishu/index.js +4 -0
- package/es/canvas/contributions/feishu/index.js.map +1 -0
- package/es/canvas/contributions/feishu/modules.d.ts +3 -0
- package/es/canvas/contributions/feishu/modules.js +13 -0
- package/es/canvas/contributions/feishu/modules.js.map +1 -0
- package/es/canvas/contributions/lynx/canvas.d.ts +48 -0
- package/es/canvas/contributions/lynx/canvas.js +101 -0
- package/es/canvas/contributions/lynx/canvas.js.map +1 -0
- package/es/canvas/contributions/lynx/context.d.ts +10 -0
- package/es/canvas/contributions/lynx/context.js +31 -0
- package/es/canvas/contributions/lynx/context.js.map +1 -0
- package/es/canvas/contributions/lynx/index.d.ts +2 -0
- package/es/canvas/contributions/lynx/index.js +4 -0
- package/es/canvas/contributions/lynx/index.js.map +1 -0
- package/es/canvas/contributions/lynx/modules.d.ts +3 -0
- package/es/canvas/contributions/lynx/modules.js +13 -0
- package/es/canvas/contributions/lynx/modules.js.map +1 -0
- package/es/canvas/contributions/modules.d.ts +2 -0
- package/es/canvas/contributions/modules.js +13 -0
- package/es/canvas/contributions/modules.js.map +1 -0
- package/es/canvas/contributions/taro/canvas.d.ts +47 -0
- package/es/canvas/contributions/taro/canvas.js +101 -0
- package/es/canvas/contributions/taro/canvas.js.map +1 -0
- package/es/canvas/contributions/taro/context.d.ts +31 -0
- package/es/canvas/contributions/taro/context.js +64 -0
- package/es/canvas/contributions/taro/context.js.map +1 -0
- package/es/canvas/contributions/taro/index.d.ts +2 -0
- package/es/canvas/contributions/taro/index.js +4 -0
- package/es/canvas/contributions/taro/index.js.map +1 -0
- package/es/canvas/contributions/taro/modules.d.ts +3 -0
- package/es/canvas/contributions/taro/modules.js +13 -0
- package/es/canvas/contributions/taro/modules.js.map +1 -0
- package/es/canvas/contributions/tt/canvas.d.ts +48 -0
- package/es/canvas/contributions/tt/canvas.js +101 -0
- package/es/canvas/contributions/tt/canvas.js.map +1 -0
- package/es/canvas/contributions/tt/context.d.ts +9 -0
- package/es/canvas/contributions/tt/context.js +30 -0
- package/es/canvas/contributions/tt/context.js.map +1 -0
- package/es/canvas/contributions/tt/index.d.ts +2 -0
- package/es/canvas/contributions/tt/index.js +4 -0
- package/es/canvas/contributions/tt/index.js.map +1 -0
- package/es/canvas/contributions/tt/modules.d.ts +3 -0
- package/es/canvas/contributions/tt/modules.js +13 -0
- package/es/canvas/contributions/tt/modules.js.map +1 -0
- package/es/canvas/empty-context.d.ts +97 -0
- package/es/canvas/empty-context.js +214 -0
- package/es/canvas/empty-context.js.map +1 -0
- package/es/canvas/index.d.ts +6 -0
- package/es/canvas/index.js +18 -0
- package/es/canvas/index.js.map +1 -0
- package/es/canvas/interface.d.ts +9 -0
- package/es/canvas/interface.js +4 -0
- package/es/canvas/interface.js.map +1 -0
- package/es/canvas/util.d.ts +21 -0
- package/es/canvas/util.js +371 -0
- package/es/canvas/util.js.map +1 -0
- package/es/color-string/colorName.d.ts +151 -0
- package/es/color-string/colorName.js +151 -0
- package/es/color-string/colorName.js.map +1 -0
- package/es/color-string/index.d.ts +14 -0
- package/es/color-string/index.js +163 -0
- package/es/color-string/index.js.map +1 -0
- package/es/color-string/interpolate.d.ts +7 -0
- package/es/color-string/interpolate.js +80 -0
- package/es/color-string/interpolate.js.map +1 -0
- package/es/common/bezier.d.ts +8 -0
- package/es/common/bezier.js +38 -0
- package/es/common/bezier.js.map +1 -0
- package/es/common/bounds-context.d.ts +18 -0
- package/es/common/bounds-context.js +53 -0
- package/es/common/bounds-context.js.map +1 -0
- package/es/common/canvas-utils.d.ts +7 -0
- package/es/common/canvas-utils.js +36 -0
- package/es/common/canvas-utils.js.map +1 -0
- package/es/common/contribution-provider.d.ts +6 -0
- package/es/common/contribution-provider.js +16 -0
- package/es/common/contribution-provider.js.map +1 -0
- package/es/common/curve/basis.d.ts +18 -0
- package/es/common/curve/basis.js +65 -0
- package/es/common/curve/basis.js.map +1 -0
- package/es/common/curve/common.d.ts +3 -0
- package/es/common/curve/common.js +6 -0
- package/es/common/curve/common.js.map +1 -0
- package/es/common/curve/index.d.ts +12 -0
- package/es/common/curve/index.js +51 -0
- package/es/common/curve/index.js.map +1 -0
- package/es/common/curve/interface.d.ts +42 -0
- package/es/common/curve/interface.js +6 -0
- package/es/common/curve/interface.js.map +1 -0
- package/es/common/curve/linear-closed.d.ts +17 -0
- package/es/common/curve/linear-closed.js +56 -0
- package/es/common/curve/linear-closed.js.map +1 -0
- package/es/common/curve/linear.d.ts +17 -0
- package/es/common/curve/linear.js +56 -0
- package/es/common/curve/linear.js.map +1 -0
- package/es/common/curve/monotone.d.ts +26 -0
- package/es/common/curve/monotone.js +122 -0
- package/es/common/curve/monotone.js.map +1 -0
- package/es/common/curve/step.d.ts +18 -0
- package/es/common/curve/step.js +62 -0
- package/es/common/curve/step.js.map +1 -0
- package/es/common/enums.d.ts +52 -0
- package/es/common/enums.js +51 -0
- package/es/common/enums.js.map +1 -0
- package/es/common/generator.d.ts +4 -0
- package/es/common/generator.js +8 -0
- package/es/common/generator.js.map +1 -0
- package/es/common/index.d.ts +20 -0
- package/es/common/index.js +40 -0
- package/es/common/index.js.map +1 -0
- package/es/common/matrix.d.ts +1 -0
- package/es/common/matrix.js +1 -0
- package/es/common/matrix.js.map +1 -0
- package/es/common/morphing-utils.d.ts +18 -0
- package/es/common/morphing-utils.js +289 -0
- package/es/common/morphing-utils.js.map +1 -0
- package/es/common/path-svg.d.ts +12 -0
- package/es/common/path-svg.js +58 -0
- package/es/common/path-svg.js.map +1 -0
- package/es/common/path.d.ts +160 -0
- package/es/common/path.js +538 -0
- package/es/common/path.js.map +1 -0
- package/es/common/polygon.d.ts +4 -0
- package/es/common/polygon.js +35 -0
- package/es/common/polygon.js.map +1 -0
- package/es/common/render-area.d.ts +8 -0
- package/es/common/render-area.js +68 -0
- package/es/common/render-area.js.map +1 -0
- package/es/common/render-command-list.d.ts +2 -0
- package/es/common/render-command-list.js +9 -0
- package/es/common/render-command-list.js.map +1 -0
- package/es/common/render-curve.d.ts +15 -0
- package/es/common/render-curve.js +66 -0
- package/es/common/render-curve.js.map +1 -0
- package/es/common/seg-context.d.ts +40 -0
- package/es/common/seg-context.js +93 -0
- package/es/common/seg-context.js.map +1 -0
- package/es/common/shape/arc.d.ts +2 -0
- package/es/common/shape/arc.js +27 -0
- package/es/common/shape/arc.js.map +1 -0
- package/es/common/shape/rect.d.ts +2 -0
- package/es/common/shape/rect.js +46 -0
- package/es/common/shape/rect.js.map +1 -0
- package/es/common/sort.d.ts +4 -0
- package/es/common/sort.js +94 -0
- package/es/common/sort.js.map +1 -0
- package/es/common/split-path.d.ts +44 -0
- package/es/common/split-path.js +249 -0
- package/es/common/split-path.js.map +1 -0
- package/es/common/store.d.ts +2 -0
- package/es/common/store.js +2 -0
- package/es/common/store.js.map +1 -0
- package/es/common/text.d.ts +13 -0
- package/es/common/text.js +17 -0
- package/es/common/text.js.map +1 -0
- package/es/common/utils.d.ts +27 -0
- package/es/common/utils.js +112 -0
- package/es/common/utils.js.map +1 -0
- package/es/core/application.d.ts +7 -0
- package/es/core/application.js +2 -0
- package/es/core/application.js.map +1 -0
- package/es/core/camera.d.ts +21 -0
- package/es/core/camera.js +119 -0
- package/es/core/camera.js.map +1 -0
- package/es/core/contributions/env/base-contribution.d.ts +46 -0
- package/es/core/contributions/env/base-contribution.js +52 -0
- package/es/core/contributions/env/base-contribution.js.map +1 -0
- package/es/core/contributions/env/browser-contribution.d.ts +31 -0
- package/es/core/contributions/env/browser-contribution.js +113 -0
- package/es/core/contributions/env/browser-contribution.js.map +1 -0
- package/es/core/contributions/env/feishu-contribution.d.ts +51 -0
- package/es/core/contributions/env/feishu-contribution.js +108 -0
- package/es/core/contributions/env/feishu-contribution.js.map +1 -0
- package/es/core/contributions/env/lynx-contribution.d.ts +50 -0
- package/es/core/contributions/env/lynx-contribution.js +103 -0
- package/es/core/contributions/env/lynx-contribution.js.map +1 -0
- package/es/core/contributions/env/modules.d.ts +3 -0
- package/es/core/contributions/env/modules.js +22 -0
- package/es/core/contributions/env/modules.js.map +1 -0
- package/es/core/contributions/env/taro-contribution.d.ts +84 -0
- package/es/core/contributions/env/taro-contribution.js +135 -0
- package/es/core/contributions/env/taro-contribution.js.map +1 -0
- package/es/core/contributions/index.d.ts +3 -0
- package/es/core/contributions/index.js +6 -0
- package/es/core/contributions/index.js.map +1 -0
- package/es/core/contributions/interface.d.ts +3 -0
- package/es/core/contributions/interface.js +2 -0
- package/es/core/contributions/interface.js.map +1 -0
- package/es/core/contributions/layerHandler/canvas2d-contribution.d.ts +21 -0
- package/es/core/contributions/layerHandler/canvas2d-contribution.js +81 -0
- package/es/core/contributions/layerHandler/canvas2d-contribution.js.map +1 -0
- package/es/core/contributions/layerHandler/modules.d.ts +3 -0
- package/es/core/contributions/layerHandler/modules.js +13 -0
- package/es/core/contributions/layerHandler/modules.js.map +1 -0
- package/es/core/contributions/layerHandler/offscreen2d-contribution.d.ts +20 -0
- package/es/core/contributions/layerHandler/offscreen2d-contribution.js +73 -0
- package/es/core/contributions/layerHandler/offscreen2d-contribution.js.map +1 -0
- package/es/core/contributions/modules.d.ts +2 -0
- package/es/core/contributions/modules.js +13 -0
- package/es/core/contributions/modules.js.map +1 -0
- package/es/core/contributions/textMeasure/AtextMeasure.d.ts +27 -0
- package/es/core/contributions/textMeasure/AtextMeasure.js +114 -0
- package/es/core/contributions/textMeasure/AtextMeasure.js.map +1 -0
- package/es/core/contributions/textMeasure/ITextMeasure.d.ts +25 -0
- package/es/core/contributions/textMeasure/ITextMeasure.js +2 -0
- package/es/core/contributions/textMeasure/ITextMeasure.js.map +1 -0
- package/es/core/contributions/textMeasure/layout.d.ts +39 -0
- package/es/core/contributions/textMeasure/layout.js +82 -0
- package/es/core/contributions/textMeasure/layout.js.map +1 -0
- package/es/core/contributions/textMeasure/modules.d.ts +3 -0
- package/es/core/contributions/textMeasure/modules.js +11 -0
- package/es/core/contributions/textMeasure/modules.js.map +1 -0
- package/es/core/contributions/textMeasure/textMeasure-contribution.d.ts +4 -0
- package/es/core/contributions/textMeasure/textMeasure-contribution.js +18 -0
- package/es/core/contributions/textMeasure/textMeasure-contribution.js.map +1 -0
- package/es/core/contributions/window/base-contribution.d.ts +43 -0
- package/es/core/contributions/window/base-contribution.js +28 -0
- package/es/core/contributions/window/base-contribution.js.map +1 -0
- package/es/core/contributions/window/browser-contribution.d.ts +38 -0
- package/es/core/contributions/window/browser-contribution.js +147 -0
- package/es/core/contributions/window/browser-contribution.js.map +1 -0
- package/es/core/contributions/window/feishu-contribution.d.ts +47 -0
- package/es/core/contributions/window/feishu-contribution.js +159 -0
- package/es/core/contributions/window/feishu-contribution.js.map +1 -0
- package/es/core/contributions/window/lynx-contribution.d.ts +47 -0
- package/es/core/contributions/window/lynx-contribution.js +159 -0
- package/es/core/contributions/window/lynx-contribution.js.map +1 -0
- package/es/core/contributions/window/modules.d.ts +3 -0
- package/es/core/contributions/window/modules.js +19 -0
- package/es/core/contributions/window/modules.js.map +1 -0
- package/es/core/contributions/window/native-contribution.d.ts +1 -0
- package/es/core/contributions/window/native-contribution.js +3 -0
- package/es/core/contributions/window/native-contribution.js.map +1 -0
- package/es/core/contributions/window/node-contribution.d.ts +1 -0
- package/es/core/contributions/window/node-contribution.js +3 -0
- package/es/core/contributions/window/node-contribution.js.map +1 -0
- package/es/core/contributions/window/taro-contribution.d.ts +47 -0
- package/es/core/contributions/window/taro-contribution.js +166 -0
- package/es/core/contributions/window/taro-contribution.js.map +1 -0
- package/es/core/core-modules.d.ts +3 -0
- package/es/core/core-modules.js +20 -0
- package/es/core/core-modules.js.map +1 -0
- package/es/core/global.d.ts +58 -0
- package/es/core/global.js +124 -0
- package/es/core/global.js.map +1 -0
- package/es/core/graphic-utils.d.ts +60 -0
- package/es/core/graphic-utils.js +137 -0
- package/es/core/graphic-utils.js.map +1 -0
- package/es/core/index.d.ts +7 -0
- package/es/core/index.js +14 -0
- package/es/core/index.js.map +1 -0
- package/es/core/layer-service.d.ts +19 -0
- package/es/core/layer-service.js +50 -0
- package/es/core/layer-service.js.map +1 -0
- package/es/core/layer.d.ts +88 -0
- package/es/core/layer.js +124 -0
- package/es/core/layer.js.map +1 -0
- package/es/core/light.d.ts +10 -0
- package/es/core/light.js +22 -0
- package/es/core/light.js.map +1 -0
- package/es/core/stage.d.ts +112 -0
- package/es/core/stage.js +395 -0
- package/es/core/stage.js.map +1 -0
- package/es/core/window.d.ts +113 -0
- package/es/core/window.js +121 -0
- package/es/core/window.js.map +1 -0
- package/es/create.d.ts +3 -0
- package/es/create.js +5 -0
- package/es/create.js.map +1 -0
- package/es/event/constant.d.ts +1 -0
- package/es/event/constant.js +2 -0
- package/es/event/constant.js.map +1 -0
- package/es/event/event-manager.d.ts +60 -0
- package/es/event/event-manager.js +274 -0
- package/es/event/event-manager.js.map +1 -0
- package/es/event/event-system.d.ts +38 -0
- package/es/event/event-system.js +195 -0
- package/es/event/event-system.js.map +1 -0
- package/es/event/event-target.d.ts +3 -0
- package/es/event/event-target.js +16 -0
- package/es/event/event-target.js.map +1 -0
- package/es/event/extension/drag.d.ts +9 -0
- package/es/event/extension/drag.js +46 -0
- package/es/event/extension/drag.js.map +1 -0
- package/es/event/extension/gesture.d.ts +61 -0
- package/es/event/extension/gesture.js +181 -0
- package/es/event/extension/gesture.js.map +1 -0
- package/es/event/extension/index.d.ts +3 -0
- package/es/event/extension/index.js +6 -0
- package/es/event/extension/index.js.map +1 -0
- package/es/event/federated-event/base-event.d.ts +53 -0
- package/es/event/federated-event/base-event.js +61 -0
- package/es/event/federated-event/base-event.js.map +1 -0
- package/es/event/federated-event/custom-event.d.ts +4 -0
- package/es/event/federated-event/custom-event.js +8 -0
- package/es/event/federated-event/custom-event.js.map +1 -0
- package/es/event/federated-event/index.d.ts +5 -0
- package/es/event/federated-event/index.js +10 -0
- package/es/event/federated-event/index.js.map +1 -0
- package/es/event/federated-event/mouse-event.d.ts +29 -0
- package/es/event/federated-event/mouse-event.js +47 -0
- package/es/event/federated-event/mouse-event.js.map +1 -0
- package/es/event/federated-event/pointer-event.d.ts +17 -0
- package/es/event/federated-event/pointer-event.js +24 -0
- package/es/event/federated-event/pointer-event.js.map +1 -0
- package/es/event/federated-event/wheel-event.d.ts +14 -0
- package/es/event/federated-event/wheel-event.js +21 -0
- package/es/event/federated-event/wheel-event.js.map +1 -0
- package/es/event/index.d.ts +6 -0
- package/es/event/index.js +12 -0
- package/es/event/index.js.map +1 -0
- package/es/event/interface.d.ts +24 -0
- package/es/event/interface.js +2 -0
- package/es/event/interface.js.map +1 -0
- package/es/event/type.d.ts +24 -0
- package/es/event/type.js +2 -0
- package/es/event/type.js.map +1 -0
- package/es/event/util.d.ts +1 -0
- package/es/event/util.js +2 -0
- package/es/event/util.js.map +1 -0
- package/es/export.d.ts +1 -0
- package/es/export.js +1 -0
- package/es/export.js.map +1 -0
- package/es/graphic/arc.d.ts +32 -0
- package/es/graphic/arc.js +129 -0
- package/es/graphic/arc.js.map +1 -0
- package/es/graphic/arc3d.d.ts +10 -0
- package/es/graphic/arc3d.js +25 -0
- package/es/graphic/arc3d.js.map +1 -0
- package/es/graphic/area.d.ts +20 -0
- package/es/graphic/area.js +79 -0
- package/es/graphic/area.js.map +1 -0
- package/es/graphic/bounds.d.ts +4 -0
- package/es/graphic/bounds.js +10 -0
- package/es/graphic/bounds.js.map +1 -0
- package/es/graphic/builtin-symbol/arrow.d.ts +13 -0
- package/es/graphic/builtin-symbol/arrow.js +30 -0
- package/es/graphic/builtin-symbol/arrow.js.map +1 -0
- package/es/graphic/builtin-symbol/arrow2-left.d.ts +13 -0
- package/es/graphic/builtin-symbol/arrow2-left.js +24 -0
- package/es/graphic/builtin-symbol/arrow2-left.js.map +1 -0
- package/es/graphic/builtin-symbol/arrow2-right.d.ts +13 -0
- package/es/graphic/builtin-symbol/arrow2-right.js +24 -0
- package/es/graphic/builtin-symbol/arrow2-right.js.map +1 -0
- package/es/graphic/builtin-symbol/circle.d.ts +13 -0
- package/es/graphic/builtin-symbol/circle.js +24 -0
- package/es/graphic/builtin-symbol/circle.js.map +1 -0
- package/es/graphic/builtin-symbol/cross.d.ts +14 -0
- package/es/graphic/builtin-symbol/cross.js +36 -0
- package/es/graphic/builtin-symbol/cross.js.map +1 -0
- package/es/graphic/builtin-symbol/diamond.d.ts +14 -0
- package/es/graphic/builtin-symbol/diamond.js +26 -0
- package/es/graphic/builtin-symbol/diamond.js.map +1 -0
- package/es/graphic/builtin-symbol/index.d.ts +5 -0
- package/es/graphic/builtin-symbol/index.js +48 -0
- package/es/graphic/builtin-symbol/index.js.map +1 -0
- package/es/graphic/builtin-symbol/interface.d.ts +10 -0
- package/es/graphic/builtin-symbol/interface.js +2 -0
- package/es/graphic/builtin-symbol/interface.js.map +1 -0
- package/es/graphic/builtin-symbol/rect.d.ts +13 -0
- package/es/graphic/builtin-symbol/rect.js +25 -0
- package/es/graphic/builtin-symbol/rect.js.map +1 -0
- package/es/graphic/builtin-symbol/square.d.ts +13 -0
- package/es/graphic/builtin-symbol/square.js +23 -0
- package/es/graphic/builtin-symbol/square.js.map +1 -0
- package/es/graphic/builtin-symbol/star.d.ts +13 -0
- package/es/graphic/builtin-symbol/star.js +32 -0
- package/es/graphic/builtin-symbol/star.js.map +1 -0
- package/es/graphic/builtin-symbol/stroke.d.ts +13 -0
- package/es/graphic/builtin-symbol/stroke.js +22 -0
- package/es/graphic/builtin-symbol/stroke.js.map +1 -0
- package/es/graphic/builtin-symbol/thin-triangle.d.ts +14 -0
- package/es/graphic/builtin-symbol/thin-triangle.js +30 -0
- package/es/graphic/builtin-symbol/thin-triangle.js.map +1 -0
- package/es/graphic/builtin-symbol/triangle-down.d.ts +14 -0
- package/es/graphic/builtin-symbol/triangle-down.js +28 -0
- package/es/graphic/builtin-symbol/triangle-down.js.map +1 -0
- package/es/graphic/builtin-symbol/triangle-left.d.ts +14 -0
- package/es/graphic/builtin-symbol/triangle-left.js +28 -0
- package/es/graphic/builtin-symbol/triangle-left.js.map +1 -0
- package/es/graphic/builtin-symbol/triangle-right.d.ts +14 -0
- package/es/graphic/builtin-symbol/triangle-right.js +28 -0
- package/es/graphic/builtin-symbol/triangle-right.js.map +1 -0
- package/es/graphic/builtin-symbol/triangle-up.d.ts +14 -0
- package/es/graphic/builtin-symbol/triangle-up.js +28 -0
- package/es/graphic/builtin-symbol/triangle-up.js.map +1 -0
- package/es/graphic/builtin-symbol/triangle.d.ts +9 -0
- package/es/graphic/builtin-symbol/triangle.js +12 -0
- package/es/graphic/builtin-symbol/triangle.js.map +1 -0
- package/es/graphic/builtin-symbol/utils.d.ts +12 -0
- package/es/graphic/builtin-symbol/utils.js +19 -0
- package/es/graphic/builtin-symbol/utils.js.map +1 -0
- package/es/graphic/builtin-symbol/wedge.d.ts +13 -0
- package/es/graphic/builtin-symbol/wedge.js +24 -0
- package/es/graphic/builtin-symbol/wedge.js.map +1 -0
- package/es/graphic/builtin-symbol/wye.d.ts +13 -0
- package/es/graphic/builtin-symbol/wye.js +32 -0
- package/es/graphic/builtin-symbol/wye.js.map +1 -0
- package/es/graphic/circle.d.ts +18 -0
- package/es/graphic/circle.js +61 -0
- package/es/graphic/circle.js.map +1 -0
- package/es/graphic/config.d.ts +24 -0
- package/es/graphic/config.js +240 -0
- package/es/graphic/config.js.map +1 -0
- package/es/graphic/glyph.d.ts +40 -0
- package/es/graphic/glyph.js +117 -0
- package/es/graphic/glyph.js.map +1 -0
- package/es/graphic/graphic-creator.d.ts +36 -0
- package/es/graphic/graphic-creator.js +126 -0
- package/es/graphic/graphic-creator.js.map +1 -0
- package/es/graphic/graphic-service/arc-contribution.d.ts +9 -0
- package/es/graphic/graphic-service/arc-contribution.js +18 -0
- package/es/graphic/graphic-service/arc-contribution.js.map +1 -0
- package/es/graphic/graphic-service/area-contribution.d.ts +6 -0
- package/es/graphic/graphic-service/area-contribution.js +2 -0
- package/es/graphic/graphic-service/area-contribution.js.map +1 -0
- package/es/graphic/graphic-service/circle-contribution.d.ts +9 -0
- package/es/graphic/graphic-service/circle-contribution.js +18 -0
- package/es/graphic/graphic-service/circle-contribution.js.map +1 -0
- package/es/graphic/graphic-service/common-contribution.d.ts +5 -0
- package/es/graphic/graphic-service/common-contribution.js +23 -0
- package/es/graphic/graphic-service/common-contribution.js.map +1 -0
- package/es/graphic/graphic-service/default-theme.d.ts +1 -0
- package/es/graphic/graphic-service/default-theme.js +3 -0
- package/es/graphic/graphic-service/default-theme.js.map +1 -0
- package/es/graphic/graphic-service/graphic-module.d.ts +3 -0
- package/es/graphic/graphic-service/graphic-module.js +30 -0
- package/es/graphic/graphic-service/graphic-module.js.map +1 -0
- package/es/graphic/graphic-service/graphic-service.d.ts +140 -0
- package/es/graphic/graphic-service/graphic-service.js +506 -0
- package/es/graphic/graphic-service/graphic-service.js.map +1 -0
- package/es/graphic/graphic-service/path-contribution.d.ts +9 -0
- package/es/graphic/graphic-service/path-contribution.js +18 -0
- package/es/graphic/graphic-service/path-contribution.js.map +1 -0
- package/es/graphic/graphic-service/rect-contribution.d.ts +9 -0
- package/es/graphic/graphic-service/rect-contribution.js +18 -0
- package/es/graphic/graphic-service/rect-contribution.js.map +1 -0
- package/es/graphic/graphic-service/symbol-contribution.d.ts +10 -0
- package/es/graphic/graphic-service/symbol-contribution.js +29 -0
- package/es/graphic/graphic-service/symbol-contribution.js.map +1 -0
- package/es/graphic/graphic-service/theme-service.d.ts +1 -0
- package/es/graphic/graphic-service/theme-service.js +3 -0
- package/es/graphic/graphic-service/theme-service.js.map +1 -0
- package/es/graphic/graphic.d.ts +140 -0
- package/es/graphic/graphic.js +566 -0
- package/es/graphic/graphic.js.map +1 -0
- package/es/graphic/group.d.ts +50 -0
- package/es/graphic/group.js +176 -0
- package/es/graphic/group.js.map +1 -0
- package/es/graphic/image.d.ts +28 -0
- package/es/graphic/image.js +93 -0
- package/es/graphic/image.js.map +1 -0
- package/es/graphic/index.d.ts +26 -0
- package/es/graphic/index.js +52 -0
- package/es/graphic/index.js.map +1 -0
- package/es/graphic/line.d.ts +19 -0
- package/es/graphic/line.js +71 -0
- package/es/graphic/line.js.map +1 -0
- package/es/graphic/node-tree.d.ts +75 -0
- package/es/graphic/node-tree.js +345 -0
- package/es/graphic/node-tree.js.map +1 -0
- package/es/graphic/path.d.ts +22 -0
- package/es/graphic/path.js +74 -0
- package/es/graphic/path.js.map +1 -0
- package/es/graphic/polygon.d.ts +20 -0
- package/es/graphic/polygon.js +65 -0
- package/es/graphic/polygon.js.map +1 -0
- package/es/graphic/pyramid3d.d.ts +13 -0
- package/es/graphic/pyramid3d.js +91 -0
- package/es/graphic/pyramid3d.js.map +1 -0
- package/es/graphic/rect.d.ts +18 -0
- package/es/graphic/rect.js +58 -0
- package/es/graphic/rect.js.map +1 -0
- package/es/graphic/rect3d.d.ts +9 -0
- package/es/graphic/rect3d.js +49 -0
- package/es/graphic/rect3d.js.map +1 -0
- package/es/graphic/richtext/frame.d.ts +43 -0
- package/es/graphic/richtext/frame.js +142 -0
- package/es/graphic/richtext/frame.js.map +1 -0
- package/es/graphic/richtext/icon.d.ts +24 -0
- package/es/graphic/richtext/icon.js +41 -0
- package/es/graphic/richtext/icon.js.map +1 -0
- package/es/graphic/richtext/line.d.ts +27 -0
- package/es/graphic/richtext/line.js +95 -0
- package/es/graphic/richtext/line.js.map +1 -0
- package/es/graphic/richtext/paragraph.d.ts +27 -0
- package/es/graphic/richtext/paragraph.js +70 -0
- package/es/graphic/richtext/paragraph.js.map +1 -0
- package/es/graphic/richtext/utils.d.ts +44 -0
- package/es/graphic/richtext/utils.js +187 -0
- package/es/graphic/richtext/utils.js.map +1 -0
- package/es/graphic/richtext/wrapper.d.ts +25 -0
- package/es/graphic/richtext/wrapper.js +46 -0
- package/es/graphic/richtext/wrapper.js.map +1 -0
- package/es/graphic/richtext.d.ts +42 -0
- package/es/graphic/richtext.js +181 -0
- package/es/graphic/richtext.js.map +1 -0
- package/es/graphic/shadow-root.d.ts +13 -0
- package/es/graphic/shadow-root.js +36 -0
- package/es/graphic/shadow-root.js.map +1 -0
- package/es/graphic/symbol.d.ts +23 -0
- package/es/graphic/symbol.js +80 -0
- package/es/graphic/symbol.js.map +1 -0
- package/es/graphic/text.d.ts +27 -0
- package/es/graphic/text.js +132 -0
- package/es/graphic/text.js.map +1 -0
- package/es/graphic/theme.d.ts +20 -0
- package/es/graphic/theme.js +117 -0
- package/es/graphic/theme.js.map +1 -0
- package/es/graphic/tools.d.ts +5 -0
- package/es/graphic/tools.js +61 -0
- package/es/graphic/tools.js.map +1 -0
- package/es/graphic/wrap-text.d.ts +9 -0
- package/es/graphic/wrap-text.js +100 -0
- package/es/graphic/wrap-text.js.map +1 -0
- package/es/index.d.ts +18 -0
- package/es/index.js +42 -0
- package/es/index.js.map +1 -0
- package/es/interface/animate.d.ts +154 -0
- package/es/interface/animate.js +2 -0
- package/es/interface/animate.js.map +1 -0
- package/es/interface/camera.d.ts +24 -0
- package/es/interface/camera.js +2 -0
- package/es/interface/camera.js.map +1 -0
- package/es/interface/canvas.d.ts +55 -0
- package/es/interface/canvas.js +2 -0
- package/es/interface/canvas.js.map +1 -0
- package/es/interface/color.d.ts +37 -0
- package/es/interface/color.js +2 -0
- package/es/interface/color.js.map +1 -0
- package/es/interface/common.d.ts +25 -0
- package/es/interface/common.js +2 -0
- package/es/interface/common.js.map +1 -0
- package/es/interface/context.d.ts +195 -0
- package/es/interface/context.js +2 -0
- package/es/interface/context.js.map +1 -0
- package/es/interface/contribution.d.ts +4 -0
- package/es/interface/contribution.js +2 -0
- package/es/interface/contribution.js.map +1 -0
- package/es/interface/creator.d.ts +4 -0
- package/es/interface/creator.js +2 -0
- package/es/interface/creator.js.map +1 -0
- package/es/interface/global.d.ts +124 -0
- package/es/interface/global.js +4 -0
- package/es/interface/global.js.map +1 -0
- package/es/interface/graphic/arc.d.ts +35 -0
- package/es/interface/graphic/arc.js +2 -0
- package/es/interface/graphic/arc.js.map +1 -0
- package/es/interface/graphic/arc3d.d.ts +21 -0
- package/es/interface/graphic/arc3d.js +2 -0
- package/es/interface/graphic/arc3d.js.map +1 -0
- package/es/interface/graphic/area.d.ts +23 -0
- package/es/interface/graphic/area.js +2 -0
- package/es/interface/graphic/area.js.map +1 -0
- package/es/interface/graphic/bounds.d.ts +37 -0
- package/es/interface/graphic/bounds.js +8 -0
- package/es/interface/graphic/bounds.js.map +1 -0
- package/es/interface/graphic/circle.d.ts +8 -0
- package/es/interface/graphic/circle.js +2 -0
- package/es/interface/graphic/circle.js.map +1 -0
- package/es/interface/graphic/creator.d.ts +32 -0
- package/es/interface/graphic/creator.js +2 -0
- package/es/interface/graphic/creator.js.map +1 -0
- package/es/interface/graphic/dynamic-path.d.ts +1 -0
- package/es/interface/graphic/dynamic-path.js +3 -0
- package/es/interface/graphic/dynamic-path.js.map +1 -0
- package/es/interface/graphic/ellipse.d.ts +8 -0
- package/es/interface/graphic/ellipse.js +2 -0
- package/es/interface/graphic/ellipse.js.map +1 -0
- package/es/interface/graphic/face3d.d.ts +11 -0
- package/es/interface/graphic/face3d.js +2 -0
- package/es/interface/graphic/face3d.js.map +1 -0
- package/es/interface/graphic/glyph.d.ts +24 -0
- package/es/interface/graphic/glyph.js +2 -0
- package/es/interface/graphic/glyph.js.map +1 -0
- package/es/interface/graphic/group.d.ts +23 -0
- package/es/interface/graphic/group.js +2 -0
- package/es/interface/graphic/group.js.map +1 -0
- package/es/interface/graphic/image.d.ts +14 -0
- package/es/interface/graphic/image.js +2 -0
- package/es/interface/graphic/image.js.map +1 -0
- package/es/interface/graphic/index.d.ts +2 -0
- package/es/interface/graphic/index.js +4 -0
- package/es/interface/graphic/index.js.map +1 -0
- package/es/interface/graphic/isogon.d.ts +7 -0
- package/es/interface/graphic/isogon.js +2 -0
- package/es/interface/graphic/isogon.js.map +1 -0
- package/es/interface/graphic/line.d.ts +22 -0
- package/es/interface/graphic/line.js +2 -0
- package/es/interface/graphic/line.js.map +1 -0
- package/es/interface/graphic/path.d.ts +15 -0
- package/es/interface/graphic/path.js +2 -0
- package/es/interface/graphic/path.js.map +1 -0
- package/es/interface/graphic/polygon.d.ts +8 -0
- package/es/interface/graphic/polygon.js +2 -0
- package/es/interface/graphic/polygon.js.map +1 -0
- package/es/interface/graphic/polyline.d.ts +3 -0
- package/es/interface/graphic/polyline.js +2 -0
- package/es/interface/graphic/polyline.js.map +1 -0
- package/es/interface/graphic/pyramid3d.d.ts +7 -0
- package/es/interface/graphic/pyramid3d.js +2 -0
- package/es/interface/graphic/pyramid3d.js.map +1 -0
- package/es/interface/graphic/rect.d.ts +11 -0
- package/es/interface/graphic/rect.js +2 -0
- package/es/interface/graphic/rect.js.map +1 -0
- package/es/interface/graphic/rect3d.d.ts +9 -0
- package/es/interface/graphic/rect3d.js +2 -0
- package/es/interface/graphic/rect3d.js.map +1 -0
- package/es/interface/graphic/richText.d.ts +99 -0
- package/es/interface/graphic/richText.js +2 -0
- package/es/interface/graphic/richText.js.map +1 -0
- package/es/interface/graphic/shadow-root.d.ts +5 -0
- package/es/interface/graphic/shadow-root.js +2 -0
- package/es/interface/graphic/shadow-root.js.map +1 -0
- package/es/interface/graphic/svg.d.ts +7 -0
- package/es/interface/graphic/svg.js +2 -0
- package/es/interface/graphic/svg.js.map +1 -0
- package/es/interface/graphic/symbol.d.ts +11 -0
- package/es/interface/graphic/symbol.js +2 -0
- package/es/interface/graphic/symbol.js.map +1 -0
- package/es/interface/graphic/text.d.ts +40 -0
- package/es/interface/graphic/text.js +2 -0
- package/es/interface/graphic/text.js.map +1 -0
- package/es/interface/graphic/theme.d.ts +56 -0
- package/es/interface/graphic/theme.js +2 -0
- package/es/interface/graphic/theme.js.map +1 -0
- package/es/interface/graphic/util.d.ts +15 -0
- package/es/interface/graphic/util.js +2 -0
- package/es/interface/graphic/util.js.map +1 -0
- package/es/interface/graphic-utils.d.ts +1 -0
- package/es/interface/graphic-utils.js +3 -0
- package/es/interface/graphic-utils.js.map +1 -0
- package/es/interface/graphic.d.ts +205 -0
- package/es/interface/graphic.js +2 -0
- package/es/interface/graphic.js.map +1 -0
- package/es/interface/index.d.ts +34 -0
- package/es/interface/index.js +68 -0
- package/es/interface/index.js.map +1 -0
- package/es/interface/layer.d.ts +60 -0
- package/es/interface/layer.js +2 -0
- package/es/interface/layer.js.map +1 -0
- package/es/interface/light.d.ts +6 -0
- package/es/interface/light.js +2 -0
- package/es/interface/light.js.map +1 -0
- package/es/interface/matrix.d.ts +21 -0
- package/es/interface/matrix.js +2 -0
- package/es/interface/matrix.js.map +1 -0
- package/es/interface/node-tree.d.ts +43 -0
- package/es/interface/node-tree.js +2 -0
- package/es/interface/node-tree.js.map +1 -0
- package/es/interface/path.d.ts +106 -0
- package/es/interface/path.js +10 -0
- package/es/interface/path.js.map +1 -0
- package/es/interface/stage.d.ts +124 -0
- package/es/interface/stage.js +2 -0
- package/es/interface/stage.js.map +1 -0
- package/es/interface/util.d.ts +1 -0
- package/es/interface/util.js +3 -0
- package/es/interface/util.js.map +1 -0
- package/es/kits/env.d.ts +2 -0
- package/es/kits/env.js +12 -0
- package/es/kits/env.js.map +1 -0
- package/es/kits/index.d.ts +1 -0
- package/es/kits/index.js +2 -0
- package/es/kits/index.js.map +1 -0
- package/es/modules.d.ts +26 -0
- package/es/modules.js +77 -0
- package/es/modules.js.map +1 -0
- package/es/picker/canvas-picker-service.d.ts +31 -0
- package/es/picker/canvas-picker-service.js +73 -0
- package/es/picker/canvas-picker-service.js.map +1 -0
- package/es/picker/contributions/canvas-picker/arc-picker.d.ts +11 -0
- package/es/picker/contributions/canvas-picker/arc-picker.js +51 -0
- package/es/picker/contributions/canvas-picker/arc-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/arc3d-picker.d.ts +12 -0
- package/es/picker/contributions/canvas-picker/arc3d-picker.js +56 -0
- package/es/picker/contributions/canvas-picker/arc3d-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/area-picker.d.ts +11 -0
- package/es/picker/contributions/canvas-picker/area-picker.js +43 -0
- package/es/picker/contributions/canvas-picker/area-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/base-picker.d.ts +4 -0
- package/es/picker/contributions/canvas-picker/base-picker.js +16 -0
- package/es/picker/contributions/canvas-picker/base-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/circle-picker.d.ts +11 -0
- package/es/picker/contributions/canvas-picker/circle-picker.js +50 -0
- package/es/picker/contributions/canvas-picker/circle-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/glyph-picker.d.ts +11 -0
- package/es/picker/contributions/canvas-picker/glyph-picker.js +42 -0
- package/es/picker/contributions/canvas-picker/glyph-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/image-picker.d.ts +8 -0
- package/es/picker/contributions/canvas-picker/image-picker.js +24 -0
- package/es/picker/contributions/canvas-picker/image-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/line-picker.d.ts +12 -0
- package/es/picker/contributions/canvas-picker/line-picker.js +60 -0
- package/es/picker/contributions/canvas-picker/line-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/module.d.ts +3 -0
- package/es/picker/contributions/canvas-picker/module.js +62 -0
- package/es/picker/contributions/canvas-picker/module.js.map +1 -0
- package/es/picker/contributions/canvas-picker/path-picker.d.ts +12 -0
- package/es/picker/contributions/canvas-picker/path-picker.js +59 -0
- package/es/picker/contributions/canvas-picker/path-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/polygon-picker.d.ts +11 -0
- package/es/picker/contributions/canvas-picker/polygon-picker.js +47 -0
- package/es/picker/contributions/canvas-picker/polygon-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/pyramid3d-picker.d.ts +12 -0
- package/es/picker/contributions/canvas-picker/pyramid3d-picker.js +57 -0
- package/es/picker/contributions/canvas-picker/pyramid3d-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/rect-picker.d.ts +11 -0
- package/es/picker/contributions/canvas-picker/rect-picker.js +65 -0
- package/es/picker/contributions/canvas-picker/rect-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/rect3d-picker.d.ts +12 -0
- package/es/picker/contributions/canvas-picker/rect3d-picker.js +56 -0
- package/es/picker/contributions/canvas-picker/rect3d-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/richtext-picker.d.ts +11 -0
- package/es/picker/contributions/canvas-picker/richtext-picker.js +35 -0
- package/es/picker/contributions/canvas-picker/richtext-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/symbol-picker.d.ts +12 -0
- package/es/picker/contributions/canvas-picker/symbol-picker.js +62 -0
- package/es/picker/contributions/canvas-picker/symbol-picker.js.map +1 -0
- package/es/picker/contributions/canvas-picker/text-picker.d.ts +12 -0
- package/es/picker/contributions/canvas-picker/text-picker.js +60 -0
- package/es/picker/contributions/canvas-picker/text-picker.js.map +1 -0
- package/es/picker/contributions/constants.d.ts +28 -0
- package/es/picker/contributions/constants.js +56 -0
- package/es/picker/contributions/constants.js.map +1 -0
- package/es/picker/contributions/math-picker/arc-picker.d.ts +11 -0
- package/es/picker/contributions/math-picker/arc-picker.js +49 -0
- package/es/picker/contributions/math-picker/arc-picker.js.map +1 -0
- package/es/picker/contributions/math-picker/area-picker.d.ts +11 -0
- package/es/picker/contributions/math-picker/area-picker.js +43 -0
- package/es/picker/contributions/math-picker/area-picker.js.map +1 -0
- package/es/picker/contributions/math-picker/circle-picker.d.ts +11 -0
- package/es/picker/contributions/math-picker/circle-picker.js +48 -0
- package/es/picker/contributions/math-picker/circle-picker.js.map +1 -0
- package/es/picker/contributions/math-picker/glyph-picker.d.ts +11 -0
- package/es/picker/contributions/math-picker/glyph-picker.js +42 -0
- package/es/picker/contributions/math-picker/glyph-picker.js.map +1 -0
- package/es/picker/contributions/math-picker/line-picker.d.ts +11 -0
- package/es/picker/contributions/math-picker/line-picker.js +48 -0
- package/es/picker/contributions/math-picker/line-picker.js.map +1 -0
- package/es/picker/contributions/math-picker/module.d.ts +3 -0
- package/es/picker/contributions/math-picker/module.js +45 -0
- package/es/picker/contributions/math-picker/module.js.map +1 -0
- package/es/picker/contributions/math-picker/path-picker.d.ts +11 -0
- package/es/picker/contributions/math-picker/path-picker.js +48 -0
- package/es/picker/contributions/math-picker/path-picker.js.map +1 -0
- package/es/picker/contributions/math-picker/polygon-picker.d.ts +11 -0
- package/es/picker/contributions/math-picker/polygon-picker.js +47 -0
- package/es/picker/contributions/math-picker/polygon-picker.js.map +1 -0
- package/es/picker/contributions/math-picker/rect-picker.d.ts +11 -0
- package/es/picker/contributions/math-picker/rect-picker.js +63 -0
- package/es/picker/contributions/math-picker/rect-picker.js.map +1 -0
- package/es/picker/contributions/math-picker/symbol-picker.d.ts +11 -0
- package/es/picker/contributions/math-picker/symbol-picker.js +48 -0
- package/es/picker/contributions/math-picker/symbol-picker.js.map +1 -0
- package/es/picker/contributions/math-picker/text-picker.d.ts +8 -0
- package/es/picker/contributions/math-picker/text-picker.js +23 -0
- package/es/picker/contributions/math-picker/text-picker.js.map +1 -0
- package/es/picker/contributions/modules.d.ts +2 -0
- package/es/picker/contributions/modules.js +8 -0
- package/es/picker/contributions/modules.js.map +1 -0
- package/es/picker/contributions/old/circle-picker.d.ts +1 -0
- package/es/picker/contributions/old/circle-picker.js +3 -0
- package/es/picker/contributions/old/circle-picker.js.map +1 -0
- package/es/picker/contributions/old/rect-picker.d.ts +1 -0
- package/es/picker/contributions/old/rect-picker.js +3 -0
- package/es/picker/contributions/old/rect-picker.js.map +1 -0
- package/es/picker/global-picker-service.d.ts +22 -0
- package/es/picker/global-picker-service.js +72 -0
- package/es/picker/global-picker-service.js.map +1 -0
- package/es/picker/index.d.ts +4 -0
- package/es/picker/index.js +8 -0
- package/es/picker/index.js.map +1 -0
- package/es/picker/math-picker-service.d.ts +18 -0
- package/es/picker/math-picker-service.js +54 -0
- package/es/picker/math-picker-service.js.map +1 -0
- package/es/picker/pick-interceptor.d.ts +20 -0
- package/es/picker/pick-interceptor.js +79 -0
- package/es/picker/pick-interceptor.js.map +1 -0
- package/es/picker/pick-modules.d.ts +3 -0
- package/es/picker/pick-modules.js +21 -0
- package/es/picker/pick-modules.js.map +1 -0
- package/es/picker/picker-service.d.ts +49 -0
- package/es/picker/picker-service.js +120 -0
- package/es/picker/picker-service.js.map +1 -0
- package/es/picker/type.d.ts +5 -0
- package/es/picker/type.js +2 -0
- package/es/picker/type.js.map +1 -0
- package/es/plugins/builtin-plugin/3dview-transform-plugin.d.ts +18 -0
- package/es/plugins/builtin-plugin/3dview-transform-plugin.js +34 -0
- package/es/plugins/builtin-plugin/3dview-transform-plugin.js.map +1 -0
- package/es/plugins/builtin-plugin/auto-render-plugin.d.ts +10 -0
- package/es/plugins/builtin-plugin/auto-render-plugin.js +22 -0
- package/es/plugins/builtin-plugin/auto-render-plugin.js.map +1 -0
- package/es/plugins/builtin-plugin/dirty-bounds-plugin.d.ts +10 -0
- package/es/plugins/builtin-plugin/dirty-bounds-plugin.js +34 -0
- package/es/plugins/builtin-plugin/dirty-bounds-plugin.js.map +1 -0
- package/es/plugins/builtin-plugin/incremental-auto-render-plugin.d.ts +17 -0
- package/es/plugins/builtin-plugin/incremental-auto-render-plugin.js +52 -0
- package/es/plugins/builtin-plugin/incremental-auto-render-plugin.js.map +1 -0
- package/es/plugins/interface.d.ts +1 -0
- package/es/plugins/interface.js +3 -0
- package/es/plugins/interface.js.map +1 -0
- package/es/plugins/plugin-modules.d.ts +3 -0
- package/es/plugins/plugin-modules.js +8 -0
- package/es/plugins/plugin-modules.js.map +1 -0
- package/es/plugins/plugin-service.d.ts +26 -0
- package/es/plugins/plugin-service.js +44 -0
- package/es/plugins/plugin-service.js.map +1 -0
- package/es/render/contributions/interface.d.ts +3 -0
- package/es/render/contributions/interface.js +2 -0
- package/es/render/contributions/interface.js.map +1 -0
- package/es/render/contributions/modules.d.ts +2 -0
- package/es/render/contributions/modules.js +6 -0
- package/es/render/contributions/modules.js.map +1 -0
- package/es/render/contributions/render/arc-render.d.ts +16 -0
- package/es/render/contributions/render/arc-render.js +208 -0
- package/es/render/contributions/render/arc-render.js.map +1 -0
- package/es/render/contributions/render/arc3d-render.d.ts +11 -0
- package/es/render/contributions/render/arc3d-render.js +112 -0
- package/es/render/contributions/render/arc3d-render.js.map +1 -0
- package/es/render/contributions/render/area-render.d.ts +15 -0
- package/es/render/contributions/render/area-render.js +166 -0
- package/es/render/contributions/render/area-render.js.map +1 -0
- package/es/render/contributions/render/base-render.d.ts +12 -0
- package/es/render/contributions/render/base-render.js +68 -0
- package/es/render/contributions/render/base-render.js.map +1 -0
- package/es/render/contributions/render/circle-render.d.ts +14 -0
- package/es/render/contributions/render/circle-render.js +60 -0
- package/es/render/contributions/render/circle-render.js.map +1 -0
- package/es/render/contributions/render/clear-screen.d.ts +1 -0
- package/es/render/contributions/render/clear-screen.js +3 -0
- package/es/render/contributions/render/clear-screen.js.map +1 -0
- package/es/render/contributions/render/contributions/arc-contribution-render.d.ts +18 -0
- package/es/render/contributions/render/contributions/arc-contribution-render.js +85 -0
- package/es/render/contributions/render/contributions/arc-contribution-render.js.map +1 -0
- package/es/render/contributions/render/contributions/area-contribution-render.d.ts +17 -0
- package/es/render/contributions/render/contributions/area-contribution-render.js +73 -0
- package/es/render/contributions/render/contributions/area-contribution-render.js.map +1 -0
- package/es/render/contributions/render/contributions/base-contribution-render.d.ts +33 -0
- package/es/render/contributions/render/contributions/base-contribution-render.js +163 -0
- package/es/render/contributions/render/contributions/base-contribution-render.js.map +1 -0
- package/es/render/contributions/render/contributions/circle-contribution-render.d.ts +18 -0
- package/es/render/contributions/render/contributions/circle-contribution-render.js +67 -0
- package/es/render/contributions/render/contributions/circle-contribution-render.js.map +1 -0
- package/es/render/contributions/render/contributions/group-contribution-render.d.ts +13 -0
- package/es/render/contributions/render/contributions/group-contribution-render.js +34 -0
- package/es/render/contributions/render/contributions/group-contribution-render.js.map +1 -0
- package/es/render/contributions/render/contributions/image-contribution-render.d.ts +10 -0
- package/es/render/contributions/render/contributions/image-contribution-render.js +43 -0
- package/es/render/contributions/render/contributions/image-contribution-render.js.map +1 -0
- package/es/render/contributions/render/contributions/index.d.ts +7 -0
- package/es/render/contributions/render/contributions/index.js +14 -0
- package/es/render/contributions/render/contributions/index.js.map +1 -0
- package/es/render/contributions/render/contributions/path-contribution-render.d.ts +12 -0
- package/es/render/contributions/render/contributions/path-contribution-render.js +32 -0
- package/es/render/contributions/render/contributions/path-contribution-render.js.map +1 -0
- package/es/render/contributions/render/contributions/polygon-contribution-render.d.ts +12 -0
- package/es/render/contributions/render/contributions/polygon-contribution-render.js +32 -0
- package/es/render/contributions/render/contributions/polygon-contribution-render.js.map +1 -0
- package/es/render/contributions/render/contributions/rect-contribution-render.d.ts +36 -0
- package/es/render/contributions/render/contributions/rect-contribution-render.js +108 -0
- package/es/render/contributions/render/contributions/rect-contribution-render.js.map +1 -0
- package/es/render/contributions/render/contributions/symbol-contribution-render.d.ts +18 -0
- package/es/render/contributions/render/contributions/symbol-contribution-render.js +61 -0
- package/es/render/contributions/render/contributions/symbol-contribution-render.js.map +1 -0
- package/es/render/contributions/render/draw-contribution.d.ts +33 -0
- package/es/render/contributions/render/draw-contribution.js +179 -0
- package/es/render/contributions/render/draw-contribution.js.map +1 -0
- package/es/render/contributions/render/draw-interceptor.d.ts +18 -0
- package/es/render/contributions/render/draw-interceptor.js +118 -0
- package/es/render/contributions/render/draw-interceptor.js.map +1 -0
- package/es/render/contributions/render/glyph-render.d.ts +9 -0
- package/es/render/contributions/render/glyph-render.js +37 -0
- package/es/render/contributions/render/glyph-render.js.map +1 -0
- package/es/render/contributions/render/graphic-render.d.ts +22 -0
- package/es/render/contributions/render/graphic-render.js +14 -0
- package/es/render/contributions/render/graphic-render.js.map +1 -0
- package/es/render/contributions/render/group-render.d.ts +14 -0
- package/es/render/contributions/render/group-render.js +87 -0
- package/es/render/contributions/render/group-render.js.map +1 -0
- package/es/render/contributions/render/image-render.d.ts +14 -0
- package/es/render/contributions/render/image-render.js +66 -0
- package/es/render/contributions/render/image-render.js.map +1 -0
- package/es/render/contributions/render/incremental-area-render.d.ts +10 -0
- package/es/render/contributions/render/incremental-area-render.js +44 -0
- package/es/render/contributions/render/incremental-area-render.js.map +1 -0
- package/es/render/contributions/render/incremental-draw-contribution.d.ts +44 -0
- package/es/render/contributions/render/incremental-draw-contribution.js +177 -0
- package/es/render/contributions/render/incremental-draw-contribution.js.map +1 -0
- package/es/render/contributions/render/incremental-line-render.d.ts +10 -0
- package/es/render/contributions/render/incremental-line-render.js +45 -0
- package/es/render/contributions/render/incremental-line-render.js.map +1 -0
- package/es/render/contributions/render/index.d.ts +13 -0
- package/es/render/contributions/render/index.js +26 -0
- package/es/render/contributions/render/index.js.map +1 -0
- package/es/render/contributions/render/line-render.d.ts +13 -0
- package/es/render/contributions/render/line-render.js +91 -0
- package/es/render/contributions/render/line-render.js.map +1 -0
- package/es/render/contributions/render/module.d.ts +3 -0
- package/es/render/contributions/render/module.js +133 -0
- package/es/render/contributions/render/module.js.map +1 -0
- package/es/render/contributions/render/path-render.d.ts +16 -0
- package/es/render/contributions/render/path-render.js +66 -0
- package/es/render/contributions/render/path-render.js.map +1 -0
- package/es/render/contributions/render/polygon-render.d.ts +14 -0
- package/es/render/contributions/render/polygon-render.js +65 -0
- package/es/render/contributions/render/polygon-render.js.map +1 -0
- package/es/render/contributions/render/pyramid3d-render.d.ts +13 -0
- package/es/render/contributions/render/pyramid3d-render.js +101 -0
- package/es/render/contributions/render/pyramid3d-render.js.map +1 -0
- package/es/render/contributions/render/rect-render.d.ts +14 -0
- package/es/render/contributions/render/rect-render.js +71 -0
- package/es/render/contributions/render/rect-render.js.map +1 -0
- package/es/render/contributions/render/rect3d-render.d.ts +13 -0
- package/es/render/contributions/render/rect3d-render.js +100 -0
- package/es/render/contributions/render/rect3d-render.js.map +1 -0
- package/es/render/contributions/render/render-slector.d.ts +8 -0
- package/es/render/contributions/render/render-slector.js +18 -0
- package/es/render/contributions/render/render-slector.js.map +1 -0
- package/es/render/contributions/render/richtext-render.d.ts +10 -0
- package/es/render/contributions/render/richtext-render.js +57 -0
- package/es/render/contributions/render/richtext-render.js.map +1 -0
- package/es/render/contributions/render/symbol-render.d.ts +16 -0
- package/es/render/contributions/render/symbol-render.js +71 -0
- package/es/render/contributions/render/symbol-render.js.map +1 -0
- package/es/render/contributions/render/symbol.d.ts +20 -0
- package/es/render/contributions/render/symbol.js +40 -0
- package/es/render/contributions/render/symbol.js.map +1 -0
- package/es/render/contributions/render/text-render.d.ts +14 -0
- package/es/render/contributions/render/text-render.js +106 -0
- package/es/render/contributions/render/text-render.js.map +1 -0
- package/es/render/contributions/render/utils.d.ts +10 -0
- package/es/render/contributions/render/utils.js +45 -0
- package/es/render/contributions/render/utils.js.map +1 -0
- package/es/render/index.d.ts +2 -0
- package/es/render/index.js +4 -0
- package/es/render/index.js.map +1 -0
- package/es/render/render-modules.d.ts +3 -0
- package/es/render/render-modules.js +8 -0
- package/es/render/render-modules.js.map +1 -0
- package/es/render/render-service.d.ts +73 -0
- package/es/render/render-service.js +55 -0
- package/es/render/render-service.js.map +1 -0
- package/es/resource-loader/loader.d.ts +27 -0
- package/es/resource-loader/loader.js +55 -0
- package/es/resource-loader/loader.js.map +1 -0
- package/es/tapable/Hook.d.ts +29 -0
- package/es/tapable/Hook.js +52 -0
- package/es/tapable/Hook.js.map +1 -0
- package/es/tapable/SyncHook.d.ts +4 -0
- package/es/tapable/SyncHook.js +8 -0
- package/es/tapable/SyncHook.js.map +1 -0
- package/es/tapable/index.d.ts +1 -0
- package/es/tapable/index.js +2 -0
- package/es/tapable/index.js.map +1 -0
- package/package.json +50 -0
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
var __decorate = this && this.__decorate || function(decorators, target, key, desc) {
|
|
2
|
+
var d, c = arguments.length, r = c < 3 ? target : null === desc ? desc = Object.getOwnPropertyDescriptor(target, key) : desc;
|
|
3
|
+
if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) (d = decorators[i]) && (r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r);
|
|
4
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
5
|
+
}, __metadata = this && this.__metadata || function(k, v) {
|
|
6
|
+
if ("object" == typeof Reflect && "function" == typeof Reflect.metadata) return Reflect.metadata(k, v);
|
|
7
|
+
}, __param = this && this.__param || function(paramIndex, decorator) {
|
|
8
|
+
return function(target, key) {
|
|
9
|
+
decorator(target, key, paramIndex);
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
import { abs, acos, atan2, cos, epsilon, min, pi, sin, sqrt, pi2 } from "@visactor/vutils";
|
|
14
|
+
|
|
15
|
+
import { inject, injectable, named } from "inversify";
|
|
16
|
+
|
|
17
|
+
import { ARC_NUMBER_TYPE, getTheme } from "../../../graphic";
|
|
18
|
+
|
|
19
|
+
import { ContributionProvider, parseStroke } from "../../../common";
|
|
20
|
+
|
|
21
|
+
import { drawPathProxy, fillVisible, runFill, runStroke, strokeVisible } from "./utils";
|
|
22
|
+
|
|
23
|
+
import { getConicGradientAt } from "../../../canvas";
|
|
24
|
+
|
|
25
|
+
import { ArcRenderContribution } from "./contributions/arc-contribution-render";
|
|
26
|
+
|
|
27
|
+
import { BaseRenderContributionTime } from "./contributions/base-contribution-render";
|
|
28
|
+
|
|
29
|
+
function intersect(x0, y0, x1, y1, x2, y2, x3, y3) {
|
|
30
|
+
const x10 = x1 - x0, y10 = y1 - y0, x32 = x3 - x2, y32 = y3 - y2;
|
|
31
|
+
let t = y32 * x10 - x32 * y10;
|
|
32
|
+
return t * t < epsilon ? [] : (t = (x32 * (y0 - y2) - y32 * (x0 - x2)) / t, [ x0 + t * x10, y0 + t * y10 ]);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
function cornerTangents(x0, y0, x1, y1, r1, rc, clockwise) {
|
|
36
|
+
const x01 = x0 - x1, y01 = y0 - y1, lo = (clockwise ? rc : -rc) / Math.sqrt(x01 * x01 + y01 * y01), ox = lo * y01, oy = -lo * x01, x11 = x0 + ox, y11 = y0 + oy, x10 = x1 + ox, y10 = y1 + oy, x00 = (x11 + x10) / 2, y00 = (y11 + y10) / 2, dx = x10 - x11, dy = y10 - y11, d2 = dx * dx + dy * dy, r = r1 - rc, D = x11 * y10 - x10 * y11, d = (dy < 0 ? -1 : 1) * Math.sqrt(Math.max(0, r * r * d2 - D * D));
|
|
37
|
+
let cx0 = (D * dy - dx * d) / d2, cy0 = (-D * dx - dy * d) / d2;
|
|
38
|
+
const cx1 = (D * dy + dx * d) / d2, cy1 = (-D * dx + dy * d) / d2, dx0 = cx0 - x00, dy0 = cy0 - y00, dx1 = cx1 - x00, dy1 = cy1 - y00;
|
|
39
|
+
return dx0 * dx0 + dy0 * dy0 > dx1 * dx1 + dy1 * dy1 && (cx0 = cx1, cy0 = cy1),
|
|
40
|
+
{
|
|
41
|
+
cx: cx0,
|
|
42
|
+
cy: cy0,
|
|
43
|
+
x01: -ox,
|
|
44
|
+
y01: -oy,
|
|
45
|
+
x11: cx0 * (r1 / r - 1),
|
|
46
|
+
y11: cy0 * (r1 / r - 1)
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export function drawArcPath(arc, context, cx, cy, outerRadius, innerRadius, partStroke) {
|
|
51
|
+
const {startAngle: startAngle, endAngle: endAngle} = arc.getParsedAngle(), deltaAngle = abs(endAngle - startAngle), clockwise = endAngle > startAngle;
|
|
52
|
+
let collapsedToLine = !1;
|
|
53
|
+
if (outerRadius < innerRadius) {
|
|
54
|
+
const temp = outerRadius;
|
|
55
|
+
outerRadius = innerRadius, innerRadius = temp;
|
|
56
|
+
}
|
|
57
|
+
if (outerRadius <= epsilon) context.moveTo(cx, cy); else if (deltaAngle >= pi2 - epsilon) context.moveTo(cx + outerRadius * cos(startAngle), cy + outerRadius * sin(startAngle)),
|
|
58
|
+
context.arc(cx, cy, outerRadius, startAngle, endAngle, !clockwise), innerRadius > epsilon && (context.moveTo(cx + innerRadius * cos(endAngle), cy + innerRadius * sin(endAngle)),
|
|
59
|
+
context.arc(cx, cy, innerRadius, endAngle, startAngle, clockwise)); else {
|
|
60
|
+
const cornerRadius = arc.getParsedCornerRadius(), {outerDeltaAngle: outerDeltaAngle, innerDeltaAngle: innerDeltaAngle, outerStartAngle: outerStartAngle, outerEndAngle: outerEndAngle, innerEndAngle: innerEndAngle, innerStartAngle: innerStartAngle} = arc.getParsePadAngle(startAngle, endAngle), outerCornerRadiusStart = cornerRadius, outerCornerRadiusEnd = cornerRadius, innerCornerRadiusEnd = cornerRadius, innerCornerRadiusStart = cornerRadius, maxOuterCornerRadius = Math.max(outerCornerRadiusEnd, outerCornerRadiusStart), maxInnerCornerRadius = Math.max(innerCornerRadiusEnd, innerCornerRadiusStart);
|
|
61
|
+
let limitedOcr = maxOuterCornerRadius, limitedIcr = maxInnerCornerRadius;
|
|
62
|
+
const xors = outerRadius * cos(outerStartAngle), yors = outerRadius * sin(outerStartAngle), xire = innerRadius * cos(innerEndAngle), yire = innerRadius * sin(innerEndAngle);
|
|
63
|
+
let xore, yore, xirs, yirs;
|
|
64
|
+
if ((maxInnerCornerRadius > epsilon || maxOuterCornerRadius > epsilon) && (xore = outerRadius * cos(outerEndAngle),
|
|
65
|
+
yore = outerRadius * sin(outerEndAngle), xirs = innerRadius * cos(innerStartAngle),
|
|
66
|
+
yirs = innerRadius * sin(innerStartAngle), deltaAngle < pi)) {
|
|
67
|
+
const oc = intersect(xors, yors, xirs, yirs, xore, yore, xire, yire);
|
|
68
|
+
if (oc) {
|
|
69
|
+
const ax = xors - oc[0], ay = yors - oc[1], bx = xore - oc[0], by = yore - oc[1], kc = 1 / sin(acos((ax * bx + ay * by) / (sqrt(ax * ax + ay * ay) * sqrt(bx * bx + by * by))) / 2), lc = sqrt(oc[0] * oc[0] + oc[1] * oc[1]);
|
|
70
|
+
limitedIcr = min(maxInnerCornerRadius, (innerRadius - lc) / (kc - 1)), limitedOcr = min(maxOuterCornerRadius, (outerRadius - lc) / (kc + 1));
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
if (outerDeltaAngle < .001) partStroke && (partStroke[3] || partStroke[1]) && context.moveTo(cx + xors, cy + yors),
|
|
74
|
+
collapsedToLine = !0; else if (limitedOcr > epsilon) {
|
|
75
|
+
const cornerRadiusStart = min(outerCornerRadiusStart, limitedOcr), cornerRadiusEnd = min(outerCornerRadiusEnd, limitedOcr), t0 = cornerTangents(xirs, yirs, xors, yors, outerRadius, cornerRadiusStart, Number(clockwise)), t1 = cornerTangents(xore, yore, xire, yire, outerRadius, cornerRadiusEnd, Number(clockwise));
|
|
76
|
+
limitedOcr < maxOuterCornerRadius && cornerRadiusStart === cornerRadiusEnd ? !partStroke || partStroke[0] ? (context.moveTo(cx + t0.cx + t0.x01, cy + t0.cy + t0.y01),
|
|
77
|
+
context.arc(cx + t0.cx, cy + t0.cy, limitedOcr, atan2(t0.y01, t0.x01), atan2(t1.y01, t1.x01), !clockwise)) : context.moveTo(cx + t0.cx + limitedOcr * cos(atan2(t1.y01, t1.x01)), cy + t0.cy + limitedOcr * sin(atan2(t1.y01, t1.x01))) : !partStroke || partStroke[0] ? (context.moveTo(cx + t0.cx + t0.x01, cy + t0.cy + t0.y01),
|
|
78
|
+
cornerRadiusStart > 0 && context.arc(cx + t0.cx, cy + t0.cy, cornerRadiusStart, atan2(t0.y01, t0.x01), atan2(t0.y11, t0.x11), !clockwise),
|
|
79
|
+
context.arc(cx, cy, outerRadius, atan2(t0.cy + t0.y11, t0.cx + t0.x11), atan2(t1.cy + t1.y11, t1.cx + t1.x11), !clockwise),
|
|
80
|
+
cornerRadiusEnd > 0 && context.arc(cx + t1.cx, cy + t1.cy, cornerRadiusEnd, atan2(t1.y11, t1.x11), atan2(t1.y01, t1.x01), !clockwise)) : cornerRadiusEnd > 0 ? context.moveTo(cx + t1.cx + cornerRadiusEnd * cos(atan2(t1.y01, t1.x01)), cy + t1.cy + cornerRadiusEnd * sin(atan2(t1.y01, t1.x01))) : context.moveTo(cx + xore, cy + outerRadius * sin(outerEndAngle));
|
|
81
|
+
} else partStroke && !partStroke[0] || (context.moveTo(cx + xors, cy + yors), context.arc(cx, cy, outerRadius, outerStartAngle, outerEndAngle, !clockwise));
|
|
82
|
+
if (!(innerRadius > epsilon) || innerDeltaAngle < .001) !partStroke || partStroke[1] ? context.lineTo(cx + xire, cy + yire) : context.moveTo(cx + xire, cy + yire),
|
|
83
|
+
collapsedToLine = !0; else if (limitedIcr > epsilon) {
|
|
84
|
+
const cornerRadiusStart = min(innerCornerRadiusStart, limitedIcr), cornerRadiusEnd = min(innerCornerRadiusEnd, limitedIcr), t0 = cornerTangents(xire, yire, xore, yore, innerRadius, -cornerRadiusEnd, Number(clockwise)), t1 = cornerTangents(xors, yors, xirs, yirs, innerRadius, -cornerRadiusStart, Number(clockwise));
|
|
85
|
+
if (!partStroke || partStroke[1] ? context.lineTo(cx + t0.cx + t0.x01, cy + t0.cy + t0.y01) : context.moveTo(cx + t0.cx + t0.x01, cy + t0.cy + t0.y01),
|
|
86
|
+
limitedIcr < maxInnerCornerRadius && cornerRadiusStart === cornerRadiusEnd) {
|
|
87
|
+
const arcEndAngle = atan2(t1.y01, t1.x01);
|
|
88
|
+
!partStroke || partStroke[2] ? context.arc(cx + t0.cx, cy + t0.cy, limitedIcr, atan2(t0.y01, t0.x01), arcEndAngle, !clockwise) : context.moveTo(cx + t0.cx + cos(arcEndAngle), cy + t0.cy + sin(arcEndAngle));
|
|
89
|
+
} else !partStroke || partStroke[2] ? (cornerRadiusEnd > 0 && context.arc(cx + t0.cx, cy + t0.cy, cornerRadiusEnd, atan2(t0.y01, t0.x01), atan2(t0.y11, t0.x11), !clockwise),
|
|
90
|
+
context.arc(cx, cy, innerRadius, atan2(t0.cy + t0.y11, t0.cx + t0.x11), atan2(t1.cy + t1.y11, t1.cx + t1.x11), clockwise),
|
|
91
|
+
cornerRadiusStart > 0 && context.arc(cx + t1.cx, cy + t1.cy, cornerRadiusStart, atan2(t1.y11, t1.x11), atan2(t1.y01, t1.x01), !clockwise)) : cornerRadiusStart > 0 ? context.moveTo(cx + t1.cx + cornerRadiusStart * cos(atan2(t1.y01, t1.x01)), cy + t1.cy + cornerRadiusStart * sin(atan2(t1.y01, t1.x01))) : context.moveTo(cx + xirs, cy + yirs);
|
|
92
|
+
} else !partStroke || partStroke[1] ? context.lineTo(cx + xire, cy + yire) : context.moveTo(cx + xire, cy + yire),
|
|
93
|
+
!partStroke || partStroke[2] ? context.arc(cx, cy, innerRadius, innerEndAngle, innerStartAngle, clockwise) : context.moveTo(cx + innerRadius * cos(innerStartAngle), cy + innerRadius * sin(innerStartAngle));
|
|
94
|
+
}
|
|
95
|
+
return partStroke ? partStroke[3] && context.lineTo(cx + outerRadius * cos(endAngle), cy + outerRadius * cos(endAngle)) : context.closePath(),
|
|
96
|
+
collapsedToLine;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
let DefaultCanvasArcRender = class {
|
|
100
|
+
constructor(arcRenderContribitions) {
|
|
101
|
+
this.arcRenderContribitions = arcRenderContribitions, this.numberType = ARC_NUMBER_TYPE;
|
|
102
|
+
}
|
|
103
|
+
drawArcTailCapPath(arc, context, cx, cy, outerRadius, innerRadius, _sa, _ea) {
|
|
104
|
+
const capAngle = _ea - _sa, data = arc.getParsedAngle(), startAngle = data.startAngle;
|
|
105
|
+
let endAngle = data.endAngle;
|
|
106
|
+
endAngle = _ea;
|
|
107
|
+
const deltaAngle = abs(endAngle - startAngle), clockwise = endAngle > startAngle;
|
|
108
|
+
let collapsedToLine = !1;
|
|
109
|
+
if (outerRadius < innerRadius) {
|
|
110
|
+
const temp = outerRadius;
|
|
111
|
+
outerRadius = innerRadius, innerRadius = temp;
|
|
112
|
+
}
|
|
113
|
+
const cornerRadius = arc.getParsedCornerRadius(), {outerDeltaAngle: outerDeltaAngle, innerDeltaAngle: innerDeltaAngle, outerStartAngle: outerStartAngle, outerEndAngle: outerEndAngle, innerEndAngle: innerEndAngle, innerStartAngle: innerStartAngle} = arc.getParsePadAngle(startAngle, endAngle), outerCornerRadiusStart = cornerRadius, outerCornerRadiusEnd = cornerRadius, innerCornerRadiusEnd = cornerRadius, innerCornerRadiusStart = cornerRadius, maxOuterCornerRadius = Math.max(outerCornerRadiusEnd, outerCornerRadiusStart), maxInnerCornerRadius = Math.max(innerCornerRadiusEnd, innerCornerRadiusStart);
|
|
114
|
+
let limitedOcr = maxOuterCornerRadius, limitedIcr = maxInnerCornerRadius;
|
|
115
|
+
const xors = outerRadius * cos(outerStartAngle), yors = outerRadius * sin(outerStartAngle), xire = innerRadius * cos(innerEndAngle), yire = innerRadius * sin(innerEndAngle);
|
|
116
|
+
let xore, yore, xirs, yirs;
|
|
117
|
+
if ((maxInnerCornerRadius > epsilon || maxOuterCornerRadius > epsilon) && (xore = outerRadius * cos(outerEndAngle),
|
|
118
|
+
yore = outerRadius * sin(outerEndAngle), xirs = innerRadius * cos(innerStartAngle),
|
|
119
|
+
yirs = innerRadius * sin(innerStartAngle), deltaAngle < pi)) {
|
|
120
|
+
const oc = intersect(xors, yors, xirs, yirs, xore, yore, xire, yire);
|
|
121
|
+
if (oc) {
|
|
122
|
+
const ax = xors - oc[0], ay = yors - oc[1], bx = xore - oc[0], by = yore - oc[1], kc = 1 / sin(acos((ax * bx + ay * by) / (sqrt(ax * ax + ay * ay) * sqrt(bx * bx + by * by))) / 2), lc = sqrt(oc[0] * oc[0] + oc[1] * oc[1]);
|
|
123
|
+
limitedIcr = min(maxInnerCornerRadius, (innerRadius - lc) / (kc - 1)), limitedOcr = min(maxOuterCornerRadius, (outerRadius - lc) / (kc + 1));
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
if (limitedOcr > epsilon) {
|
|
127
|
+
const cornerRadiusStart = min(outerCornerRadiusStart, limitedOcr), cornerRadiusEnd = min(outerCornerRadiusEnd, limitedOcr), t0 = cornerTangents(xirs, yirs, xors, yors, outerRadius, cornerRadiusStart, Number(clockwise)), t1 = cornerTangents(xore, yore, xire, yire, outerRadius, cornerRadiusEnd, Number(clockwise));
|
|
128
|
+
if (limitedOcr < maxOuterCornerRadius && cornerRadiusStart === cornerRadiusEnd) context.moveTo(cx + t0.cx + t0.x01, cy + t0.cy + t0.y01),
|
|
129
|
+
context.arc(cx + t0.cx, cy + t0.cy, limitedOcr, atan2(t0.y01, t0.x01), atan2(t1.y01, t1.x01), !clockwise); else {
|
|
130
|
+
const a1 = endAngle - capAngle - .03, a2 = atan2(t1.y11, t1.x11);
|
|
131
|
+
context.arc(cx, cy, outerRadius, a1, a2, !clockwise), cornerRadiusEnd > 0 && context.arc(cx + t1.cx, cy + t1.cy, cornerRadiusEnd, atan2(t1.y11, t1.x11), atan2(t1.y01, t1.x01), !clockwise);
|
|
132
|
+
}
|
|
133
|
+
} else context.moveTo(cx + xors, cy + yors);
|
|
134
|
+
if (!(innerRadius > epsilon) || innerDeltaAngle < .001) context.lineTo(cx + xire, cy + yire),
|
|
135
|
+
collapsedToLine = !0; else if (limitedIcr > epsilon) {
|
|
136
|
+
const cornerRadiusStart = min(innerCornerRadiusStart, limitedIcr), cornerRadiusEnd = min(innerCornerRadiusEnd, limitedIcr), t0 = cornerTangents(xire, yire, xore, yore, innerRadius, -cornerRadiusEnd, Number(clockwise)), t1 = cornerTangents(xors, yors, xirs, yirs, innerRadius, -cornerRadiusStart, Number(clockwise));
|
|
137
|
+
if (context.lineTo(cx + t0.cx + t0.x01, cy + t0.cy + t0.y01), limitedIcr < maxInnerCornerRadius && cornerRadiusStart === cornerRadiusEnd) {
|
|
138
|
+
const arcEndAngle = atan2(t1.y01, t1.x01);
|
|
139
|
+
context.arc(cx + t0.cx, cy + t0.cy, limitedIcr, atan2(t0.y01, t0.x01), arcEndAngle, !clockwise);
|
|
140
|
+
} else {
|
|
141
|
+
cornerRadiusEnd > 0 && context.arc(cx + t0.cx, cy + t0.cy, cornerRadiusEnd, atan2(t0.y01, t0.x01), atan2(t0.y11, t0.x11), !clockwise);
|
|
142
|
+
const a1 = atan2(t0.cy + t0.y11, t0.cx + t0.x11), a2 = endAngle - capAngle - .03;
|
|
143
|
+
context.arc(cx, cy, innerRadius, a1, a2, clockwise);
|
|
144
|
+
}
|
|
145
|
+
} else context.lineTo(cx + innerRadius * cos(innerStartAngle), cy + innerRadius * sin(innerStartAngle));
|
|
146
|
+
return collapsedToLine;
|
|
147
|
+
}
|
|
148
|
+
drawShape(arc, context, x, y, drawContext, params, fillCb, strokeCb) {
|
|
149
|
+
const arcAttribute = getTheme(arc, null == params ? void 0 : params.theme).arc, {fill: fill = (null == arcAttribute.fill ? !!arc.attribute.fillColor : arcAttribute.fill), background: background, stroke: stroke = (null == arcAttribute.stroke ? !!arc.attribute.strokeColor : arcAttribute.stroke), opacity: opacity = arcAttribute.opacity, fillOpacity: fillOpacity = arcAttribute.fillOpacity, lineWidth: lineWidth = arcAttribute.lineWidth, strokeOpacity: strokeOpacity = arcAttribute.strokeOpacity, visible: visible = arcAttribute.visible} = arc.attribute, fVisible = fillVisible(opacity, fillOpacity), sVisible = strokeVisible(opacity, strokeOpacity), doFill = runFill(fill), doStroke = runStroke(stroke, lineWidth);
|
|
150
|
+
if (!arc.valid || !visible) return;
|
|
151
|
+
if (!(doFill || doStroke || background)) return;
|
|
152
|
+
if (!(fVisible || sVisible || fillCb || strokeCb || background)) return;
|
|
153
|
+
const {outerRadius: outerRadius = arcAttribute.outerRadius, innerRadius: innerRadius = arcAttribute.innerRadius, cap: cap = arcAttribute.cap, forceShowCap: forceShowCap = arcAttribute.forceShowCap} = arc.attribute, {isFullStroke: isFullStroke, stroke: arrayStroke} = parseStroke(stroke);
|
|
154
|
+
if ((doFill || isFullStroke) && (context.beginPath(), drawArcPath(arc, context, x, y, outerRadius, innerRadius),
|
|
155
|
+
this._arcRenderContribitions || (this._arcRenderContribitions = this.arcRenderContribitions.getContributions() || [],
|
|
156
|
+
this._arcRenderContribitions.sort(((a, b) => b.order - a.order))), this._arcRenderContribitions.forEach((c => {
|
|
157
|
+
c.time === BaseRenderContributionTime.beforeFillStroke && c.drawShape(arc, context, x, y, doFill, doStroke, fVisible, sVisible, arcAttribute, fillCb, strokeCb);
|
|
158
|
+
})), context.setShadowStyle && context.setShadowStyle(arc, arc.attribute, arcAttribute),
|
|
159
|
+
doFill && (fillCb ? fillCb(context, arc.attribute, arcAttribute) : fVisible && (context.setCommonStyle(arc, arc.attribute, x, y, arcAttribute),
|
|
160
|
+
context.fill())), doStroke && isFullStroke && (strokeCb ? strokeCb(context, arc.attribute, arcAttribute) : sVisible && (context.setStrokeStyle(arc, arc.attribute, x, y, arcAttribute),
|
|
161
|
+
context.stroke()))), !isFullStroke && doStroke) {
|
|
162
|
+
context.beginPath();
|
|
163
|
+
drawArcPath(arc, context, x, y, outerRadius, innerRadius, arrayStroke);
|
|
164
|
+
strokeCb ? strokeCb(context, arc.attribute, arcAttribute) : sVisible && (context.setStrokeStyle(arc, arc.attribute, x, y, arcAttribute),
|
|
165
|
+
context.stroke());
|
|
166
|
+
}
|
|
167
|
+
if (cap && forceShowCap) {
|
|
168
|
+
const {startAngle: sa, endAngle: ea} = arc.getParsedAngle();
|
|
169
|
+
if (abs(ea - sa) >= pi2 - epsilon) {
|
|
170
|
+
context.beginPath();
|
|
171
|
+
const capAngle = Math.abs(outerRadius - innerRadius) / 2 / outerRadius, {endAngle: endAngle = arcAttribute.endAngle, fillColor: fillColor = arcAttribute.fillColor} = arc.attribute, startAngle = endAngle;
|
|
172
|
+
if (this.drawArcTailCapPath(arc, context, x, y, outerRadius, innerRadius, startAngle, startAngle + capAngle),
|
|
173
|
+
doFill) {
|
|
174
|
+
const color = fillColor;
|
|
175
|
+
if ("conical" === color.gradient) {
|
|
176
|
+
const lastColor = getConicGradientAt(0, 0, endAngle, color);
|
|
177
|
+
fillCb || fillVisible && (context.setCommonStyle(arc, arc.attribute, x, y, arcAttribute),
|
|
178
|
+
context.fillStyle = lastColor, context.fill());
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
doStroke && (strokeCb || sVisible && (context.setStrokeStyle(arc, arc.attribute, x, y, arcAttribute),
|
|
182
|
+
context.stroke()));
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
this._arcRenderContribitions || (this._arcRenderContribitions = this.arcRenderContribitions.getContributions() || []),
|
|
186
|
+
this._arcRenderContribitions.forEach((c => {
|
|
187
|
+
c.time === BaseRenderContributionTime.afterFillStroke && c.drawShape(arc, context, x, y, doFill, doStroke, fVisible, sVisible, arcAttribute, fillCb, strokeCb);
|
|
188
|
+
}));
|
|
189
|
+
}
|
|
190
|
+
draw(arc, renderService, drawContext, params) {
|
|
191
|
+
const {context: context} = drawContext;
|
|
192
|
+
if (!context) return;
|
|
193
|
+
const arcAttribute = getTheme(arc, null == params ? void 0 : params.theme).arc;
|
|
194
|
+
context.highPerformanceSave();
|
|
195
|
+
let {x: x = arcAttribute.x, y: y = arcAttribute.y} = arc.attribute;
|
|
196
|
+
if (arc.transMatrix.onlyTranslate()) {
|
|
197
|
+
const point = arc.getOffsetXY(arcAttribute);
|
|
198
|
+
x += point.x, y += point.y, context.setTransformForCurrent();
|
|
199
|
+
} else x = 0, y = 0, context.transformFromMatrix(arc.transMatrix, !0);
|
|
200
|
+
drawPathProxy(arc, context, x, y, drawContext, params) || this.drawShape(arc, context, x, y, drawContext, params),
|
|
201
|
+
context.highPerformanceRestore();
|
|
202
|
+
}
|
|
203
|
+
};
|
|
204
|
+
|
|
205
|
+
DefaultCanvasArcRender = __decorate([ injectable(), __param(0, inject(ContributionProvider)), __param(0, named(ArcRenderContribution)), __metadata("design:paramtypes", [ Object ]) ], DefaultCanvasArcRender);
|
|
206
|
+
|
|
207
|
+
export { DefaultCanvasArcRender };
|
|
208
|
+
//# sourceMappingURL=arc-render.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/render/contributions/render/arc-render.ts"],"names":[],"mappings":"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","file":"arc-render.js","sourcesContent":["import { abs, acos, atan2, cos, epsilon, min, pi, sin, sqrt, pi2 } from '@visactor/vutils';\nimport { inject, injectable, named } from 'inversify';\nimport { ARC_NUMBER_TYPE, getTheme } from '../../../graphic';\nimport { ContributionProvider, parseStroke } from '../../../common';\nimport {\n IContext2d,\n IArc,\n IPath2D,\n IGraphicAttribute,\n IMarkAttribute,\n IThemeAttribute,\n IGradientColor\n} from '../../../interface';\nimport { IDrawContext, IRenderService } from '../../render-service';\nimport { IGraphicRender, IGraphicRenderDrawParams } from './graphic-render';\nimport { drawPathProxy, fillVisible, runFill, runStroke, strokeVisible } from './utils';\nimport { getConicGradientAt } from '../../../canvas';\nimport { ArcRenderContribution, IArcRenderContribution } from './contributions/arc-contribution-render';\nimport { BaseRenderContributionTime } from './contributions/base-contribution-render';\n/**\n * 部分源码参考 https://github.com/d3/d3-shape/\n * Copyright 2010-2022 Mike Bostock\n\n Permission to use, copy, modify, and/or distribute this software for any purpose\n with or without fee is hereby granted, provided that the above copyright notice\n and this permission notice appear in all copies.\n\n THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\n REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND\n FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\n INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS\n OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER\n TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF\n THIS SOFTWARE.\n */\n\n// 基于d3-shape\n// https://github.com/d3/d3-shape/blob/main/src/arc.js\nfunction intersect(x0: number, y0: number, x1: number, y1: number, x2: number, y2: number, x3: number, y3: number) {\n const x10 = x1 - x0;\n const y10 = y1 - y0;\n const x32 = x3 - x2;\n const y32 = y3 - y2;\n let t = y32 * x10 - x32 * y10;\n if (t * t < epsilon) {\n return [];\n }\n t = (x32 * (y0 - y2) - y32 * (x0 - x2)) / t;\n\n return [x0 + t * x10, y0 + t * y10];\n}\n\n// 基于d3-shape\n// https://github.com/d3/d3-shape/blob/main/src/arc.js\n// Compute perpendicular offset line of length rc.\n// http://mathworld.wolfram.com/Circle-LineIntersection.html\nfunction cornerTangents(x0: number, y0: number, x1: number, y1: number, r1: number, rc: number, clockwise: number) {\n const x01 = x0 - x1;\n const y01 = y0 - y1;\n const lo = (clockwise ? rc : -rc) / Math.sqrt(x01 * x01 + y01 * y01);\n const ox = lo * y01;\n const oy = -lo * x01;\n const x11 = x0 + ox;\n const y11 = y0 + oy;\n const x10 = x1 + ox;\n const y10 = y1 + oy;\n const x00 = (x11 + x10) / 2;\n const y00 = (y11 + y10) / 2;\n const dx = x10 - x11;\n const dy = y10 - y11;\n const d2 = dx * dx + dy * dy;\n const r = r1 - rc;\n const D = x11 * y10 - x10 * y11;\n const d = (dy < 0 ? -1 : 1) * Math.sqrt(Math.max(0, r * r * d2 - D * D));\n let cx0 = (D * dy - dx * d) / d2;\n let cy0 = (-D * dx - dy * d) / d2;\n const cx1 = (D * dy + dx * d) / d2;\n const cy1 = (-D * dx + dy * d) / d2;\n const dx0 = cx0 - x00;\n const dy0 = cy0 - y00;\n const dx1 = cx1 - x00;\n const dy1 = cy1 - y00;\n\n // Pick the closer of the two intersection points.\n // TODO Is there a faster way to determine which intersection to use?\n if (dx0 * dx0 + dy0 * dy0 > dx1 * dx1 + dy1 * dy1) {\n (cx0 = cx1), (cy0 = cy1);\n }\n\n return {\n cx: cx0,\n cy: cy0,\n x01: -ox,\n y01: -oy,\n x11: cx0 * (r1 / r - 1),\n y11: cy0 * (r1 / r - 1)\n };\n}\n\n// 基于d3-shape\n// https://github.com/d3/d3-shape/blob/main/src/arc.js\nexport function drawArcPath(\n arc: IArc,\n context: IContext2d | IPath2D,\n cx: number,\n cy: number,\n outerRadius: number,\n innerRadius: number,\n partStroke?: boolean[]\n) {\n const { startAngle, endAngle } = arc.getParsedAngle();\n\n const deltaAngle = abs(endAngle - startAngle);\n const clockwise: boolean = endAngle > startAngle;\n let collapsedToLine: boolean = false;\n // 规范化outerRadius和innerRadius\n if (outerRadius < innerRadius) {\n const temp = outerRadius;\n outerRadius = innerRadius;\n innerRadius = temp;\n }\n // Is it a point?\n if (outerRadius <= epsilon) {\n context.moveTo(cx, cy);\n } else if (deltaAngle >= pi2 - epsilon) {\n // 是个完整的圆环\n // Or is it a circle or annulus?\n context.moveTo(cx + outerRadius * cos(startAngle), cy + outerRadius * sin(startAngle));\n context.arc(cx, cy, outerRadius, startAngle, endAngle, !clockwise);\n if (innerRadius > epsilon) {\n context.moveTo(cx + innerRadius * cos(endAngle), cy + innerRadius * sin(endAngle));\n context.arc(cx, cy, innerRadius, endAngle, startAngle, clockwise);\n }\n } else {\n const cornerRadius = arc.getParsedCornerRadius();\n // Or is it a circular or annular sector?\n const { outerDeltaAngle, innerDeltaAngle, outerStartAngle, outerEndAngle, innerEndAngle, innerStartAngle } =\n arc.getParsePadAngle(startAngle, endAngle);\n\n const outerCornerRadiusStart = cornerRadius;\n const outerCornerRadiusEnd = cornerRadius;\n const innerCornerRadiusEnd = cornerRadius;\n const innerCornerRadiusStart = cornerRadius;\n const maxOuterCornerRadius = Math.max(outerCornerRadiusEnd, outerCornerRadiusStart);\n const maxInnerCornerRadius = Math.max(innerCornerRadiusEnd, innerCornerRadiusStart);\n let limitedOcr = maxOuterCornerRadius;\n let limitedIcr = maxInnerCornerRadius;\n\n const xors = outerRadius * cos(outerStartAngle);\n const yors = outerRadius * sin(outerStartAngle);\n const xire = innerRadius * cos(innerEndAngle);\n const yire = innerRadius * sin(innerEndAngle);\n\n // Apply rounded corners?\n let xore: number;\n let yore: number;\n let xirs: number;\n let yirs: number;\n\n if (maxInnerCornerRadius > epsilon || maxOuterCornerRadius > epsilon) {\n xore = outerRadius * cos(outerEndAngle);\n yore = outerRadius * sin(outerEndAngle);\n xirs = innerRadius * cos(innerStartAngle);\n yirs = innerRadius * sin(innerStartAngle);\n\n // Restrict the corner radius according to the sector angle.\n if (deltaAngle < pi) {\n const oc = intersect(xors, yors, xirs, yirs, xore, yore, xire, yire);\n\n if (oc) {\n const ax = xors - oc[0];\n const ay = yors - oc[1];\n const bx = xore - oc[0];\n const by = yore - oc[1];\n const kc = 1 / sin(acos((ax * bx + ay * by) / (sqrt(ax * ax + ay * ay) * sqrt(bx * bx + by * by))) / 2);\n const lc = sqrt(oc[0] * oc[0] + oc[1] * oc[1]);\n\n limitedIcr = min(maxInnerCornerRadius, (innerRadius - lc) / (kc - 1));\n limitedOcr = min(maxOuterCornerRadius, (outerRadius - lc) / (kc + 1));\n }\n }\n }\n\n // Is the sector collapsed to a line?\n // 角度过小,会将acr处理为圆心到半径的一条线\n if (outerDeltaAngle < 0.001) {\n // 如果有左右边的话\n if (partStroke && (partStroke[3] || partStroke[1])) {\n context.moveTo(cx + xors, cy + yors);\n }\n collapsedToLine = true;\n } else if (limitedOcr > epsilon) {\n const cornerRadiusStart = min(outerCornerRadiusStart, limitedOcr);\n const cornerRadiusEnd = min(outerCornerRadiusEnd, limitedOcr);\n // Does the sector’s outer ring have rounded corners?\n const t0 = cornerTangents(xirs, yirs, xors, yors, outerRadius, cornerRadiusStart, Number(clockwise));\n const t1 = cornerTangents(xore, yore, xire, yire, outerRadius, cornerRadiusEnd, Number(clockwise));\n\n // Have the corners merged?\n if (limitedOcr < maxOuterCornerRadius && cornerRadiusStart === cornerRadiusEnd) {\n if (!partStroke || partStroke[0]) {\n context.moveTo(cx + t0.cx + t0.x01, cy + t0.cy + t0.y01);\n context.arc(cx + t0.cx, cy + t0.cy, limitedOcr, atan2(t0.y01, t0.x01), atan2(t1.y01, t1.x01), !clockwise);\n } else {\n context.moveTo(\n cx + t0.cx + limitedOcr * cos(atan2(t1.y01, t1.x01)),\n cy + t0.cy + limitedOcr * sin(atan2(t1.y01, t1.x01))\n );\n }\n } else {\n // Otherwise, draw the two corners and the ring.\n if (!partStroke || partStroke[0]) {\n context.moveTo(cx + t0.cx + t0.x01, cy + t0.cy + t0.y01);\n cornerRadiusStart > 0 &&\n context.arc(\n cx + t0.cx,\n cy + t0.cy,\n cornerRadiusStart,\n atan2(t0.y01, t0.x01),\n atan2(t0.y11, t0.x11),\n !clockwise\n );\n context.arc(\n cx,\n cy,\n outerRadius,\n atan2(t0.cy + t0.y11, t0.cx + t0.x11),\n atan2(t1.cy + t1.y11, t1.cx + t1.x11),\n !clockwise\n );\n cornerRadiusEnd > 0 &&\n context.arc(\n cx + t1.cx,\n cy + t1.cy,\n cornerRadiusEnd,\n atan2(t1.y11, t1.x11),\n atan2(t1.y01, t1.x01),\n !clockwise\n );\n } else {\n if (cornerRadiusEnd > 0) {\n context.moveTo(\n cx + t1.cx + cornerRadiusEnd * cos(atan2(t1.y01, t1.x01)),\n cy + t1.cy + cornerRadiusEnd * sin(atan2(t1.y01, t1.x01))\n );\n } else {\n context.moveTo(cx + xore, cy + outerRadius * sin(outerEndAngle));\n }\n }\n }\n } else {\n // Or is the outer ring just a circular arc?\n if (!partStroke || partStroke[0]) {\n context.moveTo(cx + xors, cy + yors);\n context.arc(cx, cy, outerRadius, outerStartAngle, outerEndAngle, !clockwise);\n } else {\n // context.moveTo(cx + outerRadius * cos(outerEndAngle), cy + yore);\n }\n }\n // Is there no inner ring, and it’s a circular sector?\n // Or perhaps it’s an annular sector collapsed due to padding?\n if (!(innerRadius > epsilon) || innerDeltaAngle < 0.001) {\n if (!partStroke || partStroke[1]) {\n context.lineTo(cx + xire, cy + yire);\n } else {\n context.moveTo(cx + xire, cy + yire);\n }\n collapsedToLine = true;\n } else if (limitedIcr > epsilon) {\n const cornerRadiusStart = min(innerCornerRadiusStart, limitedIcr);\n const cornerRadiusEnd = min(innerCornerRadiusEnd, limitedIcr);\n // Does the sector’s inner ring (or point) have rounded corners?\n const t0 = cornerTangents(xire, yire, xore, yore, innerRadius, -cornerRadiusEnd, Number(clockwise));\n const t1 = cornerTangents(xors, yors, xirs, yirs, innerRadius, -cornerRadiusStart, Number(clockwise));\n\n if (!partStroke || partStroke[1]) {\n context.lineTo(cx + t0.cx + t0.x01, cy + t0.cy + t0.y01);\n } else {\n context.moveTo(cx + t0.cx + t0.x01, cy + t0.cy + t0.y01);\n }\n\n // Have the corners merged?\n if (limitedIcr < maxInnerCornerRadius && cornerRadiusStart === cornerRadiusEnd) {\n const arcEndAngle = atan2(t1.y01, t1.x01);\n if (!partStroke || partStroke[2]) {\n context.arc(cx + t0.cx, cy + t0.cy, limitedIcr, atan2(t0.y01, t0.x01), arcEndAngle, !clockwise);\n } else {\n context.moveTo(cx + t0.cx + cos(arcEndAngle), cy + t0.cy + sin(arcEndAngle));\n }\n } else {\n // Otherwise, draw the two corners and the ring.\n if (!partStroke || partStroke[2]) {\n cornerRadiusEnd > 0 &&\n context.arc(\n cx + t0.cx,\n cy + t0.cy,\n cornerRadiusEnd,\n atan2(t0.y01, t0.x01),\n atan2(t0.y11, t0.x11),\n !clockwise\n );\n context.arc(\n cx,\n cy,\n innerRadius,\n atan2(t0.cy + t0.y11, t0.cx + t0.x11),\n atan2(t1.cy + t1.y11, t1.cx + t1.x11),\n clockwise\n );\n cornerRadiusStart > 0 &&\n context.arc(\n cx + t1.cx,\n cy + t1.cy,\n cornerRadiusStart,\n atan2(t1.y11, t1.x11),\n atan2(t1.y01, t1.x01),\n !clockwise\n );\n } else {\n if (cornerRadiusStart > 0) {\n context.moveTo(\n cx + t1.cx + cornerRadiusStart * cos(atan2(t1.y01, t1.x01)),\n cy + t1.cy + cornerRadiusStart * sin(atan2(t1.y01, t1.x01))\n );\n } else {\n context.moveTo(cx + xirs, cy + yirs);\n }\n }\n }\n } else {\n // Or is the inner ring just a circular arc?\n if (!partStroke || partStroke[1]) {\n context.lineTo(cx + xire, cy + yire);\n } else {\n context.moveTo(cx + xire, cy + yire);\n }\n if (!partStroke || partStroke[2]) {\n context.arc(cx, cy, innerRadius, innerEndAngle, innerStartAngle, clockwise);\n } else {\n context.moveTo(cx + innerRadius * cos(innerStartAngle), cy + innerRadius * sin(innerStartAngle));\n }\n }\n }\n\n if (!partStroke) {\n context.closePath();\n } else if (partStroke[3]) {\n context.lineTo(cx + outerRadius * cos(endAngle), cy + outerRadius * cos(endAngle));\n }\n\n return collapsedToLine;\n}\n\n@injectable()\nexport class DefaultCanvasArcRender implements IGraphicRender {\n type: 'arc';\n numberType: number = ARC_NUMBER_TYPE;\n\n protected _arcRenderContribitions: IArcRenderContribution[];\n constructor(\n @inject(ContributionProvider)\n @named(ArcRenderContribution)\n protected readonly arcRenderContribitions: ContributionProvider<IArcRenderContribution>\n ) {}\n\n // drawArcPath(\n // arc: IArc,\n // context: IContext2d | IPath2D,\n // cx: number,\n // cy: number,\n // outerRadius: number,\n // innerRadius: number,\n // partStroke?: boolean[]\n // ) {\n // const { startAngle, endAngle } = arc.getParsedAngle();\n\n // const deltaAngle = abs(endAngle - startAngle);\n // const clockwise: boolean = endAngle > startAngle;\n // let collapsedToLine: boolean = false;\n // // 规范化outerRadius和innerRadius\n // if (outerRadius < innerRadius) {\n // const temp = outerRadius;\n // outerRadius = innerRadius;\n // innerRadius = temp;\n // }\n // // Is it a point?\n // if (outerRadius <= epsilon) {\n // context.moveTo(cx, cy);\n // } else if (deltaAngle >= pi2 - epsilon) {\n // // 是个完整的圆环\n // // Or is it a circle or annulus?\n // context.moveTo(cx + outerRadius * cos(startAngle), cy + outerRadius * sin(startAngle));\n // context.arc(cx, cy, outerRadius, startAngle, endAngle, !clockwise);\n // if (innerRadius > epsilon) {\n // context.moveTo(cx + innerRadius * cos(endAngle), cy + innerRadius * sin(endAngle));\n // context.arc(cx, cy, innerRadius, endAngle, startAngle, clockwise);\n // }\n // } else {\n // const cornerRadius = arc.getParsedCornerRadius();\n // // Or is it a circular or annular sector?\n // const { outerDeltaAngle, innerDeltaAngle, outerStartAngle, outerEndAngle, innerEndAngle, innerStartAngle } =\n // arc.getParsePadAngle(startAngle, endAngle);\n\n // const outerCornerRadiusStart = cornerRadius;\n // const outerCornerRadiusEnd = cornerRadius;\n // const innerCornerRadiusEnd = cornerRadius;\n // const innerCornerRadiusStart = cornerRadius;\n // const maxOuterCornerRadius = Math.max(outerCornerRadiusEnd, outerCornerRadiusStart);\n // const maxInnerCornerRadius = Math.max(innerCornerRadiusEnd, innerCornerRadiusStart);\n // let limitedOcr = maxOuterCornerRadius;\n // let limitedIcr = maxInnerCornerRadius;\n\n // const xors = outerRadius * cos(outerStartAngle);\n // const yors = outerRadius * sin(outerStartAngle);\n // const xire = innerRadius * cos(innerEndAngle);\n // const yire = innerRadius * sin(innerEndAngle);\n\n // // Apply rounded corners?\n // let xore: number;\n // let yore: number;\n // let xirs: number;\n // let yirs: number;\n\n // if (maxInnerCornerRadius > epsilon || maxOuterCornerRadius > epsilon) {\n // xore = outerRadius * cos(outerEndAngle);\n // yore = outerRadius * sin(outerEndAngle);\n // xirs = innerRadius * cos(innerStartAngle);\n // yirs = innerRadius * sin(innerStartAngle);\n\n // // Restrict the corner radius according to the sector angle.\n // if (deltaAngle < pi) {\n // const oc = intersect(xors, yors, xirs, yirs, xore, yore, xire, yire);\n\n // if (oc) {\n // const ax = xors - oc[0];\n // const ay = yors - oc[1];\n // const bx = xore - oc[0];\n // const by = yore - oc[1];\n // const kc = 1 / sin(acos((ax * bx + ay * by) / (sqrt(ax * ax + ay * ay) * sqrt(bx * bx + by * by))) / 2);\n // const lc = sqrt(oc[0] * oc[0] + oc[1] * oc[1]);\n\n // limitedIcr = min(maxInnerCornerRadius, (innerRadius - lc) / (kc - 1));\n // limitedOcr = min(maxOuterCornerRadius, (outerRadius - lc) / (kc + 1));\n // }\n // }\n // }\n\n // // Is the sector collapsed to a line?\n // // 角度过小,会将acr处理为圆心到半径的一条线\n // if (outerDeltaAngle < 0.001) {\n // // 如果有左右边的话\n // if (partStroke && (partStroke[3] || partStroke[1])) {\n // context.moveTo(cx + xors, cy + yors);\n // }\n // collapsedToLine = true;\n // } else if (limitedOcr > epsilon) {\n // const cornerRadiusStart = min(outerCornerRadiusStart, limitedOcr);\n // const cornerRadiusEnd = min(outerCornerRadiusEnd, limitedOcr);\n // // Does the sector’s outer ring have rounded corners?\n // const t0 = cornerTangents(xirs, yirs, xors, yors, outerRadius, cornerRadiusStart, Number(clockwise));\n // const t1 = cornerTangents(xore, yore, xire, yire, outerRadius, cornerRadiusEnd, Number(clockwise));\n\n // // Have the corners merged?\n // if (limitedOcr < maxOuterCornerRadius && cornerRadiusStart === cornerRadiusEnd) {\n // if (!partStroke || partStroke[0]) {\n // context.moveTo(cx + t0.cx + t0.x01, cy + t0.cy + t0.y01);\n // context.arc(cx + t0.cx, cy + t0.cy, limitedOcr, atan2(t0.y01, t0.x01), atan2(t1.y01, t1.x01), !clockwise);\n // } else {\n // context.moveTo(\n // cx + t0.cx + limitedOcr * cos(atan2(t1.y01, t1.x01)),\n // cy + t0.cy + limitedOcr * sin(atan2(t1.y01, t1.x01))\n // );\n // }\n // } else {\n // // Otherwise, draw the two corners and the ring.\n // if (!partStroke || partStroke[0]) {\n // context.moveTo(cx + t0.cx + t0.x01, cy + t0.cy + t0.y01);\n // cornerRadiusStart > 0 &&\n // context.arc(\n // cx + t0.cx,\n // cy + t0.cy,\n // cornerRadiusStart,\n // atan2(t0.y01, t0.x01),\n // atan2(t0.y11, t0.x11),\n // !clockwise\n // );\n // context.arc(\n // cx,\n // cy,\n // outerRadius,\n // atan2(t0.cy + t0.y11, t0.cx + t0.x11),\n // atan2(t1.cy + t1.y11, t1.cx + t1.x11),\n // !clockwise\n // );\n // cornerRadiusEnd > 0 &&\n // context.arc(\n // cx + t1.cx,\n // cy + t1.cy,\n // cornerRadiusEnd,\n // atan2(t1.y11, t1.x11),\n // atan2(t1.y01, t1.x01),\n // !clockwise\n // );\n // } else {\n // if (cornerRadiusEnd > 0) {\n // context.moveTo(\n // cx + t1.cx + cornerRadiusEnd * cos(atan2(t1.y01, t1.x01)),\n // cy + t1.cy + cornerRadiusEnd * sin(atan2(t1.y01, t1.x01))\n // );\n // } else {\n // context.moveTo(cx + xore, cy + outerRadius * sin(outerEndAngle));\n // }\n // }\n // }\n // } else {\n // // Or is the outer ring just a circular arc?\n // if (!partStroke || partStroke[0]) {\n // context.moveTo(cx + xors, cy + yors);\n // context.arc(cx, cy, outerRadius, outerStartAngle, outerEndAngle, !clockwise);\n // } else {\n // // context.moveTo(cx + outerRadius * cos(outerEndAngle), cy + yore);\n // }\n // }\n // // Is there no inner ring, and it’s a circular sector?\n // // Or perhaps it’s an annular sector collapsed due to padding?\n // if (!(innerRadius > epsilon) || innerDeltaAngle < 0.001) {\n // if (!partStroke || partStroke[1]) {\n // context.lineTo(cx + xire, cy + yire);\n // } else {\n // context.moveTo(cx + xire, cy + yire);\n // }\n // collapsedToLine = true;\n // } else if (limitedIcr > epsilon) {\n // const cornerRadiusStart = min(innerCornerRadiusStart, limitedIcr);\n // const cornerRadiusEnd = min(innerCornerRadiusEnd, limitedIcr);\n // // Does the sector’s inner ring (or point) have rounded corners?\n // const t0 = cornerTangents(xire, yire, xore, yore, innerRadius, -cornerRadiusEnd, Number(clockwise));\n // const t1 = cornerTangents(xors, yors, xirs, yirs, innerRadius, -cornerRadiusStart, Number(clockwise));\n\n // if (!partStroke || partStroke[1]) {\n // context.lineTo(cx + t0.cx + t0.x01, cy + t0.cy + t0.y01);\n // } else {\n // context.moveTo(cx + t0.cx + t0.x01, cy + t0.cy + t0.y01);\n // }\n\n // // Have the corners merged?\n // if (limitedIcr < maxInnerCornerRadius && cornerRadiusStart === cornerRadiusEnd) {\n // const arcEndAngle = atan2(t1.y01, t1.x01);\n // if (!partStroke || partStroke[2]) {\n // context.arc(cx + t0.cx, cy + t0.cy, limitedIcr, atan2(t0.y01, t0.x01), arcEndAngle, !clockwise);\n // } else {\n // context.moveTo(cx + t0.cx + cos(arcEndAngle), cy + t0.cy + sin(arcEndAngle));\n // }\n // } else {\n // // Otherwise, draw the two corners and the ring.\n // if (!partStroke || partStroke[2]) {\n // cornerRadiusEnd > 0 &&\n // context.arc(\n // cx + t0.cx,\n // cy + t0.cy,\n // cornerRadiusEnd,\n // atan2(t0.y01, t0.x01),\n // atan2(t0.y11, t0.x11),\n // !clockwise\n // );\n // context.arc(\n // cx,\n // cy,\n // innerRadius,\n // atan2(t0.cy + t0.y11, t0.cx + t0.x11),\n // atan2(t1.cy + t1.y11, t1.cx + t1.x11),\n // clockwise\n // );\n // cornerRadiusStart > 0 &&\n // context.arc(\n // cx + t1.cx,\n // cy + t1.cy,\n // cornerRadiusStart,\n // atan2(t1.y11, t1.x11),\n // atan2(t1.y01, t1.x01),\n // !clockwise\n // );\n // } else {\n // if (cornerRadiusStart > 0) {\n // context.moveTo(\n // cx + t1.cx + cornerRadiusStart * cos(atan2(t1.y01, t1.x01)),\n // cy + t1.cy + cornerRadiusStart * sin(atan2(t1.y01, t1.x01))\n // );\n // } else {\n // context.moveTo(cx + xirs, cy + yirs);\n // }\n // }\n // }\n // } else {\n // // Or is the inner ring just a circular arc?\n // if (!partStroke || partStroke[1]) {\n // context.lineTo(cx + xire, cy + yire);\n // } else {\n // context.moveTo(cx + xire, cy + yire);\n // }\n // if (!partStroke || partStroke[2]) {\n // context.arc(cx, cy, innerRadius, innerEndAngle, innerStartAngle, clockwise);\n // } else {\n // context.moveTo(cx + innerRadius * cos(innerStartAngle), cy + innerRadius * sin(innerStartAngle));\n // }\n // }\n // }\n\n // if (!partStroke) {\n // context.closePath();\n // } else if (partStroke[3]) {\n // context.lineTo(cx + outerRadius * cos(endAngle), cy + outerRadius * cos(endAngle));\n // }\n\n // return collapsedToLine;\n // }\n\n // 绘制尾部cap\n drawArcTailCapPath(\n arc: IArc,\n context: IContext2d | IPath2D,\n cx: number,\n cy: number,\n outerRadius: number,\n innerRadius: number,\n _sa: number,\n _ea: number\n ) {\n const capAngle = _ea - _sa;\n const data = arc.getParsedAngle();\n const startAngle = data.startAngle;\n let endAngle = data.endAngle;\n endAngle = _ea;\n const deltaAngle = abs(endAngle - startAngle);\n const clockwise: boolean = endAngle > startAngle;\n let collapsedToLine: boolean = false;\n // 规范化outerRadius和innerRadius\n if (outerRadius < innerRadius) {\n const temp = outerRadius;\n outerRadius = innerRadius;\n innerRadius = temp;\n }\n\n const cornerRadius = arc.getParsedCornerRadius();\n // Or is it a circular or annular sector?\n const { outerDeltaAngle, innerDeltaAngle, outerStartAngle, outerEndAngle, innerEndAngle, innerStartAngle } =\n arc.getParsePadAngle(startAngle, endAngle);\n\n const outerCornerRadiusStart = cornerRadius;\n const outerCornerRadiusEnd = cornerRadius;\n const innerCornerRadiusEnd = cornerRadius;\n const innerCornerRadiusStart = cornerRadius;\n const maxOuterCornerRadius = Math.max(outerCornerRadiusEnd, outerCornerRadiusStart);\n const maxInnerCornerRadius = Math.max(innerCornerRadiusEnd, innerCornerRadiusStart);\n let limitedOcr = maxOuterCornerRadius;\n let limitedIcr = maxInnerCornerRadius;\n\n const xors = outerRadius * cos(outerStartAngle);\n const yors = outerRadius * sin(outerStartAngle);\n const xire = innerRadius * cos(innerEndAngle);\n const yire = innerRadius * sin(innerEndAngle);\n\n // Apply rounded corners?\n let xore: number;\n let yore: number;\n let xirs: number;\n let yirs: number;\n\n if (maxInnerCornerRadius > epsilon || maxOuterCornerRadius > epsilon) {\n xore = outerRadius * cos(outerEndAngle);\n yore = outerRadius * sin(outerEndAngle);\n xirs = innerRadius * cos(innerStartAngle);\n yirs = innerRadius * sin(innerStartAngle);\n\n // Restrict the corner radius according to the sector angle.\n if (deltaAngle < pi) {\n const oc = intersect(xors, yors, xirs, yirs, xore, yore, xire, yire);\n\n if (oc) {\n const ax = xors - oc[0];\n const ay = yors - oc[1];\n const bx = xore - oc[0];\n const by = yore - oc[1];\n const kc = 1 / sin(acos((ax * bx + ay * by) / (sqrt(ax * ax + ay * ay) * sqrt(bx * bx + by * by))) / 2);\n const lc = sqrt(oc[0] * oc[0] + oc[1] * oc[1]);\n\n limitedIcr = min(maxInnerCornerRadius, (innerRadius - lc) / (kc - 1));\n limitedOcr = min(maxOuterCornerRadius, (outerRadius - lc) / (kc + 1));\n }\n }\n }\n\n if (limitedOcr > epsilon) {\n const cornerRadiusStart = min(outerCornerRadiusStart, limitedOcr);\n const cornerRadiusEnd = min(outerCornerRadiusEnd, limitedOcr);\n // Does the sector’s outer ring have rounded corners?\n const t0 = cornerTangents(xirs, yirs, xors, yors, outerRadius, cornerRadiusStart, Number(clockwise));\n const t1 = cornerTangents(xore, yore, xire, yire, outerRadius, cornerRadiusEnd, Number(clockwise));\n\n // Have the corners merged?\n if (limitedOcr < maxOuterCornerRadius && cornerRadiusStart === cornerRadiusEnd) {\n context.moveTo(cx + t0.cx + t0.x01, cy + t0.cy + t0.y01);\n context.arc(cx + t0.cx, cy + t0.cy, limitedOcr, atan2(t0.y01, t0.x01), atan2(t1.y01, t1.x01), !clockwise);\n } else {\n const a1 = endAngle - capAngle - 0.03;\n const a2 = atan2(t1.y11, t1.x11);\n context.arc(cx, cy, outerRadius, a1, a2, !clockwise);\n cornerRadiusEnd > 0 &&\n context.arc(\n cx + t1.cx,\n cy + t1.cy,\n cornerRadiusEnd,\n atan2(t1.y11, t1.x11),\n atan2(t1.y01, t1.x01),\n !clockwise\n );\n }\n } else {\n context.moveTo(cx + xors, cy + yors);\n }\n // else {\n // // Or is the outer ring just a circular arc?\n // if (!partStroke || partStroke[0]) {\n // context.moveTo(cx + xors, cy + yors);\n // context.arc(cx, cy, outerRadius, outerStartAngle, outerEndAngle, !clockwise);\n // } else {\n // // context.moveTo(cx + outerRadius * cos(outerEndAngle), cy + yore);\n // }\n // }\n // // Is there no inner ring, and it’s a circular sector?\n // // Or perhaps it’s an annular sector collapsed due to padding?\n if (!(innerRadius > epsilon) || innerDeltaAngle < 0.001) {\n context.lineTo(cx + xire, cy + yire);\n collapsedToLine = true;\n } else if (limitedIcr > epsilon) {\n const cornerRadiusStart = min(innerCornerRadiusStart, limitedIcr);\n const cornerRadiusEnd = min(innerCornerRadiusEnd, limitedIcr);\n // Does the sector’s inner ring (or point) have rounded corners?\n const t0 = cornerTangents(xire, yire, xore, yore, innerRadius, -cornerRadiusEnd, Number(clockwise));\n const t1 = cornerTangents(xors, yors, xirs, yirs, innerRadius, -cornerRadiusStart, Number(clockwise));\n\n context.lineTo(cx + t0.cx + t0.x01, cy + t0.cy + t0.y01);\n\n // Have the corners merged?\n if (limitedIcr < maxInnerCornerRadius && cornerRadiusStart === cornerRadiusEnd) {\n const arcEndAngle = atan2(t1.y01, t1.x01);\n context.arc(cx + t0.cx, cy + t0.cy, limitedIcr, atan2(t0.y01, t0.x01), arcEndAngle, !clockwise);\n } else {\n cornerRadiusEnd > 0 &&\n context.arc(\n cx + t0.cx,\n cy + t0.cy,\n cornerRadiusEnd,\n atan2(t0.y01, t0.x01),\n atan2(t0.y11, t0.x11),\n !clockwise\n );\n const a1 = atan2(t0.cy + t0.y11, t0.cx + t0.x11);\n const a2 = endAngle - capAngle - 0.03;\n context.arc(cx, cy, innerRadius, a1, a2, clockwise);\n }\n } else {\n context.lineTo(cx + innerRadius * cos(innerStartAngle), cy + innerRadius * sin(innerStartAngle));\n }\n\n return collapsedToLine;\n }\n\n drawShape(\n arc: IArc,\n context: IContext2d,\n x: number,\n y: number,\n drawContext: IDrawContext,\n params?: IGraphicRenderDrawParams,\n fillCb?: (\n ctx: IContext2d,\n markAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => boolean,\n strokeCb?: (\n ctx: IContext2d,\n markAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => boolean\n ) {\n // const arcAttribute = graphicService.themeService.getCurrentTheme().arcAttribute;\n const arcAttribute = getTheme(arc, params?.theme).arc;\n\n const {\n fill = arcAttribute.fill == null ? !!arc.attribute.fillColor : arcAttribute.fill,\n background,\n stroke = arcAttribute.stroke == null ? !!arc.attribute.strokeColor : arcAttribute.stroke,\n opacity = arcAttribute.opacity,\n fillOpacity = arcAttribute.fillOpacity,\n lineWidth = arcAttribute.lineWidth,\n strokeOpacity = arcAttribute.strokeOpacity,\n visible = arcAttribute.visible\n } = arc.attribute;\n // 不绘制或者透明\n const fVisible = fillVisible(opacity, fillOpacity);\n const sVisible = strokeVisible(opacity, strokeOpacity);\n const doFill = runFill(fill);\n const doStroke = runStroke(stroke, lineWidth);\n\n if (!(arc.valid && visible)) {\n return;\n }\n\n if (!(doFill || doStroke || background)) {\n return;\n }\n\n // 如果存在fillCb和strokeCb,那就不直接跳过\n if (!(fVisible || sVisible || fillCb || strokeCb || background)) {\n return;\n }\n\n const {\n outerRadius = arcAttribute.outerRadius,\n innerRadius = arcAttribute.innerRadius,\n cap = arcAttribute.cap,\n forceShowCap = arcAttribute.forceShowCap\n } = arc.attribute;\n\n const { isFullStroke, stroke: arrayStroke } = parseStroke(stroke);\n if (doFill || isFullStroke) {\n context.beginPath();\n // if (arc.shouldUpdateShape()) {\n // // 更新shape\n // arc.cache = new Path2D(context);\n // this.drawArcPath(arc, arc.cache, x, y, outerRadius, innerRadius);\n // arc.clearUpdateShapeTag();\n // } else {\n // if (arc.cache) {\n // renderCommandList(arc.cache.commandList, context);\n // }\n // }\n // 测试后,cache对于重绘性能提升不大,但是在首屏有一定性能损耗,因此arc不再使用cache\n drawArcPath(arc, context, x, y, outerRadius, innerRadius);\n\n if (!this._arcRenderContribitions) {\n this._arcRenderContribitions = this.arcRenderContribitions.getContributions() || [];\n this._arcRenderContribitions.sort((a, b) => b.order - a.order);\n }\n this._arcRenderContribitions.forEach(c => {\n if (c.time === BaseRenderContributionTime.beforeFillStroke) {\n // c.useStyle && context.setCommonStyle(arc, arc.attribute, x, y, arcAttribute);\n c.drawShape(arc, context, x, y, doFill, doStroke, fVisible, sVisible, arcAttribute, fillCb, strokeCb);\n }\n });\n\n // shadow\n context.setShadowStyle && context.setShadowStyle(arc, arc.attribute, arcAttribute);\n\n if (doFill) {\n if (fillCb) {\n fillCb(context, arc.attribute, arcAttribute);\n } else if (fVisible) {\n context.setCommonStyle(arc, arc.attribute, x, y, arcAttribute);\n context.fill();\n }\n }\n\n if (doStroke && isFullStroke) {\n if (strokeCb) {\n strokeCb(context, arc.attribute, arcAttribute);\n } else if (sVisible) {\n context.setStrokeStyle(arc, arc.attribute, x, y, arcAttribute);\n context.stroke();\n }\n }\n }\n\n // 需要局部渲染描边的时候\n if (!isFullStroke && doStroke) {\n context.beginPath();\n const collapsedToLine = drawArcPath(arc, context, x, y, outerRadius, innerRadius, arrayStroke);\n\n if (strokeCb) {\n strokeCb(context, arc.attribute, arcAttribute);\n } else if (sVisible) {\n context.setStrokeStyle(arc, arc.attribute, x, y, arcAttribute);\n context.stroke();\n }\n }\n\n // 绘制cap\n if (cap && forceShowCap) {\n const { startAngle: sa, endAngle: ea } = arc.getParsedAngle();\n const deltaAngle = abs(ea - sa);\n if (deltaAngle >= pi2 - epsilon) {\n context.beginPath();\n const capWidth = Math.abs(outerRadius - innerRadius) / 2;\n // 以外边界长度为准\n const capAngle = capWidth / outerRadius;\n const { endAngle = arcAttribute.endAngle, fillColor = arcAttribute.fillColor } = arc.attribute;\n const startAngle = endAngle;\n this.drawArcTailCapPath(arc, context, x, y, outerRadius, innerRadius, startAngle, startAngle + capAngle);\n if (doFill) {\n // 获取渐变色最后一个颜色\n const color = fillColor;\n if ((color as IGradientColor).gradient === 'conical') {\n const lastColor = getConicGradientAt(0, 0, endAngle, color as any);\n if (fillCb) {\n // fillCb(context, arc.attribute, arcAttribute);\n } else if (fillVisible) {\n // context.closePath();\n context.setCommonStyle(arc, arc.attribute, x, y, arcAttribute);\n context.fillStyle = lastColor as string;\n context.fill();\n }\n }\n }\n if (doStroke) {\n if (strokeCb) {\n // fillCb(context, arc.attribute, arcAttribute);\n } else if (sVisible) {\n context.setStrokeStyle(arc, arc.attribute, x, y, arcAttribute);\n // context.strokeStyle = 'red';\n context.stroke();\n }\n }\n }\n }\n\n if (!this._arcRenderContribitions) {\n this._arcRenderContribitions = this.arcRenderContribitions.getContributions() || [];\n }\n this._arcRenderContribitions.forEach(c => {\n if (c.time === BaseRenderContributionTime.afterFillStroke) {\n c.drawShape(arc, context, x, y, doFill, doStroke, fVisible, sVisible, arcAttribute, fillCb, strokeCb);\n }\n });\n }\n\n draw(arc: IArc, renderService: IRenderService, drawContext: IDrawContext, params?: IGraphicRenderDrawParams) {\n const { context } = drawContext;\n if (!context) {\n return;\n }\n\n // const arcAttribute = graphicService.themeService.getCurrentTheme().arcAttribute;\n const arcAttribute = getTheme(arc, params?.theme).arc;\n\n context.highPerformanceSave();\n\n let { x = arcAttribute.x, y = arcAttribute.y } = arc.attribute;\n if (!arc.transMatrix.onlyTranslate()) {\n // 性能较差\n x = 0;\n y = 0;\n context.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 context.setTransformForCurrent();\n }\n\n if (drawPathProxy(arc, context, x, y, drawContext, params)) {\n context.highPerformanceRestore();\n return;\n }\n\n this.drawShape(arc, context, x, y, drawContext, params);\n\n context.highPerformanceRestore();\n }\n}\n"]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { IContext2d, IGraphicAttribute, IMarkAttribute, IThemeAttribute, IArc3d } from '../../../interface';
|
|
2
|
+
import { IDrawContext, IRenderService } from '../../render-service';
|
|
3
|
+
import { IGraphicRender, IGraphicRenderDrawParams } from './graphic-render';
|
|
4
|
+
import { BaseRender } from './base-render';
|
|
5
|
+
export declare class DefaultCanvasArc3DRender extends BaseRender<IArc3d> implements IGraphicRender {
|
|
6
|
+
type: 'arc3d';
|
|
7
|
+
numberType: number;
|
|
8
|
+
z: number;
|
|
9
|
+
drawShape(arc: IArc3d, context: IContext2d, x: number, y: number, drawContext: IDrawContext, params?: IGraphicRenderDrawParams, fillCb?: (ctx: IContext2d, markAttribute: Partial<IMarkAttribute & IGraphicAttribute>, themeAttribute: IThemeAttribute) => boolean, strokeCb?: (ctx: IContext2d, markAttribute: Partial<IMarkAttribute & IGraphicAttribute>, themeAttribute: IThemeAttribute) => boolean): void;
|
|
10
|
+
draw(arc: IArc3d, renderService: IRenderService, drawContext: IDrawContext, params?: IGraphicRenderDrawParams): void;
|
|
11
|
+
}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
var __decorate = this && this.__decorate || function(decorators, target, key, desc) {
|
|
2
|
+
var d, c = arguments.length, r = c < 3 ? target : null === desc ? desc = Object.getOwnPropertyDescriptor(target, key) : desc;
|
|
3
|
+
if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) (d = decorators[i]) && (r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r);
|
|
4
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
5
|
+
};
|
|
6
|
+
|
|
7
|
+
import { abs, cos, epsilon, sin, pi2 } from "@visactor/vutils";
|
|
8
|
+
|
|
9
|
+
import { injectable } from "inversify";
|
|
10
|
+
|
|
11
|
+
import { ARC3D_NUMBER_TYPE, getTheme } from "../../../graphic";
|
|
12
|
+
|
|
13
|
+
import { drawPathProxy, fillVisible, runFill, runStroke, strokeVisible } from "./utils";
|
|
14
|
+
|
|
15
|
+
import { colorString } from "../../../color-string";
|
|
16
|
+
|
|
17
|
+
import { mat4Allocate } from "../../../modules";
|
|
18
|
+
|
|
19
|
+
import { BaseRender } from "./base-render";
|
|
20
|
+
|
|
21
|
+
function drawArcPath(arc, context, cx, cy, z, outerRadius, innerRadius) {
|
|
22
|
+
const {startAngle: startAngle, endAngle: endAngle} = arc.getParsedAngle(), deltaAngle = abs(endAngle - startAngle), clockwise = endAngle > startAngle;
|
|
23
|
+
let collapsedToLine = !1;
|
|
24
|
+
if (outerRadius < innerRadius) {
|
|
25
|
+
const temp = outerRadius;
|
|
26
|
+
outerRadius = innerRadius, innerRadius = temp;
|
|
27
|
+
}
|
|
28
|
+
if (outerRadius <= epsilon) context.moveTo(cx, cy, z); else if (deltaAngle >= pi2 - epsilon) context.moveTo(cx + outerRadius * cos(startAngle), cy + outerRadius * sin(startAngle), z),
|
|
29
|
+
context.arc(cx, cy, outerRadius, startAngle, endAngle, !clockwise, z), innerRadius > epsilon && (context.moveTo(cx + innerRadius * cos(endAngle), cy + innerRadius * sin(endAngle), z),
|
|
30
|
+
context.arc(cx, cy, innerRadius, endAngle, startAngle, clockwise, z)); else {
|
|
31
|
+
const {outerDeltaAngle: outerDeltaAngle, innerDeltaAngle: innerDeltaAngle, outerStartAngle: outerStartAngle, outerEndAngle: outerEndAngle, innerEndAngle: innerEndAngle, innerStartAngle: innerStartAngle} = arc.getParsePadAngle(startAngle, endAngle), xors = outerRadius * cos(outerStartAngle), yors = outerRadius * sin(outerStartAngle), xire = innerRadius * cos(innerEndAngle), yire = innerRadius * sin(innerEndAngle);
|
|
32
|
+
outerDeltaAngle < .001 ? collapsedToLine = !0 : (context.moveTo(cx + xors, cy + yors, z),
|
|
33
|
+
context.arc(cx, cy, outerRadius, outerStartAngle, outerEndAngle, !clockwise, z)),
|
|
34
|
+
!(innerRadius > epsilon) || innerDeltaAngle < .001 ? (context.lineTo(cx + xire, cy + yire, z),
|
|
35
|
+
collapsedToLine = !0) : (context.lineTo(cx + xire, cy + yire, z), context.arc(cx, cy, innerRadius, innerEndAngle, innerStartAngle, clockwise, z));
|
|
36
|
+
}
|
|
37
|
+
return context.closePath(), collapsedToLine;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
function drawInnerOuterArcPath(arc, context, cx, cy, z1, z2, radius, getParsePadAngle) {
|
|
41
|
+
const {startAngle: startAngle, endAngle: endAngle} = arc.getParsedAngle(), deltaAngle = abs(endAngle - startAngle), clockwise = endAngle > startAngle;
|
|
42
|
+
let collapsedToLine = !1;
|
|
43
|
+
if (radius <= epsilon) context.moveTo(cx, cy, z1); else if (deltaAngle >= pi2 - epsilon) context.moveTo(cx + radius * cos(startAngle), cy + radius * sin(startAngle), z1),
|
|
44
|
+
context.arc(cx, cy, radius, startAngle, endAngle, !clockwise, z1), context.lineTo(cx + radius * cos(endAngle), cy + radius * sin(endAngle), z2),
|
|
45
|
+
context.arc(cx, cy, radius, endAngle, startAngle, clockwise, z2); else {
|
|
46
|
+
const {innerouterDeltaAngle: innerouterDeltaAngle, innerouterStartAngle: innerouterStartAngle, innerouterEndAngle: innerouterEndAngle} = getParsePadAngle(startAngle, endAngle), xors = radius * cos(innerouterStartAngle), yors = radius * sin(innerouterStartAngle), xore = radius * cos(innerouterEndAngle), yore = radius * sin(innerouterEndAngle);
|
|
47
|
+
innerouterDeltaAngle < .001 ? collapsedToLine = !0 : (context.moveTo(cx + xors, cy + yors, z1),
|
|
48
|
+
context.arc(cx, cy, radius, innerouterStartAngle, innerouterEndAngle, !clockwise, z1),
|
|
49
|
+
context.lineTo(cx + xore, cy + yore, z2), context.arc(cx, cy, radius, innerouterEndAngle, innerouterStartAngle, clockwise, z2));
|
|
50
|
+
}
|
|
51
|
+
return context.closePath(), collapsedToLine;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
let DefaultCanvasArc3DRender = class extends BaseRender {
|
|
55
|
+
constructor() {
|
|
56
|
+
super(...arguments), this.numberType = ARC3D_NUMBER_TYPE;
|
|
57
|
+
}
|
|
58
|
+
drawShape(arc, context, x, y, drawContext, params, fillCb, strokeCb) {
|
|
59
|
+
var _a;
|
|
60
|
+
const arcAttribute = getTheme(arc, null == params ? void 0 : params.theme).arc, {fill: fill = (null == arcAttribute.fill ? !!arc.attribute.fillColor : arcAttribute.fill), background: background, stroke: stroke = (null == arcAttribute.stroke ? !!arc.attribute.strokeColor : arcAttribute.stroke), opacity: opacity = arcAttribute.opacity, fillOpacity: fillOpacity = arcAttribute.fillOpacity, lineWidth: lineWidth = arcAttribute.lineWidth, strokeOpacity: strokeOpacity = arcAttribute.strokeOpacity, visible: visible = arcAttribute.visible} = arc.attribute, fVisible = fillVisible(opacity, fillOpacity), sVisible = strokeVisible(opacity, strokeOpacity), doFill = runFill(fill), doStroke = runStroke(stroke, lineWidth), z = null !== (_a = this.z) && void 0 !== _a ? _a : 0;
|
|
61
|
+
if (!arc.valid || !visible) return;
|
|
62
|
+
if (!(doFill || doStroke || background)) return;
|
|
63
|
+
if (!(fVisible || sVisible || fillCb || strokeCb || background)) return;
|
|
64
|
+
const {outerRadius: outerRadius = arcAttribute.outerRadius, innerRadius: innerRadius = arcAttribute.innerRadius, fillColor: fillColor = arcAttribute.fillColor, height: height = 10} = arc.attribute, rgbArray = colorString.get(fillColor).value, {light: light} = drawContext.stage || {}, face = drawContext.hack_pieFace, z_face = {
|
|
65
|
+
top: z,
|
|
66
|
+
bottom: z + height
|
|
67
|
+
}, n_face = {
|
|
68
|
+
top: [ 0, 1, 0 ],
|
|
69
|
+
bottom: [ 0, -1, 0 ],
|
|
70
|
+
outside: [ 1, 0, -1 ],
|
|
71
|
+
inside: [ 1, 0, -1 ]
|
|
72
|
+
};
|
|
73
|
+
"bottom" === face || "top" === face ? (context.beginPath(), drawArcPath(arc, context, x, y, z_face[face], outerRadius, innerRadius),
|
|
74
|
+
context.setShadowStyle && context.setShadowStyle(arc, arc.attribute, arcAttribute),
|
|
75
|
+
doFill && (fillCb ? fillCb(context, arc.attribute, arcAttribute) : fVisible && (context.setCommonStyle(arc, arc.attribute, x, y, arcAttribute),
|
|
76
|
+
context.fillStyle = light ? light.computeColor(n_face[face], rgbArray) : fillColor,
|
|
77
|
+
context.fill())), doStroke && (strokeCb ? strokeCb(context, arc.attribute, arcAttribute) : sVisible && (context.setStrokeStyle(arc, arc.attribute, x, y, arcAttribute),
|
|
78
|
+
context.stroke()))) : "outside" !== face && "inside" !== face || ("inside" === face && (context.save(),
|
|
79
|
+
context.beginPath(), context.arc(x, y, innerRadius, 0, pi2, !0, z_face.top), context.clip()),
|
|
80
|
+
context.beginPath(), drawInnerOuterArcPath(arc, context, x, y, z_face.top, z_face.bottom, "outside" === face ? outerRadius : innerRadius, ((startAngle, endAngle) => {
|
|
81
|
+
const {outerDeltaAngle: outerDeltaAngle, innerDeltaAngle: innerDeltaAngle, outerStartAngle: outerStartAngle, outerEndAngle: outerEndAngle, innerEndAngle: innerEndAngle, innerStartAngle: innerStartAngle} = arc.getParsePadAngle(startAngle, endAngle);
|
|
82
|
+
return "outside" === face ? {
|
|
83
|
+
innerouterDeltaAngle: outerDeltaAngle,
|
|
84
|
+
innerouterEndAngle: outerEndAngle,
|
|
85
|
+
innerouterStartAngle: outerStartAngle
|
|
86
|
+
} : {
|
|
87
|
+
innerouterDeltaAngle: innerDeltaAngle,
|
|
88
|
+
innerouterEndAngle: innerEndAngle,
|
|
89
|
+
innerouterStartAngle: innerStartAngle
|
|
90
|
+
};
|
|
91
|
+
})), context.setShadowStyle && context.setShadowStyle(arc, arc.attribute, arcAttribute),
|
|
92
|
+
doFill && (fillCb ? fillCb(context, arc.attribute, arcAttribute) : fVisible && (context.setCommonStyle(arc, arc.attribute, x, y, arcAttribute),
|
|
93
|
+
context.fillStyle = light ? light.computeColor(n_face[face], rgbArray) : fillColor,
|
|
94
|
+
context.fill())), doStroke && (strokeCb ? strokeCb(context, arc.attribute, arcAttribute) : sVisible && (context.setStrokeStyle(arc, arc.attribute, x, y, arcAttribute),
|
|
95
|
+
context.stroke())), "inside" === face && context.restore());
|
|
96
|
+
}
|
|
97
|
+
draw(arc, renderService, drawContext, params) {
|
|
98
|
+
const {context: context} = drawContext;
|
|
99
|
+
if (!context) return;
|
|
100
|
+
const arcAttribute = getTheme(arc, null == params ? void 0 : params.theme).arc;
|
|
101
|
+
context.save();
|
|
102
|
+
const data = this.transform(arc, arcAttribute, context), {x: x, y: y, z: z, lastModelMatrix: lastModelMatrix} = data;
|
|
103
|
+
this.z = z, drawPathProxy(arc, context, x, y, drawContext, params) || (this.drawShape(arc, context, x, y, drawContext, params),
|
|
104
|
+
this.z = 0, context.modelMatrix !== lastModelMatrix && mat4Allocate.free(context.modelMatrix),
|
|
105
|
+
context.modelMatrix = lastModelMatrix), context.restore();
|
|
106
|
+
}
|
|
107
|
+
};
|
|
108
|
+
|
|
109
|
+
DefaultCanvasArc3DRender = __decorate([ injectable() ], DefaultCanvasArc3DRender);
|
|
110
|
+
|
|
111
|
+
export { DefaultCanvasArc3DRender };
|
|
112
|
+
//# sourceMappingURL=arc3d-render.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/render/contributions/render/arc3d-render.ts"],"names":[],"mappings":"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","file":"arc3d-render.js","sourcesContent":["import { abs, cos, epsilon, sin, pi2, vec3, pi } from '@visactor/vutils';\nimport { inject, injectable, named } from 'inversify';\nimport { ARC3D_NUMBER_TYPE, getExtraModelMatrix, getTheme, multiplyMat4Mat3, multiplyMat4Mat4 } from '../../../graphic';\nimport {\n IContext2d,\n IArc,\n IPath2D,\n IGraphicAttribute,\n IMarkAttribute,\n IThemeAttribute,\n IArc3d\n} from '../../../interface';\nimport { IDrawContext, IRenderService } from '../../render-service';\nimport { IGraphicRender, IGraphicRenderDrawParams } from './graphic-render';\nimport { drawPathProxy, fillVisible, runFill, runStroke, strokeVisible } from './utils';\nimport { colorString } from '../../../color-string';\nimport { mat4Allocate } from '../../../modules';\nimport { BaseRender } from './base-render';\n\n/**\n * 部分源码参考 https://github.com/d3/d3-shape/\n * Copyright 2010-2022 Mike Bostock\n\n Permission to use, copy, modify, and/or distribute this software for any purpose\n with or without fee is hereby granted, provided that the above copyright notice\n and this permission notice appear in all copies.\n\n THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\n REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND\n FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\n INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS\n OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER\n TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF\n THIS SOFTWARE.\n */\n\n// 基于d3-shape\n// https://github.com/d3/d3-shape/blob/main/src/arc.js\nfunction drawArcPath(\n arc: IArc,\n context: IContext2d | IPath2D,\n cx: number,\n cy: number,\n z: number,\n outerRadius: number,\n innerRadius: number\n) {\n const { startAngle, endAngle } = arc.getParsedAngle();\n\n const deltaAngle = abs(endAngle - startAngle);\n const clockwise: boolean = endAngle > startAngle;\n let collapsedToLine: boolean = false;\n // 规范化outerRadius和innerRadius\n if (outerRadius < innerRadius) {\n const temp = outerRadius;\n outerRadius = innerRadius;\n innerRadius = temp;\n }\n // Is it a point?\n if (outerRadius <= epsilon) {\n context.moveTo(cx, cy, z);\n } else if (deltaAngle >= pi2 - epsilon) {\n // 是个完整的圆环\n // Or is it a circle or annulus?\n context.moveTo(cx + outerRadius * cos(startAngle), cy + outerRadius * sin(startAngle), z);\n context.arc(cx, cy, outerRadius, startAngle, endAngle, !clockwise, z);\n if (innerRadius > epsilon) {\n context.moveTo(cx + innerRadius * cos(endAngle), cy + innerRadius * sin(endAngle), z);\n context.arc(cx, cy, innerRadius, endAngle, startAngle, clockwise, z);\n }\n } else {\n // Or is it a circular or annular sector?\n const { outerDeltaAngle, innerDeltaAngle, outerStartAngle, outerEndAngle, innerEndAngle, innerStartAngle } =\n arc.getParsePadAngle(startAngle, endAngle);\n\n const xors = outerRadius * cos(outerStartAngle);\n const yors = outerRadius * sin(outerStartAngle);\n const xire = innerRadius * cos(innerEndAngle);\n const yire = innerRadius * sin(innerEndAngle);\n\n // Is the sector collapsed to a line?\n // 角度过小,会将acr处理为圆心到半径的一条线\n if (outerDeltaAngle < 0.001) {\n // 如果有左右边的话\n collapsedToLine = true;\n } else {\n context.moveTo(cx + xors, cy + yors, z);\n context.arc(cx, cy, outerRadius, outerStartAngle, outerEndAngle, !clockwise, z);\n }\n // Is there no inner ring, and it’s a circular sector?\n // Or perhaps it’s an annular sector collapsed due to padding?\n if (!(innerRadius > epsilon) || innerDeltaAngle < 0.001) {\n context.lineTo(cx + xire, cy + yire, z);\n collapsedToLine = true;\n } else {\n // Or is the inner ring just a circular arc?\n context.lineTo(cx + xire, cy + yire, z);\n context.arc(cx, cy, innerRadius, innerEndAngle, innerStartAngle, clockwise, z);\n }\n }\n\n context.closePath();\n\n return collapsedToLine;\n}\n\nfunction drawInnerOuterArcPath(\n arc: IArc,\n context: IContext2d | IPath2D,\n cx: number,\n cy: number,\n z1: number,\n z2: number,\n radius: number,\n getParsePadAngle: (\n startAngle: number,\n endAngle: number\n ) => {\n innerouterDeltaAngle: number;\n innerouterStartAngle: number;\n innerouterEndAngle: number;\n }\n) {\n const { startAngle, endAngle } = arc.getParsedAngle();\n\n const deltaAngle = abs(endAngle - startAngle);\n const clockwise: boolean = endAngle > startAngle;\n let collapsedToLine: boolean = false;\n // Is it a point?\n if (radius <= epsilon) {\n context.moveTo(cx, cy, z1);\n } else if (deltaAngle >= pi2 - epsilon) {\n // 是个完整的圆环\n // Or is it a circle or annulus?\n context.moveTo(cx + radius * cos(startAngle), cy + radius * sin(startAngle), z1);\n context.arc(cx, cy, radius, startAngle, endAngle, !clockwise, z1);\n context.lineTo(cx + radius * cos(endAngle), cy + radius * sin(endAngle), z2);\n context.arc(cx, cy, radius, endAngle, startAngle, clockwise, z2);\n } else {\n // Or is it a circular or annular sector?\n const { innerouterDeltaAngle, innerouterStartAngle, innerouterEndAngle } = getParsePadAngle(startAngle, endAngle);\n\n const xors = radius * cos(innerouterStartAngle);\n const yors = radius * sin(innerouterStartAngle);\n const xore = radius * cos(innerouterEndAngle);\n const yore = radius * sin(innerouterEndAngle);\n\n // Is the sector collapsed to a line?\n // 角度过小,会将acr处理为圆心到半径的一条线\n if (innerouterDeltaAngle < 0.001) {\n collapsedToLine = true;\n } else {\n context.moveTo(cx + xors, cy + yors, z1);\n context.arc(cx, cy, radius, innerouterStartAngle, innerouterEndAngle, !clockwise, z1);\n context.lineTo(cx + xore, cy + yore, z2);\n context.arc(cx, cy, radius, innerouterEndAngle, innerouterStartAngle, clockwise, z2);\n }\n }\n\n context.closePath();\n\n return collapsedToLine;\n}\n\n@injectable()\nexport class DefaultCanvasArc3DRender extends BaseRender<IArc3d> implements IGraphicRender {\n type: 'arc3d';\n numberType: number = ARC3D_NUMBER_TYPE;\n declare z: number;\n\n drawShape(\n arc: IArc3d,\n context: IContext2d,\n x: number,\n y: number,\n drawContext: IDrawContext,\n params?: IGraphicRenderDrawParams,\n fillCb?: (\n ctx: IContext2d,\n markAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => boolean,\n strokeCb?: (\n ctx: IContext2d,\n markAttribute: Partial<IMarkAttribute & IGraphicAttribute>,\n themeAttribute: IThemeAttribute\n ) => boolean\n ) {\n // const arcAttribute = graphicService.themeService.getCurrentTheme().arcAttribute;\n const arcAttribute = getTheme(arc, params?.theme).arc;\n\n const {\n fill = arcAttribute.fill == null ? !!arc.attribute.fillColor : arcAttribute.fill,\n background,\n stroke = arcAttribute.stroke == null ? !!arc.attribute.strokeColor : arcAttribute.stroke,\n opacity = arcAttribute.opacity,\n fillOpacity = arcAttribute.fillOpacity,\n lineWidth = arcAttribute.lineWidth,\n strokeOpacity = arcAttribute.strokeOpacity,\n visible = arcAttribute.visible\n } = arc.attribute;\n // 不绘制或者透明\n const fVisible = fillVisible(opacity, fillOpacity);\n const sVisible = strokeVisible(opacity, strokeOpacity);\n const doFill = runFill(fill);\n const doStroke = runStroke(stroke, lineWidth);\n\n const z = this.z ?? 0;\n\n if (!(arc.valid && visible)) {\n return;\n }\n\n if (!(doFill || doStroke || background)) {\n return;\n }\n\n // 如果存在fillCb和strokeCb,那就不直接跳过\n if (!(fVisible || sVisible || fillCb || strokeCb || background)) {\n return;\n }\n\n const {\n outerRadius = arcAttribute.outerRadius,\n innerRadius = arcAttribute.innerRadius,\n fillColor = arcAttribute.fillColor,\n // TODO 3d视角下直接硬编码,避免theme消耗性能\n height = 10\n } = arc.attribute;\n\n const rgbArray = colorString.get(fillColor).value;\n const { light } = drawContext.stage || {};\n const face = drawContext.hack_pieFace;\n\n const z_face = {\n top: z,\n bottom: z + height\n };\n\n const n_face: Record<string, vec3> = {\n top: [0, 1, 0],\n bottom: [0, -1, 0],\n outside: [1, 0, -1],\n inside: [1, 0, -1]\n };\n\n if (face === 'bottom' || face === 'top') {\n context.beginPath();\n // 测试后,cache对于重绘性能提升不大,但是在首屏有一定性能损耗,因此arc不再使用cache\n drawArcPath(arc, context, x, y, z_face[face], outerRadius, innerRadius);\n\n // shadow\n context.setShadowStyle && context.setShadowStyle(arc, arc.attribute, arcAttribute);\n\n if (doFill) {\n if (fillCb) {\n fillCb(context, arc.attribute, arcAttribute);\n } else if (fVisible) {\n context.setCommonStyle(arc, arc.attribute, x, y, arcAttribute);\n context.fillStyle = light ? light.computeColor(n_face[face], rgbArray) : (fillColor as string);\n context.fill();\n }\n }\n\n if (doStroke) {\n if (strokeCb) {\n strokeCb(context, arc.attribute, arcAttribute);\n } else if (sVisible) {\n context.setStrokeStyle(arc, arc.attribute, x, y, arcAttribute);\n context.stroke();\n }\n }\n } else if (face === 'outside' || face === 'inside') {\n // 需要clip,避免绘制到外面\n if (face === 'inside') {\n context.save();\n context.beginPath();\n context.arc(x, y, innerRadius, 0, pi2, true, z_face.top);\n context.clip();\n }\n context.beginPath();\n // 测试后,cache对于重绘性能提升不大,但是在首屏有一定性能损耗,因此arc不再使用cache\n drawInnerOuterArcPath(\n arc,\n context,\n x,\n y,\n z_face.top,\n z_face.bottom,\n face === 'outside' ? outerRadius : innerRadius,\n (startAngle, endAngle) => {\n const { outerDeltaAngle, innerDeltaAngle, outerStartAngle, outerEndAngle, innerEndAngle, innerStartAngle } =\n arc.getParsePadAngle(startAngle, endAngle);\n if (face === 'outside') {\n return {\n innerouterDeltaAngle: outerDeltaAngle,\n innerouterEndAngle: outerEndAngle,\n innerouterStartAngle: outerStartAngle\n };\n }\n return {\n innerouterDeltaAngle: innerDeltaAngle,\n innerouterEndAngle: innerEndAngle,\n innerouterStartAngle: innerStartAngle\n };\n }\n );\n\n // shadow\n context.setShadowStyle && context.setShadowStyle(arc, arc.attribute, arcAttribute);\n\n if (doFill) {\n if (fillCb) {\n fillCb(context, arc.attribute, arcAttribute);\n } else if (fVisible) {\n context.setCommonStyle(arc, arc.attribute, x, y, arcAttribute);\n context.fillStyle = light ? light.computeColor(n_face[face], rgbArray) : (fillColor as string);\n context.fill();\n }\n }\n\n if (doStroke) {\n if (strokeCb) {\n strokeCb(context, arc.attribute, arcAttribute);\n } else if (sVisible) {\n context.setStrokeStyle(arc, arc.attribute, x, y, arcAttribute);\n context.stroke();\n }\n }\n\n if (face === 'inside') {\n context.restore();\n }\n }\n }\n\n draw(arc: IArc3d, renderService: IRenderService, drawContext: IDrawContext, params?: IGraphicRenderDrawParams) {\n const { context } = drawContext;\n if (!context) {\n return;\n }\n\n // const arcAttribute = graphicService.themeService.getCurrentTheme().arcAttribute;\n const arcAttribute = getTheme(arc, params?.theme).arc;\n\n context.save();\n\n const data = this.transform(arc, arcAttribute, context);\n const { x, y, z, lastModelMatrix } = data;\n\n this.z = z;\n if (drawPathProxy(arc, context, x, y, drawContext, params)) {\n context.restore();\n return;\n }\n\n this.drawShape(arc, context, x, y, drawContext, params);\n\n this.z = 0;\n\n if (context.modelMatrix !== lastModelMatrix) {\n mat4Allocate.free(context.modelMatrix);\n }\n context.modelMatrix = lastModelMatrix;\n\n context.restore();\n }\n}\n"]}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { IArea, IAreaCacheItem, IAreaGraphicAttribute, IGraphicAttribute, IContext2d, IMarkAttribute, IThemeAttribute } from '../../../interface';
|
|
2
|
+
import { ContributionProvider } from '../../../common';
|
|
3
|
+
import { IDrawContext, IRenderService } from '../../render-service';
|
|
4
|
+
import { IGraphicRender, IGraphicRenderDrawParams } from './graphic-render';
|
|
5
|
+
import { IAreaRenderContribution } from './contributions/area-contribution-render';
|
|
6
|
+
export declare class DefaultCanvasAreaRender implements IGraphicRender {
|
|
7
|
+
protected readonly areaRenderContribitions: ContributionProvider<IAreaRenderContribution>;
|
|
8
|
+
type: 'area';
|
|
9
|
+
numberType: number;
|
|
10
|
+
protected _areaRenderContribitions: IAreaRenderContribution[];
|
|
11
|
+
constructor(areaRenderContribitions: ContributionProvider<IAreaRenderContribution>);
|
|
12
|
+
drawShape(area: IArea, context: IContext2d, x: number, y: number, drawContext: IDrawContext, params?: IGraphicRenderDrawParams, fillCb?: (ctx: IContext2d, lineAttribute: Partial<IMarkAttribute & IGraphicAttribute>, themeAttribute: IThemeAttribute) => boolean, strokeCb?: (ctx: IContext2d, markAttribute: Partial<IMarkAttribute & IGraphicAttribute>, themeAttribute: IThemeAttribute) => boolean): void;
|
|
13
|
+
draw(area: IArea, renderService: IRenderService, drawContext: IDrawContext, params?: IGraphicRenderDrawParams): void;
|
|
14
|
+
protected drawSegmentItem(context: IContext2d, cache: IAreaCacheItem, fill: boolean, fillOpacity: number, attribute: Partial<IAreaGraphicAttribute>, defaultAttribute: Required<IAreaGraphicAttribute> | Partial<IAreaGraphicAttribute>[], clipRange: number, offsetX: number, offsetY: number, offsetZ: number, area: IArea, fillCb?: (ctx: IContext2d, lineAttribute: Partial<IMarkAttribute & IGraphicAttribute>, themeAttribute: IThemeAttribute | IThemeAttribute[]) => boolean): boolean;
|
|
15
|
+
}
|