Форум программистов, компьютерный форум CyberForum.ru

Программирование iOS/iPhone

Войти
Регистрация
Восстановить пароль
 
Slava-hacker32
7 / 7 / 0
Регистрация: 16.11.2011
Сообщений: 242
#1

Анимация колебания струны - Программирование iOS/iPhone

14.08.2015, 11:13. Просмотров 638. Ответов 1
Метки нет (Все метки)

Добрый день. Подскажите, направьте пожалуйста. Какими инструментами реализовать анимацию колебания струны для реализации симулятора гитары (то есть физика, колебания будут отличаться в зависимости от того как эту струну тронет пользователь). Какие библиотеки использовать или хотя бы в какую сторону смотреть, напр. SpriteKit или cocos2d или какие то другие?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.08.2015, 11:13     Анимация колебания струны
Посмотрите здесь:

Objective-C Анимация Графика
Objective-C Анимация
Анимация текста, заливка другим цветом Objective-C
анимация View
Objective-C Плавная анимация
Анимация UIView
Анимация в 2d игре
Core Graphics анимация
Колебания струны
Страшная анимация таблицы, после добавления кодом на View и добавления Constraint-ов Objective-C
Objective-C Анимация смены изображения NSImageVIew
Уравнение колебания струны

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
LeninRedStar
5 / 5 / 4
Регистрация: 22.11.2015
Сообщений: 21
22.11.2015, 21:21     Анимация колебания струны #2
http://www.physel.ru/mainmenu-48/mai...559-s-49-.html

посмотри на картинку а), думаю она именно то, что тебе нужно. На рисунке изображена стоячая волна. Огибающая определяется формулой косинуса низкой частоты. Каждая точка струны движется также по закону косинуса с одинаковой частотой, но разной амплитудой (амплитуда определяется как раз огибающей).

Получается если длина струны L, координата точки по горизонтали x, то значение огибающей в точке x будет A*sin(wx). w можно расчитать зная что sin(wL) = 0, значит wL = 3.14. w = 3.14/L

Далее каждая точка с координатой x колеблется закону y = A*sin(wx)*sin(t), где t - время, которое растет по некоторому таймеру, а A*sin(wx) для этой точки постоянное число, амплитуда

Реализовать можно чем угодно, нужно вывести какое-то число точек, соединив их прямыми или безье линиями. Можно попробовать смоделировать данный процесс также joint-ами в spriteKit, давая начальное ускорение центральной точке.
Yandex
Объявления
22.11.2015, 21:21     Анимация колебания струны
Ответ Создать тему
Опции темы

Текущее время: 16:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru