Skip to main content

Python bindings for geompp — a C++ 2D/3D geometry library

Project description

← back

geompp

Python bindings for geompp — a C++ 2D/3D geometry library.

Install

pip install geompp

Pre-built wheels are available for:

Platform Python versions
Linux x86_64 3.8 · 3.9 · 3.10 · 3.11 · 3.12
Windows x64 3.8 · 3.9 · 3.10 · 3.11 · 3.12

If your platform or Python version is not in the table above, pip will compile from source — you will need CMake ≥ 3.15 and a C++20-capable compiler.

Quick start

import geompp

# Points & vectors
p = geompp.Point2D(1.0, 2.0)
v = geompp.Vector2D(3.0, 0.0)
q = p + v                       # Point2D(4, 2)
diff = q - p                    # Vector2D(3, 0)

# Lines and intersection
l1 = geompp.Line2D.make(geompp.Point2D(0,0), geompp.Point2D(1,0))
l2 = geompp.Line2D.make(geompp.Point2D(0.5,-1), geompp.Point2D(0.5,1))
hit = l1.intersection(l2)       # Point2D(0.5, 0) or None

# 3D
p3 = geompp.Point3D(1, 2, 3)
plane = geompp.Plane.xy()
proj = plane.project_onto(p3)   # Point3D(1, 2, 0)

# Precision
geompp.set_decimal_precision(geompp.DP_SIX)

# File parser
parser = geompp.LVSParser.open("geometry.lsv")
while parser.has_next():
    item = parser.next()
    if item is not None:
        print(geompp.LVSParser.to_wkt(item))

Classes

2D 3D
Point2D Point3D
Vector2D Vector3D
Line2D Line3D
Ray2D Ray3D
LineSegment2D LineSegment3D
Polyline2D Polyline3D
Triangle2D Triangle3D
Polygon2D Polygon3D
BBox2D BBox3D
Plane

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

geompp-0.1.0-cp312-cp312-win_amd64.whl (839.4 kB view details)

Uploaded CPython 3.12Windows x86-64

geompp-0.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (890.9 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

geompp-0.1.0-cp311-cp311-win_amd64.whl (836.3 kB view details)

Uploaded CPython 3.11Windows x86-64

geompp-0.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (891.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

geompp-0.1.0-cp310-cp310-win_amd64.whl (835.6 kB view details)

Uploaded CPython 3.10Windows x86-64

geompp-0.1.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (889.7 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

geompp-0.1.0-cp39-cp39-win_amd64.whl (821.5 kB view details)

Uploaded CPython 3.9Windows x86-64

geompp-0.1.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (889.8 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

geompp-0.1.0-cp38-cp38-win_amd64.whl (835.6 kB view details)

Uploaded CPython 3.8Windows x86-64

geompp-0.1.0-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (889.4 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

File details

Details for the file geompp-0.1.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: geompp-0.1.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 839.4 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for geompp-0.1.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 d37335fd43a5691577eff5d98b0178ffd471faa8eb49f9d76bef4e3ce03c0020
MD5 973f3f355699842b397d77f2bb244422
BLAKE2b-256 2c7b1dbe78e406365d7ad4cde4b98833ba426714675524da70f6194d46401a10

See more details on using hashes here.

File details

Details for the file geompp-0.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for geompp-0.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b746cbe731d1280e864a0287858d6c6444020db3c88c319304fc6ed7910dca33
MD5 61b78fd0d52e79b423f4acc55eb5b451
BLAKE2b-256 8c05cdced5738d265367e5eeb02cc22a4fff95ad63364863ddeef05dd8c9b9b7

See more details on using hashes here.

File details

Details for the file geompp-0.1.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: geompp-0.1.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 836.3 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for geompp-0.1.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 9e66cd0ad5d70e655ed46bf7e5b3d61e47b42d8336aa5035ccefa9e9eb39ba29
MD5 23bed3ed12c67629684b1edb54d89df3
BLAKE2b-256 903b33f9f7da8ac97a7ad23dcb0ce485efa105e741c5f0b5ffa44915f3703929

See more details on using hashes here.

File details

Details for the file geompp-0.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for geompp-0.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f3a92158ba3b09752b1649e02335913e76c72e616b64ca9c3374932923b3bef1
MD5 5d1996fd5897b855da764ae9e775b4b1
BLAKE2b-256 6463e6bdaa5c8db8947573bf3cfc5b1c455ae578bfcc728732abcd465e5c441a

See more details on using hashes here.

File details

Details for the file geompp-0.1.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: geompp-0.1.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 835.6 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for geompp-0.1.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 833bb12ef41b37fb81f4ca1a3e6ee194db45935377ef865e7b02e6d31833c6a8
MD5 dcd7bdb1b4cd36397c28b27842374fbe
BLAKE2b-256 6f89b4099797bc74259891032d23751cb4b199d621e99ff6c570571d7c376d33

See more details on using hashes here.

File details

Details for the file geompp-0.1.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for geompp-0.1.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9ef4d9d638523879ca17bbc9135c0041d21598a614d28a38e47e254625102b6e
MD5 ff174e88390c4d0814fd83207c3ff690
BLAKE2b-256 928f5f176d68b1c21735672a0b704a7187a8d3865e904025d98400f043b8ee84

See more details on using hashes here.

File details

Details for the file geompp-0.1.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: geompp-0.1.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 821.5 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for geompp-0.1.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 1ecac6d17046912da41445f64a5a3ef79e736f6ce69b8e1a489ccf7fb8a1fad1
MD5 e0573aa74d5c6921ffaaa333e7ae4854
BLAKE2b-256 3eaff23525ac5480308196a8bc154cc9f472ba3ed173a0b7a75baf6990426855

See more details on using hashes here.

File details

Details for the file geompp-0.1.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for geompp-0.1.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bcf7c4bbd18c39ada9aaea3bd523727b9f6e9008fc7be1bb98650d225635cf83
MD5 a32b0f8ce0fab45a6f2e49ee15239095
BLAKE2b-256 c192d0031c95358c875573b5ab869298d4d743645eb0688d7ddc16153023f4c0

See more details on using hashes here.

File details

Details for the file geompp-0.1.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: geompp-0.1.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 835.6 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for geompp-0.1.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 8ef5bfe3bfd07643d129af536cae0b454be0d9341ffdd3cc825e3f8effc3d7e1
MD5 b6205051f3a0ea7e9bdf7438f91397f2
BLAKE2b-256 f31a45efa0860ff9419e98b55765737e88b3fc21c963a4e27cd61c875a571f26

See more details on using hashes here.

File details

Details for the file geompp-0.1.0-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for geompp-0.1.0-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8b8310a3005e5db32d366fe7014ab52a79d04db3cb565ff5f71f13487b067c40
MD5 1c52d33620a6d15c9f8fc26b9f1080b5
BLAKE2b-256 39174465e6c6607794bf958cf4fbc7d9a61ba5ce6fd3c0c6fe15ca547b49c095

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