Введение
Набор принципов моделирования твердотельной геометрии
Твердотельное моделирование (или твердотельное моделирование) — это последовательный набор принципов математического и компьютерного моделирования трехмерных объектов (твердых тел). Твердотельное моделирование выделяется среди более широких смежных областей геометрического моделирования и компьютерной графики, таких как 3D-моделирование, благодаря акценту на физическую достоверность. В совокупности принципы геометрического и твердотельного моделирования составляют основу автоматизированного проектирования в 3D и в целом поддерживают создание, обмен, визуализацию, анимацию, анализ и аннотирование цифровых моделей физических объектов.
Обзор
Использование методов твердотельного моделирования позволяет автоматизировать ряд сложных инженерных расчетов, выполняемых в процессе проектирования. Моделирование, планирование и проверка процессов, таких как механическая обработка и сборка, стали одним из главных стимулов для развития твердотельного моделирования. В последнее время спектр поддерживаемых производственных приложений значительно расширился и включает в себя обработку листового металла, литье под давлением, сварку, прокладку трубопроводов и другие. Помимо традиционного производства, методы твердотельного моделирования служат основой для быстрого прототипирования, архивирования цифровых данных и обратной разработки путем восстановления твердотельных моделей по дискретным точкам физических объектов, механического анализа методом конечных элементов, планирования траекторий движения и проверки управляющих программ, кинематического и динамического анализа механизмов и так далее. Ключевой задачей во всех этих областях является эффективное представление и манипулирование трехмерной геометрией, соответствующей физическому поведению реальных объектов. Исследования и разработки в области твердотельного моделирования успешно решают многие из этих задач и продолжают оставаться центральным направлением в системах автоматизированного проектирования.
Математические основы
Понятие твердотельного моделирования, как оно практикуется сегодня, основывается на специфической потребности в информационной полноте в системах геометрического моделирования механики, в том смысле, что любая компьютерная модель должна поддерживать все геометрические запросы, которые могут быть заданы соответствующему физическому объекту. Это требование неявно признает возможность нескольких компьютерных представлений одного и того же физического объекта, при условии, что любые два таких представления согласованы. Вычислительная проверка информационной полноты представления невозможна, если понятие физического объекта не определено в терминах вычислимых математических свойств и независимо от какого-либо конкретного представления. Эти рассуждения привели к разработке парадигмы моделирования, которая сформировала область твердотельного моделирования в том виде, в котором мы знаем ее сегодня. Все изготавливаемые компоненты имеют конечный размер и четко определенные границы, поэтому изначально основное внимание уделялось математическому моделированию жестких деталей, изготовленных из однородного изотропного материала, который можно добавлять или удалять. Эти постулируемые свойства могут быть перенесены на свойства областей, подмножеств трехмерного евклидова пространства. Два распространенных подхода к определению "твердости" опираются соответственно на топологию множеств и алгебраическую топологию. Обе модели описывают, как твердые тела могут быть построены из простых элементов или ячеек. Согласно модели твердости в виде множества точек континуума, все точки любого X ⊂ ℝ³ могут быть классифицированы в соответствии с их окрестностями относительно X как внутренние, внешние или граничные точки. Предполагая, что ℝ³ снабжен типичной евклидовой метрикой, окрестность точки p ∈ X имеет форму открытого шара. Для того чтобы X считался твердым телом, каждая окрестность любой точки p ∈ X должна быть последовательно трехмерной; точки с окрестностями меньшей размерности указывают на отсутствие твердости. Размерная однородность окрестностей гарантируется для класса замкнутых регулярных множеств, определяемых как множества, равные замыканию их внутреннего пространства. Любое X ⊂ ℝ³ может быть преобразовано в замкнутое регулярное множество или "регуляризовано" путем взятия замыкания его внутреннего пространства, и таким образом, пространство моделирования твердых тел математически определяется как пространство замкнутых регулярных подмножеств ℝ³ (теоремой Хайне-Бореля подразумевается, что все твердые тела являются компактными множествами). Кроме того, требуется, чтобы твердые тела были замкнуты относительно булевых операций объединения, пересечения и разности множеств (для обеспечения твердости после добавления и удаления материала). Применение стандартных булевых операций к замкнутым регулярным множествам может не привести к замкнутому регулярному множеству, но эту проблему можно решить, регуляризовав результат применения стандартных булевых операций. Операции над регуляризованными множествами обозначаются ∪∗, ∩∗ и −∗. Комбинаторная характеристика множества X ⊂ ℝ³ как твердого тела включает представление X в виде ориентированного клеточного комплекса, так что ячейки обеспечивают конечные пространственные адреса для точек в бесконечном континууме. В частности, это подразумевает, что характеристика Эйлера комбинаторной границы полиэдра равна 2. Комбинаторная модель твердости в виде многообразия также гарантирует, что граница твердого тела разделяет пространство ровно на две компоненты, как следствие теоремы Жордана-Брауэра, тем самым исключая множества с не многообразными окрестностями, которые считаются невозможными для изготовления. Точечные и комбинаторные модели твердых тел полностью согласованы друг с другом, могут использоваться взаимозаменяемо, опираясь на непрерывные или комбинаторные свойства по мере необходимости, и могут быть расширены до n измерений. Ключевое свойство, которое облегчает эту согласованность, заключается в том, что класс замкнутых регулярных подмножеств ℝⁿ точно совпадает с однородными n-мерными топологическими многогранниками. Следовательно, каждое n-мерное твердое тело может быть однозначно представлено его границей, и граница имеет комбинаторную структуру (n-1)-мерного многогранника, имеющего однородные (n-1)-мерные окрестности.
Системы надежного представительства
Основываясь на предполагаемых математических свойствах, любая схема представления твердых тел является методом получения информации о классе полуаналитических подмножеств евклидова пространства. Это означает, что все представления – это различные способы организации одних и тех же геометрических и топологических данных в виде структуры данных. Все схемы представления организованы на основе конечного числа операций над набором примитивов. Моделирующее пространство любого конкретного представления конечно, и одной схемы представления может быть недостаточно для представления всех типов твердых тел. Например, твердые тела, определенные комбинациями регуляризованных булевых операций, не всегда могут быть представлены как смещение примитива по пространственной траектории, за исключением очень простых случаев. Это вынуждает современные системы геометрического моделирования поддерживать несколько схем представления твердых тел, а также обеспечивать эффективное преобразование между этими схемами. Это методы, используемые для создания или представления твердых моделей.
Моделирование поверхностных сетей
Подобно представлению границ, представляется поверхность объекта. Однако вместо сложных структур данных и NURBS используется простая поверхностная сетка, состоящая из вершин и ребер. Поверхностные сетки могут быть структурированными (как, например, треугольные сетки в файлах STL или квадросетки с горизонтальными и вертикальными кольцами четырехугольников), либо неструктурированными, с произвольно сгруппированными треугольниками и многоугольниками более высокого порядка.
Конструктивная геометрия твердого тела
Конструктивная геометрия твердых тел (CSG) – это семейство методов представления жестких тел как булевых конструкций или комбинаций примитивов посредством регуляризованных операций над множествами, описанных выше. CSG и представления границ являются в настоящее время наиболее важными схемами представления твердых тел. CSG-представления имеют вид упорядоченных двоичных деревьев, где нетерминальные узлы представляют собой либо жесткие преобразования (сохраняющие ориентацию изометрии), либо регуляризованные операции над множествами. Терминальные узлы – это примитивные листья, представляющие собой замкнутые регулярные множества. Семантика CSG-представлений однозначна. Каждое поддерево представляет множество, полученное в результате применения указанных преобразований/регуляризованных операций над множествами к множеству, представленному примитивными листьями этого поддерева. CSG-представления особенно полезны для отражения замысла проектировщика в виде элементов, соответствующих добавлению или удалению материала (выступы, отверстия, углубления и т.п.). К привлекательным свойствам CSG относятся краткость, гарантированная корректность тел, удобные для вычислений свойства булевой алгебры и естественное управление формой тела посредством параметров высокого уровня, определяющих примитивы тела и их положение и ориентацию. Относительно простая структура данных и элегантные рекурсивные алгоритмы также способствовали популярности CSG.
Промещение
Основная идея, лежащая в основе схем построения тел вращения, проста. Объект, движущийся в пространстве, может описывать или выметать объем (твердое тело), который может быть представлен движущимся объектом и его траекторией. Такое представление важно в контексте приложений, таких как определение материала, удаляемого инструментом при движении по заданной траектории, вычисление динамического взаимодействия двух тел, находящихся в относительном движении, планирование траекторий движения и даже в компьютерной графике, например, при отслеживании движений кисти по холсту. Большинство коммерческих CAD-систем предоставляют (ограниченную) функциональность для построения тел вращения, в основном в виде двумерного поперечного сечения, движущегося по пространственной траектории, перпендикулярной сечению. Однако современные исследования показали различные приближения для представления трехмерных форм, движущихся по одному параметру, и даже многопараметрических движений.
Неявное представление
Очень общий метод определения множества точек X заключается в задании предиката, который можно вычислить в любой точке пространства. Иными словами, X определяется неявно как множество всех точек, удовлетворяющих условию, заданному этим предикатом. Наиболее простая форма предиката – это условие на знак вещественной функции, приводящее к привычному представлению множеств равенствами и неравенствами. Например, условия , , и соответственно представляют собой плоскость и два открытых линейных полупространства. Более сложные функциональные элементы могут быть определены как булевы комбинации более простых предикатов. Более того, теория R-функций позволяет преобразовать такие представления в одно функциональное неравенство для любого замкнутого полуаналитического множества. Такое представление можно преобразовать в граничное представление, используя алгоритмы полигонизации, например, алгоритм марширующих кубов.
Параметрическое и основанное на особенностях моделирование
Особенности определяются как параметрические формы, связанные с атрибутами, такими как собственные геометрические параметры (длина, ширина, глубина и т. д.), положение и ориентация, геометрические допуски, свойства материалов и ссылки на другие особенности. Особенности также предоставляют доступ к соответствующим производственным процессам и моделям ресурсов. Таким образом, особенности обладают более высоким семантическим уровнем, чем примитивные замкнутые регулярные множества. Ожидается, что особенности станут основой для связи систем автоматизированного проектирования (САПР) с приложениями последующих этапов производства, а также для организации баз данных с целью повторного использования данных проектирования. Параметрическое моделирование на основе особенностей часто комбинируется с конструктивной бинарной твердотельной геометрией (CSG) для полного описания систем сложных объектов в инженерии.
История создания твердотельных моделей
Историческое развитие твердотельных моделировщиков следует рассматривать в контексте всей истории САПР, ключевыми этапами которого стали разработка исследовательской системы BUILD, за которой последовало её коммерческое ответвление Romulus, оказавшее влияние на разработку Parasolid, ACIS и Solid Modeling Solutions. Один из первых разработчиков CAD в Содружестве Независимых Государств (СНГ), компания ASCON начала внутреннюю разработку собственного твердотельного моделировщика в 1990-х годах. В ноябре 2012 года математическое подразделение ASCON выделилось в отдельную компанию под названием C3D Labs. Ей была поставлена задача разработки геометрического ядра C3D как самостоятельного продукта – единственного коммерческого ядра 3D-моделирования из России. Вклад также внесли Мэнтиля с его GWB и проект GPM, который в начале 1980-х годов предложил, в частности, методы гибридного моделирования. В это же время в Римском университете был разработан язык программирования твердотельного моделирования PLaSM.
Компьютерная проектирование
Моделирование твердых тел – это лишь минимальное требование к функциональности системы САПР. За последние десять лет твердотельные модели стали широко распространены в инженерных отделах благодаря увеличению производительности компьютеров и снижению цен на программное обеспечение. Программное обеспечение для твердотельного моделирования создает виртуальное трехмерное представление компонентов для машинного проектирования и анализа. Типичный графический интерфейс пользователя включает программируемые макросы, сочетания клавиш и динамическое манипулирование моделью. Особое внимание уделяется возможности динамической переориентации модели в реальном времени с затенением в 3D, что помогает конструктору сохранять пространственное представление. Модель твердого тела обычно состоит из набора элементов, добавляемых последовательно до завершения модели. Инженерные твердые модели в основном создаются на основе эскизов; двухмерные эскизы, которые вытягиваются по траектории, формируя трехмерные объекты. Это могут быть вырезы или выдавливания, например. Проектирование компонентов обычно выполняется в контексте всего изделия с использованием методов сборки моделей. Модель сборки содержит ссылки на отдельные модели деталей, составляющие изделие. Другим типом метода моделирования является "поверхностное моделирование" (моделирование свободных форм). В этом методе поверхности определяются, обрезаются и объединяются, а затем заполняются для создания твердого тела. Поверхности обычно определяются опорными кривыми в пространстве с использованием различных сложных команд. Поверхностное моделирование более сложное, но лучше подходит для некоторых технологий производства, таких как литье под давлением. Твердые модели для деталей, отливаемых под давлением, обычно сочетают в себе элементы поверхностного и эскизного моделирования. Инженерные чертежи могут создаваться в полуавтоматическом режиме и ссылаться на твердые модели.
Параметрическое моделирование
Параметрическое моделирование использует параметры для определения модели (например, размеры). Примерами параметров являются: размеры, используемые для создания элементов модели, плотность материала, формулы для описания вытянутых элементов, импортированные данные (например, описывающие опорную поверхность). Параметр можно изменить позже, и модель будет обновлена, чтобы отразить это изменение. Обычно существует связь между деталями, сборками и чертежами. Деталь состоит из нескольких элементов, а сборка – из нескольких деталей. Чертежи могут быть созданы на основе деталей или сборок. Пример: вал создается путем выдавливания окружности на 100 мм. К концу вала присоединяется втулка. Позже вал модифицируется до длины 200 мм (щелкните по валу, выберите размер длины и измените его на 200). При обновлении модели длина вала станет 200 мм, втулка переместится к концу вала, к которому она была присоединена, а инженерные чертежи и массовые характеристики автоматически отразят все изменения. Связанные с параметрами, но несколько отличающиеся, – это зависимости. Зависимости – это отношения между элементами, составляющими определенную форму. Например, для окна стороны могут быть определены как параллельные и одинаковой длины. Параметрическое моделирование очевидно и интуитивно понятно. Но в первые три десятилетия развития CAD это было не так. Изменение требовало перерисовки или добавления нового выреза или выступа поверх старых. Размеры на инженерных чертежах создавались, а не отображались. Параметрическое моделирование очень мощное, но требует большего мастерства при создании модели. Сложная модель детали для литья под давлением может содержать тысячу элементов, и изменение раннего элемента может привести к ошибкам в последующих элементах. Умело созданные параметрические модели легче поддерживать и модифицировать. Параметрическое моделирование также способствует повторному использованию данных. Например, целое семейство винтов можно представить в одной модели.
Инженерная
Поскольку программы САПР, работающие на компьютерах, "понимают" истинную геометрию, составляющую сложные формы, многие атрибуты 3D-твердого тела, такие как центр тяжести, объем и масса, могут быть быстро вычислены. Например, куб с округленными краями, изображенный в верхней части этой статьи, имеет размер 8,4 мм по самым выступающим точкам. Несмотря на множество радиусов и неглубокую пирамиду на каждой из шести граней, его свойства легко рассчитываются для конструктора, как показано на скриншоте справа.