Comments 22
визуализация для музыкального плеера
не нужна.
-9
Как-то странно он реагирует на музыку.
0
Теперь и на JS можно легко создавать визуализации, с помощью Web Audio API (пока только для Chrome).
Написал небольшой пример.
Написал небольшой пример.
+3
<Комментарий удален, потому что я промахнулся топиком>
+1
А можете пояснить, что считается в этих строках:
?
var originalN: Number = (radius / r - phi) / (Math.PI * 2.0);
var n: Number = Math.min(Math.floor(originalN), Math.ceil(originalN));
phi += n * Math.PI * 2.0;
var cx: Number = xcoord / (Math.cos(phi) / phi);
var cy: Number = ycoord / (Math.sin(phi) / phi);
?
0
На самом деле в исходном коде немного другие обозначения коэффициентов, для более понятных имен.
radius — это на самом деле коэффициент «a».
Так что:
originalN — это текущий виток спирали; (как я пришел к такому вычислению я уже не помню, но помню, что это было мучительно :))
n — можно заменить на Math.floor(originalN); это я что-то недосмотрел;
phi — угол который должен быть на определенном витке. Получается такая штука, здесь угол в 10 градусов не тоже самое, что угол в 370 градусов, т.к. угол еще используется в знаменателе вне тригонометрических функций.
cx, cy — из уравнения спирали это коэффициент «a».
В итоге ширина спирали основывается на разнице этих самых «a». Говоря проще, для каждой точки вычисляется спираль по заданному параметру «a» и если она «похожа» на спираль которая нам нужна, то мы в этой точке вычисляем смещение.
radius — это на самом деле коэффициент «a».
Так что:
originalN — это текущий виток спирали; (как я пришел к такому вычислению я уже не помню, но помню, что это было мучительно :))
n — можно заменить на Math.floor(originalN); это я что-то недосмотрел;
phi — угол который должен быть на определенном витке. Получается такая штука, здесь угол в 10 градусов не тоже самое, что угол в 370 градусов, т.к. угол еще используется в знаменателе вне тригонометрических функций.
cx, cy — из уравнения спирали это коэффициент «a».
В итоге ширина спирали основывается на разнице этих самых «a». Говоря проще, для каждой точки вычисляется спираль по заданному параметру «a» и если она «похожа» на спираль которая нам нужна, то мы в этой точке вычисляем смещение.
0
Заинтересовало вычисление витка спирали :)
radius — это максимальный радиус спирали?
radius — это максимальный радиус спирали?
0
Это некий коэффициент скорости расхождения спирали, в принципе он сопоставим с максимальным радиусом.
0
Тогда как можно было бы понять его геометрический смысл? Вы уже не помните общий ход рассуждений?
0
Считайте это коэффициентом масштабирования. При изменении этого коэффициента, спираль не меняет свою структуру.
Из вот этого предела:
и более наглядного рисунка:
видно, что спираль растет не вечно. Поэтому коэффициент «a» это по сути максимальная высота(по y) спирали, а значит и радиус за пределами которого, приращение угла очень быстро phi -> 0
Из вот этого предела:
и более наглядного рисунка:
видно, что спираль растет не вечно. Поэтому коэффициент «a» это по сути максимальная высота(по y) спирали, а значит и радиус за пределами которого, приращение угла очень быстро phi -> 0
0
Наверное, не суждено мне понять :(
Попытаюсь еще раз:
var r: Number = Math.sqrt(xcoord * xcoord + ycoord * ycoord);
если xcoord и ycoord — расстояние от центра до текущей точки по каждой из осей координат, то r — гипотенуза в прямоугольном треугольнике
Что скрывается под radius / r? Почему из этого вычитается угол?
Попытаюсь еще раз:
var r: Number = Math.sqrt(xcoord * xcoord + ycoord * ycoord);
если xcoord и ycoord — расстояние от центра до текущей точки по каждой из осей координат, то r — гипотенуза в прямоугольном треугольнике
Что скрывается под radius / r? Почему из этого вычитается угол?
0
Нужно было перейти сюда Гиперболическая спираль и посмотреть формулы.
radius в данном контексте это a. Соответственно в полярных координатах a/r = phi
radius в данном контексте это a. Соответственно в полярных координатах a/r = phi
0
Я просмотрел формулы. Не понимаю, почему radius === a. Если так, то radius / r — phi = 0
0
Я же раньше писал, замените название radius на a. Я уже сам запутался.
a/r = phi это phi не равняется phi который считается для каждой точки
a/r = phi это phi не равняется phi который считается для каждой точки
0
То есть в случае с radius/r мы получаем угловую координату самой спирали, а в случае расчета для конкретной точки — ее угловую координату. Осталось понять, как разность этих двух координат дает нам конкретный виток.
0
SecurityError: Error #2122: Нарушение изолированной среды: SoundMixer.computeSpectrum: dl.dropbox.com/u/80206417/habr_articles/visualization/swf/HalosCorona.swf не может осуществить доступ к cs1-25.userapi.com/d30/0251ad7fafb595.mp3. Необходим файл политики, но, когда были загружены эти мультимедийные данные, флаг checkPolicyFile не был установлен.
at flash.media::SoundMixer$/computeSpectrum()
at Main/ComputeMaxSpectrumValue()
at Main/Update()
А в остальном здорово 8)
at flash.media::SoundMixer$/computeSpectrum()
at Main/ComputeMaxSpectrumValue()
at Main/Update()
А в остальном здорово 8)
0
Управление характеристиками звука в режиме реального времени для AS3 — ChaosVision
0
Sign up to leave a comment.
Визуализация для музыкального плеера