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();

          }

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


          網站導航:
           
          主站蜘蛛池模板: 新巴尔虎右旗| 锡林浩特市| 尚志市| 阿坝县| 大同县| 商河县| 剑阁县| 黔西县| 电白县| 常宁市| 潍坊市| 新竹市| 三穗县| 饶河县| 山阴县| 襄樊市| 大庆市| 墨竹工卡县| 皋兰县| 高密市| 同德县| 肇州县| 崇义县| 清徐县| 章丘市| 无棣县| 上思县| 汶川县| 南岸区| 施秉县| 乌兰县| 礼泉县| 千阳县| 叙永县| 宁阳县| 郸城县| 丽水市| 故城县| 石泉县| 渭南市| 东台市|