|
|
|||||
Регистрация: Mar 2006
Сообщений: 44
|
определение угла
В as 1.0 был метод позволяющий узнать угол от одного объекта к другому, весь справочник по as 3.0 пролестал, но не нашел не чего подобного, не подскажите, есть ли такой метод, или все через синусы косинусы делать..?
|
|
|||||
Регистрация: Aug 2008
Адрес: Рязань
Сообщений: 723
|
__________________
low + |
|
|||||
Регистрация: Apr 2009
Сообщений: 117
|
Math.atan2(y, x) - вернет угол в радианах
|
|
|||||
Регистрация: Mar 2006
Сообщений: 44
|
Jewelz
спасибо за наводку GentleFLASH увы, работает только для четверти окружности |
|
|||||
...
модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
|
Цитата:
|
|
|||||
Регистрация: Mar 2006
Сообщений: 44
|
udaaff
вот не помню, но точно помню, что я не возился с тангенсами что бы узнать угол, там это как то очень просто выполнялось.. но, это было очень давно..) |
|
|||||
блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
|
Цитата:
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
Регистрация: Mar 2006
Сообщений: 44
|
Psycho Tiger
Не могли бы накидать пробник..? )) что то не выходит у меня ввертеть.. и как я понял по описанию, измерения идут относительно угла stage, как мне другую точку задать, относительно которой нужно угол узнать..? 0о |
|
|||||
блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
|
Да пожалуйста. Как базовый класс ставьте.
package { import flash.display.MovieClip; import flash.display.Shape; import flash.display.Sprite; import flash.events.MouseEvent; /** * ... * @author FluFme */ public class NewClass extends MovieClip { private var shape:Shape; public function NewClass() { super(); var spr:Sprite = new Sprite(); //для реакции мышки на всю зону покрытия spr.graphics.beginFill(0, 0); spr.graphics.drawRect(0, 0, 1000, 1000); spr.graphics.endFill(); addChild(spr); shape = new Shape(); shape.graphics.lineStyle(3, Math.random() * 0xFFFFFF); shape.graphics.moveTo(0, 50); shape.graphics.lineTo(0, 0); shape.graphics.lineTo( -20, 20); shape.graphics.moveTo(0, 0); shape.graphics.lineTo(20, 20); addChild(shape); shape.x = 200; shape.y = 200; stage.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMove); } private function onMouseMove(e:MouseEvent):void { e.updateAfterEvent(); //+90 потому что стрелку нарисовал смотрящей вверх, а надо было рисовать в другую сторону ) shape.rotation = Math.atan2(stage.mouseY - shape.y, stage.mouseX - shape.x) * 180 / Math.PI + 90; } } }
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
Регистрация: Mar 2006
Сообщений: 44
|
Psycho Tiger
спасибо большое..! ) очень помогли..) |
Часовой пояс GMT +4, время: 00:51. |
|
« Предыдущая тема | Следующая тема » |
|
|