add_polygons は GeoJSON を使わずに、地理座標から直接ポリゴンを描画するためのメソッドです。
動的なオーバーレイや強調表示に適しています。
require "gd/gis"
PARIS = [2.25, 48.80, 2.42, 48.90]
map = GD::GIS::Map.new(
bbox: PARIS,
zoom: 10,
basemap: :carto_light
)
map.style = GD::GIS::Style.load("dark")
ポリゴンは配列として定義され、1つ以上のリングを含めることができます。
polygons = [
[
[
[-74.01, 40.70],
[-74.00, 40.70],
[-74.00, 40.71],
[-74.05, 41.02],
[-74.01, 40.71],
[-74.01, 40.70]
]
]
]
[lng, lat] 順map.add_polygons(
polygons,
fill: [34, 197, 94, 180],
stroke: [16, 185, 129],
width: 2
)
polygons: ポリゴン配列fill: 塗りつぶし色(alpha 対応)stroke: 枠線色width: 枠線の太さ(px)map.render
map.save("output/polygons.png")
add_polygons は YAML スタイルに依存しません。
[lng, lat] 座標