Расчет площади контура

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Алексей К.
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 419
Зарегистрирован: 12.05.2004 (Ср) 9:41
Откуда: Ульяновск

Расчет площади контура

Сообщение Алексей К. » 20.06.2005 (Пн) 9:30

Подскажите с алгоритмом расчета площади прямоугольного контура, может кто занимался или есть готовые программы в которых эта функция есть?
Пример формы контура:
______________________
|хххххххххххххххххххххххх|
|хххххххххххххххххххххххх|
|хххххххххххх__________|
|хххххххххххх|
|хххххххххххх|___
|ххххххххххххххх|
|_____________|

uhm
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1597
Зарегистрирован: 02.12.2004 (Чт) 15:21

Сообщение uhm » 20.06.2005 (Пн) 10:29

Контур как задан? Упорядоченный набор координат вершин?

Алексей К.
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 419
Зарегистрирован: 12.05.2004 (Ср) 9:41
Откуда: Ульяновск

Сообщение Алексей К. » 20.06.2005 (Пн) 11:27

archicad это делает, впринципе вопрос решен. А если задавать контур как упорядочный набор координат вершин - например хранить буду в массиве (n,1 to 2). Дальше как действовать? а то не охота ради такой мелочи (хоть и нужной) archicad ставить.

Kovu
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 924
Зарегистрирован: 29.04.2005 (Пт) 17:38

Сообщение Kovu » 20.06.2005 (Пн) 12:14

Разбиваешь сложную фигуру на несколько мелких прямоугольников используя как раз Упорядоченный набор координат вершин считаешь площадь каждого прямоугольника. Результат складываешь 8) :D
Если всё делать своими ручками, они скоро отвалятся !

Алексей К.
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 419
Зарегистрирован: 12.05.2004 (Ср) 9:41
Откуда: Ульяновск

Сообщение Алексей К. » 20.06.2005 (Пн) 12:37

А как их упорядочить и по каким критериям? Как разбить контур - т.е. собрать массив (x,1 to 2, 1 to 2, 1 to 2, 1 to 2) координат каждого прямоугольника?

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 23.06.2005 (Чт) 17:09

Надо посмотреть в справочник по математике. там есть весьма простая формула, которая по координатам вершин считает площадь произвольного многоугольника (не только прямоугольного).

Если нужно не только площадь посчитать, то надо бить контур на мелкие фигуры (лучше на треугольники), но это уже весьма сложный алгоритм. я писал, но на VB.NET
Весь мир матрица, а мы в нем потоки байтов!

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 24.06.2005 (Пт) 0:07

!Viper! писал(а):Надо посмотреть в справочник по математике. там есть весьма простая формула, которая по координатам вершин считает площадь произвольного многоугольника (не только прямоугольного).

http://algolist.manual.ru/maths/geom/polygon/area.php
Изображение


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 145

    TopList