Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 23.07.2008, 14:26
Venya2007 вне форума Посмотреть профиль Отправить личное сообщение для Venya2007 Найти все сообщения от Venya2007
  № 1  
Ответить с цитированием
Venya2007
[+4 16.07.08]

Регистрация: Jul 2008
Адрес: Gamburg
Сообщений: 108
По умолчанию Поворот вектора направления!

Помогите пожалуйста! уже запарился!Работаю во флексе. Хочу повернуть вектор направления на заданный угол! Делаю так:
Код:
private function onTimerEvt(evt:TimerEvent):void{
		ang+=1
		fon.rotation=ang;
		
		dx=Math.sin(ang);
		dy=Math.cos(ang);
		
		title.text=String(fon.rotation)+' '+dx+'  '+dy
		
		}
У меня постояно dx и dy равны нулю !Во Flash IDE все прекрасно работает !

Старый 23.07.2008, 15:29
mre вне форума Посмотреть профиль Отправить личное сообщение для mre Посетить домашнюю страницу mre Найти все сообщения от mre
  № 2  
Ответить с цитированием
mre
 
Аватар для mre

Регистрация: Jul 2007
Адрес: Москва
Сообщений: 996
Код:
title.text=String(fon.rotation)+' '+dx.toString()+'  '+dy.toString()

Старый 23.07.2008, 16:17
ramshteks вне форума Посмотреть профиль Отправить личное сообщение для ramshteks Найти все сообщения от ramshteks
  № 3  
Ответить с цитированием
ramshteks
 
Аватар для ramshteks

Регистрация: Jul 2007
Сообщений: 805
Отправить сообщение для ramshteks с помощью ICQ Отправить сообщение для ramshteks с помощью Skype™
и наверно стоило бы при вычислении синуса и косинуса пеоеводить в радианы ang

Старый 23.07.2008, 18:14
Anry_coolboy вне форума Посмотреть профиль Отправить личное сообщение для Anry_coolboy Найти все сообщения от Anry_coolboy
  № 4  
Ответить с цитированием
Anry_coolboy
 
Аватар для Anry_coolboy

Регистрация: Dec 2006
Адрес: Ukraine Lugansk
Сообщений: 188
Отправить сообщение для Anry_coolboy с помощью ICQ Отправить сообщение для Anry_coolboy с помощью Skype™
Код:
Math.sin(ang*Math.PI/180)
и X работает с косинусом, а Y c синусом

Старый 23.07.2008, 18:49
ramshteks вне форума Посмотреть профиль Отправить личное сообщение для ramshteks Найти все сообщения от ramshteks
  № 5  
Ответить с цитированием
ramshteks
 
Аватар для ramshteks

Регистрация: Jul 2007
Сообщений: 805
Отправить сообщение для ramshteks с помощью ICQ Отправить сообщение для ramshteks с помощью Skype™
а вообще с точки зрения оптимизации стоит обьявить некую константу типа
Код:
private const IN_RAD=0.017453292519;//это пи поделенное на 180
Math.sin(ang*IN_RAD)

Старый 23.07.2008, 19:21
Venya2007 вне форума Посмотреть профиль Отправить личное сообщение для Venya2007 Найти все сообщения от Venya2007
  № 6  
Ответить с цитированием
Venya2007
[+4 16.07.08]

Регистрация: Jul 2008
Адрес: Gamburg
Сообщений: 108
Получилось! Всем спасибо!
Anry_coolboy все таки x c синусом, а y с косинусом !

Старый 23.07.2008, 20:30
ramshteks вне форума Посмотреть профиль Отправить личное сообщение для ramshteks Найти все сообщения от ramshteks
  № 7  
Ответить с цитированием
ramshteks
 
Аватар для ramshteks

Регистрация: Jul 2007
Сообщений: 805
Отправить сообщение для ramshteks с помощью ICQ Отправить сообщение для ramshteks с помощью Skype™
Цитата:
Сообщение от Venya2007 Посмотреть сообщение
Получилось! Всем спасибо!
Anry_coolboy все таки x c синусом, а y с косинусом !
неее... Anry_coolboy прав, а ты нет, но все зависит от твоих целей
может в твоем случае именно такой вариант и верен

Старый 23.07.2008, 23:40
Anry_coolboy вне форума Посмотреть профиль Отправить личное сообщение для Anry_coolboy Найти все сообщения от Anry_coolboy
  № 8  
Ответить с цитированием
Anry_coolboy
 
Аватар для Anry_coolboy

Регистрация: Dec 2006
Адрес: Ukraine Lugansk
Сообщений: 188
Отправить сообщение для Anry_coolboy с помощью ICQ Отправить сообщение для Anry_coolboy с помощью Skype™
да, просто в его случае он будет крутится против часовой. Та и вобще это неверно, всегда косинус был функций X, а синус функцией Y, если не придерживаться этого правила у тебя могу полезть разные баги, углы будут неправильно определятся или еще что то

Старый 24.07.2008, 04:47
ramshteks вне форума Посмотреть профиль Отправить личное сообщение для ramshteks Найти все сообщения от ramshteks
  № 9  
Ответить с цитированием
ramshteks
 
Аватар для ramshteks

Регистрация: Jul 2007
Сообщений: 805
Отправить сообщение для ramshteks с помощью ICQ Отправить сообщение для ramshteks с помощью Skype™
Anry_coolboy, ну если так, по совести... косинус и синус не являются функциями икса и игрика... рросто для вычисления прироста по оси x и y приизвестном угле используюутся они, я думаю если извратится то можна их заменить на тангенс или даже катангенс, но это не делает тангенс функцией икса... это просто геометрические функции...

Создать новую тему Ответ Часовой пояс GMT +4, время: 21:17.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 21:17.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.