0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

OutSystems MapsでLeafletを選択できるようになったので確認してみる

Posted at

公式サポートありの、地図機能を提供するForgeコンポーネント「OutSystems Maps」が、これまでのGoogle Mapsに加えて、Leafletを使えるようになっている。

Leafletは、有償のAPIキーがなくても使えるので、軽く試してみた。

環境

Personal Environment(Version 11.14.0 (Build 33133))
Service Studio(Version 11.14.11)
OutSystems Maps(Version 1.6.0)

地図を表示

LeafletMap Blockを画面に配置すると、アメリカのボストンあたりを中心に表示される。

image.png

サイズの調整

デフォルトサイズ

幅・高さ共に、配置先に対して100%。

調整方法

高さを指定するには、BlockのHeightプロパティを使う。Heightプロパティに設定した値が、HTMLタグのstyle属性に使用される。
image.png

幅を指定する際には、ContainerでLeafletMap Blockを囲み、そのContainerに設定するといい。

位置の調整

中心座標設定

初期表示時点の中心座標を設定するには、「緯度,経度」のフォーマットで、Centerプロパティに設定する。

ズームレベル

Google Mapsで定義された、地図の拡大度を示す値。
1-20の数字で示し、1だと全世界を表示できる縮尺で表示し、数字が大きくなるほど拡大して表示される。

OutSystems MapsのStatic Entity「Zoom」のレコードとして設定する。

設定例

中心座標を上野駅あたり、ズームレベルを16とする設定。
image.png

上記設定での表示例。
image.png

図形の表示

地図上に図形を表示するには、LeafletMap Blockの「AddOns_Placeholder」Placeholder内に、対応するBlockを配置する。

表示できる図形にはいくつか種類があるが、以下ではMarker(特定の座標にピンを立てるもの。点座標)を例とする。

設定例
image.png

  • Markerの位置はPositionプロパティで指定
  • Titleはマーカーにマウスオーバーしたときに表示されるテキスト
  • Labelはマーカー自体に重ねて表示されるテキスト

image.png

マーカーと地図の座標

地図にマーカーを表示すると、地図自体のプロパティCenterよりも最初のマーカーのPositionが優先されるようだ。

地図イベント

地図への操作に反応する処理を書くには、LeafletMap Blockの「Events_Placeholder」Placeholder内に、Map_Events\MapEvent Blockを配置する。

このとき、EventNameプロパティに対象となるイベントを設定(MapEventTrigger Static Entityを使う)する。選択できるイベントは

  • Click
  • DoubleClick
  • DragEnd
  • RightClick
  • ZoomChanged

image.png

イベントハンドラのInput Parameterは以下の通り

  • MapWidgetId: LeafletMap BlockのNameプロパティに設定した値
  • EventName: イベント名。Clickを選択した場合「click」
  • LatLng: イベントが発生した座標。Clickを選択した場合、クリックした座標
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?