![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|
|
|||||
|
Сделал 3 точки
vecA = new Vector3D(0, 0, 0); vecB = new Vector3D(100, 100, 200); vecC = new Vector3D(100, 300, 0); В обще как имея три точки пространства можно получть углы вращения плоскости, что-бы плоскость легла на эти три точки? углы то я знаю, слайдером накрутил 191, 21, 37 Как их получить??? Точка вращения vecA. Последний раз редактировалось Alex Lexcuk; 13.03.2009 в 14:23. |
|
|||||
|
Регистрация: Mar 2009
Сообщений: 1
|
Может это поможет: http://ru.wikipedia.org/wiki/Сферические_координаты
|
|
|||||
|
Спасибо материал отличный, как раз про позиционирование углами.
Кто исходничек смотрел, там ошибка, вот так лучше работает Не было -90 (определил методом тыка). Кстати если ротация состоит из одного угла например vecA = new Vector3D(0, 0, 0); vecB = new Vector3D(400, 0, 370);//если b vecC = new Vector3D(0, 350, 0); var calcRotationZ:Number =Vector3D.angleBetween(new Vector3D(pB.x, pB.y, 0), vecB) * 180 / Math.PI;
trace("calcRotationZ "+calcRotationZ);
facTriaSp.rotationY = -calcRotationZ;
Вместо чисел 400 и 370 можно ставить любые цифры и углы всегда сходяться, хм... прогресс Последний раз редактировалось Alex Lexcuk; 13.03.2009 в 17:39. |
![]() |
![]() |
Часовой пояс GMT +4, время: 18:12. |
|
|
« Предыдущая тема | Следующая тема » |
|
|