Page 2 sur 2

Publié : sam. 10/déc./2005 14:34
par Backup
Y a un startdrawing qui me gène(message d'erreur) alors je l'ai enlevé
heu :oops: je viens de corriger mon code !! il fallais le mettre en REM

et l'activer seulement pour la fonction PLOT ! :)

P.S à propos de guitare j'ai une classique et depuis peu une électrique guitare lag (modèle roxanne floyd)
cool !! :D tu joue quoi comme style ?
moi c'est Picking a donf ! sinon je suis plutot soliste, style: "Mark Knopfler" (grosse tendance Country music picking oblige ...) sur ma Gibson "Marauder"de 1972 !! , j'ai bien sur un Dobro de Marque : Dobro , (facture Gibson) depuis 1988 importé par Franck Cheval , une guitare folk
coreene (Fenix par young chang) avec un super son (elle sonne aussi bien qu'une Martin de 1970, ceci est testé tout les ans au camping du Festival de Craponne /arzon , le plus grand festival de coutry music actuel en France ! avec les joueurs de bluegrass qui y viennent des quatre coins de france ...ya plus de music dans le camping , que sur la scene :D )
je joue depuis 28 ans maintenant ! :D

Publié : sam. 10/déc./2005 14:51
par lionel_om
J'ai pas encore testé (mais dl tous les codes ... je vais voir ca chez moi :D)
Mais je crois que ce que nous dit "Huitbit", c'est ce que j'ai vu en court ya 2 semaines (juste avant d'abandonner la matière), mais en amélioré.

Moi ca aurait été une spirale constituée de lignes (ca aurait été un peu moche), mais en approfondissant yaV moyen de trouevr un résultat similaire.
Pour les curieux, c'est le principe du champ vectoriel. Faut juste déterminer la bonne équation et op...

Publié : sam. 10/déc./2005 17:04
par djes
A propos de la parabole, c'est incroyable comme les maths donnent le même résultat qu'un travail empirique! Effectivement, le truc est de jouer sur une variable définissant la vitesse de chute, ce qui est très simple. :D

Ellipses inclinées

Publié : dim. 11/déc./2005 6:13
par Huitbit
Hello!
Je me suis dit que des ellipses verticales ou horizontales ça faisait pas trop Star Trek.
Alors j'ai voulu les incliner. Avec la méthode traditionnelle, il n' y a qu'à rajouter un déphasage(idem pour les courbes de Lissajous, il suffit de jouer avec l'amplitude, la pulsation, ...)
TROOOP facile!

Avec les différentielles j'ai cru au départ, qu'il fallait au moins l'API Wonderbra ou l'API Mac Gyver (ou pire l'API Rahan)!
Il faut juste rajouter deux lignes pour le calcul de la trajectoire, "j'espique":

Pour une ellipse inclinée on a:
xellipse =xe=Xmax*cos(a)
yellipse=ye=Ymax*sin(a+phi)
a est l'angle qui varie, Xmax l'amplitude et phi le déphasage

Si on dérive
dxe=-Xmax*sin(a)da
dye=Ymax*cos(a+phi)=Ymax*(cos(a)*cos(phi)-sin(a)sin(phi))*da

Là ça craint un peu, sauf si "j'invente" deux variables x et y, les mêmes que la dernière fois (x=cos(a) et y=sin(a))

ça donne donc
dxe=-Xmax*y*da
dye=Ymax*(x*cos(phi)-y*sin(phi))

Voilà le code ( c'est un peu complètement du copier-coller car pour l'instant ça ressemble à du Kryptonnien pour moi! Merci Dobro!)

Code : Tout sélectionner

; *********** initialisation ********* 
x.f = 50          ;variables  x et y qui vont permettrent de calculer xe et ye                              
y.f = 0 
xe.f =0           ;coordonnées xe et ye de l'ellipse
ye.f=0                              
da.f=0.03           ; pas ou variation de l'angle a
Xmax.f=4             ;demi axe horizontal de l'ellipse
Ymax.f=2             ;demi axe vertical de l'ellipse 
cosphi.f=Cos(3.1416/4);  cos et sin du déphasage (ici ~pi/4)
sinphi.f= Sin(3.1416/4) 
; ****************************** 


InitMouse () 


; ******** ** pour le sprite ***************** 
InitSprite () 
; *************************************** 



OpenWindow (1, 1,1, 800, 600, #PB_Window_SystemMenu , "test" ) ; on ouvre une fenetre 
OpenWindowedScreen ( WindowID (1) , 0, 0, 800, 600, 1, 1, 1) ; on met un ecran dedans !! 

; *********** on va creer le sprite !! ***************** 
CreateSprite (1,16,16) ; on cree un sprite de 16*16 
StartDrawing ( SpriteOutput (1)) ; on va dessiner dedans un rond jaune ! 
Circle (8,8, 8, RGB ($F1,$F8,$C)) ; le voila le beau rond jaune 
StopDrawing () 
; ********* le sprite est terminer on va jouer avec !! ****** 
;


Repeat ; boucle principale 

Event= WaitWindowEvent () ; on regarde si quelqu'un a cliqué sur la croix pour quitter 

; ************************** ton prog ici **************** 

For i = 1 To 1520 
ExamineMouse () 
If MouseButton (2) ; le bouton de souris droit fait quitter ! 
End 
EndIf 
x = x - y * da               ;calcul de x 
y = y + x * da              ;calcul de y 





;*************************lignes à rajouter***********************************
xe=xe-Xmax*y*da                  ;calcul de xe
ye=ye+Ymax*da*(x*cosphi-y*Sinphi)        ; calcul de ye
DisplaySprite (1, xe+500,ye+350); affichage du sprite
;*******************************************************************************



FlipBuffers () ; <---- ceci pour voir le dessin se faire +Lent !! 
;ClearScreen (0, 0, 0) ; <--- ceci efface l'ecran !! 
Next i 
; *************************************************** 

;FlipBuffers() ;<--- c'est la place normale pour le flipbuffer 
;ClearScreen(0, 0, 0); <--- c'est la place normale pour le clearscreen !! 
Until Event= #PB_Event_CloseWindow 
Return 
J'ai enlevé clearscreen juste pour faire joli!
Il ne reste plus qu'à faire un prog avec plinplin de mouvements (cycloïdes, hélices, ......)


PS>DOBRO: J'ai une formation classique à la base puis avec le temps j'ai glissé du côté obscur de la guitare: les accords(d'ailleurs, j'avais presque terminé l'algo d'un générateur d'accords...je m'y remettrai peut-être!)
Donc.. un peu de blues, de bossa, du picking de la variété quelquefois.
Je suis gaucher ça a été un peu galère pour ne plus être unplugged!
J'aspire à suivre le chemin du Voodoo Chile!

Publié : dim. 11/déc./2005 12:15
par Huitbit
Oups!
Faute de frappe, il manque des "da"
Correction:

dye=Ymax*cos(a+phi)*da=Ymax*(cos(a)*cos(phi)-sin(a)sin(phi))*da
;j'utilise l'identité remarquable cos(i+j)=cos(i)cos(j)-sin(i)sin(j)

Là ça craint un peu, sauf si "j'invente" deux variables x et y, les mêmes que la dernière fois (x=cos(a) et y=sin(a))

ça donne donc
dxe=-Xmax*y*da
dye=Ymax*(x*cos(phi)-y*sin(phi)) *da

PS>DOBRO j'ai un ampli de base Marshall VSR15
Tu dois assurer, mois ça fait presque 20 ans que j'ai commencé mais j'en ai fait 6 ans "pour de vrai", depuis, j'assure un niveau minimum en attendant le JOUR!