Git Product home page Git Product logo

mapbox-plugins's Introduction

mapbox-plugins Netlify Status license

Customized Mapbox plugins, including game control, canvasOverlayer, scene animation

https://alex2wong.github.io/mapbox-plugins/

API Docs

For more detailed wiki, pls read issue blogs:

Note: pls visit all demo with HTTPS..

Point animation

Custom popup/Route animation

Chartjs integration

Glow animation

Rbush demo

Canvas Line Style canvas line style which can be integrate to any map/chart lib.

Voxelize terrain data πŸ‘† Voxelize terrain data from a height image.

Extrude typhoon image

πŸ‘† Extrude typhoon radar image.

Animated Lines

πŸ‘† Animated Lines/Particle system.

Online demo

Demo Code
Sprite track DEMO view code
Custom dom overlay DEMO view code
R-tree search (5000 rectangles) DEMO view code
Global Wind Layer. render 1w point animation with Canvas view code
Integrate with Chart.js view code
Glow animation view code
Cool Route Animation view code
Canvas Line Style view code
Canvas Staring Demo
Tilting Ui Marker view code
Threejs Typhoon view code
Line_Pattern view code

install and use

npm i mapbox-plugins

For node.js:

var Mapbox = require('mapbox-plugins')
console.warn(Mapbox.Config);

More often, for es6 development:

import { Config, CanvasOverlayer } from 'mapbox-plugins';
var canvasLayer = new CanvasOverlayer({
    map: map, // bind canvasOverlay with mapbox map instance..
});

run locally

npm install

npm run dev

then visit from http://localhost:8080/examples/, HotModuleReload supported.

npm run build

to Build all plugins into bundle.js with namespace: Mapbox

npm run rbuild

to build all plugins into Mapbox.umd.js/Mapbox.esm.js

how to use

plugins provide canvasOverlay, domOverlay ,Sprite, gameControl extension etc. for example:

// create a CanvasOverlayer on Mapbox map instance..
var canvasLayer = new Mapbox.CanvasOverlayer({
    map: map,
    shadow: false,
    keepTrack: true,
    blurWidth: 4
});

// create a Drone inherites Sprite Class
var drone = new Mapbox.Drone({
    direction: 45,
    icon: "drone.jpg"
});

// add keyboard control to Sprite.
Mapbox.Controllers.gameControl(drone);
function update(){
    drone.updateStatus();
    // render drone on canvasLayer.
    canvasLayer.redraw([drone]);
    requestAnimationFrame(update);
}
update();

β˜†Star, Enhancement and PR are welcome :)

mapbox-plugins's People

Contributors

alex2wong avatar fossabot avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.