Конструктивная блочная геометрия, КБГ (англ. Constructive Solid Geometry, CSG) — технология, используемая в моделировании твёрдых тел[англ.]. Конструктивная блочная геометрия зачастую, но не всегда, является способом моделирования в трёхмерной графике и САПР. Она позволяет создать сложную сцену или объект с помощью битовых операций для комбинирования нескольких иных объектов. Это позволяет более просто математически описать сложные объекты, хотя не всегда операции проходят с использованием только простых тел. Так, часто с помощью конструктивной блочной геометрии представляют модели или поверхности, которые выглядят визуально сложными; на самом деле, они являются немногим более чем умно скомбинированные или декомбинированные простые объекты. В некоторых случаях конструктивная блочная геометрия исполняется с помощью полигональных сеток (англ. polygonal mesh), и может быть процедурной и/или параметрической.

Простейшие тела, используемые в конструктивной блочной геометрии — примитивы (англ. primitives), тела с простой формой: куб, цилиндр, призма, пирамида, сфера, конус. Набор доступных примитивов зависит от программного пакета. Так, некоторые программы позволяют создание конструктивной блочной геометрии на основе кривых объектов, а некоторые нет.

Построение более сложного объекта происходит путём применения к описаниям объектов булевых (двоичных) операций на множествах — объединение, пересечение и разность.

Примитив, как правило, может быть описан процедурой, которая принимает некоторые значения параметров, например, для построения сферы достаточно знать её радиус и положение центра.

Примитивы могут быть скомпонованы в составные объекты с помощью таких операций:

Операции на конструктивной блочной геометрии
булево объединение булева разность булево пересечение
объединение двух объектов разность двух объектов пересечение двух объектов
Объединение: слияние двух объектов в один Разность: вычитание одного объекта от другого Пересечение: общая часть обоих объектов

Применение

править
Сложный объект может быть представлен двоичным деревом, где «листья» — это объекты, а узлы — операции. ( пересечение, объединение, разность)

Конструктивная блочная геометрия имеет ряд практических применений. Она используется там, где необходима простота (игровой движок, например, Unreal Engine и Source Engine) или математическая точность (САПР, например, определение водонепроницаемости конструкции).

Программы

править

Литература

править

Ссылки

править
  • Leadwerks Software 'What is Constructive Solid Geometry?' — объяснение терминов, уравнений и применений.
  • GNU Triangulated Surface library — библиотека с открытым кодом (LGPL), которая содержит возможности CSG на сетках из треугольников.
  • Computational Geometry Algorithms Library — библиотека с открытым кодом (LGPL, QPL), которая содержит, помимо прочего, возможности CSG.
  • The CSG rendering library — библиотека с открытым кодом, которая производит ориентированный на изображения CSG-рендеринг с использованием OpenGL.
  • HyperFun Project — простой функциональный язык для геометрического моделирования, способный исполнять CSG-операции на различных типах объектов.
  • Overview of CSG in avoCADo — программа 3D CAD с открытым исходным кодом.
  • SimpleGeo — интерактивное твердотельное моделирование для симуляции перемещения частиц по методу Монте-Карло.
  • FMEpedia CSGBuilder example — wikipedia CSG binary tree as replicated using FME (Feature Manipulation Engine).
  • SolidKit Library — программная библиотека для программ с 3D/2D-графикой, разработанная на C++ с использованием OpenGL, содержит способности CSG на сетках из треугольников.

📚 Artikel Terkait di Wikipedia

POV-Ray

геометрических примитивов и составных объёмных тел (CSG — от англ. constructive solid geometry). Несколько типов источников света. Атмосферные эффекты, такие

OpenSCAD

программы Тип свободное и открытое программное обеспечение и Constructive Solid Geometry software[вд] Написана на C++, Си и Python Интерфейс Qt Операционные

Представление формы функцией

Теоретико-множественные тела или конструктивную блочную геометрию, КБГ (англ. Constructive Solid Geometry, CSG) сглаживания трёхмерные объекты параметрические модели процедурные

Моделирование твёрдого тела

многоугольников. Конструктивная сплошная геометрия (КСГ, англ. Constructive solid geometry, CSG) — это семейство схем для представления твёрдых тел как

Геометрические закономерности в природе

Manfred; Peitgen, Heinz-Otto. Fractal aspects of three-dimensional vascular constructive optimization // Fractals in biology and medicine / Losa, Gabriele A.;

Список награждённых Национальной медалью науки США

chemistry] as a scientist, teacher and imaginative leader in furthering the constructive interaction of academic and industrial scientists Медали вручены 24 мая