2015年2月16日月曜日

2 - ol3.2ex 60b - WMTS GetCapabilities parsing example 2

「wmts-capabilities.js(260-ol3ex.js)」は、マップを表示するための JavaScript ファイルです。

「WMTSCapabilities」
<?xml version="1.0" encoding="UTF-8"?>
<Capabilities
 xmlns="http://www.opengis.net/wmts/1.0"
 xmlns:ows="http://www.opengis.net/ows/1.1"
 xmlns:xlink="http://www.w3.org/1999/xlink"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:gml="http://www.opengis.net/gml"
 xsi:schemaLocation="http://www.opengis.net/wmts/1.0 http://schemas.opengis.net/wmts/1.0/wmtsGetCapabilities_response.xsd"
 version="1.0.0">
 <ows:ServiceIdentification>
  <ows:Title>Web Map Tile Service - GeoWebCache</ows:Title>
  <ows:ServiceType>OGC WMTS</ows:ServiceType>
  <ows:ServiceTypeVersion>1.0.0</ows:ServiceTypeVersion>
 </ows:ServiceIdentification>
 <ows:ServiceProvider>
  <ows:ProviderName>http://sdi.georchestra.org/geoserver/gwc/service/wmts</ows:ProviderName>
  <ows:ProviderSite xlink:href="http://sdi.georchestra.org/geoserver/gwc/service/wmts"/>
  <ows:ServiceContact>
   <ows:IndividualName>GeoWebCache User</ows:IndividualName>
  </ows:ServiceContact>
 </ows:ServiceProvider>
 <ows:OperationsMetadata>
  <ows:Operation name="GetCapabilities">
   <ows:DCP>
    <ows:HTTP>
     <ows:Get xlink:href="http://sdi.georchestra.org/geoserver/gwc/service/wmts?">
      <ows:Constraint name="GetEncoding">
       <ows:AllowedValues>
        <ows:Value>KVP</ows:Value>
       </ows:AllowedValues>
      </ows:Constraint>
     </ows:Get>
    </ows:HTTP>
   </ows:DCP>
  </ows:Operation>
  <ows:Operation name="GetTile">
   <ows:DCP>
    <ows:HTTP>
     <ows:Get xlink:href="http://sdi.georchestra.org/geoserver/gwc/service/wmts?">
      <ows:Constraint name="GetEncoding">
       <ows:AllowedValues>
        <ows:Value>KVP</ows:Value>
       </ows:AllowedValues>
      </ows:Constraint>
     </ows:Get>
    </ows:HTTP>
   </ows:DCP>
  </ows:Operation>
---

「260-ol3ex.js」
var parser = new ol.format.WMTSCapabilities();
/** ol.format.WMTSCapabilities
 * Format for reading WMTS capabilities data
 * WMTS capabilities データを読み込むためのフォーマット。
 * (ol3 API)
 */
// $.ajax('data/WMTSCapabilities.xml').then(function(response) {
$.ajax('v3.2.0/examples/data/WMTSCapabilities.xml').then(function(response) {
/** jQuery.ajax()
 * Perform an asynchronous HTTP (Ajax) request.
 * 非同期 HTTP(Ajax)リエストを実行します。
 * (jQuery[http://api.jquery.com/jquery.ajax/])
 */
/** deferred.then()
 * Add handlers to be called when the Deferred object is 
 * resolved, rejected, or still in progress. 
 * deferred オブジェクトが resolved、rejected か、まだ処理途中
 * (progress)のとき呼び出されるハンドラを追加します。
 * (juery[http://api.jquery.com/deferred.then/])
 */
 var result = parser.read(response);
 /** read()
  * Read a WMTS capabilities document.
  * (ol3 API[説明は Stable Only のチェックを外すと表示])
  */
 $('#log').html(window.JSON.stringify(result, null, 2));
 /** .html()
  * Get the HTML contents of the first element in the 
  * set of matched elements or set the HTML contents of 
  * every matched element.
  * 一致した要素のセット、または、すべての一致した要素のHTML
  * コンテンツのセットの最初の要素のHTMLコンテンツを取得します。
  * (jQuery[http://api.jquery.com/html/])
  */
 /** JSON.stringify()
  * The JSON.stringify() method converts a JavaScript 
  * value to a JSON string, optionally replacing values 
  * if a replacer function is specified, or optionally 
  * including only the specified properties if a 
  * replacer array is specified.
  * JSON.stringify()メソッドは、JavaScript の値を JSON 文
  * 字列に変換します。replacer function が指定されている場合は
  * 必要に応じて値を置換し、または、replacer 配列が指定されている
  * 場合は必要に応じて指定されたプロパティのみを含みます。
  * (MDN[https://developer.mozilla.org/en-US/docs/Web/
  * JavaScript/Reference/Global_Objects/JSON/stringify])
  */
});


.then() に関しては、
「爆速でわかるjQuery.Deferred超入門(http://techblog.yahoo.co.jp/programming/jquery-deferred/)」なども参考にしてください。

0 件のコメント: