🚀 Socket Launch Week Day 5:Introducing Repository Access Permissions and Custom Roles.Learn more
Sign In

delatin

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

delatin

JavaScript terrain mesh generation tool

npmnpm
Version
0.1.0
Version published
Weekly downloads
588
64.25%
Maintainers
1
Weekly downloads
 
Created
Source

delatin

A fast JavaScript 3D terrain mesh generation tool. Approximates a height field with a Delaunay triangulation, minimizing the amount of points and triangles for a given maximum error.

Delatin is a port of Michael Fogleman's hmm (C++), which is in turn based on the paper Fast Polygonal Approximation of Terrains and Height Fields (1995) by Michael Garland and Paul Heckbert.

Live Demo

Example

const tin = new Delatin(heights, width, height);

tin.run(0.3); // run mesh refinement until max error is less than 0.3
const {coords, triangles} = tin; // get vertices and triangles of the mesh

API

new Delatin(heights, width, height)

Creates a new Delatin instance given a height field in the form of a flat array of numbers (with width * height length).

tin.run(maxError = 1)

Performs mesh refinement until maximum error reaches below the given maxError. You can do this multiple times with successively smaller maxError.

tin.getMaxError()

Returns the current maximum error of the mesh, defined by the maximum vertical distance between a point in the original height field and its triangular approximation.

tin.getRMSD()

Returns the current root-mean-square deviation of the mesh.

tin.heightAt(x, y)

Returns the height value at position x, y.

tin.coords

After running mesh refinement, this will be an array of x, y vertex coordinates of the final mesh (note: without z, but you can use tin.heightAt(x, y) to get the height for each vertex).

tin.triangles

After running mesh refinement, this will be an an array of triangle indices of the final mesh. Each triple of numbers defines a triangle and references vertices in the tin.coords array.

Keywords

terrain

FAQs

Package last updated on 02 Oct 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts