#image #nodes

pathfinder

A small library to create nodes, groups of nodes and connection in between them utilizing the image crate

14 releases

0.4.2 Aug 25, 2018
0.4.1 Aug 16, 2018
0.3.9 Aug 10, 2018
0.3.7 Jun 17, 2018
0.2.2 Apr 2, 2018

#9 in Visualization

Download history 35/week @ 2018-06-03 7/week @ 2018-06-10 69/week @ 2018-06-17 17/week @ 2018-06-24 74/week @ 2018-07-01 2/week @ 2018-07-08 10/week @ 2018-07-15 30/week @ 2018-07-22 18/week @ 2018-07-29 51/week @ 2018-08-05 86/week @ 2018-08-12 31/week @ 2018-08-19 28/week @ 2018-08-26

152 downloads per month

GPL-3.0 license

50KB
1K SLoC

Introduction

Pathfinder can create nodes, groups of nodes and connection in between them, and plot them resulting in an image. It handles text interpretation and data visualisation based on input files.

Build Status

Pathfinder Logotype

example: hello_world.rs

Pathfinder Logotype_gif

example: hello_world_gif.rs

Documentation

Groups example

example: random.rs

Examples

Inside the examples directory you can find example implementations of common functions. Along with some output examples.

A Node is the primary focus. As it's properties are reflected for Groups of nodes as well. They are instantiated simply and are used drawing on a canvas.

use pathfinder::{Coordinate, Node};

let a: Node = Node::new("A", Coordinate::new(0,0));
let mut b: Node = Node::new("B", Coordinate::new(100,100));

b.link(&a);

This library contains a wrapper for image and gif encoding. Which can be used to easily draw up node, groups and links.

let mut map = Map::new();
map = map
    .map(&groups)
    .map(&nodes);

map.image.unwrap().save(&path);

Planned activities

  • Better abstraction for groups of nodes.
  • More predictable node layout.
  • Integrate with piston graphical layout.
  • Add more algorithms for pathfinding on a linked network.

Dependencies

~2MB
~34K SLoC