![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Скругление угла [D7, WinXP]
KOSik © (2007-03-25 17:08:00)Доброго дня всем! У меня такая задача: даны 2 отрезка, заданные точками. Они имеют общую точку-узел. Нужно реализовать скругление получившегося угла дугой окружности заданного радиуса. Может кто может чиго подсказать? Заранее весьма благодарен! =)
Rial (2007-03-26 18:54:00) [1]А в точках пересечения с отрезками они же и будут касательными
к окружности.
Также придется рассчитать угол между прямыми A.
A1, A2 - точки пересечения окружности с прямыми.
P0 - точка пересечения отрезков.
B - точка перечения отрезка (A1,A2) и биссектрисы.
Тогда длины открезков (A1, P0) и (A2, P0) равны.
Расстояние от P0 до B будет равно
Cos(A / 2) * RR
Расстояние от B до центра окружности будет равно
Cos((Pi - A)/2) * R.
Т.е. для нахождения центра окружности надо отсчитать
по биссектрисе
L = Cos(A / 2) * RR + Cos((Pi - A) / 2) * R, где
RR = R * Sin((Pi - A) / 2) / Sin(A / 2);
MBo (2007-03-26 06:03:00) [2]центр будет лежать на биссектрисе.
KOSik (2007-03-25 20:58:00) [3]
> MBo © (25.03.07 20:10) [1]
спасибо большое за ссылку, но мне надо бы получить дугу окружности, то есть 3 точки или хотя бы один центр. Просто мне она нужна не для украшения, а для рассчетов. Эту дугу я буду учитывать в результатах...
MBo (2007-03-25 20:10:00) [4]http://www.efg2.com/Lab/Library/UseNet/2003/0221.txt