dessiner en copien une image
Publié : ven. 04/mars/2011 14:17
salut !
voilà j'ai c'rée sa comme sa pour voir
et c'est pas mal en faite
mais sa fait beaucoup trop de code
alors comment convertir sa en datasection, par exemple
voilà j'ai c'rée sa comme sa pour voir
et c'est pas mal en faite
mais sa fait beaucoup trop de code
alors comment convertir sa en datasection, par exemple
Code : Tout sélectionner
; code réaliser par monsieur dieppedalle david le mercredi 2 mars 2011 a 22 h
#Fenetre = 0
#image_2 = 2
UsePNGImageDecoder()
UseJPEG2000ImageDecoder()
UseJPEGImageDecoder()
UseTGAImageDecoder()
UseTIFFImageDecoder()
Global NewList Sprite.s()
Procedure Open_Window_0()
If OpenWindow(#Fenetre, 367, 277, 600, 500, "New window ( 0 )", #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar )
x = 10
y = 10
StartDrawing(WindowOutput(#Fenetre))
DrawAlphaImage(ImageID(#image_2), x, y)
largeur_image = ImageWidth(#image_2)
hauteur_image = ImageHeight(#image_2)
StopDrawing()
Debug largeur_image
Debug hauteur_image
largeur_actuelle_lit = x - 1
hauteur_actuelle_lit = y
StartDrawing(WindowOutput(#Fenetre))
Repeat
If largeur_actuelle_lit < x + largeur_image
largeur_actuelle_lit + 1
Else
largeur_actuelle_lit = x
hauteur_actuelle_lit + 1
EndIf
DrawingMode(#PB_2DDrawing_AlphaBlend)
couleur_pixel = Point(largeur_actuelle_lit, hauteur_actuelle_lit)
Plot(largeur_actuelle_lit, hauteur_actuelle_lit, RGB(0, 0, 255))
AddElement(Sprite())
Sprite() = "Plot(100 + " + Str(largeur_actuelle_lit) + ", " + Str(hauteur_actuelle_lit) + ", " + Str(couleur_pixel) + ")"
Until largeur_actuelle_lit = largeur_image + x And hauteur_actuelle_lit = hauteur_image + y
StopDrawing()
OpenFile(1, "sprite.txt")
ForEach Sprite()
FileSeek(1, Lof(1))
WriteStringN(1, Sprite())
Next Sprite()
CloseFile(1)
Debug largeur_actuelle_lit - x
Debug hauteur_actuelle_lit - y
Repeat ; Start of the event loop
Event = WaitWindowEvent() ; This line waits until an event is received from Windows
WindowID = EventWindow() ; The Window where the event is generated, can be used in the gadget procedures
GadgetID = EventGadget() ; Is it a gadget event?
EventType = EventType() ; The event type
;You can place code here, and use the result as parameters for the procedures
If Event = #PB_Event_Gadget
EndIf
Until Event = #PB_Event_CloseWindow ; End of the event loop
EndIf
EndProcedure
FichierParDefaut$ = "" ; Répertoire et fichier par défaut qui seront affichés
; Avec la chaîne suivante nous allons définir les filtres ("|" comme séparateur) pour l'affichage de fichier :
; 1er : "Texte (*.txt)" comme nom, ".txt" et ".bat" comme extension autorisée
; 2ème : "PureBasic (*.pb)" comme nom, ".pb" comme extension autorisée
; 3ème : "Tous les fichiers (*.*)" comme nom, "*.*" comme extension autorisée, valide pour tous les fichiers
Filtre$ = "Image PNG(*.png)|*.png;|Image JPG(*.jpg)|*.jpg;|Image GIF(*.gif)|*.gif;|Image BMP(*.bmp)|*.bmp;"
Filtre = 0 ; utiliser par défaut le premier des trois filtres possibles
Fichier$ = OpenFileRequester("Choisissez un fichier à charger", FichierParDefaut$, Filtre$, Filtre)
If Fichier$
If LoadImage(#image_2, Fichier$)
Open_Window_0()
Else
EndIf
Else
EndIf