![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
|
|||||
|
Регистрация: Jan 2007
Сообщений: 13
|
Привет бойцы! Читал топики про карты и навигацию, но у меня несколько другая задача. Пишу систему навигации над графическим объектом. Вообщем уже 3-е сутки пошил, как я бъюсь над простой задачей:
1. Есть объект (movieClip) 2. Есть набор уже написанных мною функций, которые работают тут (кнопки фтопку, они для дебагинга) - перемещение объекта по XY в зависимости положении мышки +коэф ускорения. - Key.isDown(пробел) стандартная таскалка драг\дроп (как в фотошопе) - мышкой выделяем область экрана, после чего центр выделения сместится в центр экрана (во фьючере выделенныя область должна увеличится в рамки экрана, опять же как в фотошопе, но для этого, мать его, мне и нужна zoom функция) 3. Хочу сделать следующее: делать zoom относительно координат мышки, т.е. вот так: ![]() Народ, я умом всё понимаю, ну Нихрена не могу сделать.... Если у кого то из Вас была такая же проблема, поделитесь опытом плиз Я не сторонник искать\рыть чужие скрипты, тем более мне интересно самому понять до конца в чем моя ошибка. Думаю общими усилиями у нас получиться найти нужное русло. (Русло не нашла целая кафедра информатики в моём ВУЗе )Я пытаюсь это делать так, хрень полная и не работает
// f - навигируему объект
var x_mouse = _root._xmouse;
var kx = 0;
o = new Object();
o.onMouseWheel = function(d) {
with(f){
if(_root._xmouse == x_mouse)
{
d *= 2;
dw = (_width / _height ) * d;
dh = d;
w_old = _width;
// kx = _root._xmouse / _width;
trace("_width СТАР=" + _width + " kx= "+ kx + "_x=" + _x);
_width += dw;
_height += dh;
_x = _root._xmouse - (_width * kx);
//_x = _x -
trace("_width НОВ=" + _width + " kx= "+ kx + "_x=" + _x);
}
else
{
x_mouse = _root._xmouse;
kx = _root._xmouse / _width;
trace("mouse=" + _root._xmouse + " kx= "+ kx);
}
}
}
Mouse.addListener(o);
Последний раз редактировалось pavel gorlov; 14.01.2007 в 08:19. |
![]() |
Часовой пояс GMT +4, время: 12:54. |
|
|
« Предыдущая тема | Следующая тема » |
|
|