Skip to main content

Python bindings for the GBS library

Project description

GBS is header library for computing bspline curves and surfaces.

GBS is compatible with OpenCASCADE, curves and surfaces can be converted to OpenCASCADE's objects.

Example of point cloud approximation: Screencast

Example of points surface interpolation: Screencast

Example of curve-surface intersection: Screencast

Example of loft-surface creation: Screencast

Example of surface approximation of points: Screencast

Example of curve 2d variable offset: Screencast Screencast

Example of curve on surface: Screencast

Example of python code to interpolate points

    pts = [
        [0.,0.,0],
        [0.,0.,1],
        [1.,0.,0.5],
        [1.,1.,1]
    ]
    constraints = []
    for p in pts:
        constraints.append([p])

    degree = 2

    crv = gbs.interpolate_cn_3d_d(
        constraints,
        degree,
        gbs.KnotsCalcMode.CHORD_LENGTH
    )

For now, this lib is to be used inside a conda environment with the following package installed:

  • nlopt
  • eigen3
  • boost >= 1.74

The optional module gbs-occt requires the additional package:

  • occt >=7.4.0

The optional module render requires the additional package:

  • vtk >=9.0

The python bindings requires the additional package:

  • pybind11

The test library needs:

  • gtest
  • occt>=7.4.0
  • sundials

Warning tests relative to performances evaluation should be run in release mode

As GBS base is a header library it doesn’t need compilation.

If one needs to compile the optional module gbs-occt, -DUSE_OCCT_UTILS:BOOL=TRUE shall be added to cmake command. If one needs to compile the optional module render, -DUSE_RENDER:BOOL=TRUE shall be added to cmake command. If one needs to compile the optional module python-bindings, -DUSE_PYTHON_BINDINGS=TRUE shall be added to cmake command.

The full test suite, which require the optional module gbs-occt, please add -DGBS_BUILD_TESTS:BOOL=TRUE to the cmake command.

Project details


Download files

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

Source Distribution

pygbs-0.4.0a4.tar.gz (5.9 MB view details)

Uploaded Source

Built Distribution

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

pygbs-0.4.0a4-py3-none-any.whl (8.1 kB view details)

Uploaded Python 3

File details

Details for the file pygbs-0.4.0a4.tar.gz.

File metadata

  • Download URL: pygbs-0.4.0a4.tar.gz
  • Upload date:
  • Size: 5.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.11.11

File hashes

Hashes for pygbs-0.4.0a4.tar.gz
Algorithm Hash digest
SHA256 54923757c1c2f37a2bfd0da64f3399d0f8a1ef320a3180f412d0cc61e7a8a136
MD5 f1350d96ecf7427d54fb58ddb76ade75
BLAKE2b-256 db64b85028146f41633246d9f2a7459311bb30924b1750b05b147242a0b41bdc

See more details on using hashes here.

File details

Details for the file pygbs-0.4.0a4-py3-none-any.whl.

File metadata

  • Download URL: pygbs-0.4.0a4-py3-none-any.whl
  • Upload date:
  • Size: 8.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.11.11

File hashes

Hashes for pygbs-0.4.0a4-py3-none-any.whl
Algorithm Hash digest
SHA256 c70598d3851cab719e50d68dea3c3cac9cb243699b6a02200b25c27312f66dff
MD5 7087c5bb0b9ff7141f808dc77a4ca6a7
BLAKE2b-256 d5fcd8f422f03512d2509dcacd73c488f0f078009ceaf152ada3660592a3404c

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