style: 拓扑基础节点

This commit is contained in:
TsMask
2023-12-08 21:16:37 +08:00
parent 51a190771d
commit 4208ccc358

View File

@@ -46,9 +46,7 @@ const props = defineProps({
const g6Dom = ref<HTMLElement | undefined>(undefined);
const ExtGraph = extend(Graph, {
// layouts: {
// dagre: Extensions.DagreLayout,
// },
layouts: {},
edges: {
'polyline-edge': Extensions.PolylineEdge,
'cubic-edge': Extensions.CubicEdge,
@@ -441,13 +439,6 @@ function initChart() {
graph = new ExtGraph({
container: g6Dom.value,
height: 500,
plugins: [
{
// lod-controller will be automatically assigned to graph with `disableLod: false` to graph if it is not configured as following
type: 'lod-controller',
disableLod: true,
},
] as any,
modes: {
default: [
{
@@ -470,7 +461,17 @@ function initChart() {
'zoom-canvas',
] as any,
},
// 布局 力向吸引
layout: {
type: 'force',
animated: true,
linkDistance: 280,
maxSpeed: 100,
clustering: true,
nodeClusterBy: 'parentId',
clusterNodeStrength: 80,
},
// 主题
theme: {
type: 'spec',
base: 'light',
@@ -480,6 +481,14 @@ function initChart() {
},
},
} as any,
// 插件
plugins: [
{
// 避免文本过于密集导致的视觉混乱
type: 'lod-controller',
disableLod: true,
},
] as any,
// 全局节点 矩形
node: model => {
const { id, data } = model;
@@ -559,12 +568,12 @@ function initChart() {
},
};
},
// 全局框节点 矩形
combo: model => {
const { id, data } = model;
return {
id,
data: {
...data,
type: 'rect-combo',
keyShape: {
opacity: 0.8,
@@ -576,6 +585,19 @@ function initChart() {
offsetY: 8,
},
labelBackgroundShape: {},
buildIn: [
{
fields: ['opacity'],
duration: 500,
delay: 500 + Math.random() * 500,
},
],
buildOut: [
{
fields: ['opacity'],
duration: 200,
},
],
animates: {
update: [
{
@@ -584,6 +606,7 @@ function initChart() {
},
],
},
...data,
},
};
},