vislite 1.12.0 → 2.0.0-next.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 (180) hide show
  1. package/AUTHORS.txt +6 -6
  2. package/CHANGELOG +414 -403
  3. package/LICENSE +20 -20
  4. package/README-en.md +245 -245
  5. package/README.md +245 -245
  6. package/bin/formatArgv.js +30 -30
  7. package/bin/help.js +21 -17
  8. package/bin/minialipay.js +27 -0
  9. package/bin/run +25 -21
  10. package/bin/skills.js +26 -26
  11. package/lib/BarLayout/index.es.js +348 -348
  12. package/lib/Buffer/index.es.js +34 -34
  13. package/lib/Canvas/index.es.js +804 -804
  14. package/lib/Cardinal/index.es.js +89 -89
  15. package/lib/Eoap/index.es.js +32 -32
  16. package/lib/Hermite/index.es.js +34 -34
  17. package/lib/MapCoordinate/index.es.js +199 -199
  18. package/lib/Matrix4/index.es.js +123 -123
  19. package/lib/Mercator/index.es.js +18 -18
  20. package/lib/PieLayout/index.es.js +115 -115
  21. package/lib/RawCanvas/index.es.js +736 -736
  22. package/lib/SVG/index.es.js +626 -626
  23. package/lib/Shader/index.es.js +34 -34
  24. package/lib/Texture/index.es.js +52 -52
  25. package/lib/TreeLayout/index.es.js +301 -301
  26. package/lib/animation/index.es.js +2 -2
  27. package/lib/assemble/index.es.js +19 -19
  28. package/lib/getLoopColors/index.es.js +34 -34
  29. package/lib/getWebGLContext/index.es.js +61 -61
  30. package/lib/index.umd.js +2797 -2797
  31. package/lib/index.umd.min.js +1 -1
  32. package/lib/initOption/index.es.js +5 -5
  33. package/lib/mergeOption/index.es.js +34 -34
  34. package/lib/move/index.es.js +6 -6
  35. package/lib/rotate/index.es.js +6 -6
  36. package/lib/ruler/index.es.js +136 -136
  37. package/lib/scale/index.es.js +5 -5
  38. package/minialipay/ui-canvas/drawImage.js +35 -35
  39. package/minialipay/ui-canvas/index.acss +4 -4
  40. package/minialipay/ui-canvas/index.axml +3 -3
  41. package/minialipay/ui-canvas/index.d.ts +1 -1
  42. package/minialipay/ui-canvas/index.js +100 -100
  43. package/minialipay/ui-canvas/index.json +6 -6
  44. package/miniprogram/ui-canvas/drawImage.js +35 -35
  45. package/miniprogram/ui-canvas/index.js +125 -125
  46. package/miniprogram/ui-canvas/index.json +4 -4
  47. package/miniprogram/ui-canvas/index.wxml +4 -4
  48. package/miniprogram/ui-canvas/index.wxss +5 -5
  49. package/package/BarLayout/index.ts +2 -2
  50. package/package/Buffer/index.ts +2 -2
  51. package/package/Canvas/index.ts +2 -2
  52. package/package/Cardinal/index.ts +2 -2
  53. package/package/Eoap/index.ts +2 -2
  54. package/package/Hermite/index.ts +2 -2
  55. package/package/MapCoordinate/index.ts +2 -2
  56. package/package/Matrix4/index.ts +2 -2
  57. package/package/Mercator/index.ts +2 -2
  58. package/package/PieLayout/index.ts +2 -2
  59. package/package/RawCanvas/index.ts +2 -2
  60. package/package/SVG/index.ts +2 -2
  61. package/package/Shader/index.ts +2 -2
  62. package/package/Texture/index.ts +2 -2
  63. package/package/TreeLayout/index.ts +2 -2
  64. package/package/animation/index.ts +5 -5
  65. package/package/assemble/index.ts +2 -2
  66. package/package/getLoopColors/index.ts +2 -2
  67. package/package/getWebGLContext/index.ts +40 -40
  68. package/package/index.ts +84 -84
  69. package/package/initOption/index.ts +2 -2
  70. package/package/mergeOption/index.ts +2 -2
  71. package/package/move/index.ts +2 -2
  72. package/package/rotate/index.ts +2 -2
  73. package/package/ruler/index.ts +2 -2
  74. package/package/scale/index.ts +2 -2
  75. package/package/throttle/index.ts +2 -2
  76. package/package.json +103 -79
  77. package/skills/vislite-lib/BarLayout.md +117 -117
  78. package/skills/vislite-lib/Canvas.md +183 -183
  79. package/skills/vislite-lib/Interpolation.md +129 -129
  80. package/skills/vislite-lib/Matrix.md +174 -174
  81. package/skills/vislite-lib/PieLayout.md +131 -131
  82. package/skills/vislite-lib/Projections.md +158 -158
  83. package/skills/vislite-lib/SKILL.md +179 -179
  84. package/skills/vislite-lib/SVG.md +137 -137
  85. package/skills/vislite-lib/TreeLayout.md +176 -176
  86. package/skills/vislite-lib/Utilities.md +261 -261
  87. package/skills/vislite-lib/WebGL.md +106 -106
  88. package/skills/vislite-lib/minialipay/ui-canvas.md +95 -95
  89. package/skills/vislite-lib/miniprogram/ui-canvas.md +98 -98
  90. package/skills/vislite-lib/uniapp/ui-canvas.md +113 -113
  91. package/src/Canvas.ts +89 -89
  92. package/src/Eoap.ts +66 -66
  93. package/src/Matrix4/index.ts +84 -84
  94. package/src/Matrix4/move.ts +12 -12
  95. package/src/Matrix4/rotate.ts +15 -15
  96. package/src/Matrix4/scale.ts +11 -11
  97. package/src/Matrix4/transform.ts +64 -64
  98. package/src/Mercator.ts +27 -27
  99. package/src/SVG.ts +86 -86
  100. package/src/common/assemble.ts +30 -30
  101. package/src/common/canvas/arc.ts +51 -51
  102. package/src/common/canvas/config.ts +176 -176
  103. package/src/common/canvas/default.ts +64 -64
  104. package/src/common/canvas/gradient.ts +31 -31
  105. package/src/common/canvas/index.ts +189 -189
  106. package/src/common/canvas/painter.ts +475 -475
  107. package/src/common/canvas/texts.ts +18 -18
  108. package/src/common/map/getBoundary.ts +15 -15
  109. package/src/common/map/tool.ts +29 -29
  110. package/src/common/option.ts +31 -31
  111. package/src/common/setStyle.ts +5 -5
  112. package/src/common/svg/config.ts +213 -213
  113. package/src/common/svg/default.ts +29 -29
  114. package/src/common/svg/gradient.ts +53 -53
  115. package/src/common/svg/index.ts +420 -420
  116. package/src/common/svg/tool.ts +51 -51
  117. package/src/common/tree/index.ts +25 -25
  118. package/src/common/tree/toInnerTree.ts +61 -61
  119. package/src/common/tree/toPlainTree.ts +135 -135
  120. package/src/common/type.ts +26 -26
  121. package/src/common/webgl/buffer.ts +79 -79
  122. package/src/common/webgl/getWebGLContext.ts +45 -45
  123. package/src/common/webgl/shader.ts +75 -75
  124. package/src/common/webgl/texture.ts +98 -98
  125. package/src/coordinate/MapCoordinate.ts +80 -80
  126. package/src/getLoopColors.ts +42 -42
  127. package/src/interpolation/Cardinal.ts +110 -110
  128. package/src/interpolation/Hermite.ts +65 -65
  129. package/src/layout/BarLayout.ts +249 -249
  130. package/src/layout/PieLayout.ts +146 -146
  131. package/src/layout/TreeLayout.ts +200 -200
  132. package/src/move.ts +7 -7
  133. package/src/rotate.ts +7 -7
  134. package/src/ruler.ts +209 -209
  135. package/src/scale.ts +6 -6
  136. package/types/Bar.d.ts +91 -91
  137. package/types/BarConfig.d.ts +4 -4
  138. package/types/BarLayout.d.ts +48 -48
  139. package/types/BarOption.d.ts +31 -31
  140. package/types/Buffer.d.ts +30 -30
  141. package/types/Canvas.d.ts +379 -379
  142. package/types/CanvasConfig.d.ts +61 -61
  143. package/types/CanvasOption.d.ts +13 -13
  144. package/types/CanvasOpts.d.ts +9 -9
  145. package/types/Cardinal.d.ts +20 -20
  146. package/types/Gradient.d.ts +20 -20
  147. package/types/Hermite.d.ts +25 -25
  148. package/types/Map.d.ts +9 -9
  149. package/types/MapConfig.d.ts +27 -27
  150. package/types/MapCoordinate.d.ts +22 -22
  151. package/types/Matrix4.d.ts +79 -79
  152. package/types/Pie.d.ts +73 -73
  153. package/types/PieConfig.d.ts +26 -26
  154. package/types/PieLayout.d.ts +40 -40
  155. package/types/PieOption.d.ts +21 -21
  156. package/types/SVG.d.ts +282 -282
  157. package/types/SVGConfig.d.ts +54 -54
  158. package/types/Shader.d.ts +22 -22
  159. package/types/Texture.d.ts +22 -22
  160. package/types/Tree.d.ts +74 -74
  161. package/types/TreeConfig.d.ts +52 -52
  162. package/types/TreeLayout.d.ts +71 -71
  163. package/types/TreeOption.d.ts +48 -48
  164. package/types/animation.d.ts +26 -26
  165. package/types/assemble.d.ts +14 -14
  166. package/types/getLoopColors.d.ts +13 -13
  167. package/types/getWebGLContext.d.ts +7 -7
  168. package/types/index.d.ts +220 -220
  169. package/types/module.d.ts +110 -110
  170. package/types/move.d.ts +15 -15
  171. package/types/option.d.ts +12 -12
  172. package/types/painterConfig.d.ts +14 -14
  173. package/types/rotate.d.ts +15 -15
  174. package/types/ruler.d.ts +24 -24
  175. package/types/scale.d.ts +15 -15
  176. package/types/throttle.d.ts +6 -6
  177. package/types/ui-canvas.d.ts +4 -4
  178. package/types/uni-canvas.d.ts +3 -3
  179. package/uni-app/drawImage.js +19 -19
  180. package/uni-app/ui-canvas.vue +295 -295
