Научная статья на тему 'Вычислительная геометрия'

Вычислительная геометрия Текст научной статьи по специальности «Математика»

CC BY
483
72
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ГЕОМЕТРИЯ / ВЫЧИСЛИТЕЛЬНАЯ ГЕОМЕТРИЯ / МАТЕМАТИКА / АППРОКСИМАЦИЯ / ТЕОРИЯ ПОВЕРХНОСТЕЙ / АЛГЕБРАИЧЕСКИЕ КРИВЫЕ / КОНЕЧНЫЕ СЕЧЕНИЯ

Аннотация научной статьи по математике, автор научной работы — Фоменко Валентин Трофимович

Статья посвящена геометрическим образам в вычислительной геометрии, в частности, рассматриваются кривые и поверхности на плоскости и в пространстве. В данной статье представлены новые методы проектирования, составляющие содержание вычислительной геометрии, основанные на использовании аналитического аппарата, в частности, привлечении сплайн-функций, алгебраических кривых, конических сечений.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Вычислительная геометрия»

Пусть имеем два значения величины И : Н = , И = Н2 • Обозначив решение задачи (8) при И = через Сх, а при И = /?2 через С2 , получим

= 0 в д Г/х2 = 0 вД

^ = на ал. = /?2 на ал.

Тогда, вычитая из первой полученной задачи вторую, находим: \Ь(сх -с2) = 0 в г>,

B(cl-c2) = hl-h2 на ал.

В силу оценки (7), для задачи (9) имеем ||Cj — ^Ic^fm ~ ^ll^l ~~ 11с1

(9)

Далее, имеем z" - Z2 = (d\ - а\)у" + (üf - al)у" + (Cj - С2)п

2\\c2'v{D) ~ \\ ^ 2\\Cl'v{dD) '

22к

= ~ 51сгК ~ t(ö2cI -+ (q -с2К =

Л Л

= —— Э,(с - С2 )_)л" - — (с, - С2)у2 + (с, - С2)па , где z" - векторное поле,

Л Л

соответствующее решению задачи (8) при И = h¿.

-c2)||cu45)<|K-c2||c In И 1

Так как \\dfa - C2)\cU,0) < ¡C, - C2\\^v0), \\d2(Cl - C2)\c,v0) < \\c, - С2\\с^ф).

то

2Пс^ф) - A"Ci С211с2-(5) + л11с1 C2||C^(5) + IIC1 c2||с^фу

Следовательно,

а а Zl 2

С^ф)~ Д I'1 "2||с2-(15) _ А " "2 «С1-" (3D)-

Таким образом, малому изменению величины соответствует малое изменение поля смещения Za в классе С ' , 0 < V < 1. Следовательно, обобщенная втулочная связь (3) является корректной в классе С'v, 0 < V < 1, в отношении бесконечно малых ARG -деформаций с коэффициентом рекуррентности Л, Л < — 1. Теорема доказана.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Fomenko V.T. ARG -deformations hypersurface with boundary in Riemannial space. Tensor, N.S. vol. 54 (1993). Chigasaki, Japan.

2. Векуа И.Н. Обобщенные аналитические функции/ под ред. О.А. Олейник и Б.В. Шабата.2-е изд., пе-рераб. М.: Наука / гл. ред. Физмат. Лит., 1988. 512с. ISBN 5-02-013747-2.

В.Т. Фоменко ВЫЧИСЛИТЕЛЬНАЯ ГЕОМЕТРИЯ

Вычислительная геометрия как раздел математики сформировался в последние четыре десятилетия благодаря бурному развитию электронной вычислительной техники. Термин "вычислительная геометрия", ставший в настоящее время общепринятым, ввел в 1971 г. английский математик А.Р. Форрест, который определил вычислительную геометрию как представление в ЭВМ, анализ и синтез информации о геометрическом образе [1]. Основными геометрическими образами в вычислительной геометрии являются кривые и поверхности на плоскости и в пространстве. До последнего времени проектирование кривых и поверхностей для нужд промышленности, как правило, осуществлялось графическим способом с помощью различных приемов, разработанных в начерта-

тельной геометрии, и являлось трудоемкой работой. Новые методы проектирования, составляющие содержание вычислительной геометрии, основаны на использовании аналитического аппарата, в частности, привлечении сплайн-функций, алгебраических кривых, конических сечений ([2]-[5]). Эти методы требуют замены чертежных работ большим объемом вычислений на ЭВМ, что приводит к созданию различных автоматизированных систем проектирования поверхностей, широко используемых для работы на станках с числовым программным управлением.

