vislite 0.6.0-alpha.0 → 0.6.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.
Files changed (110) hide show
  1. package/.eslintrc.js +26 -0
  2. package/CHANGELOG +3 -1
  3. package/README.md +11 -3
  4. package/lib/Buffer/index.umd.js +2 -2
  5. package/lib/Buffer/index.umd.min.js +2 -2
  6. package/lib/Canvas/index.umd.js +13 -8
  7. package/lib/Canvas/index.umd.min.js +3 -3
  8. package/lib/Cardinal/index.umd.js +2 -2
  9. package/lib/Cardinal/index.umd.min.js +2 -2
  10. package/lib/Eoap/index.umd.js +2 -2
  11. package/lib/Eoap/index.umd.min.js +2 -2
  12. package/lib/Geometry/index.umd.js +7 -4
  13. package/lib/Geometry/index.umd.min.js +2 -2
  14. package/lib/Hermite/index.umd.js +2 -2
  15. package/lib/Hermite/index.umd.min.js +2 -2
  16. package/lib/Matrix4/index.umd.js +2 -2
  17. package/lib/Matrix4/index.umd.min.js +2 -2
  18. package/lib/Mercator/index.umd.js +2 -2
  19. package/lib/Mercator/index.umd.min.js +2 -2
  20. package/lib/OralCanvas/index.es.js +8 -6
  21. package/lib/OralCanvas/index.es.min.js +3 -3
  22. package/lib/OralWebGL/index.es.js +7 -5
  23. package/lib/OralWebGL/index.es.min.js +3 -3
  24. package/lib/SVG/index.umd.js +6 -4
  25. package/lib/SVG/index.umd.min.js +2 -2
  26. package/lib/Shader/index.umd.js +2 -2
  27. package/lib/Shader/index.umd.min.js +2 -2
  28. package/lib/Texture/index.umd.js +4 -3
  29. package/lib/Texture/index.umd.min.js +2 -2
  30. package/lib/TreeLayout/index.umd.js +8 -5
  31. package/lib/TreeLayout/index.umd.min.js +2 -2
  32. package/lib/WebGL/index.umd.js +7 -5
  33. package/lib/WebGL/index.umd.min.js +3 -3
  34. package/lib/animation/index.umd.js +4 -3
  35. package/lib/animation/index.umd.min.js +2 -2
  36. package/lib/formatColor/index.umd.js +2 -2
  37. package/lib/formatColor/index.umd.min.js +2 -2
  38. package/lib/getLoopColors/index.umd.js +2 -2
  39. package/lib/getLoopColors/index.umd.min.js +2 -2
  40. package/lib/getWebGLContext/index.umd.js +4 -3
  41. package/lib/getWebGLContext/index.umd.min.js +2 -2
  42. package/lib/index.umd.js +35 -20
  43. package/lib/index.umd.min.js +3 -3
  44. package/lib/move/index.umd.js +2 -2
  45. package/lib/move/index.umd.min.js +2 -2
  46. package/lib/resizeObserver/index.umd.js +4 -3
  47. package/lib/resizeObserver/index.umd.min.js +2 -2
  48. package/lib/rotate/index.umd.js +2 -2
  49. package/lib/rotate/index.umd.min.js +2 -2
  50. package/lib/ruler/index.umd.js +2 -2
  51. package/lib/ruler/index.umd.min.js +2 -2
  52. package/lib/scale/index.umd.js +2 -2
  53. package/lib/scale/index.umd.min.js +2 -2
  54. package/lib/throttle/index.umd.js +2 -2
  55. package/lib/throttle/index.umd.min.js +2 -2
  56. package/lib/viewHandler/index.umd.js +4 -4
  57. package/lib/viewHandler/index.umd.min.js +3 -3
  58. package/package.json +6 -2
  59. package/src/Canvas.ts +70 -67
  60. package/src/Eoap.ts +66 -66
  61. package/src/Geometry.ts +82 -82
  62. package/src/Matrix4/index.ts +4 -4
  63. package/src/Matrix4/move.ts +12 -12
  64. package/src/Matrix4/rotate.ts +15 -15
  65. package/src/Matrix4/transform.ts +64 -64
  66. package/src/Mercator.ts +27 -27
  67. package/src/SVG.ts +24 -24
  68. package/src/WebGL.ts +66 -66
  69. package/src/animation.ts +98 -98
  70. package/src/common/assemble.ts +22 -22
  71. package/src/common/canvas/arc.ts +51 -50
  72. package/src/common/canvas/config.ts +158 -158
  73. package/src/common/canvas/gradient.ts +29 -29
  74. package/src/common/canvas/index.ts +13 -12
  75. package/src/common/canvas/painter.ts +417 -426
  76. package/src/common/geometry/prism-horizontal.ts +35 -33
  77. package/src/common/geometry/prism-vertical.ts +40 -40
  78. package/src/common/geometry/sphere-fragment.ts +40 -39
  79. package/src/common/geometry/tool/circle.ts +11 -11
  80. package/src/common/mergeOption.ts +6 -6
  81. package/src/common/setStyle.ts +5 -5
  82. package/src/common/svg/config.ts +186 -186
  83. package/src/common/svg/dictionary.ts +1 -1
  84. package/src/common/svg/gradient.ts +63 -63
  85. package/src/common/svg/index.ts +356 -356
  86. package/src/common/svg/tool.ts +44 -44
  87. package/src/common/tree/toInnerTree.ts +57 -56
  88. package/src/common/tree/toPlainTree.ts +132 -131
  89. package/src/common/webgl/buffer.ts +79 -79
  90. package/src/common/webgl/doDraw.ts +108 -108
  91. package/src/common/webgl/getColorFactory.ts +26 -26
  92. package/src/common/webgl/getShader.ts +48 -48
  93. package/src/common/webgl/getTexture.ts +11 -11
  94. package/src/common/webgl/getWebGLContext.ts +28 -27
  95. package/src/common/webgl/index.ts +224 -223
  96. package/src/common/webgl/shader.ts +75 -75
  97. package/src/common/webgl/texture.ts +97 -96
  98. package/src/formatColor.ts +44 -44
  99. package/src/getLoopColors.ts +42 -42
  100. package/src/interpolation/Cardinal.ts +110 -110
  101. package/src/interpolation/Hermite.ts +65 -65
  102. package/src/layout/TreeLayout.ts +21 -21
  103. package/src/move.ts +7 -7
  104. package/src/resizeObserver.ts +37 -36
  105. package/src/rotate.ts +7 -7
  106. package/src/ruler.ts +18 -18
  107. package/src/throttle.ts +52 -51
  108. package/src/viewHandler.ts +158 -158
  109. package/types/CanvasOption.d.ts +8 -7
  110. package/types/CanvasOpts.d.ts +10 -0
