![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Sep 2012
Сообщений: 204
|
Привет. Подскажите пожалуйста, как правильно прописать обекты к каждому углу странице в браузере?
вот есть основной код function init() { stage.align=StageAlign.TOP_LEFT; stage.scaleMode=StageScaleMode.NO_SCALE; stage.addEventListener(Event.RESIZE, updateSize); stage.dispatchEvent(new Event(Event.RESIZE)); backgroundRectangle.x = 0; backgroundRectangle.y = 0; } y = ???? или надо через Align? |
|
|||||
|
Lorem ipsum
|
__________________
Поймай яблоко 2! |
|
|||||
|
Регистрация: Sep 2012
Сообщений: 204
|
правильно ли я понял, что если в HTML поправляем на % с пикселей, то и параметр stageWidth будет восприниматься в %?
то есть если есть объект obj_1 то он окажется в правом нижнем углу? (если точка координат у муви клипа будет также справа внизу) ? |
|
|||||
|
Lorem ipsum
|
...то у него нет свойства stageWidth. Есть же доки — прекрасное, надо сказать, пособие!
Вот пример того, как поставить в нижний правый угол объект, у которого точка привязки находится строго в левом верхнем углу (в противном случае нужно использовать несколько более сложное определение габаритов)
__________________
Поймай яблоко 2! |
|
|||||
|
Регистрация: Sep 2012
Сообщений: 204
|
ребята, спасибо за помощь , вы уже очень помогли. У меня остался 1 шаг. Вы уже наверняка поняли что 0 в флэше, у меня вообще другой профиль, но так уж сложилось что надо завершить. Обязательно возьмусь за изучение в перспективе. Итак:
function init2() //как я понимаю надо создавать отдеьные функции для каждого обекта в привязке по углам, всего 4. Тут я её переименовал { stage.scaleMode=StageScaleMode.EXACT_FIT; stage.addEventListener(Event.RESIZE, updateSize2); // задал еще имя stage.dispatchEvent(new Event(Event.RESIZE)); } init2(); // как я понимаю это переменная- также нумерую function updateSize2(e:Event) { obj_1.x = stage.stageWidth - obj_1.width; // прижали к правому краю obj_1.y = stage.stageHeight/6 - obj_1.height; // прижали к верхнему краю..кстати непонятно почему именно 6- определил методом тыка } Кстати эти scalemode EXACT FIT единственный который подходит в данном случае, но и он растягивает под экран, то есть у монитора 4:3 будет пропорциональная, а у 16:9 сблюснутая картинка. Как то можно поставить чтобы объект изменял размер относительно своеих пропорций? Что то мне подсказывает что это делается через задания соотношения сторон объекта, да? |
|
|||||
|
Lorem ipsum
|
function exactFitProportional(obj:DisplayObject):void { // масштаб по ширине, чтобы занять все пространство от левого до правого краев var scaleW:Number = stage.stageWidth / obj.width; // масштаб по высоте, чтобы занять все пространство от верхнего до нижнего краев var scaleH:Number = stage.stageHeight / obj.height; // выбираем наибольший из них var scaleMax:Number = Math.max(scaleW, scaleH); // пропорционально масштабируем объект obj.scaleX = scaleMax; obj.scaleY = scaleMax; // если нужно, выравниваем объект по центру obj.x = (stage.stageWidth - obj.width) / 2; obj.y = (stage.stageHeight - obj.height) / 2; } Добавлено через 2 минуты Забыл уточнить
__________________
Поймай яблоко 2! |
|
|||||
|
Регистрация: Sep 2012
Сообщений: 204
|
Если код
надо было списать в тело скрипта выше, то ничего не выходит. Что атк что так, объект стал большим, (на четверть экрана) и не увеличиается, и не привязан ни какому краю. |
|
|||||
|
Lorem ipsum
|
Это код для растягивания объектов на весь экран без пустых пространств и с соблюдением пропорций.
__________________
Поймай яблоко 2! |
|
|||||
|
Регистрация: Sep 2012
Сообщений: 204
|
спасибо огромное за помощь!!
может попробую его приспособить! |
![]() |
![]() |
Часовой пояс GMT +4, время: 03:26. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|