Seite 4 von 6

Verfasst: 27.02.2009 16:50
von Kaeru Gaman
immerhin schon mal zwei Taschenuhren-Träger...
noch jemand? :D

Verfasst: 27.02.2009 18:35
von NicknameFJ
@Stargate

Danke für Deine Desktopuhr

Habe mir erlaubt Sie etwas zu ändern, ich hoffe ich darf Sie so verwenden

Code: Alles auswählen



Procedure Real255(Wert)
 If Wert < 0
  ProcedureReturn 0
 ElseIf Wert > 255
  ProcedureReturn 255
 Else
  ProcedureReturn Wert
 EndIf
EndProcedure

Procedure ColorBrightness(Color, Brightness.f)
 Protected R, G, B, RGB
 R = Real255(   Red(Color) + Brightness*255 )
 G = Real255( Green(Color) + Brightness*255 )
 B = Real255(  Blue(Color) + Brightness*255 )
 ProcedureReturn RGB(R,G,B)
EndProcedure

Procedure.f Wisch(Radius)
 ProcedureReturn Pow(2,-Pow((200-Radius)/20,2))
EndProcedure


Global Color = $F0E0D0

Global Leer


LoadFont(1, "Arial", 24,#PB_Font_Bold)
LoadFont(2,"Arial",18)

CreateImage(1, 400, 400)


Global Dim Rom.s(11)

rom(0) = "XII"
Rom(1) = "I"
rom(2) = "II"
rom(3) = "III"
rom(4) = "IV"
rom(5) = "V"
rom(6) = "VI"
rom(7) = "VII"
rom(8) = "VIII"
rom(9) = "IX"
rom(10) = "X"
rom(11) = "XI"



Procedure CreateClock()
t = 12
Leer = ColorBrightness(Color, Wisch(200)*0.4111-1.0)
StartDrawing(ImageOutput(1))
 DrawingMode(1)
 DrawingFont(FontID(1))
 Box(0,0,400,400,Leer)
 For n = 200 To 100 Step -1
  Circle(200,200,n,ColorBrightness(Color, Wisch(n)*0.4-1.0))
 Next
 For w = -84 To 270 Step 6
  x = 190*Cos(w*#PI/180)+200
  y = 190*Sin(w*#PI/180)+200
  Circle(x,y,3,ColorBrightness(Color, -0.5))
 Next
 For w = -60 To 270 Step 30
  For n = 190 To 170 Step -1
   x = n*Cos(w*#PI/180)+200
   y = n*Sin(w*#PI/180)+200
   Circle(x,y,3,ColorBrightness(Color, Wisch(n)*0.4-0.6))
  Next
  x = 140*Cos(w*#PI/180)+200
  y = 140*Sin(w*#PI/180)+200
  t-1

  DrawText(x-TextWidth(rom(T))/2,y-TextHeight(rom(T))/2, rom(T), ColorBrightness(Color, -0.6))
  
 Next
 DrawingFont(FontID(2))
 Text$ = "bayerische Uhr"
 
 DrawText((200-TextWidth(Text$)/2),130,Text$,ColorBrightness(Color, -0.6))

 
StopDrawing()
EndProcedure
CreateClock()


CreateImage(0, 400, 400)

Procedure UpdateImage(Time)
 ResizeImage(0, 400, 400, #PB_Image_Smooth)
 StartDrawing(ImageOutput(0))
  DrawImage(ImageID(1),0,0)
  For r = 6 To 4 Step -1
   For n = 80 To 0 Step -1
    q.f = Hour(Time)*5+(Minute(Time)/60*5)

    q = 120-q
    x = Sin(q/30*#PI)*n+200
    y = -Cos(q/30*#PI)*n+200
    Circle(x,y,r,ColorBrightness(Color, -r*0.1-0.1))
   Next
  Next
  For r = 4 To 2 Step -1
   For n = 130 To 0 Step -1
    q.f = 60-Minute(Time)
    x = Sin(q/30*#PI)*n+200
    y = -Cos(q/30*#PI)*n+200
    Circle(x,y,r,ColorBrightness(Color, -r*0.1-0.3))
   Next
  Next
  For r = 3 To 1 Step -1
   For n = 170 To 0 Step -1
    q.f = 60-Second(Time)
    x = Sin(q/30*#PI)*n+200
    y = -Cos(q/30*#PI)*n+200
    Circle(x,y,r,ColorBrightness(Color, -r*0.1-0.2))
   Next
  Next
 StopDrawing()
 ResizeImage(0, 200, 200, #PB_Image_Smooth)
 SetGadgetState(0, ImageID(0))

EndProcedure


OpenWindow(1, 0, 0, 200, 200, "Desktop Uhr", #PB_Window_Invisible)
OpenWindow(0, 780, 540, 200, 200, "Desktop Uhr", #PB_Window_BorderLess|#PB_Window_ScreenCentered, WindowID(1))
 ImageGadget(0,0,0, 200, 200, ImageID(0))
StickyWindow(0, 1)

CreatePopupMenu(1)
 MenuItem(1, "Farbe")
 MenuBar()
 MenuItem(10, "Beenden")

SetWindowLong_(WindowID(0), #GWL_EXSTYLE, GetWindowLong_(WindowID(0),#GWL_EXSTYLE)|#WS_EX_LAYERED)
SetLayeredWindowAttributes_(WindowID(0), Leer, 255, #LWA_ALPHA|1)

WindowX = WindowX(0)
WindowY = WindowY(0)

Time = Date()

Mouse.POINT
LastMouse.POINT

Repeat

 LastMouse\x = Mouse\x
 LastMouse\y = Mouse\y
 Mouse\x = DesktopMouseX()
 Mouse\y = DesktopMouseY()
 MoveX = LastMouse\x-Mouse\x
 MoveY = LastMouse\y-Mouse\y

 If GetAsyncKeyState_(#VK_LBUTTON)
  MouseL+1
 Else
  MouseL=0
  Scroll=0
 EndIf
 If Mouse\X>WindowX And Mouse\X<WindowX+200 And Mouse\Y>WindowY And Mouse\Y<WindowY+200 And MouseL=1
  Scroll=1
 EndIf
 If Scroll
  WindowX-MoveX
  WindowY-MoveY
 EndIf
 ResizeWindow(0,WindowX,WindowY,#PB_Ignore,#PB_Ignore)


 If Time <> Date()
  Time = Date()
  UpdateImage(Time)
 EndIf
 Event = WaitWindowEvent(100)
 Select Event
  Case #PB_Event_Gadget         
   Select EventGadget()
    Case 0
     Select EventType()
      Case #PB_EventType_RightClick
       DisplayPopupMenu(1, WindowID(0))
     EndSelect
   EndSelect
  Case #PB_Event_Menu       
   Select EventMenu()
    Case 1
     Color = ColorRequester(Color)
     CreateClock()
     SetLayeredWindowAttributes_(WindowID(0), Leer, 255, #LWA_ALPHA|1)
   Case 10
     End
   EndSelect
 EndSelect
ForEver 


Verfasst: 27.02.2009 18:38
von Regenduft
Sollte ich's irgendwann mal zu 'nem Garten schaffen, will ich eine Blumenuhr. 8)

Hatte ich mal als Kind auf irgendeiner Messe gesehen und war begeistert! :D

Verfasst: 27.02.2009 19:43
von Andesdaf
@Stargate: Deine Desktopuhr ist cool! 8)
@NicknameFJ: Öhmm... die Uhr ist spiegelverkehrt. :?

Verfasst: 27.02.2009 19:50
von NicknameFJ
@Andensdaf :D (oder so ähnlich)

Auf dem Ziffernblatt steht auch warum !

Gucksts Du hier:

http://www.bayerisch-schenken.de/lshop, ... 30530,.htm

Verfasst: 27.02.2009 20:05
von Andesdaf
achso... sachen gibt's...
Na dann viel Spaß mit der bayrischen Uhr... :D

Verfasst: 27.02.2009 20:07
von ts-soft
Die Uhr von Stargate ist ja sehr schön, aber wenn ich die Farbe ändere, wird
sie transparent und hat nur einen Zeiger :(

Verfasst: 27.02.2009 20:26
von Little John
o.g. Link hat geschrieben:In Bayern gehen die Uhren anders ! Diese rückwärts laufende Uhr (Durchmesser ca. 20 cm), auch als Rückwärtsuhr bekannt, ist auf einem hochwertigen Prozellanteller montiert !
... jo, und die Prozellanteller heißen anderswo auch irgendwie anders. :mrgreen:

Gruß, Little John

Verfasst: 27.02.2009 20:29
von bernd
http://www.trias-uhren.de/popup_image.p ... 86/imgID=0

Allerdings habe ich die mit einem weißen Zifferblatt.

Seit 7 - 8 Jahren habe ich nur noch Automatikuhren am Handgelenk.

Wenn ich mal eine handvoll Dollar übrig habe werde ich mir
eine NOMOS von Glashütte anschaffen. Ist eine sehr flache
Automatikuhr mit einem super zeitlosen Design.

bis bald bernd

Verfasst: 27.02.2009 20:31
von Kaeru Gaman
das Prinzip von Automatikuhren finde ich schön und praktisch und interessant - aber leider für Taschenuhren überhaupt nicht praktikabel.