Естественно, что математическое представление исследуемого объекта проводится в цифровых данных и сохраняется в памяти ЭВМ. Это дает возможность избежать неточностей проектирования, связанных с плазовым методом, и легко проводить вычисления геометрических характеристик, необходимых для описания объекта. Однако главное преимущество методов вычислительной геометрии заключается в возможности вести процесс проектирования с анализом полученного результата и введения необходимой корректировки проектирования до получения готового изделия. Поясним это на примере, который будет изложен более подробно ниже. Допустим, что требуется построить непрерывно дифференцируемую кривую, проходящую через точки заданного плоского набора точек. Существуют различные способы построения таких кривых. Наиболее распространенными являются методы интерполирования многочленами, например, многочленом Лагранжа. Последний содержит много осцилляций, и потому, как правило, требуются некоторые изменения многочлена на каком-то участке. Однако, изменения многочлена Лагранжа на некотором участке влечет изменение этого многочлена на всем наборе точек, что приводит к ликвидации всех ранее полученных вычислений.

Методы вычислительной геометрии, разработанные Форрестом, Фергюссоном и Кунсом для проектирования кривых и поверхностей являются наглядно геометрическими и базируются на разделах классической аналитической и дифференциальной геометрии, векторной и элементарной матричной алгебры. В рассматриваемом случае проектировщик определяет некоторую незамкнутую ломанную кривую для заданного набора точек и выносит ее изображение на дисплей, после чего система автоматического проектирования аппроксимирует эту ломанную гладкой кривой, также выносимой на дисплей. Внеся различные изменения в исходную ломанную на некоторых участках, проектировщик может изменить на этих участках аппроксимирующую кривую, оставляя ее неизменной на остальных участках набора. Важно отметить, что непрерывное изменение ломанной влечет за собой непрерывное изменение на соответствующем участке аппроксимирующей кривой в рассматриваемом классе регулярности.

Таким образом, разработанная система реализует диалоговый режим обмена информацией между проектировщиком и ЭВМ. Подобным образом можно проектировать и поверхности. Для этого предварительно строится незамкнутая многогранная поверхность, соответствующая заданному пространственному набору точек, и для нее находится гладкая аппроксимирующая поверхность. Более того, метод Кунса, описанный ниже, делает возможным построить гладкую поверхность, натянутую на систему двух пересекающихся семейств гладких кривых.

1. ГЛАДКАЯ АППРОКСИМАЦИЯ ПЛОСКИХ ТОЧЕЧНЫХ МАССИВОВ КРИВЫМИ ВТОРОГО ПОРЯДКА

Пусть на плоскости с декартовой прямоугольной системой координат оху задан упорядоченный набор (М;}!-=1 точек М: , I = 1,2,..,, ?1, своими координатами Уг ), I = 1,2,... ,71,.

Множество {Л/,-}^ будем называть плоским точечным массивом. Будем решать задачу аппроксима-

ции данного плоского точечного массива с заданной точностью с :> 0. Решение этой задачи будем искать в классе кривых с непрерывно изменяющейся касательной и состоящей из дуг кривых второго порядка. Необходимо также договориться, что следует понимать под точностью аппроксимации. Обычно это делается следующим образом. Пусть Р(х,у) = 0 - уравнение кривой £, аппроксимирующей точечный массив {М,-. Из курса дифференциальной геометрии известно, что при подстановке координат точки М: = У, ) в выражение Р 3-0 и нормировке результата получается величина Л,- = Р(_Хиу{)/т/ Р£ + Ру О^уЛ

эквивалентная величине - расстоянию точки М, от рассматриваемой кривой Это означает, что отношение .Я,- / /),■ стремится к единице, когда точка неограниченно приближается к кривой оставаясь вне кривой. Если точка Л/, находится достаточно близко к кривой то расстояние

ее от кривой можно приближенно вычислять по формуле ¡1^ Я,-. В случае, когда рассматриваемая кривая является прямой на плоскости, полученная приближенная формула для вычисления

■ ■ ■ превращается в точную.

В связи с этим говорят, что кривая Ь\ Р[хгу) = 0 аппроксимирует точечный массив

{М,-}!'_ с заданной точностью, если выполнено условие А = {У] ^ Я^ } ■'3 < Е.

