Vue2.0+AntvX6—节点 Node

本文介绍了如何使用AntV X6库创建和定制图形节点,包括设置节点的位置、大小、旋转角度和样式。通过示例展示了两种创建节点的方法:构造函数和`graph.addNode()`,并详细解释了节点属性及其用法。此外,还讲解了如何定义节点的样式Attrs,以实现背景颜色、边框颜色、文本等自定义效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

创建节点

选项

节点都有共同的基类 Cell,除了从 Cell 继承的选项外,还支持以下选项。

属性名类型默认值描述
xNumber0节点位置 x 坐标,单位为 ‘px’
yNumber0节点位置 y 坐标,单位为 ‘px’
widthNumber1节点宽度,单位为 ‘px’
heightNumber1节点高度,单位为 ‘px’
angleNumber0节点旋转角度

方式一:构造函数

import { Shape } from '@antv/x6'
// 创建节点
const rect = new Shape.Rect({
  x: 100,
  y: 200,
  width: 80,
  height: 40,
  angle: 30,// 节点的旋转角度
  attrs: {
    body: {
      fill: 'blue',
    },
    label: {
      text: 'Hello',
      fill: 'white',
    },
  },
})
// 添加到画布
graph.addNode(rect)

也可以先创建节点,然后调用节点提供的方法来设置节点的大小、位置、旋转角度、样式等。

const rect = new Shape.Rect()

rect
  // 设置节点位置
  .position(100, 200)
  // 设置节点大小
  .resize(80, 40)
  // 旋转节点
  .rotate(30)
  // 设置节点样式
  .attr({
    body: {
      fill: 'blue',
    },
    label: {
      text: 'Hello',
      fill: 'white',
    },
  })

// 添加到画布
graph.addNode(rect)

方式二:graph.addNode()

还可以使用 graph.addNode 方法来创建节点并添加节点到画布,推荐大家使用这个便利的方法。

const rect = graph.addNode({
  shape: 'rect', // 指定使用何种图形,默认值为 'rect'
  x: 100,
  y: 200,
  width: 80,
  height: 40,
  angle: 30,
  attrs: {
    body: {
      fill: 'blue',
    },
    label: {
      text: 'Hello',
      fill: 'white',
    },
  },
})

定制样式Attrs

例如 Shape.Rect 节点定义了 ‘body’(代表 元素)和 ‘label’(代表 元素)两个选择器。我们在创建矩形节点时可以像下面这样定义节点样式。

const rect = new Shape.Rect({
  x: 100,
  y: 40,
  width: 100,
  height: 40,
  attrs: { 
    body: {
      fill: '#2ECC71', // 背景颜色
      stroke: '#000',  // 边框颜色
    },
    label: {
      text: 'rect',    // 文本
      fill: '#333',    // 文字颜色
      fontSize: 13,    // 文字大小
    },
  },
})

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值