@visactor/vrender-kits 1.0.0-alpha.5 → 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.
- package/cjs/canvas/contributions/browser/context.d.ts +1 -1
- package/cjs/canvas/contributions/browser/context.js +1 -0
- package/cjs/canvas/contributions/browser/context.js.map +1 -1
- package/cjs/canvas/contributions/modules.js +2 -1
- package/cjs/env/contributions/module.js +2 -0
- package/cjs/env/contributions/node-contribution.js +1 -1
- package/cjs/index.d.ts +2 -0
- package/cjs/index.js +2 -1
- package/cjs/index.js.map +1 -1
- package/cjs/picker/contributions/canvas-picker/star-module.d.ts +2 -0
- package/cjs/picker/contributions/canvas-picker/star-module.js +15 -0
- package/cjs/picker/contributions/canvas-picker/star-module.js.map +1 -0
- package/cjs/picker/contributions/canvas-picker/star-picker.d.ts +8 -0
- package/cjs/picker/contributions/canvas-picker/star-picker.js +30 -0
- package/cjs/picker/contributions/canvas-picker/star-picker.js.map +1 -0
- package/cjs/picker/contributions/constants.d.ts +1 -0
- package/cjs/picker/contributions/constants.js +2 -2
- package/cjs/picker/contributions/constants.js.map +1 -1
- package/cjs/register/register-gif.d.ts +7 -0
- package/cjs/register/register-gif.js +19 -0
- package/cjs/register/register-gif.js.map +1 -0
- package/cjs/register/register-glyph.js +2 -1
- package/cjs/register/register-star.d.ts +6 -0
- package/cjs/register/register-star.js +16 -0
- package/cjs/register/register-star.js.map +1 -0
- package/cjs/render/contributions/rough/base-render.d.ts +3 -1
- package/cjs/render/contributions/rough/base-render.js +49 -0
- package/cjs/render/contributions/rough/base-render.js.map +1 -1
- package/cjs/render/contributions/rough/config.js +4 -4
- package/cjs/render/contributions/rough/config.js.map +1 -1
- package/cjs/render/contributions/rough/context.d.ts +142 -0
- package/cjs/render/contributions/rough/context.js +408 -0
- package/cjs/render/contributions/rough/context.js.map +1 -0
- package/cjs/render/contributions/rough/rough-line.d.ts +6 -4
- package/cjs/render/contributions/rough/rough-line.js +14 -48
- package/cjs/render/contributions/rough/rough-line.js.map +1 -1
- package/cjs/render/contributions/rough/rough-rect.d.ts +1 -1
- package/cjs/render/contributions/rough/rough-rect.js +2 -44
- package/cjs/render/contributions/rough/rough-rect.js.map +1 -1
- package/cjs/render/contributions/rough/rough-symbol.d.ts +3 -4
- package/cjs/render/contributions/rough/rough-symbol.js +3 -47
- package/cjs/render/contributions/rough/rough-symbol.js.map +1 -1
- package/cjs/tools/dynamicTexture.js +2 -0
- package/dist/index.es.js +544 -174
- package/es/canvas/contributions/browser/context.d.ts +1 -1
- package/es/canvas/contributions/browser/context.js +1 -0
- package/es/canvas/contributions/browser/context.js.map +1 -1
- package/es/canvas/contributions/modules.js +2 -1
- package/es/env/contributions/module.js +2 -0
- package/es/env/contributions/node-contribution.js +1 -1
- package/es/index.d.ts +2 -0
- package/es/index.js +4 -0
- package/es/index.js.map +1 -1
- package/es/picker/contributions/canvas-picker/star-module.d.ts +2 -0
- package/es/picker/contributions/canvas-picker/star-module.js +13 -0
- package/es/picker/contributions/canvas-picker/star-module.js.map +1 -0
- package/es/picker/contributions/canvas-picker/star-picker.d.ts +8 -0
- package/es/picker/contributions/canvas-picker/star-picker.js +26 -0
- package/es/picker/contributions/canvas-picker/star-picker.js.map +1 -0
- package/es/picker/contributions/constants.d.ts +1 -0
- package/es/picker/contributions/constants.js +2 -0
- package/es/picker/contributions/constants.js.map +1 -1
- package/es/register/register-gif.d.ts +7 -0
- package/es/register/register-gif.js +20 -0
- package/es/register/register-gif.js.map +1 -0
- package/es/register/register-glyph.js +2 -1
- package/es/register/register-star.d.ts +6 -0
- package/es/register/register-star.js +15 -0
- package/es/register/register-star.js.map +1 -0
- package/es/render/contributions/rough/base-render.d.ts +3 -1
- package/es/render/contributions/rough/base-render.js +49 -0
- package/es/render/contributions/rough/base-render.js.map +1 -1
- package/es/render/contributions/rough/config.js +4 -4
- package/es/render/contributions/rough/config.js.map +1 -1
- package/es/render/contributions/rough/context.d.ts +142 -0
- package/es/render/contributions/rough/context.js +402 -0
- package/es/render/contributions/rough/context.js.map +1 -0
- package/es/render/contributions/rough/rough-line.d.ts +6 -4
- package/es/render/contributions/rough/rough-line.js +15 -48
- package/es/render/contributions/rough/rough-line.js.map +1 -1
- package/es/render/contributions/rough/rough-rect.d.ts +1 -1
- package/es/render/contributions/rough/rough-rect.js +1 -43
- package/es/render/contributions/rough/rough-rect.js.map +1 -1
- package/es/render/contributions/rough/rough-symbol.d.ts +3 -4
- package/es/render/contributions/rough/rough-symbol.js +4 -46
- package/es/render/contributions/rough/rough-symbol.js.map +1 -1
- package/es/tools/dynamicTexture.js +2 -0
- package/package.json +2 -2
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { container, starModule, registerStarGraphic } from "@visactor/vrender-core";
|
|
2
|
+
|
|
3
|
+
import { browser } from "./env";
|
|
4
|
+
|
|
5
|
+
import { starCanvasPickModule } from "../picker/contributions/canvas-picker/star-module";
|
|
6
|
+
|
|
7
|
+
function _registerStar() {
|
|
8
|
+
_registerStar.__loaded || (_registerStar.__loaded = !0, registerStarGraphic(), container.load(starModule),
|
|
9
|
+
container.load(starCanvasPickModule));
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
_registerStar.__loaded = !1;
|
|
13
|
+
|
|
14
|
+
export const registerStar = _registerStar;
|
|
15
|
+
//# sourceMappingURL=register-star.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/register/register-star.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AACpF,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,oBAAoB,EAAE,MAAM,mDAAmD,CAAC;AAEzF,SAAS,aAAa;IACpB,IAAI,aAAa,CAAC,QAAQ,EAAE;QAC1B,OAAO;KACR;IACD,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC9B,mBAAmB,EAAE,CAAC;IACtB,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC3B,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC;AACxE,CAAC;AAED,aAAa,CAAC,QAAQ,GAAG,KAAK,CAAC;AAE/B,MAAM,CAAC,MAAM,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 {
|
|
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,6 +1,55 @@
|
|
|
1
|
+
import { CustomPath2D } from "@visactor/vrender-core";
|
|
2
|
+
|
|
3
|
+
import rough from "roughjs";
|
|
4
|
+
|
|
5
|
+
import { RoughContext2d } from "./context";
|
|
6
|
+
|
|
7
|
+
import { defaultRouthThemeSpec } from "./config";
|
|
8
|
+
|
|
1
9
|
export class RoughBaseRender {
|
|
2
10
|
drawShape(graphic, ctx, x, y, drawContext, params, fillCb, strokeCb) {
|
|
3
11
|
if (this.canvasRenderer.drawShape) return this.canvasRenderer.drawShape(graphic, ctx, x, y, drawContext, params, fillCb, strokeCb);
|
|
4
12
|
}
|
|
13
|
+
doDraw(graphic, renderService, drawContext, params) {
|
|
14
|
+
const {context: context} = drawContext;
|
|
15
|
+
if (!context) return;
|
|
16
|
+
const canvas = context.canvas.nativeCanvas, rc = rough.canvas(canvas), customPath = new CustomPath2D, roughContext = new RoughContext2d(context, customPath);
|
|
17
|
+
context.save(), context.transformFromMatrix(graphic.transMatrix, !0);
|
|
18
|
+
const {fill: fill, stroke: stroke, roughStyle: roughStyle = {}, lineWidth: lineWidth} = graphic.attribute, {maxRandomnessOffset: maxRandomnessOffset = defaultRouthThemeSpec.maxRandomnessOffset, roughness: roughness = defaultRouthThemeSpec.roughness, bowing: bowing = defaultRouthThemeSpec.bowing, curveFitting: curveFitting = defaultRouthThemeSpec.curveFitting, curveTightness: curveTightness = defaultRouthThemeSpec.curveTightness, curveStepCount: curveStepCount = defaultRouthThemeSpec.curveStepCount, fillStyle: fillStyle = defaultRouthThemeSpec.fillStyle, fillWeight: fillWeight = defaultRouthThemeSpec.fillWeight, hachureAngle: hachureAngle = defaultRouthThemeSpec.hachureAngle, hachureGap: hachureGap = defaultRouthThemeSpec.hachureGap, simplification: simplification = defaultRouthThemeSpec.simplification, dashOffset: dashOffset = defaultRouthThemeSpec.dashOffset, dashGap: dashGap = defaultRouthThemeSpec.dashGap, zigzagOffset: zigzagOffset = defaultRouthThemeSpec.zigzagOffset, seed: seed = defaultRouthThemeSpec.seed, fillLineDash: fillLineDash = defaultRouthThemeSpec.fillLineDash, fillLineDashOffset: fillLineDashOffset = defaultRouthThemeSpec.fillLineDashOffset, disableMultiStroke: disableMultiStroke = defaultRouthThemeSpec.disableMultiStroke, disableMultiStrokeFill: disableMultiStrokeFill = defaultRouthThemeSpec.disableMultiStrokeFill, preserveVertices: preserveVertices = defaultRouthThemeSpec.preserveVertices, fixedDecimalPlaceDigits: fixedDecimalPlaceDigits = defaultRouthThemeSpec.fixedDecimalPlaceDigits} = roughStyle;
|
|
19
|
+
let rendered = !1;
|
|
20
|
+
const doRender = () => {
|
|
21
|
+
if (rendered) return;
|
|
22
|
+
rendered = !0;
|
|
23
|
+
const path = customPath.toString();
|
|
24
|
+
context.beginPath(), rc.path(path, {
|
|
25
|
+
fill: fill,
|
|
26
|
+
stroke: stroke,
|
|
27
|
+
strokeWidth: lineWidth,
|
|
28
|
+
maxRandomnessOffset: maxRandomnessOffset,
|
|
29
|
+
roughness: roughness,
|
|
30
|
+
bowing: bowing,
|
|
31
|
+
curveFitting: curveFitting,
|
|
32
|
+
curveTightness: curveTightness,
|
|
33
|
+
curveStepCount: curveStepCount,
|
|
34
|
+
fillStyle: fillStyle,
|
|
35
|
+
fillWeight: fillWeight,
|
|
36
|
+
hachureAngle: hachureAngle,
|
|
37
|
+
hachureGap: hachureGap,
|
|
38
|
+
simplification: simplification,
|
|
39
|
+
dashOffset: dashOffset,
|
|
40
|
+
dashGap: dashGap,
|
|
41
|
+
zigzagOffset: zigzagOffset,
|
|
42
|
+
seed: seed,
|
|
43
|
+
fillLineDash: fillLineDash,
|
|
44
|
+
fillLineDashOffset: fillLineDashOffset,
|
|
45
|
+
disableMultiStroke: disableMultiStroke,
|
|
46
|
+
disableMultiStrokeFill: disableMultiStrokeFill,
|
|
47
|
+
preserveVertices: preserveVertices,
|
|
48
|
+
fixedDecimalPlaceDigits: fixedDecimalPlaceDigits
|
|
49
|
+
});
|
|
50
|
+
};
|
|
51
|
+
this.canvasRenderer.drawShape(graphic, roughContext, 0, 0, drawContext, params, (() => (doRender(),
|
|
52
|
+
!1)), (() => (doRender(), !1))), context.restore();
|
|
53
|
+
}
|
|
5
54
|
}
|
|
6
55
|
//# sourceMappingURL=base-render.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/render/contributions/rough/base-render.ts"],"names":[],"mappings":"
|
|
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"]}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
export const defaultRouthThemeSpec = {
|
|
2
2
|
maxRandomnessOffset: 3,
|
|
3
|
-
roughness: 1,
|
|
3
|
+
roughness: 1.6,
|
|
4
4
|
bowing: 1,
|
|
5
5
|
curveFitting: .95,
|
|
6
6
|
curveTightness: void 0,
|
|
7
7
|
curveStepCount: 9,
|
|
8
|
-
fillStyle: "
|
|
8
|
+
fillStyle: "cross-hatch",
|
|
9
9
|
fillWeight: void 0,
|
|
10
10
|
hachureAngle: 60,
|
|
11
11
|
hachureGap: 6,
|
|
@@ -13,11 +13,11 @@ export const defaultRouthThemeSpec = {
|
|
|
13
13
|
dashOffset: void 0,
|
|
14
14
|
dashGap: void 0,
|
|
15
15
|
zigzagOffset: void 0,
|
|
16
|
-
seed:
|
|
16
|
+
seed: 3,
|
|
17
17
|
fillLineDash: void 0,
|
|
18
18
|
fillLineDashOffset: void 0,
|
|
19
19
|
disableMultiStroke: !1,
|
|
20
|
-
disableMultiStrokeFill: !
|
|
20
|
+
disableMultiStrokeFill: !0,
|
|
21
21
|
preserveVertices: !0,
|
|
22
22
|
fixedDecimalPlaceDigits: void 0
|
|
23
23
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/render/contributions/rough/config.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,qBAAqB,GAAY;IAC5C,mBAAmB,EAAE,CAAC;IAEtB,SAAS,EAAE,
|
|
1
|
+
{"version":3,"sources":["../src/render/contributions/rough/config.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,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
|
+
}
|