ラベル Quick Start の投稿を表示しています。 すべての投稿を表示
ラベル Quick Start の投稿を表示しています。 すべての投稿を表示

2018年8月23日木曜日

OpenLayers5 - Quick Start

Quick Start(http://openlayers.org/en/latest/doc/quickstart.html)を参考に、OpenLayers を使ってみます。

Eclipse にプロジェクトを作成して試してみました。
Eclipseを起動します。

user@deb9-vmw:~$ eclipse

プロジェクトを作成します。
a メニューの「ファイル」 -> 「新規」 -> 「静的 Web プロジェクト」をクリックします。(または、「新規 」ボタン -> 「静的 Web プロジェクト」をクリックします。)


b 「新規静的 Web プロジェクト」ウィンドウで「プロジェクト名」(例えばol5proj)を入力して「完了」ボタンをクリックします。




Quick Start

This primer shows you how to put a simple map on a web page.

この入門は、ウェブページに単純なマップを置く方法を示します。

For production, we strongly recommend bundling the application together with its dependencies, as explained in the Building an OpenLayers Application tutorial.

製作のために、Building an OpenLayers Application tutorial に説明されているように、 アプリケーションを付属品とともにビルドすることを強く勧めます。

Put a map on a page

Below you'll find a complete working example. Create a new file, copy in the contents below, and open in a browser:

下記に完全に動作する例が見られます。新しいファイル(訳注:例えば、Eclipse の HTML ファイル)を作成し、コンテンツにコピーし、ブラウザで開きます。
<!doctype html>
<html lang="en">
 <head>
  <link rel="stylesheet" href="https://cdn.rawgit.com/openlayers/openlayers.github.io/master/en/v5.0.3/css/ol.css" type="text/css">
  <style>
   .map {
    height: 400px;
    width: 100%;
   }
  </style>
  <script src="https://cdn.rawgit.com/openlayers/openlayers.github.io/master/en/v5.0.3/build/ol.js"" type="text/javascript"></script>
  <title>OpenLayers example</title>
 </head>
 <body>
  <h2>My Map</h2>
  <div id="map" class="map"></div>
  <script type="text/javascript">
   var map = new ol.Map({
    target: 'map',
    layers: [
     new ol.layer.Tile({
      source: new ol.sourceOSM()
     })
    ],
    view: new ol.View({
     center: ol.proj.fromLonLat([37.41, 8.82]),
     zoom: 4
    })
   });
  </script>
 </body>
</html>

Understanding what is going on
どうなっているか理解する

To include a map a web page you will need 3 things:
地図をWebページに含めるには3つのことが必要になります:

1. Include OpenLayers
2. <div> map container
3. JavaScript to create a simple map

1. OpenLayers を読み込む。
2. <div>マップコンテナ。
3. 単純なマップを作成するための JavaScript.

Include OpenLayers
OpenLayers を読み込む

<script src="https://cdn.rawgit.com/openlayers/openlayers.github.io/master/en/v5.0.3/build/ol.js"></script>

The first part is to include the JavaScript library. For the purpose of this tutorial, here we simply point to the openlayers.org website to get the whole library. In a production environment, we would build a custom version of the library including only the module needed for our application.

最初の部分は、JavaScriptライブラリを読み込むためです。このチュートリアルの目的のために、ここではライブラリ全体を取得するために openlayers.org ウェブサイトを単に示しています。本番環境では、アプリケーションに必要なモジュールだけを含むライブラリのカスタムバージョンをビルドしています。

Optional: If the application is intended to run on old platforms like Internet Explorer or Android 4.x, another script needs to be included before OpenLayers:

オプション: アプリケーションが Internet Explorer や Android 4.x などの古いプラットフォームで実行される場合は、OpenLayers の前に別のスクリプトが読み込まれる必要があります。

<script src="https://cdn.polyfill.io/v2/polyfill.min.js?features=requestAnimationFrame,Element.prototype.classList"></script>

<div> to contain the map
map を含む <div>

<div id="map" class="map"></div>

The map in the application is contained in a <div> HTML element. Through this <div> the map properties like width, height and border can be controlled through CSS. Here's the CSS element used to make the map 400 pixels high and as wide as the browser window.

アプリケーション内の map(マップオブジェクト)は <div> HTML エレメントに入れます。この <div> により、幅、高さ、および境界線のような map のプロパティは、CSSで制御できます。ここに示したのは、400ピクセルの高さとブラウザウィンドウと同じ幅の地図を作るために使用されるCSSエレメントです。
<style>
 .map {
  height: 400px;
  width: 100%;
 }
</style>

JavaScript to create a simple map
単純なマップを作成するための JavaScript
var map = new ol.Map({
 target: 'map',
 layers: [
  new ol.layer.Tile({
   source: new ol.source.OSM()
  })
 ],
 view: new ol.View({
  center: ol.proj.fromLonLat([37.41, 8.82]),
  zoom: 4
 })
});

With this JavaScript code, a map object is created with an OSM layer zoomed on the African East coast. Let's break this down:

この JavaScript コードを使用して、map オブジェクトは、アフリカ東海岸にズームされた OSM レイヤで作成されます。それでは、これを詳しくみてみましょう。

The following line creates an OpenLayers Map object. Just by itself, this does nothing since there's no layers or interaction attached to it.

次の行は、OpenLayers の Map オブジェクトを作成します。レイヤやそれに接続したインタラクションがないので、これは、それ自体だけでは、何もしません。

var map = new ol.Map({ ... });

To attach the map object to the <div>, the map object takes a target into arguments. The value is the id of the <div>:

map オブジェクトを <div> タグに配置するには、map オブジェクトは引数に、target を取ります。<div> の id 属性の(属性)値になります。

target: 'map'

The layers: [ ... ] array is used to define the list of layers available in the map. The first and only layer right now is a tiled layer:

layers:[...] 配列は、マップで使用可能なレイヤのリストを定義するために使用されます。最初で唯一のレイヤは今のところタイルレイヤです。
layers: [
 new ol.layer.Tile({
  source: new ol.source.OSM()
 })
]
Layers in OpenLayers are defined with a type (Image, Tile or Vector) which contains a source. The source is the protocol used to get the map tiles.

OpenLayers のレイヤは、ソースを含む形式(画像やタイル、ベクタ)で定義されます。 ソースは、マップタイルを取得するために使用されるプロトコルです

The next part of the Map object is the View. The view allows to specify the center, resolution, and rotation of the map. The simplest way to define a view is to define a center point and a zoom level. Note that zoom level 0 is zoomed out.

Map オブジェクトの次の部分は、View です。view は、地図の中心、解像度、回転を指定することができます。view を定義する最も簡単な方法は、中心点とズームレベルを定義することです。ズームレベル0はズームアウトされていることに注意してください。
view: new ol.View({
 center: ol.proj.fromLonLat([37.41, 8.82]),
 zoom: 4
})
You will notice that the center specified is in lon/lat coordinates (EPSG:4326). Since the only layer we use is in Spherical Mercator projection (EPSG:3857), we can reproject them on the fly to be able to zoom the map on the right coordinates.

指定された中心は、緯度/経度の座標(EPSG:4326)であることがわかります。 使用する唯一のレイヤが球状メルカトル図法(EPSG:3857)なので、正しい座標にマップをズームする(焦点を合わす)ことができるように、それらを即座に再投影することができます。

2017年6月10日土曜日

OpenLayers4 Quick Start

Quick Start(http://openlayers.org/en/latest/doc/quickstart.html)を参考に、OpenLayers を使ってみます。

「Put a map on a page」のコードを新しいファイル(例えば、Eclipse の HTML ファイル)にコピーします。
<!doctype html>
<html lang="en">
 <head>
  <link rel="stylesheet" href="https://openlayers.org/en/v4.1.1/css/ol.css" type="text/css">
  <style>
   .map {
    height: 400px;
    width: 100%;
   }
  </style>
  <script src="https://openLayers.org/en/v4.1.1/build/ol.js" type="text/javascript"></script>
  <title>OpenLayers example</title>
 </head>
 <body>
  <h2>My Map</h2>
  <div id="map" class="map"></div>
  <script type="text/javascript">
   var map = new ol.Map({
    target: 'map',
    layers: [
     new ol.layer.Tile({
      source: new ol.sourceOSM()
     })
    ],
    view: new ol.View({
     center: ol.proj.fromLonLat([37.41, 8.82]),
     zoom: 4
    })
   });
  </script>
 </body>
</html>


どうなっているか理解する
地図をWebページに表示するにはあなたは3つのことが必要になります:
1 OpenLayers を読み込む。
2 <div>マップコンテナ。
3 単純なマップを作成するための JavaScript.

OpenLayers を読み込む

<script src="https://openlayers.org/en/v4.1.1/build/ol.js" type="text/javascript"></script>

最初の部分は、JavaScriptライブラリを読み込んでいます。このチュートリアルのために、ここでは簡単にライブラリ全体を取得するための openlayers.org ウェブサイトを設定しています。本番環境では、我々のアプリケーションに必要なモジュールのみを含むライブラリのカスタムバージョンを構築しています。

オプション: アプリケーションを Internet Explorer や Android 4.x などの古いプラットフォームで実行する場合は、OpenLayers の前に別のスクリプトを組み込む必要があります。

<script src="https://cdn.polyfill.io/v2/polyfill.min.js?features=requestAnimationFrame,Element.prototype.classList"></script>

map を含む <div>

<div id="map" class="map"></div>

アプリケーション内の map(マップオブジェクト)は <div> HTML 要素に入れます。この <div> により、幅、高さ、および境界線のような map のプロパティは、CSSで制御できます。ここに示したのは、400ピクセルの高さとブラウザウィンドウと同じ幅の地図を作るために使用されるCSS要素です。
<style>
 .map {
  height: 400px;
  width: 100%;
 }
</style>

単純なマップを作成するための JavaScript

var map = new ol.Map({
 target: 'map',
 layers: [
  new ol.layer.Tile({
   source: new ol.source.OSM()
  })
 ],
 view: new ol.View({
  center: ol.proj.fromLonLat([37.41, 8.82]),
  zoom: 4
 })
});

この JavaScript コードを使用すると、map オブジェクトは、東アフリカの海岸にズームされた OSM レイヤで作成されます。それでは、これを詳しくみてみましょう。

次の行は、OpenLayers の Map オブジェクトを作成します。レイヤやそれに接続した対話がないなら、これは、それ自体だけでは、何もしません。

var map = new ol.Map({ ... });

map オブジェクトを <div> タグに配置するには、map オブジェクトの引数に、target を入れます。<div> タグの id 属性の(属性)値になります。

target: 'map'

layers:[...] 配列は、マップで使用可能なレイヤのリストを定義するために使用されてます。最初で唯一のレイヤは今のところタイル(画像)レイヤです。

layers: [
 new ol.layer.Tile({
  source: new ol.source.OSM()
 })
]

OpenLayers のレイヤは、ソースを含む形式(画像やタイル、ベクタ)で定義されています。 ソースは、マップタイルを取得するために使用されるプロトコルです。あなたはここから入手層ソースのリストを参照することもできます。

Map オブジェクトの次の部分は、View です。view は、地図の中心、解像度、回転を指定することができます。view を定義する最も簡単な方法は、中心点とズームレベルを定義することです。ズームレベル0はズームアウトされていることに注意してください。

view: new ol.View({
 center: ol.proj.fromLonLat([37.41, 8.82]),
 zoom: 4
})

指定された中心は、緯度/経度の座標(EPSG:4326)であることがわかります。 使用する唯一のレイヤが球状メルカトル図法(EPSG:3857)なので、即座に正しい座標にマップをズームする(焦点を合わす)ことができるように、それらを再投影することができます。

2014年9月8日月曜日

1 - ol3 2 - Quick Start

Quick Start(http://openlayers.org/en/v3.0.0/doc/quickstart.html)を参考に、OpenLayers 3 を使ってみます。

「Put a map on a page」のコードを新しいファイル(例えば、Eclipse の HTML ファイル)にコピーします。
<!doctype html>
<html lang="en">
 <head>
  <link rel="stylesheet" href="http://ol3js.org/en/v3.0.0/css/ol.css" type="text/css">
  <style>
   .map {
    height: 400px;
    width: 100%;
   }
  </style>
  <script src="http://ol3js.org/en/v3.0.0/build/ol.js" type="text/javascript"></script>
  <title>OpenLayers 3 example</title>
 </head>
 <body>
  <h2>My Map</h2>
  <div id="map" class="map"></div>
  <script type="text/javascript">
   var map = new ol.Map({
    target: 'map',
    layers: [
     new ol.layer.Tile({
      source: new ol.source.MapQuest({layer: 'sat'})
     })
    ],
    view: new ol.View({
     center: ol.proj.transform([37.41, 8.82], 'EPSG:4326', 'EPSG:3857'),
     zoom: 4
    })
   });
  </script>
 </body>
</html>


どうなっているか理解する
地図をWebページに表示するにはあなたは3つのことが必要になります:
1 OpenLayers を読み込む。
2 <div>マップコンテナ。
3 単純なマップを作成するための JavaScript.

OpenLayers を読み込む
<script src="http://ol3js.org/en/v3.0.0/build/ol.js" type="text/javascript"></script>

最初の部分は、JavaScriptライブラリを読み込んでいます。このチュートリアルのために、ここでは簡単にライブラリ全体を取得するための ol3js.org ウェブサイトを設定しています。本番環境では、我々のアプリケーションに必要なモジュールのみを含むライブラリのカスタムバージョンを構築しています。

map を含む <div>
<div id="map" class="map"></div>

アプリケーション内の map(マップオブジェクト)は <div> HTML 要素に入れます。この <div> により、幅、高さ、および境界線のような map のプロパティは、CSSで制御できます。ここに示したのは、400ピクセルの高さとブラウザウィンドウと同じ幅の地図を作るために使用されるCSS要素です。
<style>
 .map {
  height: 400px;
  width: 100%;
 }
</style>

単純なマップを作成するための JavaScript
var map = new ol.Map({
 target: 'map',
 layers: [
  new ol.layer.Tile({
   source: new ol.source.MapQuest({layer: 'sat'})
  })
 ],
 view: new ol.View({
  center: ol.proj.transform([37.41, 8.82], 'EPSG:4326', 'EPSG:3857'),
  zoom: 4
 })
});

この JavaScript コードを使用すると、map オブジェクトは、東アフリカの海岸にズームされたマップクエストオープンエアリアル(MapQuest Open Aerial)レイヤで作成されます。それでは、これを詳しくみてみましょう。

次の行は、OpenLayers の Map オブジェクトを作成します。レイヤやそれに接続した対話がないなら、これは、それ自体だけでは、何もしません。
var map = new ol.Map({ ... });

map オブジェクトを <div> タグに配置するには、map オブジェクトの引数に、target を入れます。<div> タグの id 属性の(属性)値になります。
target: 'map'

layers:[...] 配列は、マップで使用可能なレイヤのリストを定義するために使用されてます。最初で唯一のレイヤは今のところタイル(画像)レイヤです。
layers: [
 new ol.layer.Tile({
  source: new ol.source.MapQuest({layer: 'sat'})
 })
]

OpenLayers 3 のレイヤは、ソースを含む形式(画像やタイル、ベクタ)で定義されています。 ソースは、マップタイルを取得するために使用されるプロトコルです。あなたはここから入手層ソースのリストを参照することもできます。

Map オブジェクトの次の部分は、View です。view は、地図の中心、解像度、回転を指定することができます。view を定義する最も簡単な方法は、中心点とズームレベルを定義することです。ズームレベル0はズームアウトされていることに注意してください。
view: new ol.View({
 center: ol.proj.transform([37.41, 8.82], 'EPSG:4326', 'EPSG:3857'),
 zoom: 4
})

指定された中心は、緯度/経度の座標( EPSG:4326)であることがわかります。 使用する唯一のレイヤが球状メルカトル図法(EPSG:3857)なので、即座に正しい座標にマップをズームする(焦点を合わす)ことができるように、それらを再投影することができます。

2014年5月28日水曜日

1 - ol3-beta.5 2 - Quick Start

Quick Start(http://ol3js.org/en/master/doc/quickstart.html)を参考に、OpenLayers 3 を使ってみます。

「Put a map on a page」のコードを新しいファイル(訳注:例えば、Eclipse の HTML ファイル)にコピーします。
<!doctype html>
<html lang="en">
 <head>
  <link rel="stylesheet" href="http://ol3js.org/en/master/css/ol.css" type="text/css">
  <style>
   .map {
    height: 400px;
    width: 100%;
   }
  </style>
  <script src="http://ol3js.org/en/master/build/ol.js" type="text/javascript"></script>
  <title>OpenLayers 3 example</title>
 </head>
 <body>
  <h2>My Map</h2>
  <div id="map" class="map"></div>
  <script type="text/javascript">
   var map = new ol.Map({
    target: 'map',
    layers: [
     new ol.layer.Tile({
      source: new ol.source.MapQuest({layer: 'sat'})
     })
    ],
    view: new ol.View2D({
     center: ol.proj.transform([37.41, 8.82], 'EPSG:4326', 'EPSG:3857'),
     zoom: 4
    })
   });
  </script>
 </body>
</html>



どのようになっているか理解する
地図をWebページに表示するには3つのことが必要になります:
1 OpenLayers を読み込む。
2 <DIV>マップコンテナ。
3 単純なマップを作成するための JavaScript.

OpenLayers を読み込む

<script src="http://ol3js.org/en/master/build/ol.js" type="text/javascript"></script>

最初の部分は、JavaScriptライブラリを読み込んでいます。このチュートリアルのために、ここでは簡単にライブラリ全体を取得するための ol3js.org ウェブサイトを設定しています。本番環境では、我々のアプリケーションに必要なモジュールのみを含むライブラリのカスタムバージョンを構築します。

マップを含む <div>

<div id="map" class="map"></div>

アプリケーション内の map(マップオブジェクト)は <div> HTML 要素に入れます。この <div> により、幅、高さ、および境界線のような map のプロパティは、CSSで制御できます。ここに示したのは、400ピクセルの高さとブラウザウィンドウと同じ幅の地図を作るために使用されるCSS要素です。

<style>
 .map {
  height: 400px;
  width: 100%;
 }
</style>

単純なマップを作成するための JavaScript

var map = new ol.Map({
 target: 'map',
 layers: [
  new ol.layer.Tile({
   source: new ol.source.MapQuest({layer: 'sat'})
  })
 ],
 view: new ol.View2D({
  center: ol.proj.transform([37.41, 8.82], 'EPSG:4326', 'EPSG:3857'),
  zoom: 4
 })
});

この JavaScript コードを使用すると、map オブジェクトは、東アフリカの海岸にズームされたマップクエストオープンエアリアル(MapQuest Open Aerial)レイヤで作成されます。それでは、これを詳しくみてみます。

次の行は、OpenLayers の map オブジェクトを作成します。レイヤやそれに取り付けられたインターラクション(訳注:対話型操作。フィーチャ選択や描画操作など。)がないなら、これは、それ自体だけでは、何もしません。

var map = new ol.Map({ ... });

map オブジェクトを <div> タグに配置するには、map オブジェクトの引数に、target を入れます。<div> タグの id 属性の(属性)値になります。

target: 'map'

layers:[...] 配列は、マップで使用可能なレイヤのリストを定義するために使用されています。最初で唯一のレイヤは今のところタイル(画像)レイヤです。

layers: [
 new ol.layer.Tile({
  source: new ol.source.MapQuest({layer: 'sat'})
 })
]

OpenLayers 3 のレイヤは、ソースを含む形式(画像やタイル、ベクタ)で定義されています。 ソースは、マップタイルを取得するために使用されるプロトコルです。ここから有用なレイヤソースのリストを参照できます。(原文では、"ol.source" の API ページにリンクしています。)

map オブジェクトの次の部分は、view です。view は、地図の中心、解像度、回転を指定することができます。今のところ、View2D だけがサポートされていますが、他のビューは、随時利用可能になります。 view を定義する最も簡単な方法は、中心点とズームレベルを定義することです。ズームレベル0はズームアウトされていることに注意してください。

view: new ol.View2D({
 center: ol.proj.transform([37.41, 8.82], 'EPSG:4326', 'EPSG:3857'),
 zoom: 4
})

指定された中心は、緯度/経度の座標(EPSG:4326)であることがわかります。 使用する唯一のレイヤが球状メルカトル図法(EPSG:3857)なので、即座に正しい座標にマップをズームする(焦点を合わす)ことができるように、それらを再投影することができます。

2010年11月11日木曜日

GeoExt 01b - Basic Example(地図の表示)

GeoExt QuickStart サイト
http://www.geoext.org/tutorials/quickstart.html

の Basic Example を地図を表示します。
GeoExt の 基本となる GeoExt.MapPanel を使用してデータを描画します。


HTML ファイルを新規作成します。
「openlayersTokyoproj」 を右クリックして 新規 -> HTML ファイル をクリック。
「HTML ファイル」ウィンドウの「ファイル名(任意:geoext01_basic-ex.html)」に入力して「完了」ボタンをクリック。
「charset」を「utf-8」にします。
GeoExt QuickStart サイトの Basic Example を参考に以下のように HTML を作成します。
(以前使用した WMS レイヤです。)

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>GeoExt01 Basic Example</title>
<link rel="stylesheet" href="./theme/default/style.css" type="text/css" />
<link rel="stylesheet" href="./examples/style.css" type="text/css" />

<script src="./lib/Firebug/firebug.js"></script>
<!-- 修正 -->
<script src="./OpenLayers-2.10/lib/OpenLayers.js"></script>

<script type="text/javascript" src="./lib/proj4js/lib/proj4js-compressed.js"></script>
<script type="text/javascript" src="./lib/proj4js/lib/projCode/tmerc.js"></script>
<script type="text/javascript" src="./lib/proj4js/lib/defs/EPSG2456.js"></script>
<!-- Ext JS、GeoExt 追加 -->
<script src="./ext-3.2.1/adapter/ext/ext-base.js" type="text/javascript"></script>
<script src="./ext-3.2.1/ext-all.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="./ext-3.2.1/resources/css/ext-all.css"></link> <!-- 修正 -->
<!--
<script src="OpenLayers/OpenLayers.js" type="text/javascript"></script>
-->
<script src="./GeoExt/lib/GeoExt.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="./GeoExt/resources/css/geoext-all-debug.css"></link> <!-- 修正 -->


<script type="text/javascript">
var map, layer1, layer2;

Ext.onReady(function () { // ドキュメントが準備できたとき実行
map = new OpenLayers.Map('map', {
projection: new OpenLayers.Projection("EPSG:2456"),
maxResolution: 'auto',
maxExtent: new OpenLayers.Bounds(-279000,1054000,-185000,1104000),
units: 'meters',
displayProjection: new OpenLayers.Projection("EPSG:4326")
});

layer1 = new OpenLayers.Layer.WMS( "Tokyo Height WMS",
"http://192.168.1.6/cgi-bin/mapserv?",
{
map: '/home/nob61/mapfile/tokyo_bmi_pgis_img2.map',
layers: 'height',
isBaselayer: true,
format: 'image/png'
});

layer2 = new OpenLayers.Layer.WMS( "Tokyo Kukaku Sen WMS",
"http://192.168.1.6/cgi-bin/mapserv?",
{
map: '/home/nob61/mapfile/tokyo_bmi_pgis_img2.map',
layers: 'kukaku',
transparent: true,
format: 'image/png'
});

map.addLayers([layer1, layer2]);
map.addControl(new OpenLayers.Control.LayerSwitcher());
map.addControl(new OpenLayers.Control.MousePosition());
map.addControl(new OpenLayers.Control.ScaleLine());
map.zoomToMaxExtent();


// マップパネルの表示
new GeoExt.MapPanel({
renderTo: 'gxmap', // マップ描画のための id
height: 400, // パネル高さ
width: 600, // パネル幅
map: map, // OpenLayers.Map
title: 'A Simple GeoExt Map' // パネル上部に表示されるタイトル
});
});

</script>
</head>
<body>
<h1 id="title">GeoExt01 Basic Example</h1>
<p id="shortdesc">
GeoExt JS Basic Example.
</p>

<!-- <div id="map" class="smallmap"></div> -->
<div id="gxmap"></div><!-- 修正 -->
<div id="docs">
<p>GeoExt JS の Basic Example を参考に地図を表示します。</p>
</div>

</body>
</html>




MapPanel Tutorial
http://www.geoext.org/tutorials/mappanel-tutorial.html

の Working with the MapPanel ではグリッドの表示についてかかれていますが、上記の例では一番最初のデータはマップになっているのでうまく表示できませんでした。
GML データではできると思います。