Открыть сервис

Граничное представление

Граничное представление (англ. boundary representation, B-rep) — это метод представления трёхмерных геометрических объектов в системах автоматизированного проектирования (САПР) и компьютерной графике, при котором форма тела описывается через совокупность ограничивающих его поверхностей (граней), их рёбер и вершин. В отличие от конструктивной блочной геометрии (CSG), где объект строится из примитивов с помощью булевых операций, граничное представление хранит явную информацию о топологии и геометрии границы объекта. Этот метод является одним из основных в современных САПР (SolidWorks, CATIA, NX, КОМПАС-3D) и форматах обмена данными (STEP, IGES).

История

Идея описания трёхмерных объектов через их границы восходит к работам по аналитической геометрии и дифференциальной геометрии XIX века, однако практическая реализация стала возможна с развитием вычислительной техники. В 1960-х годах Иван Сазерленд в своей диссертации «Sketchpad» предложил способ описания трёхмерных сцен через рёбра и вершины. В 1970-х годах Брюс Баумгарт и другие исследователи из Стэнфордского университета разработали формальную топологическую модель граничного представления для систем машинной графики.

Ключевым этапом стало создание в 1978 году системы Romulus компанией Shape Data (Великобритания), которая впервые реализовала полноценное граничное представление для твёрдотельного моделирования. В 1980-х годах на основе этой технологии были разработаны коммерческие ядра геометрического моделирования: Parasolid (1988, Unigraphics Solutions) и ACIS (1989, Spatial Technology). Эти ядра стали стандартом для большинства современных САПР. В СССР и России разработка граничного представления велась в рамках систем «Компас» (АО «Аскон») и «T-FLEX CAD» (АО «Топ Системы»).

Основные понятия

Граничное представление основано на двух взаимосвязанных компонентах: топологии и геометрии.

Топология

Топология описывает структуру объекта — связи между его элементами. Основные топологические сущности:

  • Тело (solid) — связный трёхмерный объём, ограниченный замкнутой поверхностью.
  • Грань (face) — часть поверхности тела, ограниченная одним или несколькими циклами рёбер.
  • Ребро (edge) — кривая линия, являющаяся пересечением двух граней.
  • Вершина (vertex) — точка, в которой сходятся два или более ребра.
  • Цикл (loop) — замкнутая последовательность рёбер, ограничивающая грань.
  • Оболочка (shell) — совокупность граней, образующих замкнутую поверхность тела.

Геометрия

Геометрия задаёт точную математическую форму каждого топологического элемента:

  • Геометрия грани — поверхность (плоскость, цилиндр, сфера, NURBS-поверхность).
  • Геометрия ребра — кривая (прямая, окружность, сплайн).
  • Геометрия вершины — трёхмерные координаты (x, y, z).

Пример

Для куба со стороной 1:

  • Топология: 6 граней, 12 рёбер, 8 вершин.
  • Геометрия: каждая грань — плоскость, каждое ребро — отрезок прямой, вершины — точки с координатами (0,0,0), (1,0,0), (0,1,0) и т.д.

Классификация граничных представлений

Существует несколько подходов к организации данных в B-rep:

По типу поверхностей

  • Плоскогранные (полигональные) — все грани плоские (сетки из треугольников или четырёхугольников). Используются в 3D-графике, играх, 3D-печати (формат STL).
  • Аналитические — грани описываются аналитическими поверхностями (плоскость, цилиндр, сфера, конус, тор). Характерно для САПР и машиностроения.
  • Сплайновые (NURBS) — грани описываются неоднородными рациональными B-сплайнами. Позволяют моделировать сложные органические формы (кузова автомобилей, корпуса самолётов).

По способу хранения топологии

  • Полуреберное представление (half-edge) — каждое ребро делится на два ориентированных полуребра, что упрощает обход граней и рёбер. Используется в ядрах ACIS и Parasolid.
  • Крылатое ребро (winged-edge) — классическая структура, где каждое ребро хранит ссылки на четыре соседних ребра. Предложена Брюсом Баумгартом в 1972 году.
  • Радиальное представление (radial-edge) — расширение для неориентируемых поверхностей и неоднородных тел.

Устройство и принципы работы

Операции с граничным представлением

