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

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

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

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
Точки должны менять свою позицию относительно фигуры, только при изменении формы фигуры. Т.е. если ты просто искажаешь исходную фигуру, то достаточно, просто применить те же трансформации к уже сгенерированным точкам.
__________________
משיח לא בא
משיח גם לא מטלפן

Старый 20.12.2012, 21:13
Hauts вне форума Посмотреть профиль Отправить личное сообщение для Hauts Посетить домашнюю страницу Hauts Найти все сообщения от Hauts
  № 22  
Ответить с цитированием
Hauts
 
Аватар для Hauts

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,112
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
Нет, искажение фигуры в демке — только для тестов. В реальной задаче фигуры могут быть разными.
__________________
hauts.ru

Старый 20.12.2012, 21:15
alatar вне форума Посмотреть профиль Отправить личное сообщение для alatar Найти все сообщения от alatar
  № 23  
Ответить с цитированием
alatar
 
Аватар для alatar

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
Также стоит попробовать заполнять фигуру не с центра, а с одного из краев, что бы точки располагались менее хаотично в разных итерациях. Или заполнять столбцами, а потом уже раздвигать их.

Добавлено через 10 минут
По сути твоя задача это морфинг одного объекта в другой. Все реализации "красивого" морфинга, что я видел делались вручную. Т.е. берется одна фигура из определенного количества точек и вручную передвигая точки из нее получается другая фигура. В итоге, заранее известно какая точка из одной фигуры будет соответствовать точке на другой.
__________________
משיח לא בא
משיח גם לא מטלפן


Последний раз редактировалось alatar; 20.12.2012 в 21:26.
Старый 20.12.2012, 21:30
Hauts вне форума Посмотреть профиль Отправить личное сообщение для Hauts Посетить домашнюю страницу Hauts Найти все сообщения от Hauts
  № 24  
Ответить с цитированием
Hauts
 
Аватар для Hauts

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,112
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
Да, верно. Можно сказать и так. Но я не верю, что нет хотя бы приемлемых решений для моей задачи без "ручной" анимации, вот в чем дело.

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

http://napephys.com/samples.html#swf...uctibleTerrain

Вот типа такого.
__________________
hauts.ru

Старый 20.12.2012, 21:41
alatar вне форума Посмотреть профиль Отправить личное сообщение для alatar Найти все сообщения от alatar
  № 25  
Ответить с цитированием
alatar
 
Аватар для alatar

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
Ну, не знаю. Попробуй совместить морфинг контура (что несколько проще) и распределение точек. Т.е. в начальную фигуру набрасываем точек, потом начинаем понемногу трансформировать один контур в другой и на каждой итерации запускать расталкивание точек (не вбрасывая их повторно).
__________________
משיח לא בא
משיח גם לא מטלפן

Старый 22.12.2012, 01:09
semenyakinVS вне форума Посмотреть профиль Отправить личное сообщение для semenyakinVS Найти все сообщения от semenyakinVS
  № 26  
Ответить с цитированием
semenyakinVS

Регистрация: Mar 2010
Сообщений: 137
А каким образом задан контур? Это функция или набор точек?

Старый 22.12.2012, 06:11
vizgl вне форума Посмотреть профиль Отправить личное сообщение для vizgl Найти все сообщения от vizgl
  № 27  
Ответить с цитированием
vizgl
 
Аватар для vizgl

Регистрация: Jun 2012
Сообщений: 70
Может наложить сетку на фигуру? Выбираем только те ячейки, которые частично или полностью вмещают фигуру. Дальше, при генерации точек, выбираем случайную клетку, и в неё в случайное место вставляем точку.
Для получения равномерного распределения точек, можно сделать весовые коэффициенты для клеток, например коэффициент зависит от площади фигуры, которая помещена в клетку.

При морфинге в другую фигуру, делаем тоже самое и дальше для каждой старой точки, ищем ближайшую новую, эта пара точек и будет отрезком для анимации движения.
Ближайшие точки, можно находить либо полным перебором, либо используя всякие spatial grid.

Если важна визуальная часть морфинга, то можно учитывать вектор направления движения на предыдущих шагах, при выборе точки "близнеца". В таком случае, подходящими будут только те точки, которые попадают в конус, который определяет вектор движения и какой-нибудь небольшой угол, например в 90 градусов.

Если фигуры вообще разные, то можно и не парится на счет поиска "близнеца", а просто взять случайную точку и двигать старую точку в новую.


Дополнение:
А как такой вариант? Просканить битмапу и создать массив координат заполненных пикселей, при генерации распределения, выбираем случайную ячейку в массиве и вставляем точку в полученные координаты. По сути, это частный случай варианта про наложение сетки.
__________________
Блог: http://devizgl.blogspot.com/


Последний раз редактировалось vizgl; 22.12.2012 в 06:27.
Старый 22.12.2012, 15:39
Hauts вне форума Посмотреть профиль Отправить личное сообщение для Hauts Посетить домашнюю страницу Hauts Найти все сообщения от Hauts
  № 28  
Ответить с цитированием
Hauts
 
Аватар для Hauts

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,112
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
semenyakinVS, если ко мне вопрос, то у меня нет контуров. Есть просто картинки. На данный момент — просто пятна черные.

vizgl, спасибо, дельный совет, буду пробовать.
__________________
hauts.ru

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

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

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


 


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


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