помогите с курсовой
-
- Новоприбывший
- Сообщения: 2
- Зарегистрирован: 03 июл 2015, 15:55
- Репутация: 0
помогите с курсовой
Задали курсовой в Delphi,не могу сделать. Помогите пожалуйста)
ТЕМА: Задана топографическая поверхность в виде регулярной сеточной модели
– вычислить площадь поверхности фигуры, заданной координатами
угловых точек.
очень нужен математический апарат
ТЕМА: Задана топографическая поверхность в виде регулярной сеточной модели
– вычислить площадь поверхности фигуры, заданной координатами
угловых точек.
очень нужен математический апарат
-
- Гуру
- Сообщения: 4168
- Зарегистрирован: 15 окт 2010, 08:33
- Репутация: 1107
- Ваше звание: программист
- Откуда: Казань
Re: помогите с курсовой
аппарат нужен скорее арифметический ... используем (практически) метод прямоугольников, т.е. прямоугольную палетку.krugliy писал(а):очень нужен математический апарат
1) Накладываем на фигуру достаточно густую регулярную ортогональную сетку с шагом dxy, для этого используем охватывающий прямоугольник фигуры
2) определяем, какие точки нашей сетки попали внутрь фигуры (ищем в сети исходник функции point_in_poly() или типа того)
3) вычисляем отметки поверхности в этих точках: ячейку сеточной модели определяем вычислением (отнимаем координаты угла, и делим на шаг сетки), внутри интерполируем билинейно по углам - смотрим в википедии элементарные формулы, если не знаем
4) определяем площадь, приходящуюся на одну точку, аппроксимируя поверхность плоскостью - для этого вычисляем градент поверхности в точке (из той же линейной интерполяции в ячейке), и из него - косинус угла нормали с вертикалью (на него делим площадь проекции, которая dxy^2)
5) суммируем отметки, вычисленные в (3) и умноженные на площади, вычисленные в (4)
6) повторяем 1-5, каждый раз сгущая сетку в 2 раза (можно сохранять прошлые точки и значения). Смотрим разность между площадями, если она меняется не более, чем на 0.001% (или типа того), то считаем, что задачка решена
7) если ничего не понятно, то идем на сайт фрилансеров, и платим денег тем, кому понятно.
-
- Гуру
- Сообщения: 5355
- Зарегистрирован: 09 апр 2010, 19:30
- Репутация: 1021
- Ваше звание: просто мимо прохожу
- Откуда: Ё-бург
Re: помогите с курсовой
Картограмма блин, можно ещё ГОСТ почитать...
http://www.genplana.net/GeoniCS_net/h060543.htm
http://www.genplana.net/GeoniCS_net/h060543.htm
-
- Гуру
- Сообщения: 4168
- Зарегистрирован: 15 окт 2010, 08:33
- Репутация: 1107
- Ваше звание: программист
- Откуда: Казань
Re: помогите с курсовой
ему же на Дельфи надо - или вы предлагаете ТС сначала это поделие (ГЕНПЛАН) на Дельфи воспроизвести? Это слишком сурово, ИМХОtrir писал(а):Картограмма блин, можно ещё ГОСТ почитать...
http://www.genplana.net/GeoniCS_net/h060543.htm

-
- Новоприбывший
- Сообщения: 2
- Зарегистрирован: 03 июл 2015, 15:55
- Репутация: 0
Re: помогите с курсовой
gamm, математический апарат очень сложный? мне просто формулы (по шаговое решение задачи) нужно.
ты мог бы написать?
ты мог бы написать?
-
- Гуру
- Сообщения: 5355
- Зарегистрирован: 09 апр 2010, 19:30
- Репутация: 1021
- Ваше звание: просто мимо прохожу
- Откуда: Ё-бург
-
- Гуру
- Сообщения: 4168
- Зарегистрирован: 15 окт 2010, 08:33
- Репутация: 1107
- Ваше звание: программист
- Откуда: Казань
Re: помогите с курсовой
не, в данном случае кошернее численно аппроксимировать интеграл (указанный выше косинус имеет прямое отношение к вычислению площади элементарной площадки dS, тыц) - матаппарат нужон жежtrir писал(а):Детский сад, разбей ячейку на два и посчитай их площадь

-
- Активный участник
- Сообщения: 153
- Зарегистрирован: 02 авг 2014, 18:29
- Репутация: 24
- Откуда: Москва
Re: помогите с курсовой
В порядке бре... мозгового шторма. То, что сразу в голову пришло.
Если многоугольник, конечно, выпуклый. Если нет, то как-то по-другому. Пока не придумал, как именно.
Входные данные — массив x(n) и y(n). Координаты этих точек.
Берём точку с координатами x1 = (x(min) + x(max))/2 и y1 = (y(min) + y(max))/2.
И бежим по нашему массиву, вычисляя площади треугольников с вершинами (x(i), y(i)), (x(i+1), y(i+1)) и (x1, y1).
Расстояние между точками (оно же сторона треугольника) вычисляется по теореме Пифагора. А зная стороны треугольника, площадь можно вычислить по формуле Герона. Математика восьмого класса.
Если многоугольник, конечно, выпуклый. Если нет, то как-то по-другому. Пока не придумал, как именно.
Входные данные — массив x(n) и y(n). Координаты этих точек.
Берём точку с координатами x1 = (x(min) + x(max))/2 и y1 = (y(min) + y(max))/2.
И бежим по нашему массиву, вычисляя площади треугольников с вершинами (x(i), y(i)), (x(i+1), y(i+1)) и (x1, y1).
Расстояние между точками (оно же сторона треугольника) вычисляется по теореме Пифагора. А зная стороны треугольника, площадь можно вычислить по формуле Герона. Математика восьмого класса.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 5 гостей