vislite 1.0.0 → 1.1.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.
Files changed (143) hide show
  1. package/AUTHORS.txt +6 -6
  2. package/CHANGELOG +244 -239
  3. package/LICENSE +20 -20
  4. package/README.md +142 -134
  5. package/lib/Buffer/index.es.js +1 -1
  6. package/lib/Buffer/index.es.min.js +1 -1
  7. package/lib/Canvas/index.es.js +1 -1
  8. package/lib/Canvas/index.es.min.js +1 -1
  9. package/lib/Cardinal/index.es.js +1 -1
  10. package/lib/Cardinal/index.es.min.js +1 -1
  11. package/lib/Eoap/index.es.js +1 -1
  12. package/lib/Eoap/index.es.min.js +1 -1
  13. package/lib/Hermite/index.es.js +1 -1
  14. package/lib/Hermite/index.es.min.js +1 -1
  15. package/lib/Matrix4/index.es.js +1 -1
  16. package/lib/Matrix4/index.es.min.js +1 -1
  17. package/lib/Mercator/index.es.js +1 -1
  18. package/lib/Mercator/index.es.min.js +1 -1
  19. package/lib/SVG/index.es.js +1 -1
  20. package/lib/SVG/index.es.min.js +1 -1
  21. package/lib/Shader/index.es.js +1 -1
  22. package/lib/Shader/index.es.min.js +1 -1
  23. package/lib/Texture/index.es.js +1 -1
  24. package/lib/Texture/index.es.min.js +1 -1
  25. package/lib/TreeLayout/index.es.js +1 -1
  26. package/lib/TreeLayout/index.es.min.js +1 -1
  27. package/lib/animation/index.es.js +1 -1
  28. package/lib/animation/index.es.min.js +1 -1
  29. package/lib/getLoopColors/index.es.js +1 -1
  30. package/lib/getLoopColors/index.es.min.js +1 -1
  31. package/lib/getWebGLContext/index.es.js +1 -1
  32. package/lib/getWebGLContext/index.es.min.js +1 -1
  33. package/lib/index.es.js +2278 -0
  34. package/lib/index.es.min.js +5 -0
  35. package/lib/index.umd.js +1 -1
  36. package/lib/index.umd.min.js +1 -1
  37. package/lib/move/index.es.js +1 -1
  38. package/lib/move/index.es.min.js +1 -1
  39. package/lib/rotate/index.es.js +1 -1
  40. package/lib/rotate/index.es.min.js +1 -1
  41. package/lib/ruler/index.es.js +1 -1
  42. package/lib/ruler/index.es.min.js +1 -1
  43. package/lib/scale/index.es.js +1 -1
  44. package/lib/scale/index.es.min.js +1 -1
  45. package/lib/throttle/index.es.js +1 -1
  46. package/lib/throttle/index.es.min.js +1 -1
  47. package/miniprogram/ui-canvas/drawImage.js +35 -35
  48. package/miniprogram/ui-canvas/index.js +115 -115
  49. package/miniprogram/ui-canvas/index.json +4 -4
  50. package/miniprogram/ui-canvas/index.wxml +4 -4
  51. package/miniprogram/ui-canvas/index.wxss +5 -5
  52. package/package/Buffer/index.ts +2 -2
  53. package/package/Canvas/index.ts +2 -2
  54. package/package/Cardinal/index.ts +2 -2
  55. package/package/Eoap/index.ts +2 -2
  56. package/package/Hermite/index.ts +2 -2
  57. package/package/Matrix4/index.ts +2 -2
  58. package/package/Mercator/index.ts +2 -2
  59. package/package/SVG/index.ts +2 -2
  60. package/package/Shader/index.ts +2 -2
  61. package/package/Texture/index.ts +2 -2
  62. package/package/TreeLayout/index.ts +2 -2
  63. package/package/animation/index.ts +2 -2
  64. package/package/getLoopColors/index.ts +2 -2
  65. package/package/getWebGLContext/index.ts +40 -40
  66. package/package/index.ts +65 -65
  67. package/package/move/index.ts +2 -2
  68. package/package/rotate/index.ts +2 -2
  69. package/package/ruler/index.ts +2 -2
  70. package/package/scale/index.ts +2 -2
  71. package/package/throttle/index.ts +2 -2
  72. package/package.json +75 -73
  73. package/src/Canvas.ts +73 -73
  74. package/src/Eoap.ts +66 -66
  75. package/src/Matrix4/index.ts +84 -84
  76. package/src/Matrix4/move.ts +12 -12
  77. package/src/Matrix4/rotate.ts +15 -15
  78. package/src/Matrix4/scale.ts +11 -11
  79. package/src/Matrix4/transform.ts +64 -64
  80. package/src/Mercator.ts +27 -27
  81. package/src/SVG.ts +24 -24
  82. package/src/animation.ts +98 -98
  83. package/src/common/assemble.ts +22 -22
  84. package/src/common/canvas/arc.ts +51 -51
  85. package/src/common/canvas/config.ts +158 -158
  86. package/src/common/canvas/gradient.ts +24 -24
  87. package/src/common/canvas/index.ts +177 -177
  88. package/src/common/canvas/painter.ts +455 -455
  89. package/src/common/canvas/texts.ts +18 -18
  90. package/src/common/mergeOption.ts +6 -6
  91. package/src/common/setStyle.ts +5 -5
  92. package/src/common/svg/config.ts +190 -190
  93. package/src/common/svg/gradient.ts +53 -53
  94. package/src/common/svg/index.ts +347 -347
  95. package/src/common/svg/tool.ts +44 -44
  96. package/src/common/tree/index.ts +25 -25
  97. package/src/common/tree/toInnerTree.ts +59 -59
  98. package/src/common/tree/toPlainTree.ts +132 -132
  99. package/src/common/webgl/buffer.ts +79 -79
  100. package/src/common/webgl/getWebGLContext.ts +45 -45
  101. package/src/common/webgl/shader.ts +75 -75
  102. package/src/common/webgl/texture.ts +97 -97
  103. package/src/getLoopColors.ts +42 -42
  104. package/src/interpolation/Cardinal.ts +110 -110
  105. package/src/interpolation/Hermite.ts +65 -65
  106. package/src/layout/TreeLayout.ts +188 -188
  107. package/src/move.ts +7 -7
  108. package/src/rotate.ts +7 -7
  109. package/src/ruler.ts +209 -209
  110. package/src/scale.ts +6 -6
  111. package/src/throttle.ts +52 -52
  112. package/types/Buffer.d.ts +23 -23
  113. package/types/Canvas.d.ts +323 -323
  114. package/types/CanvasConfig.d.ts +106 -106
  115. package/types/CanvasOption.d.ts +8 -8
  116. package/types/CanvasOpts.d.ts +9 -9
  117. package/types/Cardinal.d.ts +13 -13
  118. package/types/Gradient.d.ts +14 -14
  119. package/types/Hermite.d.ts +18 -18
  120. package/types/Map.d.ts +9 -9
  121. package/types/Matrix4.d.ts +47 -47
  122. package/types/SVG.d.ts +238 -238
  123. package/types/SVGConfig.d.ts +79 -79
  124. package/types/Shader.d.ts +16 -16
  125. package/types/Texture.d.ts +16 -16
  126. package/types/Tree.d.ts +69 -69
  127. package/types/TreeConfig.d.ts +36 -36
  128. package/types/TreeLayout.d.ts +54 -54
  129. package/types/TreeOption.d.ts +48 -48
  130. package/types/animation.d.ts +9 -9
  131. package/types/getLoopColors.d.ts +5 -5
  132. package/types/getWebGLContext.d.ts +7 -7
  133. package/types/index.d.ts +145 -145
  134. package/types/move.d.ts +5 -5
  135. package/types/painterConfig.d.ts +2 -2
  136. package/types/rotate.d.ts +5 -5
  137. package/types/ruler.d.ts +10 -10
  138. package/types/scale.d.ts +5 -5
  139. package/types/throttle.d.ts +7 -7
  140. package/types/throttleOption.d.ts +21 -21
  141. package/types/ui-canvas.d.ts +4 -4
  142. package/uni-app/drawImage.js +19 -19
  143. package/uni-app/ui-canvas.vue +283 -283
