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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 05.12.2009, 01:12
ShadeSlider вне форума Посмотреть профиль Отправить личное сообщение для ShadeSlider Найти все сообщения от ShadeSlider
  № 1  
Ответить с цитированием
ShadeSlider

Регистрация: May 2008
Сообщений: 6
По умолчанию Нестандартный (непрямой) Slider

Доброго времени суток!

Встала передо мной задача, часть которой заключается в использовании изогнутого слайдера для вращения изображения наподобие того, как реализовано здесь http://www.dancingsantacard.com/en/

Ушла почти неделя поисков в интернете и головоломки. Безрезультатно.

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

Текущая задача решена, но полного удовлетворения нет, более того, если понадобится сделать слайдер не правильным полукругом, а некой дугой, снова будет тупик.

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

Но что если понадобится слайдер в виде зигзага, или другой кривой, для которой вышеприведенный подход будет неприемлем?

У меня ощущение, что я упускаю нечто очевидное, но что - не пойму.

Если ли в AS3.0 возможность сделать слайдер, привязав его указатель к некой кривой, наподобие анимации, реализованной с помощью guide во флеше?

Прошу прощения за стену текста, кратко изъясниться не удалось

Заранее благодарен за любые идеи или ссылки для "почитать".

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

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Забить нужное количество точек в массив и использовать их как позицию для ручки слайдера...
__________________
Hell is the possibility of sanity

Старый 05.12.2009, 01:59
ShadeSlider вне форума Посмотреть профиль Отправить личное сообщение для ShadeSlider Найти все сообщения от ShadeSlider
  № 3  
Ответить с цитированием
ShadeSlider

Регистрация: May 2008
Сообщений: 6
Хмм, а как подобный подход обеспечит плавное скольжение ручки слайдера кривой линии?

Быть может по-другому озвучить задачу: как заставить некий объект двигаться по определенному пути при помощи drag&drop и иметь при этом возможность получить процентное значение пройденного ручкой пути?

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

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Ну если по кривой - поищите алгоритм нахождения точки на кривой по двум опорным точкам и якорю.
Google answers По ломаной - есть встроеная функция, которя считает координаты между двумя точками в процентом соотношении: Point.interpolate().
Если вы не сможете получить путь в процентном соотношении - тогда у вас ничего не получится, даже на прямой...
__________________
Hell is the possibility of sanity

Старый 05.12.2009, 05:53
ShadeSlider вне форума Посмотреть профиль Отправить личное сообщение для ShadeSlider Найти все сообщения от ShadeSlider
  № 5  
Ответить с цитированием
ShadeSlider

Регистрация: May 2008
Сообщений: 6
Интересно, займусь этим алгоритмом на досуге.

И все же, неужели в ас3 нет никаких механизмов для решения данной задачи? Казалось бы, должно быть достаточно востребованным.

Меня смущает то, что во флеше есть механизм для реализации анимации объекта, привязанной к линии (path). Неужели нет ничего похожего в ас3?

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

Регистрация: Jul 2009
Адрес: Москва
Сообщений: 99
http://bezier.ru/ может тут есть то что вам нужно

Старый 06.12.2009, 02:35
mayakwd вне форума Посмотреть профиль Отправить личное сообщение для mayakwd Посетить домашнюю страницу mayakwd Найти все сообщения от mayakwd
  № 7  
Ответить с цитированием
mayakwd
 
Аватар для mayakwd

Регистрация: Jul 2008
Адрес: t:2, x: 0.76
Сообщений: 553
Отправить сообщение для mayakwd с помощью ICQ Отправить сообщение для mayakwd с помощью Skype™
по кривой Безье и не надо мучиться.
__________________
Блог, Twitter
Брюзга.

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

Регистрация: Jul 2007
Сообщений: 805
Отправить сообщение для ramshteks с помощью ICQ Отправить сообщение для ramshteks с помощью Skype™
на самом деле во флеше есть механизм позволяющий решит то что вам нужно... это класс Math ))

ну во первых слайдер зигзагом это оч круто...)) а во вторых, все это так или иначе решается... Либо через кривые либо через еще какой нить математический механизм. А guide этих нет во Flash Api. И судя по всему они явлются частным применением обычных твинов и математики.

Старый 06.12.2009, 03:38
ShadeSlider вне форума Посмотреть профиль Отправить личное сообщение для ShadeSlider Найти все сообщения от ShadeSlider
  № 9  
Ответить с цитированием
ShadeSlider

Регистрация: May 2008
Сообщений: 6
Да, шикарно, просто шикарно. Спасибо большое за безье. Точнее - за ссылку на класс.
Не только поставленную задачу решает, но и дает кучу новых мыслей и идей.

Цитата:
Сообщение от ramshteks Посмотреть сообщение
на самом деле во флеше есть механизм позволяющий решит то что вам нужно... это класс Math ))

ну во первых слайдер зигзагом это оч круто...)) а во вторых, все это так или иначе решается... Либо через кривые либо через еще какой нить математический механизм. А guide этих нет во Flash Api. И судя по всему они явлются частным применением обычных твинов и математики.
Само собой все решает математика. Можно и на ассемблере операционные системы писать Вопрос в основном заключался в том, есть ли более-менее готовые механизмы для реализации задачи. И приведенный выше класс для работы с безье - пока максимально подходит для моих нужд.


Было бы шикарно, если бы кто-то предложил еще идеи, но пока я более чем удовлетворен и смогу спать спокойно


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

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

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


 


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


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