1.0.10 • Published 6 years ago

canvas-route-map v1.0.10

Weekly downloads
33
License
-
Repository
github
Last release
6 years ago

Route map on canvas

About

It's a library for creating route from point A to point B by image. The library uses A Search Algorithm(javascript-astar) to make a route.

Features

  • Draw a route on map;
  • Animate route by use image;
  • There are available zoom and touch events;
  • Add image to point;

This library is written in Vanilla JS.

Installing

NPM

  npm install canvas-route-map

Options

  • Required attributes:
    • container : container - it's a DOM element to render canvas;
    • url: 'image.png/jpeg/gif/bmp/tiff' - path to image.
  • Canvas attributes:
    • width(default: 1080) - canvas width;
    • height(default: 608) - canvas height;
    • initialWidth(Default: 1080) - image width;
    • scale(default: true) - scalability of canvas;
    • zoom(default: 2) - canvas zoom, zoom in and zoom out.
  • Map attributes:
    • trackColor(default: r: 255, b: 255, g: 255) - rgb color value for map, free route in map;
    • diagonal(default: true) - route in direct line.
    • Points(startPoint, endPoint):
      • coordinates(required): {x,y} - coordinates where point is located on canvas.
      • Image - image of point;
        • url(required): 'image.png/jpeg/gif/bmp/tiff' - path to image of point;
        • width(default: 20) - image width;
        • height(default: 20) - image height;
        • position(default: 'up') - image position('center','up').
    • Route:
      • animateSpeed(default: 50) - speed of animation;
      • step(default: 20) - step between.
      • Drawing(default):
        • color(default: '#f00') - route color;
        • printWeight(default: 5) - weight of print step.
      • Image - image of point;
        • url(required): 'image.png/jpeg/gif/bmp/tiff' - path to image of point;
        • width(default: 20) - image width;
        • height(default: 20) - image height.

Callbacks

  • ready(callback) - when canvas is ready.

Usage

  • Simple example:
const map = new canvasRouteMap.CanvasRouteMap({
 container: container,
  url: 'map.png',
  map: {
    startPoint: {
      coordinates: {x: 41, y: 442},
    },
    endPoint: {
      coordinates: {x: 833, y: 196},
    },
   
  },
});
  • Example with full options:
const map = new canvasRouteMap.CanvasRouteMap({
 container: container,
  url: 'map.png',
  canvas: {
    width: 1080,
    height: 608,
    initialWidth: 1080,
    scale: true,
    zoom: 2
  },
  map: {
    trackColor: {r: 255, b: 255, g: 255},
    diagonal: true,
    startPoint: {
      coordinates: {x: 41, y: 442},
      image: {
        url: 'pointA.png',
        width: 50,
        height: 50,
        position: 'up'
      }
    },
    endPoint: {
      coordinates: {x: 833, y: 196},
      image: {
        url: 'pointB.png',
        width: 50,
        height: 50,
        position: 'up'
      }
    },
    route: {
      animateSpeed: 50,
      step: 20,
      drawing: {
        color: '#f00',
        printWeight: 5
      },
      image: {
        url: 'feet.png',
        width: 13,
        height: 8,
      }
    }
  },
});

Authors

Eugene Artsiukhevich

Acknowledgments

Maybe, it will be useful for somebody.

1.0.10

6 years ago

1.0.9

6 years ago

1.0.8

6 years ago

1.0.7

6 years ago

1.0.6

6 years ago

1.0.5

6 years ago

1.0.4

6 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago