-
Notifications
You must be signed in to change notification settings - Fork 4
Flow Connectors
anidivr edited this page Nov 28, 2023
·
4 revisions
FlowConnectors
handles the creation, addition, and removal of connectors for nodes.
-
FlowConnectors(diagram: FlowDiagram)
- Description: Listens for nodes to be added to the diagram.
-
Parameters:
-
diagram
(FlowDiagram): The flow diagram to which these connectors belong.
-
-
Example:
const flowDiagram = new FlowDiagram(); const flowConnectors = new FlowConnectors(flowDiagram);
-
hasNode(id: string): NodeConnectors | undefined
- Description: Checks if the specified node has connectors and returns them if available.
-
Parameters:
-
id
(string): The ID of the node.
-
- Returns: NodeConnectors | undefined
-
Usage:
const nodeConnectors = flowConnectors.hasNode('node1');
-
addConnectors(node: FlowNode, connectors: Array)
- Description: Adds connectors to a specified node.
-
Parameters:
-
node
(FlowNode): The node to which connectors are to be added. -
connectors
(Array): An array of connector parameters.
-
-
Returns:
void
-
Usage:
flowConnectors.addConnectors(flowNode, [{id: 'connector1', radius: 0.05}]);
-
removeConnectors(node: FlowNode, connectors: Array)
- Description: Removes specified connectors from a node.
-
Parameters:
-
node
(FlowNode): The node from which connectors are to be removed. -
connectors
(Array): An array of connector parameters to remove.
-
-
Returns:
void
-
Usage:
flowConnectors.removeConnectors(flowNode, [{id: 'connector1'}]);
-
createGeometry(parameters: FlowConnectorParameters): BufferGeometry
- Description: Creates geometry for a connector. Can be overridden to customize the connector's shape.
-
Parameters:
-
parameters
(FlowConnectorParameters): Parameters for creating the connector geometry.
-
- Returns: BufferGeometry
-
Usage:
class CustomFlowConnectors extends FlowConnectors { override createGeometry(parameters: FlowConnectorParameters): BufferGeometry { return new CustomGeometry(parameters.radius) } } // or flowConnectors.createGeometry = (parameters: FlowConnectorParameters): BufferGeometry => { return new CircleGeometry(parameters.radius) }