2012-02-19 43 views
35

CGAL dường như chỉ làm mọi thứ tôi cần và nhiều hơn một chút cho dự án sắp tới của tôi. Nó có thể tạo các đa giác ra khỏi các đoạn đường vòng cung và chạy các phép toán boolean trên chúng. Nó có các gói phân loại không gian đã giúp tôi tiết kiệm rất nhiều thời gian liên quan đến một vài thứ và toàn bộ thư viện có vẻ khá chuẩn hóa và được lên kế hoạch tốt.Thư viện hình học 2D: LGPL thay thế cho CGAL?

Chỉ có vấn đề với giấy phép là QPL (GPL cho phiên bản sắp tới 4.0) cho hầu hết các gói (ngoại trừ các gói cơ bản). Tôi có một ngân sách ít ỏi và có thể không thu được tiền để mua giấy phép thương mại cho những gói cụ thể trong CGAL yêu cầu nó.

nhu cầu cụ thể của tôi về một thư viện như vậy sẽ là:

  • chính xác chính xác 2D không gian Euclide
  • đa giác Complex
  • đa giác có thể có đường cong (arc) phân đoạn
  • Boolean hoạt động trên những đa giác
  • Bù trừ đa giác
  • Phân vùng đa giác hoặc triangulation hiệu quả
  • khắc chữ khu vực và đa giác các thuật toán phù hợp
  • Có thể một số cấu trúc sắp xếp không gian với phạm vi hình tròn tìm kiếm

Tất cả trong tất cả, Tôi đang tìm kiếm một 2D hình học C cũng tròn ++ thư viện với độ chính xác chính xác. Tốt hơn với MIT, LGPL ở mức độ căng hoặc chi phí bản quyền miễn phí một lần thấp dưới $ 500.

Tăng một số cấu trúc cơ bản xuống, nhưng từ những gì tôi có thể nói rằng chúng thiếu nhiều chức năng cấp cao hơn. Bất kỳ thư viện nào đã mở rộng về điều này? Tôi sẽ xem xét tự mình làm, nhưng tôi thiếu chuyên môn để làm tốt và nó sẽ kéo dài dự án của tôi một chút.

Chỉ cần rõ ràng, tôi không tìm kiếm thư viện đồ họa, chỉ là cấu trúc hình học thuần túy.

+2

Nó sẽ không giải quyết được vấn đề của bạn nhưng lưu ý rằng phiên bản 4.0 của CGAL thuộc GPL và LGPL. – sloriot

+0

@sloriot Không thực sự: Các bộ phận đã được LGPL2 hiện là LGPLv3 + và các bộ phận đã được QPL bây giờ là GPLv3 +: http://www.cgal.org/releases.html#release4.0 Tất cả trong tất cả, thay đổi cấp phép này không có tác dụng OP. – zvrba

Trả lời

15

Hãy xem Wykobi. Đây là thư viện được tạo khuôn mẫu và bạn có thể tạo thứ nguyên là 2D.

Chi phí của thư viện không rõ ràng từ trang web. Check

3

Bạn đã xem thư viện Boost.Geometry chưa? Đó là hư không gần CGAL về chức năng, nhưng nó có thể giúp bạn.

14

Hãy xem Geometric Tools for Computer Graphics.

  • Refined hơn một thập kỷ
  • tài liệu Không ngờ tốt, cả trong khó khăn ràng buộc và rộng rãi dưới dạng PDF
  • giấy phép Boost

Nó đáp ứng tất cả yêu cầu của bạn:

  • Không gian chính xác 2D euclide: Có
  • Đa giác phức tạp: Có
  • Đa giác có thể có các đoạn đường cong (cung): Không vô nghĩa. Theo định nghĩa , đa giác bao gồm các đoạn thẳng. Nếu bạn đang tìm kiếm splines và NURBS, thư viện có chúng.
  • Hoạt động Boolean trên các đa giác đó: Có
  • Bù trừ đa giác: Không rõ ý bạn là gì. Thư viện chắc chắn hỗ trợ dịch thuật.
  • Polygon phân vùng hoặc tam giác hiệu quả: Vâng, Delaunay triangulation và vùng lãnh thổ Voronoi
  • khắc chữ khu vực và đa giác phù hợp thuật toán: Có
  • Có thể một số cấu trúc sắp xếp không gian với các tìm kiếm hình tròn khoảng: Vâng, sắp xếp không gian và một giạ toàn bộ chức năng giao nhau.

Tất cả điều này xuất phát từ sách Geomtric Tools for Computer Graphics bởi Schneider và Eberly. Cuốn sách xuất sắc, với sự trình bày rõ ràng về cách các thuật toán hoạt động và những hạn chế của chúng là gì. Các tác giả đã làm cho mã có sẵn trực tuyến theo giấy phép Tăng cường và bao gồm hầu hết (tất cả?) Của sách trực tuyến dưới dạng PDF để đi cùng với mỗi mô-đun mã. Họ duy trì một trang web rất hữu ích được lập chỉ mục theo nhiều cách khác nhau.

Tôi không có kết nối với tác giả cũng như bất kỳ lợi ích tiền tệ nào. Tôi đã sử dụng cuốn sách của họ trong luận án của tôi và nó đã rất hài lòng với nó như là một tài liệu tham khảo dễ sử dụng và một thư viện mạnh mẽ.

0

Bạn có thể thử GeoLib www.geolib.co.uk. Không có nhiều chức năng nhưng cung cấp các hoạt động boolean và rất dễ sử dụng.

Các vấn đề liên quan