@antv/layout 0.3.22-beta.8 → 0.3.23
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.
- package/dist/layout.min.js +1 -1
- package/dist/layout.min.js.map +1 -1
- package/es/layout/comboCombined.d.ts +3 -3
- package/es/layout/comboCombined.js +39 -26
- package/es/layout/comboCombined.js.map +1 -1
- package/es/layout/force2/index.d.ts +2 -0
- package/es/layout/force2/index.js +5 -3
- package/es/layout/force2/index.js.map +1 -1
- package/lib/layout/comboCombined.d.ts +3 -3
- package/lib/layout/comboCombined.js +38 -23
- package/lib/layout/comboCombined.js.map +1 -1
- package/lib/layout/force2/index.d.ts +2 -0
- package/lib/layout/force2/index.js +5 -3
- package/lib/layout/force2/index.js.map +1 -1
- package/package.json +1 -1
- package/src/layout/comboCombined.ts +86 -38
- package/src/layout/force2/index.ts +7 -3
|
@@ -287,7 +287,7 @@ var Force2Layout = /** @class */ (function (_super) {
|
|
|
287
287
|
if ((0, util_1.isArray)(d.size)) {
|
|
288
288
|
return Math.max(d.size[0], d.size[1]) + nodeSpacingFunc_1(d);
|
|
289
289
|
}
|
|
290
|
-
if ((0, util_1.isObject)(d.size)) {
|
|
290
|
+
else if ((0, util_1.isObject)(d.size)) {
|
|
291
291
|
return Math.max(d.size.width, d.size.height) + nodeSpacingFunc_1(d);
|
|
292
292
|
}
|
|
293
293
|
return d.size + nodeSpacingFunc_1(d);
|
|
@@ -354,7 +354,9 @@ var Force2Layout = /** @class */ (function (_super) {
|
|
|
354
354
|
};
|
|
355
355
|
Force2Layout.prototype.run = function () {
|
|
356
356
|
var self = this;
|
|
357
|
-
var maxIteration = self.maxIteration, nodes = self.nodes, edges = self.edges, workerEnabled = self.workerEnabled, minMovement = self.minMovement, animate = self.animate, nodeMap = self.nodeMap;
|
|
357
|
+
var maxIteration = self.maxIteration, nodes = self.nodes, edges = self.edges, workerEnabled = self.workerEnabled, minMovement = self.minMovement, animate = self.animate, nodeMap = self.nodeMap, height = self.height;
|
|
358
|
+
self.currentMinY = 0;
|
|
359
|
+
self.currentMaxY = height;
|
|
358
360
|
if (!nodes)
|
|
359
361
|
return;
|
|
360
362
|
var velArray = [];
|
|
@@ -562,7 +564,7 @@ var Force2Layout = /** @class */ (function (_super) {
|
|
|
562
564
|
* @returns
|
|
563
565
|
*/
|
|
564
566
|
Force2Layout.prototype.attractToSide = function (accArray) {
|
|
565
|
-
var _a = this, defSideCoe = _a.defSideCoe, height = _a.height, nodes = _a.nodes, relatedEdges = _a.relatedEdges, _b = _a.currentMinY, currentMinY = _b === void 0 ? 0 : _b, _c = _a.currentMaxY, currentMaxY = _c === void 0 ? height : _c;
|
|
567
|
+
var _a = this, defSideCoe = _a.defSideCoe, height = _a.height, nodes = _a.nodes, relatedEdges = _a.relatedEdges, _b = _a.currentMinY, currentMinY = _b === void 0 ? 0 : _b, _c = _a.currentMaxY, currentMaxY = _c === void 0 ? this.height : _c;
|
|
566
568
|
if (!defSideCoe || typeof defSideCoe !== 'function' || !(nodes === null || nodes === void 0 ? void 0 : nodes.length))
|
|
567
569
|
return;
|
|
568
570
|
nodes.forEach(function (node, i) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/layout/force2/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/layout/force2/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -3,18 +3,32 @@
|
|
|
3
3
|
* @author shiwu.wyy@antfin.com
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
import {
|
|
7
7
|
Edge,
|
|
8
8
|
Combo,
|
|
9
9
|
OutNode,
|
|
10
10
|
PointTuple,
|
|
11
11
|
ComboTree,
|
|
12
|
-
ComboCombinedLayoutOptions
|
|
13
|
-
} from
|
|
12
|
+
ComboCombinedLayoutOptions,
|
|
13
|
+
} from './types';
|
|
14
14
|
import { FORCE_LAYOUT_TYPE_MAP } from './constants';
|
|
15
|
-
import { Base } from
|
|
16
|
-
import {
|
|
17
|
-
|
|
15
|
+
import { Base } from './base';
|
|
16
|
+
import {
|
|
17
|
+
isArray,
|
|
18
|
+
isNumber,
|
|
19
|
+
isFunction,
|
|
20
|
+
traverseTreeUp,
|
|
21
|
+
isObject,
|
|
22
|
+
getLayoutBBox,
|
|
23
|
+
} from '../util';
|
|
24
|
+
import {
|
|
25
|
+
CircularLayout,
|
|
26
|
+
ConcentricLayout,
|
|
27
|
+
GridLayout,
|
|
28
|
+
RadialLayout,
|
|
29
|
+
GForceLayout,
|
|
30
|
+
MDSLayout,
|
|
31
|
+
} from '.';
|
|
18
32
|
|
|
19
33
|
type Node = OutNode & {
|
|
20
34
|
depth?: number;
|
|
@@ -29,7 +43,6 @@ type Node = OutNode & {
|
|
|
29
43
|
* combined two layouts (inner and outer) for graph with combos
|
|
30
44
|
*/
|
|
31
45
|
export class ComboCombinedLayout extends Base {
|
|
32
|
-
|
|
33
46
|
/** 布局中心 */
|
|
34
47
|
public center: PointTuple = [0, 0];
|
|
35
48
|
|
|
@@ -52,7 +65,11 @@ export class ComboCombinedLayout extends Base {
|
|
|
52
65
|
public outerLayout: any;
|
|
53
66
|
|
|
54
67
|
/** combo 内部的布局算法,默认为 concentric */
|
|
55
|
-
public innerLayout:
|
|
68
|
+
public innerLayout:
|
|
69
|
+
| ConcentricLayout
|
|
70
|
+
| CircularLayout
|
|
71
|
+
| GridLayout
|
|
72
|
+
| RadialLayout;
|
|
56
73
|
|
|
57
74
|
/** Combo 内部的 padding */
|
|
58
75
|
public comboPadding:
|
|
@@ -101,7 +118,7 @@ export class ComboCombinedLayout extends Base {
|
|
|
101
118
|
public run() {
|
|
102
119
|
const self = this;
|
|
103
120
|
const { nodes, edges, combos, comboEdges, center } = self;
|
|
104
|
-
|
|
121
|
+
|
|
105
122
|
const nodeMap: any = {};
|
|
106
123
|
nodes.forEach((node) => {
|
|
107
124
|
nodeMap[node.id] = node;
|
|
@@ -128,10 +145,15 @@ export class ComboCombinedLayout extends Base {
|
|
|
128
145
|
fx: innerNode.fx || comboMap[cTree.id].fx,
|
|
129
146
|
fy: innerNode.fy || comboMap[cTree.id].fy,
|
|
130
147
|
mass: innerNode.mass || comboMap[cTree.id].mass,
|
|
131
|
-
size: innerNode.size
|
|
148
|
+
size: innerNode.size,
|
|
132
149
|
};
|
|
133
150
|
outerNodes.push(oNode);
|
|
134
|
-
if (
|
|
151
|
+
if (
|
|
152
|
+
!isNaN(oNode.x) &&
|
|
153
|
+
oNode.x !== 0 &&
|
|
154
|
+
!isNaN(oNode.y) &&
|
|
155
|
+
oNode.y !== 0
|
|
156
|
+
) {
|
|
135
157
|
allHaveNoPosition = false;
|
|
136
158
|
} else {
|
|
137
159
|
oNode.x = Math.random() * 100;
|
|
@@ -148,7 +170,12 @@ export class ComboCombinedLayout extends Base {
|
|
|
148
170
|
// 代表节点的节点
|
|
149
171
|
const oNode: Node = { ...node };
|
|
150
172
|
outerNodes.push(oNode);
|
|
151
|
-
if (
|
|
173
|
+
if (
|
|
174
|
+
!isNaN(oNode.x) &&
|
|
175
|
+
oNode.x !== 0 &&
|
|
176
|
+
!isNaN(oNode.y) &&
|
|
177
|
+
oNode.y !== 0
|
|
178
|
+
) {
|
|
152
179
|
allHaveNoPosition = false;
|
|
153
180
|
} else {
|
|
154
181
|
oNode.x = Math.random() * 100;
|
|
@@ -161,12 +188,14 @@ export class ComboCombinedLayout extends Base {
|
|
|
161
188
|
const sourceAncestorId = nodeAncestorIdMap[edge.source] || edge.source;
|
|
162
189
|
const targetAncestorId = nodeAncestorIdMap[edge.target] || edge.target;
|
|
163
190
|
// 若两个点的祖先都在力导图的节点中,且是不同的节点,创建一条链接两个祖先的边到力导图的边中
|
|
164
|
-
if (
|
|
191
|
+
if (
|
|
192
|
+
sourceAncestorId !== targetAncestorId &&
|
|
165
193
|
outerNodeIds.includes(sourceAncestorId) &&
|
|
166
|
-
outerNodeIds.includes(targetAncestorId)
|
|
194
|
+
outerNodeIds.includes(targetAncestorId)
|
|
195
|
+
) {
|
|
167
196
|
outerEdges.push({
|
|
168
197
|
source: sourceAncestorId,
|
|
169
|
-
target: targetAncestorId
|
|
198
|
+
target: targetAncestorId,
|
|
170
199
|
});
|
|
171
200
|
}
|
|
172
201
|
});
|
|
@@ -179,19 +208,22 @@ export class ComboCombinedLayout extends Base {
|
|
|
179
208
|
} else {
|
|
180
209
|
const outerData = {
|
|
181
210
|
nodes: outerNodes,
|
|
182
|
-
edges: outerEdges
|
|
211
|
+
edges: outerEdges,
|
|
183
212
|
};
|
|
184
213
|
|
|
185
214
|
// 需要使用一个同步的布局
|
|
186
215
|
// @ts-ignore
|
|
187
|
-
const outerLayout =
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
216
|
+
const outerLayout =
|
|
217
|
+
this.outerLayout ||
|
|
218
|
+
new GForceLayout({
|
|
219
|
+
gravity: 1,
|
|
220
|
+
factor: 4,
|
|
221
|
+
linkDistance: (edge: any, source: any, target: any) => {
|
|
222
|
+
const nodeSize =
|
|
223
|
+
((source.size?.[0] || 30) + (target.size?.[0] || 30)) / 2;
|
|
224
|
+
return Math.min(nodeSize * 1.5, 700);
|
|
225
|
+
},
|
|
226
|
+
});
|
|
195
227
|
const outerLayoutType = outerLayout.getType?.();
|
|
196
228
|
outerLayout.updateCfg({
|
|
197
229
|
center,
|
|
@@ -201,7 +233,8 @@ export class ComboCombinedLayout extends Base {
|
|
|
201
233
|
});
|
|
202
234
|
// 若所有 outerNodes 都没有位置,且 outerLayout 是力导家族的布局,则先执行 preset mds 或 grid
|
|
203
235
|
if (allHaveNoPosition && FORCE_LAYOUT_TYPE_MAP[outerLayoutType]) {
|
|
204
|
-
const outerLayoutPreset =
|
|
236
|
+
const outerLayoutPreset =
|
|
237
|
+
outerNodes.length < 100 ? new MDSLayout() : new GridLayout();
|
|
205
238
|
outerLayoutPreset.layout(outerData);
|
|
206
239
|
}
|
|
207
240
|
outerLayout.layout(outerData);
|
|
@@ -235,8 +268,8 @@ export class ComboCombinedLayout extends Base {
|
|
|
235
268
|
if (!innerGraph) continue;
|
|
236
269
|
innerGraph.nodes.forEach((node: OutNode) => {
|
|
237
270
|
if (!innerGraph.visited) {
|
|
238
|
-
node.x +=
|
|
239
|
-
node.y +=
|
|
271
|
+
node.x += innerGraph.x || 0;
|
|
272
|
+
node.y += innerGraph.y || 0;
|
|
240
273
|
}
|
|
241
274
|
if (nodeMap[node.id]) {
|
|
242
275
|
nodeMap[node.id].x = node.x;
|
|
@@ -257,7 +290,9 @@ export class ComboCombinedLayout extends Base {
|
|
|
257
290
|
const innerGraphs: any = {};
|
|
258
291
|
|
|
259
292
|
// @ts-ignore
|
|
260
|
-
const innerGraphLayout: any =
|
|
293
|
+
const innerGraphLayout: any =
|
|
294
|
+
this.innerLayout ||
|
|
295
|
+
new ConcentricLayout({ type: 'concentric', sortBy: 'id' });
|
|
261
296
|
innerGraphLayout.center = [0, 0];
|
|
262
297
|
innerGraphLayout.preventOverlap = true;
|
|
263
298
|
innerGraphLayout.nodeSpacing = spacing;
|
|
@@ -270,11 +305,13 @@ export class ComboCombinedLayout extends Base {
|
|
|
270
305
|
if (!treeNode.children?.length) {
|
|
271
306
|
// 空 combo
|
|
272
307
|
if (treeNode.itemType === 'combo') {
|
|
273
|
-
const treeNodeSize = padding
|
|
308
|
+
const treeNodeSize = padding
|
|
309
|
+
? [padding * 2, padding * 2]
|
|
310
|
+
: [30, 30];
|
|
274
311
|
innerGraphs[treeNode.id] = {
|
|
275
312
|
id: treeNode.id,
|
|
276
313
|
nodes: [],
|
|
277
|
-
size: treeNodeSize
|
|
314
|
+
size: treeNodeSize,
|
|
278
315
|
};
|
|
279
316
|
}
|
|
280
317
|
} else {
|
|
@@ -287,19 +324,25 @@ export class ComboCombinedLayout extends Base {
|
|
|
287
324
|
const innerGraphNodeIds = innerGraphNodes.map((node) => node.id);
|
|
288
325
|
const innerGraphData = {
|
|
289
326
|
nodes: innerGraphNodes,
|
|
290
|
-
edges: edges.filter(
|
|
327
|
+
edges: edges.filter(
|
|
328
|
+
(edge) =>
|
|
329
|
+
innerGraphNodeIds.includes(edge.source) &&
|
|
330
|
+
innerGraphNodeIds.includes(edge.target)
|
|
331
|
+
),
|
|
291
332
|
};
|
|
292
333
|
let minNodeSize = Infinity;
|
|
293
334
|
innerGraphNodes.forEach((node) => {
|
|
294
335
|
// @ts-ignore
|
|
295
|
-
if (!node.size)
|
|
336
|
+
if (!node.size)
|
|
337
|
+
node.size = innerGraphs[node.id]?.size ||
|
|
338
|
+
(nodeSize as Function)?.(node) || [30, 30];
|
|
296
339
|
if (isNumber(node.size)) node.size = [node.size, node.size];
|
|
297
340
|
if (minNodeSize > node.size[0]) minNodeSize = node.size[0];
|
|
298
341
|
if (minNodeSize > node.size[1]) minNodeSize = node.size[1];
|
|
299
342
|
});
|
|
300
343
|
|
|
301
344
|
// 根据节点数量、spacing,调整布局参数
|
|
302
|
-
|
|
345
|
+
|
|
303
346
|
innerGraphLayout.layout(innerGraphData);
|
|
304
347
|
const { minX, minY, maxX, maxY } = getLayoutBBox(innerGraphNodes);
|
|
305
348
|
// move the innerGraph to [0, 0],for later controled by parent layout
|
|
@@ -308,11 +351,14 @@ export class ComboCombinedLayout extends Base {
|
|
|
308
351
|
node.x -= center.x;
|
|
309
352
|
node.y -= center.y;
|
|
310
353
|
});
|
|
311
|
-
const
|
|
354
|
+
const innerGraphWidth =
|
|
355
|
+
Math.max(maxX - minX, minNodeSize) + padding * 2;
|
|
356
|
+
const innerGraphHeight =
|
|
357
|
+
Math.max(maxY - minY, minNodeSize) + padding * 2;
|
|
312
358
|
innerGraphs[treeNode.id] = {
|
|
313
359
|
id: treeNode.id,
|
|
314
360
|
nodes: innerGraphNodes,
|
|
315
|
-
size: [
|
|
361
|
+
size: [innerGraphWidth, innerGraphHeight],
|
|
316
362
|
};
|
|
317
363
|
}
|
|
318
364
|
return true;
|
|
@@ -347,8 +393,10 @@ export class ComboCombinedLayout extends Base {
|
|
|
347
393
|
if (isArray(d.size)) {
|
|
348
394
|
const res = d.size[0] > d.size[1] ? d.size[0] : d.size[1];
|
|
349
395
|
return (res + spacing) / 2;
|
|
350
|
-
}
|
|
351
|
-
|
|
396
|
+
}
|
|
397
|
+
if (isObject(d.size)) {
|
|
398
|
+
const res =
|
|
399
|
+
d.size.width > d.size.height ? d.size.width : d.size.height;
|
|
352
400
|
return (res + spacing) / 2;
|
|
353
401
|
}
|
|
354
402
|
return (d.size + spacing) / 2;
|
|
@@ -392,6 +440,6 @@ export class ComboCombinedLayout extends Base {
|
|
|
392
440
|
this.comboPadding = comboPaddingFunc;
|
|
393
441
|
}
|
|
394
442
|
public getType() {
|
|
395
|
-
return
|
|
443
|
+
return 'comboCombined';
|
|
396
444
|
}
|
|
397
445
|
}
|
|
@@ -184,8 +184,10 @@ export class Force2Layout extends Base {
|
|
|
184
184
|
/** 与 minMovement 进行对比的判断停止迭代节点移动距离 */
|
|
185
185
|
private judgingDistance: number;
|
|
186
186
|
|
|
187
|
+
/** 缓存一个节点的相关边数据 */
|
|
187
188
|
private relatedEdges: { [nodeId: string]: Edge[] };
|
|
188
189
|
|
|
190
|
+
/** 缓存当前迭代中最小和最大的 y 值,用于计算上下引力 */
|
|
189
191
|
private currentMinY: number;
|
|
190
192
|
private currentMaxY: number;
|
|
191
193
|
|
|
@@ -402,8 +404,7 @@ export class Force2Layout extends Base {
|
|
|
402
404
|
if (d.size) {
|
|
403
405
|
if (isArray(d.size)) {
|
|
404
406
|
return Math.max(d.size[0], d.size[1]) + nodeSpacingFunc(d);
|
|
405
|
-
}
|
|
406
|
-
if (isObject(d.size)) {
|
|
407
|
+
} else if (isObject(d.size)) {
|
|
407
408
|
return Math.max(d.size.width, d.size.height) + nodeSpacingFunc(d);
|
|
408
409
|
}
|
|
409
410
|
return (d.size as number) + nodeSpacingFunc(d);
|
|
@@ -495,7 +496,10 @@ export class Force2Layout extends Base {
|
|
|
495
496
|
minMovement,
|
|
496
497
|
animate,
|
|
497
498
|
nodeMap,
|
|
499
|
+
height,
|
|
498
500
|
} = self;
|
|
501
|
+
self.currentMinY = 0;
|
|
502
|
+
self.currentMaxY = height;
|
|
499
503
|
|
|
500
504
|
if (!nodes) return;
|
|
501
505
|
|
|
@@ -741,7 +745,7 @@ export class Force2Layout extends Base {
|
|
|
741
745
|
nodes,
|
|
742
746
|
relatedEdges,
|
|
743
747
|
currentMinY = 0,
|
|
744
|
-
currentMaxY = height,
|
|
748
|
+
currentMaxY = this.height,
|
|
745
749
|
} = this;
|
|
746
750
|
if (!defSideCoe || typeof defSideCoe !== 'function' || !nodes?.length)
|
|
747
751
|
return;
|