地図上にポリゴンを描画するか、GeoJSONファイルまたはZIP圧縮されたShapefileをアップロードして、ワンクリックで各ポリゴンの中心点を求めます。レイヤーごとに色を設定することもできます。中心点はGeoJSONファイルとして保存でき、追加のソフトウェアを使わずブラウザ上で高速に処理できます。 全画面で開く ↗
重心とは何か、なぜ必要なのか
重心とは、図形の中心点のことです。単純な円や四角形であれば、この点を見当で判断するのは簡単です。しかし、市街地の街区、農地、国境線といった実際のポリゴンでは、中心点が思っている場所にあるとは限りません。このツールは、1つのポリゴンでも、複数のポリゴンを同時に扱う場合でも、その中心点を求めます。
重心ポイントの保存
作業内容を保存する2つの方法が、常にサイドバーに用意されています。
- レイヤーを個別に保存: 任意のレイヤー行の横にあるダウンロードアイコンをクリックすると、そのレイヤーのみをGeoJSONファイルとして保存できます。
- Download All Layers: 地図上のすべてのレイヤー(ポリゴンと重心ポイントの両方)を1つのGeoJSONファイルにまとめ、各フィーチャーには元のレイヤー名が記録されます。
GeoJSONはLeaflet、Mapbox GL JS、QGIS、ArcGISで問題なく開くことができ、GitHub上ではライブマップとして表示されます。
レイヤーの色とマーカーのスタイル
地図上でレイヤーを見分けやすくするために、2つの色設定があります。
- 「Polygon Layer」の色: ポリゴンレイヤーを追加すると、各レイヤーに固有の色が割り当てられます。この色はレイヤー行からいつでも変更できます。
- Marker Color: "Find Centroids" をクリックする前の重心ポイントの色を設定します。実行後に見た目を変えたい場合は、レイヤー行から再度変更できます。
新しく作成された重心レイヤーは、元になったポリゴンの隣に独立したレイヤーとして地図上に残るため、両方を同時に確認できます。
手順
1手順 1
ツールを開く
地図はレイヤーのない世界地図の状態で表示されます。上部のツールバーには Draw Polygon、Upload、Sample Polygons、ベースマップ切り替えがあります。右側のサイドバーには重心ツール、レイヤー一覧、エクスポートボタンがあります。
2手順 2
ポリゴンを描画するか、サンプルを使用する
"Draw Polygon" をクリックし、地図上をクリックして各頂点を追加します。ダブルクリック、Enterキー、または "Finish" ボタンで完了します。あるいは "Sample Polygons" をクリックすると、3つのテスト図形ですぐにツールを試せます。
3手順 3
または自分のファイルをアップロードする
"Upload" をクリックするか、地図上にファイルをドラッグしてください。GeoJSONファイルまたはZIP圧縮されたShapefileを使用できます。ツールはPolygonとMultiPolygonの図形のみを保持し、一部の図形を除外した場合はその旨を通知します。
4手順 4
ポリゴンレイヤーを選択する
サイドバーの "Polygon Layer" リストを開き、確認したいレイヤーを選択します。ここに表示されるのはポリゴンレイヤーのみです。重心レイヤーはすでに点であるため表示されません。
5手順 5
マーカーの色を選ぶ
"Marker Color" の横にあるカラーボックスをクリックし、新しい重心ポイントの色を選択します。
6手順 6
Find Centroidsをクリックする
ツールはレイヤー内のすべてのポリゴンの中心点を計算し、それらの重心を含む新しい点レイヤーを追加します。地図は新しい点に合わせてズームされます。
7手順 7
レイヤーを確認・管理する
レイヤー一覧で、任意のレイヤーの表示/非表示を切り替えたり、色を変更したり、ズームしたり、削除したりできます。重心レイヤーはポリゴンレイヤーと異なる表示になっているため、どちらかを常に見分けられます。
8手順 8
別のレイヤーで試す
別のポリゴンレイヤーを選択するか、ポリゴンを追加してから、再度 "Find Centroids" をクリックします。実行するたびに、新しい独立した重心レイヤーが作成されます。
9手順 9
結果を保存する
レイヤー行のダウンロードアイコンをクリックするとそのレイヤーのみを保存でき、"Download All Layers" をクリックするとポリゴンと重心を含むすべてのレイヤーを1つのGeoJSONファイルとして保存できます。
重心はどのように求められるか
このツールは、ポリゴンを構成するすべての点を調べ、その平均位置を求めます。これは必ずしも目で見て中央だと感じる位置とは一致しませんが、数学的にはその図形の正しい重心(質量中心)です。細長い形や特殊な形状の場合、重心がポリゴンのわずかに外側に出ることもあります。これは正常な挙動で、想定内のことです。
対応するのはポリゴンのみ
このツールが受け付けるのは閉じた図形、すなわちPolygonとMultiPolygonのみです。点や線には同じ意味での中心点が存在しないため、入力として使用できません。ファイルに他の図形が混在している場合、ツールはポリゴンのみを保持し、使用しなかった図形の数を通知します。
動画で見る — 1分でわかるポリゴン重心検出ツール
読むより見るほうが早いという方のために、短い動画を用意しました。ポリゴンの追加と、その正確な中心点を見つける方法まで、一通りの流れを紹介しています。
レイヤーの操作
作成した各ポリゴンレイヤーと各重心レイヤーは、レイヤー一覧に1行ずつ表示されます。この行から、レイヤーの表示/非表示切り替え、色の変更、そのレイヤーへの地図のズーム、GeoJSONとしての保存、削除が行えます。これらの操作は他のレイヤーには影響しません。
よくある質問
作成後にレイヤーの色を変更できますか?
はい。レイヤー一覧の各行には、それぞれ専用のカラーボックスがあります。クリックして新しい色を選ぶと、地図上にすぐに反映され、他のレイヤーには影響しません。
重心を求めた後に、さらにポリゴンを描画できますか?
はい。新しく描画またはアップロードしたポリゴンは、独自のレイヤーになるか、選択している場合は既存の "Drawn Polygons" レイヤーに追加されます。そのレイヤーを再度選択して "Find Centroids" をクリックすれば、更新された点のセットが得られます。
ZIP圧縮されたShapefileには何が必要ですか?
1つの.zipファイルに、Shapefileを構成する.shp、.dbf、.shxの各パーツが少なくとも含まれている必要があります。ZIP内に複数のレイヤーが含まれている場合、それぞれがツール内で独立したレイヤーとして読み込まれます。
点や線を入力として使用できますか?
いいえ。このツールはPolygonとMultiPolygonの図形にのみ対応しています。真の中心点を持つ内部領域があるのは、閉じた図形だけだからです。ファイルにポリゴンと点や線が混在している場合、それらの余分な図形は除外され、いくつ除外されたかがメッセージで通知されます。
地図データはサーバーに送信されますか?
いいえ。描画、ファイルの読み込み、重心の計算はすべて、Turf.jsライブラリを使用してお使いのブラウザ内で処理されます。サーバーへの送信や保存は一切行われないため、非公開または機密性の高い位置情報データを扱う場合でも安心してご利用いただけます。
ファイルが拒否されるのはなぜですか?
これは、ファイルにPolygonまたはMultiPolygonの図形がまったく含まれていない場合に発生します。例えば、点のみ、または線のみのファイルです。ソースファイルに、点やパスだけでなく、実際に閉じたエリア図形が含まれているかどうかを確認してください。
重心とは、簡単に言うと何ですか?
重心とは、図形を構成するすべての点の平均位置から求められる、その図形の中心点です。通常の丸い形状であれば、この点はほぼ中央にあるように見えます。不均一な形状の場合、思いがけない場所に位置することがあり、場合によっては図形のわずかに外側になることもあります。
重心点がポリゴンの外側に出ることがあるのはなぜですか?
三日月形やU字形のように、大きく湾曲した形状でこの現象が起こることがあります。計算では図形全体の平均位置を求めるため、こうした特殊な形状では、その平均点がポリゴンにまったく含まれない隙間の部分に位置することがあります。これは想定内の正しい挙動です。
複数のポリゴンを同時にチェックできますか?
はい。"Find Centroids" を1回クリックするだけで、選択したレイヤー内のすべてのポリゴンフィーチャーの中心点を、同じ処理の中で一括して求めます。各ポリゴンにつき1つの重心を持つ、新しい点レイヤーが1つ得られます。
ダウンロードするGeoJSONファイルの中身は何ですか?
1つのレイヤーを保存すると、そのレイヤーの図形のみが含まれます。"Download All Layers" を使用すると、ポリゴンと重心ポイントを含むすべてのレイヤーが1つのファイルにまとめられ、各図形には元のレイヤー名が記録されます。
実際の活用事例
🏠
不動産・土地登記
郡の土地登記機関や不動産プラットフォームは、地番ポリゴンの重心を使って、住所ピンや価格ラベルを物件の適当な隅ではなく実際の中心に配置します。
📶
携帯基地局とネットワーク計画
通信エンジニアはカバレッジポリゴンの重心を求めることで、アンテナの設置位置を検証したり、複数の重なり合うカバー範囲を一箇所でまとめてカバーできる新設基地局の候補地を選定したりします。
🚚
小売・配送エリア
小売チェーンや配送会社は、各店舗の商圏や配送エリアのポリゴンを一つの点に変換し、その点を使って移動時間を比較したり、新しい拠点の立地を計画したりします。
🚜
農地管理
精密農業ソフトウェアは各圃場境界の重心を求め、GPS誘導トラクターやドローン、スプリンクラー式灌漑機の作業開始地点として利用します。
🚑
災害対応と公衆衛生
防災担当者は洪水浸水域や国勢調査区の重心を求め、その区域内の住民の平均的な位置に最も近い救援センターや移動診療所の設置場所を検討する際に役立てます。
🗳️
選挙区・行政区マップ
選挙管理事務所や都市計画担当者は、選挙区ポリゴンの重心を使って地図上に区番号を配置したり、選挙区の形がどれだけコンパクトか、あるいは間延びしているかを確認したりします。
ポリゴンを追加する2つの方法
次のいずれかの方法でチェックしたいポリゴンを追加してください。同じセッション内で両方を組み合わせて使うこともできます。
- 地図上に描画する: "Draw Polygon" をクリックし、地図をクリックして各頂点を追加します。図形はダブルクリック、Enterキー、または "Finish" ボタンで完了します。描画したすべての図形は1つの "Drawn Polygons" レイヤーにまとめられます。
- ファイルをアップロードする: "Upload" をクリックするか、地図上にファイルをドラッグしてください。GeoJSON/.jsonファイル、またはZIP圧縮されたShapefile(内部に.shp、.dbf、.shxを含む.zip)を使用できます。ファイルごとに独立したレイヤーになります。
手元にファイルがない場合は、"Sample Polygons" をクリックすると小さなテストデータセットが追加されます。ポリゴンレイヤーが1つ以上できたら、"Polygon Layer" のリストから選択し、マーカーの色を選んで、"Find Centroids" をクリックしてください。
こちらもおすすめのツール
Map tiles © OpenStreetMap contributors and Protomaps (hosted by KONAKTIVE), CARTO, Esri (satellite). Centroid math powered by Turf.js. Shapefile parsing by shpjs. Map rendering by Leaflet. All drawing, file reading and centroid calculation is local — no data is uploaded to any server.