Показать сообщение отдельно
Старый 13.03.2009, 17:36
Alex Lexcuk вне форума Посмотреть профиль Отправить личное сообщение для Alex Lexcuk Посетить домашнюю страницу Alex Lexcuk Найти все сообщения от Alex Lexcuk
  № 3  
Ответить с цитированием
Alex Lexcuk

блогер
Регистрация: Mar 2008
Адрес: Донецк_city
Сообщений: 1,094
Записей в блоге: 5
Спасибо материал отличный, как раз про позиционирование углами.
Кто исходничек смотрел, там ошибка, вот так лучше работает
Код:
			//нахождение угла сab
			var cab:Number;
			cab = Math.asin(aa/ab)* (180/Math.PI)-90;
Не было -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;
естественно rotationX = 0 и rotationZ = 0;

Вместо чисел 400 и 370 можно ставить любые цифры и углы всегда сходяться, хм... прогресс


Последний раз редактировалось Alex Lexcuk; 13.03.2009 в 17:39.