@@ -1,177 +1,177 @@
1
- # TreeLayout 树布局
2
-
3
- TreeLayout 用于绘制树状图,支持多种布局方向和交互。
4
-
5
- ## 引入
6
-
7
- ```js
8
- import { TreeLayout } from 'vislite';
9
- ```
10
-
11
- ## 初始化
12
-
13
- ```js
14
- var treeLayout = new TreeLayout(config);
15
- ```
16
-
17
- ### config 配置
18
-
19
- ```js
20
- {
21
- // 获取根节点方法
22
- root: function(initTree) {
23
- return initTree;
24
- },
25
-
26
- // 获取子节点方法
27
- children: function(parentTree, initTree) {
28
- return parentTree.children;
29
- },
30
-
31
- // 获取节点ID方法
32
- id: function(treedata) {
33
- return treedata.name;
34
- }
35
- }
36
- ```
37
-
38
- ## setOption 设置布局行为
39
-
40
- ```js
41
- treeLayout.setOption({
42
- offsetX: 0, // 水平方向隐藏节点偏差
43
- offsetY: 0, // 垂直方向隐藏节点偏差
44
- duration: 500, // 切换动画时长(ms)
45
- type: 'rect', // 树图类型:plain|rect|circle
46
- direction: 'LR', // 方向:LR|RL|TB|BT
47
- x: 250, // 根一侧的中间位置x坐标
48
- y: 20, // 根一侧的中间位置y坐标
49
- width: 500, // 矩形树图宽度(type=rect时有效)
50
- height: 260, // 矩形树图高度(type=rect时有效)
51
- radius: 100 // 圆树图半径(type=circle时有效)
52
- });
53
- ```
54
-
55
- ### type 类型
56
-
57
- - **plain**: 普通树图(默认)
58
- - **rect**: 矩形树图
59
- - **circle**: 圆树图
60
-
61
- ### direction 方向
62
-
63
- - **LR**: 从左往右
64
- - **RL**: 从右往左
65
- - **TB**: 从上往下(默认)
66
- - **BT**: 从下往上
67
-
68
- ## use 坐标计算
69
-
70
- ```js
71
- var tree = treeLayout.use(initTree, noOpens);
72
- ```
73
-
74
- ### 返回值 tree 结构
75
-
76
- ```js
77
- {
78
- node: {
79
- '节点ID': {
80
- left: x坐标,
81
- top: y坐标,
82
- pid: 父节点ID,
83
- show: 是否显示,
84
- deg: 旋转角度(circle类型时)
85
- }
86
- },
87
- size: 节点数量,
88
- deep: 深度
89
- }
90
- ```
91
-
92
- ### noOpens 参数
93
-
94
- 控制节点展开/闭合状态:
95
-
96
- ```js
97
- treeLayout.use(initTree, {
98
- 'nodeId1': false, // 闭合
99
- 'nodeId2': true // 打开
100
- });
101
- ```
102
-
103
- ## bind 绑定渲染
104
-
105
- ```js
106
- treeLayout.bind(initTree, function(tree) {
107
- // 绘制树图
108
- for (var key in tree.node) {
109
- var node = tree.node[key];
110
- // 绘制节点...
111
- }
112
- }, noOpens);
113
- ```
114
-
115
- ## 交互方法
116
-
117
- ```js
118
- // 关闭节点
119
- treeLayout.closeNode('nodeId');
120
-
121
- // 打开节点
122
- treeLayout.openNode('nodeId');
123
-
124
- // 切换节点状态
125
- treeLayout.toggleNode('nodeId');
126
-
127
- // 更新布局
128
- treeLayout.doUpdate();
129
-
130
- // 解绑
131
- treeLayout.unbind();
132
- ```
133
-
134
- ## 使用示例
135
-
136
- ```js
137
- var treeLayout = new TreeLayout();
138
-
139
- treeLayout.setOption({
140
- type: 'rect',
141
- direction: 'TB',
142
- x: 250,
143
- y: 20,
144
- width: 500,
145
- height: 260
146
- });
147
-
148
- var data = {
149
- name: '前端',
150
- children: [{
151
- name: '基础',
152
- children: [{ name: 'HTML' }, { name: 'CSS' }]
153
- }, {
154
- name: '框架'
155
- }]
156
- };
157
-
158
- var tree = treeLayout.use(data);
159
-
160
- // 绘制连线
161
- painter.config({ strokeStyle: 'red' });
162
- for (var key in tree.node) {
163
- var pid = tree.node[key].pid;
164
- if (pid) {
165
- painter
166
- .beginPath()
167
- .moveTo(tree.node[key].left, tree.node[key].top)
168
- .bezierCurveTo(...)
169
- .stroke();
170
- }
171
- }
172
-
173
- // 绘制节点
174
- for (var key in tree.node) {
175
- painter.fullCircle(tree.node[key].left, tree.node[key].top, 10);
176
- }
1
+ # TreeLayout 树布局
2
+
3
+ TreeLayout 用于绘制树状图,支持多种布局方向和交互。
4
+
5
+ ## 引入
6
+
7
+ ```js
8
+ import { TreeLayout } from 'vislite';
9
+ ```
10
+
11
+ ## 初始化
12
+
13
+ ```js
14
+ var treeLayout = new TreeLayout(config);
15
+ ```
16
+
17
+ ### config 配置
18
+
19
+ ```js
20
+ {
21
+ // 获取根节点方法
22
+ root: function(initTree) {
23
+ return initTree;
24
+ },
25
+
26
+ // 获取子节点方法
27
+ children: function(parentTree, initTree) {
28
+ return parentTree.children;
29
+ },
30
+
31
+ // 获取节点ID方法
32
+ id: function(treedata) {
33
+ return treedata.name;
34
+ }
35
+ }
36
+ ```
37
+
38
+ ## setOption 设置布局行为
39
+
40
+ ```js
41
+ treeLayout.setOption({
42
+ offsetX: 0, // 水平方向隐藏节点偏差
43
+ offsetY: 0, // 垂直方向隐藏节点偏差
44
+ duration: 500, // 切换动画时长(ms)
45
+ type: 'rect', // 树图类型:plain|rect|circle
46
+ direction: 'LR', // 方向:LR|RL|TB|BT
47
+ x: 250, // 根一侧的中间位置x坐标
48
+ y: 20, // 根一侧的中间位置y坐标
49
+ width: 500, // 矩形树图宽度(type=rect时有效)
50
+ height: 260, // 矩形树图高度(type=rect时有效)
51
+ radius: 100 // 圆树图半径(type=circle时有效)
52
+ });
53
+ ```
54
+
55
+ ### type 类型
56
+
57
+ - **plain**: 普通树图(默认)
58
+ - **rect**: 矩形树图
59
+ - **circle**: 圆树图
60
+
61
+ ### direction 方向
62
+
63
+ - **LR**: 从左往右
64
+ - **RL**: 从右往左
65
+ - **TB**: 从上往下(默认)
66
+ - **BT**: 从下往上
67
+
68
+ ## use 坐标计算
69
+
70
+ ```js
71
+ var tree = treeLayout.use(initTree, noOpens);
72
+ ```
73
+
74
+ ### 返回值 tree 结构
75
+
76
+ ```js
77
+ {
78
+ node: {
79
+ '节点ID': {
80
+ left: x坐标,
81
+ top: y坐标,
82
+ pid: 父节点ID,
83
+ show: 是否显示,
84
+ deg: 旋转角度(circle类型时)
85
+ }
86
+ },
87
+ size: 节点数量,
88
+ deep: 深度
89
+ }
90
+ ```
91
+
92
+ ### noOpens 参数
93
+
94
+ 控制节点展开/闭合状态:
95
+
96
+ ```js
97
+ treeLayout.use(initTree, {
98
+ 'nodeId1': false, // 闭合
99
+ 'nodeId2': true // 打开
100
+ });
101
+ ```
102
+
103
+ ## bind 绑定渲染
104
+
105
+ ```js
106
+ treeLayout.bind(initTree, function(tree) {
107
+ // 绘制树图
108
+ for (var key in tree.node) {
109
+ var node = tree.node[key];
110
+ // 绘制节点...
111
+ }
112
+ }, noOpens);
113
+ ```
114
+
115
+ ## 交互方法
116
+
117
+ ```js
118
+ // 关闭节点
119
+ treeLayout.closeNode('nodeId');
120
+
121
+ // 打开节点
122
+ treeLayout.openNode('nodeId');
123
+
124
+ // 切换节点状态
125
+ treeLayout.toggleNode('nodeId');
126
+
127
+ // 更新布局
128
+ treeLayout.doUpdate();
129
+
130
+ // 解绑
131
+ treeLayout.unbind();
132
+ ```
133
+
134
+ ## 使用示例
135
+
136
+ ```js
137
+ var treeLayout = new TreeLayout();
138
+
139
+ treeLayout.setOption({
140
+ type: 'rect',
141
+ direction: 'TB',
142
+ x: 250,
143
+ y: 20,
144
+ width: 500,
145
+ height: 260
146
+ });
147
+
148
+ var data = {
149
+ name: '前端',
150
+ children: [{
151
+ name: '基础',
152
+ children: [{ name: 'HTML' }, { name: 'CSS' }]
153
+ }, {
154
+ name: '框架'
155
+ }]
156
+ };
157
+
158
+ var tree = treeLayout.use(data);
159
+
160
+ // 绘制连线
161
+ painter.config({ strokeStyle: 'red' });
162
+ for (var key in tree.node) {
163
+ var pid = tree.node[key].pid;
164
+ if (pid) {
165
+ painter
166
+ .beginPath()
167
+ .moveTo(tree.node[key].left, tree.node[key].top)
168
+ .bezierCurveTo(...)
169
+ .stroke();
170
+ }
171
+ }
172
+
173
+ // 绘制节点
174
+ for (var key in tree.node) {
175
+ painter.fullCircle(tree.node[key].left, tree.node[key].top, 10);
176
+ }
177
177
  ```