@visactor/vrender-kits 1.0.0-alpha.4 → 1.0.0-alpha.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/cjs/canvas/contributions/browser/context.d.ts +1 -1
  2. package/cjs/canvas/contributions/browser/context.js +1 -0
  3. package/cjs/canvas/contributions/browser/context.js.map +1 -1
  4. package/cjs/canvas/contributions/modules.js +2 -1
  5. package/cjs/env/contributions/harmony-contribution.js +1 -1
  6. package/cjs/env/contributions/lynx-contribution.js +1 -1
  7. package/cjs/event/extension/drag.js +1 -1
  8. package/cjs/event/extension/gesture.js +1 -1
  9. package/cjs/event/extension/index.js +1 -1
  10. package/cjs/event/extension/interface.js +1 -1
  11. package/cjs/index.d.ts +2 -0
  12. package/cjs/index.js +2 -1
  13. package/cjs/index.js.map +1 -1
  14. package/cjs/picker/contributions/canvas-picker/star-module.d.ts +2 -0
  15. package/cjs/picker/contributions/canvas-picker/star-module.js +15 -0
  16. package/cjs/picker/contributions/canvas-picker/star-module.js.map +1 -0
  17. package/cjs/picker/contributions/canvas-picker/star-picker.d.ts +8 -0
  18. package/cjs/picker/contributions/canvas-picker/star-picker.js +30 -0
  19. package/cjs/picker/contributions/canvas-picker/star-picker.js.map +1 -0
  20. package/cjs/picker/contributions/constants.d.ts +1 -0
  21. package/cjs/picker/contributions/constants.js +2 -2
  22. package/cjs/picker/contributions/constants.js.map +1 -1
  23. package/cjs/register/register-gif.d.ts +7 -0
  24. package/cjs/register/register-gif.js +19 -0
  25. package/cjs/register/register-gif.js.map +1 -0
  26. package/cjs/register/register-glyph.js +2 -1
  27. package/cjs/register/register-star.d.ts +6 -0
  28. package/cjs/register/register-star.js +16 -0
  29. package/cjs/register/register-star.js.map +1 -0
  30. package/cjs/render/contributions/rough/base-render.d.ts +3 -1
  31. package/cjs/render/contributions/rough/base-render.js +49 -0
  32. package/cjs/render/contributions/rough/base-render.js.map +1 -1
  33. package/cjs/render/contributions/rough/config.js +4 -4
  34. package/cjs/render/contributions/rough/config.js.map +1 -1
  35. package/cjs/render/contributions/rough/context.d.ts +142 -0
  36. package/cjs/render/contributions/rough/context.js +408 -0
  37. package/cjs/render/contributions/rough/context.js.map +1 -0
  38. package/cjs/render/contributions/rough/rough-line.d.ts +6 -4
  39. package/cjs/render/contributions/rough/rough-line.js +14 -48
  40. package/cjs/render/contributions/rough/rough-line.js.map +1 -1
  41. package/cjs/render/contributions/rough/rough-rect.d.ts +1 -1
  42. package/cjs/render/contributions/rough/rough-rect.js +2 -44
  43. package/cjs/render/contributions/rough/rough-rect.js.map +1 -1
  44. package/cjs/render/contributions/rough/rough-symbol.d.ts +3 -4
  45. package/cjs/render/contributions/rough/rough-symbol.js +3 -47
  46. package/cjs/render/contributions/rough/rough-symbol.js.map +1 -1
  47. package/cjs/tools/dynamicTexture.js +2 -0
  48. package/dist/index.es.js +544 -174
  49. package/es/canvas/contributions/browser/context.d.ts +1 -1
  50. package/es/canvas/contributions/browser/context.js +1 -0
  51. package/es/canvas/contributions/browser/context.js.map +1 -1
  52. package/es/canvas/contributions/modules.js +2 -1
  53. package/es/env/contributions/harmony-contribution.js +1 -1
  54. package/es/env/contributions/lynx-contribution.js +1 -1
  55. package/es/event/extension/drag.js +1 -1
  56. package/es/event/extension/gesture.js +1 -1
  57. package/es/event/extension/index.js +1 -1
  58. package/es/event/extension/interface.js +1 -1
  59. package/es/index.d.ts +2 -0
  60. package/es/index.js +4 -0
  61. package/es/index.js.map +1 -1
  62. package/es/picker/contributions/canvas-picker/star-module.d.ts +2 -0
  63. package/es/picker/contributions/canvas-picker/star-module.js +13 -0
  64. package/es/picker/contributions/canvas-picker/star-module.js.map +1 -0
  65. package/es/picker/contributions/canvas-picker/star-picker.d.ts +8 -0
  66. package/es/picker/contributions/canvas-picker/star-picker.js +26 -0
  67. package/es/picker/contributions/canvas-picker/star-picker.js.map +1 -0
  68. package/es/picker/contributions/constants.d.ts +1 -0
  69. package/es/picker/contributions/constants.js +2 -0
  70. package/es/picker/contributions/constants.js.map +1 -1
  71. package/es/register/register-gif.d.ts +7 -0
  72. package/es/register/register-gif.js +20 -0
  73. package/es/register/register-gif.js.map +1 -0
  74. package/es/register/register-glyph.js +2 -1
  75. package/es/register/register-star.d.ts +6 -0
  76. package/es/register/register-star.js +15 -0
  77. package/es/register/register-star.js.map +1 -0
  78. package/es/render/contributions/rough/base-render.d.ts +3 -1
  79. package/es/render/contributions/rough/base-render.js +49 -0
  80. package/es/render/contributions/rough/base-render.js.map +1 -1
  81. package/es/render/contributions/rough/config.js +4 -4
  82. package/es/render/contributions/rough/config.js.map +1 -1
  83. package/es/render/contributions/rough/context.d.ts +142 -0
  84. package/es/render/contributions/rough/context.js +402 -0
  85. package/es/render/contributions/rough/context.js.map +1 -0
  86. package/es/render/contributions/rough/rough-line.d.ts +6 -4
  87. package/es/render/contributions/rough/rough-line.js +15 -48
  88. package/es/render/contributions/rough/rough-line.js.map +1 -1
  89. package/es/render/contributions/rough/rough-rect.d.ts +1 -1
  90. package/es/render/contributions/rough/rough-rect.js +1 -43
  91. package/es/render/contributions/rough/rough-rect.js.map +1 -1
  92. package/es/render/contributions/rough/rough-symbol.d.ts +3 -4
  93. package/es/render/contributions/rough/rough-symbol.js +4 -46
  94. package/es/render/contributions/rough/rough-symbol.js.map +1 -1
  95. package/es/tools/dynamicTexture.js +2 -0
  96. package/package.json +2 -2
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: !0
5
+ }), exports.registerGifImage = exports.registerGifGraphic = void 0;
6
+
7
+ const vrender_core_1 = require("@visactor/vrender-core"), gif_image_1 = require("../graphic/gif-image"), gif_image_module_1 = require("../render/contributions/canvas/gif-image-module"), gif_image_module_2 = require("../picker/contributions/canvas-picker/gif-image-module");
8
+
9
+ function registerGifGraphic() {
10
+ vrender_core_1.graphicCreator.RegisterGraphicCreator("gif", gif_image_1.createGifImage);
11
+ }
12
+
13
+ function _registerGifImage() {
14
+ _registerGifImage.__loaded || (_registerGifImage.__loaded = !0, registerGifGraphic(),
15
+ vrender_core_1.container.load(gif_image_module_1.gifImageModule), vrender_core_1.container.load(gif_image_module_2.gifImageCanvasPickModule));
16
+ }
17
+
18
+ exports.registerGifGraphic = registerGifGraphic, _registerGifImage.__loaded = !1,
19
+ exports.registerGifImage = _registerGifImage;
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/register/register-gif.ts"],"names":[],"mappings":";;;AAAA,yDAAmE;AACnE,oDAAsD;AACtD,sFAAiF;AACjF,6FAAkG;AAElG,SAAgB,kBAAkB;IAChC,6BAAc,CAAC,sBAAsB,CAAC,KAAK,EAAE,0BAAc,CAAC,CAAC;AAC/D,CAAC;AAFD,gDAEC;AAED,SAAS,iBAAiB;IACxB,IAAI,iBAAiB,CAAC,QAAQ,EAAE;QAC9B,OAAO;KACR;IACD,iBAAiB,CAAC,QAAQ,GAAG,IAAI,CAAC;IAClC,kBAAkB,EAAE,CAAC;IACrB,wBAAS,CAAC,IAAI,CAAC,iCAAc,CAAC,CAAC;IAC/B,wBAAS,CAAC,IAAI,CAAC,2CAAwB,CAAC,CAAC;AAC3C,CAAC;AAED,iBAAiB,CAAC,QAAQ,GAAG,KAAK,CAAC;AAEtB,QAAA,gBAAgB,GAAG,iBAAiB,CAAC","file":"register-gif.js","sourcesContent":["import { container, graphicCreator } from '@visactor/vrender-core';\nimport { createGifImage } from '../graphic/gif-image';\nimport { gifImageModule } from '../render/contributions/canvas/gif-image-module';\nimport { gifImageCanvasPickModule } from '../picker/contributions/canvas-picker/gif-image-module';\n\nexport function registerGifGraphic() {\n graphicCreator.RegisterGraphicCreator('gif', createGifImage);\n}\n\nfunction _registerGifImage() {\n if (_registerGifImage.__loaded) {\n return;\n }\n _registerGifImage.__loaded = true;\n registerGifGraphic();\n container.load(gifImageModule);\n container.load(gifImageCanvasPickModule);\n}\n\n_registerGifImage.__loaded = false;\n\nexport const registerGifImage = _registerGifImage;\n"]}
@@ -11,4 +11,5 @@ function _registerGlyph() {
11
11
  vrender_core_1.container.load(vrender_core_1.glyphModule), vrender_core_1.container.load(env_1.browser ? glyph_module_1.glyphCanvasPickModule : glyph_module_2.glyphMathPickModule));