Основные операции, выполняемые над B-rep-моделями:

  • Булевы операцииобъединение, пересечение, вычитание тел. Реализуются путём вычисления пересечений граней и перестроения топологии.
  • Снятие фасок и скруглений — создание скруглённых рёбер и фасок путём замены рёбер цилиндрическими или коническими поверхностями.
  • Вытягивание и вращение — создание тела путём перемещения (выдавливания) или вращения профиля.
  • Лофтинг — создание тела по набору поперечных сечений.
  • Обрезка и разделение — разрезание тела плоскостью или другой поверхностью.

Проверка корректности

Граничное представление должно удовлетворять условиям регулярности:

  • Каждое ребро принадлежит ровно двум граням (кроме случаев с неориентируемыми поверхностями).
  • Каждая грань ограничена замкнутым циклом рёбер.
  • Тело является замкнутым (без дыр) и ориентируемым.

Для проверки корректности используются алгоритмы Эйлеровой проверки: для куба V - E + F = 2 (формула Эйлера для многогранников).

Применение

Системы автоматизированного проектирования (САПР)

B-rep является основой для большинства CAD-систем. Примеры:

  • КОМПАС-3D (Россия, АО «Аскон») — использует собственное ядро C3D, основанное на граничном представлении.
  • T-FLEX CAD (Россия, АО «Топ Системы») — использует ядро Parasolid.
  • SolidWorks (США, Dassault Systèmes) — ядро Parasolid.
  • CATIA (Франция, Dassault Systèmes) — собственное ядро CGM.
  • NX (США, Siemens PLM Software) — ядро Parasolid.

Компьютерная графика и анимация

В 3D-графике (Blender, 3ds Max, Maya) граничное представление используется для хранения полигональных сеток. Однако для рендеринга и анимации чаще применяются упрощённые формы (полигональные модели), так как они требуют меньше вычислительных ресурсов.

3D-печать

Формат STL (стереолитография) является частным случаем граничного представления — все грани треугольные, без топологической информации. Для подготовки моделей к печати требуется замкнутость и отсутствие пересечений.

Численное моделирование (CAE)

В системах конечно-элементного анализа (ANSYS, Abaqus, Nastran) граничное представление используется для построения расчётных сеток. B-rep-модель триангулируется или тетраэдризуется для последующего расчёта.

Преимущества и недостатки

Преимущества

  • Точность — аналитическое описание поверхностей позволяет хранить модель с машинной точностью.
  • Удобство редактирования — возможность изменять отдельные грани, рёбра или вершины.
  • Поддержка сложных форм — NURBS-поверхности позволяют моделировать объекты любой формы.
  • Интеграция с ЧПУ — на основе B-rep можно генерировать траектории для станков с числовым программным управлением.

Недостатки

  • Большой объём данных — для сложных моделей требуется значительный объём памяти.
  • Сложность алгоритмов — операции пересечения и булевы операции требуют сложных вычислений.
  • Чувствительность к ошибкам — малейшая неточность в геометрии может привести к нарушению замкнутости тела.

Сравнение с другими методами

ХарактеристикаГраничное представление (B-rep)Конструктивная блочная геометрия (CSG)Воксельное представление
Способ описанияГраница телаБулевы операции над примитивамиНабор кубических элементов
ТочностьВысокая (аналитическая)ВысокаяНизкая (зависит от разрешения)
Объём данныхСреднийМалыйБольшой
РедактированиеУдобноеОграниченноеСложное
ПрименениеСАПР, ЧПУ, CAEПроектирование, образованиеМедицина, геология

Интересные факты

  • Первая коммерческая система на основе B-rep — Romulus (1978) — работала на мейнфреймах и занимала целую комнату.
  • Ядро Parasolid используется более чем в 200 программных продуктах по всему миру.
  • В российской САПР КОМПАС-3D ядро C3D (разработка АО «Аскон») полностью поддерживает граничное представление и совместимо с форматом STEP.
  • Формат STL, используемый в 3D-печати, не хранит топологию — только координаты треугольников, что может приводить к ошибкам при восстановлении модели.

Источники

  1. Баумгарт Б. «Геометрическое моделирование для компьютерной графики» (1975).
  2. Mantyla M. «An Introduction to Solid Modeling» (1988).
  3. Hoffmann C. «Geometric and Solid Modeling» (1989).
  4. Документация ядра C3D (АО «Аскон», Россия, 2020).
  5. «Твёрдотельное моделирование в САПР» — учебное пособие, МГТУ им. Н.Э. Баумана, 2015.
  6. Стандарт ISO 10303-42 (STEP) — описание граничного представления.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →