shewchuk is a collection of computational geometry utilities
for robust processing of geometries with floating point coordinates.
Named after and based on the work of Jonathan Richard Shewchuk.
In what follows python is an alias for python3.8 or pypy3.8
or any later version (python3.9, pypy3.9 and so on).
Install the latest pip & setuptools packages versions
python -m pip install --upgrade pip setuptoolsDownload and install the latest stable version from PyPI repository
python -m pip install --upgrade shewchukDownload the latest version from GitHub repository
git clone https://github.com/lycantropos/shewchuk.git
cd shewchukInstall
python -m pip install -e .>>> from shewchuk import incircle_test
>>> incircle_test(3, 3, 0, 0, 2, 0, 0, 2) == -1
True
>>> incircle_test(2, 2, 0, 0, 2, 0, 0, 2) == 0
True
>>> incircle_test(1, 1, 0, 0, 2, 0, 0, 2) == 1
True
>>> from shewchuk import kind
>>> kind(1, 0, 0, 0, 2, 0) == -1
True
>>> kind(0, 0, 0, 1, 1, 0) == 0
True
>>> kind(0, 0, 1, 0, 2, 0) == 1
True
>>> from shewchuk import orientation
>>> orientation(0, 0, 0, 1, 1, 0) == -1
True
>>> orientation(0, 0, 1, 0, 2, 0) == 0
True
>>> orientation(0, 0, 1, 0, 0, 1) == 1
TrueInstall bump2version.
Choose which version number category to bump following semver specification.
Test bumping version
bump2version --dry-run --verbose $CATEGORYwhere $CATEGORY is the target version number category name, possible
values are patch/minor/major.
Bump version
bump2version --verbose $CATEGORYThis will set version to major.minor.patch-alpha.
Test bumping version
bump2version --dry-run --verbose releaseBump version
bump2version --verbose releaseThis will set version to major.minor.patch.
Install with dependencies
python -m pip install -e .[tests]Plain
pytestInside Docker container:
- with
CPythondocker-compose --file docker-compose.cpython.yml up
- with
PyPydocker-compose --file docker-compose.pypy.yml up
Bash script:
-
with
CPython./run-tests.sh
or
./run-tests.sh cpython
-
with
PyPy./run-tests.sh pypy
PowerShell script:
- with
CPythonor.\run-tests.ps1.\run-tests.ps1 cpython - with
PyPy.\run-tests.ps1 pypy