graphs-and-paths
TypeScript icon, indicating that this package has built-in type declarations

0.2.6 • Public • Published

Graphs and Paths

Tools for graphs representing 2-D spatial points and links between them.

BuildStatus

Demo

View the demo.

Installation

With Yarn:

yarn add graphs-and-paths

With NPM:

npm install --save graphs-and-paths

API

View full documentation.

Sample Usage

import Graph from "graphs-and-paths";
 
const nodes = [
    { id: "A", location: { x: 0, y: 0 } },
    { id: "B", location: { x: 3, y: 0 } },
    { id: "C", location: { x: 0, y: 4 } }
];
const edges = [
    { id: "AB", startNodeId: "A", endNodeId: "B" },
    { id: "BC", startNodeId: "B", endNodeId: "C" },
    { id: "CA", startNodeId: "C", endNodeId: "A" }
];
const graph = Graph.create(nodes, edges);
 
graph.getNode("A");
// { id: "A", location: { x: 0, y: 0 }, edgeIds: ["AB", "CA"] }
 
graph.getLocation("AB", 2);
// { x: 2, y: 0 }
 
graph.getShortestPath(
    { edgeId: "CA", distance: 3 },
    { edgeId: "BC", distance: 1 }
).locations;
// [
//     { x: 0, y: 1 },
//     { x: 0, y: 0 },
//     { x: 3, y: 0 },
//     { x: 2.4, y: 0.8 }
// ]

Many more methods are available. View full documentation for details.

Copyright © 2016 David Philipson

Package Sidebar

Install

npm i graphs-and-paths

Weekly Downloads

1

Version

0.2.6

License

MIT

Unpacked Size

145 kB

Total Files

15

Last publish

Collaborators

  • dphilipson