Educational Python API wrapping a C++ convex hull module (2D only, outputs PDF visualization)
Project description
dconvexhull
An educational Python package that provides a simple API for computing the convex hull of a 2D point set.
This package wraps a C++ module for efficient computation and offers Python-friendly interfaces for students, researchers, and developers.
✨ Features
- Compute convex hulls for 2D point sets.
- Input formats:
- Python 2D lists (
[[x1, y1], [x2, y2], ...]) - CSV files containing 2D coordinates
- Python 2D lists (
- Output:
- A PDF file that visualizes the convex hull and highlights the vertices.
- Educational purpose: designed to help Python users understand convex hull algorithms and visualization workflows.
- First edition: only supports 2D data.
📦 Installation
You can install the package directly from PyPI (after publishing):
pip install dconvexhull
Or install locally for development:
git clone https://github.com/yourusername/dconvexhull.git
cd dconvexhull
pip install .
🚀 USAGE
After installation, you can import and use the package as follows: Example 1: Using a Python 2D list
from dconvexhull import convxHull
# Define a set of points
ptc = [[0, 0], [1, 1], [2, 0], [2, 2], [0, 2]]
# Draw convex hull from array input
convxHull.draw_convxHull_from_arr(ptc)
Example 2: Using a CSV fil
from dconvexhull import operations
operations.compute_convex_hull("points.csv")
This will generate a PDF file () that shows the convex hull polygon and its vertices.
📖 Educational Notes
• Convex Hull: The smallest convex polygon that contains all points in a set. • This package demonstrates how Python can interface with C++ modules for computational geometry. • Visualization is handled with matplotlib, making results easy to interpret for students and researchers.
⚙️ Dependencies
- matplotlib (for visualization and PDF export)
🧑🏫 Target Audience
• Python learners exploring computational geometry • Students studying convex hull algorithms • Developers interested in Python–C++ integration
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file dconvexhull-0.1.3.tar.gz.
File metadata
- Download URL: dconvexhull-0.1.3.tar.gz
- Upload date:
- Size: 100.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3254b9f8290733218c2077259023aec70d9890609cf19ba1aef1cb8656e36cf7
|
|
| MD5 |
31971e1e3545116001ead364d13bea58
|
|
| BLAKE2b-256 |
919f2e65af12a7bc7a7efd05880227f875b70732c306570b4bf15561a241bda4
|
File details
Details for the file dconvexhull-0.1.3-py3-none-any.whl.
File metadata
- Download URL: dconvexhull-0.1.3-py3-none-any.whl
- Upload date:
- Size: 98.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
41202ee0be8beb99a89e1da5a505dce4f25384f171fc2aef8ef9dcf9b141aac5
|
|
| MD5 |
2774af96b287790706838b1e3f6061ec
|
|
| BLAKE2b-256 |
8c550ec0c6194ccfb1760f9acb699c342bee447a2840553521da9ab0b6f6763a
|