Re: Обобщение окружности и прямой...
От: Кодт Россия  
Дата: 09.10.15 13:52
Оценка: 3 (1)
Здравствуйте, Рома Мик, Вы писали:

РМ>Проблема у меня в пункте 3. А именно: имея три точки A, B, C, получить параметрическое дуги от B до C.

РМ>Вроде бы все вполне понятно: находим центр окружности (просто пересечение срединных перпендикуляров AB и BC), находим радиус, углы начальный и конечный. Вопросы возникают в вырожденных случаях: если ABC лежат на одной прямой, то уже радиус бесконечный.
РМ>Есть ли какой-то способ получить такое, без условных операторов.

Нужно вместо радиуса использовать кривизну — величину, обратную радиусу. Тогда для прямой значение кривизны будет равно нулю.

Поскольку для angle-based blending нужна даже не кривизна, а угол, то есть смысл оперировать углом касательной дуги к её хорде.
Для дуги, вырожденной в хорду, ясное дело, угол равен 0.

Как находить точки дуги по хорде и углу касательной — тут надо подумать.
Перекуём баги на фичи!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.