vislite 1.3.0 → 1.4.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 (191) hide show
  1. package/AUTHORS.txt +6 -6
  2. package/CHANGELOG +12 -5
  3. package/LICENSE +20 -20
  4. package/README.md +284 -284
  5. package/lib/BarLayout/index.es.d.ts +3 -0
  6. package/lib/BarLayout/index.es.js +467 -0
  7. package/lib/BarLayout/index.es.min.d.ts +3 -0
  8. package/lib/BarLayout/index.es.min.js +10 -0
  9. package/lib/Buffer/index.es.js +1 -1
  10. package/lib/Buffer/index.es.min.js +1 -1
  11. package/lib/Canvas/index.es.js +2 -2
  12. package/lib/Canvas/index.es.min.js +1 -1
  13. package/lib/Cardinal/index.es.js +1 -1
  14. package/lib/Cardinal/index.es.min.js +1 -1
  15. package/lib/Eoap/index.es.js +1 -1
  16. package/lib/Eoap/index.es.min.js +1 -1
  17. package/lib/Hermite/index.es.js +1 -1
  18. package/lib/Hermite/index.es.min.js +1 -1
  19. package/lib/MapCoordinate/index.es.js +1 -1
  20. package/lib/MapCoordinate/index.es.min.js +1 -1
  21. package/lib/Matrix4/index.es.js +1 -1
  22. package/lib/Matrix4/index.es.min.js +1 -1
  23. package/lib/Mercator/index.es.js +1 -1
  24. package/lib/Mercator/index.es.min.js +1 -1
  25. package/lib/PieLayout/index.es.d.ts +3 -0
  26. package/lib/PieLayout/index.es.js +234 -0
  27. package/lib/PieLayout/index.es.min.d.ts +3 -0
  28. package/lib/PieLayout/index.es.min.js +9 -0
  29. package/lib/RawCanvas/index.es.js +2 -2
  30. package/lib/RawCanvas/index.es.min.js +1 -1
  31. package/lib/SVG/index.es.js +29 -6
  32. package/lib/SVG/index.es.min.js +2 -2
  33. package/lib/Shader/index.es.js +1 -1
  34. package/lib/Shader/index.es.min.js +1 -1
  35. package/lib/Texture/index.es.js +1 -1
  36. package/lib/Texture/index.es.min.js +1 -1
  37. package/lib/TreeLayout/index.es.js +109 -102
  38. package/lib/TreeLayout/index.es.min.js +6 -2
  39. package/lib/animation/index.es.js +114 -103
  40. package/lib/animation/index.es.min.js +6 -2
  41. package/lib/assemble/index.es.js +1 -1
  42. package/lib/assemble/index.es.min.js +1 -1
  43. package/lib/getLoopColors/index.es.js +1 -1
  44. package/lib/getLoopColors/index.es.min.js +1 -1
  45. package/lib/getWebGLContext/index.es.js +1 -1
  46. package/lib/getWebGLContext/index.es.min.js +1 -1
  47. package/lib/index.umd.js +510 -158
  48. package/lib/index.umd.min.js +12 -2
  49. package/lib/initOption/index.es.js +1 -1
  50. package/lib/initOption/index.es.min.js +1 -1
  51. package/lib/mergeOption/index.es.js +1 -1
  52. package/lib/mergeOption/index.es.min.js +1 -1
  53. package/lib/move/index.es.js +1 -1
  54. package/lib/move/index.es.min.js +1 -1
  55. package/lib/rotate/index.es.js +1 -1
  56. package/lib/rotate/index.es.min.js +1 -1
  57. package/lib/ruler/index.es.js +1 -1
  58. package/lib/ruler/index.es.min.js +1 -1
  59. package/lib/scale/index.es.js +1 -1
  60. package/lib/scale/index.es.min.js +1 -1
  61. package/lib/throttle/index.es.js +55 -50
  62. package/lib/throttle/index.es.min.js +5 -1
  63. package/minialipay/ui-canvas/drawImage.js +35 -35
  64. package/minialipay/ui-canvas/index.acss +4 -4
  65. package/minialipay/ui-canvas/index.axml +3 -3
  66. package/minialipay/ui-canvas/index.d.ts +1 -1
  67. package/minialipay/ui-canvas/index.js +100 -100
  68. package/minialipay/ui-canvas/index.json +6 -6
  69. package/miniprogram/ui-canvas/drawImage.js +35 -35
  70. package/miniprogram/ui-canvas/index.js +117 -117
  71. package/miniprogram/ui-canvas/index.json +4 -4
  72. package/miniprogram/ui-canvas/index.wxml +4 -4
  73. package/miniprogram/ui-canvas/index.wxss +5 -5
  74. package/package/BarLayout/index.ts +3 -0
  75. package/package/Buffer/index.ts +2 -2
  76. package/package/Canvas/index.ts +2 -2
  77. package/package/Cardinal/index.ts +2 -2
  78. package/package/Eoap/index.ts +2 -2
  79. package/package/Hermite/index.ts +2 -2
  80. package/package/MapCoordinate/index.ts +2 -2
  81. package/package/Matrix4/index.ts +2 -2
  82. package/package/Mercator/index.ts +2 -2
  83. package/package/PieLayout/index.ts +3 -0
  84. package/package/RawCanvas/index.ts +2 -2
  85. package/package/SVG/index.ts +2 -2
  86. package/package/Shader/index.ts +2 -2
  87. package/package/Texture/index.ts +2 -2
  88. package/package/TreeLayout/index.ts +2 -2
  89. package/package/animation/index.ts +5 -2
  90. package/package/assemble/index.ts +2 -2
  91. package/package/getLoopColors/index.ts +2 -2
  92. package/package/getWebGLContext/index.ts +40 -40
  93. package/package/index.ts +4 -0
  94. package/package/initOption/index.ts +2 -2
  95. package/package/mergeOption/index.ts +2 -2
  96. package/package/move/index.ts +2 -2
  97. package/package/rotate/index.ts +2 -2
  98. package/package/ruler/index.ts +2 -2
  99. package/package/scale/index.ts +2 -2
  100. package/package/throttle/index.ts +1 -1
  101. package/package.json +3 -3
  102. package/src/Canvas.ts +84 -84
  103. package/src/Eoap.ts +66 -66
  104. package/src/Matrix4/index.ts +84 -84
  105. package/src/Matrix4/move.ts +12 -12
  106. package/src/Matrix4/rotate.ts +15 -15
  107. package/src/Matrix4/scale.ts +11 -11
  108. package/src/Matrix4/transform.ts +64 -64
  109. package/src/Mercator.ts +27 -27
  110. package/src/SVG.ts +31 -0
  111. package/src/common/assemble.ts +22 -22
  112. package/src/common/canvas/arc.ts +51 -51
  113. package/src/common/canvas/config.ts +176 -176
  114. package/src/common/canvas/default.ts +64 -64
  115. package/src/common/canvas/gradient.ts +1 -1
  116. package/src/common/canvas/index.ts +188 -188
  117. package/src/common/canvas/painter.ts +443 -443
  118. package/src/common/canvas/texts.ts +18 -18
  119. package/src/common/map/getBoundary.ts +15 -15
  120. package/src/common/map/tool.ts +29 -29
  121. package/src/common/option.ts +29 -29
  122. package/src/common/setStyle.ts +5 -5
  123. package/src/common/svg/config.ts +213 -213
  124. package/src/common/svg/default.ts +2 -2
  125. package/src/common/svg/gradient.ts +2 -2
  126. package/src/common/svg/index.ts +1 -1
  127. package/src/common/svg/tool.ts +51 -51
  128. package/src/common/tree/index.ts +25 -25
  129. package/src/common/tree/toInnerTree.ts +61 -61
  130. package/src/common/tree/toPlainTree.ts +3 -0
  131. package/src/common/type.ts +26 -26
  132. package/src/common/webgl/buffer.ts +79 -79
  133. package/src/common/webgl/getWebGLContext.ts +45 -45
  134. package/src/common/webgl/shader.ts +75 -75
  135. package/src/common/webgl/texture.ts +1 -0
  136. package/src/coordinate/MapCoordinate.ts +80 -80
  137. package/src/getLoopColors.ts +42 -42
  138. package/src/interpolation/Cardinal.ts +110 -110
  139. package/src/interpolation/Hermite.ts +65 -65
  140. package/src/layout/BarLayout.ts +249 -0
  141. package/src/layout/PieLayout.ts +142 -0
  142. package/src/layout/TreeLayout.ts +4 -1
  143. package/src/move.ts +7 -7
  144. package/src/rotate.ts +7 -7
  145. package/src/ruler.ts +209 -209
  146. package/src/scale.ts +6 -6
  147. package/types/Bar.d.ts +92 -0
  148. package/types/BarConfig.d.ts +5 -0
  149. package/types/BarLayout.d.ts +49 -0
  150. package/types/BarOption.d.ts +32 -0
  151. package/types/Buffer.d.ts +23 -23
  152. package/types/Canvas.d.ts +352 -352
  153. package/types/CanvasConfig.d.ts +88 -88
  154. package/types/CanvasOption.d.ts +8 -8
  155. package/types/CanvasOpts.d.ts +9 -9
  156. package/types/Cardinal.d.ts +13 -13
  157. package/types/Gradient.d.ts +14 -14
  158. package/types/Hermite.d.ts +18 -18
  159. package/types/Map.d.ts +9 -9
  160. package/types/MapConfig.d.ts +27 -27
  161. package/types/MapCoordinate.d.ts +22 -22
  162. package/types/Matrix4.d.ts +47 -47
  163. package/types/Pie.d.ts +74 -0
  164. package/types/PieConfig.d.ts +27 -0
  165. package/types/PieLayout.d.ts +41 -0
  166. package/types/PieOption.d.ts +22 -0
  167. package/types/SVG.d.ts +4 -0
  168. package/types/SVGConfig.d.ts +71 -71
  169. package/types/Shader.d.ts +16 -16
  170. package/types/Texture.d.ts +16 -16
  171. package/types/Tree.d.ts +74 -74
  172. package/types/TreeConfig.d.ts +36 -36
  173. package/types/TreeLayout.d.ts +59 -59
  174. package/types/TreeOption.d.ts +48 -48
  175. package/types/animation.d.ts +7 -1
  176. package/types/assemble.d.ts +5 -5
  177. package/types/getLoopColors.d.ts +5 -5
  178. package/types/getWebGLContext.d.ts +7 -7
  179. package/types/index.d.ts +16 -0
  180. package/types/move.d.ts +5 -5
  181. package/types/option.d.ts +12 -12
  182. package/types/painterConfig.d.ts +4 -4
  183. package/types/rotate.d.ts +5 -5
  184. package/types/ruler.d.ts +10 -10
  185. package/types/scale.d.ts +5 -5
  186. package/types/throttle.d.ts +1 -1
  187. package/types/throttleOption.d.ts +1 -1
  188. package/types/ui-canvas.d.ts +4 -4
  189. package/types/uni-canvas.d.ts +3 -3
  190. package/uni-app/drawImage.js +19 -19
  191. package/uni-app/ui-canvas.vue +284 -284
