Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

rle-components

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

rle-components

Connected component labeling / extraction for narrowband level sets

  • 0.0.3
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

rle-components

Connected component labelling for narrowband level sets. It is part of the rle-* collection of libraries for processing narrow band level sets.

Usage/Installation

First, install the package using npm:

npm install rle-components

Then you can use the library to split a level set into its connected components. For example:

//First create a volume
var volume = require("rle-sample").solid.dense([-32, -32, -32], [32, 32, 32], function(x) {
  var s = Math.sin(x[0]) + Math.sin(x[1]) + Math.sin(x[2]);
  var b = Math.max(Math.abs(x[0]), Math.abs(x[1]), Math.abs(x[2]));
  return Math.max(s + 2.2, b - 9.9);
});

//Then split into separate components
var components = require("rle-components").split(volume);

Here is the result:

You can try out a demo in your browser.

This takes a narrowband level set as input and assigns labels to the components.

  • volume is the level set we are labelling
  • link_func(a,b) determines if two phases should be considered linked in the same component. By default, always returns true.
  • solid_func(a) determines if a phase should be included in the components. By default, returns false for phase 0.

The result of calling the function is a labelStruct object which has the following properties:

  • count The number of connected components
  • labels An array of integers of length = volume.length() which gives the name of the connected component, starting at 0. Not solid components are labeled -1.

require("rle-components").split(volume[, labelStruct])

This splits a volume into a collection of volumes with different connected components.

  • volume is the volume to split
  • labelStruct (Optional) is the result of calling label() (see above) on the volume. If not specified, label is called with the default arguments.

Returns an array of of volumes representing the different connected components of volume

Credits

(c) 2013 Mikola Lysenko. BSD

Keywords

FAQs

Package last updated on 19 Mar 2015

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

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc