2010-08-30 1 views
4

Итак, я работаю над фрагментом кода, чтобы получить позиционные данные для RC Plane Crop Duster и вычислить общую площадь поверхности, трансверсивную (без двойного подсчета любой области). Я не могу понять, как вычислить площадь за определенный период работы.Как вы вычисляете площадь ряда случайных точек?

С учетом следующей таблицы. Рассчитайте площадь, в которой находится точка.

x,y 
1,2 
1,5 
4,3 
6,6 
3,4 
3,1 

Любые идеи? Я просмотрел «Зеленую теорему», и я остался без практической концепции, в которой можно кодировать.

Спасибо за любые посоветуйте

ответ

1

Я не совсем уверен, что вы ищете «Площадь поверхности» столько, сколько вы ищете Distance. Похоже, вы хотите рассчитать расстояние между одной точкой и следующей для этого списка. Если это так, просто используйте Distance Formula.

Если самолет сбрасывает постоянную ширину пыли во время полета между этими точками, то площадь - это просто расстояние между этими точками, умноженное на ширину спрея.

+0

Мне очень нравится этот метод, я забыл поместить это в описание, этот метод имеет недостаток двойной области подсчета, покрытый дважды. Есть ли простой способ отфильтровать двойные подсчитанные суммы? – TelsaBoil

+0

@TelsaBoil - Я не понял, что двойной счет будет проблемой. Посмотрите на ответ Лиора Когана, это кажется очень полезным. –

0

Вам нужно будет разделить сложный многоугольник примерно на стандартные полигоны (треугольники, прямоугольники и т. Д.), А затем найти область всех из них. Это похоже на регулярную интеграцию (только разница в том, что вам еще предстоит найти формулу для аппроксимации ваших данных).

Вышеуказанные пункты, когда вы предполагаете, что вы формируете замкнутый многоугольник с вашими данными.

+1

Или, еще лучше, превратите эту интегральную область в интеграл контура и пройдите по периметру с помощью гауссовой квадратуры. – duffymo

1

Если ваши очки гарантированно будут находиться на целочисленной сетке - как они есть в вашем примере - (и вы действительно ищете закрытую область) будет Pick's Theorem help?

0

Используйте для QHull для триангуляции области, а затем суммируйте области полученных треугольников.