|
ФИЗИКО-МАТЕМАТИЧЕСКОГО ЛИЦЕЯ № 30 of 30 Phys-Math Lyceum Tough Terrain GeneratorАвторы:
Научный руководитель проекта: Галинский Виталий Александрович
ВведениеДанный программный комплекс предназначен для моделирования рельефа местности. Разработанный алгоритм позволяет синтезировать ландшафты по заданному пользователем очертанию с помощью набора изолиний или карты высот. При построении изображений на основе карты высот, производится триангуляция точек с последующей детализацией посредством фрактального подразделения. Для получения изображения на основе изолиний (горизонталей) строится регулярная сетка посредством интерполяции высот для промежуточных точек. При выводе синтезированного результата разработаны различные методы визуализации.РеализацияИсходные данныеПоставленные задачи предполагают два вида исходных данных: задание макета рельефа отдельными точками и изолиниями, что и определяет работу пользователя с программой. Разработанный графический редактор позволяет осуществлять набор исходной геометрии посредством ввода параметров пикетов (точек на местности) и изолиний (горизонталей). Для каждой точки исходных данных задается позиция и высота. Для ускорения функций редактирования (изменения параметров, удаления и т.п.) реализован алгоритм поиска на основе квадратичных деревьев (quad-tree).Построение и синтезированиеДля построения рельефа местности нами были разработаны два различных алгоритма перевода исходной геометрической информации в полигональный вид. Оба алгоритма адоптированы под конкретный способ задания исходных данных: отдельными пикетами и набором изолиний.Полигонизация по пикетамДля обработки отдельных точечных данных - пикетов - с целью построения поверхности рельефа местности реализован алгоритм триангуляции точек на плоскости. В качестве критерия триангуляции выбран критерий Делоне - в процессе получения треугольников на плоскости ни одна из исходных точек не может попасть в описанную окружность вокруг любого из полученных треугольников.ДетализацияДля повышения реалистичности синтезированной поверхности спроектирован и реализован метод подразбиения каждого полученного в процессе триангуляции треугольника на четыре новых с небольшим параметрическим искажение высот вновь появившихся точек. В качестве смещения используется шумовая функция, позволяющая однозначно получать значения изменения высот для определенных точек плоскости.Построение карт высотПри обработке изолиний используется альтернативный способ задания геометрии - регулярная сетка, некоторым узлам которой сопоставляется конкретная высота, в соответствии с начальными данными. Далее идет заполнение остальных узлов сетки, на основе интерполяции высот.ВизуализацияДля визуализации синтезированного рельефа местности используется два способа вывода: вывод произвольного множества треугольников (triangles mesh) и регулярных сеток высот (grid - height fields). Оба способа позволяют получать изображение в проволочном виде (wire frame) и посредством закрашенных многоугольников. В последнем случае применяется модель освещения Гуро.ЗаключениеРазработанная система является удобным и простым средством для моделирования рельефа местности. Благодаря разработанным алгоритмам оптимизации достигнута приемлемая скорость получения результата.Литература
|
|