Задача аппроксимации плоского точечного массива с заданной точностью имеет много решений, даже, если эту задачу решать в классе гладких кривых, состоящих из дуг кривых второго порядка. Простейшее решение можно получить, например, составив аппроксимирующую кривую £ из дуг окружностей, проходящих через каждые две соседние точки с условием гладкого сопряжения на концах. Однако, такая кривая не всегда может удовлетворить требованиям проектировщика. Обычно поставленную задачу решают при некоторых дополнительных условиях. Говорят, что плоский точечный массив } ^ _ ^ является выпуклым, если ломаная , А'!^ г ■ ■ - > . соединяющая последовательно точки массива, является выпуклой ломаной. Разбивая данный массив, если это необходимо, на выпуклые массивы, будем решать задачу аппроксимации для выпуклого массива точек. Сопрягая гладким образом полученные кривые на выпуклых участках, получим аппроксимирующую гладкую кривую для всего данного массива точек.

Пусть А, В - концы выпуклого массива точек {М,-}}'_ ^. Зададим в точках А, В касательные ' 1.1 ¿2• к аппроксимирующей кривой выбрав их, например, касательными к окружностям, проходящим, соответственно, через точки {/1 = М^гМ2гМ^я{_Мп_2,Мп_1гМп = В}. Будем считать, что касательные I \ И ¡2 пересекаются в точке Р, а точечный массив {М, ^ лежит внутри треугольника АВР. Искомую аппроксимирующую кривую £ отыскивают, следуя Р.А. Лаймингу, среди пучка иу) кривых второго порядка, заданного уравнением:

гдеК^У) = (_Х,У) = 0, 12(_Х,у) = 0, — уравнения прямых А В , I соответ-

ственно; У - числовой параметр. При У = 0 и У = 1 кривые пучка Ь (у) представляют собой, соответственно, пару пересекающихся прямых ^ 1 > ^ 2 и пару совпавших прямых I. Поэтому 18

в дальнейшем можно считать, что У Ф- 0., У ^ 1. Дуга кривой Ь касается прямых I±,^2 в точ~ ках А, В для любого значения У. В самом деле, по определению прямая I \ касается кривой Ь в точке Л, если пересечение прямой ¿1 и кривой Ь представляет собой точку А рассматриваемую как пару совпавших точек. Найдем точки пересечения прямой I} и кривой Для этого решим относительно (х, у) совместно систему уравнений:

12

Преобразуем эту систему к виду:

Эта система для любого УСУ ^ ) имеет точно два совпавших решения, дающих координаты точки А. Отсюда следует, что прямая ? ^ является касательной к кривой Ь в точке А для любого отличного от нуля значения У. Аналогично устанавливается, что кривая ¿2 касается кривой - в точке В Кривая Ь пучка £ (_У). дающая наилучшее приближение точечного массива дает минимум значения функции Я. по параметру У. и потому соответствующее значение параметра У

удовлетворяет уравнению ~~~ — 0. Если при найденном из этого уравнения значении параметра

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

Описанный выше алгоритм нахождения аппроксимирующей кривой целесообразно применять в тех случаях, когда исходный точечный массив требуется дополнить новыми точками, равномерно распределенными по кривой.

2. РАЦИОНАЛЬНАЯ ПАРАМЕТРИЗАЦИЯ КРИВОЙ ВТОРОГО ПОРЯДКА

Рассмотрим на плоскости гладкую дугу £ кривой второго порядка с концами Л, В. Обозначим через Р точку пересечения касательных I }, 2 2 к кривой Ь в точках В. Выведем векторное

параметрическое уравнение дуги Ь. считая заданными радиус-векторы Тд > ?Б' > точек А, В, Р, соответственно (рис. 1).

Пусть М - текущая точка кривой Ь с радиус-вектором Т. Положим

" = - о'-ТТ-"^), (1)

где ОС-, - некоторые числа, определяющие положение точки М. В аффинных координатах (и, 1') с базисом [РА, РВ| и началом в точке р уравнение пучка кривых второго порядка, образованного прямыми РА, РВ, АВ имеет вид:

Р (и, V, у) = (1 - у) (-14) ■ V + 7 (и + V - 1)12 = 0, где У - числовой параметр. Уравнение касательной к кривой Ь в точке м имеет вид:

Полагая сначала V — 0, а затем и — 0, и учитывая, что

, находим отсюда значения координат точек

$-7Сч Л-0

Т =

(7 =

■2у(а + 0- 1)

-2у(<г + 0- 1)

.

тогда находим

Отсюда следует, что Цп

Так как Т Е (ОД), (7 € (ОД), ТО > 0.

Это означает, что У Е (ОД). Выражая £Г, через получим:

. Подставляя найденные значения в формулу (1),

находим радиус-вектор точки

(1)

Вводя в это выражение параметр Т, окончательно находим искомое уравнение кривой в виде:

(2)

- _ т2гА+2т(1-т~)гР+к'г(.1-т~)'2гв

Это уравнение называют рациональным квадратичным векторно-параметрическим уравнением кривой Геометрический смысл коэффициента к в уравнении (2) заключается в том, что в точке С кривой Ь, наиболее удаленной от хорды АВ, касательная к кривой Ь делит отрезки касательных АР, ВР точками в отношении к, к = = ~~ Это означает, что при

к <С 1, к = 1, к ]> 1 дуга £ есть, соответственно, кусок гиперболы, параболы и эллипса.

Непосредственный подсчет показывает, что кривизна кривой Ь в точках А, В вычисляется по формуле

1 ]г2 [Тр-ГА^В-Гл]

к (А) =-к

к (.В) =

2 \гр-гА ■ Ш) т-р-тА а

