Как бы я получил 4 точки, повернутые в определенной степени вокруг указателя, чтобы сформировать прямоугольник? Я могу вращать точку вокруг точки, но я не могу ее компенсировать, чтобы создать прямоугольник, который не искажен.Поворот прямоугольника вокруг точки
5
A
ответ
23
Если вы можете вращать точку вокруг точки, то ее нужно легко поворачивать, вы просто вращаете 4 точки.
Вот функция JS для вращения вокруг некоторой точки происхождения:
function rotate_point(pointX, pointY, originX, originY, angle) {
angle = angle * Math.PI/180.0;
return {
x: Math.cos(angle) * (pointX-originX) - Math.sin(angle) * (pointY-originY) + originX,
y: Math.sin(angle) * (pointX-originX) + Math.cos(angle) * (pointY-originY) + originY
};
}
И тогда вы можете сделать это в каждой точке. Вот пример: http://jsfiddle.net/dahousecat/4TtvU/
Изменить угол и ударил бежать, чтобы увидеть результат ...
Смежные вопросы
- 1. Поворот прямоугольника вокруг определенной точки в холсте
- 2. Kineticjs: Поворот группы вокруг точки
- 3. Поворот прямоугольника вокруг определенной точки с использованием PyPlot в Julia
- 4. Вычислить поворот, выполняемый вокруг точки
- 5. Поворот вокруг точки на мышь
- 6. Поворот прямоугольника вокруг его верхний левый угол
- 7. Поворот прямоугольника
- 8. Поворот содержимого вокруг центральной точки в html5
- 9. Поворот объекта вокруг точки произвольно, шарнирного
- 10. Перетащите поворот узла вокруг фиксированной точки
- 11. Поворот вокруг определенной точки в Java3D
- 12. OpenGL: Поворот вокруг точки в 3D пространстве
- 13. C++: Поворот вектора вокруг определенной точки
- 14. Java Поворот объекта вокруг центральной точки?
- 15. Поворот карты osmdroid вокруг произвольной точки
- 16. Поворот треугольников вокруг центральной точки без перекрытия
- 17. OpenGL + Поворот весны и массы вокруг точки
- 18. Поворот многоугольника вокруг точки Javascript холста
- 19. JQuery - Сделать поворот изображения поворот вокруг центральной точки
- 20. Рисовать поворот прямоугольника
- 21. Поворот точки вокруг другой точки, используя угол, возвращенное atan2()
- 22. Поворот габаритного прямоугольника в Matlab
- 23. cgcontext поворот прямоугольника
- 24. Поворот NSView вокруг центра
- 25. Поворот UIImageView вокруг anchorPoint
- 26. Вращение прямоугольника вокруг его центра?
- 27. Вращение прямоугольника из любой точки
- 28. Поворот круга вокруг другого круга
- 29. Свечение вокруг сторон прямоугольника
- 30. Подгонка прямоугольника вокруг точек
вы пытались сделать это до сих пор? какой-то код? спасибо – Trufa 2010-12-16 22:26:40
Перевести свои четыре точки, чтобы вы обрабатывали указатель как центр, делали поворот с помощью стандартного метода матрицы вращения, а затем переводили точки назад. [Объяснение здесь] (http://www.euclideanspace.com/maths/geometry/affine/aroundPoint/index.htm) – Michal 2010-12-16 23:45:03