Skip to Content
You are viewing the v12 docs of React Flow. You can find the latest version here.
ReferenceUtils

getSimpleBezierPath()

Source on Github 

The getSimpleBezierPath util returns everything you need to render a simple bezier edge between two nodes.

import { Position, getSimpleBezierPath } from '@xyflow/react'; const source = { x: 0, y: 20 }; const target = { x: 150, y: 100 }; const [path, labelX, labelY, offsetX, offsetY] = getSimpleBezierPath({ sourceX: source.x, sourceY: source.y, sourcePosition: Position.Right, targetX: target.x, targetY: target.y, targetPosition: Position.Left, }); console.log(path); //=> "M0,20 C75,20 75,100 150,100" console.log(labelX, labelY); //=> 75, 60 console.log(offsetX, offsetY); //=> 75, 40

Signature

Parameters:
NameTypeDefault
[0].sourceXnumber
[0].sourceYnumber
[0].sourcePositionPositionPosition.Bottom
[0].targetXnumber
[0].targetYnumber
[0].targetPositionPositionPosition.Top
Returns:
[path: string, labelX: number, labelY: number, offsetX: number, offsetY: number]

Notes

  • This function returns a tuple (aka a fixed-size array) to make it easier to work with multiple edge paths at once.
Last updated on