Pure_Guitare_Classique (cordes à vide, MAJ pour v4 en page4)
- Le psychopathe
- Messages : 764
- Inscription : jeu. 03/mars/2005 19:23
-
- Messages : 2194
- Inscription : jeu. 27/janv./2005 19:07
Pffff! C'est la rentrée!
Bonjour tout le monde!
Si vous avez des idées d'amélioration, ne faites pas les timides
Les prochains ajouts seront:
-l'intervalle correspondant à la note dans la bulle info
-la grille d'accord (brute au départ, on verra pour l'affinage après)
A+
@Dobro
Dès que tu auras traversé l'Atlantique, appelle-moi
Je suis sûr que tu vas vite t'adapter aux conditions climatiques extrêmes!
Si vous avez des idées d'amélioration, ne faites pas les timides

Les prochains ajouts seront:
-l'intervalle correspondant à la note dans la bulle info
-la grille d'accord (brute au départ, on verra pour l'affinage après)
A+
@Dobro
Dès que tu auras traversé l'Atlantique, appelle-moi

Je suis sûr que tu vas vite t'adapter aux conditions climatiques extrêmes!
Elevé au MSX !
Re: Pffff! C'est la rentrée!
heu!Huitbit a écrit : @Dobro
Dès que tu auras traversé l'Atlantique, appelle-moi![]()
Je suis sûr que tu vas vite t'adapter aux conditions climatiques extrêmes!


cela existe deja , ça s'appelle "Band in a Box" ...bernard13 a écrit :essaye de faire un programme pour jouer les solos de guitare
http://www.band-in-a-box.com/fr/index.html
http://www.ipemusic.com/index.php?lang=12&ml=2&pid=5
Ch'tite mise à jour en attendant(juste pour voir!)
(voir le post n°1 pour le code)
Maintenant Pure_Note sait calculer les intervalles!
J'ai déplacé la bulle info, c'était plus logique que le menu soit à côté de la grille.
J'adapterai la grille en fonction du nombre de cases concernées par l'accord(4,5 ou 6) (idem pour le "cadre position")
@Dobro
Utilise ta tortue (ou ta multitortue) pour venir, elle connaît la route!
@Bernard
Pour les solos, c'est une idée.
Si ça doit se faire, je pense modestement commencer par les gammes(comme sur la règle à Dadi)
Question:
Pour l'ordinateur, c'est mieux de faire des sprites(ensemble de box, line...) plutôt que de dessiner des formes(box, line...) sur l'écran?
(heu..., ma question est-elle claire
)
A+
Maintenant Pure_Note sait calculer les intervalles!
J'ai déplacé la bulle info, c'était plus logique que le menu soit à côté de la grille.
J'adapterai la grille en fonction du nombre de cases concernées par l'accord(4,5 ou 6) (idem pour le "cadre position")
@Dobro
Utilise ta tortue (ou ta multitortue) pour venir, elle connaît la route!

@Bernard
Pour les solos, c'est une idée.
Si ça doit se faire, je pense modestement commencer par les gammes(comme sur la règle à Dadi)
Question:
Pour l'ordinateur, c'est mieux de faire des sprites(ensemble de box, line...) plutôt que de dessiner des formes(box, line...) sur l'écran?
(heu..., ma question est-elle claire

A+
Elevé au MSX !
-
- Messages : 2194
- Inscription : jeu. 27/janv./2005 19:07
C'est plus astucieux de "dessiner" des "Sprites", car une fois fait, il n'y a qu'à les rappellerPour l'ordinateur, c'est mieux de faire des sprites(ensemble de box, line...) plutôt que de dessiner des formes(box, line...) sur l'écran?

le credo des programmeurs : on réutilise ce qui est déjà fait, on ne refait jamais 2 fois la même chose

Dernière modification par Frenchy Pilou le lun. 24/avr./2006 21:35, modifié 1 fois.
Grille brute à raffiner!
(voir la page 1 pour le code)
J'ai pas réussi à mettre une grosse image (pourtant j'ai fait comme d'habitude avec le site heisspiter.net
)
J'ai rajouté une grille paramétrable (4, 5 ou 6 cases)
Je la rempli sans tenir compte du nombre limité de doigts
Pour cette phase, il ne manque plus qu'à "nettoyer" la grille d'accord
En fait c'est la partie un peu chaude du programme(Dobro m'a déjà mis sur les rails)!
J'ai une question qui n'a rien à voir avec ce prog:
Je compte recommencer mon "wargame"(mon "embryon de wargame!")
avec la v4.0. en utilisant les structures(comme me l'avait conseillé Gillou!
)
Ces dernier temps, j'ai dû me mettre à la logique combinatoire et séquentielle avec le lycée! Et c'est magique!
Simplifier les expressions à la main des fois c'est moins magique!
S'il y a des électroniciens dans la place...y a-t-il un logiciel déjà tout prêt pour simplifier les expressions de logique combinatoire(j'en ai déjà un qui utilise la méthode de karnaugh)?
En fait, avec les élèves ont a simulé un arrosage automatique commandé par trois capteurs et la différence avant et après simplification est impressionnante(surtout la quantité de fils de connexion)!
Dans un jeu ça serait TRES utile!
edit
Dans mon wargame chaque couche ne prendrait que les valeurs #vrai ou #faux (ou #bordure)
case(x,y)\montagne=#vrai...etc
edit
Il suffirait de faire la table de vérité qui correspond aux actions d'un personnage et puis hop!.. en une seule ligne de code on gère toutes ses décisions!
Hasta la vista!
PS: ça sent les vacances car les élèves ont déserté...
PSbis: un fonctionnaire n'a pas de vacances, je dois préparer ma rentrée!(j'suis crédible là?)
J'ai pas réussi à mettre une grosse image (pourtant j'ai fait comme d'habitude avec le site heisspiter.net

J'ai rajouté une grille paramétrable (4, 5 ou 6 cases)
Je la rempli sans tenir compte du nombre limité de doigts
Pour cette phase, il ne manque plus qu'à "nettoyer" la grille d'accord
En fait c'est la partie un peu chaude du programme(Dobro m'a déjà mis sur les rails)!
J'ai une question qui n'a rien à voir avec ce prog:
Je compte recommencer mon "wargame"(mon "embryon de wargame!")
avec la v4.0. en utilisant les structures(comme me l'avait conseillé Gillou!

Ces dernier temps, j'ai dû me mettre à la logique combinatoire et séquentielle avec le lycée! Et c'est magique!
Simplifier les expressions à la main des fois c'est moins magique!

S'il y a des électroniciens dans la place...y a-t-il un logiciel déjà tout prêt pour simplifier les expressions de logique combinatoire(j'en ai déjà un qui utilise la méthode de karnaugh)?
En fait, avec les élèves ont a simulé un arrosage automatique commandé par trois capteurs et la différence avant et après simplification est impressionnante(surtout la quantité de fils de connexion)!
Dans un jeu ça serait TRES utile!
edit
Dans mon wargame chaque couche ne prendrait que les valeurs #vrai ou #faux (ou #bordure)
case(x,y)\montagne=#vrai...etc
edit
Il suffirait de faire la table de vérité qui correspond aux actions d'un personnage et puis hop!.. en une seule ligne de code on gère toutes ses décisions!
Hasta la vista!
PS: ça sent les vacances car les élèves ont déserté...
PSbis: un fonctionnaire n'a pas de vacances, je dois préparer ma rentrée!(j'suis crédible là?)

Dernière modification par Huitbit le dim. 04/juin/2006 10:56, modifié 1 fois.
Elevé au MSX !
Re: Grille brute à raffiner!
ben disons que si t'habitais pas en Guadeloupe , ça iraiHuitbit a écrit : PS: ça sent les vacances car les élèves ont déserté...
PSbis: un fonctionnaire n'a pas de vacances, je dois préparer ma rentrée!(j'suis crédible là?)
mais voila .....


