Skip to main content

A library to compute the straight skeleton of a shape.

Project description

d3c-polyskel

A packaged and maintained version of polyskel for use in D3Companion projects.

Credits

d3c-polyskel is a redistributed and repackaged version of the polyskel library by Ármin Scipiades (@Bottfy), which is a Python implementation of the straight skeleton algorithm as described by Felkel and Obdržálek in their 1998 conference paper "Straight skeleton implementation."

Key differences from the original:

  • Packaged for PyPI distribution with modern Python packaging (pyproject.toml)
  • Removed test files and development artifacts
  • Added proper dependency management
  • Maintained for compatibility with D3Companion toolchain

Installation

pip install d3c-polyskel

Quick start

Basic Example

from d3c_polyskel import skeletonize

rectangle = [(40, 40), (40, 310), (520, 310), (520, 40)]
skeleton = skeletonize(polygon=rectangle)

Polygon with holes

from d3c_polyskel import skeletonize

rectangle = [(40, 40), (40, 310), (520, 310), (520, 40)]
holes = [[(100, 100), (200, 100), (200, 150), (100, 150)]]
skeleton = skeletonize(polygon=rectangle, holes=holes)

Support

For issues related to this package, please open an issue on this repository. For questions about the original polyskel implementation, please refer to the original repository.

License

This package contains code from the original polyskel library by Ármin Scipiades, licensed under LGPL v3. Since we are redistributing the original LGPL source code, this entire package is licensed under LGPL v3 (see LICENSE file). Packaging and maintenance by D3Companion GmbH.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

d3c_polyskel-0.1.0.tar.gz (9.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

d3c_polyskel-0.1.0-py3-none-any.whl (9.9 kB view details)

Uploaded Python 3

File details

Details for the file d3c_polyskel-0.1.0.tar.gz.

File metadata

  • Download URL: d3c_polyskel-0.1.0.tar.gz
  • Upload date:
  • Size: 9.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for d3c_polyskel-0.1.0.tar.gz
Algorithm Hash digest
SHA256 76bd83ecda026731a2a7d4d8bdfbe97c36f4735f2e0bf8f73c6df95ff6ff9129
MD5 7f556582fe3ada916170daaee0ecd350
BLAKE2b-256 db9af71192fe48dd45d1a7567fe32f95dde8e8916be32b1b098e0d755247356c

See more details on using hashes here.

File details

Details for the file d3c_polyskel-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: d3c_polyskel-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 9.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for d3c_polyskel-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f1a2038415d604b2521fa2e8ac78a8b8720511728da5768041ded663021eeaab
MD5 fb1f26ffe76b34339f755ec376a65a52
BLAKE2b-256 1b15e18e079e60a3ebf1f77094431f787bfc1d1d34cdc3b1978ce37c4105a492

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page