mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-01 05:45:45 +00:00
0eea040532
Geometer is a geometry library for Python 3 that uses projective geometry and numpy for fast geometric computation. In projective geometry every point in 2D is represented by a three-dimensional vector and every point in 3D is represented by a four-dimensional vector. This has the following advantages: There are points at infinity that can be treated just like normal points. - Projective transformations are described by matrices but they can also represent affine transformations i.e. also translations. - Every two lines have a unique point of intersection if they lie in the same plane. Parallel lines have a point of intersection at infinity. - Points of intersection, planes or lines through given points can be calculated using simple cross products or tensor diagrams. - Special complex points at infinity and cross ratios can be used to calculate angles and to construct perpendicular geometric structures. - Most of the computation in the library done via tensor diagrams (using numpy.einsum). WWW: https://github.com/jan-mue/geometer
19 lines
1.0 KiB
Plaintext
19 lines
1.0 KiB
Plaintext
Geometer is a geometry library for Python 3 that uses projective geometry and
|
|
numpy for fast geometric computation. In projective geometry every point in 2D
|
|
is represented by a three-dimensional vector and every point in 3D is
|
|
represented by a four-dimensional vector. This has the following advantages:
|
|
|
|
There are points at infinity that can be treated just like normal points.
|
|
- Projective transformations are described by matrices but they can also
|
|
represent affine transformations i.e. also translations.
|
|
- Every two lines have a unique point of intersection if they lie in the same
|
|
plane. Parallel lines have a point of intersection at infinity.
|
|
- Points of intersection, planes or lines through given points can be calculated
|
|
using simple cross products or tensor diagrams.
|
|
- Special complex points at infinity and cross ratios can be used to calculate
|
|
angles and to construct perpendicular geometric structures.
|
|
- Most of the computation in the library done via tensor diagrams (using
|
|
numpy.einsum).
|
|
|
|
WWW: https://github.com/jan-mue/geometer
|