Avis aux amateurs(datas à compléter)!
Yeeeeeeeeeeeeesssss Papa!
J'ai BOSSé!
(le code complet est sur la première page)
J'ai modifié le sous programme sur les intervalles(il y avait un bug dans l'affichage des composantes de l'accord):
C'est plus clair maintenant!
J'ai supprimé des bugs qui trainaient (problème de dimension des tableaux)
Et j'ai enfin fait un embryon d'IA pour supprimer mes doigts en trop sur la grille d'accord!
Voilà comment se présentent les datas "priorité"
Petit jeu pour les gratteux…
Pure_Note peut réfléchir maintenant now !
Elle donne des priorités aux notes (elle ne propose pas encore les cordes à vides et il y a toujours six notes sur la grille....patience!)
Mais…il faut lui apprendre.
Dans les datas, un accord majeur s’écrit :
0,4,7,20,20,20,20 (ce sont les intervalles en demi-tons)
c'est-à-dire fondamentale+TM+5 ; 20 correspond à « pas d’information »
Les priorités(chiffre de 0 à 7)
1,3,2,0,0,0,0 (c'est-à-dire priorité5>priorité>TM>priorité5)
La constitution de l’accord tient compte de la priorité et du nombre d’apparitions de la note.
J’ai crée une relation mathématique qui lie ces deux variables :
indice_priorite=note(i,j)\priorite+7*(3-note(i,j)\nombre)
(7 c’est la priorité maxi et 3 le nombre maxi de notes dans le cadre)
J’ai besoin de votre avis pour optimiser les datas « priorités »(Knopfler, Santana et Clapton sont pris en ce moment).
Pour l'instant j'ai fait une ligne
!!
L’idéal serait une ligne de datas(4 ou 5 accords) par Puregratteux !
PS: toujours pas d'adsl, j'ai été voir orange, ils m'ont dit que j'avais pas d'abonnement adsl! J'aimerais savoir QUI C'EST QUI m'a refilé une LIVEBOx!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Merci d'avance et........
Hasta la vista!!!
J'ai BOSSé!
(le code complet est sur la première page)
J'ai modifié le sous programme sur les intervalles(il y avait un bug dans l'affichage des composantes de l'accord):
Code : Tout sélectionner
Procedure.b intervalle_diminue(valeur.b)
If valeur=6
If (numero_accord=1) Or (numero_accord=4) Or (numero_accord=9) Or (numero_accord=27) Or (numero_accord=32) Or (numero_accord=34) Or (numero_accord=35) Or (numero_accord=36) Or (numero_accord=41) Or (numero_accord=47)
nom_intervalle="5dim"
Else
nom_intervalle="4aug"
EndIf
EndIf
If valeur=8
If (numero_accord=28) Or (numero_accord=30)
nom_intervalle="6mi"
Else
nom_intervalle="5aug"
EndIf
EndIf
If valeur=9
If (numero_accord=35)
nom_intervalle="7dim"
Else
nom_intervalle="6Ma"
EndIf
EndIf
EndProcedure
J'ai supprimé des bugs qui trainaient (problème de dimension des tableaux)
Et j'ai enfin fait un embryon d'IA pour supprimer mes doigts en trop sur la grille d'accord!
Code : Tout sélectionner
Procedure selection_notes()
;initialisation
For corde=0 To 5
For kaz=0 To 14
note(corde,kaz)\visible=0
note(corde,kaz)\nombre=0
Next kaz
Next corde
For i = 0 To 5 ;passage en revue des 6 cordes et detection des notes qui ont l'indice de priorite le plus grand
indice_priorite_max.b=0
kaz_priorite_max.b= position+1
For j= position+1 To position+nombre_cases_cadre
If note(i,j)\resultat<>99
indice_priorite.b=note(i,j)\priorite+7*(3-note(i,j)\nombre)
If indice_priorite>indice_priorite_max
kaz_priorite_max=j
indice_priorite_max= indice_priorite
EndIf
EndIf
Next j
note(i,kaz_priorite_max)\visible=1
note(i,kaz_priorite_max)\nombre=note(i,kaz_priorite_max)\nombre+1
For l=0 To 5
For m=position+1 To position+nombre_cases_cadre
If note(l,m)\intervalle_valeur=note(i,kaz_priorite_max)\intervalle_valeur
note(l,m)\nombre=note(i,kaz_priorite_max)\nombre
EndIf
Next m
Next l
Next i
EndProcedure
Code : Tout sélectionner
priorites:
Data.b 1,3,2,0,0,0,0,1,2,3,0,0,0,0,1,2,3,0,0,0,0,1,3,2,0,0,0,0,1,2,3,0,0,0,0; X|X(b5)|X+|Xmi|Xdim
Data.b 1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7;Xmi(#5)|X5|Xsus|Xsus2|Xsus2(b5)
Data.b 1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7;X2|X4|X6|X6/9
Data.b 1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7;Xmi2|Xmi4|Xmi4/6|Xmi6
Data.b 1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7; Xmi6/9|X2sus|Xma7|Xmi7
Data.b 1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7;Xmi(ma7)|X7|Xma7sus9|X7sus
Data.b 1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7;X7sus9|X6(b5)|Xmi(b6)|Xmi2(#5)
Data.b 1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7;Xmi4(b6)|Xmi6(b9)|Xma7(b5)|Xma7(#5)
Data.b 1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7;Xmi7(b5)|X°7|X7(b5)|X7(#5)
Data.b 1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7;X7(b9)X7(#9)X7(#5,b9)X7sus(b5)
Data.b 1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7;X7sus(b9)|Xma9|Xmi9|Xmi(ma9)
Data.b 1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7;X9|X9(b5)|X9sus|Xmi11
Data.b 1,2,3,4,5,6,7,1,2,3,4,5,6,7,1,2,3,4,5,6,7,6,4,3,2,1,7,5;X11|Xma13|Xmi13|X13
Data.b 1,2,3,4,5,6,7,1,2,3,4,5,6,7;X13(b9)|X13sus9
Petit jeu pour les gratteux…
Pure_Note peut réfléchir maintenant now !
Elle donne des priorités aux notes (elle ne propose pas encore les cordes à vides et il y a toujours six notes sur la grille....patience!)
Mais…il faut lui apprendre.
Dans les datas, un accord majeur s’écrit :
0,4,7,20,20,20,20 (ce sont les intervalles en demi-tons)
c'est-à-dire fondamentale+TM+5 ; 20 correspond à « pas d’information »
Les priorités(chiffre de 0 à 7)
1,3,2,0,0,0,0 (c'est-à-dire priorité5>priorité>TM>priorité5)
La constitution de l’accord tient compte de la priorité et du nombre d’apparitions de la note.
J’ai crée une relation mathématique qui lie ces deux variables :
indice_priorite=note(i,j)\priorite+7*(3-note(i,j)\nombre)
(7 c’est la priorité maxi et 3 le nombre maxi de notes dans le cadre)
J’ai besoin de votre avis pour optimiser les datas « priorités »(Knopfler, Santana et Clapton sont pris en ce moment).
Pour l'instant j'ai fait une ligne

L’idéal serait une ligne de datas(4 ou 5 accords) par Puregratteux !
PS: toujours pas d'adsl, j'ai été voir orange, ils m'ont dit que j'avais pas d'abonnement adsl! J'aimerais savoir QUI C'EST QUI m'a refilé une LIVEBOx!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Merci d'avance et........
Hasta la vista!!!
Elevé au MSX !
oulala mais ca m'a l'air interressant tout ca !
je vais tester ca ce soir....
je vais tester ca ce soir....
Quelques manoucheries : I can't give you anything but love / Stompin' at decca