JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 120
  • Score
    100M100P100Q77469F
  • License MIT

Medial / Scale Axis Transform (MAT/SAT) Library.

Package Exports

  • flo-mat

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (flo-mat) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Medial Axis Transform (MAT) - SVG focused

A pure javascript Medial/Scale Axis Transform (MAT/SAT) library.

Demo

Description

The MAT is an analytical form of skeletonization of a shape. It is perfectly suited to SVG. Described by many scholars as the most important image transform, it has endless use cases, e.g.:

  • Morphing of one shape into another
  • Shape thinning or fattening
  • Shape classification
  • Shape simplification
  • Image compression

The SAT is similar to the MAT (and indeed uses it as a starting point) but is far more practical as it removes insignifacant MAT branches based on the local image scale. The culling severity of branches is controlled by a parameter called s.

In the image below, the gray silhouette is the original SVG shape and the blue curves represents the SAT. The SAT is internally represented as a tree data structure with branches being cubic beziers (that can degenerate into quadratic beziers or lines).

Alt text