经纬度坐标与地图容器像素坐标相互转换

<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no, width=device-width">
    <title>经纬度坐标与地图容器像素坐标相互转换</title>
    <link rel="stylesheet" href="http://cache.amap.com/lbs/static/main1119.css"/>
    <script src="http://webapi.amap.com/maps?v=1.3&key=您申请的key值"></script>
    <script type="text/javascript" src="http://cache.amap.com/lbs/static/addToolbar.js"></script>
</head>
<body>
<div id="container"></div>
<div class="button-group" style="background-color: white">
    <div>
        地图经纬度坐标:(<b>鼠标左键在地图上单击获取经纬度坐标</b>)<br>
        lng:<input type="text" id="lngX" name="lngX" />
        lat:<input type="text" id="latY" name="latY" /><br>
        地图容器像素坐标:<br>
        X:&nbsp;<input type="text" id="pixelx" name="pixelx" />
        Y:&nbsp;<input type="text" id="pixely" name="pixely" />
    </div>
    <div style="margin-top:5px">
        <input id="lng2x" type="button" class="button" value="经纬度转容器像素坐标" />
        <input id="x2lng" type="button" class="button" value="容器像素坐标转经纬度" />
    </div>
</div>
<script>
    var map = new AMap.Map(‘container‘, {
        resizeEnable: true
    });

    var $= function(elementId){
        return document.getElementById(elementId);
    };
    var lngX = $(‘lngX‘),latY = $(‘latY‘);
    var pixelX = $(‘pixelx‘),pixelY = $(‘pixely‘);
    map.on( ‘click‘,  function (e) {
        lngX.value = e.lnglat.getLng();
        latY.value = e.lnglat.getLat();
    });

    //经纬度坐标转换为容器像素坐标
    AMap.event.addDomListener($(‘lng2x‘),‘click‘, function () {
        var px = lngX.value,py = latY.value;
        if (px && py) {
            var pixel = map.lnglatTocontainer([px, py]);
            pixelX.value = pixel.getX();
            pixelY.value = pixel.getY();
        }
    });

    //容器像素坐标转换为经纬度坐标
    AMap.event.addDomListener($(‘x2lng‘),‘click‘, function () {
        var lnglatX = parseInt(pixelX.value), lnglatY = parseInt(pixelY.value);
        if (lnglatX && lnglatY) {
            var ll = map.containTolnglat(new AMap.Pixel(lnglatX, lnglatY));
            lngX.value = ll.getLng();
            latY.value = ll.getLat();
        }
    });
</script>
</body>
</html>
时间: 2024-08-03 11:59:36

经纬度坐标与地图容器像素坐标相互转换的相关文章

地图坐标转换 -- 火星坐标与GPS坐标

第一次处理地理位置的数据的人,没什么经验,往往掉入很多坑浪费不少时间.我也是刚刚从坑里爬出来.这篇博文主要是把入门GPS轨迹分析的经验总结一下,以方便大家少走些弯路. (1)可视化 GPS 路径 刚拿到一堆GPS轨迹数据,想看看它长什么样?于是先想办法把它们可视化出来.有很多地图的API可以用,如果不是想搞演示,只是为了快速随便看一眼的话,推荐用百度的在线示例API  http://developer.baidu.com/map/jsdemo.htm#c1_3  里面有比较详细的例子,很丰富的操

使用ArcGIS实现WGS84经纬度坐标到北京54高斯投影坐标的转换

[摘 要] 本文针对从事测绘工作者普遍遇到的坐标转换问题,简要介绍ArcGIS实现WGS84经纬度坐标到北京54高斯投影坐标转换原理和步骤. [关键词] ArcGIS 坐标转换 投影变换 1 坐标转换简介 坐标系统之间的坐标转换既包括不同的参心坐标之间的转换,或者不同的地心坐标系之间的转换,也包括参心坐标系与地心坐标系之间的转换以及相同坐标系的 直角坐标与大地坐标之间的坐标转换,还有大地坐标与高斯平面坐标之间的转换.在两个空间角直坐标系中,假设其分别为O--XYZ和O--XYZ,如果两个 坐标系

