Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.14;
Скачать: CL | DM;

Вниз

Прикрипление и использование ini файла   Найти похожие ветки 

 
Garfunkel   (2004-10-23 23:35) [0]

Сделал программу нахождения аккордов. Для хранения аккордов использую ini файлы, потому что жутко удобно. Например:
[C]
maj=0001000203xx 030505050303 080809101008 12131210xxxx  
m=030405050303 03010001xxxx 080808101008
7=0001030203xx 030503050303

[C#]
maj=000100020300
m=030405050303
7=000103020300

и считывать аккорд очень удобно. Вот теперь вопрос - как прикрепить ее (базу аккордов) к исполнимому файлу и как потом с этим файлом ini работать?
сейчас я делаю наприме так:
akkord:=Ini.ReadString(note,ChordType.Items[ChordType.ItemIndex],"000000000000");
ChordType - это ListBox с типом аккорда а note это название секци ini файла с нотой аккорда.


 
GuAV ©   (2004-10-24 00:03) [1]

Прикрепить через ресурсы. Работать - написать наследника TCustomIniFile или TIniFile/TMimIniFile.
Рекомендую рассмотреть вариант отказа от сабжа.


 
GuAV ©   (2004-10-24 00:08) [2]

GuAV ©   (24.10.04 0:03) [1]
Рекомендую рассмотреть вариант отказа от сабжа.


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

Хотя ini файлы сейчас не рулят а рулит XML ! :-)


 
GanibalLector ©   (2004-10-24 00:12) [3]

2 GuAV ©   (24.10.04 00:08) [2]
>Хотя ini файлы сейчас не рулят а рулит XML !
Во дела...А где читать???


 
Гарри Поттер ©   (2004-10-24 01:31) [4]

имхо, не надо их сувать в ресурсы. сделай запись более понятной (я хоть и знаю аккорды, но не понянимаю как ты их записываешь), пусть юзер имеет возможность посмотреть и редактировать.
А для поставки программы собери дистрибутив и пусть аккорды инсталлируются в отдельную папку в каталоге с программой.


 
Garfunkel   (2004-10-24 03:40) [5]

[C]
maj=0001000203xx 030505050303 080809101008 12131210xxxx

