Геометрическое моделирование
Покупка
Тематика:
Математическое моделирование
Издательство:
ДМК Пресс
Автор:
Голованов Николай Николаевич
Год издания: 2020
Кол-во страниц: 406
Дополнительно
Вид издания:
Учебно-методическая литература
Уровень образования:
ВО - Бакалавриат
ISBN: 978-5-97060-806-7
Артикул: 739782.01.99
В книге изложены математические методы построения геометрических моделей, приведена теория В-сплайнов и описаны свойства кривых и поверхностей, построенных на их основе, рассмотрены принципы построения твёрдых тел и алгоритмы выполнения операций над ними, представлен состав геометрической модели и принципы установления вариационных зависимостей между её элементами, рассказано о применении геометрических моделей и приёмах компьютерной графики. Издание предназначено для специалистов по системам автоматизированного проектирования и студентов высших учебных заведений.
Тематика:
ББК:
УДК:
ОКСО:
- ВО - Бакалавриат
- 01.03.01: Математика
- ВО - Специалитет
- 09.05.01: Применение и эксплуатация автоматизированных систем специального назначения
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
Геометрическое моделирование Москва, 2020 Н. Н. Голованов
УДК 514.8 ББК 22.15 Г61 Р е ц е н з е н т ы: В. А. Мартынюк – доцент кафедры систем автоматизированного проектирования МГТУ им. Баумана, канд. техн. наук Г. В. Носовский – доцент кафедры дифференциальной геометрии МГУ им. Ломоносова, канд. физ.-мат. наук Голованов Н. Н. Г61 Геометрическое моделирование. – М.: ДМК Пресс, 2020. – 406 с.: ил. ISBN 978-5-97060-806-7 В книге изложены математические методы построения геометрических моделей, приведена теория В-сплайнов и описаны свойства кривых и поверхностей, построенных на их основе, рассмотрены принципы построения твёрдых тел и алгоритмы выполнения операций над ними, представлен состав геометрической модели и принципы установления вариационных зависимостей между её элементами, рассказано о применении геометрических моделей и приёмах компьютерной графики. Издание предназначено для специалистов по системам автоматизированного проектирования и студентов высших учебных заведений. УДК 514.8 ББК 22.15 Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. © Голованов Н. Н., 2020 ISBN 978-5-97060-806-7 © Оформление, издание, ДМК Пресс, 2020
Содержание Предисловие от издательства .............................................................................6 Предисловие ..............................................................................................................7 Введение .....................................................................................................................8 Глава 1. Точки ...........................................................................................................11 1.1. Радиус-вектор ........................................................................................................11 1.2. Аффинные координаты ........................................................................................14 1.3. Модификации векторов и точек ..........................................................................17 1.4. Однородные координаты .....................................................................................19 Упражнения..................................................................................................................22 Глава 2. Кривые .......................................................................................................23 2.1. Кривая ....................................................................................................................23 2.2. Аналитические кривые .........................................................................................28 2.3. Кривые, построенные по набору точек ...............................................................32 2.4. Кривые Безье .........................................................................................................41 2.5. Кривые Безье и конические сечения ...................................................................45 2.6. Рациональные кривые Безье ................................................................................54 2.7. Разделённые разности ..........................................................................................58 2.8. B-сплайны ..............................................................................................................62 2.9. B-кривые ...............................................................................................................70 2.10. Алгоритм Де Бура ................................................................................................76 2.11. Вставка точки и узла B-кривой ..........................................................................78 2.12. Примеры B-кривых .............................................................................................81 2.13. B-кривые и кривые Безье ...................................................................................83 2.14. Частные случаи B-кривых...................................................................................87 2.15. Кривые, построенные на базе кривых ...............................................................95 2.16. Составная кривая ................................................................................................99 Упражнения................................................................................................................100 Глава 3. Поверхности .........................................................................................101 3.1. Поверхность .........................................................................................................101 3.2. Аналитические поверхности .............................................................................112 3.3. Поверхности, полученные движением кривой .................................................118 3.4. Поверхности, построенные на семействе кривых ............................................126 3.5. Поверхности, построенные на сетке кривых ....................................................132 3.6. Поверхность на сетке точек ................................................................................141 3.7. Поверхность Безье ...............................................................................................144
Содержание 3.8. B-поверхность .....................................................................................................147 3.9. T-поверхности .....................................................................................................154 3.10. Поверхности треугольной формы ....................................................................158 3.11. Треугольные поверхности Безье ......................................................................162 3.12. Однородные разделённые разности ................................................................168 3.13. Симплексные сплайны ....................................................................................176 3.14. S-поверхности ..................................................................................................182 3.15. Поверхности на базе поверхностей .................................................................184 3.16. Деформируемая поверхность ...........................................................................188 3.17. Поверхность на базе триангуляции..................................................................189 3.18. Поверхность с произвольной границей ..........................................................192 Упражнения................................................................................................................195 Глава 4. Построения на кривых и поверхностях.......................................196 4.1. Проекции точки на кривую ................................................................................196 4.2. Проекции точки на поверхность ........................................................................199 4.3. Точки пересечения кривых ................................................................................203 4.4. Точки пересечения поверхности и кривой ......................................................206 4.5. Точки пересечения трёх поверхностей..............................................................208 4.6. Кривые на поверхностях ....................................................................................209 4.7. Кривая пересечения поверхностей ....................................................................215 4.8. Алгоритм построения кривых пересечения .....................................................219 4.9. Поверхности сопряжения ...................................................................................225 4.10. Поверхность фаски ............................................................................................234 4.11. Положение точки относительно поверхности ................................................235 4.12. Поиск начальных приближений ......................................................................237 4.13. Точность геометрических построений ............................................................240 Упражнения................................................................................................................242 Глава 5. Тела ............................................................................................................243 5.1. Оболочка ..............................................................................................................243 5.2. Характеристики оболочки ..................................................................................245 5.3. Однородная оболочка .........................................................................................251 5.4. Тело ......................................................................................................................252 5.5. Структуры данных ..............................................................................................253 5.6. Элементарные тела .............................................................................................255 5.7. Тела, полученные движением кривой ...............................................................260 5.8. Тела, построенные по сечениям .........................................................................265 5.9. Тело, построенное по поверхности ....................................................................267 Упражнения................................................................................................................269 Глава 6. Методы построения тел .....................................................................270 6.1. Методы геометрического моделирования ........................................................270 6.2. Булевы операции над телами .............................................................................271 6.3. Алгоритм булевых операций ..............................................................................280
Содержание 5 6.4. Разрезанное тело .................................................................................................285 6.5. Симметричное тело ............................................................................................286 6.6. Тело с достраиваемыми элементами .................................................................290 6.7. Эквидистантное тело ..........................................................................................293 6.8. Тонкостенное тело ..............................................................................................296 6.9. Скругление рёбер тела ........................................................................................299 6.10. Алгоритм скругления рёбер тела .....................................................................304 6.11. Построение фаски рёбер тела ...........................................................................306 6.12. Прямое моделирование ....................................................................................307 6.13. Деформирование оболочек ..............................................................................311 Упражнения................................................................................................................313 Глава 7. Геометрические ограничения ..........................................................314 7.1. Наложение геометрических ограничений ........................................................314 7.2. Объекты геометрических ограничений.............................................................317 7.3. Позиционирование набора тел ..........................................................................320 7.4. Уравнения геометрических ограничений .........................................................324 7.5. Консервативный метод .......................................................................................325 7.6. Метод декомпозиции ..........................................................................................327 Упражнения................................................................................................................330 Глава 8. Геометрическая модель .....................................................................331 8.1. Состав геометрической модели .........................................................................331 8.2. Применение геометрической модели ...............................................................332 8.3. Построение векторного изображения ...............................................................333 8.4. Моделирование оптических свойств .................................................................338 8.5. Построение точечного изображения .................................................................344 8.6. Триангуляция ......................................................................................................350 8.7. Триангуляция поверхности ................................................................................356 8.8. Триангуляция оболочки ......................................................................................359 8.9. Инерционные характеристики ..........................................................................360 8.10. Вычисление инерционных характеристик .....................................................364 8.11. Главные моменты инерции ..............................................................................368 Упражнения................................................................................................................374 Приложение. Криволинейные системы .......................................................375 A.1. Криволинейные координаты .............................................................................375 A.2. Дифференцирование в криволинейных координатах ....................................380 A.3. Тензоры в криволинейных координатах ..........................................................383 A.4. Примеры тензоров .............................................................................................388 А.5. Ортогональные криволинейные координаты ..................................................394 Список литературы ..............................................................................................402 Предметный указатель .......................................................................................403
Предисловие от издательства Отзывы и пОжелания Мы всегда рады отзывам наших читателей. Расскажите нам, что вы думаете об этой книге – что понравилось или, может быть, не понравилось. Отзывы важны для нас, чтобы выпус кать книги, которые будут для вас максимально полезны. Вы можете написать отзыв на нашем сайте www.dmkpress.com, зайдя на страницу книги и оставив комментарий в разделе «Отзывы и рецензии». Также можно послать письмо главному редактору по адресу dmkpress@gmail.com; при этом укажите название книги в теме письма. Если вы являетесь экспертом в какой-либо области и заинтересованы в написании новой книги, заполните форму на нашем сайте по адресу http://dmkpress. com/authors/publish_book/ или напишите в издательство по адресу dmkpress@ gmail.com. СпиСОк ОпечатОк Хотя мы приняли все возможные меры для того, чтобы обеспечить высокое качество наших текстов, ошибки все равно случаются. Если вы найдете ошибку в одной из наших книг – возможно, ошибку в основном тексте или программном коде, – мы будем очень благодарны, если вы сообщите нам о ней. Сделав это, вы избавите других читателей от недопонимания и поможете нам улучшить последующие издания этой книги. Если вы найдете какие-либо ошибки в коде, пожалуйста, сообщите о них главному редактору по адресу dmkpress@gmail.com, и мы исправим это в следующих тиражах. нарушение автОрСких прав Пиратство в интернете по-прежнему остается насущной проблемой. Издательство «ДМК Пресс» очень серь езно относится к вопросам защиты авторских прав и лицензирования. Если вы столкнетесь в интернете с незаконной пуб ликацией какой-либо из наших книг, пожалуйста, пришлите нам ссылку на интернет-ресурс, чтобы мы могли применить санкции. Ссылку на подозрительные материалы можно прислать по адресу электронной почты dmkpress@gmail.com. Мы высоко ценим любую помощь по защите наших авторов, благодаря которой мы можем предоставлять вам качественные материалы.
Предисловие Предлагаемая книга предназначена для тех, кто изучает, использует в работе или разрабатывает системы геометрического моделирования. Она посвящена математическому аппарату этих систем и рассказывает о принципах построения численных моделей геометрии реальных и воображаемых объектов. В книге изложены методы построения кривых, поверхностей и тел, приведены алгоритмы и структуры данных геометрических объектов, разобраны принципы, обеспечивающие взаимосвязь элементов модели, рассмотрен состав геометрической модели и некоторые области её применения. В основу книги положен опыт работы автора над геометрическим ядром C3D. Автор благодарит Е. В. Бахина, А. В. Голикова, Г. Ф. Горшкова, О. А. Зыкова, Ю. А. Козулина, А. О. Максименко, Э. О. Максименко, В. А. Мартынюка, Г. В. Носовского, С. И. Роткова, Т. М. Янкину, К. Версприлла, Дж. Орра и коллег по разработке геометрического ядра C3D за полезные советы и поддержку.
Посвящается Марии Введение С развитием компьютеров появилась возможность создавать численные модели различных объектов и экспериментировать с ними. Численные модели используются в системах, выполняющих проектирование (Computer Aided Design), расчёты (Computer Aided Engineering) и производство (Computer Aided Manufacturing) моделируемых объектов. Во всех этих системах с той или иной точностью требуется описать геометрическую форму моделируемых объектов. В процессе развития этих систем сформировалась область математики, которая называется геометрическим моделированием. Геометрическое моделирование изучает методы построения численных моделей геометрии реальных и воображаемых объектов, а также методы управления этими моделями. Геометрическая модель содержит описание формы моделируемого объекта и описание связей элементов модели. Для возможности редактирования и создания подобных моделей в геометрическую модель включают дерево построения, хранящее последовательность и способы построения модели. Элементы геометрической модели, как правило, наделяют атрибутами, которые несут информацию о физических и других свойствах этих элементов. Геометрическое моделирование начало свое развитие с систем компьютерного черчения. Позже появились системы каркасного и поверхностного моделирования. Компьютерные системы параметрического твердотельного моделирования (Solid Modeling) кардинально изменили технологию работы конструктора. Они позволили фиксировать конструкторскую мысль не в виде плоского чертежа, а в виде трёхмерной модели. Для описания связей элементов модели стали применяться вариационные методы. Ещё одним шагом в развитии геометрического моделирования стали методы прямого моделирования (Direct Modeling), расширяющие возможности конструктора и дизайнера. Окружающие нас объекты занимают некоторый конечный объем пространства. Для моделирования этих объектов нужно описать занимаемую ими часть пространства. В определенных случаях это можно сделать с помощью элементов объёма моделируемого объекта. Элементы объёма называют вокселами. Элементами объёма могут служить кубы, призмы и пирамиды. Воксельные модели используются в случаях, когда атрибуты элементов объёма модели имеют большее значение, чем геометрическая форма модели.
Введение 9 С определённой степенью точности геометрическую форму объектов можно описать, используя плоские грани. Описание геометрической формы моделируемого объекта плоскими гранями называют полигональным представлением. Криволинейные поверхности полигональное представление аппроксимирует набором пластин треугольной или четырёхугольной формы. Использование плоских граней значительно упрощает работу с моделью. Полигональную модель обычно строят на основе замеров реальных объектов или на основе другой модели. Полигональное представление широко применяется для визуализации геометрических моделей и при передаче информации для 3D-печати. Многие объекты можно получить, используя поступательное и вращательное движения. Элементы поверхности таких объектов можно задать плоскостью, поверхностью сферы, поверхностью цилиндра, поверхностью конуса, поверхностью тора. Все перечисленные поверхности делят пространство на две части, и для них можно указать, с какой стороны поверхности находится внутренний объём моделируемого объекта. Используя для моделирования такие поверхности, можно построить геометрическую модель путём выполнения операций над примитивами, к которым, как правило, относят прямо угольную призму, треугольную призму, сферу, цилиндр, конус, тор. Описанным образом устроена конструктивная твердотельная геометрия (Constructive Solid Geometry). В настоящее время конструктивная твердотельная геометрия практически не используется. Наиболее общий подход к описанию геометрической формы моделируемого объекта использует поверхности произвольной формы, представленные в явном виде. Этот подход состоит в представлении поверхности моделируемого объекта совокупностью граней, стыкующихся по рёбрам и содержащих информацию о своих границах и связях с соседями. Грани стыкуются так, что внешняя сторона одной грани переходит во внешнюю сторону соседней грани. Грани могут иметь произвольную форму. Описание геометрической формы моделируемого объекта криволинейными гранями, стыкующимися друг с другом по общим рёбрам, называется граничным представлением (Boundary Representation). Оно даёт возможность выполнять над моделями множество операций, сохраняя при этом единый способ их внутреннего устройства. Граничное представление содержит точное описание границы моделируемого объекта, отделяющей его от остальной части пространства. Граничное представление используют большинство современных CAD-систем. Между элементами геометрической модели устанавливают вариационные связи, поддерживающие совпадение точек, совпадение осей, совпадение плоскостей, принадлежность объекта плоскости, касание поверхностей и многие другие зависимости. Взаимозависимости элементов модели называют геометрическими ограничениями (Geometric Constraints). Связанными могут быть различные размеры одного объекта и нескольких объектов. Через такие связи легко редактировать модель и создавать подобные модели. Как прави
Введение ло, геометрические ограничения могут быть удовлетворены не единственным образом. Большинство CAD-систем имеют модули, устанавливающие геометрические ограничения на элементы геометрической модели. Геометрическое моделирование изучает методы поиска решения, которое соответствует поставленной практической задаче. В разработке своих методов геометрическое моделирование опирается на разные области математики, в первую очередь на дифференциальную геометрию и численные методы. Геометрическое моделирование тесно связано с программированием, оно в полной мере востребовало особенности объектно-ориентированного подхода: сокрытие данных (encapsulation), наследование (inheritance), переопределение семантики операций (polymorphism). Например, объектно-ориентированное программирование позволяет создавать кривые и поверхности, обладающие некоторым множеством общих методов, скрыв реализацию этих методов каждой конкретной кривой и поверхности и используемые для этого данные. Геометрическая модель используется для визуализации моделируемого объекта, проверки возможности корректно собрать моделируемый объект из его элементов, кинематической проверки, вычисления инерционных характеристик, расчёта траектории режущего инструмента, проектирования оснастки и других этапов подготовки производства моделируемого объекта. С помощью геометрической модели выполняются численные эксперименты и производство моделируемого объекта. Для этого используются атрибуты элементов модели, описывающие физические и другие свойства моделируемого объекта. Геометрическое моделирование позволяет сократить время и материальные затраты на производство проектируемых объектов и повысить их качество. Геометрическое моделирование автоматизирует труд дизайнеров, конструкторов, архитекторов, технологов, позволяет им уйти от рутинных работ и сосредоточиться на творчестве.