Hi Leute,
ich habe gerade einmal probiert, ein Programm zu schreiben, in welchem ich pro Mausklick ein Quadrat zeichne.
Meine Idee ist, dass wenn ich das zweite und folgende Quadrate zeichne, diese immer zum letzten eine Verbindung per Linie haben...
Wie macht man sowas? :)
// --------------------------------- //
// Project: lineTest
// Start: Wednesday, November 25, 2009
// IDE Version: 7.082
TYPE Tpoint
x
y
ENDTYPE
GLOBAL line_nr=0
LOCAL newPoint AS Tpoint
LOCAL Points[] AS Tpoint
SYSTEMPOINTER TRUE
WHILE TRUE
LOCAL mx,my,b1,b2
MOUSESTATE mx,my,b1,b2
//erstellt ein neues Quadrat unter dem Mauszeiger
IF b1
IF mousefree=TRUE
newPoint.x=mx-10
newPoint.y=my-10
DIMPUSH Points[], newPoint
INC line_nr,1
mousefree=FALSE
ENDIF
ELSE
mousefree=TRUE
ENDIF
//Hier wird das Quadrat gezeichnet und soll eine Linie von diesem zum letzten Quadrat zeichnen...
FOREACH Check IN Points[]
DrawQuad(Check.x,Check.y,20,RGB(255,255,255))
//Das hier geht natürlich nicht, aber wie kann ich das realisieren? :)
IF line_nr>0
DRAWLINE Check.x+10,Check.y+10, Check-1.x+10, Check-1.y+10, RGB(255,255,255)
ENDIF
NEXT
PRINT mousefree, 10,10
PRINT line_nr, 10,20
SHOWSCREEN
WEND
// ------------------------------------------------------------- //
// --- DRAWQUAD ---
// ------------------------------------------------------------- //
FUNCTION DrawQuad: x, y, width, color
// Diese Variablen sind als LOCAL definiert:
// x, y, width, color
DRAWLINE x,y,x+width,y,color
DRAWLINE x+width,y,x+width,y+width,color
DRAWLINE x+width,y+width,x,y+width,color
DRAWLINE x,y+width,x,y,color
ENDFUNCTION // DRAWQUAD
mit POLYVECTOR und mode = 2 (Strips) evtl?
[ul]http://www.glbasic.com/xmlhelp.php?lang=de&id=297&action=view[/url]