Socket
Book a DemoInstallSign in
Socket

dcel-js

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

dcel-js

dcel.js is a JavaScript implementation of Doubly connected edge list.

0.1.0
latest
Source
npmnpm
Version published
Maintainers
1
Created
Source

dcel.js

NPM Package

dcel.js is a JavaScript implementation of Doubly connected edge list. Inspired by dcel(python), but with more features.

Example | API

Features

  • Create a DCEL object with points and edges.
  • Get internal and external faces of the DCEL.
  • Get area of faces.
  • Get vertices of faces (clockwise or counterclockwise).
  • Get holes of faces (if there are any).
  • Add, remove, split edges to the DCEL.

Import

Use dcel.js (UMD) in your page:

<script src="dcel.js"></script>

or import as es6 module:

import DCEL from 'dcel.module.js';

You can find these files in build folder.

Npm

dcel-js is published on npm. You can install it with:

npm install dcel-js --save

This will allow you to import dcel.js using:

import DCEL from 'dcel-js';

or require as commonjs module:

require('dcel-js');

CDN

Usage


// points [[x1, y1], [x2, y2], ...]
// edges [[start1, end1], [start2, end2]...] starts and ends are indices of points
const dcel = new DCEL(points, edges);

// get internal faces
const faces = dcel.internalFaces();

// get vertices
faces[0].vertexlist

// get holes
faces[0].holes

// get area
faces[0].area

// get area except holes
faces[0].areaExceptHoles

// get external faces
dcel.externalFaces();

// modify edges
dcel.addEdge(x1, y1, x2, y2);
dcel.removeEdge(x1, y1, x2, y2);
dcel.splitEdge(x1, y1, x2, y2, splitX, splitY);

Keywords

dcel

FAQs

Package last updated on 14 Apr 2024

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

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.