гВ-гА\3 '

где квадратные скобки обозначают векторное произведение векторов.

Данный плоский массив точек {М,- ^ можно интерполировать кривой L с непрерывной кривизной и состоящей из дуг кривых второго порядка следующим образом. Зададим в каждой точке массива касательную к кривой L и значения кривизны в точке А = М . Тогда по описанному выше способу находим однозначно кривую второго порядка, идущую из точки А в точку Mj с заданными касательными и заданной кривизной в точке А. Вычисляя для нее кривизну в соседней

точке М'2, мы получаем исходные данные для нахождения кривой на следующем этапе интерполяции. Составная кривая будет интерполяционной кривой с непрерывной кривизной.

3. КУБИЧЕСКИЕ ПАРАМЕТРИЧЕСКИЕ КРИВЫЕ В ФОРМЕ ФЕРГЮССОНА И БЕЗЬЕ

В 1963 г. Д.С. Фергюссон предложил отыскивать уравнение кривой проходящей через точки А, В с заданными касательными 1 j, I2 в этих точках, в виде:

~ = Ii) =~_: - - - (3)

где U - параметр, Ii t [ОД]; 0;Д = 0 ,1,2,3 некоторые постоянные векторы. Так как точки А, В и касательные I 1'2 считаются заданными, то, выражая О. д ,.., , Ü 3 через ТА ,Tß, Тд ,Т в, где знак означает производную по параметру U находим:

Векторы Гд И Тß, можно представить в виде

где Т СО) т Ц) - единичные касательные векторы к кривой L в точках А, В, соответственно. Числа ИА] называются весовыми величинами. Их можно подбирать, исходя из требуемого вида кривой Зависимость формы кривой заданной уравнением (4) от параметров И О, -у, показана на рис. 2. Кроме того, величины И Otj можно выбирать таким образом, чтобы кривизна кривой L достигала заданного значения на концах А , В.

В 1970 г. П. Безье предложил другую форму записи уравнения (3), сделав наглядным смысл входящих в него векторных величин. Формула П. Безье имеет вид:

где U G [0Д],Го = ТА\ Тз = Тß] Т,Т^: радиус - векторы некоторых заданных точек Из формулы (5) следует, что кривая, заданная в форме Безье, проходит через точки

А, В имеет

в этих точках касательные, имеющие, соответственно, направление векторов ('Г^ То); (Т3 2 ) (рис. 3). Прямые АР^, Pj Р2, Р2 В образуют фигуру, называемую характеристической ломаной заданной кривой. Чтобы построить кривую мы задаем точки А, В.

касательные к кривой в этих точках, и на касательных выбираем точки , Р-1. Изменяя положение

точек Р^ , Рп мы меняем форму кривой которая в некоторой степени повторяет форму характеристической ломаной (рис. 3).

Формулы Фергюссона и Безье удобно использовать для сопряжения участков кривых при интерполировании кривыми с непрерывной кривизной точечных массивов, содержащих точки перегиба. Возможны и другие формы записи полиномиальных кривых, обобщающие уравнение (5).

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

4. ПОВЕРХНОСТИ В ФОРМЕ КУНСА И ФЕРГЮССОНА

Проектирование поверхности начинается с построения на ней криволинейной сети, содержащей основную информацию о поверхности. Как правило, линии такой сети берут в качестве координатных линий на поверхности (например, продольные (ватерлинии) и поперечные (шпангоуты) сечения судна; параллели и меридианы поверхности вращения и т.д.). Сеть на поверхности, образованную линиями выбранных семейств, будем называть каркасом поверхности. Каркас поверхности разбивает последнюю на криволинейные прямоугольники, называемые ячейками поверхности. Каждая из ячеек является элементом проектирования поверхности. Задача проектировщика заключается в построении поверхности, проходящей через заданный каркас и удовлетворяющей заданным требованиям гладкости, выпуклости, искривленности и т.д.

Ниже описывается предложенный Кунсом и развитый Фергюссоном метод построения гладкой поверхности, натянутой на заданный каркас.

Решим, прежде всего, задачу построения ячейки поверхности Р, проходящей через заданные кривые:

.

Аппроксимируем искомую поверхность следующими линейчатыми поверхностями:

Уравнения г(и) = Ь т(и) = изображают отрезки прямых, соединяющих точки А, О и В, С соответственно (рис. 4).

Проверим, что поверхность Р, заданная уравнением

изображает поверхность, проходящую через каркас, образованный кривыми I \, 121 ^зг ¿4. В самом деле, полагая, и = 0, находим

Это означает, что кривая Iлежит на поверхности Р. Аналогично убеждаемся, что

лежат на Р. Эта конструкция, использующая только информацию о границе поверхности, определяет наиболее простой класс поверхностей и предложена в 1967 г. Кунсом. Данная здесь трактовка принадлежит Форресту (1972 г.).

где функции и, 1 1 'V называют функциями смешивания.

Имея сетку кривых, образующих каркас поверхности, можно сконструировать составную поверхность из ячеек описанного вида (6). Эта поверхность будет непрерывной, но, вообще говоря, не

гладкой. Непрерывность изменения касательной плоскости вдоль составной поверхности Р обеспечивается более сложным уравнением ячейки, что достигается другим выбором функций смешивания и заданием наклона касательных плоскостей к поверхности вдоль кривых каркаса с помощью векто-

Для получения уравнения такой поверхности

составляем, как и ранее, уравнения поверхностей , Р-2> Р3, интерполирующих ячейку поверхности ¥, в виде:

где индекс Р означает транспонирование матрицы, 1 (и), ... г ( М-).. (и) -

функции смешивания, удовлетворяющие условиям:

Отметим, что в матрицу Л входят также значения смешанной производной в вершинах ячейки, которые можно задать заранее.

Уравнение искомой ячейки поверхности Р, натянутой на заданный каркас и имеющей заданные направления нормали к поверхности вдоль граничных кривых ячейки, задается формулой

■ = ■ I _ ■ ; _ ■ Используя это уравнение ячейки поверхности, можно построить из нескольких ячеек поверхность с непрерывным изменением касательной плоскости вдоль всей поверхности.

Простейшие функции смешивания, удовлетворяющие условиям (7), были указаны Фер-гюссоном:

В заключение отметим, что внешне геометрические свойства поверхностей Фергюссона, натянутых на заданный каркас, наглядно просматриваются для случая, когда заданный каркас об-

разовая семейством кривых Ьполучаемым из двух плоских кривых ^ 01' ^ 10 путем параллельного перемещения одной кривой по другой. Такой каркас можно назвать каркасом переноса. Имеет место следующий результат, установленный автором: поверхность в форме Фергюссона, натянутая на каркас переноса, является поверхностью переноса. Другими словами, поверхность

Фергюссона может быть получена в пространстве путем трансляции кривой Ь д ^ по кривой Ь ]_д.

Рис. 1

Сегмент конического сечения с заданными касательными на концах

Рис. 2

Зависимость формы кубической кривой

Рис. 3

Зависимость формы кривой Безье от формы характеристической ломаной

Рис. 4

Аппроксимация ячейки поверхности линейчатыми поверхностями

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Forrest A.R. Computational Geometry. Proc. Roy. Soc. Lond, 1971. С. 187-195.

2. Фокс А., Пратт М. Вычислительная геометрия. М.: Мир, 1982. С. 302.

3. Стародетко Е.А. Элементы вычислительной геометрии. Минск: Наука и техника, 1986. С. 240.

4. Завьялов Ю.С., Квасов Б.И., Мирошниченко В.Л. Методы сплайн-функций. М.: Наука, 1980. С. 352.

5. Стечкин С.Б., Субботин Ю.Н. Сплайны в вычислительной математике. М.: Наука; 1976. С. 248.

В.Т. Фоменко, О.Н. Фартушная, В.В. Сидорякина

ОБ ОДНОМ ОБОБЩЕНИИ ТОРА КЛИФФОРДА В Е'

Т2 с

П. 1 Известно, что тор Клиффорда Ьв определяется как произведение двух ок-

1 1

ружностей 3 а и Ь ^радиусов а и Ь, соответственно. Тор Клиффорда обладает рядом замечательных свойств, в частности: 1) имеет плоскую метрику;

i Надоели баннеры? Вы всегда можете отключить рекламу.