Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 1 sur 1
Un langage pour dessiner !
Un langage pour dessiner, ça vous tente ?

Oui 100% 100% ( 7 )
Non 0% 0% ( 0 )

Total des votes : 7
Auteur Message
Répondre en citant
Message Un langage pour dessiner ! 
Hello !

En ISN je bosse avec Turtle, un module pour faire du dessin avec Python.
J'ai voulu faire les fonctions de base en AutoIt.
Sa marche parfaitement, et je me demandais si vous vouliez une version interprété, à la manière de INTERPOL (le code de INTERPOL me sortant des yeux Shocked , je ferai un code plus propre tout en rajoutant des fonctions uniquement pour le dessin Mr. Green )

En attendant, voici Turtle.Au3 (je sais, très original comme nom Laughing )

Code:
#Include <GDIPlus.Au3>
#Include <GUIConstants.Au3>
#Include <GUIConstantsEx.Au3>

Global $X=500/2
Global $Y=500/2
Global $oX=500/2
Global $oY=500/2
Global $R=100
Global $A=0

Func _Line($1)
   Global $R=$1
   _Rotate(0)
EndFunc

Func _Rotate($1)
   Global $oA=$A
   $A+=$1
   Global $A2 = $A+225
   Global $oX=$X
   Global $oY=$Y
   Global $X = $R*Cos($A2*0.017453292519943)-$R*Sin($A2*0.017453292519943)
   Global $Y = $R*Sin($A2*0.017453292519943)+$R*Cos($A2*0.017453292519943)
   $X+=$oX
   $Y+=$oY
   If $R <> 0 Then _GDIPlus_GraphicsDrawLine($Plan, $oX, $oY, $X, $Y, $Pen)
   Global $R=0
EndFunc

Func _Goto($1, $2)
   $X=$1
   $Y=$2
   $oX=$1
   $oY=$2
EndFunc


Et un exemple:

Code:
#Include <Turtle.Au3>

HotKeySet("{ESC}", _End)

$GUI = GUICreate("Turtle", 500, 500)
GUISetState(@SW_SHOW)

_GDIPlus_Startup()
Global $Plan = _GDIPlus_GraphicsCreateFromHWND($GUI)
Global $Pen = _GDIPlus_PenCreate("0xFF000000")

For $I = 0 To 360 Step 5
   For $J = 1 To 4
     _Line(100)
     _Rotate(90)
   Next
   _Rotate(5)
Next

While GUIGetMsg() <> $GUI_EVENT_CLOSE
WEnd

Func _End()
   Exit
EndFunc

_GDIPlus_GraphicsDispose($Plan)
_GDIPlus_PenDispose($Pen)
_GDIPlus_Shutdown()


Ce qui nous donne ce magnifique dessin:



Ou encore:

Code:
#Include <Turtle.Au3>

HotKeySet("{ESC}", _End)

$GUI = GUICreate("Turtle", 500, 500)
GUISetState(@SW_SHOW)

_GDIPlus_Startup()
Global $Plan = _GDIPlus_GraphicsCreateFromHWND($GUI)
Global $Pen = _GDIPlus_PenCreate("0xFF000000")

_Goto(175, 250)

For $I = 0 To 360
   For $J = 0 To 360
     _Line(10)
     _Rotate(1)
   Next
   _Rotate(10)
Next

While GUIGetMsg() <> $GUI_EVENT_CLOSE
WEnd

Func _End()
   Exit
EndFunc

_GDIPlus_GraphicsDispose($Plan)
_GDIPlus_PenDispose($Pen)
_GDIPlus_Shutdown()


Qui nous donnes:



Donc pour l'instant 3 commandes:

Code:

Line(x): Trace un segment de x pixels.
Rotate(x): Rotation de x angles (en degrés).
Goto(x, y): Place le point d'origine en x,y.


Dylan.




______________________________________________________
Viens découvrir INTERPOL, un nouveau langage interprété !

Yahoo Messenger
Message Publicité 
PublicitéSupprimer les publicités ?


Répondre en citant
Message Un langage pour dessiner ! 
Superbe Dylan !

Okay




______________________________________________________
AffPng.exe , StringBetween.exe , Hex2Png.exe
Répondre en citant
Message Un langage pour dessiner ! 
C'est magnifique, bravo pour ce projet Laughing




______________________________________________________
Cordialement,
Hugo, qui adore programmer, jouer à Minecraft, ZT2 et FSX.
Boutons-liens :
Visiter le site web du posteur Skype
Message Un langage pour dessiner ! 


Montrer les messages depuis:
Répondre au sujet Page 1 sur 1
  



Index | créer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Copyright 2008 - 2016 // Batch