Dessiner un engrenage

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
cederavic
Messages : 1338
Inscription : lun. 09/févr./2004 23:38
Localisation : Bordeaux

Message par cederavic »

ben c'est pas moi qui fait la division par 0, c'est vous en descandant div a 0 :lol:
bon je corrige

voilas, j'aime bien aussi comme ça :)

Code : Tout sélectionner

#PI = 3.14159265

InitSprite()
InitKeyboard()

OpenScreen(1280, 1024, 32, "")

Procedure Engrenage(x.l, y.l, r1.f, r2.f, p.f, an.f, pr.f)
  a.f
  a2.f
 
  StartDrawing(ScreenOutput())
    Repeat
      
      Repeat
        
        a + pr
    
        If b
          xp1 = r1 * Cos(a + an) + x
          yp1 = r1 * Sin(a + an) + y
        Else
          xp1 = r2 * Cos(a + an) + x
          yp1 = r2 * Sin(a + an) + y
        EndIf

      
        Plot(xp1, yp1, RGB(200, 180, 255))
      Until a > a2 + p
      If b
        xp2 = r2 * Cos(a + an) + x
        yp2 = r2 * Sin(a + an) + y
      Else
        xp2 = r1 * Cos(a + an) + x
        yp2 = r1 * Sin(a + an) + y
      EndIf
      LineXY(xp1, yp1, xp2, yp2, RGB(200, 180, 255))
      
      a2.f + p
      a.f = a2
      
      b + 1
      If b > 1 : b = 0 : EndIf
    Until a2 >= 2* #PI
    
  StopDrawing()

EndProcedure

div = 8

Repeat

  ExamineKeyboard()
  If KeyboardReleased(#PB_Key_Up)   : div + 1 : EndIf
  If KeyboardReleased(#PB_Key_Down) : div - 1 : EndIf
  
  If div <= 0 : div = 1 : EndIf
  
  ClearScreen(0, 0, 0)
  
  a.f + 0.01
  If a > 2 * #Pi : a = 0 : EndIf
  
  Engrenage(640, 512, 400, 500, #pi / div, a, 0.001)
  Engrenage(640, 512, 200, 300, #pi / (div + 2), -a, 0.001)
  Engrenage(640, 512, 50 , 100, #pi / (div + 6), a, 0.001)
  
  FlipBuffers()

Until KeyboardPushed(#PB_Key_Escape)
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Message par Le Soldat Inconnu »

c'est extra ton truc Cederavic :D

allez, je mets les 3 sur codes FR, pas d'objection ?

Vive les rois de la dentition :mrgreen:
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Avatar de l’utilisateur
Chris
Messages : 3731
Inscription : sam. 24/janv./2004 14:54
Contact :

Message par Chris »

Cederavic a écrit :ben c'est pas moi qui fait la division par 0, c'est vous en descandant div a 0
Qui c'est, le programmeur ? C'est toi, non ?

Nous, on est que des pov'z'utilisateurs :lol:

Chris :)
Avatar de l’utilisateur
cederavic
Messages : 1338
Inscription : lun. 09/févr./2004 23:38
Localisation : Bordeaux

Message par cederavic »

erf double poste, dsl...
pas de probleme, mais je te laisse faire les entete :P
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Message par Le Soldat Inconnu »

ben non, j'ai suprrimé le doublon, hihihi

pour le lissage, je regarde mais ça va être chaud. pas impossible mais chaud.
au boulot, je retrouve les manches, le clavier et hop :lol:
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Avatar de l’utilisateur
cederavic
Messages : 1338
Inscription : lun. 09/févr./2004 23:38
Localisation : Bordeaux

Message par cederavic »

Chris a écrit :
Cederavic a écrit :ben c'est pas moi qui fait la division par 0, c'est vous en descandant div a 0
Qui c'est, le programmeur ? C'est toi, non ?

Nous, on est que des pov'z'utilisateurs :lol:

Chris :)
meuh...
ok j'avai oublier le : Je ne suis en aucun cas responsable des dommage que ce code source peut créer en cas de movaise utilisation ou autre. En lançant ce code source, vous prenez toute responsabilité. :lol:
Avatar de l’utilisateur
Flype
Messages : 2431
Inscription : jeu. 29/janv./2004 0:26
Localisation : Nantes

Message par Flype »

je vous adore :D
Image
Avatar de l’utilisateur
Chris
Messages : 3731
Inscription : sam. 24/janv./2004 14:54
Contact :

Message par Chris »

Je ne suis en aucun cas responsable des dommage que ce code source peut créer en cas de movaise utilisation ou autre. En lançant ce code source, vous prenez toute responsabilité
.

Le dernier qui nous a dit ça a effacé le disque de Denis et le mien :lol:

Chris :)
Avatar de l’utilisateur
cederavic
Messages : 1338
Inscription : lun. 09/févr./2004 23:38
Localisation : Bordeaux

Message par cederavic »

Chris a écrit :
Je ne suis en aucun cas responsable des dommage que ce code source peut créer en cas de movaise utilisation ou autre. En lançant ce code source, vous prenez toute responsabilité
.

Le dernier qui nous a dit ça a effacé le disque de Denis et le mien :lol:

Chris :)
MDR!!!!!! :lol: :lol: :lol:

ps : MDR = Mort De Rire et non Merd**** hein Régis, ça y est c'est rentrer? :lol: (joke)
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message par nico »

Un engrenage qui fait foirer window, on aura tout vu!! :lol:

Pourtant sûr qu'il lui en manque un :lol:
Avatar de l’utilisateur
Flype
Messages : 2431
Inscription : jeu. 29/janv./2004 0:26
Localisation : Nantes

Message par Flype »

oui mais lequel ? :roll: :lol: :D
Image
Avatar de l’utilisateur
cederavic
Messages : 1338
Inscription : lun. 09/févr./2004 23:38
Localisation : Bordeaux

Message par cederavic »

sans doute le principal :wink: :D
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Message par Le Soldat Inconnu »

celui qui permet de passer la première, reste bloqué en marche arrière, sal...rie :mrgreen:
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Dr. Dri
Messages : 2527
Inscription : ven. 23/janv./2004 18:10

Message par Dr. Dri »

...
Dernière modification par Dr. Dri le lun. 10/oct./2005 9:10, modifié 1 fois.
Avatar de l’utilisateur
cederavic
Messages : 1338
Inscription : lun. 09/févr./2004 23:38
Localisation : Bordeaux

Message par cederavic »

Dr. Dri a écrit :super ton code cederavic, ce qui serait bien ce serait d'en faire un screensaver ou plusieurs engrenages s'entraineraient les uns les autres avec leurs vilaines dents ^^

Dri

PS. dans la série des suggestions foireurs j'ai nommé : Moi même ^^
merci :)
pour le screensaver, regarde mon juste avant celui la (page 1), si tu veut le modifier pour en faire un, no pb :)
Répondre