package/types/index.d.ts CHANGED
@@ -1,146 +1,146 @@
1
- import CardinalType from './Cardinal'
2
- import HermiteType from './Hermite'
3
-
4
- import Matrix4Type from './Matrix4'
5
- import rotateType from './rotate'
6
- import moveType from './move'
7
- import scaleType from './scale'
8
-
9
- import getLoopColorsType from './getLoopColors'
10
- import animationType from './animation'
11
- import rulerType from './ruler'
12
-
13
- import SVGType from './SVG'
14
- import CanvasType from './Canvas'
15
-
16
- import CanvasOptionType from './CanvasOption'
17
-
18
- import getWebGLContextType from './getWebGLContext'
19
- import ShaderType from './Shader'
20
- import BufferType from './Buffer'
21
- import TextureType from './Texture'
22
-
23
- import MapType from './Map'
24
-
25
- import throttleType from './throttle'
26
-
27
- import TreeLayoutType from './TreeLayout'
28
- import TreeConfigType from './TreeConfig'
29
-
30
- // 插值
31
- interface NewCardinalType extends CardinalType {
32
- new(t?: number): this
33
- }
34
- interface NewHermiteType extends HermiteType {
35
- new(u?: number): this
36
- }
37
-
38
- // 变换
39
- interface NewMatrix4Type extends Matrix4Type {
40
- new(initMatrix4?: number[]): this
41
- }
42
-
43
- // 画笔
44
- interface NewSVGType extends SVGType {
45
- new(el: HTMLElement | null): this
46
- }
47
- interface NewCanvasType extends CanvasType {
48
- new(el: HTMLElement | null, option?: CanvasOptionType, width?: number, height?: number): this
49
- }
50
-
51
- // WebGL
52
- interface NewShaderType extends ShaderType {
53
- new(painter: WebGLRenderingContext): this
54
- }
55
- interface NewBufferType extends BufferType {
56
- new(painter: WebGLRenderingContext, isElement?: boolean): this
57
- }
58
- interface NewTextureType extends TextureType {
59
- new(painter: WebGLRenderingContext, type: string, unit?: number): this
60
- }
61
-
62
- // 投影
63
- interface NewEoapType extends MapType {
64
- new(scale?: number, center?: number[]): this
65
- }
66
- interface NewMercatorType extends MapType {
67
- new(scale?: number, center?: number[]): this
68
- }
69
-
70
- // 布局
71
- interface NewTreeLayoutType extends TreeLayoutType {
72
- new(config?: TreeConfigType): this
73
- }
74
-
75
- export default class VISLite {
76
-
77
- // 插值
78
- static Cardinal: NewCardinalType
79
- static Hermite: NewHermiteType
80
-
81
- // 变换
82
- static Matrix4: NewMatrix4Type
83
- static rotate: rotateType
84
- static move: moveType
85
- static scale: scaleType
86
-
87
- // 工具
88
- static getLoopColors: getLoopColorsType
89
- static animation: animationType
90
- static ruler: rulerType
91
-
92
- // 画笔
93
- static SVG: NewSVGType
94
- static Canvas: NewCanvasType
95
-
96
- // WebGL
97
- static getWebGLContext: getWebGLContextType
98
- static Shader: NewShaderType
99
- static Buffer: NewBufferType
100
- static Texture: NewTextureType
101
-
102
- // 投影
103
- static Eoap: NewEoapType
104
- static Mercator: NewMercatorType
105
-
106
- // 辅助
107
- static throttle: throttleType
108
-
109
- // 布局
110
- static TreeLayout: NewTreeLayoutType
111
- }
112
-
113
- // 插值
114
- export let Cardinal: NewCardinalType
115
- export let Hermite: NewHermiteType
116
-
117
- // 变换
118
- export let Matrix4: NewMatrix4Type
119
- export let rotate: rotateType
120
- export let move: moveType
121
- export let scale: scaleType
122
-
123
- // 工具
124
- export let getLoopColors: getLoopColorsType
125
- export let animation: animationType
126
- export let ruler: rulerType
127
-
128
- // 画笔
129
- export let SVG: NewSVGType
130
- export let Canvas: NewCanvasType
131
-
132
- // WebGL
133
- export let getWebGLContext: getWebGLContextType
134
- export let Shader: NewShaderType
135
- export let Buffer: NewBufferType
136
- export let Texture: NewTextureType
137
-
138
- // 投影
139
- export let Eoap: NewEoapType
140
- export let Mercator: NewMercatorType
141
-
142
- // 辅助
143
- export let throttle: throttleType
144
-
145
- // 布局
1
+ import CardinalType from './Cardinal'
2
+ import HermiteType from './Hermite'
3
+
4
+ import Matrix4Type from './Matrix4'
5
+ import rotateType from './rotate'
6
+ import moveType from './move'
7
+ import scaleType from './scale'
8
+
9
+ import getLoopColorsType from './getLoopColors'
10
+ import animationType from './animation'
11
+ import rulerType from './ruler'
12
+
13
+ import SVGType from './SVG'
14
+ import CanvasType from './Canvas'
15
+
16
+ import CanvasOptionType from './CanvasOption'
17
+
18
+ import getWebGLContextType from './getWebGLContext'
19
+ import ShaderType from './Shader'
20
+ import BufferType from './Buffer'
21
+ import TextureType from './Texture'
22
+
23
+ import MapType from './Map'
24
+
25
+ import throttleType from './throttle'
26
+
27
+ import TreeLayoutType from './TreeLayout'
28
+ import TreeConfigType from './TreeConfig'
29
+
30
+ // 插值
31
+ interface NewCardinalType extends CardinalType {
32
+ new(t?: number): this
33
+ }
34
+ interface NewHermiteType extends HermiteType {
35
+ new(u?: number): this
36
+ }
37
+
38
+ // 变换
39
+ interface NewMatrix4Type extends Matrix4Type {
40
+ new(initMatrix4?: number[]): this
41
+ }
42
+
43
+ // 画笔
44
+ interface NewSVGType extends SVGType {
45
+ new(el: HTMLElement | null): this
46
+ }
47
+ interface NewCanvasType extends CanvasType {
48
+ new(el: HTMLElement | null, option?: CanvasOptionType, width?: number, height?: number): this
49
+ }
50
+
51
+ // WebGL
52
+ interface NewShaderType extends ShaderType {
53
+ new(painter: WebGLRenderingContext): this
54
+ }
55
+ interface NewBufferType extends BufferType {
56
+ new(painter: WebGLRenderingContext, isElement?: boolean): this
57
+ }
58
+ interface NewTextureType extends TextureType {
59
+ new(painter: WebGLRenderingContext, type: string, unit?: number): this
60
+ }
61
+
62
+ // 投影
63
+ interface NewEoapType extends MapType {
64
+ new(scale?: number, center?: number[]): this
65
+ }
66
+ interface NewMercatorType extends MapType {
67
+ new(scale?: number, center?: number[]): this
68
+ }
69
+
70
+ // 布局
71
+ interface NewTreeLayoutType extends TreeLayoutType {
72
+ new(config?: TreeConfigType): this
73
+ }
74
+
75
+ export default class VISLite {
76
+
77
+ // 插值
78
+ static Cardinal: NewCardinalType
79
+ static Hermite: NewHermiteType
80
+
81
+ // 变换
82
+ static Matrix4: NewMatrix4Type
83
+ static rotate: rotateType
84
+ static move: moveType
85
+ static scale: scaleType
86
+
87
+ // 工具
88
+ static getLoopColors: getLoopColorsType
89
+ static animation: animationType
90
+ static ruler: rulerType
91
+
92
+ // 画笔
93
+ static SVG: NewSVGType
94
+ static Canvas: NewCanvasType
95
+
96
+ // WebGL
97
+ static getWebGLContext: getWebGLContextType
98
+ static Shader: NewShaderType
99
+ static Buffer: NewBufferType
100
+ static Texture: NewTextureType
101
+
102
+ // 投影
103
+ static Eoap: NewEoapType
104
+ static Mercator: NewMercatorType
105
+
106
+ // 辅助
107
+ static throttle: throttleType
108
+
109
+ // 布局
110
+ static TreeLayout: NewTreeLayoutType
111
+ }
112
+
113
+ // 插值
114
+ export let Cardinal: NewCardinalType
115
+ export let Hermite: NewHermiteType
116
+
117
+ // 变换
118
+ export let Matrix4: NewMatrix4Type
119
+ export let rotate: rotateType
120
+ export let move: moveType
121
+ export let scale: scaleType
122
+
123
+ // 工具
124
+ export let getLoopColors: getLoopColorsType
125
+ export let animation: animationType
126
+ export let ruler: rulerType
127
+
128
+ // 画笔
129
+ export let SVG: NewSVGType
130
+ export let Canvas: NewCanvasType
131
+
132
+ // WebGL
133
+ export let getWebGLContext: getWebGLContextType
134
+ export let Shader: NewShaderType
135
+ export let Buffer: NewBufferType
136
+ export let Texture: NewTextureType
137
+
138
+ // 投影
139
+ export let Eoap: NewEoapType
140
+ export let Mercator: NewMercatorType
141
+
142
+ // 辅助
143
+ export let throttle: throttleType
144
+
145
+ // 布局
146
146
  export let TreeLayout: NewTreeLayoutType
