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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 15.01.2008, 21:55
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 1  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
По умолчанию Найти высоту и ширину деформированого прямоугольника

Вот, чет уже второй день никак не срастается, а казалось так просто... %)
Вобщем, задачка такая:
На входе получаем деформированый как угодно клип (для простоты - прямоугольник). Нужно узнать длины сторон до деформации, желательно не изменяя _rotation.
Для простоты можно оформить как в задачнике:
Дано клип размерами 459,7х459,7, сжат по высоте на 50% и повернут на 45 градусов.
(Изначально он соответственно был 400х500, но вот как из имеющихся данных это получить - я не знаю =)

Название: rect.gif
Просмотров: 509

Размер: 1.2 Кб
кртинку приложил, если не понятно описал.
__________________
Hell is the possibility of sanity


Последний раз редактировалось wvxvw; 15.01.2008 в 22:04.
Старый 15.01.2008, 22:41
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 2  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
Высота и ширина это проекция фигуры на оси. Поэтому реальные размеры, без обратных преобразований, можно определить только зная математическое описание фигуры.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 15.01.2008, 23:09
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 3  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
А какие еще параметры нужно знать? руководствуясь только приведенными данными флеш всегда изобразит одну и ту же фигуру - а я нет %)))

Т.е. в итоге, то, что я сделал - просто до пересчета поворачиваю прямоугольник в 0 градусов, тогда высота и ширина помноженные на скейл и будут равны соответствующим сторонам. Но это как-то криво...
__________________
Hell is the possibility of sanity


Последний раз редактировалось wvxvw; 15.01.2008 в 23:25.
Старый 15.01.2008, 23:21
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 4  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
Цитата:
Сообщение от wvxvw
руководствуясь только приведенными данными
С чего это? Флеш также знает координаты вершин формы. А ты нет
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 16.01.2008, 00:08
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 5  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Мож он и знает, но не признается, партизан, млин =) Как бы их у него спросить? %)
А вообще, похоже, что не, не знает, ему и этого хватает как-то...

ЗЫ. И вообще, если сделав пару нехитрых операций с клипом я тоже смогу получить нужные данные - значит их можно и вычислить как-то, вот ток чего-то у меня никак не выходит...
__________________
Hell is the possibility of sanity


Последний раз редактировалось wvxvw; 16.01.2008 в 00:14.
Старый 16.01.2008, 03:33
olexandr вне форума Посмотреть профиль Отправить личное сообщение для olexandr Посетить домашнюю страницу olexandr Найти все сообщения от olexandr
  № 6  
Ответить с цитированием
olexandr
 
Аватар для olexandr

Регистрация: Aug 2007
Адрес: Ukraine, Kyiv
Сообщений: 643
Отправить сообщение для olexandr с помощью ICQ Отправить сообщение для olexandr с помощью MSN Отправить сообщение для olexandr с помощью Skype™
озадачил ты конечно
посидел полчасика - вроде придумал (если конечно мы знаем _rotation)
сейчас спать хочется, если до утра ответа не будет, то на работе набросаю!

а, вообще, +10 за задачу!

Старый 16.01.2008, 09:18
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 7  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
Цитата:
Сообщение от wvxvw
И вообще, если сделав пару нехитрых операций с клипом я тоже смогу получить нужные данные - значит их можно и вычислить как-то, вот ток чего-то у меня никак не выходит...
Флеш хранит первоначальные данные объекта и применяет к ним матричные преобразования, а не к текущим данным.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

Регистрация: Jul 2006
Адрес: Земля>Россия>Вологда
Сообщений: 3,056
Отправить сообщение для CorC с помощью ICQ Отправить сообщение для CorC с помощью MSN Отправить сообщение для CorC с помощью Skype™
Из таких входных данных решить эту задачу математически нельзя, под эти условия подходит любой прямоугольник, вписанный в этот квадрат. Поворачивать придется.
__________________
"We Are The Champions My Friends!" Queen

Старый 16.01.2008, 10:20
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 9  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
Задача часто не имеет определенного ответа.
Пример. Берем прямоугольник с теми же размерами, 400 на 500. Поворачиваем его на 45 градусов и получаем размеры 636.4 на 636.4, а квадрат со сторонами 450 на 450, при том же угле, дает те же самые 636.4 на 636.4.
То есть, при одинаком угле поворота и конечных размерах, мы имеем разные базовые размеры.
__________________
(и)Нильс.ru | Плагины для FlashDevelop


Последний раз редактировалось iNils; 16.01.2008 в 11:08.
Старый 16.01.2008, 11:05
olexandr вне форума Посмотреть профиль Отправить личное сообщение для olexandr Посетить домашнюю страницу olexandr Найти все сообщения от olexandr
  № 10  
Ответить с цитированием
olexandr
 
Аватар для olexandr

Регистрация: Aug 2007
Адрес: Ukraine, Kyiv
Сообщений: 643
Отправить сообщение для olexandr с помощью ICQ Отправить сообщение для olexandr с помощью MSN Отправить сообщение для olexandr с помощью Skype™
Да, iNils, в посте №9 прав! А я вчера недосмотрел, когда писал свое утверждение. Я тоже думал об этом и пробовал поворачивать прямоугольник, но не учел при этом, что периметр должен оставаться константой.
А для того, чтобы решить задачу, я так понимаю нужна еще хотя бы пропорция между сторонами.

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

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

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


 


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


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