vislite 1.9.0 → 1.10.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 (82) hide show
  1. package/CHANGELOG +15 -0
  2. package/README.md +53 -52
  3. package/lib/BarLayout/index.es.js +8 -17
  4. package/lib/BarLayout/index.es.min.js +1 -10
  5. package/lib/Buffer/index.es.js +0 -4
  6. package/lib/Buffer/index.es.min.js +0 -4
  7. package/lib/Canvas/index.es.js +0 -4
  8. package/lib/Canvas/index.es.min.js +0 -4
  9. package/lib/Cardinal/index.es.js +0 -4
  10. package/lib/Cardinal/index.es.min.js +0 -4
  11. package/lib/Eoap/index.es.js +0 -4
  12. package/lib/Eoap/index.es.min.js +0 -4
  13. package/lib/Hermite/index.es.js +0 -4
  14. package/lib/Hermite/index.es.min.js +0 -4
  15. package/lib/MapCoordinate/index.es.js +0 -4
  16. package/lib/MapCoordinate/index.es.min.js +0 -4
  17. package/lib/Matrix4/index.es.js +0 -4
  18. package/lib/Matrix4/index.es.min.js +0 -4
  19. package/lib/Mercator/index.es.js +0 -4
  20. package/lib/Mercator/index.es.min.js +0 -4
  21. package/lib/PieLayout/index.es.js +8 -17
  22. package/lib/PieLayout/index.es.min.js +1 -9
  23. package/lib/RawCanvas/index.es.js +0 -4
  24. package/lib/RawCanvas/index.es.min.js +0 -4
  25. package/lib/SVG/index.es.js +14 -9
  26. package/lib/SVG/index.es.min.js +1 -5
  27. package/lib/Shader/index.es.js +0 -4
  28. package/lib/Shader/index.es.min.js +0 -4
  29. package/lib/Texture/index.es.js +0 -4
  30. package/lib/Texture/index.es.min.js +0 -4
  31. package/lib/TreeLayout/index.es.js +8 -17
  32. package/lib/TreeLayout/index.es.min.js +1 -9
  33. package/lib/animation/index.es.js +8 -17
  34. package/lib/animation/index.es.min.js +1 -9
  35. package/lib/assemble/index.es.js +0 -4
  36. package/lib/assemble/index.es.min.js +0 -4
  37. package/lib/getLoopColors/index.es.js +0 -4
  38. package/lib/getLoopColors/index.es.min.js +0 -4
  39. package/lib/getWebGLContext/index.es.js +0 -4
  40. package/lib/getWebGLContext/index.es.min.js +0 -4
  41. package/lib/index.umd.js +27 -28
  42. package/lib/index.umd.min.js +2 -12
  43. package/lib/initOption/index.es.js +0 -4
  44. package/lib/initOption/index.es.min.js +0 -4
  45. package/lib/mergeOption/index.es.js +0 -4
  46. package/lib/mergeOption/index.es.min.js +0 -4
  47. package/lib/move/index.es.js +0 -4
  48. package/lib/move/index.es.min.js +0 -4
  49. package/lib/rotate/index.es.js +0 -4
  50. package/lib/rotate/index.es.min.js +0 -4
  51. package/lib/ruler/index.es.js +0 -4
  52. package/lib/ruler/index.es.min.js +0 -4
  53. package/lib/scale/index.es.js +0 -4
  54. package/lib/scale/index.es.min.js +0 -4
  55. package/lib/throttle/index.es.js +4 -13
  56. package/lib/throttle/index.es.min.js +1 -9
  57. package/package.json +3 -2
  58. package/src/SVG.ts +19 -5
  59. package/types/Buffer.d.ts +15 -8
  60. package/types/Canvas.d.ts +4 -0
  61. package/types/CanvasConfig.d.ts +20 -47
  62. package/types/Cardinal.d.ts +9 -2
  63. package/types/Gradient.d.ts +10 -4
  64. package/types/Hermite.d.ts +15 -8
  65. package/types/Matrix4.d.ts +47 -15
  66. package/types/SVG.d.ts +4 -0
  67. package/types/SVGConfig.d.ts +18 -35
  68. package/types/Shader.d.ts +10 -4
  69. package/types/Texture.d.ts +12 -6
  70. package/types/TreeConfig.d.ts +32 -16
  71. package/types/TreeLayout.d.ts +25 -13
  72. package/types/animation.d.ts +15 -0
  73. package/types/assemble.d.ts +10 -1
  74. package/types/getLoopColors.d.ts +9 -1
  75. package/types/index.d.ts +52 -27
  76. package/types/move.d.ts +11 -1
  77. package/types/painterConfig.d.ts +10 -0
  78. package/types/rotate.d.ts +11 -1
  79. package/types/ruler.d.ts +15 -1
  80. package/types/scale.d.ts +11 -1
  81. package/types/throttle.d.ts +2 -1
  82. package/uni-app/ui-canvas.vue +2 -2
@@ -1,89 +1,62 @@
1
1
  import { arcCapType, textAlignType, textBaselineType, lineCapType, lineJoinType } from './painterConfig'
2
2
 
3
+ /**
4
+ * Canvas绘图配置类型定义
5
+ * 用于配置Canvas绘图的各种样式和属性
6
+ */
3
7
  export default interface CanvasConfigType {
4
8
 
5
- /**
6
- * 填充色或图案,默认"#000"
7
- */
9
+ /** 填充色或图案,默认"#000" */
8
10
  fillStyle?: string | CanvasGradient
9
11
 
10
- /**
11
- * 轮廓色或图案,默认"#000"
12
- */
12
+ /** 轮廓色或图案,默认"#000" */
13
13
  strokeStyle?: string | CanvasGradient
14
14
 
15
- /**
16
- * 线条宽度,默认1(单位px)
17
- */
15
+ /** 线条宽度,默认1(单位px) */
18
16
  lineWidth?: number
19
17
 
20
- /**
21
- * 线的端点类型,默认"butt"平直边缘(还有"round"半圆和"square"矩形)
22
- */
18
+ /** 线的端点类型,默认"butt"平直边缘(还有"round"半圆和"square"矩形) */
23
19
  lineCap?: lineCapType
24
20
 
25
- /**
26
- * 线的拐角连接方式,默认"miter"连接处边缘延长相接(还有"bevel"对角线斜角和"round"圆)
27
- */
21
+ /** 线的拐角连接方式,默认"miter"连接处边缘延长相接(还有"bevel"对角线斜角和"round"圆) */
28
22
  lineJoin?: lineJoinType
29
23
 
30
24
  /**
31
25
  * 设置线条虚线,默认为[]表示使用实线绘制
32
- *
33
26
  * 值应该是一个数组,格式:[实线长,虚线长,实线长 ...],数组长度任意,会自动循环
34
27
  */
35
28
  lineDash?: Array<number>
36
29
 
37
- /**
38
- * 文字水平对齐方式,默认"left"左对齐(还有"center"居中和"right"右对齐)
39
- */
30
+ /** 文字水平对齐方式,默认"left"左对齐(还有"center"居中和"right"右对齐) */
40
31
  textAlign?: textAlignType
41
32
 
42
- /**
43
- * 文字垂直对齐方式,默认"middle"垂直居中(还有"top"上对齐和"bottom"下对齐)
44
- */
33
+ /** 文字垂直对齐方式,默认"middle"垂直居中(还有"top"上对齐和"bottom"下对齐) */
45
34
  textBaseline?: textBaselineType
46
35
 
47
- /**
48
- * 阴影的模糊系数,默认0,也就是无阴影
49
- */
36
+ /** 阴影的模糊系数,默认0,也就是无阴影 */
50
37
  shadowBlur?: number
51
38
 
52
- /**
53
- * 阴影的颜色
54
- */
39
+ /** 阴影的颜色 */
55
40
  shadowColor?: string | CanvasGradient
56
41
 
57
- /**
58
- * 文字大小,默认16
59
- */
42
+ /** 文字大小,默认16 */
60
43
  fontSize?: number
61
44
 
62
- /**
63
- * 字体,默认"sans-serif"
64
- */
45
+ /** 字体,默认"sans-serif" */
65
46
  fontFamily?: string
66
47
 
67
- /**
68
- * 字重,默认400
69
- */
48
+ /** 字重,默认400 */
70
49
  fontWeight?: number
71
50
 
72
- /**
73
- * 字类型,默认"normal"
74
- */
51
+ /** 字类型,默认"normal" */
75
52
  fontStyle?: string
76
53
 
77
- /**
78
- * 圆弧开始端闭合方式,默认"butt"直线闭合(还有"round"圆帽闭合,"-round"反圆帽闭合)
79
- */
54
+ /** 圆弧开始端闭合方式,默认"butt"直线闭合(还有"round"圆帽闭合,"-round"反圆帽闭合) */
80
55
  arcStartCap?: arcCapType
81
56
 
82
- /**
83
- * 圆弧结束端闭合方式,默认"butt"直线闭合(还有"round"圆帽闭合,"-round"反圆帽闭合)
84
- */
57
+ /** 圆弧结束端闭合方式,默认"butt"直线闭合(还有"round"圆帽闭合,"-round"反圆帽闭合) */
85
58
  arcEndCap?: arcCapType
86
59
 
87
- // 矩形圆角半径
60
+ /** 矩形圆角半径 */
88
61
  rectRadius?: Array<number>
89
62
  }
