Illusion..une montre... special
Re: une montre... special
faudra que je le fasse en 3D
ça ferai un labyrhinte donc les murs changerai de place
en fonction de l'heure
on se promènerai dedans
ça ferai un labyrhinte donc les murs changerai de place
en fonction de l'heure
on se promènerai dedans
Re: une montre... special
J'ai reussi en louchant. Mais la methode reste a ameliorer
http://HexaScrabble.com/
!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.00 - 64 bits
!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.00 - 64 bits
Re: une montre... special
bonsoir
excellent.. merci, manque plus que les gloutons
Cordialement
excellent.. merci, manque plus que les gloutons
Cordialement
Re: une montre... special
@SPH
en fait la derniere version du code posté contien une procedure 'animation'
qui de temps en temps inverse le sens des sprites
peut etre qu'il y a un sens ou tu verrai mieux ...
en principe sans faire d'effort , tu te recule d'un ou deux metres de ton ecran
les chiffres apparaissent ...
je ne pense pas qu'il faut forcer, ou loucher , d'un seul oeil on voit donc ..
comme le dit Ar-s , le cerveau fait le travail .. ou pas ..
personnellement les images que certains voit dans des miriades de points colorés, chez moi ça ne fonctionne pas ...
mais par contre, là, ce type d'image, je le voit bien
je pense que ça doit etre en fonction de chacun ....
change la couleur des sprites, peut etre que tu es moins sensible au Vert
j'ai gardé le Vert pour le coté "Geek" de l'affaire
une vielle réminiscence des monitors Vert / ou ambre des années 75
mon clavier est retro eclairé Vert , mon bureau a beaucoup d'images verte , mon site tire sur le Vert , l'interieur de la voiture est vert wasabi
je crois que ... j'aime le vert
en fait la derniere version du code posté contien une procedure 'animation'
qui de temps en temps inverse le sens des sprites
peut etre qu'il y a un sens ou tu verrai mieux ...
en principe sans faire d'effort , tu te recule d'un ou deux metres de ton ecran
les chiffres apparaissent ...
je ne pense pas qu'il faut forcer, ou loucher , d'un seul oeil on voit donc ..
comme le dit Ar-s , le cerveau fait le travail .. ou pas ..
personnellement les images que certains voit dans des miriades de points colorés, chez moi ça ne fonctionne pas ...
mais par contre, là, ce type d'image, je le voit bien
je pense que ça doit etre en fonction de chacun ....
change la couleur des sprites, peut etre que tu es moins sensible au Vert
j'ai gardé le Vert pour le coté "Geek" de l'affaire
une vielle réminiscence des monitors Vert / ou ambre des années 75
mon clavier est retro eclairé Vert , mon bureau a beaucoup d'images verte , mon site tire sur le Vert , l'interieur de la voiture est vert wasabi
je crois que ... j'aime le vert
Re: une montre... special
Dobro> un bon vert et ça repart
Configuration : Tower: Windows 10 (Processeur: i7 "x64") (Mémoire: 16Go) (GeForce GTX 760 - 2Go) - PureBasic 5.72 (x86 et x64)
Re: une montre... special
ouaip bonne idée , j'y vais
Re: une montre... special
je te vois bien avec un bon "verre" et ta gratte
Configuration : Tower: Windows 10 (Processeur: i7 "x64") (Mémoire: 16Go) (GeForce GTX 760 - 2Go) - PureBasic 5.72 (x86 et x64)
Re: une montre... special
je viens de ré éditer le code ci plus haut
parceque sous Seven j'avais un drole de comportement si on essayais de mettre la fenetre plus haut que le haut de l'ecran
la fenetre se redimenssionne !
j'ai donc réactivé le callback +timer , pour redimensionner la fenetre , de la sorte elle reprendra sa forme au bout de 2 secondes
parceque sous Seven j'avais un drole de comportement si on essayais de mettre la fenetre plus haut que le haut de l'ecran
la fenetre se redimenssionne !
j'ai donc réactivé le callback +timer , pour redimensionner la fenetre , de la sorte elle reprendra sa forme au bout de 2 secondes
Re: une montre... special
Dobro a écrit :c'est curieux , moi ça ne me pose aucun soucis !
je lis instantanément l'heure ...
auriez vous des problemes de vue ?
ça me demande de l'effort car je vois l'heure mais trop furtivement, du coup je ne suis pas sûr de ce que je vois et je suis obligé de m'y reprendre à plusieurs fois ce qui est trop pénible pour moi.
Re: une montre... special
bon d'un autre coté le fait que tout le monde ne puisse le lire etait le but de cette montre
pour que ce soit lisible il reste la possibilité de clicker sur l'ecran
ou de colorer le sprite #block2 d'une couleurs differente
mais ça perdrai de son interet ..
enfin .. c'est surtout le concept graphique qui est intéressant ici
pour que ce soit lisible il reste la possibilité de clicker sur l'ecran
ou de colorer le sprite #block2 d'une couleurs differente
mais ça perdrai de son interet ..
enfin .. c'est surtout le concept graphique qui est intéressant ici
Re: une montre... special
ya un truc que je ne comprends pas
avec le code de la montre ci dessus
si je remplace cette ligne qui marche bien( charge une image qui fait 16x16 )
par :
(sprite de 16x16 avec ligne oblique dedans )
ça ne marche pas !!
je veux dire, l'image fait 16x16 et représente une ligne oblique
hors , si je la remplace par un sprite 16x16 avec une ligne oblique dedans
celle_ci apparait plus petite ...
il y aurai un bug quelques part que ça m’étonnerai pas ...
ou j'ai loupé un truc ?
avec le code de la montre ci dessus
si je remplace cette ligne qui marche bien( charge une image qui fait 16x16 )
Code : Tout sélectionner
;LoadSprite(#block,"E:\Dobro\PureBasic\dobro\Dobro_creation\montre\blockA.png",#PB_Sprite_Texture)
Code : Tout sélectionner
CreateSprite(#block,16,16, #PB_Sprite_Texture)
StartDrawing(SpriteOutput(#block))
LineXY(0,0,16,16,#green)
StopDrawing()
ça ne marche pas !!
je veux dire, l'image fait 16x16 et représente une ligne oblique
hors , si je la remplace par un sprite 16x16 avec une ligne oblique dedans
celle_ci apparait plus petite ...
il y aurai un bug quelques part que ça m’étonnerai pas ...
ou j'ai loupé un truc ?
Re: une montre... special
j'ai compris le probleme
c'est parcequ'en mode :
OpenWindowedScreen(windowid(#window),1 ,1,256,440,1,0,0)
les sprites sont réduit en fonction de la taille de l'ecran , mais pas les images sprite !! ( loadsprite() )
en fait les sprite ( createsprite() ) semblent reduit 2 fois !! alors que les sprites loadsprite() semblent reduit 1 fois
en mode
OpenWindowedScreen(windowid(#window),1 ,1,256,440,0,0,0)
ça fonctionne
enfin quoiqu'il en soit il y a une difference de traitement entre le sprite fabriqué ( create sprite )
et le sprite loadé ( loadsprite() )
peut etre bien un bug de OpenWindowedScreen() en fait !!
c'est parcequ'en mode :
OpenWindowedScreen(windowid(#window),1 ,1,256,440,1,0,0)
les sprites sont réduit en fonction de la taille de l'ecran , mais pas les images sprite !! ( loadsprite() )
en fait les sprite ( createsprite() ) semblent reduit 2 fois !! alors que les sprites loadsprite() semblent reduit 1 fois
en mode
OpenWindowedScreen(windowid(#window),1 ,1,256,440,0,0,0)
ça fonctionne
enfin quoiqu'il en soit il y a une difference de traitement entre le sprite fabriqué ( create sprite )
et le sprite loadé ( loadsprite() )
peut etre bien un bug de OpenWindowedScreen() en fait !!
Re: une montre... special
Salut tous,
une adaption du code de dobro, sans sprites :
une adaption du code de dobro, sans sprites :
Code : Tout sélectionner
;
Enumeration
#window
#imgad
#im0
#im1
#im2
#im3
#font1
#timer
EndEnumeration
;
Global Dim heure.i(25,18)
Global Dim minut.i(25,18)
Global flagh.i,flagm.i
;
Procedure DrawTime()
Protected x.i,y.i
CreateImage(#im3,40,20)
StartDrawing(ImageOutput(#im3))
DrawingFont(FontID(#font1))
If Hour(Date()) <10
DrawText(1,1,"0"+Str(Hour(Date())),#Green)
Else
DrawText(1,1,Str(Hour(Date())),#Green)
EndIf
If Minute(Date())<10
DrawText(20,1,"0"+Str(Minute(Date())),#Green)
Else
DrawText(20,1,Str(Minute(Date())),#Green)
EndIf
For y=0 To 16
For x=1 To 17
heure(x,y)=Point(x,y)
minut(x,y)=Point(x+19,y)
Next x
Next y
StopDrawing()
;
FreeImage(#im3)
EndProcedure
Procedure drawmotif()
Protected x.i,y.i
;
StartDrawing(ImageOutput(#im0))
Box(0,0,270,350,#Black)
;
For y=0 To 12
For x=2 To 18
If heure(x,y)>0
DrawImage(ImageID(#im2), (x*16)-30,(y*16)-30)
Else
If flagh =0
DrawImage(ImageID(#im1),(x*16)-30,(y*16)-30)
EndIf
EndIf
Next x
Next y
;
For y=2 To 12
For x=2 To 18
If minut(x,y)>0
DrawImage(ImageID(#im2),(x*16)-31,(y*16)+145)
Else
If flagm=0
DrawImage(ImageID(#im1),(x*16)-31,(y*16)+145)
EndIf
EndIf
Next x
Next y
;
StopDrawing()
;
SetGadgetState(#imgad,ImageID(#im0))
EndProcedure
;
;-debut
;
OpenWindow(#window, 0, 0, 270, 350, "TimeMotif", #PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_TitleBar|#PB_Window_ScreenCentered)
ImageGadget(#imgad,0,0,270,350,0)
;
CreateImage(#im1,16,16);,32|#PB_Image_Transparent) ; \
StartDrawing(ImageOutput(#im1))
Line(0,0,16,16,#Green)
Line(1,0,16,16,#Green)
Line(0,1,16,16,#Green)
StopDrawing()
;
CreateImage(#im2,16,16);,32|#PB_Image_Transparent) ; /
StartDrawing(ImageOutput(#im2))
LineXY(0,16,16,0,#Green)
LineXY(1,16,15,0,#Green)
LineXY(0,15,16,1,#Green)
StopDrawing()
;
CreateImage(#im0,270,350)
;
LoadFont(#font1, "Courier", 10,#PB_Font_Bold)
;
Drawtime()
drawmotif()
;
AddWindowTimer(#window,#timer,1000)
;
Repeat
Event = WaitWindowEvent()
Select event
Case #PB_Event_Gadget
If EventGadget()=#imgad
If EventType()=#PB_EventType_LeftClick
flagh= (Not flagh)
flagm= (Not flagm)
drawmotif()
EndIf
EndIf
Case #PB_Event_Timer
If EventTimer() = #timer
drawtime()
drawmotif()
EndIf
EndSelect
Until Event = #PB_Event_CloseWindow
Re: une montre... special
content que ça fasse des émules
2 choses cependant
l'affichage n'est pas en entier chez moi (l'heure est coupée a droite)
et lorsqu'on click sur la fenetre l'heure apparait, mais reste ensuite en clair
2 choses cependant
l'affichage n'est pas en entier chez moi (l'heure est coupée a droite)
et lorsqu'on click sur la fenetre l'heure apparait, mais reste ensuite en clair
Re: une montre... special
Merci, je trouve le résultat plus "lisible" avec ce code.zaphod a écrit :Salut tous,
une adaption du code de dobro, sans sprites :
Code : Tout sélectionner
; Enumeration #window #imgad #im0 #im1 #im2 #im3 #font1 #timer EndEnumeration ; Global Dim heure.i(25,18) Global Dim minut.i(25,18) Global flagh.i,flagm.i ; Procedure DrawTime() Protected x.i,y.i CreateImage(#im3,40,20) StartDrawing(ImageOutput(#im3)) DrawingFont(FontID(#font1)) If Hour(Date()) <10 DrawText(1,1,"0"+Str(Hour(Date())),#Green) Else DrawText(1,1,Str(Hour(Date())),#Green) EndIf If Minute(Date())<10 DrawText(20,1,"0"+Str(Minute(Date())),#Green) Else DrawText(20,1,Str(Minute(Date())),#Green) EndIf For y=0 To 16 For x=1 To 17 heure(x,y)=Point(x,y) minut(x,y)=Point(x+19,y) Next x Next y StopDrawing() ; FreeImage(#im3) EndProcedure Procedure drawmotif() Protected x.i,y.i ; StartDrawing(ImageOutput(#im0)) Box(0,0,270,350,#Black) ; For y=0 To 12 For x=2 To 18 If heure(x,y)>0 DrawImage(ImageID(#im2), (x*16)-30,(y*16)-30) Else If flagh =0 DrawImage(ImageID(#im1),(x*16)-30,(y*16)-30) EndIf EndIf Next x Next y ; For y=2 To 12 For x=2 To 18 If minut(x,y)>0 DrawImage(ImageID(#im2),(x*16)-31,(y*16)+145) Else If flagm=0 DrawImage(ImageID(#im1),(x*16)-31,(y*16)+145) EndIf EndIf Next x Next y ; StopDrawing() ; SetGadgetState(#imgad,ImageID(#im0)) EndProcedure ; ;-debut ; OpenWindow(#window, 0, 0, 270, 350, "TimeMotif", #PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_TitleBar|#PB_Window_ScreenCentered) ImageGadget(#imgad,0,0,270,350,0) ; CreateImage(#im1,16,16);,32|#PB_Image_Transparent) ; \ StartDrawing(ImageOutput(#im1)) Line(0,0,16,16,#Green) Line(1,0,16,16,#Green) Line(0,1,16,16,#Green) StopDrawing() ; CreateImage(#im2,16,16);,32|#PB_Image_Transparent) ; / StartDrawing(ImageOutput(#im2)) LineXY(0,16,16,0,#Green) LineXY(1,16,15,0,#Green) LineXY(0,15,16,1,#Green) StopDrawing() ; CreateImage(#im0,270,350) ; LoadFont(#font1, "Courier", 10,#PB_Font_Bold) ; Drawtime() drawmotif() ; AddWindowTimer(#window,#timer,1000) ; Repeat Event = WaitWindowEvent() Select event Case #PB_Event_Gadget If EventGadget()=#imgad If EventType()=#PB_EventType_LeftClick flagh= (Not flagh) flagm= (Not flagm) drawmotif() EndIf EndIf Case #PB_Event_Timer If EventTimer() = #timer drawtime() drawmotif() EndIf EndSelect Until Event = #PB_Event_CloseWindow
P.S : Le résultat reste en claire sauf si tu refaits un clique gauche dedans.
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels