You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP
Socket
Book a DemoInstallSign in
Socket

earcut

Package Overview
Dependencies
Maintainers
1
Versions
39
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

earcut - npm Package Compare versions

Comparing version

to
2.0.5

2

package.json
{
"name": "earcut",
"version": "2.0.4",
"version": "2.0.5",
"description": "The fastest and smallest JavaScript polygon triangulation library for your WebGL apps",

@@ -5,0 +5,0 @@ "main": "src/earcut.js",

@@ -104,2 +104,6 @@ ## Earcut

##### 2.0.5 (Oct 12, 2015)
- Fixed a z-curve hashing bug that could lead to unexpected results in very rare cases involving shapes with lots of points.
##### 2.0.4 (Oct 8, 2015)

@@ -106,0 +110,0 @@

@@ -75,12 +75,4 @@ 'use strict';

if (!node.steiner && (equals(data, node.i, node.next.i) || orient(data, node.prev.i, node.i, node.next.i) === 0)) {
// remove node
node.prev.next = node.next;
node.next.prev = node.prev;
if (node.prevZ) node.prevZ.nextZ = node.nextZ;
if (node.nextZ) node.nextZ.prevZ = node.prevZ;
removeNode(node);
node = end = node.prev;
if (node === node.next) return null;

@@ -118,9 +110,4 @@ again = true;

// remove ear node
next.prev = prev;
prev.next = next;
removeNode(ear);
if (ear.prevZ) ear.prevZ.nextZ = ear.nextZ;
if (ear.nextZ) ear.nextZ.prevZ = ear.prevZ;
// skipping the next vertice leads to less sliver triangles

@@ -280,11 +267,5 @@ ear = next.next;

// remove two nodes involved
a.next = b;
b.prev = a;
removeNode(node);
removeNode(node.next);
var az = node.prevZ,
bz = node.nextZ && node.nextZ.nextZ;
if (az) az.nextZ = bz;
if (bz) bz.prevZ = az;
node = start = b;

@@ -516,4 +497,6 @@ }

function zOrder(x, y, minX, minY, size) {
// coords are transformed into (0..1000) integer range
x = 1000 * (x - minX) / size;
// coords are transformed into non-negative 15-bit integer range
x = 32767 * (x - minX) / size;
y = 32767 * (y - minY) / size;
x = (x | (x << 8)) & 0x00FF00FF;

@@ -524,3 +507,2 @@ x = (x | (x << 4)) & 0x0F0F0F0F;

y = 1000 * (y - minY) / size;
y = (y | (y << 8)) & 0x00FF00FF;

@@ -654,2 +636,10 @@ y = (y | (y << 4)) & 0x0F0F0F0F;

function removeNode(node) {
node.next.prev = node.prev;
node.prev.next = node.next;
if (node.prevZ) node.prevZ.nextZ = node.nextZ;
if (node.nextZ) node.nextZ.prevZ = node.prevZ;
}
function Node(i) {

@@ -656,0 +646,0 @@ // vertex coordinates

@@ -15,4 +15,4 @@ 'use strict';

areaTest('water4', 705);
areaTest('water-huge', 5162, 0.0015);
areaTest('water-huge2', 4457, 0.0019);
areaTest('water-huge', 5164, 0.0015);
areaTest('water-huge2', 4462, 0.0019);
areaTest('degenerate', 0);

@@ -19,0 +19,0 @@ areaTest('bad-hole', 34, 0.0420);