@@ -1,50 +1,51 @@
1
-
2
- // 点(x,y)围绕中心(cx,cy)旋转deg度
3
-
4
- let rotate = function (cx: number, cy: number, deg: number, x: number, y: number) {
5
- let cos = Math.cos(deg), sin = Math.sin(deg)
6
- return [
7
- +((x - cx) * cos - (y - cy) * sin + cx).toFixed(7),
8
- +((x - cx) * sin + (y - cy) * cos + cy).toFixed(7)
9
- ]
10
- }
11
-
12
- // r1和r2,内半径和外半径
13
- // beginA起点弧度,rotateA旋转弧度式
14
-
15
- export default function (beginA: number, rotateA: number, cx: number, cy: number, r1: number, r2: number, doback: Function) {
16
-
17
- // 保证逆时针也是可以的
18
- if (rotateA < 0) {
19
- beginA += rotateA
20
- rotateA *= -1
21
- }
22
-
23
- let temp: number[] = [], p: number[]
24
-
25
- // 内部
26
- p = rotate(0, 0, beginA, r1, 0)
27
- temp[0] = p[0]
28
- temp[1] = p[1]
29
- p = rotate(0, 0, rotateA, p[0], p[1])
30
- temp[2] = p[0]
31
- temp[3] = p[1]
32
-
33
- // 外部
34
- p = rotate(0, 0, beginA, r2, 0)
35
- temp[4] = p[0]
36
- temp[5] = p[1]
37
- p = rotate(0, 0, rotateA, p[0], p[1])
38
- temp[6] = p[0]
39
- temp[7] = p[1]
40
-
41
- doback(
42
- beginA, beginA + rotateA,
43
- temp[0] + cx, temp[1] + cy,
44
- temp[4] + cx, temp[5] + cy,
45
- temp[2] + cx, temp[3] + cy,
46
- temp[6] + cx, temp[7] + cy,
47
- (r2 - r1) * 0.5
48
- )
49
-
50
- }
1
+
2
+ // 点(x,y)围绕中心(cx,cy)旋转deg度
3
+
4
+ const rotate = function (cx: number, cy: number, deg: number, x: number, y: number) {
5
+ const cos = Math.cos(deg), sin = Math.sin(deg)
6
+ return [
7
+ +((x - cx) * cos - (y - cy) * sin + cx).toFixed(7),
8
+ +((x - cx) * sin + (y - cy) * cos + cy).toFixed(7)
9
+ ]
10
+ }
11
+
12
+ // r1和r2,内半径和外半径
13
+ // beginA起点弧度,rotateA旋转弧度式
14
+
15
+ export default function (beginA: number, rotateA: number, cx: number, cy: number, r1: number, r2: number, doback: Function) {
16
+
17
+ // 保证逆时针也是可以的
18
+ if (rotateA < 0) {
19
+ beginA += rotateA
20
+ rotateA *= -1
21
+ }
22
+
23
+ const temp: number[] = []
24
+ let p: number[]
25
+
26
+ // 内部
27
+ p = rotate(0, 0, beginA, r1, 0)
28
+ temp[0] = p[0]
29
+ temp[1] = p[1]
30
+ p = rotate(0, 0, rotateA, p[0], p[1])
31
+ temp[2] = p[0]
32
+ temp[3] = p[1]
33
+
34
+ // 外部
35
+ p = rotate(0, 0, beginA, r2, 0)
36
+ temp[4] = p[0]
37
+ temp[5] = p[1]
38
+ p = rotate(0, 0, rotateA, p[0], p[1])
39
+ temp[6] = p[0]
40
+ temp[7] = p[1]
41
+
42
+ doback(
43
+ beginA, beginA + rotateA,
44
+ temp[0] + cx, temp[1] + cy,
45
+ temp[4] + cx, temp[5] + cy,
46
+ temp[2] + cx, temp[3] + cy,
47
+ temp[6] + cx, temp[7] + cy,
48
+ (r2 - r1) * 0.5
49
+ )
50
+
51
+ }
@@ -1,158 +1,158 @@
1
- import type CanvasConfigType from "../../../types/CanvasConfig"
2
-
3
- import arc from "./arc"
4
-
5
- // 文字统一设置方法
6
- export let initText = function (
7
- painter: CanvasRenderingContext2D,
8
- config: CanvasConfigType,
9
- x: number,
10
- y: number,
11
- deg: number
12
- ) {
13
- painter.beginPath();
14
- painter.translate(x, y);
15
- painter.rotate(deg);
16
- painter.font =
17
- config.fontStyle +
18
- " " +
19
- config.fontWeight +
20
- " " +
21
- config.fontSize +
22
- "px " +
23
- config.fontFamily;
24
- return painter
25
- }
26
-
27
- // 画弧统一设置方法
28
- export let initArc = function (
29
- painter: CanvasRenderingContext2D,
30
- config: CanvasConfigType,
31
- cx: number,
32
- cy: number,
33
- r1: number,
34
- r2: number,
35
- beginDeg: number,
36
- deg: number
37
- ) {
38
- if (r1 > r2) {
39
- let temp = r1
40
- r1 = r2
41
- r2 = temp
42
- }
43
-
44
- beginDeg = beginDeg % (Math.PI * 2)
45
-
46
- // 当|deg|>=2π的时候都认为是一个圆环
47
- // 为什么不取2π比较,是怕部分浏览器浮点不精确
48
- if (deg >= Math.PI * 1.999999 || deg <= -Math.PI * 1.999999) {
49
- deg = Math.PI * 2
50
- } else {
51
- deg = deg % (Math.PI * 2)
52
- }
53
-
54
- arc(
55
- beginDeg,
56
- deg,
57
- cx,
58
- cy,
59
- r1,
60
- r2,
61
- function (
62
- beginA: number,
63
- endA: number,
64
- begInnerX: number,
65
- begInnerY: number,
66
- begOuterX: number,
67
- begOuterY: number,
68
- endInnerX: number,
69
- endInnerY: number,
70
- endOuterX: number,
71
- endOuterY: number,
72
- r: number
73
- ) {
74
- if (r < 0) r = -r
75
- painter.beginPath()
76
- painter.moveTo(begInnerX, begInnerY)
77
- painter.arc(
78
- // (圆心x,圆心y,半径,开始角度,结束角度,true逆时针/false顺时针)
79
- cx,
80
- cy,
81
- r1,
82
- beginA,
83
- endA,
84
- false
85
- )
86
- // 结尾
87
- if (config.arcEndCap == "round")
88
- painter.arc(
89
- (endInnerX + endOuterX) * 0.5,
90
- (endInnerY + endOuterY) * 0.5,
91
- r,
92
- endA - Math.PI,
93
- endA,
94
- true
95
- )
96
- else if (config.arcEndCap == "-round")
97
- painter.arc(
98
- (endInnerX + endOuterX) * 0.5,
99
- (endInnerY + endOuterY) * 0.5,
100
- r,
101
- endA - Math.PI,
102
- endA,
103
- false
104
- )
105
- else painter.lineTo(endOuterX, endOuterY)
106
-
107
- painter.arc(cx, cy, r2, endA, beginA, true)
108
- // 开头
109
- if (config.arcStartCap == "round")
110
- painter.arc(
111
- (begInnerX + begOuterX) * 0.5,
112
- (begInnerY + begOuterY) * 0.5,
113
- r,
114
- beginA,
115
- beginA - Math.PI,
116
- true
117
- )
118
- else if (config.arcStartCap == "-round")
119
- painter.arc(
120
- (begInnerX + begOuterX) * 0.5,
121
- (begInnerY + begOuterY) * 0.5,
122
- r,
123
- beginA,
124
- beginA - Math.PI,
125
- false
126
- )
127
- else painter.lineTo(begInnerX, begInnerY)
128
- }
129
- )
130
- if (config.arcStartCap == "butt") painter.closePath()
131
- return painter
132
- }
133
-
134
- // 画圆统一设置方法
135
- export let initCircle = function (
136
- painter: CanvasRenderingContext2D,
137
- cx: number,
138
- cy: number,
139
- r: number
140
- ) {
141
- painter.beginPath()
142
- painter.moveTo(cx + r, cy)
143
- painter.arc(cx, cy, r, 0, Math.PI * 2)
144
- return painter
145
- };
146
-
147
- // 画矩形统一设置方法
148
- export let initRect = function (
149
- painter: CanvasRenderingContext2D,
150
- x: number,
151
- y: number,
152
- width: number,
153
- height: number
154
- ) {
155
- painter.beginPath()
156
- painter.rect(x, y, width, height)
157
- return painter
158
- }
1
+ import type CanvasConfigType from "../../../types/CanvasConfig"
2
+
3
+ import arc from "./arc"
4
+
5
+ // 文字统一设置方法
6
+ export const initText = function (
7
+ painter: CanvasRenderingContext2D,
8
+ config: CanvasConfigType,
9
+ x: number,
10
+ y: number,
11
+ deg: number
12
+ ) {
13
+ painter.beginPath();
14
+ painter.translate(x, y);
15
+ painter.rotate(deg);
16
+ painter.font =
17
+ config.fontStyle +
18
+ " " +
19
+ config.fontWeight +
20
+ " " +
21
+ config.fontSize +
22
+ "px " +
23
+ config.fontFamily;
24
+ return painter
25
+ }
26
+
27
+ // 画弧统一设置方法
28
+ export const initArc = function (
29
+ painter: CanvasRenderingContext2D,
30
+ config: CanvasConfigType,
31
+ cx: number,
32
+ cy: number,
33
+ r1: number,
34
+ r2: number,
35
+ beginDeg: number,
36
+ deg: number
37
+ ) {
38
+ if (r1 > r2) {
39
+ const temp = r1
40
+ r1 = r2
41
+ r2 = temp
42
+ }
43
+
44
+ beginDeg = beginDeg % (Math.PI * 2)
45
+
46
+ // 当|deg|>=2π的时候都认为是一个圆环
47
+ // 为什么不取2π比较,是怕部分浏览器浮点不精确
48
+ if (deg >= Math.PI * 1.999999 || deg <= -Math.PI * 1.999999) {
49
+ deg = Math.PI * 2
50
+ } else {
51
+ deg = deg % (Math.PI * 2)
52
+ }
53
+
54
+ arc(
55
+ beginDeg,
56
+ deg,
57
+ cx,
58
+ cy,
59
+ r1,
60
+ r2,
61
+ function (
62
+ beginA: number,
63
+ endA: number,
64
+ begInnerX: number,
65
+ begInnerY: number,
66
+ begOuterX: number,
67
+ begOuterY: number,
68
+ endInnerX: number,
69
+ endInnerY: number,
70
+ endOuterX: number,
71
+ endOuterY: number,
72
+ r: number
73
+ ) {
74
+ if (r < 0) r = -r
75
+ painter.beginPath()
76
+ painter.moveTo(begInnerX, begInnerY)
77
+ painter.arc(
78
+ // (圆心x,圆心y,半径,开始角度,结束角度,true逆时针/false顺时针)
79
+ cx,
80
+ cy,
81
+ r1,
82
+ beginA,
83
+ endA,
84
+ false
85
+ )
86
+ // 结尾
87
+ if (config.arcEndCap == "round")
88
+ painter.arc(
89
+ (endInnerX + endOuterX) * 0.5,
90
+ (endInnerY + endOuterY) * 0.5,
91
+ r,
92
+ endA - Math.PI,
93
+ endA,
94
+ true
95
+ )
96
+ else if (config.arcEndCap == "-round")
97
+ painter.arc(
98
+ (endInnerX + endOuterX) * 0.5,
99
+ (endInnerY + endOuterY) * 0.5,
100
+ r,
101
+ endA - Math.PI,
102
+ endA,
103
+ false
104
+ )
105
+ else painter.lineTo(endOuterX, endOuterY)
106
+
107
+ painter.arc(cx, cy, r2, endA, beginA, true)
108
+ // 开头
109
+ if (config.arcStartCap == "round")
110
+ painter.arc(
111
+ (begInnerX + begOuterX) * 0.5,
112
+ (begInnerY + begOuterY) * 0.5,
113
+ r,
114
+ beginA,
115
+ beginA - Math.PI,
116
+ true
117
+ )
118
+ else if (config.arcStartCap == "-round")
119
+ painter.arc(
120
+ (begInnerX + begOuterX) * 0.5,
121
+ (begInnerY + begOuterY) * 0.5,
122
+ r,
123
+ beginA,
124
+ beginA - Math.PI,
125
+ false
126
+ )
127
+ else painter.lineTo(begInnerX, begInnerY)
128
+ }
129
+ )
130
+ if (config.arcStartCap == "butt") painter.closePath()
131
+ return painter
132
+ }
133
+
134
+ // 画圆统一设置方法
135
+ export const initCircle = function (
136
+ painter: CanvasRenderingContext2D,
137
+ cx: number,
138
+ cy: number,
139
+ r: number
140
+ ) {
141
+ painter.beginPath()
142
+ painter.moveTo(cx + r, cy)
143
+ painter.arc(cx, cy, r, 0, Math.PI * 2)
144
+ return painter
145
+ };
146
+
147
+ // 画矩形统一设置方法
148
+ export const initRect = function (
149
+ painter: CanvasRenderingContext2D,
150
+ x: number,
151
+ y: number,
152
+ width: number,
153
+ height: number
154
+ ) {
155
+ painter.beginPath()
156
+ painter.rect(x, y, width, height)
157
+ return painter
158
+ }
@@ -1,29 +1,29 @@
1
- // 线性渐变
2
- export let linearGradient = function (painter: CanvasRenderingContext2D, x0: number, y0: number, x1: number, y1: number) {
3
- let gradient = painter.createLinearGradient(x0, y0, x1, y1)
4
- let enhanceGradient = {
5
- "value": function () {
6
- return gradient
7
- },
8
- "setColor": function (stop: number, color: string) {
9
- gradient.addColorStop(stop, color)
10
- return enhanceGradient
11
- }
12
- };
13
- return enhanceGradient
14
- }
15
-
16
- // 环形渐变
17
- export let radialGradient = function (painter: CanvasRenderingContext2D, cx: number, cy: number, r: number) {
18
- let gradient = painter.createRadialGradient(cx, cy, 0, cx, cy, r)
19
- let enhanceGradient = {
20
- "value": function () {
21
- return gradient
22
- },
23
- "setColor": function (stop: number, color: string) {
24
- gradient.addColorStop(stop, color)
25
- return enhanceGradient
26
- }
27
- }
28
- return enhanceGradient
29
- }
1
+ // 线性渐变
2
+ export const linearGradient = function (painter: CanvasRenderingContext2D, x0: number, y0: number, x1: number, y1: number) {
3
+ const gradient = painter.createLinearGradient(x0, y0, x1, y1)
4
+ const enhanceGradient = {
5
+ "value": function () {
6
+ return gradient
7
+ },
8
+ "setColor": function (stop: number, color: string) {
9
+ gradient.addColorStop(stop, color)
10
+ return enhanceGradient
11
+ }
12
+ };
13
+ return enhanceGradient
14
+ }
15
+
16
+ // 环形渐变
17
+ export const radialGradient = function (painter: CanvasRenderingContext2D, cx: number, cy: number, r: number) {
18
+ const gradient = painter.createRadialGradient(cx, cy, 0, cx, cy, r)
19
+ const enhanceGradient = {
20
+ "value": function () {
21
+ return gradient
22
+ },
23
+ "setColor": function (stop: number, color: string) {
24
+ gradient.addColorStop(stop, color)
25
+ return enhanceGradient
26
+ }
27
+ }
28
+ return enhanceGradient
29
+ }
@@ -1,4 +1,5 @@
1
1
  import type CanvasConfigType from "../../../types/CanvasConfig"
2
+ import type CanvasOptsType from '../../../types/CanvasOpts'
2
3
 
3
4
  import PainterRender from "./painter"
4
5
  import assemble from "../assemble"
@@ -6,7 +7,7 @@ import { linearGradient, radialGradient } from "./gradient"
6
7
  import { initText } from './config'
7
8
 
8
9
  // 属性名向下兼容
9
- let oldAttrName = {
10
+ const oldAttrName = {
10
11
  "font-size": "fontSize",
11
12
  "font-family": "fontFamily",
12
13
  "font-weight": "fontWeight",
@@ -24,10 +25,10 @@ class Canvas extends PainterRender {
24
25
  // 2023年7月6日 于南京
25
26
  private __regionAssemble = assemble(0, 255, 10, 3)
26
27
 
27
- constructor(ViewCanvas: HTMLCanvasElement, RegionCanvas: HTMLCanvasElement) {
28
+ constructor(ViewCanvas: HTMLCanvasElement, RegionCanvas: HTMLCanvasElement, opts: CanvasOptsType = {}) {
28
29
  super(
29
30
  ViewCanvas,
30
- {},
31
+ opts,
31
32
  RegionCanvas ? new PainterRender(RegionCanvas, {
32
33
  willReadFrequently: true,
33
34
  }) : null, true
@@ -37,8 +38,8 @@ class Canvas extends PainterRender {
37
38
  }
38
39
 
39
40
  config(configs: CanvasConfigType) {
40
- for (let key in configs) {
41
- let _key = oldAttrName[key] || key
41
+ for (const key in configs) {
42
+ const _key = oldAttrName[key] || key
42
43
  this.useConfig(_key, configs[key])
43
44
  }
44
45
 
@@ -56,7 +57,7 @@ class Canvas extends PainterRender {
56
57
  if (this.__region) {
57
58
  if (regionName) {
58
59
  if (this.__regionList[regionName] == void 0) {
59
- let tempColor = this.__regionAssemble()
60
+ const tempColor = this.__regionAssemble()
60
61
  this.__regionList[regionName] =
61
62
  "rgb(" + tempColor[0] + "," + tempColor[1] + "," + tempColor[2] + ")"
62
63
  }
@@ -73,19 +74,19 @@ class Canvas extends PainterRender {
73
74
 
74
75
  // 获取当前事件触发的区域名称
75
76
  getRegion(x: number, y: number): Promise<string> {
76
- return new Promise((resolve, reject) => {
77
- let imgData = this.__region ? this.__region.painter.getImageData(x - 0.5, y - 0.5, 1, 1) : {
77
+ return new Promise((resolve) => {
78
+ const imgData = this.__region ? this.__region.painter.getImageData(x - 0.5, y - 0.5, 1, 1) : {
78
79
  data: [0, 0, 0, 0]
79
80
  }
80
81
 
81
82
  // 获取点击点的颜色
82
83
  let currentRGBA = imgData.data
83
84
 
84
- let doit = () => {
85
+ const doit = () => {
85
86
  if (this.__region) {
86
87
 
87
88
  // 查找当前点击的区域
88
- for (let key in this.__regionList) {
89
+ for (const key in this.__regionList) {
89
90
  if (
90
91
  "rgb(" +
91
92
  currentRGBA[0] +
@@ -126,7 +127,7 @@ class Canvas extends PainterRender {
126
127
  initText(this.painter, this.__specialConfig, 0, 0, 0)
127
128
 
128
129
  // 虽然我们限制了只可以输入字符串,可是不代表所有环境都可以保证,为了确保方法不失效,强转成字符串
129
- let width = this.painter.measureText(text + "").width
130
+ const width = this.painter.measureText(text + "").width
130
131
 
131
132
  this.painter.restore()
132
133
 
@@ -158,7 +159,7 @@ class Canvas extends PainterRender {
158
159
 
159
160
  // 获取指定位置颜色
160
161
  getColor(x: number, y: number) {
161
- let currentRGBA = this.painter.getImageData(x - 0.5, y - 0.5, 1, 1).data
162
+ const currentRGBA = this.painter.getImageData(x - 0.5, y - 0.5, 1, 1).data
162
163
  return (
163
164
  "rgba(" +
164
165
  currentRGBA[0] +