多角形面積計算
多角形の頂点を順番に貼り付けると面積が分かります。長方形(0, 0)、(4, 0)、(4, 3)、(0, 3)なら12で、面積の符号から時計回りか反時計回りかも分かります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
処理はブラウザ内で完結します。ファイルは送信されません。無料でご利用いただけます。
この計算ツールは、測量、GISの準備作業、CADのチェック、プログラミングコンテストで使われる古典的なシューレース公式(測量士の公式)を用いて、平面座標の順序付けられたリストを単純多角形の面積に変換します。境界の順序で[x, y]ペアまたは{x, y}オブジェクトとして頂点を貼り付けると、繰り返す最初の点を省略していればエンジンが環を自動的に閉じ、すでに閉じている場合は末尾の重複を取り除き、絶対面積と巻き方向を明らかにする符号付き面積の両方を返します。結果は純粋な解析的算術です。区画のスケッチ、多角形領域の宿題、間取り図の面積チェック、既知の頂点から再現可能な面積が必要なCIフィクスチャにご利用ください。
シューレースの総和を段階的に評価する方法
各エントリは有限のxとyに解析されます。フォームの呼び出し側のために10進数の文字列も許可されます。最後の点が最初の点と等しい場合、その閉じる重複は取り除かれるため、閉じた環を貼り付ける呼び出し側と繰り返しを省略する呼び出し側が1つのコードパスを共有します。
このステップの後、リストにはなお少なくとも3点が含まれなければなりません。シューレースの総和は、最後の頂点の後継が最初の頂点になるようモジュラー算術を使い、iを0からn-1までたどります。符号付き面積はその総和の半分であり、絶対面積はその大きさです。
向きは、符号付き面積が正のとき反時計回り、負のとき時計回り、符号付き面積がちょうどゼロ(一直線上または面積ゼロの環)のとき縮退です。内部の求解は、その最終的な丸めステップの前に常に完全な倍精度を使います。
頂点からの多角形面積が学習・設計・コードで役立つ場面
学生がシューレース公式に出会うのは、教科書が角の座標が与えられた四角形の面積を求めるとき、試験が時計回りの三角形の絶対面積を求めるとき、あるいは解析幾何学の宿題が向きを議論する前に符号付き面積と絶対面積の両方を求めるときです。教師は、整数の頂点集合について面積を列挙し、ゼロを印字するのではなく3点未満の環を拒否する模範解答をあらかじめ生成できます。
測量やGISの準備作業では、投影に対応したソフトウェアが関わる前に、区画の多角形の手早いチェックがしばしば必要です。貼り付けられた環が2つの異なる角しか持たないことを知ることは、その数値そのものと同じくらい価値があります。
間取り図やCADのワークフローは、壁や部屋の輪郭から頂点の鎖を抽出し、スクリプトやコードレビューのために決定的な平方フィートのチェックを必要とします。ゲームやシミュレーションのチームは、プラットフォームをまたいで同一であるべき衝突ハル、領域トリガー、レベルデザインツールに順序付けられた多角形の面積を使います。
開発者は同じ契約をスクリプトから呼び出し、幾何学ライブラリのユニットテストの種を作ったり、指導ツールで測量士の公式を実演したり、順序付けられた頂点の配列から面積を要求するプログラミング課題の条件を満たしたりします。このページでの計算はすべてブラウザ内で完結します。
多角形面積計算ツールを探していても、オンラインのシューレース公式を探していても、契約は同じです。
活用例
宿題と試験の準備
教科書の頂点リストからシューレース公式で多角形面積を計算し、符号付き面積で巻き方向を確認し、3点未満が拒否されることを検証します。
決定的な幾何学フィクスチャ
手作りの環の閉じ方や測量士の総和なしに、ユニットテスト、コンテストのバリデーター、CIアサーション向けに再現可能な多角形面積を生成できます。
CAD・間取り図・GISの準備
重厚な投影対応ツールが関わる前に、順序付けられた角から部屋や区画の輪郭を手早くチェックし、不完全な環には正直なエラーを返します。
よくある質問
最初の頂点を最後に繰り返す必要がありますか?
いいえ。 環は自動的に閉じられます。最初の点を繰り返した場合、その末尾の重複は頂点を数える前に取り除かれます。
頂点の順序は重要ですか?
符号付き面積と向きについてはい。絶対面積は、単純多角形であればどちらの巻き方でも同じです。
符号付き面積がマイナスになるのはなぜですか?
頂点を時計回りの順に並べたためです。プラスなら反時計回り、ちょうど0なら点が一直線に並んでいるか、面積のない図形です。絶対値の面積はどちらの向きでも同じです。
点が2つだけだとエラーになるのはなぜですか?
多角形には異なる頂点が少なくとも3つ必要だからです。繰り返した最初の点を除いて3つ未満になる場合は、紛らわしい0を返さずにエラーを知らせます。
結果は小数点以下何桁で表示されますか?
0から15桁の範囲で選べ、初期設定は10桁です。内部の計算は最後まで全精度で行い、表示の直前に一度だけ丸めるので、丸め誤差が積み重なりません。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/geom/polygon-area-shoelace \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"vertices":[[0,0],[4,0],[4,3],[0,3]]}'const res = await fetch("https://api.kit.forhosting.com/geom/polygon-area-shoelace", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"vertices": [
[
0,
0
],
[
4,
0
],
[
4,
3
],
[
0,
3
]
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geom/polygon-area-shoelace",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"vertices": [
[
0,
0
],
[
4,
0
],
[
4,
3
],
[
0,
3
]
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geom/polygon-area-shoelace", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"vertices":[[0,0],[4,0],[4,3],[0,3]]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"vertices":[[0,0],[4,0],[4,3],[0,3]]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geom/polygon-area-shoelace", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"vertices": [
[
0,
0
],
[
4,
0
],
[
4,
3
],
[
0,
3
]
]
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geom.polygon_area_shoelace",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
その正規化の後に3点未満しか残らない場合、あるいはいずれかの座標が欠落または非有限の場合、このツールはサイレントなゼロやNaNではなくinvalid_inputを返します。API経由では成功したリクエストごとに$0.002がかかり、検証の失敗には課金されません。
シューレース式の多角形面積計算ツールが返す内容と順序が重要な理由
単純多角形とは、自分自身と交差しない直線の辺から成る閉じた鎖です。その面積は頂点座標の並びだけから復元できます。境界がすでに順序付けられている場合、三角形分割やラスターの塗りつぶし、モンテカルロサンプリングは必要ありません。シューレース公式は、連続する座標のペアをたすき掛けのパターンで掛け合わせ、符号付きの寄与を合計し、合計を半分にし、絶対値を取ることで、時計回りと反時計回りの環が同じ正の面積を報告するようにします。半軸からの楕円の計量、3点を通る円、三角形ソルバーが必要な場合は、それらの問題専用のツールをご利用ください。ここでの検索意図は、シューレース公式による順序付けられた頂点からの多角形面積であり、環が短すぎる場合の明確な答えか正直なエラーです。このツールは、スプレッドシートを開いたり環の閉じ方を自前で再実装したりすることを強いることなく、JSONの頂点リストからその恒等式を決定的に適用するために存在します。優先される入力は配列フィールドverticesです。フォームやスプレッドシートの呼び出し側のためにpoints、polygon、coordsといった別名も受け付けられます。各要素は2つの数値の配列[x, y]、またはxとyを持つオブジェクト(GIS形式のペイロード向けにlon/lat風のキーも認識されます)のいずれかです。レスポンスには常に、n(正規化後の頂点数)、area、signed_area、orientation(反時計回り、時計回り、または縮退)、式の文字列、丸められた座標を持つ正規化された頂点が含まれます。頂点の欠落、配列でないペイロード、非有限の座標、あるいは閉じる重複を取り除いた後3点未満は、いずれも失敗を名指しするメッセージとともにinvalid_inputを発生させます。この規律は自動テストを安定させ、キャッシュを安全にし、スクリプトが線分を塗りつぶされた領域として扱うことを防ぎます。
シューレースの総和を段階的に評価する方法
エンジンは、別名points、polygon、coordsを持つverticesから頂点リストを解決し、本物の配列を要求します。2点以下は、セグメントや単一の点に対して多角形の面積が未定義であるためinvalid_inputを発生させます。各項はx_i×(次のy)-(次のx)×y_iです。任意のprecisionは公開されるフィールドのみを丸めます。自動化されたパイプライン内で環の正規化や測量士の総和を自前で再実装することなく同一の数学的結果が必要な場合は、このページの無料ブラウザ実行と有料APIを組み合わせてご利用ください。
頂点からの多角形面積が学習・設計・コードで役立つ場面
API経由では成功した検索1件につき$0.002がかかり、検証に失敗したリクエストは課金されず、レスポンスが返された後は何も保存されません。この無料のインタラクティブな探索と、同一結果を返す有料APIという分割は、KITのtier-Aカタログの他のツールと同様であり、教室でのデモから自動化パイプラインへ、数学的な結果を変えることなく移行できます。決定的なツールのラボのために楕円の計量、円の構築、三角形ソルバーが必要なときは他の無料の幾何学系エンドポイントと、学習者やレビュアーのために数値と図が一致し続けるよう頂点リストと完成した面積の両方を示す文書と組み合わせてご利用ください。順序付けられた頂点が入力され、有限の面積か明確なinvalid_inputが出力されます。
技術的な質問
多角形面積計算ツールの料金はいくらですか?
このページのブラウザ版は無料です。API経由では成功したリクエストごとに$0.002がかかり、無効な入力には課金されません。
3点未満しか指定しない場合はどうなりますか?
ハンドラーは、多角形の面積には少なくとも3つの頂点が必要であるというメッセージとともにinvalid_inputを返します。
丸めを制御できますか?
はい。precision(別名decimals、dp)を0から15までの整数に設定してください。既定はすべての数値フィールドで小数点以下10桁です。