18

I need a library to handle computational geometry in a project, especially boolean operations, but just about every feature is useful. The best library I can find for this is CGAL, but this is the sort of project I would hesitate to make without garbage collection.

What language/library pairs can you recommend? So far my best bet is importing CGAL into D. There is also a project for making Python bindings for CGAL, but it's very incomplete.

VividD
  • 10,456
  • 6
  • 64
  • 111
Squash Monster
  • 191
  • 1
  • 1
  • 5

5 Answers5

7

I would still recommend to proceed with Python and the existing Python binding. When you find it's incomplete, you'll also find that it is fairly easy to extend - Python's C API is designed so that integrating with external libraries is fairly easy (for experienced C programmers).

Martin v. Löwis
  • 124,830
  • 17
  • 198
  • 235
  • Yep, and look into one of the C++ bindings generators (which binds C++ code to python), such as SIP. – Lee B Nov 09 '09 at 06:53
7

Perhaps you can look at Shapely for python

http://pypi.python.org/pypi/Shapely/

For Java I would use JTS

For .NET I would use SharpMap or .NETTopologySuite

TheSteve0
  • 3,530
  • 1
  • 19
  • 25
1

The CGAL-bindings project provides bindings for CGAL using SWIG. The targeted languages, so far, are Java and Python. The CGAL-bindings project is open source, and supported/founded by two french companies.

lrineau
  • 6,036
  • 3
  • 34
  • 47
0

I've just found this and it seems very promising even if it seems a young project: https://pyrr.readthedocs.org/en/latest/index.html#

Pyrr is a Python mathematical library.

and it is based on numpy!

nkint
  • 11,513
  • 31
  • 103
  • 174
0

JTS is also available in .NET via IKVM.

Sebastian Good
  • 6,310
  • 2
  • 33
  • 57