座標から多角形の面積を計算:靴紐の公式

頂点の座標から単純多角形の面積、周長、図心を靴紐の公式で計算し、各項の計算過程を表示します。

更新日 検証済みの例:7

Go around the outline in either direction. Brackets and semicolons are fine; a repeated first point at the end is ignored.
試す
面積
m²
面積: 16.5 m²
小数点以下の最大桁数:6;最も近い値へ、等距離ならゼロから遠い値へ
Signed area
16.5m²
周長
24.307995m
Centroid x
3.88888889m
Centroid y
3.66666667m
Number of vertices
5
Vertex order
Counterclockwise

The 5 points trace a counterclockwise outline enclosing 16.5 m², with a perimeter of 24.307995 m and its centroid (balance point) at (3.8889, 3.6667).

The 5-sided outline

5.385 m4.123 m3.606 m4.123 m7.071 mP1P2P3P4P5centroid
Shoelace terms 行数:5
Vertexxyxᵢ·yᵢ₊₁ − xᵢ₊₁·yᵢ
116−17
231−1
37220
444−12
58543
計算方法 S
  1. Shoelace sum

    ∑i=15(xiyi+1−xi+1yi)=−17−1+20−12+43=33\sum_{i=1}^{5} (x_i y_{i+1} - x_{i+1} y_i) = -17 - 1 + 20 - 12 + 43 = 33

    Index n + 1 wraps round to vertex 1.

  2. 面積

    A=∣33∣2=16.5 m2A = \frac{|33|}{2} = 16.5\,\text{m}^2

    The sum is positive, so the vertices run counterclockwise.

  3. 周長

    P=∑(xi+1−xi)2+(yi+1−yi)2=24.307995 mP = \sum \sqrt{(x_{i+1} - x_i)^2 + (y_{i+1} - y_i)^2} = 24.307995\,\text{m}
  4. Centroid

    Cx=∑(xi+xi+1)(xiyi+1−xi+1yi)6A±=3.888889,Cy=3.666667C_x = \frac{\sum (x_i + x_{i+1})(x_i y_{i+1} - x_{i+1} y_i)}{6A_\pm} = 3.888889,\quad C_y = 3.666667

    A± is the signed area; using it keeps the centroid right for either vertex order.

座標から多角形の面積を計算:靴紐の公式について

List a polygon's corners in order around the outline and the shoelace formula gives its area: A = ½|Σ(xᵢyᵢ₊₁ − xᵢ₊₁yᵢ)|, with the sum wrapping from the last vertex back to the first. The sign of the sum shows the direction of travel, positive for counterclockwise. The same terms give the centroid, and the edge lengths add up to the perimeter.

The default five points, (1, 6), (3, 1), (7, 2), (4, 4) and (8, 5), are the worked example in Wikipedia's article on the formula: the terms sum to 33, so the area is 16.5 m². Surveyors use the method, also called the surveyor's area formula, to find a plot's area from the corner coordinates on a site plan.

The outline must not cross itself; crossing edges trigger a warning, because the overlapping parts then cancel or count twice. Coordinates must be planar, so convert latitude and longitude to a projected grid such as UTM first.

計算例

Wikipedia's pentagon

Vertices in order (x, y per line)
1, 6 3, 1 7, 2 4, 4 8, 5
Coordinates are in
メートル (m)
面積
16.5 m²
Number of vertices
5
Vertex order
Counterclockwise
周長
24.307995 m
Centroid x
3.88888889 m
Centroid y
3.66666667 m

照合元:Area 16.5 from the Wikipedia “Shoelace formula” worked example; Python 3.8 fractions: signed sum +33 (counterclockwise), centroid (35/9, 11/3); math.sqrt edge sum for the perimeter

Rectangle 4 × 3

Vertices in order (x, y per line)
0, 0 4, 0 4, 3 0, 3
Coordinates are in
メートル (m)
面積
12 m²
周長
14 m
Centroid x
2 m
Centroid y
1.5 m
Vertex order
Counterclockwise

照合元:4 × 3 rectangle; centroid at the centre

