Cloud of Science. 2016. T. 3. № 4 http:/ / cloudofscience.ru
О некоторых свойствах сопряженных круговых дуг
В. Н. Агеев
Московский государственный технический университет гражданской авиации 125993, Москва, Кронштадтский бульвар, 20
e-mail: rv3bd@mail.ru
Аннотация. В работе обсуждаются свойства сопряженных круговых дуг, соединяющих две точки на плоскости, в которых заданы направления касательных векторов. Предлагается метод построения, в основе которого лежит применение вспомогательной окружности. Радиус окружности зависит от направления касательных векторов. Доказано, что любая точка этой окружности является точкой сопряжения пары круговых дуг. Ключевые слова: гладкая кривая, круговые дуги, точка сопряжения.
1. Введение
В системах автоматизированного проектирования для описания контуров сложной формы широко применяются так называемые кусочно-непрерывные методы аппроксимации, суть которых состоит в том, что криволинейный контур представляется в виде последовательности сопряженных между собой дуг каких-либо кривых (например, парабол второго, третьего или более высокого порядка). В зависимости от решаемой задачи на проектируемый контур накладываются определенные условия гладкости. В простейшем случае это условие непрерывности изменения угла наклона касательной при переходе через точку сопряжения, более жесткие требования включают непрерывность изменения кривизны кривой. На эту тему имеется множество публикаций, в качестве примера можно привести статьи [1-4], в которых приведены многочисленные ссылки на работы, освещающие различные стороны проблемы.
Выбор круговых дуг в качестве аппроксимирующих кривых обусловлен тем, что в устройствах машинной графики (графопостроителях, плоттерах) а также в применяемых в машиностроении металлообрабатывающих станках с ЧПУ для перемещения рабочего органа используется два типа интерполяторов: линейный и круговой. Описание контура с помощью таких графических примитивов, как отрезки прямых и круговые дуги позволяет получить управляющую программу для станка с ЧПУ без дополнительных преобразований, в результате чего уменьшаются погрешности при воспроизведении контура.
Обзор публикаций на эту тему позволяет сделать вывод о том, что авторы в основном уделяют внимание методам минимизации погрешности при аппроксимации, а также проблемам устойчивости. При этом на второй план отходят вопросы, связанные с практическим построением пары сопряженных дуг, поскольку эта задача представляется достаточно простой. Тем не менее необходимость исследований в этом направлении очевидна. Свидетельством этому может служить статья [5], в которой автор описывает достаточно сложную процедуру сопряжения при аппроксимации круговыми дугами швейных лекал. Возможно, что подобная проблема возникает и при решении других практических задач.
В работе описан метод построения пары сопряженных круговых дуг, соединяющих две точки на плоскости с заданными в них направлениями касательных векторов. Он достаточно прост с вычислительной точки зрения, более того, он может быть применен для вычерчивания сопряженных дуг «вручную», с использованием только циркуля и линейки.
2. Вспомогательная окружность и ее свойства
Пусть на концах отрезка АВ заданы направления векторами тА и тв. Первый под
углом а (отсчитывается против часовой стрелке), второй — под углом р (по часовой стрелке). Требуется построить пару сопряженных дуг, первая из которых выходит из А в направлении тА, а вторая приходит в В по направлению тв (рис. 1а).
Рисунок 1. Построение пары сопряженных круговых дуг: а — пример построения; б — вспомогательная окружность с центром в точке пересечения срединного перпендикуляра к отрезку АВ и линии биссектрисы угла 5
Точки 01 и 02 лежат на линиях возможных центров, определяемых векторами иА и 72в, ортогональных векторам тА и тв соответственно. Через точку пересечения этих линий проведем линию, являющуюся биссектрисой угла 5 (см. рис. 1б). Точку пересечения этой линии со срединным перпендикуляром к отрезку АВ обозначим 8. Из этой точки, как из центра, проведем окружность, проходящую через концы отрезка.
Нетрудно показать, что ZASB = а + р и что радиус этой окружности равен
^ = а я , (1)
где ё — длина отрезка АВ.
Данная окружность обладает весьма интересными свойствами. В работе [6] она была названа вспомогательной, поскольку с ее помощью выполняются все необходимые построения. Покажем, что любая точка Q вспомогательной окружности является точкой сопряжения двух круговых дуг, первая из которых выходит из точки А в направлении хА, а вторая приходит в точку В в направлении тв.
Возьмем произвольную точку Q на вспомогательной окружности и соединим ее с концами отрезка АВ (рис. 2).
Рисунок 2. Нахождение центров О и О2 по заданной точке Q на вспомогательной окружности
Проведем срединные перпендикуляры к отрезкам AQ и QB до пересечения с линиями возможных центров. Точки пересечения обозначим О и 02. Нетрудно видеть, что это искомые центры первой и второй дуги. Действительно,
| OjA | = IOQ | и |O2Q| = |O2B | по построению. Кроме того, из равенства углов ZSAOj, ZOQS и ZSBO2 следует, что центры дуг и Q лежат на одной прямой, а значит, в точке сопряжения дуги имеют общую касательную. Таким образом, выбор точки на вспомогательной окружности однозначно определяет пару сопряженных в этой точке круговых дуг.
3. Свойства семейства кривых, представленных парой сопряженных дуг
Выше был рассмотрен частный случай положения точки Q на вспомогательной окружности. Однако нетрудно убедиться в том, что любой другой выбор Q приводит к тем же результатам.
Из сказанного следует, что на плоскости можно построить бесконечно много пар сопряженных между собой круговых дуг, соединяющих две точки, в которых заданы направления касательных векторов. Они образуют однопараметрическое семейство гладких кривых. В качестве параметра, характеризующего положение точки сопряжения, можно взять длину дуги вспомогательной окружности AQ или величину центрального угла у =ZASQ, 0<у< 2л. В этом случае радиусы сопряженных в точке Q дуг вычисляются по формулам
sin (у/2)
R = R-;-г,
1 ^sin ((а-р + у)/2)
R sin ((а-р + у)/2)
2 R sin (р-у/ 2) .
Из этих формул следует, что при у = 2р радиус второй дуги R становится
бесконечно большим. При этом точка сопряжения лежит на пересечении линии
*
второй касательной со вспомогательной окружностью. Обозначим эту точку Q . Вторая дуга при этом становится отрезком прямой Q B.
При у = 2 л - а +р бесконечно большим становится радиус первой дуги R. В
этом случае точка сопряжения лежит на пересечении линии первой касательной со
*
вспомогательной окружностью. Обозначим эту точку Q . Первая дуга так же, как и в предыдущем случае, вырождается в линию с нулевой кривизной и центр ее перемещается в бесконечно удаленную точку. Эти две возможные ситуации показаны на рис. 3.
В системе координат, начало которой совпадает с точкой A, а ось Ox направлена вдоль отрезка AB, координаты центров дуг Oj, O2 вычисляются по формулам
X = вт а, у = - cos а, X = d- Я2 8т Ъ, у =-Я2 008Ъ.
(3)
На рис. 4 показано семейство гладких кривых, представляющих собой пары сопряженных круговых дуг, соединяющих две точки с заданными в них направлениями касательных. Дуги окрашены в разные цвета.
Рисунок 4. Множество пар сопряженных дуг, построенных с шагом Ду = 10о; углы наклона касательных: а = 60о, р = 30о.
Обращает на себя внимание тот факт, что все дуги, выходящие из первой точки, лежат вне круга, границей которого является множество точек сопряжения, а все дуги, приходящие во вторую точку лежат внутри круга.
Численные эксперименты показывают, что с уменьшением шага изменения параметра у количество кривых растет и они начинают заполнять собой всю плоскость. Можно предположить, что через любую точку на плоскости можно провести пару сопряженных дуг, удовлетворяющих поставленным условиям.
4. Построение кривой, проходящей через заданную точку
Пусть на плоскости заданы направления касательных тА и тв в точках А и В соответственно. Требуется построить пару сопряженных дуг, первая из которых выходит из А по направлению хА, а вторая приходит в В по направлению тв, при этом дополнительным условием является требование прохождения кривой через произвольную точку Р.
Рассмотрим две случая, связанных с положением точки Р относительно круга, граница которого является вспомогательной окружностью, т. е. множеством возможных центров сопряжения дуг.
1. Точка находится вне круга.
В этом случае, как это следует из результатов, полученных в предыдущем разделе, через точку Р проходит первая дуга, выходящая из точки А (см. рис. 4). Построим отрезок АР и проведем к нему срединный перпендикуляр до пересечения с линией возможных центров первой дуги. Обозначим ее Ог Окружность с радиусом Д = | ОА | и центром О пересекает вспомогательную окружность в некоторой точке Q. Из результатов п. 2 следует, что точка Q однозначно определяет центр и радиус второй дуги.
2. Точка находится внутри круга.
В этом случае через точку Р проходит вторая дуга, приходящая в точку В. Построим отрезок ВР и проведем к нему срединный перпендикуляр до пересечения с линией возможных центров второй дуги. Обозначим ее О2. Окружность с радиусом Д = | О2В | и центром О пересекает вспомогательную окружность в некоторой точке Q. Из результатов п. 2 следует, что точка Q однозначно определяет центр и радиус первой дуги.
Примеры построений приведены на рис. 5.
а б
Рисунок 5. Примеры построения кривых, проходящих через заданную точку: а) точка P лежит вне круга, ограниченного вспомогательной окружностью; б) точка P лежит внутри круга
5. Построение сопряженных дуг с минимальным скачком кривизны
Кривая, составленная из пары сопряженных круговых дуг, является гладкой, поскольку обеспечивается непрерывность первой производной, т. е. изменения угла наклона касательной при переходе через точку сопряжения. Однако вторая производная изменяется скачкообразно, поскольку имеет место скачок кривизны, равный
Ак = -----. (4)
Подставляя сюда выражения для ^ и из (2), получим
Ак = -1--1 = _1
К2 КБ
8Ш ^ 81П
т (р-й'
ЯП ^
(5)
Минимум этой величины для различных значений а и Р получается при у = (а + р)/2.
Чтобы убедиться в том, что функция Ак (у) имеет локальный минимум в точке у=(а+Р)/2, представим у в виде у=(а+Р)/2 + 2в, где в — малый параметр.
Подставляя это выражение в (5) и раскладывая в ряд по степеням в до второго порядка малости включительно, получим [7]:
а-р __а+р
_L_ . ллс_L_
а + р
Ак = Ак0 +-2--4—— -е2, (6)
0 d - sin2 ^ , ( )
где Ак0 — значение (5) при у = (а + р)/ 2.
При а > р коэффициент при е2 положителен. Отсюда следует, что у=(а + Р)/2 является точкой локального минимума функции Ак (у).
Подставляя значение у=(а + р)/2 в формулы (2), получим следующие значения радиусов сопряженных дуг, при которых скачок кривизны при переходе через точку сопряжения минимален:
sin о±Р sin о±Р
R = , R = . (7)
Точка сопряжения Q при этом будет иметь координаты
а + р 2' "Q 2 J_4
Если обратиться к рис. 16, где изображена вспомогательная окружность, то
точка Q, соответствующая значению параметра у=(а + р)/2 находится на пересе,
чении окружности и продолжением пунктирной линии (срединного перпендикуляра к отрезку AB). Это следует из того, что ZASB = а + р.
XQ ="Т", УQ =~Т . (8)
Рисунок 6. Построение сопряженных дуг с минимальным скачком кривизны: углы наклона касательных а = 60° , р = 30°; 8 — центр вспомогательной окружности,
SQ — биссектриса угла А8В
Таким образом, можно предложить следующий простой алгоритм построения пары сопряженных круговых дуг с минимальным скачком кривизны в точке сопряжения.
1. По заданным на концах отрезка AB углам наклона касательных а и ß проводятся линии возможных центров до их пересечения и методом, описанным в п. 1, строится вспомогательная окружность с центром в точке S.
3. Определяется точка сопряжения Q как точка пересечения срединного перпендикуляра к отрезку AB со вспомогательной окружностью. Линия SQ при этом является биссектрисой угла ASB.
4. К отрезкам AQ и QB проводятся срединные перпендикуляры (на рис. 6 показаны пунктиром) до их пересечения с линиями возможных центров первой и второй дуг соответственно. Точки пересечения и являются искомыми центрами дуг O и O2.
Литература
[1] Yang X., Wang G. Planar point set fairing and fitting by arc splines // Computer-Aided Design. 2002. Vol. 34, No. 13. P. 35-43.
[2] Park H. Error-bounded biarc approximation of planar curves // Computer-Aided Design. 2004. Vol. 36, No. 12. P. 1241-1251.
[3] Сабитов И. Х., Словеснов А. В. Приближение плоских кривых круговыми дугами // Журнал вычислительной математики и математической физики. 2010. Т. 50, № 8. С. 1347-1356.
[4] Курносенко А. И. Интерполяционные свойства плоских спиральных кривых // Фундаментальная и прикладная математика. 2001. Т. 7, № 2. С. 441-463.
[5] Сайфуллаева Д. А. Методы математического описания контуров лекал швейных изделий, методы линейно-круговой аппроксимации // Молодой ученый. 2016. № 11. С. 459461.
[6] Агеев В. Н. О геометрических свойствах одного семейства плоских кривых // Геометрия, топология и приложения: межвуз. сб. научных тр. — М. : МИП, 1990. С. 41-45.
[7] Агеев В. Н. Аппроксимация линий и контуров круговыми дугами // Известия высших учебных заведений. Проблемы полиграфии и издательского дела. 2012. № 1. С. 3-10.
Автор:
Владимир Николаевич Агеев, профессор, доктор технических наук, профессор кафедры прикладной математики; Московский государственный технический университет гражданской авиации
On Some Properties of Conjugate Circular Arcs
V. N. Ageyev
Moscow State Technical University of Civil Aviation 20 Kronshtadtsky blvd, Moscow, Russia 125993
e-mail: rv3bd@mail.ru
Abstract. Methods for constructing conjugated circular arcs connecting two points on the plane, which sets the direction of the tangent vectors are discussed. A method, which is based on an auxiliary circle passing through the given points. The radius of the circle depends on the direction of the tangent vectors. It is proved that any point of the circle is the point of mating pairs of circular arcs.
Keywords: smooth curve, circular arc coupling point, the tangent vectors.
References
[1] Yang X., Wang G. (2002) Computer-Aided Design, 34(13):35-43.
[2] Park H. (2004) Computer-Aided Design, 36(12):1241-1251.
[3] Sabitov I. K., Slovesnov A. V. (2010) Computational Mathematics and Mathematical Physics, 50(8):1279-1288.
[4] Kurnosenko A. I. (2001) Fundamental'naja iprikladnaja matematika, 7(2):441-463. [In Rus]
[5] Sayfullaeva D. A. (2016) Molodoy ucheny, 11:459-461. [In Rus]
[6] Ageev V. N. (1990) O geometricheskih svojstvah odnogo semejstva ploskih krivyh. In Book Geometrija, topologija i prilozhenija. Moscow, pp. 41-45. [In Rus]
[7] Ageev V. N. (2012) Izvestija vysov. Problemypoligrafii i izdatel'skogo dela. 1:3-10. [In Rus]