JQuery Тригонометрия? - PullRequest
       47

JQuery Тригонометрия?

3 голосов
/ 09 июня 2011

Мне нужно вычислить соседний угол прямоугольного треугольника, образованного прямоугольником, который определяется двумя наборами точек. Мой план состоит в том, чтобы использовать offset () для двух элементов, чтобы получить координаты абсолютного положения, а затем определить внутренний угол из нижнего левого угла этого подразумеваемого прямоугольника, чтобы я мог вращать тонкий прямоугольный элемент с помощью css rotate.

возможно?

Единственная часть, о которой я не знаю, как это сделать, - это синтаксис тригонометрии и необходимость для меня внешней библиотеки.

* Примечание: я понимаю, что вращение css будет вращаться вокруг центра элемента, поэтому мне придется сместить прямоугольник для компенсации.

Ответы [ 2 ]

9 голосов
/ 09 июня 2011

Ответ лежит не в jQuery, а в JavaScript.У JavaScript есть Math объект , который содержит sin, cos, tan и другие тригонометрии и математическиесвязанные вещи.

Например, для вычисления синуса в 45 градусов:

var degrees=45;
var radians=degrees*Math.PI/180;
var sine=Math.sin(radians);
alert("sin("+degrees+" deg) is roughly equal to "+sine);
0 голосов
/ 09 июня 2011

Если вы планируете выполнять какую-то реальную графическую работу, используя такие вещи, как вращение, создание кругов, создание линий, рисование диаграмм и т. Д., Попробуйте библиотеку Raphael Graphics для jquery / javascript.

http://raphaeljs.com/reference.html

Он предоставляет множество стандартных функций для выполнения заданий, которые помогут вам выполнять свою работу быстрее и эффективнее, а не концентрироваться на таких вещах, как точка поворота линии и т. Д.

например, естьфункция поворота в Рафаэле, которая позволит вам вращать любой объект на определенный угол по часовой стрелке.Существует функция для перевода, масштабирования и т. Д.

Также поддерживается графика SVG.

...