@@ -1,13 +1,20 @@
1
+ /**
2
+ * Cardinal插值类型定义
3
+ * 用于实现Cardinal插值算法,支持平滑曲线插值
4
+ */
1
5
  export default interface CardinalType {
2
6
 
3
7
  /**
4
- * 设置点的位置:
8
+ * 设置插值点的位置
5
9
  * @param points 参数格式:[[x1, y1], [x2, y2], ... ],至少两个点
10
+ * @returns 返回当前实例,支持链式调用
6
11
  */
7
12
  setP(points: number[][]): this
8
13
 
9
14
  /**
10
- * 根据x值返回y值:
15
+ * 根据x值计算并返回对应的y
16
+ * @param x 输入的x值
17
+ * @returns 计算得到的y值
11
18
  */
12
19
  use(x: number): number
13
20
 
@@ -1,14 +1,20 @@
1
+ /**
2
+ * 渐变类型定义
3
+ * 用于创建和管理线性、径向等渐变效果
4
+ */
1
5
  export default interface GradientType<T> {
2
6
 
3
7
  /**
4
- * 设置程度颜色
5
- * @param stop 程度
6
- * @param color 颜色
8
+ * 设置渐变颜色停止点
9
+ * @param stop 停止点位置(0-1)
10
+ * @param color 颜色值
11
+ * @returns 返回当前实例,支持链式调用
7
12
  */
8
13
  setColor(stop: number, color: string): this
9
14
 
10
15
  /**
11
- * 返回渐变色值
16
+ * 获取渐变对象
17
+ * @returns 返回渐变对象实例
12
18
  */
13
19
  value(): T
14
20
 
@@ -1,18 +1,25 @@
1
+ /**
2
+ * Hermite插值类型定义
3
+ * 用于实现Hermite插值算法,支持基于点位置和斜率的平滑曲线插值
4
+ */
1
5
  export default interface HermiteType {
2
6
 
3
7
  /**
4
- * 设置点的位置和斜率:
5
- * @param x1 左边点的位置
6
- * @param y1
7
- * @param x2 右边点的位置
8
- * @param y2
9
- * @param s1 两个点的斜率
10
- * @param s2
8
+ * 设置插值点的位置和斜率
9
+ * @param x1 左边点的x坐标
10
+ * @param y1 左边点的y坐标
11
+ * @param x2 右边点的x坐标
12
+ * @param y2 右边点的y坐标
13
+ * @param s1 左边点的斜率
14
+ * @param s2 右边点的斜率
15
+ * @returns 返回当前实例,支持链式调用
11
16
  */
12
17
  setP(x1: number, y1: number, x2: number, y2: number, s1: number, s2: number): this
13
18
 
14
19
  /**
15
- * 根据x值返回y值:
20
+ * 根据x值计算并返回对应的y
21
+ * @param x 输入的x值
22
+ * @returns 计算得到的y值
16
23
  */
17
24
  use(x: number): number
18
25
 
@@ -1,47 +1,79 @@
1
+ /**
2
+ * 4x4矩阵类型定义
3
+ * 用于实现3D变换矩阵的各种操作,包括平移、旋转、缩放等
4
+ */
1
5
  export default interface Matrix4Type {
2
6
 
3
7
  /**
4
- * 返回matrix4当前记录的内部矩阵
8
+ * 获取当前矩阵的内部数值表示
9
+ * @returns 返回4x4矩阵的16个元素,按列优先顺序排列
5
10
  */
6
11
  value(): number[]
7
12
 
8
13
  /**
9
- * 两个矩阵相乘
10
- * @param newMatrix4
11
- * @param flag 可选,表示相乘位置,默认false,表示左乘
14
+ * 矩阵乘法运算
15
+ * @param newMatrix4 要相乘的矩阵
16
+ * @param flag 可选参数,表示相乘位置。默认为false,表示左乘(newMatrix4 * this);为true时表示右乘(this * newMatrix4)
17
+ * @returns 返回当前实例,支持链式调用
12
18
  */
13
19
  multiply(newMatrix4: number[], flag?: boolean): this
14
20
 
15
21
  /**
16
- * 把变换矩阵作用在具体的点上
22
+ * 将变换矩阵应用于指定坐标点
23
+ * @param x x坐标
24
+ * @param y y坐标
25
+ * @param z z坐标,可选,默认为0
26
+ * @param w w坐标,可选,默认为1
27
+ * @returns 变换后的四维坐标 [x', y', z', w']
17
28
  */
18
29
  use(x: number, y: number, z?: number, w?: number): [number, number, number, number]
19
30
 
20
31
  /**
21
- * 设置内置矩阵
32
+ * 设置矩阵的初始值
33
+ * @param initMatrix4 可选的初始矩阵值,如果不提供则使用单位矩阵
34
+ * @returns 返回当前实例,支持链式调用
22
35
  */
23
36
  setValue(initMatrix4?: number[]): this
24
37
 
25
38
  /**
26
- * 沿着向量(a, b, c)方向移动距离dis
27
- * (其中c可以不传,默认0)
39
+ * 沿指定向量方向平移
40
+ * @param dis 平移距离
41
+ * @param a 向量x分量
42
+ * @param b 向量y分量
43
+ * @param c 向量z分量,可选,默认为0
44
+ * @returns 返回当前实例,支持链式调用
28
45
  */
29
46
  move(dis: number, a: number, b: number, c?: number): this
30
47
 
31
48
  /**
32
- * 以点(cx, cy, cz)为中心,分别在x、y和z方向上缩放xTimes、yTimes和zTimes倍
33
- * (其中cx、cy和cz都可以不传递,默认0)
49
+ * 以指定点为中心进行缩放
50
+ * @param xTimes x方向缩放倍数
51
+ * @param yTimes y方向缩放倍数
52
+ * @param zTimes z方向缩放倍数
53
+ * @param cx 中心点x坐标,可选,默认为0
54
+ * @param cy 中心点y坐标,可选,默认为0
55
+ * @param cz 中心点z坐标,可选,默认为0
56
+ * @returns 返回当前实例,支持链式调用
34
57
  */
35
58
  scale(xTimes: number, yTimes: number, zTimes: number, cx?: number, cy?: number, cz?: number): this
36
59
 
37
60
  /**
38
- * 围绕射线(a1, b1, c1) -> (a2, b2, c2)旋转deg度
39
- * (方向由右手法则确定)
61
+ * 围绕指定射线旋转
62
+ * @param deg 旋转角度(度)
63
+ * @param a1 射线起点x坐标
64
+ * @param b1 射线起点y坐标
65
+ * @param c1 射线起点z坐标,可选
66
+ * @param a2 射线终点x坐标,可选
67
+ * @param b2 射线终点y坐标,可选
68
+ * @param c2 射线终点z坐标,可选
40
69
  *
41
- * a1、b1、c1、a2、b2和c2这六个值在设置的时候,不是一定需要全部设置,还有以下可选:
70
+ * 参数说明:
71
+ * 1)只设置a1和b1:表示在xoy平面围绕点(a1, b1)旋转
72
+ * 2)设置三个点(不足六个点):表示围绕从原点出发的射线旋转
73
+ * 3)设置六个点:表示围绕指定射线旋转
42
74
  *
43
- * 1)只设置了a1和b1,表示在xoy平面围绕(a1, b1)旋转
44
- * 2)设置三个点(设置不足六个点都认为只设置了三个点),表示围绕从原点出发的射线旋转
75
+ * 旋转方向由右手法则确定
76
+ * @returns 返回当前实例,支持链式调用
45
77
  */
46
78
  rotate(deg: number, a1: number, b1: number, c1?: number, a2?: number, b2?: number, c2?: number): this
47
79
 
package/types/SVG.d.ts CHANGED
@@ -1,3 +1,7 @@
1
+ /**
2
+ * SVG绘图类型定义
3
+ * 提供SVG绘图的各种方法和功能
4
+ */
1
5
  import SVGConfigType from './SVGConfig'
2
6
  import GradientType from "./Gradient"
3
7
 
@@ -1,72 +1,55 @@
1
1
  import { arcCapType, textAlignType, textBaselineType, lineCapType, lineJoinType } from './painterConfig'
2
2
 
3
+ /** SVG元素类型定义 */
3
4
  export type svgElType = SVGElement | "g" | "text" | "path" | "circle" | "rect" | "polygon" | "polyline"
5
+ /** SVG绘图板类型定义 */
4
6
  export type svgBoardType = SVGElement | "text" | "path" | "arc" | "circle" | "rect"
5
7
 
8
+ /**
9
+ * SVG配置类型定义
10
+ * 用于配置SVG绘图的各种样式和属性
11
+ */
6
12
  export default interface SVGConfigType {
7
13
 
8
- /**
9
- * 填充色或图案,默认"#000"
10
- */
14
+ /** 填充色或图案,默认"#000" */
11
15
  fillStyle?: string
12
16
 
13
- /**
14
- * 轮廓色或图案,默认"#000"
15
- */
17
+ /** 轮廓色或图案,默认"#000" */
16
18
  strokeStyle?: string
17
19
 
18
- /**
19
- * 线条宽度,默认1(单位px)
20
- */
20
+ /** 线条宽度,默认1(单位px) */
21
21
  lineWidth?: number
22
22
 
23
- /**
24
- * 线的端点类型,默认"butt"平直边缘(还有"round"半圆和"square"矩形)
25
- */
23
+ /** 线的端点类型,默认"butt"平直边缘(还有"round"半圆和"square"矩形) */
26
24
  lineCap?: lineCapType
27
25
 
28
- /**
29
- * 线的拐角连接方式,默认"miter"连接处边缘延长相接(还有"bevel"对角线斜角和"round"圆)
30
- */
26
+ /** 线的拐角连接方式,默认"miter"连接处边缘延长相接(还有"bevel"对角线斜角和"round"圆) */
31
27
  lineJoin?: lineJoinType
32
28
 
33
29
  /**
34
30
  * 设置线条虚线,默认为[]表示使用实线绘制
35
- *
36
31
  * 值应该是一个数组,格式:[实线长,虚线长,实线长 ...],数组长度任意,会自动循环
37
32
  */
38
33
  lineDash?: Array<number>
39
34
 
40
- /**
41
- * 文字水平对齐方式,默认"left"左对齐(还有"center"居中和"right"右对齐)
42
- */
35
+ /** 文字水平对齐方式,默认"left"左对齐(还有"center"居中和"right"右对齐) */
43
36
  textAlign?: textAlignType
44
37
 
45
- /**
46
- * 文字垂直对齐方式,默认"middle"垂直居中(还有"top"上对齐和"bottom"下对齐)
47
- */
38
+ /** 文字垂直对齐方式,默认"middle"垂直居中(还有"top"上对齐和"bottom"下对齐) */
48
39
  textBaseline?: textBaselineType
49
40
 
50
- /**
51
- * 文字大小,默认16
52
- */
41
+ /** 文字大小,默认16 */
53
42
  fontSize?: number
54
43
 
55
- /**
56
- * 字体,默认"sans-serif"
57
- */
44
+ /** 字体,默认"sans-serif" */
58
45
  fontFamily?: string
59
46
 
60
- /**
61
- * 圆弧开始端闭合方式,默认"butt"直线闭合(还有"round"圆帽闭合,"-round"反圆帽闭合)
62
- */
47
+ /** 圆弧开始端闭合方式,默认"butt"直线闭合(还有"round"圆帽闭合,"-round"反圆帽闭合) */
63
48
  arcStartCap?: arcCapType
64
49
 
65
- /**
66
- * 圆弧结束端闭合方式,默认"butt"直线闭合(还有"round"圆帽闭合,"-round"反圆帽闭合)
67
- */
50
+ /** 圆弧结束端闭合方式,默认"butt"直线闭合(还有"round"圆帽闭合,"-round"反圆帽闭合) */
68
51
  arcEndCap?: arcCapType
69
52
 
70
- // 矩形圆角半径
53
+ /** 矩形圆角半径 */
71
54
  rectRadius?: Array<number>
72
55
  }
package/types/Shader.d.ts CHANGED
@@ -1,17 +1,23 @@
1
+ /**
2
+ * 着色器类型定义
3
+ * 用于WebGL着色器的编译和使用
4
+ */
1
5
  export default interface ShaderType {
2
6
 
7
+ /** 着色器程序对象 */
3
8
  program: WebGLProgram
4
9
 
5
10
  /**
6
- * 使用这个程序
7
- * (后于编译)
11
+ * 使用这个着色器程序
12
+ * @returns 返回当前实例,支持链式调用
8
13
  */
9
14
  use(): this
10
15
 
11
16
  /**
12
17
  * 编译着色器程序
13
- * @param vshaderSource 顶点着色器
14
- * @param fshaderSource 片段(元)着色器
18
+ * @param vshaderSource 顶点着色器源码
19
+ * @param fshaderSource 片段着色器源码
20
+ * @returns 返回当前实例,支持链式调用
15
21
  */
16
22
  compile(vshaderSource: string, fshaderSource: string): this
17
23
  }
@@ -1,16 +1,22 @@
1
+ /**
2
+ * WebGL纹理类型定义
3
+ * 用于管理WebGL中的纹理资源
4
+ */
1
5
  export default interface TextureType {
2
6
 
3
7
  /**
4
- * 链接图片资源(单一)
5
- * @param image 纹理图片
8
+ * 绑定单一图片作为纹理
9
+ * @param image 纹理图片资源
10
+ * @returns 返回当前实例,支持链式调用
6
11
  */
7
12
  useImage(image: TexImageSource): this
8
13
 
9
14
  /**
10
- * 链接图片资源(多张)
11
- * @param images 纹理图片集
12
- * @param width 图片宽
13
- * @param height 图片高
15
+ * 绑定立方体贴图纹理
16
+ * @param images 纹理图片数组(6张图片)
17
+ * @param width 图片宽度
18
+ * @param height 图片高度
19
+ * @returns 返回当前实例,支持链式调用
14
20
  */
15
21
  useCube(images: TexImageSource[], width: number, height: number): this
16
22
 
@@ -1,37 +1,53 @@
1
+ /**
2
+ * 获取根节点函数类型定义
3
+ */
1
4
  export interface rootType {
5
+ /**
6
+ * 获取根节点
7
+ * @param initTree 原始树数据
8
+ * @returns 返回根节点
9
+ */
2
10
  (initTree: any): any
3
11
  }
4
12
 
13
+ /**
14
+ * 获取子节点函数类型定义
15
+ */
5
16
  export interface childrenType {
17
+ /**
18
+ * 获取子节点数组
19
+ * @param parentTree 父节点
20
+ * @param initTree 原始树数据
21
+ * @returns 返回子节点数组
22
+ */
6
23
  (parentTree: any, initTree: any): any[]
7
24
  }
8
25
 
26
+ /**
27
+ * 获取节点ID函数类型定义
28
+ */
9
29
  export interface idType {
30
+ /**
31
+ * 获取节点唯一标识
32
+ * @param treedata 节点数据
33
+ * @returns 返回节点唯一ID
34
+ */
10
35
  (treedata: any): string
11
36
  }
12
37
 
38
+ /**
39
+ * 树布局配置类型定义
40
+ * 用于配置树形布局的各种参数和方法
41
+ */
13
42
  export default interface TreeConfigType {
14
43
 
15
- /**
16
- * 获取根结点的方法
17
- * @param initTree 原始数据
18
- * @returns 返回根结点
19
- */
44
+ /** 获取根节点的方法 */
20
45
  root?: rootType
21
46
 
22
- /**
23
- * 获取子结点的方法
24
- * @param parentTree 父结点
25
- * @param initTree 原始数据
26
- * @returns 返回当前父结点的所有子结点数组
27
- */
47
+ /** 获取子节点的方法 */
28
48
  children?: childrenType
29
49
 
30
- /**
31
- * 获取结点ID方法
32
- * @param treedata 当前结点
33
- * @returns 返回可以唯一标识当前结点的id
34
- */
50
+ /** 获取节点ID方法 */
35
51
  id?: idType
36
52
 
37
53
  }
@@ -2,58 +2,70 @@ import TreeType from "./Tree"
2
2
  import { TreeResultType } from "./Tree"
3
3
  import TreeOptionType from './TreeOption'
4
4
 
5
+ /**
6
+ * 树布局类型定义
7
+ * 继承自TreeType,提供树形布局的计算和操作功能
8
+ */
5
9
  export default interface TreeLayoutType extends TreeType {
6
10
 
7
11
  /**
8
12
  * 设置布局的行为
9
- * @param option
13
+ * @param option 布局选项
14
+ * @returns 返回当前实例,支持链式调用
10
15
  */
11
16
  setOption(option: TreeOptionType): this
12
17
 
13
18
  /**
14
- * 单纯的树图坐标计算
15
- * @param initTree 原始数据
16
- * @param noOpens 可选,结点初始是否闭合控制
19
+ * 计算树图坐标
20
+ * @param initTree 原始树数据
21
+ * @param noOpens 可选,节点初始是否闭合控制
22
+ * @returns 返回计算后的树结构数据
17
23
  */
18
24
  use(initTree: any, noOpens?: {
19
25
  [id: string]: boolean
20
26
  }): TreeResultType
21
27
 
22
28
  /**
23
- * 绑定新的数据和渲染方法
24
- * @param initTree 原始数据
25
- * @param renderBack 渲染方法
26
- * @param noOpens 可选,结点初始是否闭合控制
29
+ * 绑定数据和渲染方法
30
+ * @param initTree 原始树数据
31
+ * @param renderBack 渲染回调函数
32
+ * @param noOpens 可选,节点初始是否闭合控制
33
+ * @returns 返回当前实例,支持链式调用
27
34
  */
28
35
  bind(initTree: any, renderBack: (tree: TreeResultType) => void, noOpens?: {
29
36
  [id: string]: boolean
30
37
  }): this
31
38
 
32
39
  /**
33
- * 解除绑定
40
+ * 解除数据绑定
41
+ * @returns 返回当前实例,支持链式调用
34
42
  */
35
43
  unbind(): this
36
44
 
37
45
  /**
38
46
  * 闭合指定节点
39
- * @param id
47
+ * @param id 节点ID
48
+ * @returns 返回当前实例,支持链式调用
40
49
  */
41
50
  closeNode(id: string): this
42
51
 
43
52
  /**
44
53
  * 展开指定节点
45
- * @param id
54
+ * @param id 节点ID
55
+ * @returns 返回当前实例,支持链式调用
46
56
  */
47
57
  openNode(id: string): this
48
58
 
49
59
  /**
50
- * 闭合或展开指定节点
51
- * @param id
60
+ * 切换指定节点的展开/闭合状态
61
+ * @param id 节点ID
62
+ * @returns 返回当前实例,支持链式调用
52
63
  */
53
64
  toggleNode(id: string): this
54
65
 
55
66
  /**
56
67
  * 主动触发绘制更新
68
+ * @returns 返回当前实例,支持链式调用
57
69
  */
58
70
  doUpdate(): this
59
71
 
@@ -1,8 +1,23 @@
1
+ /**
2
+ * 动画回调函数类型定义
3
+ * @param deep 动画进度值,范围0-1
4
+ */
1
5
  interface animationFun {
2
6
  (deep: number): void
3
7
  }
4
8
 
9
+ /**
10
+ * 动画函数类型定义
11
+ * 用于创建平滑的动画效果
12
+ */
5
13
  interface animationType {
14
+ /**
15
+ * 执行动画
16
+ * @param doback 动画执行函数,接收一个0-1之间的进度值
17
+ * @param duration 动画持续时间(毫秒),可选,默认为500ms
18
+ * @param callback 动画完成后的回调函数,可选
19
+ * @returns 返回一个函数,调用该函数可提前结束动画
20
+ */
6
21
  (doback: animationFun, duration?: number, callback?: animationFun): Function
7
22
  }
8
23
 
@@ -1,6 +1,15 @@
1
1
  /**
2
- * 步进生成器
2
+ * 步进生成器函数类型定义
3
+ * 用于生成步进序列数据
3
4
  */
4
5
  export default interface assembleType {
6
+ /**
7
+ * 创建步进序列生成器
8
+ * @param begin 起始值
9
+ * @param end 结束值
10
+ * @param step 步长
11
+ * @param count 元素个数
12
+ * @returns 返回一个生成器函数,调用后返回数组
13
+ */
5
14
  (begin: number, end: number, step: number, count: number): () => Array<number>
6
15
  }
@@ -1,6 +1,14 @@
1
1
  /**
2
- * 获取一组循环色彩
2
+ * 循环颜色获取函数类型定义
3
+ * 用于生成指定数量的循环色彩数组
3
4
  */
4
5
  export default interface getLoopColorsType {
6
+ /**
7
+ * 生成循环色彩数组
8
+ * @param num 需要生成的颜色数量
9
+ * @param alpha 颜色透明度,可选,默认为1
10
+ * @param colorsFactory 自定义颜色工厂函数,可选
11
+ * @returns 返回生成的颜色数组
12
+ */
5
13
  (num: number, alpha?: number, colorsFactory?: (alpha: number) => Array<string>): string[]
6
14
  }