Вычисление площади одноконтурного несамопересекающегося многоугольникаDelphi , Синтаксис , МатематикаВычисление площади одноконтурного несамопересекающегося многоугольника
Автор: Виктор Щербаков { **** UBPFD *********** by delphibase.endimus.com **** >> Вычисление площади одноконтурного несамопересекающегося многоугольника 1.Для многоконтурных или самопересекающихся многоугольников функция вернет неверный результат. 2.Площадь всегда положительна (т.е. не зависит от направления обхода). Зависимости: нет Автор: Виктор Щербаков, shherbakov@yandex.ru, Нижний Новгород Copyright: Виктор Щербаков Дата: 18 апреля 2002 г. ***************************************************** } // Точка type TFloatPoint = record X, Y: Double; end; // Точки полигона type TPolygonPoints = array of TFloatPoint; // Сама функция function PolygonSquare(Poly: TPolygonPoints): Double; var I, J, HP: Integer; begin Result := 0; HP := High(Poly); for I := Low(Poly) to HP do begin if I = HP then J := 0 else J := I + 1; Result := Result + (Poly[I].X + Poly[J].X) * (Poly[I].Y - Poly[J].Y); end; Result := Abs(Result) / 2; end; Статья Вычисление площади одноконтурного несамопересекающегося многоугольника раздела Синтаксис Математика может быть полезна для разработчиков на Delphi и FreePascal. Комментарии и вопросыМатериалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: Математика ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |