Skip to content
/ pivi Public
forked from LittleHelicase/pivi

A simple visualisation tool that is based on streaming

Notifications You must be signed in to change notification settings

nitroxis/pivi

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status

Pivi

Pivi (short for Pipeviewer) is a tool that simplifies visualization tasks. It has a simple stream based input format.

Installation

You need Cairo to create the images. We use node-canvas to create the images they have an installation guide on their project page.

Then you simply run:

npm install -g pivi

Or if you want to use pivi in your project you can use

npm install pivi

Example

The following program generates a zigzag line and outputs it as a PNG image.

echo "polyline (0 0) (100 100) (100 0) (0 100)" | pivi

Supported Commands

All points can be written as a tupel or you can simply omit all commas or brackets.

  • point 1 2
  • points (1 2) (3 3)
  • line (0, 0) (20 30)
  • lines ((0, 0) (20 40)) ((0,0) (40,20)) (draws one line for each pair of points)
  • polyline 0 0 ... 100 0
  • circle ((centerx,centery) radius)
  • circles ((100,100) 20) ((centerx,centery) radius)

Development

If you want to work on pivi you can follow these steps:

  1. clone it
  2. install necessary dependencies (currently cairo and Image Magicks convert for animations)
  3. install npm (e.g. via NVM)
  4. run npm install in the projects root directory
  5. run npm test to check if everything works

You should install gulp (npm install -g gulp) to run all the tasks during development. You can see all available tasks in gulpfile.js or via gulp --tasks.

Alternatives

You can try ImageMagick's convert. You can pass arguments to it that function similar to our commands. More here

Contributors

  • Rasmus Buchmann
  • Maximilian Klein

About

A simple visualisation tool that is based on streaming

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 82.5%
  • HTML 10.5%
  • Shell 7.0%