Я использую Java и slick2D.
Ссылка на класс: Line находится по адресу: org.newdawn.slick.geom.Line
Мой вопрос в том, как я могу узнать, сколько градусов составляет угол между двумя линиями.
Примере:
Line ln1 = new Line(0,1,0,3);
Line ln2 = new Line(1,0,3,0);
Углы, которые составляют ln1 и ln2, составляют: 90,90 градусов - две прямые перпендикулярны.
Надеюсь, вы могли бы мне помочь: D
0
user2377766
13 Май 2013 в 17:17
1 ответ
Лучший ответ
Этот код вычисляет угол между двумя линиями в радианах:
double angle1 = Math.atan2(ln1.getY1() - ln1.getY2(), ln1.getX1() - ln1.getX2());
double angle2 = Math.atan2(ln2.getY1() - ln2.getY2(), ln2.getX1() - ln2.getX2());
double desiredAngle = angle1 - angle2
0
Vincenzo Maggio
13 Май 2013 в 17:27
Похожие вопросы
Новые вопросы
java
Java — это высокоуровневый объектно-ориентированный язык программирования. Используйте этот тег, если у вас возникли проблемы с использованием или пониманием самого языка. Этот тег часто используется вместе с другими тегами для библиотек и/или фреймворков, используемых разработчиками Java.
Line(x1, y1, x2, y2)
и представляет отрезок прямой между точками(x1,y1)
и(x2,y2)
, в вашем примере есть два отрезка, которые не пересекаются. Продолжения этих линий пересекаются в точке(0,0)
, и угол между этими двумя удлиненными линиями действительно будет 90 градусов. Есть вопрос об определении угла между произвольными линиями? или определение, пересекаются ли они? Или что-то другое?