Right triangle, centroid at the mean of the vertices

Vertices in order (x, y per line)
(0, 0) (4, 0) (0, 3)
Coordinates are in
メートル (m)
面積
6 m²
周長
12 m
Centroid x
1.33333333 m
Centroid y
1 m

照合元:½ × 4 × 3; 3-4-5 perimeter; a triangle's centroid is the vertex mean (4/3, 1)

Clockwise square (edge case: negative signed area)

Vertices in order (x, y per line)
0 0; 0 2; 2 2; 2 0
Coordinates are in
メートル (m)
面積
4 m²
Signed area
-4 m²
Vertex order
Clockwise

照合元:Shoelace sum for clockwise order is −2 × area

よくある質問

How does the shoelace formula work?

Multiply each x by the next vertex's y, subtract the next x times this y, add the results all the way round and halve the absolute value. For (0, 0), (4, 0), (4, 3), (0, 3) the terms are 0, 12, 12 and 0, so the area is 24/2 = 12. The name comes from the criss-cross pattern the products make when the coordinates are written in two columns.

Does the order of the points matter?

Yes. The points must follow the boundary, clockwise or counterclockwise, without jumping across. Direction only flips the sign: counterclockwise gives a positive sum, clockwise a negative one, and the area is the absolute value. The corners of a 2 × 2 square taken as (0, 0), (2, 2), (2, 0), (0, 2) trace a crossed bow-tie whose shoelace area is 0 instead of 4.

How do you find the area of an irregular plot of land from its corners?

Record each corner as coordinates on a flat grid, such as eastings and northings in metres from a site plan, list them in order round the boundary and apply the shoelace formula. An L-shaped plot with corners (0, 0), (6, 0), (6, 2), (2, 2), (2, 5) and (0, 5) in feet covers 18 ft². Latitude and longitude must be projected first, because a degree of longitude shrinks towards the poles.

How do you find the centroid of a polygon?

Weight each shoelace term by the sum of the two x coordinates involved: Cx = Σ(xᵢ + xᵢ₊₁)(xᵢyᵢ₊₁ − xᵢ₊₁yᵢ)/(6A), with A the signed area, and likewise for Cy. For a triangle this equals the average of the three vertices; for the L-shaped plot above it is (7/3, 11/6) ≈ (2.333, 1.833). The centroid of a non-convex shape can lie outside it.

「座標から多角形の面積を計算:靴紐の公式」の精度はどのくらいですか?

精度は入力値と計算方法の前提に依存します。十進演算には有効数字50桁を使いますが、推定、数値計算手法、元データの精度はそれより低い場合があります。表示の丸め処理でこれらの制約がなくなるわけではありません。 独立した出典の解答と照合した計算例:7。 例えば、「Wikipedia's pentagon」はArea 16.5 from the Wikipedia “Shoelace formula” worked example; Python 3.8 fractions: signed sum +33 (counterclockwise), centroid (35/9, 11/3); math.sqrt edge sum for the perimeterと照合しています。

この計算方法の出典は何ですか?

Wikipedia, “Shoelace formula” — worked example with vertices (1, 6), (3, 1), (7, 2), (4, 4), (8, 5); Bourke, P. (1988) “Calculating the area and centroid of a polygon”.

この計算機について

A=12∑i=1n(xiyi+1−xi+1yi)Cx=16A∑(xi+xi+1)(xiyi+1−xi+1yi)\begin{gathered} A = \frac{1}{2}\sum_{i=1}^{n}(x_i y_{i+1} - x_{i+1} y_i) \\[6pt] C_x = \frac{1}{6A}\sum (x_i + x_{i+1})(x_i y_{i+1} - x_{i+1} y_i) \end{gathered}

出典

  1. Wikipedia, “Shoelace formula” — worked example with vertices (1, 6), (3, 1), (7, 2), (4, 4), (8, 5)
  2. Bourke, P. (1988) “Calculating the area and centroid of a polygon”

出典と照合済み

この計算機には、独立した出典の解答を使った計算例が 7 件あります。テストに組み込まれており、ここでも実行できます。

関連する計算ツール