Crates.io | rene |
lib.rs | rene |
version | 0.1.0 |
source | src |
created_at | 2022-04-09 07:00:59.752407 |
updated_at | 2023-10-08 03:18:39.563481 |
description | Computational geometry. |
homepage | |
repository | https://github.com/lycantropos/rene |
max_upload_size | |
id | 564664 |
size | 1,797,200 |
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 setuptools
Download and install the latest stable version from PyPI
repository
python -m pip install --upgrade rene
Download the latest version from GitHub
repository
git clone https://github.com/lycantropos/rene.git
cd rene
Install
python setup.py install
>>> from rene.exact import (Contour,
... Empty,
... Point,
... Polygon)
>>> square = Polygon(Contour([Point(0, 0), Point(4, 0), Point(4, 4),
... Point(0, 4)]),
... [])
>>> square == square
True
>>> square & square == square
True
>>> square | square == square
True
>>> square - square == Empty()
True
>>> square ^ square == Empty()
True
>>> len(square.border.vertices) == 4
True
>>> len(square.holes) == 0
True
>>> from rene.exact import ConstrainedDelaunayTriangulation
>>> (ConstrainedDelaunayTriangulation.from_polygon(square).triangles
... == [Contour([Point(0, 0), Point(4, 0), Point(0, 4)]),
... Contour([Point(0, 4), Point(4, 0), Point(4, 4)])])
True
>>> from rene import Location
>>> from rene.exact import Trapezoidation
>>> trapezoidation = Trapezoidation.from_polygon(square)
>>> all(vertex in trapezoidation for vertex in square.border.vertices)
True
>>> all(trapezoidation.locate(vertex) is Location.BOUNDARY
... for vertex in square.border.vertices)
True
Install bump2version.
Choose which version number category to bump following semver specification.
Test bumping version
bump2version --dry-run --verbose $CATEGORY
where $CATEGORY
is the target version number category name, possible
values are patch
/minor
/major
.
Bump version
bump2version --verbose $CATEGORY
This will set version to major.minor.patch-alpha
.
Test bumping version
bump2version --dry-run --verbose release
Bump version
bump2version --verbose release
This will set version to major.minor.patch
.
Install dependencies
python -m pip install -r requirements-tests.txt
Plain
pytest
Inside Docker
container:
CPython
docker-compose --file docker-compose.cpython.yml up
PyPy
docker-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:
CPython
.\run-tests.ps1
or
.\run-tests.ps1 cpython
PyPy
.\run-tests.ps1 pypy