package/types/move.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- /**
2
- * 移动
3
- */
4
- export default interface moveType {
5
- (ax: number, ay: number, d: number, x: number, y: number): [number, number]
1
+ /**
2
+ * 移动
3
+ */
4
+ export default interface moveType {
5
+ (ax: number, ay: number, d: number, x: number, y: number): [number, number]
6
6
  }
@@ -1,3 +1,3 @@
1
- export type arcCapType = "butt" | "round" | "-round"
2
- export type textAlignType = "left" | "center" | "right"
1
+ export type arcCapType = "butt" | "round" | "-round"
2
+ export type textAlignType = "left" | "center" | "right"
3
3
  export type textBaselineType = "top" | "middle" | "bottom"
package/types/rotate.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- /**
2
- * 旋转
3
- */
4
- export default interface rotateType {
5
- (cx: number, cy: number, deg: number, x: number, y: number): [number, number]
1
+ /**
2
+ * 旋转
3
+ */
4
+ export default interface rotateType {
5
+ (cx: number, cy: number, deg: number, x: number, y: number): [number, number]
6
6
  }
package/types/ruler.d.ts CHANGED
@@ -1,11 +1,11 @@
1
- export interface rulerOptionType {
2
- max?: number
3
- min?: number
4
- }
5
-
6
- /**
7
- * 刻度尺刻度运算,返回一个数组,表示刻度尺上应该显示的刻度
8
- */
9
- export default interface rulerType {
10
- (maxValue: number, minValue: number, num: number, option?: rulerOptionType): number[]
1
+ export interface rulerOptionType {
2
+ max?: number
3
+ min?: number
4
+ }
5
+
6
+ /**
7
+ * 刻度尺刻度运算,返回一个数组,表示刻度尺上应该显示的刻度
8
+ */
9
+ export default interface rulerType {
10
+ (maxValue: number, minValue: number, num: number, option?: rulerOptionType): number[]
11
11
  }
package/types/scale.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- /**
2
- * 缩放
3
- */
4
- export default interface scaleType {
5
- (cx: number, cy: number, times: number, x: number, y: number): [number, number]
1
+ /**
2
+ * 缩放
3
+ */
4
+ export default interface scaleType {
5
+ (cx: number, cy: number, times: number, x: number, y: number): [number, number]
6
6
  }
@@ -1,8 +1,8 @@
1
- import throttleOptionType from './throttleOption'
2
-
3
- /**
4
- * 节流函数
5
- */
6
- export default interface throttle {
7
- (callback: Function, option?: throttleOptionType): Function
1
+ import throttleOptionType from './throttleOption'
2
+
3
+ /**
4
+ * 节流函数
5
+ */
6
+ export default interface throttle {
7
+ (callback: Function, option?: throttleOptionType): Function
8
8
  }
@@ -1,22 +1,22 @@
1
- export type throttleOpportunityType = "begin" | "end" | "wide"
2
-
3
- export default interface throttleOptionType {
4
-
5
- /**
6
- * 节流时长
7
- */
8
- time?: number
9
-
10
- /**
11
- * 是否持续节流
12
- */
13
- keep?: boolean
14
-
15
- /**
16
- * 执行时机
17
- *
18
- * begin(开始触发)、end(结束触发)、wide(第一次开始触发,其余结束触发)
19
- */
20
- opportunity?: throttleOpportunityType
21
-
1
+ export type throttleOpportunityType = "begin" | "end" | "wide"
2
+
3
+ export default interface throttleOptionType {
4
+
5
+ /**
6
+ * 节流时长
7
+ */
8
+ time?: number
9
+
10
+ /**
11
+ * 是否持续节流
12
+ */
13
+ keep?: boolean
14
+
15
+ /**
16
+ * 执行时机
17
+ *
18
+ * begin(开始触发)、end(结束触发)、wide(第一次开始触发,其余结束触发)
19
+ */
20
+ opportunity?: throttleOpportunityType
21
+
22
22
  }
@@ -1,5 +1,5 @@
1
- import CanvasType from "./Canvas"
2
-
3
- export default interface UiCanvasType {
4
- fetch(): Promise<CanvasType>
1
+ import CanvasType from "./Canvas"
2
+
3
+ export default interface UiCanvasType {
4
+ fetch(): Promise<CanvasType>
5
5
  }
@@ -1,20 +1,20 @@
1
- export default function (_this, drawImage) {
2
- return function (imgUrl, x, y, w, h) {
3
- return new Promise((resolve) => {
4
- if (/^http/.test(imgUrl)) {
5
- uni.downloadFile({
6
- url: imgUrl,
7
- success: function (res) {
8
- drawImage.call(_this, res.tempFilePath, x, y, w, h, true).then(() => {
9
- resolve({});
10
- });
11
- },
12
- });
13
- } else {
14
- drawImage.call(_this, imgUrl, x, y, w, h, true).then(() => {
15
- resolve({});
16
- });
17
- }
18
- });
19
- };
1
+ export default function (_this, drawImage) {
2
+ return function (imgUrl, x, y, w, h) {
3
+ return new Promise((resolve) => {
4
+ if (/^http/.test(imgUrl)) {
5
+ uni.downloadFile({
6
+ url: imgUrl,
7
+ success: function (res) {
8
+ drawImage.call(_this, res.tempFilePath, x, y, w, h, true).then(() => {
9
+ resolve({});
10
+ });
11
+ },
12
+ });
13
+ } else {
14
+ drawImage.call(_this, imgUrl, x, y, w, h, true).then(() => {
15
+ resolve({});
16
+ });
17
+ }
18
+ });
19
+ };
20
20
  };