Tôi muốn làm một chuyển đổi suôn sẻ giữa Alber/chính tả trong một ứng dụng nhỏ Tôi đang xây dựng, giống như ví dụ sau:Làm thế nào để làm chuyển đổi suôn sẻ cho chiếu lại bản đồ trong d3 js
http://mbostock.github.io/d3/talk/20111018/#27
Nó có vẻ như chuyển đổi suôn sẻ này bị phá vỡ trong v3 tuy nhiên, với một sự chuyển tiếp khá choppy của các đường dẫn bản đồ:
Mã là khá thẳng về phía trước, tôi khởi tạo bản đồ như Albers, sau đó chạy ortho() để cập nhật nó.
function ortho() {
var self = this,
h = 1000,
w = document.width;
this.projection = d3.geo.orthographic()
.scale(500)
.translate([ (w - 300)/2, h/2])
.clipAngle(90)
.rotate([90, 0, 0])
.precision(.1);
this.path = d3.geo.path()
.projection(this.projection);
//update path WITH transition
d3.selectAll('path')
.transition()
.duration(900)
.attr('d', app.path);
}
Bản đồ thay đổi từ albers thành orthographic, nhưng quá trình chuyển đổi không được mịn. Bất kỳ suy nghĩ nào cũng tuyệt vời.
Có thể nội suy clipAngle theo cách này không? Không có ví dụ nào chứng minh điều này - Tôi đang cố chuyển từ orthographic/90 sang equirectangular/180 và có rất nhiều hiện vật lạ – Casey