箭头
无论是内置边还是自定义边,都可以为其配置起始端箭头与结束端箭头。F6 中的箭头分为默认箭头、内置箭头、自定义箭头。
默认箭头
使用方法
在边的样式属性 style
中将 endArrow
或 startArrow
配置为 true
即可:
style: {
endArrow: true,
startArrow: true
}
内置箭头
各箭头概览
名称 | 参数 | 使用方法 | 效果 |
---|---|---|---|
triangle | 依次为箭头宽度(默认 10)、长度(默认 15)、偏移量(默认为 0,与 d 对应) | endArrow: { path: F6.Arrow.triangle(10, 20, 25), d: 25 } | |
vee | 依次为箭头宽度(默认 15)、长度(默认 20)、偏移量(默认为 0,与 d 对应) | endArrow: { path: F6.Arrow.vee(10, 20, 25), d: 25 } | |
circle | 依次为箭头半径(默认 5)、偏移量(默认为 0,与 d 对应) | endArrow: { path: F6.Arrow.circle(10, 25), d: 25 } | |
diamond | 依次为箭头宽度(默认 15)、长度(默认 15)、偏移量(默认为 0,与 d 对应) | endArrow: { path: F6.Arrow.diamond(10, 20, 25), d: 25 } | |
rect | 依次为箭头宽度(默认 10)、长度(默认 10)、偏移量(默认为 0,与 d 对应) | endArrow: { path: F6.Arrow.rect(10, 20, 25), d: 25 } | |
triangleRect | 依次为箭头三角形宽度(默认 15)、三角形长度(默认 15)、矩形宽度(默认 15)、矩形长度(默认 3)、三角形与矩形间距(默认为 5)、偏移量(默认为 0,与 d 对应) | endArrow: { path: F6.Arrow.triangleRect(15, 15, 15, 3, 5, 25), d: 25 } |
使用方法
调用 F6.Arrow.arrowName
配置边的样式属性 style
中 endArrow
或 startArrow
的 path
:
style: {
endArrow: {
path: F6.Arrow.triangle(10, 20, 25), // 使用内置箭头路径函数,参数为箭头的 宽度、长度、偏移量(默认为 0,与 d 对应)
d: 25
},
startArrow: {
path: F6.Arrow.vee(15, 20, 15), // 使用内置箭头路径函数,参数为箭头的 宽度、长度、偏移量(默认为 0,与 d 对应)
d: 15
},
}
自定义箭头
参见高级指引 自定义箭头。
配置箭头样式
只有内置箭头和自定义箭头可以配置样式。
配置项
名称 | 是否必须 | 类型 | 备注 |
---|---|---|---|
fill | false | String | 填充颜色,默认无填充 |
stroke | false | String | 描边颜色,默认与边颜色相同 |
lineWidth | false | Number | 描边宽度,默认与边宽度相同 |
opacity | false | Number | 透明度 |
shadowColor | false | String | 阴影颜色 |
shadowBlur | false | Number | 阴影模糊程度 |
shadowOffsetX | false | Number | 阴影 x 方向偏移量 |
shadowOffsetY | false | Number | 阴影 y 方向偏移量 |
lineDash | false | Array | 描边的虚线样式,可以指定一个数组。一组描述交替绘制线段和间距(坐标空间单位)长度的数字。 如果数组元素的数量是奇数, 数组的元素会被复制并重复。例如, [5, 15, 25] 会变成 [5, 15, 25, 5, 15, 25]。 |
使用方法
// 内置箭头
style: {
endArrow: {
path: F6.Arrow.triangle(10, 20, 25), // 使用内置箭头路径函数,参数为箭头的 宽度、长度、偏移量(默认为 0,与 d 对应)
d: 25,
fill: '#f00',
stroke: '#0f0',
opacity: 0.5,
lineWidth: 3,
// ...
},
}
// 自定义箭头
style: {
endArrow: {
path: 'M 0,0 L 20,10 L 20,-10 Z',
d: 5,
fill: '#f00',
stroke: '#0f0',
opacity: 0.5,
lineWidth: 3,
// ...
},
}