Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 26.08.2010, 22:46
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 1  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
По умолчанию Клип не двигается.

Здравствуйте. Имеется клип-прямоугольник с подложкой - просто прямоугольник, залитый цветом. Внутри еще есть клип-контейнер, в него загружается картинка:

Код AS1/AS2:
// код в классе общего клипа:
var mcl:MovieClipLoader = new MovieClipLoader();
mcl.loadClip("img.jpg", container);
Но вот нужно, чтобы картинка, а вернее container, был именно такого же размера, как и внешний клип. Как делаю: запоминаю перед загрузкой размеры клипа, загружаю и делаю клипу-контейнеру такие же размеры. Все правильно, ошибки нет. Но стоит только повернуть внешний клип на сколько-то градусов - все, запоминаемые размеры уже неправильные, соответственно назначить истинные размеры контейнеру уже нельзя. Вот и как быть?
Грубо говоря, мне нужно, чтобы клип-контейнер был точно такого же размера, как и подложка в общем клипе.
__________________
тут я

Старый 26.08.2010, 23:34
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 2  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Может быть заранее программно повесить маску? Хотя я видимо не до конца уяснил себе весь ваш сэндвич и задачу.
__________________
Идите первым!


Последний раз редактировалось mooncar; 26.08.2010 в 23:38.
Старый 26.08.2010, 23:40
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 3  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Хорошо, сейчас распишем, что-то я и правда замудрил в топикстарте.
Изначально мы имеем клип mc с графикой - обычный квадрат. К этому клипу прилинкован класс. В классе создается пустой контейнер container и помещается в наш клип (в this, то есть). Далее мы запоминаем текущие размеры клипа, подгружаем картинку в container, делаем container'у наши запомненные размеры. На выходе мы имеем загруженную картинку нужного размера. То есть, ничего сверхъестественного.
Полтергейст обнаруживается далее: стоит только наш общий клип mc повернуть на сколько-то градусов и сделать все то же самое, что и до этого - на выходе мы имеем размер картинки совершенно другой, как визуально, так и по трейсу размеров. Все из-за того, что повернутый клип, на удивление, имеет другие размеры, относительно его начальной позиции при _rotation = 0. Вот такая вот билеберда. И как с этим бороться - фиг знает.
__________________
тут я


Последний раз редактировалось КорДум; 26.08.2010 в 23:57.
Старый 27.08.2010, 00:05
FriOne вне форума Посмотреть профиль Отправить личное сообщение для FriOne Найти все сообщения от FriOne
  № 4  
Ответить с цитированием
FriOne
 
Аватар для FriOne

Регистрация: Jul 2010
Адрес: Бердск, НСК
Сообщений: 171
Записей в блоге: 1
Плохо понятно что у вас там происходит.
По идее если у вас есть два мувиклипа, то при повороте их размеры не менются..
Может покажите побольше кода, тогда будет все ясно.

Старый 27.08.2010, 00:10
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 5  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Да какой код... создайте квадрат 100*100, поверните на сколько-то градусов и протрейсите, допустим, ширину. У меня она выдала 138 при повороте на 60 градусов.
__________________
тут я

Старый 27.08.2010, 00:18
FriOne вне форума Посмотреть профиль Отправить личное сообщение для FriOne Найти все сообщения от FriOne
  № 6  
Ответить с цитированием
FriOne
 
Аватар для FriOne

Регистрация: Jul 2010
Адрес: Бердск, НСК
Сообщений: 171
Записей в блоге: 1
Ну это естесственно, ведь width считает не ширину квадрата, а ширину клипа.
(например диагональ квадрата 100*100 будет больше, чем 100)
Если у вас какие-то анамалии, то надо кого-то попытней спросить)

Старый 27.08.2010, 00:23
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 7  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Хорошо, если так, то как узнать настоящую ширину клипа в обычном состоянии? Вариант с вращением на минус поворот, запоминанием координат и вращением обратно не рассматривается - из-за него не работает анимация, созданная руками у внешнего клипа.

Добавлено через 4 минуты
Кстати, проверил - при повернутом клипе получение его _rotation показывает фигу, то есть 0.
__________________
тут я

Старый 27.08.2010, 00:32
FriOne вне форума Посмотреть профиль Отправить личное сообщение для FriOne Найти все сообщения от FriOne
  № 8  
Ответить с цитированием
FriOne
 
Аватар для FriOne

Регистрация: Jul 2010
Адрес: Бердск, НСК
Сообщений: 171
Записей в блоге: 1
Вашей аномалии не помогу, а про ширину - может тригонометрия как-нибудь поможет..

Старый 27.08.2010, 00:36
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 9  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
...как-нибудь...
угу, я тоже думал о тригонометрии, набрасывал чертежи. Но своим умом допереть до закономерности не смог.
__________________
тут я

Старый 27.08.2010, 00:55
FriOne вне форума Посмотреть профиль Отправить личное сообщение для FriOne Найти все сообщения от FriOne
  № 10  
Ответить с цитированием
FriOne
 
Аватар для FriOne

Регистрация: Jul 2010
Адрес: Бердск, НСК
Сообщений: 171
Записей в блоге: 1
У вас клип стоит в координатах (0,0) ? Это я ктому, что вроде вращение происходит через эту точку..
Вам именно надо значение ширины или нарисовать такой же квадрат как и картинка?
P.S. Если координаты поворота в (0,0), то если вписать квадрат в круг, то его вершины будут находиться на окружности..
P.S.S. Возможно поможет.. так информация для размышления..

Создать новую тему Ответ Часовой пояс GMT +4, время: 04:21.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 04:21.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.