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


    <!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>
  • 相关阅读:
    python开发环境准备
    MacOS X 安装OpenCV3.2
    tensorflow源码分析——BasicLSTMCell
    结对开发求一数组的最大子数组的和
    结对开发读文本中的二维数组求该二维数组最大子数组的和
    随机四则运算的出题程序java
    突现灵感想出较新简单算法实现求一数组最大子数组的和
    四则运算C++版
    Cys_Control(一) 项目搭建
    Cys_Control(二) MButton
  • 原文地址:https://www.cnblogs.com/fjzhang/p/6253079.html
Copyright © 2020-2023  润新知