12
12
  }
13
13
 
14
- _registerGlyph.__loaded = !1, exports.registerGlyph = _registerGlyph;
14
+ _registerGlyph.__loaded = !1, exports.registerGlyph = _registerGlyph;
15
+ //# sourceMappingURL=register-glyph.js.map
@@ -0,0 +1,6 @@
1
+ declare function _registerStar(): void;
2
+ declare namespace _registerStar {
3
+ var __loaded: boolean;
4
+ }
5
+ export declare const registerStar: typeof _registerStar;
6
+ export {};
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: !0
5
+ }), exports.registerStar = void 0;
6
+
7
+ const vrender_core_1 = require("@visactor/vrender-core"), env_1 = require("./env"), star_module_1 = require("../picker/contributions/canvas-picker/star-module");
8
+
9
+ function _registerStar() {
10
+ _registerStar.__loaded || (_registerStar.__loaded = !0, (0, vrender_core_1.registerStarGraphic)(),
11
+ vrender_core_1.container.load(vrender_core_1.starModule), vrender_core_1.container.load((env_1.browser,
12
+ star_module_1.starCanvasPickModule)));
13
+ }
14
+
15
+ _registerStar.__loaded = !1, exports.registerStar = _registerStar;
16
+ //# sourceMappingURL=register-star.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/register/register-star.ts"],"names":[],"mappings":";;;AAAA,yDAAoF;AACpF,+BAAgC;AAChC,mFAAyF;AAEzF,SAAS,aAAa;IACpB,IAAI,aAAa,CAAC,QAAQ,EAAE;QAC1B,OAAO;KACR;IACD,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC9B,IAAA,kCAAmB,GAAE,CAAC;IACtB,wBAAS,CAAC,IAAI,CAAC,yBAAU,CAAC,CAAC;IAC3B,wBAAS,CAAC,IAAI,CAAC,aAAO,CAAC,CAAC,CAAC,kCAAoB,CAAC,CAAC,CAAC,kCAAoB,CAAC,CAAC;AACxE,CAAC;AAED,aAAa,CAAC,QAAQ,GAAG,KAAK,CAAC;AAElB,QAAA,YAAY,GAAG,aAAa,CAAC","file":"register-star.js","sourcesContent":["import { container, starModule, registerStarGraphic } from '@visactor/vrender-core';\nimport { browser } from './env';\nimport { starCanvasPickModule } from '../picker/contributions/canvas-picker/star-module';\n\nfunction _registerStar() {\n if (_registerStar.__loaded) {\n return;\n }\n _registerStar.__loaded = true;\n registerStarGraphic();\n container.load(starModule);\n container.load(browser ? starCanvasPickModule : starCanvasPickModule);\n}\n\n_registerStar.__loaded = false;\n\nexport const registerStar = _registerStar;\n"]}
@@ -1,5 +1,7 @@
1
- import type { IGraphicAttribute, IContext2d, IGraphic, IMarkAttribute, IThemeAttribute, IDrawContext, IGraphicRenderDrawParams, IGraphicRender } from '@visactor/vrender-core';
1
+ import type { IRenderService } from '@visactor/vrender-core';
2
+ import { type IGraphicAttribute, type IContext2d, type IGraphic, type IMarkAttribute, type IThemeAttribute, type IDrawContext, type IGraphicRenderDrawParams, type IGraphicRender } from '@visactor/vrender-core';
2
3
  export declare abstract class RoughBaseRender {
3
4
  canvasRenderer: IGraphicRender;
4
5
  drawShape(graphic: IGraphic, ctx: 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;
6
+ doDraw(graphic: IGraphic, renderService: IRenderService, drawContext: IDrawContext, params?: IGraphicRenderDrawParams): void;
5
7
  }
@@ -1,13 +1,62 @@
1
1
  "use strict";
2
2
 
3
+ var __importDefault = this && this.__importDefault || function(mod) {
4
+ return mod && mod.__esModule ? mod : {
5
+ default: mod
6
+ };
7
+ };
8
+
3
9
  Object.defineProperty(exports, "__esModule", {
4
10
  value: !0
5
11
  }), exports.RoughBaseRender = void 0;
6
12
 
13
+ const vrender_core_1 = require("@visactor/vrender-core"), roughjs_1 = __importDefault(require("roughjs")), context_1 = require("./context"), config_1 = require("./config");
14
+
7
15
  class RoughBaseRender {
8
16
  drawShape(graphic, ctx, x, y, drawContext, params, fillCb, strokeCb) {
9
17
  if (this.canvasRenderer.drawShape) return this.canvasRenderer.drawShape(graphic, ctx, x, y, drawContext, params, fillCb, strokeCb);
10
18
  }
19
+ doDraw(graphic, renderService, drawContext, params) {
20
+ const {context: context} = drawContext;
21
+ if (!context) return;
22
+ const canvas = context.canvas.nativeCanvas, rc = roughjs_1.default.canvas(canvas), customPath = new vrender_core_1.CustomPath2D, roughContext = new context_1.RoughContext2d(context, customPath);
23
+ context.save(), context.transformFromMatrix(graphic.transMatrix, !0);
24
+ const {fill: fill, stroke: stroke, roughStyle: roughStyle = {}, lineWidth: lineWidth} = graphic.attribute, {maxRandomnessOffset: maxRandomnessOffset = config_1.defaultRouthThemeSpec.maxRandomnessOffset, roughness: roughness = config_1.defaultRouthThemeSpec.roughness, bowing: bowing = config_1.defaultRouthThemeSpec.bowing, curveFitting: curveFitting = config_1.defaultRouthThemeSpec.curveFitting, curveTightness: curveTightness = config_1.defaultRouthThemeSpec.curveTightness, curveStepCount: curveStepCount = config_1.defaultRouthThemeSpec.curveStepCount, fillStyle: fillStyle = config_1.defaultRouthThemeSpec.fillStyle, fillWeight: fillWeight = config_1.defaultRouthThemeSpec.fillWeight, hachureAngle: hachureAngle = config_1.defaultRouthThemeSpec.hachureAngle, hachureGap: hachureGap = config_1.defaultRouthThemeSpec.hachureGap, simplification: simplification = config_1.defaultRouthThemeSpec.simplification, dashOffset: dashOffset = config_1.defaultRouthThemeSpec.dashOffset, dashGap: dashGap = config_1.defaultRouthThemeSpec.dashGap, zigzagOffset: zigzagOffset = config_1.defaultRouthThemeSpec.zigzagOffset, seed: seed = config_1.defaultRouthThemeSpec.seed, fillLineDash: fillLineDash = config_1.defaultRouthThemeSpec.fillLineDash, fillLineDashOffset: fillLineDashOffset = config_1.defaultRouthThemeSpec.fillLineDashOffset, disableMultiStroke: disableMultiStroke = config_1.defaultRouthThemeSpec.disableMultiStroke, disableMultiStrokeFill: disableMultiStrokeFill = config_1.defaultRouthThemeSpec.disableMultiStrokeFill, preserveVertices: preserveVertices = config_1.defaultRouthThemeSpec.preserveVertices, fixedDecimalPlaceDigits: fixedDecimalPlaceDigits = config_1.defaultRouthThemeSpec.fixedDecimalPlaceDigits} = roughStyle;
25
+ let rendered = !1;
26
+ const doRender = () => {
27
+ if (rendered) return;
28
+ rendered = !0;
29
+ const path = customPath.toString();
30
+ context.beginPath(), rc.path(path, {
31
+ fill: fill,
32
+ stroke: stroke,
33
+ strokeWidth: lineWidth,
34
+ maxRandomnessOffset: maxRandomnessOffset,
35
+ roughness: roughness,
36
+ bowing: bowing,
37
+ curveFitting: curveFitting,
38
+ curveTightness: curveTightness,
39
+ curveStepCount: curveStepCount,
40
+ fillStyle: fillStyle,
41
+ fillWeight: fillWeight,
42
+ hachureAngle: hachureAngle,
43
+ hachureGap: hachureGap,
44
+ simplification: simplification,
45
+ dashOffset: dashOffset,
46
+ dashGap: dashGap,
47
+ zigzagOffset: zigzagOffset,
48
+ seed: seed,
49
+ fillLineDash: fillLineDash,
50
+ fillLineDashOffset: fillLineDashOffset,
51
+ disableMultiStroke: disableMultiStroke,
52
+ disableMultiStrokeFill: disableMultiStrokeFill,
53
+ preserveVertices: preserveVertices,
54
+ fixedDecimalPlaceDigits: fixedDecimalPlaceDigits
55
+ });
56
+ };
57
+ this.canvasRenderer.drawShape(graphic, roughContext, 0, 0, drawContext, params, (() => (doRender(),
58
+ !1)), (() => (doRender(), !1))), context.restore();
59
+ }
11
60
  }
12
61
 
13
62
  exports.RoughBaseRender = RoughBaseRender;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/render/contributions/rough/base-render.ts"],"names":[],"mappings":";;;AAWA,MAAsB,eAAe;IAEnC,SAAS,CACP,OAAiB,EACjB,GAAe,EACf,CAAS,EACT,CAAS,EACT,WAAyB,EACzB,MAAiC,EACjC,MAIY,EACZ,QAIY;QAEZ,IAAI,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE;YACjC,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;SACjG;IACH,CAAC;CACF;AAxBD,0CAwBC","file":"base-render.js","sourcesContent":["import type {\n IGraphicAttribute,\n IContext2d,\n IGraphic,\n IMarkAttribute,\n IThemeAttribute,\n IDrawContext,\n IGraphicRenderDrawParams,\n IGraphicRender\n} from '@visactor/vrender-core';\n\nexport abstract class RoughBaseRender {\n canvasRenderer!: IGraphicRender;\n drawShape(\n graphic: IGraphic,\n ctx: 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 ): void {\n if (this.canvasRenderer.drawShape) {\n return this.canvasRenderer.drawShape(graphic, ctx, x, y, drawContext, params, fillCb, strokeCb);\n }\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/render/contributions/rough/base-render.ts"],"names":[],"mappings":"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","file":"base-render.js","sourcesContent":["import type { IRenderService } from '@visactor/vrender-core';\nimport {\n type IGraphicAttribute,\n type IContext2d,\n type IGraphic,\n type IMarkAttribute,\n type IThemeAttribute,\n type IDrawContext,\n type IGraphicRenderDrawParams,\n type IGraphicRender,\n CustomPath2D\n} from '@visactor/vrender-core';\nimport rough from 'roughjs';\nimport { RoughContext2d } from './context';\nimport { defaultRouthThemeSpec } from './config';\n\nexport abstract class RoughBaseRender {\n canvasRenderer!: IGraphicRender;\n drawShape(\n graphic: IGraphic,\n ctx: 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 ): void {\n if (this.canvasRenderer.drawShape) {\n return this.canvasRenderer.drawShape(graphic, ctx, x, y, drawContext, params, fillCb, strokeCb);\n }\n }\n\n doDraw(\n graphic: IGraphic,\n renderService: IRenderService,\n drawContext: IDrawContext,\n params?: IGraphicRenderDrawParams\n ) {\n const { context } = drawContext;\n if (!context) {\n return;\n }\n // 获取到原生canvas\n const canvas = context.canvas.nativeCanvas;\n const rc = rough.canvas(canvas);\n\n // context.highPerformanceSave();\n\n const customPath = new CustomPath2D();\n const roughContext = new RoughContext2d(context, customPath);\n\n context.save();\n // 不管怎么样,都transform\n context.transformFromMatrix(graphic.transMatrix, true);\n\n const { fill, stroke, roughStyle = {}, lineWidth } = graphic.attribute as any;\n\n const {\n maxRandomnessOffset = defaultRouthThemeSpec.maxRandomnessOffset,\n roughness = defaultRouthThemeSpec.roughness,\n bowing = defaultRouthThemeSpec.bowing,\n curveFitting = defaultRouthThemeSpec.curveFitting,\n curveTightness = defaultRouthThemeSpec.curveTightness,\n curveStepCount = defaultRouthThemeSpec.curveStepCount,\n fillStyle = defaultRouthThemeSpec.fillStyle,\n fillWeight = defaultRouthThemeSpec.fillWeight,\n hachureAngle = defaultRouthThemeSpec.hachureAngle,\n hachureGap = defaultRouthThemeSpec.hachureGap,\n simplification = defaultRouthThemeSpec.simplification,\n dashOffset = defaultRouthThemeSpec.dashOffset,\n dashGap = defaultRouthThemeSpec.dashGap,\n zigzagOffset = defaultRouthThemeSpec.zigzagOffset,\n seed = defaultRouthThemeSpec.seed,\n fillLineDash = defaultRouthThemeSpec.fillLineDash,\n fillLineDashOffset = defaultRouthThemeSpec.fillLineDashOffset,\n disableMultiStroke = defaultRouthThemeSpec.disableMultiStroke,\n disableMultiStrokeFill = defaultRouthThemeSpec.disableMultiStrokeFill,\n preserveVertices = defaultRouthThemeSpec.preserveVertices,\n fixedDecimalPlaceDigits = defaultRouthThemeSpec.fixedDecimalPlaceDigits\n } = roughStyle;\n\n let rendered = false;\n const doRender = () => {\n if (rendered) {\n return;\n }\n rendered = true;\n const path = customPath.toString();\n context.beginPath();\n rc.path(path, {\n fill,\n stroke,\n strokeWidth: lineWidth,\n maxRandomnessOffset,\n roughness,\n bowing,\n curveFitting,\n curveTightness,\n curveStepCount,\n fillStyle,\n fillWeight,\n hachureAngle,\n hachureGap,\n simplification,\n dashOffset,\n dashGap,\n zigzagOffset,\n seed,\n fillLineDash,\n fillLineDashOffset,\n disableMultiStroke,\n disableMultiStrokeFill,\n preserveVertices,\n fixedDecimalPlaceDigits\n });\n };\n this.canvasRenderer.drawShape(\n graphic,\n roughContext,\n 0,\n 0,\n drawContext,\n params,\n () => {\n doRender();\n return false;\n },\n () => {\n doRender();\n return false;\n }\n );\n\n context.restore();\n\n // context.highPerformanceRestore();\n }\n}\n"]}
@@ -4,12 +4,12 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.defaultRouthThemeSpec = void 0, exports.defaultRouthThemeSpec = {
6
6
  maxRandomnessOffset: 3,
7
- roughness: 1,
7
+ roughness: 1.6,
8
8
  bowing: 1,
9
9
  curveFitting: .95,
10
10
  curveTightness: void 0,
11
11
  curveStepCount: 9,
12
- fillStyle: "hachure",
12
+ fillStyle: "cross-hatch",
13
13
  fillWeight: void 0,
14
14
  hachureAngle: 60,
15
15
  hachureGap: 6,
@@ -17,11 +17,11 @@ Object.defineProperty(exports, "__esModule", {
17
17
  dashOffset: void 0,
18
18
  dashGap: void 0,
19
19
  zigzagOffset: void 0,
20
- seed: 1,
20
+ seed: 3,
21
21
  fillLineDash: void 0,
22
22
  fillLineDashOffset: void 0,
23
23
  disableMultiStroke: !1,
24
- disableMultiStrokeFill: !1,
24
+ disableMultiStrokeFill: !0,
25
25
  preserveVertices: !0,
26
26
  fixedDecimalPlaceDigits: void 0
27
27
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/render/contributions/rough/config.ts"],"names":[],"mappings":";;;AAEa,QAAA,qBAAqB,GAAY;IAC5C,mBAAmB,EAAE,CAAC;IAEtB,SAAS,EAAE,CAAC;IAEZ,MAAM,EAAE,CAAC;IAET,YAAY,EAAE,IAAI;IAClB,cAAc,EAAE,SAAS;IAEzB,cAAc,EAAE,CAAC;IAEjB,SAAS,EAAE,SAAS;IAEpB,UAAU,EAAE,SAAS;IAErB,YAAY,EAAE,EAAE;IAEhB,UAAU,EAAE,CAAC;IAEb,cAAc,EAAE,CAAC;IACjB,UAAU,EAAE,SAAS;IACrB,OAAO,EAAE,SAAS;IAClB,YAAY,EAAE,SAAS;IAEvB,IAAI,EAAE,CAAC;IACP,YAAY,EAAE,SAAS;IACvB,kBAAkB,EAAE,SAAS;IAE7B,kBAAkB,EAAE,KAAK;IACzB,sBAAsB,EAAE,KAAK;IAC7B,gBAAgB,EAAE,IAAI;IACtB,uBAAuB,EAAE,SAAS;CACnC,CAAC","file":"config.js","sourcesContent":["import type { Options } from 'roughjs/bin/core';\n\nexport const defaultRouthThemeSpec: Options = {\n maxRandomnessOffset: 3,\n // 粗糙度,值越大绘制的越乱\n roughness: 1,\n // 线段的弯曲度\n bowing: 1,\n // 曲线拟合程度\n curveFitting: 0.95,\n curveTightness: undefined,\n // 近似曲线的点数\n curveStepCount: 9,\n // 填充形式,默认斜线\n fillStyle: 'hachure',\n // 填充线的粗细、填充点的大小\n fillWeight: undefined,\n // 填充为hachure时的转角\n hachureAngle: 60,\n // 填充为hachure时线段间的间隙\n hachureGap: 6,\n // 是否简化线段\n simplification: 0,\n dashOffset: undefined,\n dashGap: undefined,\n zigzagOffset: undefined,\n // 生成随机形状的种子\n seed: 1,\n fillLineDash: undefined,\n fillLineDashOffset: undefined,\n // 禁止用多个笔画绘制\n disableMultiStroke: false,\n disableMultiStrokeFill: false,\n preserveVertices: true,\n fixedDecimalPlaceDigits: undefined\n};\n"]}
1
+ {"version":3,"sources":["../src/render/contributions/rough/config.ts"],"names":[],"mappings":";;;AAEa,QAAA,qBAAqB,GAAY;IAC5C,mBAAmB,EAAE,CAAC;IAEtB,SAAS,EAAE,GAAG;IAEd,MAAM,EAAE,CAAC;IAET,YAAY,EAAE,IAAI;IAClB,cAAc,EAAE,SAAS;IAEzB,cAAc,EAAE,CAAC;IAEjB,SAAS,EAAE,aAAa;IAExB,UAAU,EAAE,SAAS;IAErB,YAAY,EAAE,EAAE;IAEhB,UAAU,EAAE,CAAC;IAEb,cAAc,EAAE,CAAC;IACjB,UAAU,EAAE,SAAS;IACrB,OAAO,EAAE,SAAS;IAClB,YAAY,EAAE,SAAS;IAEvB,IAAI,EAAE,CAAC;IACP,YAAY,EAAE,SAAS;IACvB,kBAAkB,EAAE,SAAS;IAE7B,kBAAkB,EAAE,KAAK;IACzB,sBAAsB,EAAE,IAAI;IAC5B,gBAAgB,EAAE,IAAI;IACtB,uBAAuB,EAAE,SAAS;CACnC,CAAC","file":"config.js","sourcesContent":["import type { Options } from 'roughjs/bin/core';\n\nexport const defaultRouthThemeSpec: Options = {\n maxRandomnessOffset: 3,\n // 粗糙度,值越大绘制的越乱\n roughness: 1.6,\n // 线段的弯曲度\n bowing: 1,\n // 曲线拟合程度\n curveFitting: 0.95,\n curveTightness: undefined,\n // 近似曲线的点数\n curveStepCount: 9,\n // 填充形式,默认斜线\n fillStyle: 'cross-hatch',\n // 填充线的粗细、填充点的大小\n fillWeight: undefined,\n // 填充为hachure时的转角\n hachureAngle: 60,\n // 填充为hachure时线段间的间隙\n hachureGap: 6,\n // 是否简化线段\n simplification: 0,\n dashOffset: undefined,\n dashGap: undefined,\n zigzagOffset: undefined,\n // 生成随机形状的种子\n seed: 3,\n fillLineDash: undefined,\n fillLineDashOffset: undefined,\n // 禁止用多个笔画绘制\n disableMultiStroke: false,\n disableMultiStrokeFill: true,\n preserveVertices: true,\n fixedDecimalPlaceDigits: undefined\n};\n"]}
@@ -0,0 +1,142 @@
1
+ import type { IPointLike, TextMeasure, ITextMeasureSpec, IMatrix, Matrix } from '@visactor/vutils';
2
+ import type { ICamera, ICanvas, ICommonStyleParams, IConicalGradientData, IContext2d, ISetCommonStyleParams, ISetStrokeStyleParams, IStrokeStyleParams, ITextStyleParams, mat4, EnvType, vec3, CustomPath2D } from '@visactor/vrender-core';
3
+ export declare class RoughContext2d implements IContext2d {
4
+ static env: EnvType;
5
+ originContext: IContext2d;
6
+ customPath: CustomPath2D;
7
+ constructor(originContext: IContext2d, customPath: CustomPath2D);
8
+ reset(setTransform?: boolean): void;
9
+ beginPath(): void;
10
+ moveTo(x: number, y: number, z?: number): void;
11
+ lineTo(x: number, y: number, z?: number): void;
12
+ bezierCurveTo(cp1x: number, cp1y: number, cp2x: number, cp2y: number, x: number, y: number, z?: number): void;
13
+ quadraticCurveTo(cpx: number, cpy: number, x: number, y: number, z?: number): void;
14
+ arc(x: number, y: number, radius: number, startAngle: number, endAngle: number, anticlockwise?: boolean, z?: number): void;
15
+ arcTo(x1: number, y1: number, x2: number, y2: number, radius: number): void;
16
+ ellipse(x: number, y: number, radiusX: number, radiusY: number, rotation: number, startAngle: number, endAngle: number, anticlockwise?: boolean): void;
17
+ rect(x: number, y: number, w: number, h: number, z?: number): void;
18
+ closePath(): void;
19
+ get canvas(): ICanvas;
20
+ set canvas(value: ICanvas);
21
+ get camera(): ICamera | undefined;
22
+ set camera(value: ICamera | undefined);
23
+ get modelMatrix(): mat4 | undefined;
24
+ set modelMatrix(value: mat4 | undefined);
25
+ get nativeContext(): CanvasRenderingContext2D | any;
26
+ set nativeContext(value: CanvasRenderingContext2D | any);
27
+ get _inuse(): boolean;
28
+ set _inuse(value: boolean);
29
+ get inuse(): boolean;
30
+ set inuse(value: boolean);
31
+ get stack(): Matrix[];
32
+ set stack(value: Matrix[]);
33
+ get disableFill(): boolean | undefined;
34
+ set disableFill(value: boolean | undefined);
35
+ get disableStroke(): boolean | undefined;
36
+ set disableStroke(value: boolean | undefined);
37
+ get disableBeginPath(): boolean | undefined;
38
+ set disableBeginPath(value: boolean | undefined);
39
+ get fontFamily(): string;
40
+ set fontFamily(value: string);
41
+ get fontSize(): number;
42
+ set fontSize(value: number);
43
+ get _clearMatrix(): IMatrix;
44
+ set _clearMatrix(value: IMatrix);
45
+ get dpr(): number;
46
+ set dpr(value: number);
47
+ get baseGlobalAlpha(): number;
48
+ set baseGlobalAlpha(value: number);
49
+ get drawPromise(): Promise<any> | undefined;
50
+ set drawPromise(value: Promise<any> | undefined);
51
+ get mathTextMeasure(): TextMeasure<ITextMeasureSpec>;
52
+ set mathTextMeasure(value: TextMeasure<ITextMeasureSpec>);
53
+ get fillStyle(): string | CanvasGradient | CanvasPattern;
54
+ set fillStyle(value: string | CanvasGradient | CanvasPattern);
55
+ get font(): string;
56
+ set font(value: string);
57
+ get globalAlpha(): number;
58
+ set globalAlpha(value: number);
59
+ get lineCap(): CanvasLineCap;
60
+ set lineCap(value: CanvasLineCap);
61
+ get lineDashOffset(): number;
62
+ set lineDashOffset(value: number);
63
+ get lineJoin(): CanvasLineJoin;
64
+ set lineJoin(value: CanvasLineJoin);
65
+ get lineWidth(): number;
66
+ set lineWidth(value: number);
67
+ get miterLimit(): number;
68
+ set miterLimit(value: number);
69
+ get shadowBlur(): number;
70
+ set shadowBlur(value: number);
71
+ get shadowColor(): string;
72
+ set shadowColor(value: string);
73
+ get shadowOffsetX(): number;
74
+ set shadowOffsetX(value: number);
75
+ get shadowOffsetY(): number;
76
+ set shadowOffsetY(value: number);
77
+ get strokeStyle(): string | CanvasGradient | CanvasPattern;
78
+ set strokeStyle(value: string | CanvasGradient | CanvasPattern);
79
+ get textAlign(): CanvasTextAlign;
80
+ set textAlign(value: CanvasTextAlign);
81
+ get textBaseline(): CanvasTextBaseline;
82
+ set textBaseline(value: CanvasTextBaseline);
83
+ get currentMatrix(): IMatrix;
84
+ save(): void;
85
+ restore(): void;
86
+ highPerformanceSave(): void;
87
+ highPerformanceRestore(): void;
88
+ rotate(rad: number, setTransform?: boolean): void;
89
+ scale(sx: number, sy: number, setTransform?: boolean): void;
90
+ setScale(sx: number, sy: number, setTransform?: boolean): void;
91
+ scalePoint(sx: number, sy: number, px: number, py: number, setTransform?: boolean): void;
92
+ setTransform(a: number, b: number, c: number, d: number, e: number, f: number, setTransform?: boolean, dpr?: number): void;
93
+ setTransformFromMatrix(matrix: Matrix, setTransform?: boolean, dpr?: number): void;
94
+ resetTransform(setTransform?: boolean, dpr?: number): void;
95
+ transform(a: number, b: number, c: number, d: number, e: number, f: number, setTransform?: boolean): void;
96
+ transformFromMatrix(matrix: Matrix, setTransform?: boolean): void;
97
+ translate(x: number, y: number, setTransform?: boolean): void;
98
+ rotateDegrees(deg: number, setTransform?: boolean): void;
99
+ rotateAbout(rad: number, x: number, y: number, setTransform?: boolean): void;
100
+ rotateDegreesAbout(deg: number, x: number, y: number, setTransform?: boolean): void;
101
+ setTransformForCurrent(force?: boolean): void;
102
+ clip(fillRule?: CanvasFillRule): void;
103
+ clip(path: Path2D, fillRule?: CanvasFillRule): void;
104
+ fill(path?: Path2D, fillRule?: CanvasFillRule): void;
105
+ stroke(path?: Path2D): void;
106
+ fillRect(x: number, y: number, width: number, height: number): void;
107
+ strokeRect(x: number, y: number, width: number, height: number): void;
108
+ fillText(text: string, x: number, y: number, z?: number): void;
109
+ strokeText(text: string, x: number, y: number, z?: number): void;
110
+ clearRect(x: number, y: number, w: number, h: number): void;
111
+ drawImage(...args: any[]): void;
112
+ createImageData(...args: any[]): ImageData;
113
+ getImageData(sx: number, sy: number, sw: number, sh: number): ImageData;
114
+ putImageData(imagedata: ImageData, dx: number, dy: number): void;
115
+ createLinearGradient(x0: number, y0: number, x1: number, y1: number): CanvasGradient;
116
+ createRadialGradient(x0: number, y0: number, r0: number, x1: number, y1: number, r1: number): CanvasGradient;
117
+ createConicGradient(x: number, y: number, startAngle: number, endAngle: number): IConicalGradientData;
118
+ createPattern(image: HTMLImageElement | HTMLCanvasElement | HTMLVideoElement, repetition: string): CanvasPattern;
119
+ getLineDash(): number[];
120
+ setLineDash(segments: number[]): void;
121
+ clear(): void;
122
+ measureText(text: string, method?: 'native' | 'simple' | 'quick'): {
123
+ width: number;
124
+ };
125
+ isPointInPath(x: number, y: number): boolean;
126
+ isPointInStroke(x: number, y: number): boolean;
127
+ project(x: number, y: number, z?: number): IPointLike;
128
+ view(x: number, y: number, z?: number): vec3;
129
+ getCanvas(): ICanvas;
130
+ getContext(): CanvasRenderingContext2D | any;
131
+ setCommonStyle(params: ISetCommonStyleParams, attribute: ICommonStyleParams, offsetX: number, offsetY: number, defaultParams?: ICommonStyleParams | Partial<ICommonStyleParams>[]): void;
132
+ setShadowBlendStyle(params: ISetCommonStyleParams, attribute: ICommonStyleParams, defaultParams?: ICommonStyleParams | Partial<ICommonStyleParams>[]): void;
133
+ setStrokeStyle(params: ISetStrokeStyleParams, attribute: IStrokeStyleParams, offsetX: number, offsetY: number, defaultParams?: IStrokeStyleParams | any): void;
134
+ setTextStyle(params: Partial<ITextStyleParams>, defaultParams?: ITextStyleParams, z?: number): void;
135
+ setTextStyleWithoutAlignBaseline(params: Partial<ITextStyleParams>, defaultParams?: ITextStyleParams, z?: number): void;
136
+ clearMatrix(setTransform?: boolean, dpr?: number): void;
137
+ setClearMatrix(a: number, b: number, c: number, d: number, e: number, f: number): void;
138
+ onlyTranslate(dpr?: number): boolean;
139
+ cloneMatrix(m: Matrix): Matrix;
140
+ draw(): void;
141
+ release(...params: any): void;
142
+ }