Научно-методический раздел
УДК 681.327.11
3й-МОДЕЛЬ «ЧЕРНОГО ЯЩИКА» В ЗАДАЧЕ СОВМЕЩЕНИЯ КОНИКИ С КВАДРИКОЙ
А.Л. Хейфец
3D-MODEL OF “BLACK BOX” IN THE PROBLEM OF COMBINATION CONIC WITH A QUADRIC
A. L. Kheyfets
Приведено решение задачи совмещения заданных эллипса и однополостного эллиптического гиперболоида. На этом примере показан метод 3D-компьютерного геометрического моделирования, заключающийся в построении множества искомых объектов, его исследовании и выборе из него объекта с требуемыми параметрами.
Ключевые слова: компьютерное моделирование, геометрическое моделирование, 3D-mexнoлoгuu, AutoCAD.
A solution of the problem of combining the given ellipse and sheeted elliptic hyperboloid is given. This example demonstrates 3D-computer geometric modeling with the help of which we can construct a set of required objects, its study and the choice of a facility with the required parameters.
Keywords: computer simulation, geometric simulation, 3D-technologies,AutoCAD
Как правило при решении и исследовании задач геометрического моделирования стремятся получить геометрическую, часто 3D-реалистич-ную, или аналитическую модель. Однако для большинства прикладных инженерных задач характерна высокая сложность таких моделей, приводящая к множеству упрощений и допущений, либо невозможность или нецелесообразность их построения.
В экспериментальных исследованиях и задачах управления в таких случаях применяют модели «черного ящика», позволяющие исследовать объекты, внутреннее устройство которых неизвестно.
Цель работы - на примере задачи о совмещении коники с квадрикой показать 3D-метод компьютерного геометрического моделирования, не требующий построения явной геометрической или аналитической модели (модель «черного ящика»), а также рассмотреть решение указанной задачи.
Известны частные случаи задачи совмещения [1, 2 и др.] эллипса и конуса и их явные решения. Автор усложнил задачу, рассмотрев совмещение произвольной коники с произвольной квадрикой [3], а также ввел точку на поверхности квадрики, через которую должна проходить коника. В данной работе приведено решение для эллипса и однополостного эллиптического гиперболоида (ОГ).
Задача: даны эллипс и OГ с наперед заданными параметрами. На поверхности OГ задана точка. Oпрeдeлить положение эллипса, при котором он является сечением OГ и проходит через заданную на нем точку («надеть» эллипс на O^.
Ме^дика peшeния. Работа выполнялась в пакете AutoCAD, как наиболее адаптированном к теоретическим задачам геометрического моделирования [4].
Модель OГ строим по характерным размерам (рис. 1), создав каркас из двух очерковых гипербол
и 10__20 «поперечных» эллипсов и применив к
нему команду Loft [5]. Гиперболы для каркаса получим как сечения эллиптического конуса [3].
Рис. 1. Модель и параметры гиперболоида
Эллипс зададим двумя метриками С1 и С*, где сС1 - длина большой оси, С* = ё2 /ё1 - относительная длина малой оси ё2 (рис. 2, а). В процессе решения задачи эллипсы получались как сечения ОГ -сплайны. Для определения их метрик по методу хорд находим центр, затем с помощью дуги окружности, проведенной из центра и обрезанной контуром сплайна, находим ось и вершины, следовательно, С1 и С2.
Для повышения точности решения ОГ строили как линейчатую поверхность по трем направляющим. Добавив еще две направляющие, эллипс и его метрики находили по пяти точкам пересечения секущей плоскости с отрезками каркаса [5].
Все построения и вычисления выполнялись программными средствами Аи1оЫ8Р [6]. Алгоритмы программной реализации, зачастую оригинальные, в данной работе не приводятся.
Частный случай задачи. Как правило в сложных моделях для их предварительной оценки первоначально выполняют упрощенные частные решения, которые получаются явными и геометрически точными. Для этого в рассматриваемой задаче рассмотрим совмещение заданных эллипса и ОГ без дополнительного ограничения в виде точки.
Эллипс ищем «просто» как фронтально-прое-цирующий, то есть перпендикулярный фронтальной плоскости симметрии ОГ. Пример на рис. 2 приведен для С1 = 90; С* = 0.4. Впишем в ОГ сжатый эллипсоид, образованный вращением эллипса в/, подобного заданному эллипсу в (рис. 2, б). Касание в двух точках приводит к распадению линии пересечения на два эллипса в'и в//, подобных заданному. Построение можно выполнить на проекционном чертеже (рис. 2, в), где (2-3) - проекция эллипса вёГ - длина большой оси эллипса в 'или в/; (4-5) - произвольная хорда, параллельная (2-3); 6 - ее средняя точка; отрезки (11-9) и (12-8) параллельны (/-6) и проведены через точки 7, 10, в* и в** - найденные эллипсы, то есть решение задачи для ее частного случая.
По симметрии получим еще два фронтально-проецирующих эллипса в*', в**' (рис. 2, г). Так же находим еще четыре профильно-проецирующих эллипса. Всего частный случай имеет восемь решений. В зависимости от параметров модели количество решений снижается до четырех или может отсутствовать.
Решение в частном случае задачи можно получить по 3Б, если найти направление плоскости эллипсов в' или в' поместить в нее искомый эллипс в и «лофтировать» его по фронтально-очерковой гиперболе к (рис. 2, д). Пересечение полученного объекта с ОГ дает искомые эллипсы (рис. 2, е).
Общее решение задачи. Были рассмотрены две точки: точка А, расположенная во фронтальной плоскости симметрии, и точка В общего положения (см. рис. 1). В каждом из вариантов не удалось получить явного геометрического или аналитического решения.
Рис. 2. Частный случай задачи: а - совмещаемый эллипс; б - сжатый эллипсоид при двойном соприкосновении с гиперболоидом; в - решение на проекционном чертеже; г - восемь решений для частного случая; д - вспомогательный объект; е - решение по Эй
Для решения по методу «черного ящика» построим множество возможных эллипсов, расположенных на поверхности ОГ и проходящих через заданную на нем точку. Из этого множества найдем эллипсы с требуемыми метриками.
Для создания множества
1) введем секущую плоскость у (рис. 3), совершающую вращение вокруг двух осей, проходящих через заданную точку. Первое вращение вокруг оси /1, параллельной оси / ОГ. Второе -вокруг горизонтали /2, принадлежащей плоскости у и вращающейся вместе с ней вокруг /1. Положение плоскости у зададим углом и между 12 и большой осью эллипса основания ОГ, а также углом w между плоскостью у и плоскостью основания ОГ;
2) интервалы изменения и, w задаем такими, чтобы получить все множество коник. Для т. А, находящейся в плоскости симметрии, изменение и задаем в интервале (-90°, 0). Для точки В интервал изменения и (-90°, 90°);
3) шаг вращений принимаем 0.5...1°. В этом случае размеры множеств составляют 20...40 тысяч. Они успешно обрабатываются на персональном компьютере;
Научно-методический раздел
Рис. 3. Схема формирования множества коник для точки В
4) для каждого сечения определяется тип коники, выбираются только эллипсы, находятся их метрики d1, d* и точки осей. Эти параметры, а также ^у-координаты секущей плоскости заносятся в базу данных (БД). Формирование БД происходит за 2...3 часа;
5) далее по метрикам искомого эллипса в БД находим эллипс с близкими параметрами, извлекаем его ^у-координаты и по ним строим сечение ОГ. Отклонение метрик построенного эллипса от заданных значений рассматриваем как погрешность решения;
6) выделяя из БД подмножества с заданными характеристиками, строим различные зависимости, то есть исследуем модель. Все операции, а также построение графиков выполняются средствами ЛиІоЬІБр.
Решение для точки А. Отобразим БД, полученную для точки А и составляющую -38 000 эллипсов, в координатах d1, d* (рис. 4, а). Каждый эллипс отмечаем маркером точки. Получена область возможных решений.
Для исследования области определяем углы наклона эллипсов к плоскостям симметрии ОГ. Получаем зависимости, показывающие положение особых эллипсов. Так, кривые а - фронтально-
проецирующие эллипсы, для них и = ±90°; кривые Ь - профильно-проецирующие, и = 0°; т - равно-наклоненные к плоскостям симметрии, и = ±45°,
Рассмотрим особые точки (см. рис. 4, а). Точка С - два круговых сечения гиперболоида, проходящих через т. А. Точка В - фронтально-проеци-рующий эллипс с минимально-возможной длиной большой оси. Точка Е - горизонтальный эллипс. Все особые эллипсы можно построить геометрически точно. Так для точки С достаточно построить круговые сечения ОГ на основе двойного соприкосновения со сферой и через точку А провести секущие плоскости, параллельные выявленным окружностям. Для точки В следует опустить перпендикуляр из точки А на противоположную ветку фронтально-очерковой гиперболы - это большая ось фронтально-проецирующего эллипса. Для точки Е - построить горизонтальное сечение ОГ.
Исследуем количество возможных решений. Сделаем выборку (вертикальный «срез» области) мость угловых координат секущей плоскости от ё* (рис. 4, б). Получены две пары кривых. Первая пара и1(С*), w1(d*), вторая - и2(С*), w2(d*). Каждая пара задает перемещение секущей плоскости, при котором образуются эллипсы с изменяемой длиной малой оси С* и постоянным значением большой оси С1 = 75.
Видим, что при С* < С*тЫ решение отсутствует. В интервале С*т/п < С* < С*1 имеется одно решение, определяемое парой и1, w1. В интервале С*1 < С* < С*тах добавляется решение от пары и2, w2, то есть имеется два решения. При С* > С*тах решение вновь отсутствует.
Количество решений указано для изменения и в интервале (-90°, 0). Полное количество решений вдвое больше. То есть область, ограниченная кривыми а (см. рис. 4, а), соответствует двум решениям. Ее граничные точки 1, 3 - два совпадающих фронтально-проецирующих эллипса каждая, для них угол и = ±90°(см. рис. 4, б). Вне этой области возникает четыре решения.
Рис. 4. Исследование множества эллипсов, проходящих через точку А: а - область множества; б - угловые координаты секущей плоскости для 61 = 75
Эллипсы в точках 2 и 4 являются равнонакло-ненными (принадлежат кривой m, угол и = ±45°). В точке 6' два симметричных профильно-проецирующих эллипса (принадлежат кривой b, и = 0). В точках 4', 6, 7 - по два эллипса общего положения, причем в точке 7 эллипсы совпадающие.
В качестве примера построены эллипсы для точек 5, 5' (рис. 5), соответствующих dl = 75, d* = 0.6. Получено четыре эллипса общего положения. Эллипсы el, e2 построены как сечения ОГ по координатам u,w секущей плоскости (см. рис. 4,
б, точки 5, 5'). Тот же результат получается при отыскании этих эллипсов непосредственно из БД по параметрам dl, d*. Еще два эллипса построены по симметрии: эллипс el' симметричен el относительно фронтальной плоскости симметрии ОГ, эллипс e2 симметричен e2.
Погрешность решения (см. таблицу на рис. 5) определяли как del =0.5 (dell + del2), где dell, del2 -погрешности по метрикам dl, d*.
Решение для точки В. Область возможных решений (рис. 6) имеет значительно более сложный вид чем в примере с точкой А. Это отражает и более высокую сложность задачи, хотя с позиции рассматриваемого метода решения это не имеет значения: нужно построить множество эллипсов и делать по нему выборки.
В точках С' С возникают два различных круговых сечения (035.5 и 084.6). В точке Е образуется горизонтальный эллипс. Кривая а - фрон-тально-проецирующие эллипсы, кривые Ь, Ь', Ь" -профильно-проецирующие эллипсы.
Рассмотрим срез области для эллипсов с длиной большой оси С1 = 75 (см. рис. 6). Количество решений определяется (рис. 7, а) количеством точек пересечения вертикальной линии с кривыми и1, и2. Видим, что в интервалах Стп < С* < С*1 и С*2 < С* < С*тах существуют два решения. При С*1 < С* < С*2 - от трех до пяти решений. При С* < С*тп и С* > С*тах решение отсутствует.
Рис. 5. Эллипсы через точку А для dl = 75 и d* = 0.6
Рис. б. Область множества эллипсов, проходящих через точку B
Научно-методический раздел
Рис. 8. Эллипсы через точку В для 61 = 75 и 6* = 0.41 и оценка их погрешности
Построение множества подобных срезов для различных значений d1 позволило выделить область (см. рис. 6), ограниченную кривыми с (16-4-Е-К-5-17), в которой количество решений более двух. Эта область существует для d1 > de, (в нашем примере de - 48.51).
При d1 < de существуют по два решения в каждой точке области определения: вертикальная линия (рис. 7, б) пересекает кривую и в двух точках.
Например, в точке ¥ при d1 = 75, d* = 41 (см. рис. 6) выявлено пять эллипсов, их и,у-координаты определены точками 8,3,3*,10,6 (см. рис. 7, а). Три из пяти эллипсов приведены на рис. 8. Эллипс е1 -фронтально-проецирующий (и = -90°, см. табл. на
рис. 8); e2 - близок к профильно-проецирующему; e3 - равнонаклоненный к плоскостям симметрии ОГ (и = 45°).
Технологический пример. Рассмотрим квадрики как тонкостенные оболочки, которые следует сварить. Из технологических соображений сварной шов должен быть плоской кривой - эллипсом. Известно решение задачи в частном случае [1 и др.] для конуса и цилиндра. Наша методика позволяет «сварить» любые две квадрики, имеющие как сечение конику одного типа.
Пусть необходимо сварить эллиптический цилиндр, нормальное сечение которого задано как эллипс e* (рис. 9), и ОГ с заданными размерами. Оси цилиндра и ОГ параллельны. Сварной шов должен проходить через точку B на поверхности гиперболоида.
Решение заключается в извлечении из БД тех эллипсов, проекции которых на плоскости оснований цилиндра и ОГ имеют параметры эллипса e* (см. рис. 9).
Например, если для эллипса e* заданы метрики dl= 65, d* = 0.45, возникают три решения. Для двух из них построены модели подготовки оболочек под сварку (см. рис. 9).
О нахождении в БД эллипса с заданными метриками. База данных формируется как список на языке AutoLisp. Поиск ведется средствами обработки списков. Вводится допуск поиска del (см. выше). Первоначально, задав del = 5...7 %, находим множество из 30.100 эллипсов. Сортируем эти эллипсы по возрастанию угла и их плоскости и выделяем группы с близкими значениями и. Количество групп - это количество возможных решений. В каждой группе находим эллипс с минимальным значением del, которая является одним из решений. Чтобы «не потерять» решения, в слож-
Рис. 9. Технологический пример: стыковка эллиптического цилиндра и гиперболоида
ных случаях строим зависимости (см. рис. 4, б и 7) и строим эллипсы по их иу-координатам.
Повышение точности решения до любого необходимого значения достигается созданием БД более высокой плотности или применением интерполяции.
Несмотря на то, что приведенные зависимости получены для фиксированных параметров ОГ и точек А, В, они являются характерными для рассмотренной задачи.
Другие варианты задачи совмещения коник и квадрик приведены в [3, 7].
Приведенное решение выполнено на персональном компьютере с параметрами, необходимыми для эффективной работы в пакете А^оСАБ 2010. Затраты на формирование БД составляли 2... 4 часа. Для работы с более сложными моделями возможны оптимизации программ и переход на более производительные, чем А^оЫвр, языки программирования.
Выводы
1. Сложный характер полученных в данной работе зависимостей позволяет с большой уверенностью утверждать, что геометрическая или аналитическая модели рассмотренной задачи вряд ли могут быть построены.
2. Предложенный метод позволил найти решение и исследовать задачу с требуемой точностью.
3. Рассмотренный метод в сочетании с 3Б-алго-ритмами и программированием может быть рекомендован для практических задач геометрического моделирования, в которых построение аналитических и геометрических моделей затруднительно или неоправданно ввиду их сложности.
Литература
1. Пеклич, В.А. Мнимая начертательная геометрия: учеб. пособие / В.А. Пеклич — М.: Изд-во АСВ, 2007 — 104 с.
2. Пеклич, В.А. Задачи по начертательной геометрии: учеб. пособие / В.А. Пеклич, С.Н. Павленко. — М.: Высш. шк., 1999. — 139 с.
3. Хейфец, А.Л. Компьютерные 3С алгоритмы в курсе геометрического моделирования (на примере задачи совмещения коник с квадриками) / А.Л. Хейфец // Труды 18-й международной научнотехнической конф. «Информационные средства и технологии. Москва 19—21 октября 2010». — М.: Издательский дом МЭИ, 2010. — Т. 3. — С. 110—117.
4. Инженерная 3П-компьютерная графика. АЫоСАО: учеб. пособие / А.Л. Хейфец, А.Н. Логи-новский, И.В. Буторина, В.Н. Васильева; под ред. А.Л. Хейфеца. — 2-е изд. перераб. и доп. — М.: Изд-во Юрайт, 2011. — 464 с.
5. Хейфец, А.Л., Новые возможности 3Б-моде-лирования линейчатых поверхностей в АЫоСАО / А.Л., Хейфец, А.Н. Логиновский // Состояние, проблемы и тенденции развития графической подготовки в высшей школе: сб. тр. Всерос. совещания зав. кафедрами графических дисциплин. — Челябинск. — Изд-во ЮУрГУ, 2007. — Т. 2. — С. 125—133.
6. Хейфец, А.Л. Инженерная компьютерная графика АЫоСАО. Опыт преподавания и широта взгляда / А.Л. Хейфец. — М.: ДИАЛОГ-МИФИ, 2002. — 432 с.
7. Хейфец, А.Л. Инженерный 3С-метод компьютерного геометрического моделирования на примере задачи совмещения коники с квадрикой / А.Л. Хейфец // Труды 19-й международной научнотехнической конференции «Информационные средства и технологии. Москва 18—20 октября 2011». — М.: Издательский дом МЭИ, 2011. — С. 78—86.
Поступила в редакцию 12 сентября 2010 г.