@@ -0,0 +1,22 @@
1
+ export default interface PieOptionType {
2
+
3
+ /**
4
+ * 圆心横坐标
5
+ */
6
+ cx?: number
7
+
8
+ /**
9
+ * 圆心纵坐标
10
+ */
11
+ cy?: number
12
+
13
+ /**
14
+ * 半径
15
+ */
16
+ radius?: Array<number>
17
+
18
+ /**
19
+ * 切换时长
20
+ */
21
+ duration?: number
22
+ }
package/types/SVG.d.ts CHANGED
@@ -241,4 +241,8 @@ export default interface SVGType {
241
241
  */
242
242
  createRadialGradient(cx: number, cy: number, r: number): GradientType<string>
243
243
 
244
+ /**
245
+ * 把画布变成url
246
+ */
247
+ toDataURL(): Promise<string>
244
248
  }
@@ -1,72 +1,72 @@
1
- import { arcCapType, textAlignType, textBaselineType, lineCapType, lineJoinType } from './painterConfig'
2
-
3
- export type svgElType = SVGElement | "g" | "text" | "path" | "circle" | "rect" | "polygon" | "polyline"
4
- export type svgBoardType = SVGElement | "text" | "path" | "arc" | "circle" | "rect"
5
-
6
- export default interface SVGConfigType {
7
-
8
- /**
9
- * 填充色或图案,默认"#000"
10
- */
11
- fillStyle?: string
12
-
13
- /**
14
- * 轮廓色或图案,默认"#000"
15
- */
16
- strokeStyle?: string
17
-
18
- /**
19
- * 线条宽度,默认1(单位px)
20
- */
21
- lineWidth?: number
22
-
23
- /**
24
- * 线的端点类型,默认"butt"平直边缘(还有"round"半圆和"square"矩形)
25
- */
26
- lineCap?: lineCapType
27
-
28
- /**
29
- * 线的拐角连接方式,默认"miter"连接处边缘延长相接(还有"bevel"对角线斜角和"round"圆)
30
- */
31
- lineJoin?: lineJoinType
32
-
33
- /**
34
- * 设置线条虚线,默认为[]表示使用实线绘制
35
- *
36
- * 值应该是一个数组,格式:[实线长,虚线长,实线长 ...],数组长度任意,会自动循环
37
- */
38
- lineDash?: Array<number>
39
-
40
- /**
41
- * 文字水平对齐方式,默认"left"左对齐(还有"center"居中和"right"右对齐)
42
- */
43
- textAlign?: textAlignType
44
-
45
- /**
46
- * 文字垂直对齐方式,默认"middle"垂直居中(还有"top"上对齐和"bottom"下对齐)
47
- */
48
- textBaseline?: textBaselineType
49
-
50
- /**
51
- * 文字大小,默认16
52
- */
53
- fontSize?: number
54
-
55
- /**
56
- * 字体,默认"sans-serif"
57
- */
58
- fontFamily?: string
59
-
60
- /**
61
- * 圆弧开始端闭合方式,默认"butt"直线闭合(还有"round"圆帽闭合,"-round"反圆帽闭合)
62
- */
63
- arcStartCap?: arcCapType
64
-
65
- /**
66
- * 圆弧结束端闭合方式,默认"butt"直线闭合(还有"round"圆帽闭合,"-round"反圆帽闭合)
67
- */
68
- arcEndCap?: arcCapType
69
-
70
- // 矩形圆角半径
71
- rectRadius?: Array<number>
1
+ import { arcCapType, textAlignType, textBaselineType, lineCapType, lineJoinType } from './painterConfig'
2
+
3
+ export type svgElType = SVGElement | "g" | "text" | "path" | "circle" | "rect" | "polygon" | "polyline"
4
+ export type svgBoardType = SVGElement | "text" | "path" | "arc" | "circle" | "rect"
5
+
6
+ export default interface SVGConfigType {
7
+
8
+ /**
9
+ * 填充色或图案,默认"#000"
10
+ */
11
+ fillStyle?: string
12
+
13
+ /**
14
+ * 轮廓色或图案,默认"#000"
15
+ */
16
+ strokeStyle?: string
17
+
18
+ /**
19
+ * 线条宽度,默认1(单位px)
20
+ */
21
+ lineWidth?: number
22
+
23
+ /**
24
+ * 线的端点类型,默认"butt"平直边缘(还有"round"半圆和"square"矩形)
25
+ */
26
+ lineCap?: lineCapType
27
+
28
+ /**
29
+ * 线的拐角连接方式,默认"miter"连接处边缘延长相接(还有"bevel"对角线斜角和"round"圆)
30
+ */
31
+ lineJoin?: lineJoinType
32
+
33
+ /**
34
+ * 设置线条虚线,默认为[]表示使用实线绘制
35
+ *
36
+ * 值应该是一个数组,格式:[实线长,虚线长,实线长 ...],数组长度任意,会自动循环
37
+ */
38
+ lineDash?: Array<number>
39
+
40
+ /**
41
+ * 文字水平对齐方式,默认"left"左对齐(还有"center"居中和"right"右对齐)
42
+ */
43
+ textAlign?: textAlignType
44
+
45
+ /**
46
+ * 文字垂直对齐方式,默认"middle"垂直居中(还有"top"上对齐和"bottom"下对齐)
47
+ */
48
+ textBaseline?: textBaselineType
49
+
50
+ /**
51
+ * 文字大小,默认16
52
+ */
53
+ fontSize?: number
54
+
55
+ /**
56
+ * 字体,默认"sans-serif"
57
+ */
58
+ fontFamily?: string
59
+
60
+ /**
61
+ * 圆弧开始端闭合方式,默认"butt"直线闭合(还有"round"圆帽闭合,"-round"反圆帽闭合)
62
+ */
63
+ arcStartCap?: arcCapType
64
+
65
+ /**
66
+ * 圆弧结束端闭合方式,默认"butt"直线闭合(还有"round"圆帽闭合,"-round"反圆帽闭合)
67
+ */
68
+ arcEndCap?: arcCapType
69
+
70
+ // 矩形圆角半径
71
+ rectRadius?: Array<number>
72
72
  }
package/types/Shader.d.ts CHANGED
@@ -1,17 +1,17 @@
1
- export default interface ShaderType {
2
-
3
- program: WebGLProgram
4
-
5
- /**
6
- * 使用这个程序
7
- * (后于编译)
8
- */
9
- use(): this
10
-
11
- /**
12
- * 编译着色器程序
13
- * @param vshaderSource 顶点着色器
14
- * @param fshaderSource 片段(元)着色器
15
- */
16
- compile(vshaderSource: string, fshaderSource: string): this
1
+ export default interface ShaderType {
2
+
3
+ program: WebGLProgram
4
+
5
+ /**
6
+ * 使用这个程序
7
+ * (后于编译)
8
+ */
9
+ use(): this
10
+
11
+ /**
12
+ * 编译着色器程序
13
+ * @param vshaderSource 顶点着色器
14
+ * @param fshaderSource 片段(元)着色器
15
+ */
16
+ compile(vshaderSource: string, fshaderSource: string): this
17
17
  }
@@ -1,17 +1,17 @@
1
- export default interface TextureType {
2
-
3
- /**
4
- * 链接图片资源(单一)
5
- * @param image 纹理图片
6
- */
7
- useImage(image: TexImageSource): this
8
-
9
- /**
10
- * 链接图片资源(多张)
11
- * @param images 纹理图片集
12
- * @param width 图片宽
13
- * @param height 图片高
14
- */
15
- useCube(images: TexImageSource[], width: number, height: number): this
16
-
1
+ export default interface TextureType {
2
+
3
+ /**
4
+ * 链接图片资源(单一)
5
+ * @param image 纹理图片
6
+ */
7
+ useImage(image: TexImageSource): this
8
+
9
+ /**
10
+ * 链接图片资源(多张)
11
+ * @param images 纹理图片集
12
+ * @param width 图片宽
13
+ * @param height 图片高
14
+ */
15
+ useCube(images: TexImageSource[], width: number, height: number): this
16
+
17
17
  }
package/types/Tree.d.ts CHANGED
@@ -1,75 +1,75 @@
1
- export interface TreeResultType {
2
-
3
- /**
4
- * 树的层数
5
- */
6
- deep: number
7
-
8
- node: {
9
- [id: string]: {
10
-
11
- /**
12
- * 当前结点的孩子的结点id集合
13
- */
14
- children: Array<string>
15
-
16
- /**
17
- * 当前结点的原始数据
18
- */
19
- data: any
20
-
21
- /**
22
- * 当前结点的id
23
- */
24
- id: string
25
-
26
- /**
27
- * 当前结点的父结点id
28
- */
29
- pid: string
30
-
31
- /**
32
- * 当前结点的横坐标
33
- */
34
- left: number
35
-
36
- /**
37
- * 当前结点的纵坐标
38
- */
39
- top: number
40
-
41
- /**
42
- * 当前结点的打开还是关闭
43
- */
44
- isOpen: boolean
45
-
46
- /**
47
- * 当前结点本身是否显示
48
- */
49
- show: boolean
50
-
51
- /**
52
- * 文字建议旋转弧度
53
- */
54
- deg: number
55
- }
56
- }
57
-
58
- /**
59
- * 根结点id
60
- */
61
- root: string
62
-
63
- /**
64
- * 树的宽数
65
- */
66
- size: number
67
- }
68
-
69
- export default interface TreeType {
70
-
71
- /**
72
- * 求解单一值
73
- */
74
- use(initTree: any): TreeResultType
1
+ export interface TreeResultType {
2
+
3
+ /**
4
+ * 树的层数
5
+ */
6
+ deep: number
7
+
8
+ node: {
9
+ [id: string]: {
10
+
11
+ /**
12
+ * 当前结点的孩子的结点id集合
13
+ */
14
+ children: Array<string>
15
+
16
+ /**
17
+ * 当前结点的原始数据
18
+ */
19
+ data: any
20
+
21
+ /**
22
+ * 当前结点的id
23
+ */
24
+ id: string
25
+
26
+ /**
27
+ * 当前结点的父结点id
28
+ */
29
+ pid: string
30
+
31
+ /**
32
+ * 当前结点的横坐标
33
+ */
34
+ left: number
35
+
36
+ /**
37
+ * 当前结点的纵坐标
38
+ */
39
+ top: number
40
+
41
+ /**
42
+ * 当前结点的打开还是关闭
43
+ */
44
+ isOpen: boolean
45
+
46
+ /**
47
+ * 当前结点本身是否显示
48
+ */
49
+ show: boolean
50
+
51
+ /**
52
+ * 文字建议旋转弧度
53
+ */
54
+ deg: number
55
+ }
56
+ }
57
+
58
+ /**
59
+ * 根结点id
60
+ */
61
+ root: string
62
+
63
+ /**
64
+ * 树的宽数
65
+ */
66
+ size: number
67
+ }
68
+
69
+ export default interface TreeType {
70
+
71
+ /**
72
+ * 求解单一值
73
+ */
74
+ use(initTree: any): TreeResultType
75
75
  }
@@ -1,37 +1,37 @@
1
- export interface rootType {
2
- (initTree: any): any
3
- }
4
-
5
- export interface childrenType {
6
- (parentTree: any, initTree: any): any[]
7
- }
8
-
9
- export interface idType {
10
- (treedata: any): string
11
- }
12
-
13
- export default interface TreeConfigType {
14
-
15
- /**
16
- * 获取根结点的方法
17
- * @param initTree 原始数据
18
- * @returns 返回根结点
19
- */
20
- root?: rootType
21
-
22
- /**
23
- * 获取子结点的方法
24
- * @param parentTree 父结点
25
- * @param initTree 原始数据
26
- * @returns 返回当前父结点的所有子结点数组
27
- */
28
- children?: childrenType
29
-
30
- /**
31
- * 获取结点ID方法
32
- * @param treedata 当前结点
33
- * @returns 返回可以唯一标识当前结点的id
34
- */
35
- id?: idType
36
-
1
+ export interface rootType {
2
+ (initTree: any): any
3
+ }
4
+
5
+ export interface childrenType {
6
+ (parentTree: any, initTree: any): any[]
7
+ }
8
+
9
+ export interface idType {
10
+ (treedata: any): string
11
+ }
12
+
13
+ export default interface TreeConfigType {
14
+
15
+ /**
16
+ * 获取根结点的方法
17
+ * @param initTree 原始数据
18
+ * @returns 返回根结点
19
+ */
20
+ root?: rootType
21
+
22
+ /**
23
+ * 获取子结点的方法
24
+ * @param parentTree 父结点
25
+ * @param initTree 原始数据
26
+ * @returns 返回当前父结点的所有子结点数组
27
+ */
28
+ children?: childrenType
29
+
30
+ /**
31
+ * 获取结点ID方法
32
+ * @param treedata 当前结点
33
+ * @returns 返回可以唯一标识当前结点的id
34
+ */
35
+ id?: idType
36
+
37
37
  }
@@ -1,60 +1,60 @@
1
- import TreeType from "./Tree"
2
- import { TreeResultType } from "./Tree"
3
- import TreeOptionType from './TreeOption'
4
-
5
- export default interface TreeLayoutType extends TreeType {
6
-
7
- /**
8
- * 设置布局的行为
9
- * @param option
10
- */
11
- setOption(option: TreeOptionType): this
12
-
13
- /**
14
- * 单纯的树图坐标计算
15
- * @param initTree 原始数据
16
- * @param noOpens 可选,结点初始是否闭合控制
17
- */
18
- use(initTree: any, noOpens?: {
19
- [id: string]: boolean
20
- }): TreeResultType
21
-
22
- /**
23
- * 绑定新的数据和渲染方法
24
- * @param initTree 原始数据
25
- * @param renderBack 渲染方法
26
- * @param noOpens 可选,结点初始是否闭合控制
27
- */
28
- bind(initTree: any, renderBack: (tree: TreeResultType) => void, noOpens?: {
29
- [id: string]: boolean
30
- }): this
31
-
32
- /**
33
- * 解除绑定
34
- */
35
- unbind(): this
36
-
37
- /**
38
- * 闭合指定节点
39
- * @param id
40
- */
41
- closeNode(id: string): this
42
-
43
- /**
44
- * 展开指定节点
45
- * @param id
46
- */
47
- openNode(id: string): this
48
-
49
- /**
50
- * 闭合或展开指定节点
51
- * @param id
52
- */
53
- toggleNode(id: string): this
54
-
55
- /**
56
- * 主动触发绘制更新
57
- */
58
- doUpdate(): this
59
-
1
+ import TreeType from "./Tree"
2
+ import { TreeResultType } from "./Tree"
3
+ import TreeOptionType from './TreeOption'
4
+
5
+ export default interface TreeLayoutType extends TreeType {
6
+
7
+ /**
8
+ * 设置布局的行为
9
+ * @param option
10
+ */
11
+ setOption(option: TreeOptionType): this
12
+
13
+ /**
14
+ * 单纯的树图坐标计算
15
+ * @param initTree 原始数据
16
+ * @param noOpens 可选,结点初始是否闭合控制
17
+ */
18
+ use(initTree: any, noOpens?: {
19
+ [id: string]: boolean
20
+ }): TreeResultType
21
+
22
+ /**
23
+ * 绑定新的数据和渲染方法
24
+ * @param initTree 原始数据
25
+ * @param renderBack 渲染方法
26
+ * @param noOpens 可选,结点初始是否闭合控制
27
+ */
28
+ bind(initTree: any, renderBack: (tree: TreeResultType) => void, noOpens?: {
29
+ [id: string]: boolean
30
+ }): this
31
+
32
+ /**
33
+ * 解除绑定
34
+ */
35
+ unbind(): this
36
+
37
+ /**
38
+ * 闭合指定节点
39
+ * @param id
40
+ */
41
+ closeNode(id: string): this
42
+
43
+ /**
44
+ * 展开指定节点
45
+ * @param id
46
+ */
47
+ openNode(id: string): this
48
+
49
+ /**
50
+ * 闭合或展开指定节点
51
+ * @param id
52
+ */
53
+ toggleNode(id: string): this
54
+
55
+ /**
56
+ * 主动触发绘制更新
57
+ */
58
+ doUpdate(): this
59
+
60
60
  }
@@ -1,49 +1,49 @@
1
- export type treeType = "plain" | "rect" | "circle"
2
- export type treeDirectionType = "LR" | "RL" | "TB" | "BT"
3
-
4
- export default interface TreeOptionType {
5
-
6
- offsetX?: number
7
- offsetY?: number
8
-
9
- /**
10
- * 树图类型
11
- */
12
- type?: treeType
13
-
14
- /**
15
- * 设置成矩形树图(rect)时有效,表示树图方向
16
- */
17
- direction?: treeDirectionType
18
-
19
- /**
20
- * 树图x坐标
21
- */
22
- x?: number
23
-
24
- /**
25
- * 树图y坐标
26
- */
27
- y?: number
28
-
29
- /**
30
- * 设置成矩形树图(rect)时有效,表示矩形宽
31
- */
32
- width?: number
33
-
34
- /**
35
- * 设置成矩形树图(rect)时有效,表示矩形高
36
- */
37
- height?: number
38
-
39
- /**
40
- * 设置成圆树图(circle)时有效,表示圆树的半径
41
- */
42
- radius?: number
43
-
44
- /**
45
- * 切换时长
46
- */
47
- duration?: number
48
-
1
+ export type treeType = "plain" | "rect" | "circle"
2
+ export type treeDirectionType = "LR" | "RL" | "TB" | "BT"
3
+
4
+ export default interface TreeOptionType {
5
+
6
+ offsetX?: number
7
+ offsetY?: number
8
+
9
+ /**
10
+ * 树图类型
11
+ */
12
+ type?: treeType
13
+
14
+ /**
15
+ * 设置成矩形树图(rect)时有效,表示树图方向
16
+ */
17
+ direction?: treeDirectionType
18
+
19
+ /**
20
+ * 树图x坐标
21
+ */
22
+ x?: number
23
+
24
+ /**
25
+ * 树图y坐标
26
+ */
27
+ y?: number
28
+
29
+ /**
30
+ * 设置成矩形树图(rect)时有效,表示矩形宽
31
+ */
32
+ width?: number
33
+
34
+ /**
35
+ * 设置成矩形树图(rect)时有效,表示矩形高
36
+ */
37
+ height?: number
38
+
39
+ /**
40
+ * 设置成圆树图(circle)时有效,表示圆树的半径
41
+ */
42
+ radius?: number
43
+
44
+ /**
45
+ * 切换时长
46
+ */
47
+ duration?: number
48
+
49
49
  }