2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Визуализация звуковых колебаний
Сообщение22.09.2008, 23:57 
Доброго времени суток всем посетителям форума.
Хотелось бы получить помощь в решении сложного для меня вопроса.
Дан курсовой проект. Тема "Визуализация звуковых колебаний".
По сути, необходимо создать компонент, который собственно выполнял бы роль визуализатора. Не мудрствуя лукаво, было решено оформить его в виде стандартного эквалайзера. (как пример - в стандартном проигрывателе Windows Media Player: Вид-Зрительные образы-диаграмма-Частотная).
Написать компонент надо на С++ Builder.
Я не прошу выкладывать мне код программы. Хотелось бы узнать, с чего необходимо начать, что может быть изучить и вообще, что требуется для создания данного компонента.
Если вопрос по-Вашему, задан некорректно, поправляйте.
Заранее спасибо.

 
 
 
 Re: Визуализация звуковых колебаний
Сообщение23.09.2008, 00:09 
Strider5000 писал(а):
Дан курсовой проект. Тема "Визуализация звуковых колебаний".
Хотелось бы узнать, с чего необходимо начать, что может быть изучить и вообще, что требуется для создания данного компонента.
Если вопрос по-Вашему, задан некорректно, поправляйте.

0. Такие вопросы нужно обсуждать с руководителем.
1. Вопрос задан слишком абстрактно. Мы же Вас не знаем. Вы умеете писать VC для Borland? Программировать графику? Читать данные с аудиокарты?
2. Поищите аналогичные проекты на http://sourceforge.net.

 
 
 
 
Сообщение23.09.2008, 16:39 
0. Вопрос буквально сегодня был скорректирован, что существенно упростило задачу.
1. Все сводится к тому, чтобы создать компонент, используя в качестве базового класса любой класс с канвой.
Количество диаграмм(столбцов эквалайзера) задается пользователем. Также пользователем задается диапазон отображаемых ими значений(min и max) и их цвет. Форма компонента должна поддаваться изменению размеров.
Для задания значений использовать некое свойство, передающее набор значений диаграммам.
Знания в Borland C++ к сожалению, не такие глубокие, чтобы читать данные с аудиокарты и программировать графику=(
2. Спасибо, посмотрю.
Буду рад вашим ответам.

 
 
 
 
Сообщение24.09.2008, 20:10 
Подскажите пожалуйста, хоть с чего начать: какой базовый класс с канвой лучше выбрать для этой цели, каким способом можно добится того, чтобы юзер изменял количество диаграмм в окне компонента?

 
 
 
 
Сообщение08.10.2008, 20:07 
мда... удивлен количеством советов... не ожидал...
Хорошо, можно хотябы спросить, как нарисовать хотябы одну линию при помощи пера, задав предварительно цвет и толщину линии. (желательно код)??

 
 
 
 
Сообщение09.10.2008, 13:39 
Аватара пользователя
Ну, примерно так:
Код:
PaintBox1->Canvas->Pen->Color = clRed;
PaintBox1->Canvas->Pen->Width = 3;
PaintBox1->Canvas->MoveTo(x1, y1);
PaintBox1->Canvas->LineTo(x2, y2);

Хотя я не уверен насчёт "->".

 
 
 
 
Сообщение09.10.2008, 17:05 
Посмотрите уже готовые примеры: ищите на google:codesearch, а также в любом дистрибутиве Linux, содержащем исходные коды программ (например, можно посмотреть плагины для визуализации данных, написанные под xmms).

 
 
 
 
Сообщение09.10.2008, 18:24 
Strider5000 писал(а):
мда... удивлен количеством советов... не ожидал...
Хорошо, можно хотябы спросить, как нарисовать хотябы одну линию при помощи пера, задав предварительно цвет и толщину линии. (желательно код)??

Я удивлен Вашим удивительным удивлением...
Судя по Вашему вопросу - как хотя бы нарисовать линию - Вы не открыли ни одной соответствующей книжки, не заглянули в Хелп.
Чего Вы собственно ожидаете? Что Вам начнут пересказывать учебники и переписывать примеры?

 
 
 
 
Сообщение12.10.2008, 17:14 
2worm2: Премного благодарен за код!
PS: с "->" все нормально=)

2Yuri: Вы меня немного не так поняли, имелось ввиду не просто линия, а рисование оной методом пера, так как я в нем немного запутался. На данный момент указанный выше код - все, что мне нужно.

 
 
 
 
Сообщение29.10.2008, 21:25 
Не присоветуете ли какой-нибудь хороший ресурс про компоненты?

 
 
 [ Сообщений: 10 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group