здесь 4 варианта взятия аккорда C (major). отеделены пробелом. По две цифры на лад. Первые две цифры 00 означают что первую струну не зажимать, две другие 01 означают что 2-ую струну следует зажать на 1-ом ладу. и.т.д.
А все таки вы мне не помогли...:(


 
Германн ©   (2004-10-24 05:20) [6]

2 Garfunkel   (24.10.04 03:40) [5]
> А все таки вы мне не помогли...:(

А почто ты поссорился с Полом(P.Simon)?
Сам тогда виноват! :)


 
Кто---то ©   (2004-10-24 07:36) [7]


> Garfunkel   (23.10.04 23:35)  
> Сделал программу нахождения аккордов.

А как вообще находят аккорды ? По каким параметрам ?


 
YurikGL ©   (2004-10-24 08:09) [8]


> По две цифры на лад.

Извращенец... записывай байтовое число и все. А если нужно "x" записать, то пусть это будет 255


> А как вообще находят аккорды ? По каким параметрам ?

Это - просто. Если сказано, что Ля-минор, то значит, что аккорд включает в себя три звука: Ля, малую терцию от Ля и квинту от Ля. Длинну разных интервалов можно найти в инете. Ля-мажор: Ля, большая терция от Ля, квинта от ля. Далее, септ-аккрод(7) включает в себя основное троезвучие + септиму от Ля. Секст аккорд(6) включает в себя основное троезвучие + сексту от ля. Увеличенный септ-аккорд(7+) включает в себя основное троезвучие, а септима будет увеличина на пол-тона (как этот промежуток называется я не помню). С пониженной квинтой(5-): троезвучие у которого квинтовый тон на пол-тона ниже. С повышенной квинтой(5+): троезвучие у которого квинтовый тон на пол-тона выше.  Ну и т.д.


 
Anatoly Podgoretsky ©   (2004-10-24 10:12) [9]

YurikGL ©   (24.10.04 08:09) [8]
То есть вообще величина расчетная и хранению не подлежит


 
GuAV ©   (2004-10-24 14:28) [10]

Garfunkel   (24.10.04 3:40) [5]
А все таки вы мне не помогли...:(


[1] - первая сторка чем не устраивает ?


 
Sergey_Masloff   (2004-10-24 14:40) [11]

Anatoly Podgoretsky ©   (24.10.04 10:12) [9]
>То есть вообще величина расчетная и хранению не подлежит
В силу ограничености длины пальцев и подвижности суставов подлежит хранению то подмножество от теоретического множество которое доступно для практического использования.


 
Garfunkel   (2004-10-24 21:43) [12]

Sergey_Masloff
>В силу ограничености длины пальцев и подвижности суставов подлежит >хранению то подмножество от теоретического множество которое доступно >для практического использования

Высчитывать конечно можно, но из 20 полученых вариантов практически половина будет плохо звучать (соотношения нот в аккорде будет не гармоничным) а из второй половины многие будет трудно взять пальцами на грифе. Поэтому я лично не сторонник генерации аккордов, а именно поиска их в файле "базы" по введенному пользователем виду аккорда.
Может кто-нибудь привести пример работы с текстом впаянным в ресурс exe файла (без создания временного файла на жестком диске)?


 
Кто---то ©   (2004-10-26 06:48) [13]


> YurikGL ©   (24.10.04 08:09) [8]
>
> > По две цифры на лад.
>
> Извращенец... записывай байтовое число и все. А если нужно
> "x" записать, то пусть это будет 255
>
>
> > А как вообще находят аккорды ? По каким параметрам ?
>
> Это - просто. Если сказано, что Ля-минор, то значит, что
> аккорд включает в себя три звука: Ля, малую терцию от Ля
> и квинту от Ля. Длинну разных интервалов можно найти в инете.
> Ля-мажор: Ля, большая терция от Ля, квинта от ля. Далее,
> септ-аккрод(7) включает в себя основное троезвучие + септиму
> от Ля. Секст аккорд(6) включает в себя основное троезвучие
> + сексту от ля. Увеличенный септ-аккорд(7+) включает в себя
> основное троезвучие, а септима будет увеличина на пол-тона
> (как этот промежуток называется я не помню). С пониженной
> квинтой(5-): троезвучие у которого квинтовый тон на пол-тона
> ниже. С повышенной квинтой(5+): троезвучие у которого квинтовый
> тон на пол-тона выше.  Ну и т.д.


А смысл это делать ? Найти один раз для всех нот все возможные аккорды и что дальше ?


> Garfunkel   (24.10.04 21:43) [12]
> Высчитывать конечно можно, но из 20 полученых вариантов
> практически половина будет плохо звучать (соотношения нот
> в аккорде будет не гармоничным)

Иногда это бывает как раз то, что нужно.


> а из второй половины многие будет трудно взять пальцами
> на грифе. Поэтому я лично не сторонник генерации аккордов,
> а именно поиска их в файле "базы" по введенному пользователем
> виду аккорда.

Так а зачем программа то ? Чтобы брать пальцами на грифе то, что она показыает что ли ?


 
Garfunkel   (2004-10-28 00:33) [14]

Кто---то
>Так а зачем программа то ? Чтобы брать пальцами на грифе то, что она >показыает что ли ?
Ну ты молодец! Сам додумался? :) Программа показывает удобные для гитариста аппликатуры аккордов (кол-во) вариантов не ограничено. Я сам гитарист с 13 летним стажем и программ которые находят аккорды по алгоритму видел много. Увы... Как я уже говорил они генерируют аккорды как график синуса:) то есть без учета того удобно ли будет (и возможно ли вообще) его сыграть на гитаре. Генерацию сделать намного проще. А вот корпеть над базой из ~900 проверенных на себе вариантов аккордов (12 нот х 25 типов аккордов х 3-4 вариантов позиций на грифе) это не блины напечь. Сейчас над этим работаю. Дошел уже до ноты A(ля).


 
Кто---то ©   (2004-10-28 07:22) [15]


> Ну ты молодец! Сам додумался? :)

Да, сам. Как наслушившийся всяких идиотских идей.


> Программа показывает удобные для гитариста аппликатуры аккордов

Не проще на бумажке нарисовать ? Зачем программа то ?


 
Garfunkel   (2004-10-28 12:43) [16]

Кто---то
>Не проще на бумажке нарисовать ? Зачем программа то ?
На бумаге у меня тоже есть:) Составленно мной. Но в программе удобнее искать нужный тип аккорда и графика нагляднее, красивше и еще можно организовать поиск аккорда по аналогичному названию. Пример: встречаем аккорд Hm+7 ищем его в программе, она выдает аккорд Hmmaj7 с пояснением, что это два одинаковых аккорда. Вообще разнобой в названиях аккордов страшный и запутаться легко если не знаешь что например Adim7 и A0 одно и тоже. И еще в программу можно встроить настройщик гитары и озвучку аккордов. Да много всего можно сделать.


 
pasha_golub ©   (2004-10-28 13:48) [17]

Вообще, не вижу проблемы. Храните себе на здоровье отдельно. Кому хуже будет?



Страницы: 1 вся ветка

Текущий архив: 2004.11.14;
Скачать: CL | DM;

Наверх




Память: 0.52 MB
Время: 0.058 c
1-1098967297
Chlavik
2004-10-28 16:41
2004.11.14
Надо после QueryInterface как то уничтожать полученый интерфейс ?


9-1090416014
Landgraph
2004-07-21 17:20
2004.11.14
Уменьшение длины...


3-1097958612
saNat
2004-10-17 00:30
2004.11.14
"Архивация" БД Access


1-1099305872
Mishenka
2004-11-01 13:44
2004.11.14
Как нарисовать ломаную линию на форме?


14-1098855152
GanibalLector
2004-10-27 09:32
2004.11.14
ibase.ru