posts - 119, comments - 62, trackbacks - 0, articles - 0

          根據arcIMS代碼說明,掌握邏輯后,mapinfo,mapx,mo等實現就容易了。

          開始前,大家首先要對arcims中,如何記錄地圖位置熟悉。

          抓一副全圖,存成gif文件,作為鷹眼圖底圖。

          var ? fullOVLeft ? = ? 116; ? ? ? ? //全圖時,地圖最左邊代表的經度 ? ? ? 當你用其他坐標體系的坐標時,這個值不同。一般,我們熟悉經緯度。
          var ? fullOVRight ? = ? 117; ? ? ? //全圖時,地圖最右邊代表的經度
          var ? fullOVTop ? = ? 40; ? ? ? ? ? ? //全圖時,地圖最上邊代表的經度
          var ? fullOVBottom ? = ? 39.6; ? //全圖時,地圖最下邊代表的經度

          //點擊鷹眼, ? 入口參數是 ? 屏幕 ? 鼠標的坐標
          function ? ovMapClick(x,y) ? {
          var ? ovWidth ? = ? 150; ? ? ? ? //我們鷹眼圖的寬度 ? 單位px,是屏幕單位
          var ? ovHeight ? = ? 100; ? ? ? //鷹眼圖的高度 ? ? ? ? 單位px,是屏幕單位

          //下面兩行代碼得到,為什么要兩個呢??赡芪覀冿@示的時候,把服務器返回的圖片壓縮了。
          //每 ? px單位的屏幕寬度 ? 代表的 ? 經度距離
          var ? ovXincre ? = ? fullOVWidth ? / ? ovWidth;
          //每 ? px單位的屏幕寬度 ? 代表的 ? 緯度距離
          var ? ovYincre ? = ? fullOVHeight ? / ? ovHeight;
          ? ? ? ? ? ? ?
          var ? ovX ? = ? x;
          var ? ovY ? = ? ovHeight ? - ? y;//注意,屏幕 ? 和 ? 地理 ? 坐標原點不同。在其他文章中提到過。
          ? ? ? ? ? ? ? ? //下面兩行代碼我們得到了 ? 鼠標點擊位置代表的 ? 地理位置。(經緯度)
          var ? ovmapX ? = ? ovX ? * ? ovXincre ? + ? fullOVLeft;
          var ? ovmapY ? = ? ovY ? * ? ovYincre ? + ? fullOVBottom;
          //arcims帶的,當我們想看上一操作的地圖時,這些保存的東西就有用咯。
          saveLastExtent();
          ? ? ? ? ? ? ? ? //下面代碼表示 ? 改變地圖的中心點,但是room ? 值不變。arcIMS中,是以下實現的。在
          mapxtreme中,一個函數就OK了。

          ? ? ? ? ? ? ? ? //熟悉arcIMS的,以下代碼可能明白。
          eLeft ? = ? ovmapX ? - ? xHalf;
          eRight ? = ? ovmapX ? + ? xHalf;
          eTop ? = ? ovmapY ? + ? yHalf;
          eBottom ? = ? ovmapY ? - ? yHalf;
          sendMapXML();

          }

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 象山县| 常德市| 刚察县| 锡林浩特市| 佳木斯市| 西乌珠穆沁旗| 扶风县| 东乡族自治县| 庆安县| 昌乐县| 威信县| 靖边县| 尖扎县| 邻水| 永兴县| 莱芜市| 农安县| 沙田区| 昌江| 田东县| 滕州市| 顺平县| 水富县| 寻乌县| 台东县| 兴山县| 西盟| 石棉县| 三河市| 潜江市| 西宁市| 丰镇市| 深圳市| 米林县| 多伦县| 临汾市| 怀宁县| 安远县| 安吉县| 兴安盟| 若羌县|