8000 [fix]知识图谱更新布局和字段 review by qiw · SuperMap/iClient-JavaScript@722480b · GitHub
[go: up one dir, main page]

Skip to content

Commit 722480b

Browse files
[fix]知识图谱更新布局和字段 review by qiw
1 parent 795bd4d commit 722480b

File tree

6 files changed

+21
-16
lines changed

6 files changed

+21
-16
lines changed

src/common/iServer/KnowledgeGraphNodeParameter.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,11 @@ import { Util } from '../commontypes/Util';
2020
// "id": 5348024557502471,
2121
// "properties": {
2222
// "server": "test1",
23-
// "labelfieldname": "FEATUREGUID",
24-
// "entityname": "院落",
25-
// "bindfindid": "院落@ST_YARDA@1",
23+
// "_labelfieldname": "FEATUREGUID",
24+
// "_entityname": "院落",
25+
// "_bindfindid": "院落@ST_YARDA@1",
2626
// "FEATUREGUID": "{409E615B-A545-4E07-872D-B12EDA0B4A1A}",
27-
// "findid": 1,
27+
// "_findid": 1,
2828
// "ENTITYNAME": "公共管理与公共服务"
2929
// },
3030
// "labels": ["院落"]

src/common/overlay/KnowledgeGraph.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ import { G6Render } from './knowledge-graph/G6Render';
2626
* @property {number} [minZoom] - 最小缩放比例。若 fitView、zoom、zoomTo 等操作导致图的缩放比例小于该值,则将使用该值进行缩放,并返回 false。
2727
* @property {number} [maxZoom] - 最大缩放比例。若 fitView、zoom、zoomTo 等操作导致图的缩放比例大于该值,则将使用该值进行缩放,并返回 false。
2828
* @property {KnowledgeGraph.Layout} [layout] - 布局。
29+
* @property {boolean} [animate=true] - 是否开启动画。
2930
* @property {boolean} [autoResize=true] - 当视口变换时,是否自动重绘。
3031
* @property {KnowledgeGraph.NodeStyle} [defaultNode] - 默认状态下节点的配置,比如 type, size, color。会被写入的 data 覆盖。
3132
* @property {KnowledgeGraph.EdgeStyle} [defaultEdge] - 默认状态下边的配置,比如 type, size, color。会被写入的 data 覆盖。
@@ -43,7 +44,7 @@ import { G6Render } from './knowledge-graph/G6Render';
4344

4445
/**
4546
* @typedef {Object} KnowledgeGraph.Layout - 布局。
46-
* @property {string} [type='force'] - 布局类型, 可选值:['force']。 默认'force'。
47+
* @property {string} [type='fruchterman'] - 布局类型, 可选值:['fruchterman']。 默认'fruchterman'。
4748
*/
4849

4950
/**

src/common/overlay/knowledge-graph/G6Render.js

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -113,12 +113,16 @@ export class G6Render {
113113
}
114114

115115
_getGraphConfig(config) {
116+
const animateConfig = {
117+
speed: 120,
118+
maxIteration: 83,
119+
tick: () => {
120+
this.refreshPositions()
121+
}
122+
};
116123
const defaultLayout = {
117-
type: 'force',
118-
linkDistance: 80,
119-
nodeSpacing: 20,
120-
preventOverlap: true,
121-
nodeStrength: 0
124+
type: 'fruchterman',
125+
gravity: 5
122126
};
123127
const defaultNode = {};
124128
const defaultEdge = {
@@ -163,7 +167,7 @@ export class G6Render {
163167
height: dom.scrollHeight, // Number,必须,图的高度
164168
plugins: defaultPlugins,
165169
modes: defaultMode,
166-
layout: defaultLayout,
170+
layout: { ...defaultLayout, ...animateConfig },
167171
defaultNode,
168172
defaultEdge,
169173
nodeStateStyles: {
@@ -183,7 +187,7 @@ export class G6Render {
183187
typeof config.container === 'string' ? document.querySelector(`#${config.container}`) : config.container;
184188
config.width = config.width || dom.scrollWidth;
185189
config.height = config.height || dom.scrollHeight;
186-
config.layout = { ...defaultLayout, ...(config.layout || {}) };
190+
config.layout = { ...defaultLayout, ...(config.layout || {}), ...(config.animate !== false ? animateConfig : {}) };
187191
config.defaultNode = { ...defaultNode, ...(config.defaultNode || {}) };
188192
config.defaultEdge = { ...defaultEdge, ...(config.defaultEdge || {}) };
189193
config.modes = {

src/common/overlay/knowledge-graph/format.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ function getNodeStyle(entity, style) {
135135

136136
function getNodeLabel(entity) {
137137
const { properties } = entity;
138-
const name = properties.labelfieldname;
138+
const name = properties._labelfieldname;
139139
return properties[name] || '';
140140
}
141141

test/common/overlay/KnowledgeGraphSpec.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -213,8 +213,8 @@ describe('KnowledgeGraph', () => {
213213
done();
214214
});
215215

216-
it('nodeLabelMaxWidth', (done) => {
217-
var graph = new KnowledgeGraph({ nodeLabelMaxWidth: 100 });
216+
it('nodeLabelMaxWidth animate false', (done) => {
217+
var graph = new KnowledgeGraph({ nodeLabelMaxWidth: 100, animate: false });
218218
expect(graph).not.toBeNull();
219219
expect(graph.data).not.toBeNull();
220220
done();

test/resources/knowledgeGraphService.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)
0