Linien - Koordinaten berechnen

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

TheProgrammer

Betreff: Linien - Koordinaten berechnen

BeitragMo, Apr 05, 2004 7:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi. Very Happy

Ich wollte ein Programm programmieren, wo man die einzelnen Punkte, auf denen eine Linie (Line) liegt berechnen kann.

Wie stellt man das am besten an? Confused

PS.: Auch wenn díe Linie diagonal (also nicht gerade) verläuft.
aktuelles Projekt: The last day of human being

Mr.Keks

BeitragMo, Apr 05, 2004 7:56
Antworten mit Zitat
Benutzer-Profile anzeigen
wenn du zwei punkte hast?

abstand zwischen den punkten berechnen, vertikale und horizontale differenz zwischen den punkten durch den abstand teilen und in zwei variablen speichern. (manche menschen würden diese beiden werte sin und cos nennen Wink.) jetzt musst du nur noch mit einer for-next von 0 bis zum wert des abstandes gehen. die punkte liegen dann an cos*i+anfangspunktx und sin*i+anfangspunkty.

hoffe, es war nicht zuviel mist dabei Smile

du kannst es auch mit einer linearen funktion versuchen, aber die mag es halt nicht, wenn mehrere punkte dieselbe x-koordinate haben.
MrKeks.net

TheProgrammer

BeitragMo, Apr 05, 2004 7:59
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke!

Da kann ich ja mal wieder meine mathematischen Kenntnisse
unter Beweis stellen! Rolling Eyes

Edit:
...
...
...
...
kannst du es bitte vieleicht doch
an einem Codebeispiel erklären?
aktuelles Projekt: The last day of human being

Mr.Keks

BeitragMo, Apr 05, 2004 8:12
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
Graphics 400,300,16,2

SetBuffer BackBuffer()

Repeat
   Cls
   DrawLine(200,150,MouseX(),MouseY())
   Flip
Until KeyHit(1)
End

Function DrawLine(x1,y1,x2,y2)
   abst#   = Sqr((x1-x2)^2+(y1-y2)^2)
   co#      = -Float(x1-x2)/abst#
   si#      = -Float(y1-y2)/abst#
   For i = 0 To abst
      WritePixel co# * i + x1 , si# * i + y1,255
   Next
End Function
nicht ganz so toll wie das bbline und ich hatte auch keine lust auf writepixelfast und der gleichen. aber ich denke, es wird reichen.
MrKeks.net

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group