![]() |
|
||||||||||
|
|||||
|
Регистрация: May 2004
Сообщений: 7
|
помогите пожалуйста решить такую проблему:
мне нужно сделать так, чтобы мувик (точку), можно было таскать не в прямоугольной области, а по определенной линии (например, по окружности). я вот тут пытался что-то сам написать, но как то странно работает. представляю на ваш суд: _root.point_mc.onPress=function(){ this.startDrag(true, x0-radius,this._y,x0+radius,this._y); this.onMouseMove=function(){ this._y=Math.sqrt(radius*radius-(this._x-x0)*(this._x-x0))+y0; this.stopDrag(); this.startDrag(true, x0-radius,this._y,x0+radius,this._y); } /* (x0,y0) -координаты центра окружности, по которой будем таскать мувик point_mc radius - радиус этой окружности */ _root.point_mc.onRelease=fuction(){ this.stopDrag(); } это конечно не по окружности будет движение, а по полуокружности, но даже не это важно. не работает обработчик onRelease. то есть мувик не отпускается, а продолжает таскаться за мышкой. объясните пожалуйста, в чем дело. а лучше предложите более эффективный код. |
|
|||||
|
вариант
|
|
|||||
|
Вариант другой - создать изображение области перетаскивания, просто нарисовав его и превратив в клип. Потом постоянно сверять на совпадение мыши и этой области через hitTest() (в случае с мышью совпадение будет очень даже точным). Это если надо сделать в определенных нестандарных границах. В противном случае - вариант silin-а как раз.
__________________
За двумя зайцами погонишься - от егеря по морде получишь |
|
|||||
|
Регистрация: May 2004
Сообщений: 7
|
спасибо за помощь, вечерком попробую сделать, как вы говорите.
|
![]() |
Часовой пояс GMT +4, время: 00:13. |
|
|
« Предыдущая тема | Следующая тема » |
|
|