Malprogramm
Übersicht

![]() |
mkBetreff: Malprogramm |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich möchte ein Malprogramm proggen.
Wenn man die linke Maustaste gedrückt hält, soll das programm einen weissen Punkt an MouseX und MouseY zeichnen. Damit soll man malen, es soll aber immer ein roter punkt an mx und my sein, mit dem man nicht malt. Wisst ihr was ich meine? Ich hoffe ihr könnt mir helfen. |
||
Pentium 4 2,6 GHz | 256 MB RAM | 120 GB Festplatte | DVD-ROM Laufwerk (48 Fach) |
I am a noob ![]() www.marcelkroener.de.vu Mein Arcor Webspace =) |
![]() |
Artemis |
![]() Antworten mit Zitat ![]() |
---|---|---|
Dann musst du halt das gemalte in ein image tuen, das image malen und dann den roten punkt drufftuen an mousex,mousey-stelle.
die veränderungen, musst du in dem image speichern. |
||
![]() |
Christian |
![]() Antworten mit Zitat ![]() |
---|---|---|
Tag!
Ja, ich weiß was du meinst. Wenn du uns jetzt noch dein Problem schildern würdest, können wir dir gerne helfen. Gruß Christian |
||
![]() |
simi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi,
du brauchst folgende Befehle: CreateImage, mit dem erstellst du die zeichenfläche auf die du malst.... ImageBuffer und BackBuffer, du malst den roten Punkt in den BackBuffer, und den weissen Punkt in den InageBuffer.... Da du den BackBuffer immer wieder löschtst, bleibt der Rote Punkt nie. Das Image, in das du den weissen Punkt malst, zeichnest du dann immer auf den Bildschirm @ Christian: überlege ein bisschen, bevor du sinnlose sachen pstest.... ![]() |
||
![]() |
mk |
![]() Antworten mit Zitat ![]() |
---|---|---|
Und wie binde ich die Befehle richtig in meinen Code ein? ich hab noch keine ahnung von imagebuffer und createimage
Hier ist mein Code: ![]() Code: [AUSKLAPPEN] Graphics 800,600,0,2
ueberschrift=LoadFont ("Arial",40,0,0,1) SetFont ueberschrift img=CreateImage (300,300) SetBuffer ImageBuffer(img) HidePointer Global art=1 While Not KeyHit (1) Color 255,255,255 mx=MouseX() my=MouseY() mz=MouseZ() art=mz If art=4 Then art=art-1 If art=0 Then art=art+1 If MouseDown (1) And art=1 Then Plot mx,my If MouseDown (1) And art=2 Then Rect mx,my,3,3 If MouseDown (1) And art=3 Then Rect mx,my,6,6 SetBuffer BackBuffer() Text 275,10,"Malprogramm" Color 255,0,0 DrawImage img,0,0 Rect mx,my,3,3 Flip Cls Wend |
||
Pentium 4 2,6 GHz | 256 MB RAM | 120 GB Festplatte | DVD-ROM Laufwerk (48 Fach) |
I am a noob ![]() www.marcelkroener.de.vu Mein Arcor Webspace =) |
![]() |
simi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Nicht schlecht, der Ansatz...
Code: [AUSKLAPPEN] Graphics 800,600,0,2 SetBuffer BackBuffer() ueberschrift=LoadFont ("Arial",40,0,0,1) SetFont ueberschrift img=CreateImage (300,300) HidePointer Global art=1 While Not KeyHit (1) cls mx=MouseX() my=MouseY() mz=MouseZ() art=art+mz if art > 3 then art=1 if art < 1 then art=3 If MouseDown (1)then SetBuffer ImageBuffer(Img) Color 255,255,255 if art=1 Then Plot mx,my If art=2 Then Rect mx,my,3,3 If art=3 Then Rect mx,my,6,6 SetBuffer BackBuffer() end if Text 275,10,"Malprogramm - Art= "+art DrawImage img,0,0 Color 255,0,0 Rect mx,my,3,3 Flip Wend Wenn du Fragen hast, nur immer stellen.... ![]() |
||
![]() |
mk |
![]() Antworten mit Zitat ![]() |
---|---|---|
Danke ![]() |
||
Pentium 4 2,6 GHz | 256 MB RAM | 120 GB Festplatte | DVD-ROM Laufwerk (48 Fach) |
I am a noob ![]() www.marcelkroener.de.vu Mein Arcor Webspace =) |
![]() |
mk |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wollt ihr mal sehen? ![]() ![]() ![]() http://marcelkroener.dyndns.org/Paint.exe |
||
Pentium 4 2,6 GHz | 256 MB RAM | 120 GB Festplatte | DVD-ROM Laufwerk (48 Fach) |
I am a noob ![]() www.marcelkroener.de.vu Mein Arcor Webspace =) |
FBI-blitz |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ganz fut! Jetzt musst du es nur noch hinkriegen, dass man auch schneller zeichnen kann, und keine Lücken entstehen! | ||
Computer 1: AMD Athlon64 3500+ | nVidia GF 7900GT | 1024 MB DDR-RAM | ASUS A8N-SLI Preimium | 250 GB SATA 2 || WindowsXP | Blitz3D | Blitz+
Computer 2: AMD AthlonXP 2400+ | ATI Radeon 9500 | 512 MB DDR-RAM | MSI K7N2 | 80 GB IDE | 160 GB IDE || WindowsXP | Blitz3D | Blitz+ Computer 3: Intel Pentium MMX | onBoard-Grafik | 32 MB RAM | 1 GB IDE || Windows 98 SE | Blitz+ |
![]() |
mk |
![]() Antworten mit Zitat ![]() |
---|---|---|
und wie könnte das gehen?
Naja, dann müsst ihr einfach den Mauszeiger langsamer bewegen ![]() Oder die lINIE ETWAS dICKER MACHEN |
||
Pentium 4 2,6 GHz | 256 MB RAM | 120 GB Festplatte | DVD-ROM Laufwerk (48 Fach) |
I am a noob ![]() www.marcelkroener.de.vu Mein Arcor Webspace =) |
FBI-blitz |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Naja, aber bei Paint gehts ja auch so! Du könntest z.B. eine Linie zwischen den Punkten ziehen! Siehtdann ein bischen ex#ckig aus, sonst aber ok! | ||
Computer 1: AMD Athlon64 3500+ | nVidia GF 7900GT | 1024 MB DDR-RAM | ASUS A8N-SLI Preimium | 250 GB SATA 2 || WindowsXP | Blitz3D | Blitz+
Computer 2: AMD AthlonXP 2400+ | ATI Radeon 9500 | 512 MB DDR-RAM | MSI K7N2 | 80 GB IDE | 160 GB IDE || WindowsXP | Blitz3D | Blitz+ Computer 3: Intel Pentium MMX | onBoard-Grafik | 32 MB RAM | 1 GB IDE || Windows 98 SE | Blitz+ |
![]() |
mk |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich hab wieder ein Problem, ich hab schon was ausprobiert, bin aber nicht wirklich weitergekommen.
Ich möchte die gespeicherten Bilder auch wieder laden können hier mein Code: Code: [AUSKLAPPEN] Graphics 800,600,0,2 SetBuffer BackBuffer() del=LoadImage ("data/del.bmp") save=LoadImage ("data/save.bmp") load=LoadImage ("data/load.bmp") maus=LoadImage ("data/maus.bmp") img=CreateImage (700,500) HidePointer Global art=1 Global Col=1 Global farbe While Not KeyHit (1) delcol=ImagesCollide(maus,mx,my,0,del,20,540,0) savecol=ImagesCollide (maus,mx,my,0,save,200,540,0) loadcol=ImagesCollide (maus,mx,my,0,load,420,540,0) Cls mx=MouseX() my=MouseY() If KeyHit (200) Then art=art+1 If KeyHit (208) Then art=art-1 If KeyHit (203) Then col=col-1 If KeyHit (205) Then col=col+1 If art=7 Then art=art-1 If art=0 Then art=art+1 If col=9 Then col=col-1 If col=0 Then col=col+1 If MouseDown (1)Then SetBuffer ImageBuffer(Img) If col=1 Then Color 255,255,255 If col=2 Then Color 0,0,0 If col=3 Then Color 255,0,0 If col=4 Then Color 0,255,0 If col=5 Then Color 255,255,0 If col=6 Then Color 0,0,255 If col=7 Then Color 255,0,255 If col=8 Then Color 0,255,255 If art=1 Then Plot mx,my If art=2 Then Rect mx,my,3,3 If art=3 Then Rect mx,my,6,6 If art=4 Then Line mx,my,mx+3,my+3 If art=5 Then Line mx,my,mx+6,my+6 If art=6 Then Oval mx,my,6,6 SetBuffer BackBuffer() End If SetBuffer ImageBuffer(img) If delcol=1 And MouseHit (1) Then Cls SetBuffer BackBuffer() ueberschrift=LoadFont ("Arial",40,0,0,1) SetFont ueberschrift Text 100,10,"Malprogramm - Art= "+art+" Color="+col FreeFont ueberschrift Color 255,255,255 Text 10,500,"Pfeiltasten Links und Rechts: Farbe Wählen" Text 10,515,"Pfeiltasten oben und unten: Art Wählen" Rect 0,0,700,500,0 Color 255,0,0 If col=1 Then Color 255,255,255 If col=2 Then Color 0,0,0 If col=3 Then Color 255,0,0 If col=4 Then Color 0,255,0 If col=5 Then Color 255,255,0 If col=6 Then Color 0,0,255 If col=7 Then Color 255,0,255 If col=8 Then Color 0,255,255 DrawImage img,0,0 DrawImage del,20,540 DrawImage save,200,540 DrawImage load,420,540 DrawImage maus,mx,my If savecol=1 And MouseHit (1) Then SaveImage (img,"Bild.jpg") If loadcol=1 And MouseHit (1) Then FreeImage img:img=LoadImage ("bild.bmp") Flip Wend (Jetzt hab ich selber gesehen das Plot und line Langsamer ist als rect ![]() |
||
Pentium 4 2,6 GHz | 256 MB RAM | 120 GB Festplatte | DVD-ROM Laufwerk (48 Fach) |
I am a noob ![]() www.marcelkroener.de.vu Mein Arcor Webspace =) |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group