plots

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

Chester

Betreff: plots

BeitragSa, Okt 09, 2004 17:30
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi@all

Wie kann man machen, dass wenn die Masutaste gedrückt wird ein Punkt gemalt wird, und wenn man sie dann los läst, der Punkt bleibt ?

lucifer

BeitragSa, Okt 09, 2004 17:33
Antworten mit Zitat
Benutzer-Profile anzeigen
So zum Beispiel:

Code: [AUSKLAPPEN]

Graphics 800,600,0,0
SetBuffer BackBuffer()

Global plots.plots
Type Plots
Field x
Field y
End Type

While Not KeyHit(1)
Cls
If MouseDown(1) Then
   plots.plots = New plots
   plots\x = MouseX()
   plots\y = MouseY()
End If
For plots.plots = Each plots
   Plot plots\x,plots\y
Next
Flip
Wend
Aktuelles Projekt:
Demonspawn
RPG
 

getlose

BeitragSa, Okt 09, 2004 17:34
Antworten mit Zitat
Benutzer-Profile anzeigen
image=createimage(640,480)
setbuffer imagebuffer(image)
plot x,y
setbuffer backbuffer()
drawimage image,0,0

(nur als beispiel, funzt so nicht)

Chester

BeitragSa, Okt 09, 2004 17:36
Antworten mit Zitat
Benutzer-Profile anzeigen
und wie macht man, dass beim bewege der Maus keine Lücken entstehen zwischen den Punkten?
 

Edlothiol

BeitragSa, Okt 09, 2004 17:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Line.

Chester

BeitragSa, Okt 09, 2004 17:38
Antworten mit Zitat
Benutzer-Profile anzeigen
Mit Line zeichnet kann man nur GRADE Lineien zeichnen, ich will aber ungerade
 

Edlothiol

BeitragSa, Okt 09, 2004 17:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Nicht wenn du die letzte Mausposition speicherst und dann immer eine Linie zwischen der letzten und der aktuellen Mausposition zeichnest Rolling Eyes

Chester

BeitragSa, Okt 09, 2004 17:42
Antworten mit Zitat
Benutzer-Profile anzeigen
Lol, Habe doch gewußt dass ich um den Weg^^ nicht drumrumkomme Sad
 

getlose

BeitragSo, Okt 10, 2004 1:37
Antworten mit Zitat
Benutzer-Profile anzeigen
oha, was für ein weg :)

Code: [AUSKLAPPEN]

Graphics 640,480,16,2
img=CreateImage (640,480)

While Not KeyHit(1)
   mx=MouseX() : my=MouseY()
   If MouseDown(1) Then
      SetBuffer ImageBuffer(img)
      Line mx,my,old_mx,old_my
      SetBuffer BackBuffer()
   EndIf
   Cls
   DrawImage img,0,0
   Flip
   old_mx=mx : old_my=my
Wend

Chester

BeitragSo, Okt 10, 2004 15:49
Antworten mit Zitat
Benutzer-Profile anzeigen
^Lol Wow Thx

Chester

BeitragSo, Okt 10, 2004 16:06
Antworten mit Zitat
Benutzer-Profile anzeigen
Wie kann ich das in eine Function einbauen? denn das mx_old = mx muss ja am Ende stehen, kann mir mal jemand sagen wie ich das in einer Function mache?
 

Edlothiol

BeitragSo, Okt 10, 2004 16:20
Antworten mit Zitat
Benutzer-Profile anzeigen
Das kann auch direkt nach dem EndIf stehen Rolling Eyes Ein bisschen Nachdenken wäre gut...
 

getlose

BeitragDi, Okt 12, 2004 3:08
Antworten mit Zitat
Benutzer-Profile anzeigen
@chester

kannst mx,old_mx auch global machen, aber es scheint
so als hättest du das prinzip nicht ganz verstanden ?!

shure_kyu

Newsposter

BeitragDi, Okt 12, 2004 14:58
Antworten mit Zitat
Benutzer-Profile anzeigen
hier chester vielleicht hilfts

Code: [AUSKLAPPEN]
Global img, mx, my, old_my, old_mx

Graphics 640,480,16,2
img=CreateImage (640,480)

While Not KeyHit(1)
 
   malen()
   
   Cls
   DrawImage img,0,0
   Flip

Wend

End

Function malen()

 mx=MouseX() : my=MouseY()

   If MouseDown(1) Then
   SetBuffer ImageBuffer(img)
   Line mx,my,old_mx,old_my
   SetBuffer BackBuffer()
   EndIf
   old_mx=mx : old_my=my

End Function



ps: ist an getlose_back's post angelehnt

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group