Có thư viện hình học nào có sẵn cho Java không? Tôi đang tìm giải pháp để có được một điểm giao nhau giữa hai đối tượng hình học.Thư viện hình học cho Java
Trả lời
JTS là tùy chọn mã nguồn mở miễn phí tốt nhất của bạn. Phương pháp bạn đang tìm kiếm trong JTS là here
Theo như tùy chọn thương mại, bạn có ESRI's Java JNI version thư viện ArcObjects có Thư viện hình học rất mạnh mẽ. Giao diện trên thư viện của ESRI được gọi là ITopologicalOperator
Nếu tất cả những gì bạn đang cố gắng làm là Hoạt động hình học, JTS là lựa chọn tốt nhất của bạn - nó là một thư viện tuyệt vời có nhiều cổng khác nhau. Mặt khác, nếu bạn đang tìm kiếm toàn bộ hệ thống GIS có biểu tượng phức tạp, hỗ trợ luồng công việc GIS và chỉnh sửa nhiều người, in ấn, v.v., thì tôi sẽ bắt đầu xem các thư viện ESRI.
Gói bạn nên xem nó java.awt.geom
, là một phần của JDK.
Cụ thể, hãy xem lớp java.awt.geom.Area
, cho phép bạn thực hiện các hoạt động giao cắt giữa hai Shape
s.
EDIT
Tìm các điểm giao nhau là không tầm thường như xa như tôi biết, vì bạn cần phải áp dụng một thuật toán khác nhau tùy thuộc vào hình dạng bạn đang phân tích. Ví dụ, thuật toán cho giao điểm giữa hai vòng tròn được đưa ra here, trong khi thuật toán để tính toán đường truyền giữa hai đường cong Bezier hoàn toàn khác nhau (here).
EDIT 2
Một gợi ý: Bạn có thể nhìn vào lớp PathIterator
, mà trả về một mô tả về con đường của một hình dạng như một chuỗi các phân đoạn. Cụ thể kiểm tra FlatteningPathIterator
, sẽ sụp đổ bất kỳ đường cong thành nhiều đường thẳng. Khi đường dẫn của bạn đã được giảm xuống các đường thẳng, việc tính toán các điểm giao nhau sẽ đơn giản ... mặc dù rõ ràng đây là một xấp xỉ trong trường hợp hình dạng của bạn chứa các đường cong.
nhưng kết quả chỉ đúng/sai. Tôi cần các điểm giao nhau exacts – nanda
bình luận để EDIT: cho đến nay tôi biết, một khi chúng ta biết phương trình của con đường nó là khá đơn giản để có được điểm giao nhau. Có lẽ tôi sẽ tự mình tạo ra thư viện nếu không có giải pháp phức tạp ngoài kia. – nanda
Xem chỉnh sửa thứ 2 của tôi. – Adamski
http://edndoc.esri.com/arcobjects/9.2/Java/java/library_reference/Geometry/Geometry_overview.htm
Hãy thử liên kết này liên kết này chứa đầy đủ chi tiết về thư viện geomentry .....
ESRI? $ 5000 chỉ để có một giao lộ? – codekaizen
Đây là thư viện địa lý Java miễn phí từ Esri: https://github.com/Esri/geometry-api-java – 0kcats
JTS - Java Topology Suite - là tốt nhất.
http://www.vividsolutions.com/jts/jtshome.htm
Nó là miễn phí, nhanh chóng, mạnh mẽ, và có thể xử lý nút giao thông thoái hóa.
Tôi thấy rằng JTS đã thay đổi bàn tay hoặc thay đổi trang chủ hoặc nội dung nào đó. Một phiên bản mới hơn có thể được tìm thấy ở đây: http://maven.geotoolkit.org/com/vividsolutions/jts/1.10/
Chỉnh sửa: Đây có thể là trang chủ mới của nó: http://tsusiatsoftware.net/jts/main.html
Đối với mục đích phi GIS tôi có thể đề nghị javaGeom thư viện. Nó sử dụng sự trừu tượng hóa hình học Euclide mà hầu hết mọi người đều biết từ trường học. Không có hoạt động nào gần đây về dự án này, nhưng tôi thấy nó có cấu trúc và dễ sử dụng.Họ nói nó hỗ trợ các hoạt động boolean, nhưng chưa bao giờ thử nghiệm chúng hoạt động tốt như thế nào. Có một ứng dụng thử nghiệm khá giàu tính năng tên là Euclid, được phát triển từ cùng một tác giả. Bạn có thể thử sử dụng nó, nhưng chỉ khi bạn chắc chắn nó sẽ làm việc cho bạn.
Có vẻ như họ đã có 3 bản phát hành vào cuối năm 2011, sau một thời gian dài không hoạt động. Ngoài ra, các thư viện trông nhỏ gọn hơn nhiều so với JTS - tốt đẹp không để sưng lên những điều quá nhiều! – rescdsk
kiểm tra [câu trả lời này] (http://gamedev.stackexchange.com/a/114761/36681) cũng vậy, tôi đã tìm thấy nhiều lựa chọn thay thế –
- 1. Thư viện Hình học .NET
- 2. Tài chính định lượng/thư viện toán học cho Java
- 3. Thư viện hình học tốt trong python?
- 4. Thư viện hình học 2D: LGPL thay thế cho CGAL?
- 5. Thư viện hình học trong C++
- 6. Thư viện WebP cho java?
- 7. Thư viện HTTP tốt nhất cho Java?
- 8. Thư viện SSH cho Java
- 9. Thư viện UPnP cho Java
- 10. thư viện java cho zip64
- 11. Thư viện thư rác cho Java?
- 12. Thư viện hàm toán học đặc biệt Java
- 13. Thư viện tiền tệ cho Java
- 14. Thư viện xử lý video cho Java
- 15. Phần mềm Thư viện Synth cho Java
- 16. thư viện toán học java cho BigDecimal cho phép giá trị null
- 17. Thư viện Java GUI
- 18. Thư viện iCalendar tốt nhất cho Java?
- 19. Có thư viện Java cho steganography không?
- 20. Thư viện máy học tập Php?
- 21. Thư viện Java Java
- 22. Thư viện xây dựng SVG cho Java
- 23. Thư viện Java SSH cho Android?
- 24. Thư viện tạm thời cho Java
- 25. Thư viện BSON dành cho java?
- 26. STUN, TURN, thư viện ICE cho Java
- 27. C/C++ Thư viện học tập máy cho Clustering
- 28. Thư viện Javascript cho đồ thị (theo nghĩa toán học)
- 29. Thư viện toán học SIMD cho SSE và AVX
- 30. Thư viện IronPython cho các ô khoa học
Kích thước của không gian bạn đang làm việc là gì? 2D, 3D? –
2D ............. – nanda
Tắt chủ đề? Bạn sẽ đùa tôi. Cho phép đóng tất cả các câu hỏi Java sau đó. – Stepan