(假设现有投影/topojson)
我想要做的是在半径 (r) 以英里为单位的点 ([long,lat]) 处创建一个圆。我知道有一个 d3.geo 函数,但经过一些考虑,我认为它不会与我的特定应用程序非常兼容。
所以现在我正在寻找使用原生 svgcircle解决方案,其中 cx 和 cy 是纬度和经度,而 r 是以英里为单位的半径。我知道 cx 和 cy,但我不知道如何确保 r 是 15 英里。所以主要的是如何确保在像素空间中绘制半径时以英里为单位进行缩放。必须有某种方式使用该projection函数为半径设置适当的比例。但我没有在实践中看到这一点。
另外我应该指出,我的投影是动态的,取决于投影(包括比例)可以改变的用户事件。所以我不确定这是否会影响在现有投影的背景下如何缩放圆圈,但我想我会公开这一点,以确保安全。