直骨架的研究:鞋带公式

```

  // 计算面积(使用鞋带公式)
  double area() const {
      if (size() < 3) return 0.0;
      
      double area = 0.0;
      int n = size();
      for (int i = 0; i < n; ++i) {
          int j = (i + 1) % n;
          area += at(i).x * at(j).y;
          area -= at(j).x * at(i).y;
      }
      return std::abs(area) / 2.0;
  }

```

鞋带公式(Shoelace Formula,又称高斯面积公式)用来求任意简单多边形(不自交)的面积,只要知道各顶点按顺序(顺/逆时针均可)的平面坐标即可。

1. 公式写法

设多边形有 n 个顶点

P₀(x₀,y₀), P₁(x₁,y₁), …, Pₙ₋₁(xₙ₋₁,yₙ₋₁), 则面积

下标循环:i+1=n 时取 0。

把相邻顶点“交叉相乘”再相减,最后取绝对值除以 2,形状像“系鞋带”而得名。

2. 三角形特例

三点 A(x₁,y₁), B(x₂,y₂), C(x₃,y₃)

该主题尚不存在

您访问的页面并不存在。如果允许,您可以使用创建该页面按钮来创建它。

  • 直骨架的研究/鞋带公式.txt
  • 最后更改: 2025/10/14 16:37
  • 张叶安