Ваш аккаунт: пройдите авторизацию

Авторизация

Пароль есть, но Вы его забыли?
Впервые на сайте? Зарегистрируйтесь!

Вы попали в мир графики и дизайна


Изюминка нашего сайта в том, что все файлы хранятся на наших серверах, поэтому Вы получаете круглосуточный доступ ко всем файлам по прямым ссылкам без регистрации! С нашим сайтом Вы забудете про файлообменники!


Панорама


В уроке, я покажу Вам простой способ создания просмотровщика кольцевых 360-градусных панорам.
Посмотрите рисунок с панорамой
Панорама
Нам необходимо выяснить пиксельный размер полного круга (360 градусов) панорамы (светлая часть) и, при необходимости, добавить чуть "нахлеста" (затемненная часть). Горизонтальный размер "нахлеста", должен превышать ширину вашей флешки.
Подготовленную картинку импортируйте, затем превратите в клип, с регистрацией в левом-верхнем углу. Клип перетащите на сцену и дайте ему инстанс "pano".
Если есть желание, нарисуйте "радар". Стрелка-клип, с регистрацией в середине-внизу, должна быть направлена вверх.
Теперь потеоретизируем. Поскольку, нам известен размер прямоугольника полного цикла панорамы, в процессе ее перемещения, мы легко можем отследить момент пересечения обеих границ этого прямоугольника с левой границей сцены (0-координатой). И в этот момент, тут же передвинуть панораму в обратную сторону, на расстояние полного ее круга. "Нахлест" нам пригодится, чтобы панорама, пересекая границы документа, не потеряла целостности.
Воплотим это дело в коде. Код пишем в кадр.
CODE
<!--ec1-->var w:Number=Stage.width;//Ширина документа
var magicNumber:Number=1095;//Магическое число!:) Размер полного круга панорамы
var maxSpeed=80;//Максимальная скорость перемещения панорамы
var speed:Number;//Текущая скорость и направление, заодно.
var arrow:MovieClip=radar.arrow;//Ссылка на стрелку "угло-спидометра"
this.onEnterFrame=function(){//Ежекадрово:
speed=(1-_xmouse*2/w)*maxSpeed;//Выясним текущую скорость и направление движения
//В зависимости от положения мышки
pano._x+=speed;// передвинем панораму
/*Движение влево. Если координата "magicNumber" ушла за левый край документа,
то передвинем панораму вправо на расстояние "magicNumber"*/
speed<0&&pano._x<-magicNumber?pano._x+=magicNumber:null;
/*Движение вправо. Если левый край панорамы, показался в пределах документа,
то передвинем панораму влево на расстояние "magicNumber"*/
speed>0&&pano._x>0?pano._x-=magicNumber:null;
//Вертим стрелку, сконвертировав координаты в диапазоне (0...magicNumber) в градусы.
arrow._rotation=pano._x/magicNumber*360;
}<!--c2-->
<!--ec2-->
Исходник можно взять здесь:
Нажмите для скачивания panorama.rar!
Название: panorama.rar
Размер: 63.71 Kb


Внимание! Вы находитесь на сайте как гость! Зарегистрируйтесь или авторизируйтесь...

Нет времени на регистрацию? Можете войти на сайт через ВКонтакте! Это просто, быстро и удобно!

Похожие материалы

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.