Вычислить, где гипотенус пересекается с окружностью
Поэтому я хочу сделать сценарий, который может рисовать различные фильтры темного поля микроскопа. в них у вас есть 3 опорных стержня с углом 120°, которые удерживают круг внутри круга.
Я придумал что-то, но неправильно вычислил значение синего треугольника, в то время как я должен был вычислить значение фиолетового треугольника.
Я должен был пробудить свои 9-летние знания по тригонометрии, и это сработало, однако я не могу придумать способ вычислить значения фиолетового треугольника.
Вот изображение:
сейчас, когда я вычисляю синий треугольник, я получаю такой результат:
Кто-нибудь знает, что мне нужно для вычисления фиолетового треугольника?
Благодарю.
2 ответа
Три точки пересечения будут иметь координаты (если центр круга равен 0,0), где i = 0,1,2
:
for i = 0..2 do
Fi = Pi/2 + i * 2 * Pi / 3 //probably -Pi/2 depending on your graphics coordinate system
X = R * Cos(Fi)
Y = R * Sin(Fi)
Тривиально: ac = r;
Для de мы смотрим половину стороны равностороннего треугольника: de = sin (a) = sin (30 градусов) = r/2
Когда дело доходит до рекламы, мы можем использовать Пифагор для вычислений; ad = cos (a) = cos (30 градусов) = r * sqrt (3) / 2: