![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
[+3 19.07.07]
|
цель: создать окошко в котором "сидит" картинка большего размера чем окно - соответственно с маской
при наведении мышкой на окно начинается прокручиваться картинка в сторону противоположную направлению мышки (с пропорциональной скоростью скрола, от центра окошка) (предполагаю позже сделать скейл картинки бегунком...) onClipEvent (load) {
_root.attachMovie("pict1", "pict1", this.getNextHighestDepth());
_root.pict1.setMask(this);
x_center = _x;
y_center = _y;
x_min = (_x-(_root.pict1._height-_root.window._height))/2;
y_min = (_y-(_root.pict1._width-_root.window._width))/2;
_root.pict1._x=x_center;
_root.pict1._y=y_center;
}
onClipEvent (mouseMove) {
this._alpha = 100;
if (_root.pict._x <= _x and _root.pict._x >= x_min) {
// trace (pict1._y);
_root.pict1._x=(x_center-((_xmouse*((x_center-_xmouse)/_height))));
}
if (_root.pict._y <= _y and _root.pict._y >= y_min) {
_root.pict1._y=(y_center-((_ymouse*((y_center-_ymouse)/_width))));
}
}
результат: запутался во вроде бы несложных вычислениях сейчас работает как бревно по сравнению с яхтой... помогите правильно всё расчитать ... здесь исходник: http://master-ais.narod.ru/TTT/scroll.zip или хотябы примеры на разборку подкиньте
__________________
Самый великий программер - БОГ! Последний раз редактировалось Aisaid; 16.07.2007 в 19:44. |
|
|||||
|
[+3 19.07.07]
|
так никто ничего не подскажет?
__________________
Самый великий программер - БОГ! |
|
|||||
|
[+1.4 18.06.07]
Регистрация: May 2007
Адрес: Moscow
Сообщений: 263
|
Не проверял, но должно работать - из похожего своего кода выдрал.
mask_mc.onRollOver=function(){
nInterval=setInterval(Delegate.create(this, function(){
window_mc._x = -this._xmouse/this._width*window_mc._width;
window_mc._y = -this._ymouse/this._height*window_mc._height;
}),150);
};
при роллауте убиваешь интервал. З.Ы.Спасибо за идейку - дешево и сердито.))) Последний раз редактировалось Torero; 17.07.2007 в 15:53. |
|
|||||
|
[+3 19.07.07]
|
Torero
спасибо, так проще вычислять, да но лучше ставить не ОнРоллОвер, а ОнИнтерФрейм - с условием проверки хитов я ещё хотел сделать динамику - инерцию и зависимость скорости скролинга от центра окошка... как это осуществить? какими алгоритмами?
__________________
Самый великий программер - БОГ! |
|
|||||
|
[+1.4 18.06.07]
Регистрация: May 2007
Адрес: Moscow
Сообщений: 263
|
1.onRollOver или onEnterFrame - зависит от задачи. используя onEnterFrame, надо будет сделать так чтобы код не жрал ресурсы когда мышь не наведена. Неплохой вариант - запускать oEF клипа при ролловере и вырубать при роллауте (сам не пробовал пока, но думаю, что проблем не возникнет).
2.Немного соврал в ответе window_mc._x=-this._xmouse/this._width*window_mc._width+this._xmouse; window_mc._y=-this._ymouse/this._height*window_mc._height+this._ymouse; 4.инерцию смоделировать можно, но сложно - сам не делал, а возиться лень. юзай tween. З.Ы. Дважды подумай нужно-ли это вообще - а то иногда столько поналепят всего, что просто смотреть тошно. ![]() Последний раз редактировалось Torero; 19.07.2007 в 14:13. |
|
|||||
|
[+3 19.07.07]
|
Torero
спасибо, всё правильно говоришь - излишества часто портят впечатление (да и когда флешка тормозит от "красивостей" очень раздражает) просто нужно было для галлереи, при просмотре каринки в маленьком окошке, чтобы она удобно и красиво скролилась - видел подобный эффект на каком-то сайте, выглядит красиво и ресурсрв не жрёт (да и много ли нужно вычислений чтобы передвинуть одну единстаенную картинку...) а Твины програмно можно использовать? я не знал... т.е. можно задавать програмно траекторию движения и ускорение ??? как? именно это мне и нужно! подскажите плиз
__________________
Самый великий программер - БОГ! |
|
|||||
|
[+3 19.07.07]
|
подскажите пожалуйста, как работать с классами
мне хотелось бы этот пример: http://www.sephiroth.it/tutorials/flashPHP/scrollRect/ как-то использовать или как этот пример использовать/преобразить в обычный скрипт? плиииз
__________________
Самый великий программер - БОГ! |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Гм, а чем класс не есть AS-скрипт?
|
|
|||||
|
[+3 19.07.07]
|
ладно, согласен, всё это скрипт
но как мне этот код использовать? только не нужно писать - "бери и пользуй" ... дайте пожалуйста конкретные советы меня смущают всякие непонятности в коде, если его использовать просто так (типа private function)
__________________
Самый великий программер - БОГ! |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
|
![]() |
![]() |
Часовой пояс GMT +4, время: 03:28. |
|
|
« Предыдущая тема | Следующая тема » |
|
|