kein blau?
Verfasst: 12.06.2006 23:01
Mit dem code soll ich testen können, wie groß z.B. 40 Pixel sind.
Irgendwie klappt das mit den Farben nicht. RGB(0,128,0) sieht zum Bespiel bestimmt nicht so aus. Und der Blauwert wird gar nicht berücksichtigt.
Probiert erstmal aus. Auf q,w,e,a,s,d verändert man die Farben für das nächste Rechteck. Mit der linken Maustaste kann man das Rechteck ziehen.
Mit der rechten löscht man das letzte Rechteck.
Irgendwie klappt das mit den Farben nicht. RGB(0,128,0) sieht zum Bespiel bestimmt nicht so aus. Und der Blauwert wird gar nicht berücksichtigt.
Probiert erstmal aus. Auf q,w,e,a,s,d verändert man die Farben für das nächste Rechteck. Mit der linken Maustaste kann man das Rechteck ziehen.
Mit der rechten löscht man das letzte Rechteck.
Code: Alles auswählen
Structure objekt
x.w
y.w
laenge.w
hoehe.w
farbe.w
EndStructure
NewList viereck.objekt()
NextElement(viereck())
#Breite=1024
#Hoehe=768
#cursor=0
If InitSprite() : EndIf
If InitMouse() : EndIf
If InitKeyboard() : EndIf
If OpenScreen(#Breite,#Hoehe,16,"Groeßenvergleich") : EndIf
CreateImage(#cursor,#Breite/80,#Hoehe/60)
StartDrawing(ImageOutput())
Box(0,0,#Breite/80,#Hoehe/60,RGB(90,70,70))
Box(0,0,#Breite/160,#Hoehe/120,RGB(30,130,150))
Line(0,0,#Breite/80,#Hoehe/60,RGB(30,130,150))
Line(2,0,#Breite/80,#Hoehe/60,RGB(30,130,150))
Line(0,2,#Breite/80,#Hoehe/60,RGB(30,130,150))
StopDrawing()
Repeat
ExamineMouse()
ExamineKeyboard()
;{ Farbe
If KeyboardPushed(#PB_Key_Q)
actrot+1
EndIf
If KeyboardPushed(#PB_Key_W)
actgruen+1
EndIf
If KeyboardPushed(#PB_Key_E)
actblau+1
EndIf
If KeyboardPushed(#PB_Key_A)
actrot-1
EndIf
If KeyboardPushed(#PB_Key_S)
actgruen-1
EndIf
If KeyboardPushed(#PB_Key_D)
actblau-1
EndIf
If MouseWheel()<0
actrot-1
actblau-1
actgruen-1
EndIf
If MouseWheel()>0
actrot+1
actblau+1
actgruen+1
EndIf
If actrot<0 : actrot=0 : EndIf
If actblau<0 : actblau=0 : EndIf
If actgruen<0 : actgruen=0 : EndIf
If actrot>155 : actrot=155 : EndIf
If actblau>155 : actblau=155 : EndIf
If actgruen>155 : actgruen=155 : EndIf
;}
If MouseButton(1)
AddElement(viereck())
xjetzt=MouseX()
yjetzt=MouseY()
viereck()\x=xjetzt
viereck()\y=yjetzt
viereck()\farbe=RGB(actrot,actgruen,actblau)
Repeat
viereck()\laenge=MouseX()-xjetzt
viereck()\hoehe=MouseY()-yjetzt
ExamineMouse()
ClearScreen(0,0,0)
StartDrawing(ScreenOutput())
DrawingMode(1)
ForEach viereck()
Box(viereck()\x,viereck()\y,viereck()\laenge,viereck()\hoehe,viereck()\farbe)
Locate(viereck()\x,viereck()\y-15)
FrontColor(Red(viereck()\farbe),Green(viereck()\farbe),Blue(viereck()\farbe))
DrawText(Str(viereck()\laenge))
Locate(viereck()\x-5-TextLength(Str(viereck()\hoehe)),viereck()\y)
FrontColor(Red(viereck()\farbe),Green(viereck()\farbe),Blue(viereck()\farbe))
DrawText(Str(viereck()\hoehe))
Next
DrawImage(UseImage(#cursor),MouseX(),MouseY())
StopDrawing()
FlipBuffers()
Until MouseButton(1)=0
EndIf
If MouseButton(2) And loeschbereit=1
LastElement(viereck())
DeleteElement(viereck())
EndIf
loeschbereit=0
If MouseButton(2)=0
loeschbereit=1
EndIf
ClearScreen(0,0,0)
StartDrawing(ScreenOutput())
DrawingMode(1)
ForEach viereck()
Box(viereck()\x,viereck()\y,viereck()\laenge,viereck()\hoehe,viereck()\farbe)
Locate(viereck()\x,viereck()\y-15)
FrontColor(Red(viereck()\farbe),Green(viereck()\farbe),Blue(viereck()\farbe))
DrawText(Str(viereck()\laenge))
Locate(viereck()\x-5-TextLength(Str(viereck()\hoehe)),viereck()\y)
FrontColor(Red(viereck()\farbe),Green(viereck()\farbe),Blue(viereck()\farbe))
DrawText(Str(viereck()\hoehe))
Next
DrawImage(UseImage(#cursor),MouseX(),MouseY())
Locate(20,20)
FrontColor(155,0,0)
DrawText(Str(actrot))
Locate(60,20)
FrontColor(0,155,0)
DrawText(Str(actgruen))
Locate(100,20)
FrontColor(0,0,155)
DrawText(Str(actblau))
Locate(140,20)
FrontColor(155,155,155)
DrawText("ESC-Ende")
StopDrawing()
FlipBuffers()
Until KeyboardPushed(#PB_Key_Escape)
End