Геометрическое моделирование гладкого сопряжения полиноминальных кривых класса В-сплайнов тема диссертации и автореферата по ВАК РФ 00.00.00, кандидат наук Ганчук Сергей Николаевич
- Специальность ВАК РФ00.00.00
- Количество страниц 127
Оглавление диссертации кандидат наук Ганчук Сергей Николаевич
1.2. Обзор литературы
1.2.1. Сферы применения параметрических кривых и современные исследования в этой области
1.2.2. Гладкое сопряжение параметрических кривых
1.3. Анализ кривых Безье и в-сплайнов
1.3.1. Некоторые свойства кривых Безье
1.3.2. Свойства в-сплайнов и их производных
1.4. Анализ интерполяционных и аппроксимационных параметрических кривых33
1.5. Анализ геометрической и параметрической непрерывности параметрических кривых
1.6. Математическое определение термина «гладкое сопряжение»
1.7. Обоснование целевых функций для задач сопряжения
1.8. Обоснование метрик точности для задач сопряжения
Выводы по главе
ГЛАВА 2. ОПТИМАЛЬНОЕ СОПРЯЖЕНИЙ ДВУХ КРИВЫХ БЕЗЬЕ С СОХРАНЕНИЕМ ГЛАДКОСТИ И ДОПОЛНИТЕЛЬНЫМИ ОГРАНИЧЕНИЯМИ
2.1. Формулировка целей и задач
2.2. Математическая постановка задачи
2.3. Метод решения оптимизационной задачи
2.4. Дополнительные ограничения
2.5. Расчет кривой R(t)
2.6. Результаты и обсуждения
Выводы по главе
Выводы:
ГЛАВА 3. ГЛАДКАЯ АППРОКСИМАЦИЯ ПРОИЗВОЛЬНОГО НАБОРА КРИВЫХ БЕЗЬЕ И МЕТРИКИ ТОЧНОСТИ
3.1. Формулировка целей и задач
3.2. Постановка задачи
3.3. Метод решения оптимизационной задачи
3.4. Метрики отклонения аппроксимирующей кривой от исходных
3.5. Применение метода
Выводы по главе
ГЛАВА 4. ОПТИМАЛЬНОЕ СОПРЯЖЕНИЙ ДВУХ В-СПЛАЙНОВ С СОХРАНЕНИЕМ ГЛАДКОСТИ И ДОПОЛНИТЕЛЬНЫМИ ОГРАНИЧЕНИЯМИ
4.1. Формулировка целей и задач
4.2. Постановка задачи
4.3. Используемый метод
4.4. Переход к аппроксимирующему сплайну R(t)
4.5. Результаты и обсуждения
Выводы по главе
ГЛАВА 5. ОПТИМАЛЬНАЯ АППРОКСИМАЦИЯ NURBS-КРИВОЙ ß-СПЛАЙНОМ С ПОНИЖЕНИЕМ СТЕПЕНИ ß-СПЛАЙНА
5.1. Постановка задачи аппроксимации NURBS-кривой ß-сплайном
5.2. Метод решения задачи аппроксимации NURBS-кривой ß-сплайном
5.3. Производные NURBS-кривых
5.4. Понижение степени ß-сплайна
5.4.1. Постановка задачи
5.4.2. Нативный алгорим
5.4.3. Интегральный алгоритм
5.4.4. Алгоритм Безье функций
5.5. Сравнение алгоритмов понижения степени сплайнов
5.6. Вычислительная сложность предлагаемых алгоритмов
Выводы по главе
ЗАКЛЮЧЕНИЕ
СПИСОК ЛИТЕРАТУРЫ
Приложение А. СПРАВКИ О ВНЕДРЕНИИ
Приложение Б. СВИДЕТЕЛЬСТВА О РЕГИСТРАЦИИ ПРОГРАММ
ВВЕДЕНИЕ
Рекомендованный список диссертаций по специальности «Другие cпециальности», 00.00.00 шифр ВАК
Алгоритмы преобразования чертежно-конструкторской документации в трехмерную каркасную модель2026 год, кандидат наук Роменский Сергей Александрович
Масштабирующие уравнения2005 год, доктор физико-математических наук Протасов, Владимир Юрьевич
Развитие методов математического моделирования сложных поверхностей применительно к проектированию и изготовлению аэродинамических моделей самолетов2001 год, кандидат технических наук Вермель, Андрей Владимирович
Методы аппроксимации дискретных обводов в задачах твердотельного моделирования1999 год, кандидат технических наук Денискина, Антонина Робертовна
Эффективные алгоритмы обработки и отображения графических данных и их реализация в программных комплексах2002 год, доктор технических наук Костюк, Юрий Леонидович
Введение диссертации (часть автореферата) на тему «Геометрическое моделирование гладкого сопряжения полиноминальных кривых класса В-сплайнов»
Актуальность темы исследования
В современном мире идет всё ускоряющееся (экспоненциальное) развитие, которое является следствием использования результатов научных исследований и научных разработок во всех сферах нашей жизни. Это развитие происходит за счет существенного возрастания сложности конструкций и технологий, усложнения планирования и организации производственных процессов, и, кроме этого, возникает необходимость обеспечения сопровождения изделий на всех этапах их жизненного цикла. Для решения подобных задач создаются комплексные наукоёмкие IT-решения, такие как Система Полного Жизненного Цикла (СПЖЦ). Одним из ключевых функциональных модулей в составе такой системы является CAD-система (Computer-Aided Design), обеспечивающая автоматизированное проектирование изделий. Программная архитектура CAD-модуля базируется на геометрическом ядре -программно-математической библиотеке, отвечающей за все преобразования геометрических объектов. В современных геометрических ядрах для моделирования объектов используются различные параметрические, аналитические и алгебраические модели, в том числе полиноминальные кривые класса В-сплайнов - такие как NURBS (Non-Uniform Rational B-Splines), B-сплайны и кривые Безье. В геометрическом ядре современных CAD-систем должны быть реализованы различные операции с этими кривыми, в том числе и операции сопряжения этих кривых c высоким порядком гладкости при дополнительных ограничениях.
Задачи гладкого сопряжения S-сплайнов и кривых Безье возникают при проектировании поверхностей обвода в таких отраслях как судостроение, автомобилестроение и авиастроение, при разработке конструкций рабочих
поверхностей лопаток турбин, гребных и воздушных винтов, автомобильных и железнодорожных трасс, при учете требований к эстетике в архитектуре и дизайне.
Таже математические алгоритмы гладкого сопряжения являются неотъемлемой частью геометрических ядер моделирования в современных САО-системах.
Дальнейшее развитие математических методов гладкого сопряжения параметрических кривых является востребованной задачей в таких областях как: твердотельное и поверхностное моделирование, совершенствование геометрических ядер моделирования в САО-системах, а также построение и анализ кривых и поверхностей сложных форм. Развитие математических методов гладкого сопряжения в конечном счёте позволяет проектировать и производить более сложные технические изделия, создавать выразительные архитектурные формы и находить совершенные дизайнерские решения.
Результаты развития математических методов гладкого сопряжения параметрических кривых являются основой для совершенствования геометрических ядер моделирования. После программной реализации эти методы становятся инструментом, который в конечном счёте используют конструкторы, архитекторы и дизайнеры для решения своих задач. Новые методы гладкого сопряжения должны быть представлены в виде аналитических методов и вычислительных алгоритмов, допускать возможность реализации в виде программных модулей геометрического ядра САО-систем, кроме этого, алгоритмы должны обеспечивать высокую точность, устойчивость и вычислительную эффективность.
Известные к настоящему времени методы гладкого сопряжения довольно широко представлены в научной литературе, но они не позволяют решать следующие актуальные задачи:
- сопрягать параметрические кривые произвольной степени класса В-сплайнов с порядком гладкости в точке сопряжения соответствующем степени кривых (эта задача обусловлена тем, что в геометрических ядрах обрабатываются кривые высоких
степеней (по умолчанию 5-й степени, а в некоторых случаях 12-й и даже 24-й степени));
- выполнять, кроме условий гладкого сопряжения, дополнительные условия для сопряженных кривых в виде точки (точек), через которую должна пройти сопряженная кривая, и при этом производные в этой точке должны соответствовать заданным значениям;
- выполнять замены без погрешности (без погрешности как по самой функции, так и по всем её производным) двух или нескольких сопряженных кривых одной кривой, но определенной на меньшем количестве контрольных точек (для решения этой задачи порядок сопряжения должен соответствовать степени кривой);
- реализовать оптимальное сопряжение кривых в смысле минимального отклонения от исходных (не сопряженных) кривых;
- для решения всех вышеперечисленных задач математические алгоритмы должны быть полностью аналитическими и допускать возможность реализации в виде программных модулей геометрического ядра CAD-систем, кроме этого, алгоритмы должны обеспечивать высокую точность, устойчивость и вычислительную эффективность.
Решение поставленных задач составляет основу для описания сложного объекта, состоящего из множества поверхностей, с помощью единой поверхности. Эта возможность критически важна для создания конкурентоспособных отечественных СЛО-систем тяжёлого класса.
В настоящей диссертационной работе решаются обозначенные выше, нерешенные в настоящее время задачи, что обуславливает актуальность работы.
Степень разработанности темы исследования
Задачам гладкого сопряжения параметрических кривых вида кривых Безье и в-сплайнов посвящено достаточно большое количество работ.
Теоретическому изучению сплайнов и, как их частному случаю, кривым Безье посвящены работы российских /советских /русских ученых Бернштейна C. H., Завьялова Ю. С., Леуса В. А., Скороспелова В. А., Квасова Б. И., Мирошниченко B. T., Голованова Н. Н., Корнейчука Н. П., Бабенко В. Ф., Лигуна А. А., Малоземова В. Н., Певного А. Б., Стечкина С. Б., Субботина Ю. Н. Среди работ зарубежных ученых необходимо выделить, прежде всего Piegl L. и Tiller W., а также Rogers D. F., Salomon D., Farin G., Schoenberg I.
Вопросы гладкого сопряжения кривых Безье и В-сплайнов рассмотрены в работах российских ученых Панчука К. Л., Любчинова Е. В., Мясоедова Т. М., Ромакина В. А., Короткого В. А., Борисенко В. В. Также следует указать работы иностранных ученых Lu L., Jiang C., Zhu P., Wang G., Hoschek J., Moavia Ameer M., Muhammad Abbas M., Shafiq M., Nazir T., Birhanu A.
Изучение выполненных к настоящему времени работ по сопряжению параметрических кривых позволяет сделать выводы, что эти задачи являются актуальными для современных CAD-систем, и что существует необходимость разработки математических методов оптимального сопряжения параметрических кривых высоких (произвольных) степеней с порядком гладкости вплоть до степени кривых при дополнительных разнообразных ограничениях.
Объект исследования - параметрические нерациональные функции вида кривых Безье и В-сплайнов.
Предмет исследования - аналитические методы оптимального сопряжения кривых Безье и В-сплайнов с высоким порядком гладкости при дополнительных ограничениях.
Цель и задачи исследования
Целью исследования является развитие математических методов оптимального гладкого сопряжения нерациональных параметрических 2D- и JD-кривых при
наложении на сопряженные кривые дополнительных ограничений и анализ отклонения аппроксимирующей кривой от исходных.
Для достижения поставленной цели требуется решение следующих задач:
1. Предложить математический алгоритм для оптимального сопряжения двух нерациональных кривых Безье при этом в точке сопряжения должен быть произвольный порядок гладкости и на аппроксимирующие кривые могут быть наложены дополнительные ограничения.
2. Разработать математический подход для оптимального гладкого сопряжения произвольного количества кривых Безье.
3. Предложить алгоритм оптимального гладкого сопряжения двух В-сплайнов, позволяющий выполнить сопряжение с максимально возможным порядком гладкости, реализовать дополнительные ограничения и преобразовать аппроксимирующие сплайны в единственный В-сплайн той же степени.
4. Разработать математический алгоритм для оптимальной аппроксимации исходной рациональной кривой нерациональной параметрической кривой, позволяющий минимизировать заданную метрику между исходной и аппроксимирующей кривой, понизить степень и выполнить дополнительные ограничения.
Методология и методы исследования
Решаемые в работе задачи представляют собой дальнейшее развитие геометрической теории аналитического представления и преобразования в 2D- и 3D-пространстве таких геометрических объектов, как кривые Безье и В-сплайны. Основной теоретический подход работы основан на разложении исходной функции по базису функций, рассчитываемых по рекуррентному алгоритму Кокса Де Бура. Теоретические подходы для представления и преобразования кривых Безье и В-сплайнов основаны на параметрическом представлении функций и включают в себя дифференциальные и интегральные свойства параметрических функций, методы
решения оптимизационных задач при наличии ограничений и методы линейной алгебры. Метрики Хаусдорфа, кривизны и Ь^ применяются для анализа точности аппроксимации.
Научная новизна полученных результатов:
1. Предложен математический алгоритм сопряжения двух нерациональных кривых Безье произвольной степени, который позволяет одновременно решить три задачи: (1) выполнить условия гладкого сопряжения исходных кривых с порядком непрерывности вплоть до степени кривых, (2) минимизировать отличие аппроксимирующих кривых от исходных, (3) реализовать дополнительные требования к аппроксимирующей кривой, которые состоят в необходимости прохождения аппроксимирующей кривой через наперед заданные точки и при этом производные аппроксимирующей кривой в этих заданных точках должны соответствовать наперед заданным значениям. Так же дополнительным ограничением может быть неизменность одной из исходных кривых. Задача может быть решена как с применением целевой функции, минимизирующей приращение контрольных точек (метрика ¿1), так и с минимизацией квадрата отклонения (метрика ). Метод сводит задачу аппроксимации к оптимизационной задаче при ограничениях в виде равенств. Для исходных кривых общая точка касания не требуется. Метод применим для 2D- и 3D-кривых.
2. Разработан математический алгоритм гладкого сопряжения произвольного количества кривых Безье. Применяется минимизация целевой функции при ограничениях в виде равенств, которые в свою очередь выражают равенство всех (вплоть до степени кривых) производных в точках сопряжения. Решение этой задачи методом множителей Лагранжа сводится к системе линейных уравнений, матрица и вектора которой представляются как блочные, при этом элементы блоков в свою очередь являются также блочными матрицами. Показано, что элементы матрицы и векторов системы, которую необходимо решать, состоят из двух
подматриц, которые представляют собой значения базисных функций и их производных в предельных точках области определения (и = 0 и и = 1) и векторов контрольных точек исходных кривых. При решении системы контролируется существование единственности решения. С помощью различных метрик выполнен анализ отклонения сопряженных кривых от исходных. Метод применим для 2D- и 3D-случая.
3. Математический алгоритм гладкого сопряжения двух В-сплайнов. Метод позволяет минимизировать отклонения исходных и аппроксимирующих сплайнов, реализовать гладкое сопряжение вплоть до (р — 1) порядка (р - степень сплайнов), представить без погрешности сопряженные сплайны одним сплайном той же степени, выполнить дополнительные требования для аппроксимирующего сплайна. Задача решается в два этапа, на первом этапе выполняется гладкое сопряжение, для чего решается оптимизационная задача при ограничениях в виде равенств. На втором этапе выполняется переход от двух сопряженных сплайном к одному сплайну, для чего выполняются преобразования узловых векторов и выводится система линейных уравнений, решение которой дает контрольные точки аппроксимирующего сплайна.
4. Разработан алгоритм аппроксимации рациональных кривых вида NURBS кривыми вида В-сплайн. Аппроксимирующая кривая минимизирует целевую функцию, которая представляет собой отличие аппроксимирующей кривой от исходной кривой. Аппроксимирующая кривая может имеет более низкую степень, может быть определена на меньшем количестве контрольных точек и на аппроксимирующую кривую могут быть наложены дополнительные требования в виде прохождения через заданную точку и заданными значениями производных в этой точке. Алгоритм сводит задачу аппроксимации к оптимизационной задаче с ограничениями в виде равенств. Метод применим для 2D- и 3D-кривых.
Теоретическая и практическая значимость результатов исследования
Теоретическая значимость результатов исследования заключается в разработке новых математических методов оптимального сопряжений параметрических кривых вида кривых Безье и В-сплайнов произвольных степеней с порядком гладкости вплоть до степени кривой при разнообразных дополнительных ограничениях.
Практическая значимость результатов исследования обусловлена тем, что работа выполнялась в рамках реализации «Постановления Правительства Российской Федерации от 31.08.2019 (в редакции от 22.12.2022) в части реализации требования по расширению функциональных возможностей СЛО-модуля СПЖЦ «САРУС», а именно:
- преобразования форматов представления геометрических объектов;
- работы с объектами, в которых присутствуют сложные пересечения поверхностей второго порядка (предельные случаи пересечения).
Результаты диссертационной работы внедрены:
- в программные модули СПЖЦ.СЛО и СПЖЦ.CORE СПЖЦ «Цифровое предприятие», которые прошли успешную апробацию в 2025г. в некоторых подразделениях Федерального государственного унитарного предприятия «Российский федеральный ядерный центр - Всероссийский научно-исследовательский институт экспериментальной физики» (справка о внедрении №195-35/257315 от 15.09.2025 г.);
- в 2025-2026 учебном году в учебный процесс кафедры «Цифровые технологии» физико-технического факультета в учебные планы дисциплин: «Машинное обучение и анализ данных», «Численные методы», «Сквозная 3-О технология на основе ядра СПЖЦ.соге», «Проектирование и сопровождение программных решений на С++» Саровский физико-технический институт -филиал федерального государственного автономного образовательного учреждения высшего образования «Национальный исследовательский ядерный университет «МИФИ» (СарФТИ НИЯу МИФИ) (акт внедрения);
- в 2025-2026 учебном году в учебный процесс магистров кафедры ФН5 18.04.01 «Химическая технология» направленность «Цифровое моделирование химических технологий» Московского государственного технического университета им. Н.Э. Баумана, в учебную программу дисциплины «Моделирование материалов» (акт внедрения);
- программный модуль «Ядро геометрического и производственно-технологического моделирования» комплекса программ в защищенном исполнении «Система полного жизненного цикла изделий «Цифровое предприятие» (СПЖЦ.СЛО) (свидетельство № 2021664303);
- программный модуль «Система конструкторского проектирования» комплекса программ в защищенном исполнении «Система полного жизненного цикла изделий «Цифровое предприятие» (СПЖЦ.Соге 2.0) (свидетельство № 2024619591).
Достоверность и обоснованность полученных в работе результатов и выводов
Достоверность и обоснованность полученных в работе результатов и выводов достигается применением строгих математических методов представления параметрических нерациональных кривых, математического аппарата дифференциальных и интегральных преобразований этих кривых, что позволило сформулировать экстремальные задачи при ограничениях на искомые переменные. Для решения этих задач используются известные методы математического программирования. Корректность прилагаемых методов гладкого сопряжения подтверждается анализом точности аппроксимации, для чего применяются метрики Хаусдорфа, кривизны и . Единственность решения систем линейных уравнений гарантируется расчетов детерминанта, ранга и числа обусловленности матрицы (включая расширенную матрицу) системы.
Апробация результатов диссертации
Основные положения диссертационной работы докладывались и обсуждались на: 34-й и 35-й Международной конференции по компьютерной графике и машинному зрению «ГрафиКон» (2024, 2025), 22-й и 23-й научно-технической конференции «Молодежь в науке» (г. Саров, 2024, 2025), ХУШ и XIX Всероссийской молодежной научно-инновационной школе «Математика и математическое моделирование» (г. Саров, 2024,2025), на научно-техническом совете Института Цифровых Технологий РФЯЦ-ВНИИЭФ, на семинаре кафедры инженерной графики и информационных технологий Института информационных технологий Нижегородского государственного архитектурно-строительного университета.
Основные положения, выносимые на защиту:
1. Математический алгоритм гладкого сопряжения двух кривых Безье, основанный на представлении кривой Безье как частного случая В-сплайна, в алгоритме решается оптимизационная задача при дополнительных ограничениях на дифференциальные свойства некоторых точек сопряженных кривых.
2. Алгоритм гладкого сопряжения произвольного количества кривых Безье с дополнительными ограничениями, базирующийся на представлении оптимизационной задачи в матричном виде.
3. Математический алгоритм гладкого сопряжения В-сплайнов с последующим объединением в один В-сплайн, основанный на объединении узловых векторов, в алгоритме решается оптимизационная задача при ограничениях в виде равенств и выполняется линейное преобразовании узловых векторов.
4. Алгоритм аппроксимации параметрических кривых, позволяющий минимизировать отклонение аппроксимирующей кривой от исходной, понизить степень аппроксимирующей кривой и выполнить дополнительные ограничения для аппроксимирующей кривой за счёт представления сплайнов в виде набора кривых Безье и последующего решения линейной оптимизационной задачи.
Соответствие паспорту специальности 2.5.1
Диссертационная работа соответствует паспорту научной специальности 2.5.1. «Инженерная геометрия и компьютерная графика. Цифровая поддержка жизненного цикла изделий» по следующим пунктам.
П. 2. Теория и практика непрерывного и дискретного геометрического моделирования. Конструирование кривых линий, поверхностей и тел по заданным требованиям.
П. 6. Геометрические основы процессов проектирования, конструирования и технологии производства с применением компьютерных технологий.
П. 11. Разработка геометрических и других научных основ построения систем и средств цифровой поддержки процессов ЖЦИ, разработка и исследование методов, моделей и алгоритмов синтеза и анализа решений различного уровня, включая конструкторские и технологические решения.
Публикации
Результаты исследований опубликованы в 17 научных работах, 5 из которых опубликованы в изданиях, рекомендованных ВАК по научной специальности 2.5.1 (4 работы в издании К2, 1 работа в издании К3), 10 работ в сборниках научных трудов и конференций, 2 - свидетельства регистрации программы для ЭВМ.
Личный вклад автора
Все выносимые на защиту научные положения получены лично автором или под его руководством.
Постановка цели исследования и выбор основных теоретических методов были выполнены совместно с научных руководителем.
Автором лично выполнен анализ существующих математических методов представления и сопряжения параметрических кривых, и на основании этого анализа были предложены математические постановки задач гладкого сопряжения как оптимизационные задачи при наличии ограничений. Автором были выбраны методы
решения оптимизационных задач. Автором ставились задачи программной реализации решений сформулированных задач и визуализации результатов. При непосредственном участии автора проводилась разработка и тестирование программных кодов.
Структура и объем работы
Диссертация включает в себя введение, 5 глав с выводами, заключения и список литературы. Общий объем составляет 128 страниц текста, 27 рисунков, 1 таблица. Библиографический список включает в себя 139 наименований, в том числе 78 иностранных.
ГЛАВА 1. АНАЛИЗ СУЩЕСТВУЮЩИХ МЕТОДОВ ПРЕДСТАВЛЕНИЙ И СОПРЯЖЕНЕНИЙ ПАРАМЕТРИЧЕСКИХ КРИВЫХ
1.1. Анализ геометрических моделей в компьютерной графике
Сложность современных технических систем такова, что их конструирование невозможно без применения систем автоматизированного проектирования (САПР), в которых создаются и преобразовываются геометрические модели. Геометрические модели, в свою очередь, являются цифровым двойником реальных технических объектов, содержащим форму, размеры, материал изготовления и в некоторых случаях технологию изготовления. Для представления объемных объектов различают каркасные, поверхностные и твердотельные геометрические модели [37, 42, 56].
Каркасная (проволочная) модель содержит в себе только связанность точек объекта, то есть в ней представлены только ребра в виде прямых линий, линий второго порядка (коник), кривых Безье и сплайнов. Отсутствие явной информации о поверхности может привести к тому, что модели будут неоднозначными, неполными и невозможными для изготовления, так как могут не соответствовать реальным физическим объектам [83].
Поверхностная модель содержит в себе математическое описание не только ребер, но и поверхностей, что позволяет моделировать объекты со сложными формами по сравнению с каркасными моделями. Методы преобразования каркасных моделей в поверхностные подробно описаны в диссертации Шоркиной И. Н. [61].
Твердотельные модели содержат информацию как о поверхностях, так и о внутренних объемах объекта [126, 127].
С точки зрения математического представления линий и поверхностей [57, 83, 120], в компьютерной графике находят в основном применение неявные уравнения и параметрическое представление функций.
Неявное уравнение кривой, лежащей в плоскости ху, имеет вид f(x, у) = 0 и описывает неявную связь между координатами х и у точки принадлежащей линии, которая задана неявных уравнением f(x)y) = 0. Примером неявного задания окружности единичного радиуса является уравнение:
[(х> у) = х2 + у2 — 1 = 0. Аналогично выполняется неявное представление для пространственных кривых и поверхностей.
Параметрическое представление имеет вид, при котором каждая координата точки линии представляется как явная функция независимого параметра (параметрической переменной). Для 2.0-кривой параметрическое представление записывается следующим образом:
С (и) = (х(и),у(и)), а <и < Ь.
Для ЗD-кривой:
С (и) = (х(и),у(и),г(и)), а<и<Ь. Для примера окружность единичного радиуса в параметрической форме может быть представлена в виде:
х(и) = cos(u),
п
у(и) = зт(и), 0 <и <—.
2
Вектор Ъ-ой производной при параметрическом представлении имеет довольно простой вид. Для 2D-линии:
С(к)(и) = (х(к)(и),у(к)(и)),
для ЗD-линии:
С(к)(и) = (х(к)(и),у(к)(и),г(к)(и))
где к - порядок производной.
Для параметрического представления поверхностей используется параметрическая функция двух переменных:
Б(и,у) = (х(и,у),у(и,у),г(и,у)), а <и < Ь, с <у < й. Вектор производных определяется аналогично с кривой.
В инженерной геометрии и компьютерной графике применяются как неявное, так и параметрическое представление (явное представление используется крайне редко). Сравнивая неявное и параметрическое представление можно отметить [120]:
1) распространение методов, разработанных для 20-объектов, легко распространяется на объекты, легко распространяется на ЗD-объекты для параметрического представления, что нельзя сказать для неявного представления;
2) описание границ объекта в неявной форме иногда приводит к очень громоздким выражениям, а параметрической форме это реализуется естественным образом через границы области определения параметрических переменных, но неограниченные объекты в параметрической форме естественным образом представить очень затруднительно;
3) при параметрическом представленим легко реализуется последовательный обход всех точек кривой (поверхности) простым последовательным перебором параметрической переменной, что верно и для поверхностей;
4) каждому представлению присущи свои сложности, например:
- расчет точки на кривой (поверхности) представляет некоторые трудности для неявного представления;
- для заданной точки определение, лежит ли она на кривой (поверхности);
- несколько сложна для параметрического представления;
- параметрическое представление иногда приводит к абсурдным результатам, например, при некоторых параметрических представлениях сферы невозможно рассчитать нормаль на полюсах [120].
В заключение краткого обзора неявного и параметрического представления, следует сказать, что параметрическое представление обладает рядом преимуществ, поэтому используется в геометрических ядрах современных CAD-систем, в том числе в CAD-модуле СПЖЦ «САРУС» [43] используются оба представления.
1.2. Обзор литературы
1.2.1. Сферы применения параметрических кривых и современные
исследования в этой области
Исторически первой параметрической кривой, используемой в компьютерной графике, является кривая Безье, которая была независимо предложена Полем де Кастельжо (сотрудник концерна «Citroen») и Пьером Безье (сотрудник концерна «Renault»), которые занимались проектированием кузовов автомобилей. При этом работа де Кастельжо была выполнена первой, но у автора не было возможности ее опубликовать [88], поэтому кривые носят имя Безье. Хотя де Кастельжо и Безье вывели свои алгоритмы построения исходя из геометрических соображений, последующие исследования показали, что их базисные функции эквивалентны базису Бернштейна, который был впервые предложен русским/советским математиком Бернштейном Сергей Натановичем в 1912 году [4, 68, 89, 128]. Влияние работ Бернштейна, де Кастельжо и Безье огромное, так как и в наше время кривые Безье используются во множестве приложений.
Похожие диссертационные работы по специальности «Другие cпециальности», 00.00.00 шифр ВАК
Моделирование поверхностей экспериментального происхождения1984 год, кандидат технических наук Симандуев, Симанду Хияевич
Исследование и применение рестриктивных В-сплайнов1999 год, кандидат технических наук Черноусов, Максим Викторович
Алгоритмы и программные средства для пересечения трёхмерных тел в граничном представлении2016 год, кандидат наук Гатилов Степан Юрьевич
Приближения в геометрии и анализе: орторекурсивные и синтетические методы2010 год, кандидат физико-математических наук Словеснов, Александр Викторович
Алгоритмы построения сплайнов в выпуклых множествах и их приложения1985 год, кандидат физико-математических наук Ковалков, Александр Викторович
Список литературы диссертационного исследования кандидат наук Ганчук Сергей Николаевич, 2026 год
// /* //
1 »0 2 5 5 0 7 5 10 .0 12 .5 15 .0 17 5 20
Рис. 2.3. Замена двух гладко сопряженных кривых (рисунок 2) одной кривой
(дискретная норма)
На рис. 2.4 представлено решение той же задачи (гладкое сопряжение кривых, приведенных на рис. 2.1) с применением интегральной квадратичной нормы (2.12) без
дополнительных ограничений. Как видно из этого рисунка при интегральной норме начальная и конечная точки аппроксимирующей кривой отклоняются от соответствующих точек заданных кривых. Эти отклонения могут быть легко устранены введением дополнительных ограничений в виде закрепленных границ.
7 -
— Р (заданная! — О (заданная} □ й Многоуг-к (аппроксимация Р и О) - Й Кривая [аппроксимация Р и 0)
6 -
& ■
4
:
л 3
а
2 1 0
100 2.5 50 7 5 10.а 12.5 15.0 17.5 20.0
ось X
Рис. 2.4. Замена двух гладко сопряженных кривых (рисунок 2) одной кривой Я^)
(интегральная норма)
На рис. 2.5 приведены результаты сопряжения для дискретной коэффициентной нормы при следующих ограничениях:
РЫ = Р(щ), Щ = 0, Р(щ) = Р(щ), щ = 0,5,
ОЫ = ЯЫ, ^0 = 0,1, ( . )
ОЫ) = Q(Vl)' VI = 1,0.
гнгн
Р Безье Кривая {заданная) --(3 Безье Кривая (заданная)
Р Безье Кривая ¡аппроксимация Р и О) * точки ограничений
5 ■ 4
■о 3
В
2 1
а
1"0.0 2.5 50 7 5 30.0 12.5 15.0 17.5 20.0
ось X
Рисунок 2.5. Сопряжение при ограничениях (2.28) (дискретная норма)
На рис. 2.6 приведены результаты сопряжения для интегральной квадратичной нормы при последовательном добавлении следующих ограничений при и0 = 0,4:
Р(щ) = Р(щ), (2.29)
Р(1)(щ) = Р(1)(щ), (2.30)
Р(2)(щ) = Р(2)(щ). (2.31)
Дополнительное ограничение (2.29) устанавливает требование прохождения аппроксимирующей кривой (кривой Р) через заданную точку и0 на кривой Р(и). Совместные ограничения (2.29) и (2.30) задают требование прохождения через точку и0 с сохранением первой производной в этой точке. Совместные ограничения (2.29), (2.30) и (2.31) - прохождение через точку и0 с сохранением двух первых производных.
(а)
(б)
(в)
Рис. 2.6. Сопряжение с ограничениями (интегральная норма), а - ограничение (2.29), б - ограничения (2.29-2.30), в - ограничения (2.29-2.31)
Из сравнения сопряжения без ограничений (рис. 2.4) с сопряжением при различных ограничениях (рис. 2.6) можно заключить, что ограничение в виде задания второй производной существенно влияет на отклонение аппроксимирующей кривой (рис. 2.6, в) от аппроксимации без ограничений (рис. 2.4).
Выводы по главе 2
Выводы:
1. Предложен математический подход к задаче оптимального гладкого сопряжения кривых Безье произвольной степени, что позволяет в точке сопряжения сохранить параметрическую непрерывность как самой функции, так и всех ее производных до порядка равного степени заданных кривых Безье.
2. Подход позволяет наложить на аппроксимирующую кривую дополнительные ограничения в виде прохождения через заданную точку и равенства производных в этой точке заданным значениям, что является часто требованиями, возникающими при разработке (конструировании) реальных конструкций.
3. Математический подход основан на формулировке экстремальной задачи при ограничениях в виде равенств, которая решается методом множителей Лагранжа и сводится к системе линейных алгебраических уравнений. В общем виде сформулированы дополнительные ограничения и приведен способ их включения в задачу сопряжения через дополнительные слагаемые функции Лагранжа.
4. Кривые Безье и все ограничения записываются как частный случай В-сплайнов, для чего используется математический аппарат базисных функций В-сплайнов, что позволяет распространить предлагаемый метод на сопряжение произвольного количества кривых Безье и на задачи сопряжения В-сплайнов.
ГЛАВА 3. ГЛАДКАЯ АППРОКСИМАЦИЯ ПРОИЗВОЛЬНОГО НАБОРА КРИВЫХ БЕЗЬЕ И МЕТРИКИ ТОЧНОСТИ
В геометрических ядрах современных CAD-систем кривые Безье находят широкое применение, так как они используются во многих геометрических алгоритмах. Они необходимы в ситуациях, когда необходимо перейти от представления объекта в виде сплайна к представлению в виде набора сопряженных кривых Безье, что требуется во многих алгоритмах преобразования поверхностей и кривых. К таким преобразованиям относятся [120]: локальная интерполяция, скругление углов, расчет конических сечений, репараметризация и др. Кроме этого, например, в геометрическом ядре CAD-модуля СПЖЦ «САРУС» [43], алгоритм решателя пересечения поверхностей [14, 15, 92] выдает решение в виде кусочно-сегментированной линии. В некоторых случаях эти линии представляют собой кривые Безье высокой степени (5-ой по умолчанию, но могут быть и выше, вплоть до 12-ой степени), но в полученном решении порядок непрерывности в точках соединения сегментов С0. Чтобы передать эту линию для обработки в последующие операции (в последующие программные модули), необходимо обеспечить её непрерывность до уровня, соответствующего степени кривых Безье.
В CAD-системах задачи аппроксимации сопряжения кусочно-полиноминальных функций с высоким порядком гладкости в точке сопряжения также возникают при обмене графическими данными с другими системами [90] и интеграции, созданных объектов в объекты более высокого уровня [96]. В [96] указывается, что решения этих задач необходимо применять две операции - понижение степени и сопряжение отдельных сегментов с последующим представлением сопряженных сегментов одной кривой. Вопросы понижения степени кривой Безье будут рассмотрены в главе 5 настоящей работы. Математические подходы к гладкому сопряжению кривых Безье произвольных степеней приводятся в ограниченном количестве работ. В работе [9]
предлагается метод гладкого сопряжения двух кривых Безье, который в отличии от [97] использует для решения всех поставленных в работе задач единый подход, основанный на представлении кривых Безье как линейной комбинации базисных функций В-сплайнов, и позволяет вводить ограничения не только в виде точки, но и в виде производных, что существенно для практического применения при разработке конструкций. Материал, изложенный в настоящей главе, основывается на постановке задачи из работ [9, 79], но в более общей постановке, и является дальнейшим развитием этих работ.
Кроме этого, в настоящей главе проводится анализ отклонений аппроксимирующей кривой от исходных с помощью трех различных метрик.
3.1. Формулировка целей и задач
Целью настоящей работы является дальнейшее развитие геометрического ядра CAD-модуля СПЖЦ «САРУС» [43] в части разработки и имплементации математических методов гладкого сопряжения 2D- и ЗD-кривых Безье с высоким (вплоть до степени кривой) порядком гладкости, при этом на их число, степени и точки касания друг друга ограничений не накладывается. На аппроксимирующую кривую могут быть наложены дополнительные ограничения в виде неизменности производных в начальной и конечной точках. Наложение ограничений в виде прохождения через произвольную заданную точку и в этой точке заданы значения производных рассмотрено в предыдущей главе. Вводятся три различные метрики, позволяющие определить отклонение аппроксимирующей кривой от исходных.
В работе решаются следующие задачи. Выполнена математическая постановка задачи гладкого сопряжения набора кривых Безье с высоким (вплоть до степени кривой) порядком гладкости кривой с учетом дополнительных ограничений. Вводится метрика отличия исходных кривых от аппроксимирующих кривых,
минимизация которой приводит к экстремальной задаче при ограничениях в виде равенств. Экстремальная задача решается методом неопределенных множителей Лагранжа, которая в свою очередь приводит к системе линейных уравнений, матрицы которой представляются в блочном виде. Новизной работы по сравнению с [9, 97] и материалом главы 2 настоящей работы является модификация метода, позволяющая его применить для произвольного количества исходных кривых, и представление матриц системы уравнений в блочном виде. Для количественной оценки величины отклонения аппроксимирующей кривой от исходной предлагается использовать три различных метрики - метрика Хаусдорфа, квадратичное отклонение и изменение кривизны, что отличает настоящую работу от [9, 79, 97] и материала главы 2 настоящей работы. Новизной настоящей главы также является введение адаптивного множителя при расчете длины шага в метрике Хаусдорфа, что позволило устранить некорректный выход текущего значения корня уравнения из области определения, существенно сократить количество итераций и сделать вычислительный алгоритм не зависимым от начального приближения. Так же в отличии от работ [9, 79] на аппроксимирующую кривую могут быть наложены дополнительные ограничения в виде неизменности производных в начальной и конечных точках, что часто требуется на практике. Приводится пример решения задачи по гладкому сопряжению 4-х 3D-кривых Безье третьей степени с последующей с заменой без погрешности 4-х сопряжённых кривых Безье одной кривой Безье третьей степени и расчёт метрик отклонения аппроксимирующей кривой от исходных. Также приводится пример решения реальной задачи, возникшей при эксплуатации CAD-модуля СПЖЦ «САРУС», которая свелась к гладкому сопряжению 13-ти кривых Безье, которые изначально имели непрерывность С0. Предлагаемые методы применимы как 2D-, так и 3D- кривых.
Результаты, представленные в настоящей главе, имплементированы в CAD-модуль СПЖЦ «САРУС».
3.2. Постановка задачи
Дан набор (п + 1) кривых Безье степени р2:
р
Р0(щ) = Ур№(щ),ще[0,1],
1=0 р
Рг(щ) =Ур№(и1),и1 е [0,1], (3Л)
1=0 р
Рп(ип) = ур?ы?(ип),ип е [0,1],
1=0
где -у-я исходная кривая Безье, щ - параметрическая переменнаяу-ой кривой
Безье, Р/ - 1-я контрольная точка у-ой кривой Безье, ^(и^) - 1-я базисная функция
степени р.
Параметрические переменные щ определены на узловом векторе:
и] = (0, . . . , 0,0,1,1,..., 1)
р р
и изменяются на интервале [0,1].
Представим набор кривых (1) в виде одной составной кривой, при этом сопряжение (соприкосновение) исходных кривых (1) в общем случае не требуется.
2 Если заданы кривые различных степеней, то степени кривых меньших степеней необходимо увеличить до максимальной степени, процедурой, которая не искажает исходную кривую Безье [120].
жо
0 1=0
tE[0>Л0]>
1 0 1=0 10
р
Лг
рп
£ ^п-1
1 — Л
I
1=0
= I
£ ^п-1
1 — Лл
лп-1/
t е [Ап-1> 1]
г е [0,1],
0 < А.0 < ••• < Хп-1 < 1
(3.2)
где , I = 0 , ( п — 1 ) - в общем случае произвольные числа с учетом ограничения (3.2).
Необходимо выполнить гладкое сопряжение кривых Безье (3.1) и определить Q(t) - кривую Безье степени р, которая будет минимизировать заданную метрику ОД,Я) между Q(t) и Д(0.
В настоящей работе под гладким сопряжением будем понимать аппроксимацию кривых Безье кривыми Безье Р^щ), ] = 0 , п, при этом кривые
сопрягаются с кривыми р1+1(и]+1), е [0,1] и в точках сопряжения
выполняются условия непрерывности вплоть до р-го порядка:
Р](к)М1иГ1 = Р]+1(К)(и]+1)1и.+1=0, ) = 0 , (п — 1),
- б!+1(к),
Uj+l=0,
(3.3)
где Р^Хц) - к-я производная j-ой кривой Безье, аппроксимирующая кривую Безье
р'Ы
Кривую Безье Ю необходимо определить таким образом, чтобы она совпадала с набором кривых Р^щ), ] = 0^ п.
Кроме требования гладкого сопряжения (3.3) аппроксимирующих кривых р)(и}), на них могут быть наложены дополнительные условия неизменности производных в граничных точках кривой Р(1):
р
к
Р0 О^оЖ^о = О^оЖ^о, (3 4)
РП (ип)1ип=1 = РП (ип)1ип=1>
где к1, к2 - порядок производных.
Математическая постановка для случая ограничений в виде прохождения через произвольную заданную точку и в этой точке заданы значения производных рассмотрено в предыдущей главе.
Очевидно, что порядок производных в (3.4) не должен превышать р.
Кривые Р^ц) в (3.3) определим следующим образом:
р р
= У = У(р1 + } = 0Я (35)
=о =о
где £( - приращение координат контрольных точек Р\}.
Метрику й(Я, О) запишем в виде дискретной нормы [9]:
п Р
й(О,Р) = УУ\\Е(\\2 ^тт. (3.6)
=о =о
Таким образом, получили оптимизационную задачу (3.6) при ограничениях (3.3), (3.4).
3.3. Метод решения оптимизационной задачи
Представляя производные кривых Безье в виде (1.5), в условия (3.3), описывающие гладкое сопряжение, с учетом развернутого вида функций Р^(щ) (3.5)
можно представить (3.3) как систему п равенств: р р
У(Р>+£1)М?к\1)=У(Р>+1 + г1+1)мр№>(0), ] = -0ЛПГ-Г), (3.7)
=о =о
р(Х) р(к)
где Ыр (1), Ыр (0) - к-я производная 1-й базисной функции степени р в точках 1 и 0, соответственно.
Решение оптимизационной задачи (3.6) при ограничениях (3.7) может быть найдено методом неопределенных множителей Лагранжа [45]. При использовании дискретной метрики (2.11) функция Лагранжа имеет вид:
п р
Л'2
=1Ъ
Ь = >> Не/У +
р 1 01 0 р -, (3.8) Ъ^ &+£0ырт(!) — +£1+1)ыр№'(°)
п-1 р
ч
¡=0 к=0
=0 =0
где Хк - множители Лагранжа, ] = 0, (п — 1(.
Находя частные производные функции (3.8) по переменным г/, ] = 0,п и Хк, ] =
0, (п —1( и приравнивая их нулю, получаем следующую систему линейных
уравнений относительно этих переменных:
р
зь „ » .„.,р
ОЬ „ V"1 П г>(0, . _
■^0 = 28кк+Ъ0ыр (1) = 0, к = 0, р, (3.9)
к 1=0
р
^ = 2£1 + Ъ[гМ-1ыр*)(0) + Мыр*)(М = о>
д£] к ^ V 1 к 4 у 1 к К ' (3.10)
иьк 1=0 у у
) = 1 , (п — 1), к = 0 , р,
р
дЬ х „ „
= 2ЕП+У ХП-1 Ыр
ЪГ1Ы?)(0) = 0, к = 0 , р, (3.11)
^ к
к 1=0 рр
£ = + е!)ырт (1) — У(РГ + сГ)ырт (0) = 0,
°Ак 1=0 1=0 ( . )
] = 1 , (п — 1 (, к = 0, р.
Выполнив в (3.12) перегруппировку слагаемых, получаем: р р р
£ е>иГ(1) - £ = £ + Р^Г
(0)],
1=0
1=0
1=0
(3.13)
¿ = 1,(71-1), к = 0,р.
Рассматривая системы (3.9)-(3.11) и (3.13) как единую систему уравнений, получаем систему [2п(р + 1)] линейных алгебраических уравнений, которая в матричном виде будет иметь вид:
А^Х = В, (3.14)
где А - матрица коэффициентов размером: (р + 1)(2п + 1)х X (р + 1)(2п + 1), X, В - вектор-столбцы неизвестных и свободных членов размером: [(р + 1)(2п + 1)], соответственно.
При блочном представлении матрица А имеет следующий вид:
.Д11 Ал
А =
11 л12 Л21 А22
где Апт, п,т = 1,2 - матрицы.
Матрица А11 диагональная, все элементы главной диагонали равны 2, размер матрицы: (р + 1)(п + 1) X (р + 1)(п + 1).
Матрица А21 имеет размерность (р + 1)п X (р + 1)(п + 1). А1 можно представить в виде блочной матрицы с п блоковых строк и (п + 1) блоковых столбцов, размер каждого блока - (р + 1) х (р + 1):
А21 =
Э1 —Э0 0 0 Э1 -Б0
0 0
0 0
01 —Б0
0 ......
где блок Б1 соответствует матрице (1.9), блок [—£0] соответствует матрице (1.8), умноженной на (-1), блок 0 соответствует нулевой матрице размерности (р + 1) X (р + 1).
Матрица А12 размерности транспортированием матрицы Л21:
(р + 1)(п + 1) х (р + 1)п получается
А12 = А21.
А22 нулевая матрица размерности (р + 1)п х (р + 1)п. Вектор-столбец X можно представить в блочном виде:
-> I *1
-»
X =
где Х0, Х1 - вектор-столбцы.
Вектор-столбец Х0 имеет размерность (р + 1)(п + 1), состоит из приращений координат контрольных точек и в блочном виде выглядит следующим образом:
Е0 ь0
х0 = Еп I Е] =
У = 01 п.
Вектор-столбец X1 имеет размерность (р + 1)п, состоит из множителей Лагранжа и имеет следующий блочный вид:
ь0 А]0
X1 = 1п-1 I у = Ц>
] = 0, (п - 1).
Вектор-столбец В в блочном виде выглядит следующим образом:
п= $ ¡¡1
где В0, В1 - вектор-столбцы.
В0 - нулевой вектор-столбец с размерностью (р + 1)(п + 1). В1 - вектор-столбец имеет размерность (р + 1)п и имеет следующий блочный
вид:
В1 =
ро
7П-1
= —01 •Р) + Р)+1, ) = 0, (п — 1 ),
где Б0, Б1 - матрицы (1.8), (1.9) соответственно; Р} - вектор-столбец размерности (р + 1) контрольных точек у-ой кривой Безье.
Решив систему (3.14), получаем набор сопряженных кривых Безье Р ^ (и^, ] =
0^ п степени р, преобразование которых в единственную кривую Безье Q(t) степени р выполняется последовательным применением процедуры замены двух сопряженных кривых Безье одной кривой Безье той же степени, описание которой приводится в [9].
3.4. Метрики отклонения аппроксимирующей кривой от исходных
Для количественной оценки отклонения аппроксимирующей кривой Q(t) от исходной в настоящей работе вводятся следующие метрики - -
метрика Хаусдорфа, - квадрат отклонения, Лкривиз^, Я) - изменение
кривизны. Использование 3-х метрик является востребованным требованием в СЛО-системах, так как эти метрики позволяют конструктору/дизайнеру контролировать: йХауср($,Я.) - нахождение аппроксимирующей кривой в заданном допуске, Я) - изменение площади, при использовании аппроксимирующей кривой (среднее по всей кривой отклонение), ^ривиз$,Я) - изменение кривизны, при использовании аппроксимирующей кривой (появление немонотонности).
Метрика Хаусдорфа [138] определяется как максимальное линейное расстояние между двумя кривыми:
¿хаусдМ, Я) = тах(к1 ^, Я), к2(Я, Q)), кМ,Я) = тахР1Е(3\\Р1 — Щ\, h2(R,Q)=maxP2eR\\Р2 — Q\\, \\Р — С(и)\\ = тт&еС(и)\\Р — 0\\, (3.15)
где \\-\\ - норма L2; Р, Ръ Р2, 0 - точки.
Для расчета минимального расстояния от заданной точки Р до линии С (и) (то
есть для расчета (3.15)) решается следующее уравнение [120].
f(u) = С'(и) • (С(и) -Р) = 0, (3.16)
где символ «■» - скалярное произведение, С'(и) - первая производная векторной
функции С (и), (С (и) — Р) - отрезок линии между заданной точкой Р и текущей (то на
текущей итерации) точки на кривой С (и).
Уравнение (3.16) означает, что (С(и) — Р) перпендикулярен касательной.
Для решения уравнения (3.16) применяется численный метод Ньютона:
- _ /М- _ С'(щ)-(С(щ) — Р)
Щ+1 Щ aif(Ui) Щ а1С"(щ)-(С(щ) — Р) + \С'(щ)\2' (3Л/)
где at - адаптивный множитель длины шага, С''(и) - вторая производная векторной функции С (и), \-\ - длина вектора.
Остановка итерационного процесса (3.15) производится [120] либо по совпадению точек Р и С(и[) (если точка Р лежит на линии С (и)):
\С(щ)-Р\-е1, (3.18)
либо по достижению перпендикулярности касательной и отрезка прямой, проведённого из точки Р в точку С(щ):
\С,(цд-(С(щ) — Р)\
К-адпсад-Р! - 2 (' '
где £ъ £2 - наперед заданные точности.
Как показали наши вычислительные эксперименты, если в итерационный процесс (3.17) не вводить коэффициент at, то процесс очень часто выходит за пределы области определения параметра и, то есть, обычно на первой итерации, и1 принимает значение либо меньше нуля, либо больше единицы. Для устранения этой ситуации было предложено применять адаптивный шаг в процессе (3.17), для чего рассчитывать ai по следующему алгоритму.
На первой итерации at = 1. Если на i-ой итерации ui+1:
- выходит за пределы области определения и условия (3.18), (3.19) не выполняются, то а, уменьшается в два раза и расчет и,+1 повторяется заново;
- не выходит за пределы области определения и условия (3.18), (3.19) не выполняются, то переход на следующий шаг;
- выходит за пределы области определения и условия (3.18), (3.19) выполняются, итерационный процесс останавливается и за решение принимается соответствующая граница области определения.
Таким образом, как показали вычислительные эксперименты, применение адаптивного шага позволяет сделать алгоритм не зависимым от начального приближения.
Метрика квадрата отклонения [97] определяется как площадь поверхности, образованной движением прямолинейного отрезка, соединяющего кривые:
¿квадр№,Я)= [ [iQ(u) — R(u)¡]2du. (3.20)
0
Вычисление интеграла (3.20) и последующего выполняется численно методом трапеций [3].
Метрика изменения кривизны определяется как разность интегралов кривизны кривых:
dкривиз(Q,R) = I [к((и) — kR(u)]du, 0
где к((и), кл(и) - кривизна кривых Q(u) и Я (и), соответственно, при значении параметрической переменной и.
Расчет кривизны выполняется следующим образом [24]:
¡С"(и)хС'(и)1
где символ «X» - векторное произведение.
В координатной форме (3.21) будет выглядеть:
кс(и) =
N
С' С' Оу oz П'' П'' Су cz 2 + Cz Сх П'' П'' Cz сх 2 + Сх' Су' '' '' Сх Су
J( Ci)2 + ( су)2 + ( С')2 3
где
а11 а12 г, ГП . -
а2 а22 - определитель, Сах1Б-> Сах15, ах1Б = х,у,2 - первая и вторая
производные векторной функции С (и) в проекции на соответствующую координатную ось.
Метрика изменения торсионности для 3Б-кривых определяется как разность интегралов торсионности кривых:
d
торсион
(Q,R) = I [tq(u) - rR(u)]du, Jq
где Тд(и), тК(и) - торсионность кривых Q(и) и Я (и), соответственно, при значении параметрической переменной и.
Расчет торсионности выполняется следующим образом [24]:
_ 1С'(и)хС"(и)Ь С'''(и) Т с(и) = 1С'(и)хС"(и)12 '
где символ «•» - скалярное произведение.
2
3.5. Применение метода
Для демонстрации предлагаемого подхода рассмотрим пример гладкого сопряжения 4-х кривых Безье 3-ей степени. Исходные кривые приведены на рис.3.1 (этот и последующие рисунки и метрики получены в CAD «САРУС» [43]).
Рис. 3.1. Составная кривая из 4-х 3D-кривых Безье 3-ей степени
На рис. 3.2 показана в увеличенном масштабе одна из точек сопряжения исходных кривых и видно, что сопряжение соответствует порядку С0.
Рис. 3.2. Точка сопряжения в увеличенном масштабе
Выполнив предлагаемый в настоящей работе подход, получаем аппроксимацию исходных кривых сопряженными кривыми Безье той же степени, с последующей заменой их без погрешности единственный кривой Безье той же степени. На рис. 3.3 приведена итоговая кривая Безье.
Рис. 3.3. Итоговая кривая Безье, после гладкого сопряжения
В таблице приводятся значения метрик при аппроксимации без и с дополнительными ограничениями и время решения каждой задачи3. Дальнейшее увеличение количества ограничений приводит резкому увеличению метрик и делает аппроксимирующую кривую неприемлемой.
Таблица. Метрики при различных ограничениях.
Метрика Исходные кривые Сопряженные кривые
Ограничения отсутствуют
Хаусдорфа 4.245Е-2
Квадратичное отклонение 6.610Е-4
Кривизна 1.196Е+4 1.285Е+4
Торсионность -7.885Е+2 -6.097Е+2
Время работы 730 мс
3 Времена решения получены на ПК с процессором Core i7-11700F, ОЗУ 32ГБ, видеокарта RTX 4060 Ti, каждая кривая Безье была аппроксимирована на 100 3D точках.
Метрика Исходные кривые Сопряженные кривые
Ограничения в виде фиксации граничных точек
Хаусдорфа 4.220Е-2
Квадратичное отклонение 6.583Е-4
Кривизна 1.196Е+4 1.225Е+4
Торсионность -7.885Е+2 -7.533Е+2
Время работы 750 мс
Ограничения в виде фиксации граничных точек и первых производных в них
Хаусдорфа 4.202Е-2
Квадратичное отклонение 7.412Е-4
Кривизна 1.196Е+4 1.225Е+4
Торсионность -7.885Е+2 -8.1455Е+2
Время работы 780 мс
Как видно из представленных в таблице результатов, с увеличением количества ограничений отклонение аппроксимирующей кривой от исходного набора кривых и кривизна возрастают, что для 2.0-кривых Безье наглядно видно из графиков, приведенных в главе 2 и в [9].
На рис. 3.4 и рис. 3.5 приводится пример сопряжения 4-х изначально не соприкасающихся кривых Безье 3-ей степени.
Рис. 3.4. Исходные не соприкасающиеся кривые Безье
Рис. 3.5. Итоговая аппроксимация кривых Безье, приведенных на рис. 3.4
Рассмотрим пример одной из практических задач, которая возникла при работе CAD-модуля СПЖЦ «САРУС». На рис. 3.6 приводится набор из 13-ти кривых Безье 5-ой степени. Кривые пронумерованы, точки сопряжения выделены (внутренние контрольные точки (точки за исключением граничных), которых четыре для каждой кривой не показаны. Попытка использовать этот набор для последующей обработки привела к отказу в работе соответствующего программного модуля. Анализ кривой (рис. 3.6) показал, что в точках сопряжения выполняется только непрерывность С0, а последующей функциональной процедуре требуется непрерывность С5.
Рис. 3.6. Набор из 13-ти кривых Безье 5-ой степени до сопряжения.
После применения процедуры (алгоритма) сопряжения нескольких кривых Безье с порядком гладкости соответствующем степени кривых (в рассматриваемом примере 13 кривых 5-го порядка) были получены кривые Безье, приведенные на рис. 3.7.
Рис. 3.7. Набор из 13-ти кривых Безье 5-ой степени после сопряжения.
Значения метрик между исходными и сопряженными кривыми составили:
- метрика Хаусдорфа = 0.0420225;
- кривизна изменилась на 10.6774;
- квадратичная разность = 0.000741222.
На рис. 3.8 приведена часть одного из элементов конструкции БПЛА, в котором был применен представленный в настоящей главе метод. В качестве исходных данных были заданы 4-е кривые Безье 5-й степени (кривые АВ, ВС, СD и DA). Было выполнено сопряжение этих с порядком гладкости, которые указаны на рис. 3.8.
Рис. 3.8. Сопряжение кривых Безье в реальной конструкции
Выводы по главе 3
Выводы:
1. Предложено решение задачи гладкого сопряжения набора кривых Безье, которое, во-первых, не предъявляет требования к числу, степени и точкам касания друг
друга исходных кривых Безье и, во-вторых, позволяет выполнить гладкое сопряжение, то есть в точках сопряжения выполняется порядок гладкости, соответствующий максимальной степени исходных кривых. На аппроксимирующую кривую могут быть наложены дополнительные ограничения.
2. Для решения задачи сопряжения формулируется оптимизационная задача при наличии ограничений в виде равенств, которая сводится к системе линейных алгебраических уравнений. Эта система представляется в виде блочных матриц, элементами которых являются контрольные точки и производные базисных функций.
3. В методе используется представления кривых Безье как частный случай В-сплайна, что обеспечивает возможность практически без дополнительных вычислительных затрат получать значения всех производных при расчете точки кривой.
4. Предложено использовать 3 различные метрики - Хаусдорфа, квадратичного отклонения и изменения кривизны, позволяющие всесторонне контролировать отклонение аппроксимирующей кривой от исходного набора кривых. При расчете метрики Хаусдорфа применяется модификация численного метода Ньютона, позволяющая избежать выхода за пределы области определения и тем самым сделать алгоритм не зависимым от начального приближения.
5. Приводятся примеры гладкого сопряжения набора ЗD-кривых Безье при различных ограничениях, из которых следует, что увеличение количества ограничений увеличивает отклонение и кривизну.
6. Результаты работы имплементированы в CAD-модуль СПЖЦ «САРУС».
ГЛАВА 4. ОПТИМАЛЬНОЕ СОПРЯЖЕНИЙ ДВУХ В-СПЛАЙНОВ С СОХРАНЕНИЕМ ГЛАДКОСТИ И ДОПОЛНИТЕЛЬНЫМИ
ОГРАНИЧЕНИЯМИ
Сложность современных изделий машиностроения такова, что их проектирование невозможно без использования CAD-систем, в которых одной из основных функциональных операций является сопряжение 5-сплайнов с заданным порядком непрерывности при наложении дополнительных ограничений на аппроксимирующую линию. Выбор для исследования S-сплайнов обусловлен тем, что геометрическое ядро современных CAD-систем построены на основе NURBS (NonUniform Rational B-Splines) и 5-сплайнов, которые являются частным случаем NURBS [120].
Сопряжение с S-сплайнов с заданным порядком гладкости с математической точки зрения является довольно сложной задачей [16, 36, 58], и, к примеру, в ставших к настоящему времени классическими монографиях [46, 120, 128, 129], вопросы сопряжения не рассматриваются. Разнообразным вопросам сопряжение линий и поверхностей с невысоким порядком гладкости (вплоть до второго) в отечественной и иностранной научной литературе уделяется достаточное. При этом вопросы сопряжения В-сплайнов рассматриваются в небольшом количестве работ и в них изучаются сплайны 3-степени и без дополнительных ограничений. Материал, изложенный в настоящей главе, основана на постановках задач из работ [9, 134] и является дальнейшим развитием этих работ и исследований, изложенных в главах 2 и 3 настоящей работы.
4.1. Формулировка целей и задач
Целью настоящей работы является дальнейшее развитие геометрического ядра CAD-модуля системы полного жизненного цикла «САРУС» [43] в части разработки математических методов сопряжения В-сплайнов с порядком гладкости (непрерывности) в точке сопряжения вплоть до максимально возможного и последующей заменой без погрешности сопряженных сплайнов одним аппроксимирующим сплайном той же степени. На сопряженные сплайны и аппроксимирующий сплайн могут быть наложены дополнительные ограничения в виде полного совпадения с одним из исходных сплайнов и/или прохождения аппроксимирующего сплайна через заданную точку при заданных значениях производных в этой точке.
В настоящем исследовании решаются следующие задачи - формулируются условия гладкого сопряжения В-сплайнов с дополнительными ограничениями, вводится метрика разности исходных сплайнов и аппроксимирующего сплайна. Гладкое сопряжение с дополнительными ограничениями выполняется минимизацией метрики с использованием метода множителей Лагранжа и предлагается алгоритм замены без погрешности сопряженных сплайнов одним аппроксимирующим сплайном той же степени. В отличие от работы [134], в настоящем исследовании для решения вышеуказанных задач предлагается единый подход, основанный на представлении производных В-сплайнов как линейной комбинации производных базисных функций, а не рекурсивный расчет дополнительных контрольных точек [134]. Новизной настоящих исследований по сравнению с [134] является научный подход, позволяющий учитывать не только прохождений аппроксимирующего сплайна через заданную точку, но и задать в этой точке значения производных аппроксимирующего сплайна. Также в настоящей работе предлагается математический подход к замене двух сопряженных В-сплайнов одним В-сплайном с использованием подхода на основе производных базисных функций, что отличает настоящую работу от [134], в которой для этой задачи предложен рекурсивный
алгоритм. Применение производных базисных функций позволяет использовать существующие программные модули, входящие в геометрическое ядро современных CAD-систем, в которых расчет этих производных происходит «автоматически» при выполнении рекурсивной процедуры расчета базисных функций. Предлагаемые алгоритмы могут быть применены как к 2D-, так и 3D- В-сплайнам.
4.2. Постановка задачи
В настоящей работе рассматривается постановка задачи для сопряжения В-сплайнов, у которых в реальной части узлового вектора (1.12) отсутствуют кратные узлы.
Заданы два в-сплайна степени р Р(и) и Q(y) (если степени сплайнов не совпадают, то у сплайна меньшей степени увеличивается степень до р, используя процедуру, описанную в [120], которая не приводит к искажению сплайна):
п
,р(и), ир<и< ип+ъ (4.1)
1=0 т
Q(v) = Y ^)И).р(у), ъ<у< ут+г, (4.2)
)=0
где РI, Qj, I = 0^ п, ] = 0,т - контрольные точки, на которых заданы сплайны Р(и) и Q(v), соответственно, и, у - параметрические переменные, определенные на узловых векторах и и V, соответственно.
и = {0,... 0,ир+1, ...,ип,1, - 1}, (4.3)
р+1 р+1
V = {0о.0,ур+1.....ут,0, . 1). (4.4)
р+1 р+1
Потребуем, чтобы для в-сплайнов (4.1) и (4.2) выполнялось условие п,т> р (при п = т = р). Получаем кривые Безье, для которых полностью гладкое
сопряжение рассмотрено во второй главе настоящей диссертации. Так единая терминология для узловых векторов в современной научной литературе отсутствует (см. примеры различных терминологий в монографиях [46, 120, 128, 129]) будем использовать терминологию классической монографии [120]. Тогда узловой вектор вида (4.3) и (4.4) будем называть Clamping(Зажатый) узловой вектор. Сформируем Clamping(Зажатый) узловой вектор Т
Т = {и0, щ,..., ип, ип+1 = Ур, Рр+1, ..., Рт+р+1}> (4.5)
где щ, 1 = 0, (п + 1) - соответствующие элементы узлового вектора (3) сплайна (1),
у[ = f(vi), I = р, (т + р + 1), / - линейная функция, V,, I = р, (т + р + 1) -соответствующие элементы узлового вектора (4.4) сплайна (4.2). Функция f имеет вид:
у[ = у1+р-п-1 + ип+1, 1 = р, (т + р + 1(. (4.6)
Вектор (4.5) представляет собой объединение векторов (4.3), (4.4), при этом от вектора (4.3) отбрасываем последние р кратных узлов, от вектора (4.4) отбрасываем первые (р + 1) кратные узлы и к оставшимся узлам вектора (4.4) применяется преобразование (4.6).
Для программной реализации узловой вектор (4.5) удобнее представить в следующем виде:
Т = {10,Ч,...,1п+т+2}, (4.7)
где ^ =
щ, I = 0,(п + 1),
У1+р-п-1 + ип+1, I = (п + 1),(п + т + 2).
Определим сплайны (4.1), (4.2) как один составной сплайн Я(£), определённый на узловом векторе (4.7):
Ш = {РМ, 1п+1, (4 8)
ЫГЧ™)), Ъ+1 <™< ^п+т+2-р. ( . )
Сплайн (4.8) в точках Р(1п+1) и Q(f-1(tn+1)) в общем случае не обладает непрерывностью.
Необходимо выполнить гладкое сопряжение сплайнов (4.1) и (4.2), то есть
определить контрольные точки , I = 0, (п + т — р + 1) для аппроксимирующего сплайна степени р:
п+т-р+1
,Р(£), £р < £ < £п+т-р+2, (4.9)
1=0
где t - параметрическая переменная, определенная на узловом векторе (4.7).
Сплайн (4.9) должен минимизировать метрику й(Я, Я) между сплайнами и Я(£). Минимизация метрики й(Я,Я) выполняется на всем реальном поддиапазоне узлового вектора (4.7), который имеет вид:
ТГеа1 = \^р,^п+т+2-р\. (4.10)
Нахождение аппроксимирующего сплайна Р Ю будем выполнять в два этапа. Этап 1. Выполняется гладкое сопряжение сплайнов (4.1) и (4.2), для чего
рассчитываются новые контрольные точки р1, , I = 0,п, ] = 0,т, которые
используются для построения новых сопряженных в-сплайнов Р(и) 0(у). При этом узловые вектора исходных и сопряженных сплайнов не изменяются и соответствуют (4.3) и (4.4). Сплайны Р(и) и 0(у) должны удовлетворять условиям гладкого сопряжения:
Р(г)(и)1п=1 = 0(г)(у)1у=о, г = 0,(р — 1), (4.11)
где г - порядок производной.
Точки и = 1 и у = 0 являются узлами в соответствующих узловых векторах и имеют единичную кратность, поэтому в соответствии с вторым разделом настоящей работы максимальный порядок непрерывности в этих точках может составить (р — 1).
В-сплайны Р(и) и 0(у) определяются следующим образом:
п п
Р(и) = X Р№,р(и) = ^(Рь + £д^,р(и), ир<и< ип+1, (4.12) 1=0 1=0
т т
ш = У (¡№,р(?) = + ё^Щ^у), ур<у< ут+1, (4.13)
}=0 } = 0
где £I, I = 0,п и б], у = 0,т приращения соответствующих координат.
Этап 2. Преобразование без погрешности (абсолютно точно) сопряженных
сплайнов Р(и) и 0(у) в один аппроксимирующий В-сплайн Я^) (4.9), который
определен на узловом векторе (4.7), для чего необходимо выполнить расчет
контрольных точек Я,, I = 0, (п + т — р + 1).
Кроме ограничений (4.11) на В-сплайны Р(и) и @(у) (и соответственно на Я(£)) могут быть наложены дополнительные ограничения:
1) полного совпадения с одним из исходных В-сплайнов:
Обратите внимание, представленные выше научные тексты размещены для ознакомления и получены посредством распознавания оригинальных текстов диссертаций (OCR). В связи с чем, в них могут содержаться ошибки, связанные с несовершенством алгоритмов распознавания. В PDF файлах диссертаций и авторефератов, которые мы доставляем, подобных ошибок нет.