亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? util.js

?? 用來在地圖上做操作GIS,在地圖上做標記
?? JS
?? 第 1 頁 / 共 2 頁
字號:
 *  * Parameters: * to - {Object} * from - {Object} */OpenLayers.Util.applyDefaults = function (to, from) {    for (var key in from) {        if (to[key] == null) {            to[key] = from[key];        }    }};/** * Function: getParameterString *  * Parameters: * params - {Object} *  * Returns: * {String} A concatenation of the properties of an object in  *          http parameter notation.  *          (ex. <i>"key1=value1&key2=value2&key3=value3"</i>) *          If a parameter is actually a list, that parameter will then *          be set to a comma-seperated list of values (foo,bar) instead *          of being URL escaped (foo%3Abar).  */OpenLayers.Util.getParameterString = function(params) {    paramsArray = [];        for (var key in params) {      var value = params[key];      if ((value != null) && (typeof value != 'function')) {        var encodedValue;        if (typeof value == 'object' && value.constructor == Array) {          /* value is an array; encode items and separate with "," */          var encodedItemArray = [];          for (var itemIndex=0; itemIndex<value.length; itemIndex++) {            encodedItemArray.push(encodeURIComponent(value[itemIndex]));          }          encodedValue = encodedItemArray.join(",");        }        else {          /* value is a string; simply encode */          encodedValue = encodeURIComponent(value);        }        paramsArray.push(encodeURIComponent(key) + "=" + encodedValue);      }    }        return paramsArray.join("&");};/** * Property: ImgPath * {String} Default is ''. */OpenLayers.ImgPath = '';/**  * Function: getImagesLocation *  * Returns: * {String} The fully formatted image location string */OpenLayers.Util.getImagesLocation = function() {    return OpenLayers.ImgPath || (OpenLayers._getScriptLocation() + "img/");};/**  * Function: Try * Execute functions until one of them doesn't throw an error.  *     Capitalized because "try" is a reserved word in JavaScript. *     Taken directly from OpenLayers.Util.Try() *  * Parameters: * [*] - {Function} Any number of parameters may be passed to Try() *    It will attempt to execute each of them until one of them  *    successfully executes.  *    If none executes successfully, returns null. *  * Returns: * {*} The value returned by the first successfully executed function. */OpenLayers.Util.Try = function() {    var returnValue = null;    for (var i = 0; i < arguments.length; i++) {      var lambda = arguments[i];      try {        returnValue = lambda();        break;      } catch (e) {}    }    return returnValue;}/**  * Function: getNodes *  * These could/should be made namespace aware? *  * Parameters: * p - {} * tagName - {String} *  * Returns: * {Array} */OpenLayers.Util.getNodes=function(p, tagName) {    var nodes = OpenLayers.Util.Try(        function () {            return OpenLayers.Util._getNodes(p.documentElement.childNodes,                                            tagName);        },        function () {            return OpenLayers.Util._getNodes(p.childNodes, tagName);        }    );    return nodes;};/** * Function: _getNodes *  * Parameters: * nodes - {Array} * tagName - {String} *  * Returns: * {Array} */OpenLayers.Util._getNodes=function(nodes, tagName) {    var retArray = [];    for (var i=0;i<nodes.length;i++) {        if (nodes[i].nodeName==tagName) {            retArray.push(nodes[i]);        }    }    return retArray;};/** * Function: getTagText *  * Parameters: * parent - {} * item - {String} * index - {Integer} *  * Returns: * {String} */OpenLayers.Util.getTagText = function (parent, item, index) {    var result = OpenLayers.Util.getNodes(parent, item);    if (result && (result.length > 0))    {        if (!index) {            index=0;        }        if (result[index].childNodes.length > 1) {            return result.childNodes[1].nodeValue;         }        else if (result[index].childNodes.length == 1) {            return result[index].firstChild.nodeValue;         }    } else {         return "";     }};/** * Function: getXmlNodeValue *  * Parameters: * node - {XMLNode} *  * Returns: * {String} The text value of the given node, without breaking in firefox or IE */OpenLayers.Util.getXmlNodeValue = function(node) {    var val = null;    OpenLayers.Util.Try(         function() {            val = node.text;            if (!val)                val = node.textContent;            if (!val)                val = node.firstChild.nodeValue;        },         function() {            val = node.textContent;        });     return val;};/**  * Function: mouseLeft *  * Parameters: * evt - {Event} * div - {HTMLDivElement} *  * Returns: * {Boolean} */OpenLayers.Util.mouseLeft = function (evt, div) {    // start with the element to which the mouse has moved    var target = (evt.relatedTarget) ? evt.relatedTarget : evt.toElement;    // walk up the DOM tree.    while (target != div && target != null) {        target = target.parentNode;    }    // if the target we stop at isn't the div, then we've left the div.    return (target != div);};/** * Function: rad *  * Parameters: * x - {Float} *  * Returns: * {Float} */OpenLayers.Util.rad = function(x) {return x*Math.PI/180;};/** * Function: distVincenty *  * Parameters: * p1 - {Float} * p2 - {Float} *  * Returns: * {Float} */OpenLayers.Util.distVincenty=function(p1, p2) {    var a = 6378137, b = 6356752.3142,  f = 1/298.257223563;    var L = OpenLayers.Util.rad(p2.lon - p1.lon);    var U1 = Math.atan((1-f) * Math.tan(OpenLayers.Util.rad(p1.lat)));    var U2 = Math.atan((1-f) * Math.tan(OpenLayers.Util.rad(p2.lat)));    var sinU1 = Math.sin(U1), cosU1 = Math.cos(U1);    var sinU2 = Math.sin(U2), cosU2 = Math.cos(U2);    var lambda = L, lambdaP = 2*Math.PI;    var iterLimit = 20;    while (Math.abs(lambda-lambdaP) > 1e-12 && --iterLimit>0) {        var sinLambda = Math.sin(lambda), cosLambda = Math.cos(lambda);        var sinSigma = Math.sqrt((cosU2*sinLambda) * (cosU2*sinLambda) +        (cosU1*sinU2-sinU1*cosU2*cosLambda) * (cosU1*sinU2-sinU1*cosU2*cosLambda));        if (sinSigma==0) return 0;  // co-incident points        var cosSigma = sinU1*sinU2 + cosU1*cosU2*cosLambda;        var sigma = Math.atan2(sinSigma, cosSigma);        var alpha = Math.asin(cosU1 * cosU2 * sinLambda / sinSigma);        var cosSqAlpha = Math.cos(alpha) * Math.cos(alpha);        var cos2SigmaM = cosSigma - 2*sinU1*sinU2/cosSqAlpha;        var C = f/16*cosSqAlpha*(4+f*(4-3*cosSqAlpha));        lambdaP = lambda;        lambda = L + (1-C) * f * Math.sin(alpha) *        (sigma + C*sinSigma*(cos2SigmaM+C*cosSigma*(-1+2*cos2SigmaM*cos2SigmaM)));    }    if (iterLimit==0) return NaN  // formula failed to converge    var uSq = cosSqAlpha * (a*a - b*b) / (b*b);    var A = 1 + uSq/16384*(4096+uSq*(-768+uSq*(320-175*uSq)));    var B = uSq/1024 * (256+uSq*(-128+uSq*(74-47*uSq)));    var deltaSigma = B*sinSigma*(cos2SigmaM+B/4*(cosSigma*(-1+2*cos2SigmaM*cos2SigmaM)-        B/6*cos2SigmaM*(-3+4*sinSigma*sinSigma)*(-3+4*cos2SigmaM*cos2SigmaM)));    var s = b*A*(sigma-deltaSigma);    var d = s.toFixed(3)/1000; // round to 1mm precision    return d;};/** * Function: getParameters * Parse the parameters from a URL or from the current page itself into a  *     JavaScript Object. Note that parameter values with commas are separated *     out into an Array. *  * Parameters: * url - {String} Optional url used to extract the query string. *                If null, query string is taken from page location. *  * Returns: * {Object} An object of key/value pairs from the query string. */OpenLayers.Util.getParameters = function(url) {    //if no url specified, take it from the location bar    url = url || window.location.href    if(url == null) {        url = window.location.href;    }    //parse out parameters portion of url string    var paramsString = "";    if (OpenLayers.String.contains(url, '?')) {        var start = url.indexOf('?') + 1;        var end = OpenLayers.String.contains(url, "#") ?                    url.indexOf('#') : url.length;        paramsString = url.substring(start, end);    }            var parameters = {};    var pairs = paramsString.split(/[&;]/);    for(var i = 0; i < pairs.length; ++i) {        var keyValue = pairs[i].split('=');        if (keyValue[0]) {            var key = decodeURIComponent(keyValue[0]);            var value = keyValue[1] || ''; //empty string if no value            //decode individual values            value = value.split(",");            for(var j=0; j < value.length; j++) {                value[j] = decodeURIComponent(value[j]);            }            //if there's only one value, do not return as array                                if (value.length == 1) {                value = value[0];            }                                        parameters[key] = value;         }     }    return parameters;};/** * Function: getArgs * Deprecated - Will be removed in 3.0.  *     Please use instead OpenLayers.Util.getParameters *  * Parameters: * url - {String} Optional url used to extract the query string. *                If null, query string is taken from page location. *  * Returns: * {Object} An object of key/value pairs from the query string. */OpenLayers.Util.getArgs = function(url) {    var err = "The getArgs() function is deprecated and will be removed " +            "with the 3.0 version of OpenLayers. Please instead use " +            "OpenLayers.Util.getParameters().";    OpenLayers.Console.warn(err);    return OpenLayers.Util.getParameters(url);};/** * Property: lastSeqID * {Integer} The ever-incrementing count variable. *           Used for generating unique ids. */OpenLayers.Util.lastSeqID = 0;/** * Function: createUniqueID *  * Parameters: * prefix {String} String to prefix unique id.  *                 If null, default is "id_" *  * Returns: * {String} A unique id string, built on the passed in prefix */OpenLayers.Util.createUniqueID = function(prefix) {    if (prefix == null) {        prefix = "id_";    }    OpenLayers.Util.lastSeqID += 1;     return prefix + OpenLayers.Util.lastSeqID;        };/** * Constant: INCHES_PER_UNIT * {Object} Constant inches per unit -- borrowed from MapServer mapscale.c */OpenLayers.INCHES_PER_UNIT = {     'inches': 1.0,    'ft': 12.0,    'mi': 63360.0,    'm': 39.3701,    'km': 39370.1,    'dd': 4374754};OpenLayers.INCHES_PER_UNIT["in"]= OpenLayers.INCHES_PER_UNIT.inches;OpenLayers.INCHES_PER_UNIT["degrees"] = OpenLayers.INCHES_PER_UNIT.dd;/**  * Constant: DOTS_PER_INCH * {Integer} 72 (A sensible default) */OpenLayers.DOTS_PER_INCH = 72;/** * Function: normalzeScale *  * Parameters: * scale - {float} *  * Returns: * {Float} A normalized scale value, in 1 / X format.  *         This means that if a value less than one ( already 1/x) is passed *         in, it just returns scale directly. Otherwise, it returns  *         1 / scale */OpenLayers.Util.normalizeScale = function (scale) {    var normScale = (scale > 1.0) ? (1.0 / scale)                                   : scale;    return normScale;};/** * Function: getResolutionFromScale *  * Parameters: * scale - {Float} * units - {String} Index into OpenLayers.INCHES_PER_UNIT hashtable. *                  Default is degrees *  * Returns: * {Float} The corresponding resolution given passed-in scale and unit  *         parameters. */OpenLayers.Util.getResolutionFromScale = function (scale, units) {    if (units == null) {        units = "degrees";    }    var normScale = OpenLayers.Util.normalizeScale(scale);    var resolution = 1 / (normScale * OpenLayers.INCHES_PER_UNIT[units]                                    * OpenLayers.DOTS_PER_INCH);    return resolution;};/** * Function: getScaleFromResolution *  * Parameters: * resolution - {Float} * units - {String} Index into OpenLayers.INCHES_PER_UNIT hashtable. *                  Default is degrees *  * Returns: * {Float} The corresponding scale given passed-in resolution and unit  *         parameters. */OpenLayers.Util.getScaleFromResolution = function (resolution, units) {    if (units == null) {        units = "degrees";    }    var scale = resolution * OpenLayers.INCHES_PER_UNIT[units] *                    OpenLayers.DOTS_PER_INCH;    return scale;};/** * Function: safeStopPropagation * Deprecated. *  * This function has been deprecated. Please use directly  *     OpenLayers.Event.stop() passing 'true' as the 2nd  *     argument (preventDefault) *  * Safely stop the propagation of an event *without* preventing *   the default browser action from occurring. *  * Parameter: * evt - {Event} */OpenLayers.Util.safeStopPropagation = function(evt) {    OpenLayers.Event.stop(evt, true);};/** * Function: pagePositon * Calculates the position of an element on the page.  * * Parameters: * forElement - {DOMElement} *  * Returns:

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕精品三区| 亚洲精品第一国产综合野| 午夜精品久久久久久久99樱桃 | 欧美变态口味重另类| 国产麻豆日韩欧美久久| 中文字幕一区不卡| 91精品国产色综合久久不卡蜜臀| 天天综合天天综合色| 久久久久久久久久久久电影| 国产一区二区三区在线观看免费| 国产精品国产a| 欧美一区二区成人6969| 成人爽a毛片一区二区免费| 亚洲国产成人av网| 久久精品夜夜夜夜久久| 欧美午夜影院一区| 成人深夜在线观看| 国产九色sp调教91| 美脚の诱脚舐め脚责91| 亚洲欧美色综合| 成人欧美一区二区三区| 亚洲久本草在线中文字幕| 欧美色图片你懂的| 一本高清dvd不卡在线观看| 精品制服美女久久| 麻豆精品国产传媒mv男同| 亚洲国产wwwccc36天堂| 自拍av一区二区三区| 最近中文字幕一区二区三区| 国产嫩草影院久久久久| 久久影院电视剧免费观看| 久久综合国产精品| 国产精品久久久久久久第一福利| 久久夜色精品国产噜噜av| 国产清纯在线一区二区www| 欧美一级淫片007| 日韩精品综合一本久道在线视频| 日韩三级免费观看| 欧美一区三区二区| 日韩精品综合一本久道在线视频| 精品对白一区国产伦| 国产精品少妇自拍| 亚洲男同1069视频| 日韩黄色免费网站| 黄色日韩网站视频| 色综合 综合色| 欧美一区二区三区在线视频| 久久天堂av综合合色蜜桃网| 亚洲一区二区在线观看视频 | 欧美精品一区二区三区久久久 | 欧美va天堂va视频va在线| 国产欧美日韩中文久久| 亚洲美女视频在线观看| 亚洲激情网站免费观看| 日本伊人精品一区二区三区观看方式| 天使萌一区二区三区免费观看| 久久se这里有精品| av动漫一区二区| 日韩三级免费观看| 亚洲3atv精品一区二区三区| 国产精品888| 久久综合中文字幕| 日韩中文字幕不卡| 欧美视频一区二区三区| 亚洲欧美另类久久久精品2019| 精品一二线国产| 91精品午夜视频| 麻豆极品一区二区三区| 久久久久久亚洲综合影院红桃| 午夜日韩在线电影| 欧美日韩高清一区二区不卡 | 午夜国产精品一区| 91精品国产色综合久久| 日本视频中文字幕一区二区三区| 欧美高清视频一二三区| 久久精品99久久久| 亚洲国产精品成人久久综合一区| 成人av电影在线观看| 一区二区三区四区高清精品免费观看 | 日韩欧美国产午夜精品| 精品亚洲国产成人av制服丝袜 | 国产乱码精品一品二品| 日本一区二区三区四区| 91在线播放网址| 日韩av在线播放中文字幕| 欧美大片免费久久精品三p | 成人中文字幕在线| 亚洲bt欧美bt精品777| 久久这里只有精品首页| av电影一区二区| 婷婷久久综合九色国产成人| 亚洲精品在线三区| 777精品伊人久久久久大香线蕉| 国产成人8x视频一区二区| 亚洲图片激情小说| 26uuu成人网一区二区三区| 99久久精品国产精品久久| 天天操天天综合网| 亚洲高清视频中文字幕| 欧美国产日韩在线观看| 精品国产乱码久久久久久闺蜜| 欧美丝袜丝交足nylons图片| av电影在线不卡| 99久久国产综合精品麻豆| 国产精一区二区三区| 七七婷婷婷婷精品国产| 亚洲一区二区四区蜜桃| 亚洲激情av在线| 亚洲成人高清在线| 亚洲欧洲一区二区三区| 国产精品久久久久久久久久免费看| 欧美成人video| 日韩欧美国产综合| 国产欧美一区二区在线观看| 中文字幕欧美国产| 亚洲激情图片小说视频| 天天影视涩香欲综合网| 日韩av一区二区三区四区| 精品一区二区三区久久| 国模少妇一区二区三区| 成人激情小说网站| 欧美性大战久久久久久久| 欧美色图第一页| 国产亚洲美州欧州综合国| 中文字幕一区二区日韩精品绯色 | 亚洲女人****多毛耸耸8| 亚洲日本va午夜在线影院| 一区二区三区不卡在线观看| 五月天激情综合| 成人免费观看av| 欧美日韩精品二区第二页| 精品国产免费久久| 一区二区三区四区亚洲| 国产一区二区在线电影| 欧美视频三区在线播放| 久久亚洲私人国产精品va媚药| 综合网在线视频| 国产激情视频一区二区在线观看 | 亚洲人午夜精品天堂一二香蕉| 日韩电影在线一区| 91香蕉视频黄| 国产精品久久久久久久浪潮网站| 蜜桃久久久久久| 91麻豆精东视频| 欧美一级理论片| 亚洲第一在线综合网站| 成人毛片视频在线观看| 亚洲精品一区二区精华| 日韩高清不卡在线| 欧美日韩中文精品| 日韩电影免费在线观看网站| 成人免费视频视频在线观看免费| 久久无码av三级| 成人av在线播放网站| 国产精品美女久久久久久 | 国产精品一区二区三区网站| 欧美一区二区性放荡片| 美女高潮久久久| 国产日本欧美一区二区| 国产ts人妖一区二区| 亚洲欧洲三级电影| 欧美日韩中文国产| 狠狠色狠狠色合久久伊人| 久久久99精品免费观看不卡| 菠萝蜜视频在线观看一区| 一区二区三区波多野结衣在线观看| 在线视频一区二区免费| 日韩高清不卡一区二区| 久久久久亚洲综合| 欧美麻豆精品久久久久久| 国产一区二区三区在线看麻豆| 中文字幕va一区二区三区| 99国产精品久久久久| 久久成人久久爱| 中文字幕av一区二区三区| 一本大道久久a久久精品综合| 日韩中文字幕1| 1024精品合集| 久久亚洲精品小早川怜子| 日本精品免费观看高清观看| 日本不卡高清视频| 亚洲三级电影网站| 日韩欧美中文字幕制服| 91网页版在线| 国产99精品国产| 国产一区二区在线免费观看| 日韩精品国产精品| 国产精品国产自产拍在线| 2021中文字幕一区亚洲| 欧美日本一道本| 欧美午夜精品一区二区三区| 国产成人午夜电影网| 国产乱一区二区| 精品综合久久久久久8888| 黑人巨大精品欧美一区| 午夜成人在线视频| 首页综合国产亚洲丝袜| 亚洲bdsm女犯bdsm网站| 亚洲成a人v欧美综合天堂| 亚洲精品免费在线|