C# 计算地图上某个坐标点的到多边形各边的距离

原文:C# 计算地图上某个坐标点的到多边形各边的距离 在判断了某个坐标点是否在多边形内后,还有另一个需求就是当我这个坐标点在多边形外部时,我需要计算这个坐标点到多边形的距离是否在一个允许的误差范围内 通过两个位置的经纬度坐标计算距离(C#版本) 转自:https://blog.csdn.net/jasonsong2008/article/details/78423496 经纬坐标系中求点到线段距离的方法 转自C语言版本: https://blog.csdn.net/ufoxiong21/arti

API地图坐标转化(批量转换坐标)

```html 批量转换坐标(据说有50次/秒的限制哦) 谷歌地图 鼠标点击的谷歌坐标是: 百度地图 鼠标点击的百度坐标是:() ``` ```javascript // (function(){ function loadscript(xyUrl, callback){ var head = document.getElementsByTagName('head')[0]; var script = document.createElement('script'); script.type =

图片压缩后长度和宽度 及像素坐标

图片压缩后长度和宽度 及像素坐标 CGFloat    scaleFloat = 0.6;+ (UIImage *) scaleImage: (UIImage *)image scaleFactor:(float)scaleFloat{    CGSize size = CGSizeMake(image.size.width * scaleBy, image.size.height * scaleBy); UIGraphicsBeginImageContext(size);    CGConte

在matlab中进行地理坐标和像素坐标的相互转换

clc;close all;clear; %地理坐标和像素坐标的相互转换 [pic,R]=geotiffread('boston.tif'); %读取带地理坐标信息的tif影像 [m,n,~]=size(pic); %像素坐标转换为地理坐标 figure(1),imshow(pic),title('不带地理坐标的静态图片'); hold on; scatter(n/4,m/4,500,'r.'); %选择1/4处像素坐标,并在图上标示 [lon,lat]=pix2map(R,m/4,n/4);

iOS-地理坐标转换,原生地图获取的原始坐标转换为地图真实坐标

GPS以及iOS系统定位获得的坐标是地理坐标系WGS1984,Web地图一般用的坐标细是投影坐标系WGS 1984 Web Mercator,国内出于相关法律法规要求,对国内所有GPS设备及地图数据都进行了加密偏移处理,代号GCJ-02,这样GPS定位获得的坐标与地图上的位置刚好对应上,特殊的是百度地图在这基础上又进行一次偏移,所以在处理系统定位坐标及相关地图SDK坐标时需要转换处理下,根据网络资源,目前有一些公开的转换算法. 系统定位坐标显示在原生地图.谷歌地图或高德地图–WGS1984转GC

地图开发 火星坐标(GCJ-02)和百度坐标(BD-09)互相转换

■ 背景 国际坐标系 WGS-84:地心坐标系,国际通用.应用:Googole Map 火星坐标系 GCJ-02:由中国×××(G表示Guojia国家,C表示Cehui测绘,J表示Ju局)制订的地理信息系统的坐标系统.应用:高德地图 百度坐标系 BD-09:在GCJ-02的基础上二次偏移.应用:百度地图 ■ GCJ-02和BD-09互相转换 (js) // 高德地图坐标系(火星坐标GCJ-02) -> 百度地图坐标系(百度坐标BD-09) // 参数形式为"lng,lat" //

C# 计算地图上某个坐标点的是否在多边形内

原文:C# 计算地图上某个坐标点的是否在多边形内 这个方法引用自群友的博客 https://www.xiaofengyu.com/?p=143 使用百度地图的时候,常常会用到判断一个点是否在一个多边形的范围内,该方法用到的是射线法, 通过修改Javascrpit的代码过来的,射线法的意思就是从点出发和任意的一边的交叉点数为奇数则为在改区域内, 参考文档http://erich.realtimerendering.com/ptinpoly/ public class location { publ