Forum: Multimedia
Delphi
by calculon,
29. Jul 2007
function Abstand (const p1, p2, p3: TPoint): double;
var
p4: TPoint;
lambda: double;
begin
lambda := (sqr(p1.x)-p1.x*(p2.x+p3.x)+p2.x*p3.x+(p1.y-p2.y)*(p1.y-p3.y))/(sqr(p1.x)-2*p1.x*p2.x+sqr(p2.x)+sqr((p1.y-p2.y)));
p4.x := p1.x+lambda*(p2.x-p1.x);
p4.y := p1.y+lambda*(p2.y-p1.y);
Result := sqrt(sqr(p3.x-p4.x)+sqr(p3.y-p4.y));
end;
Forum: Multimedia
Delphi
by calculon,
28. Jul 2007
Ich weiß, was du meinst, das Problem wird später behandelt ;-) Am coolsten wäre es halt schon, wenn der Funktion die Dicke der Linie (Canvas.Pen-mäßig in Integer) mitgegeben werden könnte...
Daten umfasst mehr als nur die Positionen.
Gruß
Calculon
--
Forum: Multimedia
Delphi
by calculon,
28. Jul 2007
Es geht um Pixel (Integer).
Es geht um ein Spiel.
Meine Function sieht nun so aus und scheint zu funktionieren:
function TSpieler.FreieSicht(x1,y1,x2,y2,nummer:integer):boolean;
var
Forum: Multimedia
Delphi
by calculon,
28. Jul 2007
Hi Leute,
ich will eine Prüfung durchführen, ob sich zwischen zwei Punkten ein Punkt befindet und habe mir gedacht eine Linie zwischen diesen zwei Punkten zu zeichnen:
image1.canvas.moveto(10,10);
image1.canvas.lineto(20,20);
Kann ich mir die Koordinatenliste aller einzelnen Punkte ausgeben lassen oder gibt es eine Möglichkeit eine "virtuelle" Linie zu erzeugen und deren Koordinaten...