Skip to content
 
 

Latest commit

 

History

20 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MARTINI

Build Status Simply Awesome

MARTINI stands for Mapbox's Awesome Right-Triangulated Irregular Networks, Improved.

It's an experimental JavaScript library for real-time terrain mesh generation from height data. Given a (2k+1) × (2k+1) terrain grid, it generates a hierarchy of triangular meshes of varying level of detail in milliseconds. A work in progress.

See the algorithm in action and read more about how it works in this interactive Observable notebook.

Based on the paper "Right-Triangulated Irregular Networks" by Will Evans et. al. (1997).

MARTINI terrain demo

Example

// set up mesh generator for a certain 2^k+1 grid size
const martini = new Martini(257);

// generate RTIN hierarchy from terrain data (an array of size^2 length)
const tile = martini.createTile(terrain);

// get a mesh (vertices and triangles indices) for a 10m error
const mesh = tile.getMesh(10);

Install

npm install @mapbox/martini

About

A JavaScript library for real-time RTIN terrain mesh generation

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages