Có thể truy cập chế độ Dark Dark của Bing Maps trong API ArcGIS JS không?


8

Thiết kế Stamen đã tạo ra một ứng dụng Hurricane Tracker tuyệt đẹp sử dụng chế độ "tối" của phông nền Bing Maps.

nhập mô tả hình ảnh ở đây

Điều này là hoàn hảo để hướng sự chú ý của mọi người vào lớp phủ hơn là nền.

Có thể truy cập phiên bản Bing "tối" này trong API API máy chủ ArcGIS không?


Tôi không chắc chắn về javascript, nhưng với ánh sáng bạc, bạn có thể làm tối ô khi sự kiện Xếp gạch tải phát sinh.
Kirk Kuykendall

Câu trả lời:


4

Tôi không biết về API của ArcGIS JS nhưng tôi có thể nói với bạn rằng Bản đồ Bão của MSNBC sử dụng ColorMatrixFilter và ColorTransform của Flash để đảo ngược và khử bão hòa các gạch Bing khi đang di chuyển.

Tôi khá chắc chắn rằng điều đó là không thể với JS theo cách đa trình duyệt. Bạn có thể có một số thành công nếu các ô Bing được phục vụ với quyền truy cập tên miền chéo (CORS) và nếu API ArcGIS cho phép bạn kết xuất các ô bằng cách sử dụng phần tử canvas HTML. Hoặc có lẽ bạn có thể ủy quyền các ô và sửa đổi chúng ở phía máy chủ, nhưng bạn phải kiểm tra các điều khoản Bing trước khi thực hiện điều đó, tất nhiên.


1
Bản đồ bão sử dụng ColorMatrixFilter và ColorTransform của Flash để đảo ngược và khử bão hòa các gạch Bing khi đang di chuyển - đó là điều tốt để biết, cảm ơn.
Stephen chì

3

Đảo ngược và khử bão hòa hình ảnh chắc chắn là có thể có trong JS. Kiểm tra thư viện Pixastic .

Và mã cụ thể: Đảo ngượckhử bão hòa

Thủ thuật sẽ chặn các hình ảnh Bing Map trong JS và áp dụng hai hiệu ứng cho chúng. Chắc chắn có thể, nhưng không dễ dàng thực hiện được. Tất cả các hình ảnh bạn quan tâm là trong một div có id của map_layerX, trong đó X là ID lớp (trong trường hợp bản đồ đơn giản chỉ có lớp bản đồ Bing, nó sẽ là map_layer0). Đó là giả sử id của bản đồ div của bạn là "bản đồ". Firebird sẽ là bạn của bạn.


3

Đây là một ứng dụng API API đã được hiển thị tại Hội nghị người dùng Esri năm nay với chức năng tương tự: http://na.arcgis.com/UCdemo/traffic.html

Tôi không chắc làm thế nào hoặc nếu nó hoạt động trong IE.

Các ô bản đồ cơ sở được tải từ sơ đồ cơ sở Đường phố trực tuyến ArcGIS và sau đó được chuyển đổi sang thang độ xám. Đây cũng là ứng dụng sử dụng Canvas được tham chiếu trong slide 7 của bản trình bày mà Mike L liên kết đến.


Để giúp bạn tiết kiệm thời gian: na.arcgis.com/UCdemo/common/greyScaleMapLayer.js
Sasa Ivetic

@Sasa cảm ơn! Có lẽ nên bao gồm điều đó trong bài viết của tôi ...
Derek Swingley

Điều này thật tuyệt, cảm ơn. Nó không hoạt động trong IE8, nhưng ít nhất nó xuống cấp một cách duyên dáng - sơ đồ cơ sở vẫn được hiển thị, nhưng có màu
Stephen Lead

@Stephen: Tôi đã chơi xung quanh với mã ngày hôm nay và nhận thấy họ thực sự ủy quyền các hình ảnh để cho phép mã hoạt động. Nếu bạn không ủy quyền các ô bản đồ VE thông qua máy chủ cục bộ của mình (cụ thể là nếu các thành phần hình ảnh không xuất hiện từ cùng một tên miền), bạn sẽ KHÔNG thể làm cho điều này hoạt động chính xác. Các hàm getImageData / toDataUrl () sẽ đưa ra các ngoại lệ bảo mật khi chúng được gọi. IMO, vì đã yêu cầu proxy, tôi sẽ xử lý hình ảnh theo phương thức proxy chứ không phải bằng JavaScript.
Sasa Ivetic

FWIW bạn có thể làm cho nó hoạt động trong IE đủ đơn giản bằng cách mở rộng VETiledLayer và đặt bộ lọc css trên ô bản đồ (KHÔNG hoạt động trong bất kỳ trình duyệt nào khác .. xin lỗi về JS xấu xí): (function(){ dojo.declare("GreyScaleVELayer", esri.virtualearth.VETiledLayer, { _tileLoadHandler: function(evt) { evt.currentTarget.style.filter = "gray invert"; this.inherited(arguments); } }); })();
Sasa Ivetic

1

Tôi thực sự đã thấy một ví dụ Esri về họ làm điều này tại một trong các Phiên kỹ thuật trong UC. Thật không may, nó chỉ là một hình ảnh trong một slide nên tôi không thể chỉ cho bạn bất kỳ mã nguồn nào. Theo liên kết bên dưới và xem slide 7. Có vẻ như họ đang sử dụng Canvas HTML5 để thay đổi tông màu của hình ảnh.

http://proceedings.esri.com/l Library / userconf / proc11 / uc / tw-ppts / tw_1463.ppt

Hy vọng điều này sẽ giúp bạn đi đúng hướng.


Cảm ơn đã chia sẻ PPT này. Trong trường hợp bạn chưa nhận thấy nó, có nhiều siêu liên kết trên nhiều hình ảnh trong PPT này. Hình ảnh "canvas" trên slide 7 liên kết đến bản demo.
Stephen chì

0

Trong những năm kể từ khi tôi đăng câu hỏi này, Esri đã phát hành phiên bản bản đồ nền màu xám đen của riêng họ mà bạn có thể dễ dàng thêm vào bất kỳ bản đồ API ArcGIS nào.

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.