Thư viện JavaScript thuần cho các hoạt động hình học


21

Có ai biết một thư viện JavaScript thuần để thực hiện các hoạt động hình học như bộ đệm, liên kết, giao nhau, v.v. không? Tôi muốn chơi với việc thực hiện các hoạt động này trong trình duyệt. Có vẻ như GeoScriptJS có một số phụ thuộc.

Câu trả lời:


15

Bạn có thể xem API OpenLayers, đặc biệt là các lớp Hình học . Bạn có thể kiểm tra các giao điểm và có quyền truy cập vào các đỉnh, v.v. Tôi đã triển khai bộ đệm điểm trước đây chỉ với OpenLayers. Công đoàn có thể phức tạp hơn mặc dù.

Đối với các hoạt động phức tạp hơn, bạn có thể muốn thực hiện phía máy chủ xử lý và chuyển kết quả trở lại trong WKT hoặc GeoJSON, cả hai đều có thể hiển thị OpenLayers. Xem hướng dẫn Liên minh này cho một ví dụ.

Một tùy chọn có thể khác là Truy vấn không gian một " Thư viện giống như Javascript để xử lý các phép toán không gian ." Tôi không chắc nó đã được kiểm tra tốt như thế nào nhưng vì nguồn này có sẵn nên bạn nên xem qua.

Cập nhật

Hiện tại đã có cổng JavaScript của Bộ cấu trúc liên kết JTS - https://github.com/bjornharrtell/jsts


Tôi đã xem hình học OpenLayers và tôi nghĩ rằng phương pháp thay đổi kích thước sẽ cho phép tôi chia tỷ lệ hình học để có kết quả giống như bộ đệm. Nhưng bạn đã đúng, việc thực hiện các công đoàn và ngã tư sẽ phải được thực hiện thủ công. Than ôi. Những gì tôi thực sự cần là một cổng JS thuần túy của JTS. JSTS? =)
vào

Tôi đã nhìn xung quanh rất nhiều và tôi không nghĩ rằng bất kỳ giải pháp JS toàn diện, trưởng thành và thuần túy nào thực sự tồn tại. Truy vấn không gian thực sự trông giống như điều tốt nhất hiện nay, nhưng tôi đã tìm thấy một vài repos khác trên GitHub rất hữu ích: github.com/shawnbot/geoff/blob/master/src/geoff.jsgithub.com/maxogden/ Geojson-js-utils
atogle

@atogle - có nói chuyện di chuyển các chức năng hình học trong OpenLayers thư viện riêng biệt - osgeo-org.1803224.n2.nabble.com/...
geographika

thật tốt khi biết
atogle

22

Tôi đã thực hiện khá nhiều với cổng JTS của mình, đó là một cổng JS thuần túy và nó có sẵn tại https://github.com/bjornharrtell/jsts

Ở phiên bản hiện tại (0.9.1), nó hỗ trợ chức năng cốt lõi của JTS mà ý tôi là các vị từ và lớp phủ.


Xin chào, gần đây tôi đã hoàn thành JSTS 1.0, một cổng JTS hoàn chỉnh và cập nhật trong JavaScript hiện đại. Có sẵn ở cùng một nơi với phiên bản 0.x.
Bjorn Harrtell

3

Bạn có thể có một cái nhìn về bản đồ địa lý (được triển khai trong các trang web chính bao gồm cả JS)


2
Tôi khá chắc chắn rằng GeoScript JS không có nghĩa là được chạy trên máy khách / trình duyệt. Trang web cho biết nó được thiết kế cho RingoJS. Nó cũng xuất hiện để có phụ thuộc JTS.
vào


1

Turf là một thư viện javascript cung cấp rất nhiều hoạt động không gian. Nó cũng là mô-đun, vì vậy bạn chỉ có thể bao gồm các chức năng bạn cần trong tập lệnh cuối cùng.


Thật không may, nó bị hạn chế nghiêm trọng về mặt hình học và các hoạt động có sẵn. Bạn có thể làm điểm trong công cụ đa giác nhưng về cơ bản là như vậy.
bugmenot123

Turf thực sự sử dụng JSTS của riêng tôi (nhưng là phiên bản cũ hơn) cho nhiều hoạt động của nó. Nếu bạn sử dụng JSTS trực tiếp, bạn có quyền truy cập vào API chi tiết hơn có thể làm được nhiều hơn Turf. Xem github.com/bjornharrtell/jsts .
Bjorn Harrtell

Tôi thấy thật khó khăn khi khiến JSTS hoạt động trong một ứng dụng bản in và Turf.js hoạt động tốt. JSTS phong phú hơn về chức năng, nhưng đối với nhu cầu của tôi, Turf.js hoạt động rất tốt.
HankCa

0

Bạn có thể sử dụng API REST của máy chủ ArcGIS bất kể API / ngôn ngữ nào bạn đang sử dụng. Nó cung cấp tất cả các phương thức tiếp xúc ....


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.