是否可以在d3.js的地理要素周圍繪製緩衝區(另一個功能)作爲固定距離單位(公里或英里)?例如,我將如何繪製一條從每個方向延伸25英里的點的路徑。我嘗試過使用d3.geo.circle並傳遞一定的度數(25英里/每緯度約69英里或25/69),但意識到儘管d3.geo.circle處理度數的重投影,但它不適應針對每個縱向度的不同長度。d3.geo緩衝區周圍的緩衝區
buffer = d3.geo.circle().angle(25/69).origin(function(x, y) { return [x, y]; })
我從這個借款:
http://bl.ocks.org/mbostock/5628479
更新:
看起來想什麼,我要做的就是創建一個緩衝測地線。
更新:
我能夠從一系列的給定的距離和從起點軸承的目標點繪製路徑創建緩衝區。
的JavaScript實現
喜歡這個顯示http://www.movable-type.co.uk/scripts/latlong.html:
function drawBuffer(lat, long, distance){
var intervals = 18;
var intervalAngle = (360/intervals);
var pointsData = [];
for(var i = 0; i < intervals; i++){
pointsData.push(getDestinationPoint(lat, long, i * intervalAngle, distance));
}
// Draw path using pointsData;
}
也許有助於採取看看[大地插件(https://github.com/d3/d3-plugins/tree/主/短程線) – cengel