能够像推特一样在世界地图上使用等矩形投影,也需要为美国图像工作
Able to use equirectangular Projection on world map like tweetping, need to get that working for USA image also
目前我可以在世界地图上使用等矩形投影绘制地理编码,比如推特网站(https://tweetping.net/),但我需要将其与美国地图图像一起使用。我看到等矩形公式适用于世界地图图像,但不适用于美国地图图像。
这是我目前的等矩形投影代码,它将纬度和经度转换为css属性,我正在使用它来定位世界地图图像上的点:
function projectLat (lat, height) {
if (isNaN(lat) || typeof lat !== 'number' || lat < -90 || lat > 90) {
throw new Error('latitude is not valid');
}
if (isNaN(height) || typeof height !== 'number'){
throw new Error('viewport height is not valid');
}
return ((lat - 90) / -180 * height);
}
function projectLng (lng, width) {
if (isNaN(lng) || typeof lng !== 'number' || lng < -180 || lng > 180) {
throw new Error('longitude is not valid');
}
if (isNaN(width) || typeof width !== 'number'){
throw new Error('viewport width is not valid');
}
return (lng + 180) / 360 * width;
}
我已经附上了世界地图图片以及我正在使用的美国图片。
有人知道怎么做吗?
非常感谢。
美国图像
那个图像不起作用。它没有按照您的需要进行投影。
因此,等矩形投影意味着你将北极(这是一个点)拉伸到赤道的大小(4000万米;南极也是如此;忽略世界不是一个完美的球体这一事实)。
那么世界就是一个180°高(-90到+90)、360°宽(-180到+180)的矩形
结果是等纬度点在一条水平线上。相等的经度点在一条垂直线上。
美国有这样的路线。例如:蒙大拿州/华盛顿州/北达科他州以北与加拿大的边界是一条直线,纬度=北纬49°。
你需要一张直线和水平的照片。
相关文章:
- 如何使用url加载程序在webpack中导入多个图像
- nodejs-expressjs上传图像并显示它们
- 使用JSP从服务器检索和显示图像
- 角度:在ng重复上切换图像
- 画廊图像未显示
- Phonegap-(安卓/iphone)多个图像的图像库出现问题
- Javascript排序的图像弹出窗口..可以't单独弹出
- 画布数据到图像
- Windows8应用程序(html&Javascript):从图片库(除了文件选择器)显示图像的另一种方式
- 使图像在单击时展开到不大于浏览器
- Html页面上的多个Base64图像和平滑加载
- UIAutomation放大图像
- 使用javascript在Flash中加载外部图像
- 可以在这里为背景图像设置滤镜吗
- 当图像转换为本地存储的DataURL时,EXIF被删除
- 使用 js 将背景图像设置为 HTML
- Javascript将图像src更改为淡入淡出
- 无法在本地计算机中将画布另存为图像
- D3.js 在画布图像上映射投影
- 能够像推特一样在世界地图上使用等矩形投影,也需要为美国图像工作