Визуализация

Подписаться на эту рубрику по RSS

Визуализация B-поверхности

Работа в системе Analysis Situs начинается с выбора интересующей грани. По умолчанию мы видим изопараметрические линии несущей поверхности, взятые с некоторым шагом вдоль ее криволинейных координат. Подобные картинки часто встречаются в литературе, посвященной геометрическому моделированию. Польза такой визуализации состоит в возможности видеть скорость параметризации поверхности: отсутствие сгущений означает, что поверхность параметризована более-менее равномерно.

Изопараметрические линии.

Отрисовка изолиний с фиксированным шагом — общеприменимый метод визуализации параметрических поверхностей. Для сплайнов можно пойти дальше. Известно, что параметрическое пространство B-поверхности бьется на узловые интервалы. Узел сплайна — это локальная особенность формы, которую можно визуализировать. Сравните две картинки. Сначала изолинии с равномерным шагом по параметрам U, V:

Изолинии с фиксированным шагом.

Теперь изолинии по узловым значениям:

Изолинии по узлам.

Мы видим, что поверхность, не вызывающая никаких нареканий на первой картинке, выглядит странно на второй. Появляются сгущения. Кроме того, из теории известно, что сплайн имеет некоторый дефект гладкости в своих узлах. Если степень сплайна равна X, а кратность узла равна Y, то непрерывность поперек соответствующей изолинии для данного узла есть разность (X - Y). Порядок гладкости — важная характеристика формы, ведь многие геометрические построения существенно на него опираются. Визуализация узловых изолиний позволяет отразить порядок гладкости, например, цветом. На рисунке выше красный цвет кодирует непрерывность порядка C0, желтый — C1, голубой — C2, а белый цвет означает гладкость порядка C3 и выше (цвета меняются от «горячих» к «холодным»).

Затененный вид.

Режим затенения дает возможность оценить рельеф поверхности. В этом режиме становятся заметны складки и неровности.

Карта средних кривизн.

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

Кроме того, аналитическое описание геометрии можно сериализовать в текст. В программе Analysis Situs для выбранной грани достаточно щелкнуть пункт меню «Copy as JSON», чтобы получить ASCII-представление формы.

Копируем JSON.

В формате JSON описание несущей поверхности легко читаемо и относительно легко редактируемо.

JSON-представление поверхности.

Мы используем JSON-представления для юнит-тестов.