<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    hello world

    隨筆 - 2, 文章 - 63, 評論 - 0, 引用 - 0
    數據加載中……

    【轉】geoserver掃盲 openlayers相關

    轉自http://www.cnblogs.com/lzlynn/archive/2008/07/29/1255702.html

    WMS: Web Map Service Web 地圖服務

    l  利用具有地理空間位置信息的數據制作地圖。其中將地圖定義為地理數據可視的表現。這個規范定義了三個操作:

    n  GetCapabitities 返回服務級元數據,它是對服務信息內容和要求參數的一種描述;

    n  GetMap 返回一個地圖影像,其地理空間參考和大小參數是明確定義了的;

    n  GetFeatureInfo (可選)返回顯示在地圖上的某些特殊要素的信息

     

    WFS: Web Feature Service Web 要素服務)

    l  Web 地圖服務返回的是圖層級的地圖影像,

    l  Web 要素服務( WFS )返回的是要素級的 GML 編碼 ,并提供對要素的增加、修改、刪除等事務操作,是對 Web 地圖服務的進一步深入。 OGC Web 要素服務允許客戶端從多個 Web 要素服務中取得使用地理標記語言( GML )編碼的地理空間數據,定義了五個操作:

    n  GetCapabilites    返回 Web 要素服務性能描述文檔(用 XML 描述);

    n  DescribeFeatureType    返回描述可以提供服務的任何要素 結構的 XML 文檔;

    n  GetFeature    一個獲取要素實例的請求提供服務;

    n  Transaction    為事務請求提供服務;

    n  LockFeature    處理在一個事務期間對一個或多個要素類型實例上鎖的請求。

     

    WFS-T: Web Map Service-Transactional. 允許用戶以可傳輸的塊編輯地理數據。

     

    WCS Web Coverage Service Web 覆蓋服務)

    Web 覆蓋服務( WCS )面向空間影像數據,它將包含地理位置值的地理空間數據作為 覆蓋( Coverage 在網上相互交換。

    l  網絡覆蓋服務由三種操作組成: GetCapabilities GetCoverage DescribeCoverageType

    n  GetCapabilities  操作返回描述服務 和數據集的 XML 文檔。

    n  GetCoverage 操作是在 GetCapabilities 確定什么樣的查詢可以執行、什么樣的數據能夠獲取之后執行的,它使用通用的覆蓋格式返回地理位置的值或屬性。

    n  DescribeCoverageType 操作允許客戶端請求由具體的 WCS 服務器提供的任一覆蓋層的完全描述。

     

    GML: Geography Markup Language. 一種用于描述地理數據的 XML

     

    OGC ——Open Geospatial Consortium—— 開放地理信息聯盟

     

    總之 GeoServer 是您需要顯示地圖在網頁的那些工具的當中一個,用戶可以縮放并且移動。可以與一些客戶端聯合使用,比如: MapBuilder (for web pages), UDig, GVSig, 等等。 對標準的使用允許信息從 GeoServer 到其它地理信息可以很容易地被結合。

    如果你對 GeoServer 發出一個 WMS 請求,你就可能得到如下的一張圖:

     

    查看 Demo

    welcome 界面中單擊 demo page 鏈接,進入頁面后單擊 WFS-T 鏈接就可以啟動一個名叫 MapBuilder 的基于 Javascript 的地圖地圖編輯器。啟動 MapBuilder 后我們可以看到一張樣圖,那就就從它開始吧!用其提供的工具對圖進行修改。自己練習。

     

    關于 geoserver 開發

    geoserver 只能用 j2ee 開發

    geoserver 是符合 ogc   wms/wfs/wcs 標準的地圖服務器,建設一套完整的 webgis 系統還需要客戶端配合, mapbuilder openlayers 是非常好的兩個選擇。對于較大的項目,空間數據庫也是必不可少的, geoserver 支持商業的 oracle db2 ,開源的 postgis mysql

    扯得更遠一點, geoserver 支持 google   map google   earth

     

    Geotools

    外文官網 http://geotools.codehaus.org/

     

    Geotools 是開源的 Java 代碼庫,在 GIS 中提供對地理空間數據的標準操作。簡單說,它就是一個中間件,提供的功能符合 OGC 規范,且與 GeoAPI 有密切的聯系。它支持的數據格式有 Shapefile GML WFS PostGIS Oracle Spatial ArcSDE MySQL GeoMedia MapInfo 等。

    利用 Geotools 能夠實現:

    l  格網覆蓋 Grid coverages ——柵格數據,

    l  坐標系統轉換 Coordinate Transformation

    l  數據渲染 Renderers

    l  格式化 Styling ——符號化數據集等功能。

     

    WFS 地址

    把下面地址中的 HighwayInterchange 改成自己創建的 featuretype 的名字,在瀏覽器中查看, WFS URL

     

    http://localhost:8080/geoserver/wfs?request=getfeature&service=wfs&version=1.0.0&typename=States

     

     

    下面地址的 youtian 改成自己的 FeatureType 名字,就是自己的 WFS 地址

     

    http://localhost:8080/geoserver/wms/kml_reflect?layers=youtian

     

     

    Openlayers dom 結構

     

    OpenLayers 項目分析——(一)項目介紹

    (OpenLayers JavaScript Mapping Library)

     

    (一)項目介紹

    網址: http://www.openlayers.org/

     

       OpenLayers 是由 MetaCarta 公司開發的,用于 WebGIS 客戶端的 JavaScript 包,目前的最高版本是 2.5 V ,通過 BSD License 發行。它實現訪問地理空間數據的方法都符合行業標準,比如 OpenGIS WMS WFS 規范, OpenLayers 采用純面向對象的 JavaScript 方式開發,同時借用了 Prototype 框架和 Rico 庫的一些組件。

     

      采用 OpenLayers 作為客戶端不存在瀏覽器依賴性。由于 OpenLayers 采用 JavaScript 語言實現,而應用于 Web 瀏覽器中的 DOM (文檔對象模型)由 JavaScript 實現,同時, Web 瀏覽器(比如 IE FF 等)都支持 DOM

     

       OpenLayers APIs 采用動態類型腳本語言 JavaScript 編寫,實現了類似與 Ajax 功能的無刷新更新頁面,能夠帶給用戶豐富的桌面體驗(它本身就有一個 Ajax 類,用于實現 Ajax 功能)。

     

      目前, OpenLayers 所能夠支持的 Format 有: XML GML GeoJSON GeoRSS JSON KML WFS WKT(Well-Known Text) 。在 OPenlayers.Format 名稱空間下的各個類里,實現了具體讀/寫這些 Format 的解析器。

     

       OpenLayers 所能夠利用的地圖數據資源“豐富多彩”,在這方面提供給擁護較多的選擇,比如 WMS WFS GoogleMap KaMap MSVirtualEarth WorldWind 等等。當然,也可以用簡單的圖片作為源。

     

    第一次使用 OpenLayers

     

      先到它的官方網站 http://www.openlayers.org 下載他的壓縮包,解壓后可以看到其中的一些目錄和文件,拷貝目錄下的 OpenLayer.js 、根目錄下的 lib 目錄、根目錄下的 img 目錄到你網站的 Scripts 目錄下 (當然,這個只是例子,您網站的目錄結構您自己說得算,只要保證 OpenLayers.js /lib /img 在同一目錄中即可)。 然后,創建一個 index.html 作為查看地圖的頁面,導入 OpenLayers.js 和你將要創建的 js

     

      我們以加載 WMS GML 文件為例。 

     

        <script src="../lib/OpenLayers.js"></script>

       <script type="text/javascript">

            var lon = 5;    //x-axis coodinate in map units

            var lat = 40;   //y-axis coordinate in map units

            var zoom = 5;   //number of zoom levels

            var map, layer;      // 聲明變量 map layer ;等同于 var map = null; var layer = null;

     

            map = new OpenLayers.Map('map');

            // 實例化一個地圖類 OpenLayers.Map

     

            layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",

                        "http://labs.metacarta.com/wms/vmap0", {layers: 'basic'} );

            // WMS 的格式實例化圖層類 OpenLayers.Layer

     

            map.addLayer(layer);

            map.zoomToExtent(newOpenLayers.Bounds(-3.922119,44.335327,

            4.866943,49.553833));

         // Map 對象上加載 Layer 對象,并用 map.zoomToExtent 函數使地圖合適地顯示

     

         map.addLayer(new OpenLayers.Layer.GML("GML", "gml/polygon.xml"));

         // 再在剛加載的 WMS 文件上,加載一 GML 文件

     

      剩下的工作就是,加上一些控件 OpenLayers.Control 之類的東西,比如 LayerSwitcher 等。它們會在地圖瀏覽的“窗口”上增加一些工具欄或是“按鈕”,增加互動性和功能性。

     

      當然, Openlayers 中的東西遠不止這些,至于它的框架分析、 APIs 實現機制,會在后續文章中說出。寫這個的過程,也是一個學習的過程,其中難免有不妥之處,熱烈歡迎大家批評指正,相互交流。

    posted on 2010-04-09 10:21 聽風 閱讀(751) 評論(0)  編輯  收藏 所屬分類: JAVA

    主站蜘蛛池模板: 国产精品亚洲一区二区在线观看| 亚洲午夜精品久久久久久人妖| 亚洲综合久久一本伊伊区| 久别的草原电视剧免费观看| 亚洲乱码日产一区三区| 久久成人永久免费播放| 亚洲色婷婷综合久久| 中出五十路免费视频| 亚洲精品无码不卡在线播放HE | 国产精品亚洲A∨天堂不卡| 国产一级a毛一级a看免费人娇| 亚洲精品人成无码中文毛片| 成人片黄网站色大片免费观看cn| 在线观看亚洲av每日更新| 91成人免费观看在线观看| 亚洲国产成人精品不卡青青草原| 95免费观看体验区视频| 亚洲国产成AV人天堂无码| 免费视频中文字幕| 免费在线观看自拍性爱视频| 日韩精品亚洲aⅴ在线影院| 久久午夜夜伦鲁鲁片免费无码| 日韩亚洲Av人人夜夜澡人人爽| 五月亭亭免费高清在线| 亚洲一线产区二线产区区| 国产99视频精品免费视频7| 国产福利在线观看永久免费| 久久精品国产亚洲AV麻豆不卡| 1000部夫妻午夜免费 | 亚洲人成免费网站| 日韩免费视频在线观看| 四虎永久在线精品免费一区二区| 亚洲精品美女久久777777| 妻子5免费完整高清电视| 精品久久久久久久久亚洲偷窥女厕| 免费一级毛片在播放视频| 免费在线观影网站| 国产午夜亚洲精品| 亚洲欧洲∨国产一区二区三区| 69成人免费视频| 一级免费黄色毛片|