Если граница путь состоит только из отрезков прямых линий и не пересекает себя, то вы можете использовать следующую формулу для вычисления площади замкнутого региона (от https://en.wikipedia.org/wiki/Polygon#Area_and_centroid):
CGPoint points[N];
CGFloat area = 0;
for (int i = 0; i < N; i++) {
area += (points[i].x * points[(i+1) % N].y - points[(i+1) % N].x * points[i].y)/2.0;
}
где points[0], ... , points[N-1]
являются начальными точками сегментов линии в порядке против часовой стрелки.
Для более сложных участков пути, таких как кривые Безье, вы можете подразделить каждый сегмент на мелкие детали, которые могут быть аппроксимированы сегментами линий.
В каком смысле это «нарисовано CGPoints»? Кроме того, вы знаете, как интегрировать? –
Я имею в виду, что каждый угол является точкой, он не нарисовал свои точки, я просто рисовал его, чтобы вы, ребята, могли видеть, о какой форме мне говорят, нет, я не знаю, как и что такое интеграция. – Arbitur
О, я посмотрел, что такое интеграция, я знаю, как это сделать, это не называется, что в моей стране: P – Arbitur