Hi!
Ich habe hier mal einen Ansatz, er ist sehr Quick'n'Dirty und zeichnet bisher auch nur das Achsenkreuz, aber vielleiht hilft er dir etwas.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var lx, ly, fromy, toy,fromx,tox, einheity, einheitx: integer;
begin
fromy:=strtoint(edit3.Text);
fromx:=strtoint(edit1.Text);
tox:=strtoint(edit2.text);
toy:=strtoint(edit4.text);
lx:=strtoint(edit2.text)-strtoint(edit1.text);
ly:=strtoint(edit4.text)-fromy;
einheity:=paintbox1.Height div ly;
einheitx:=paintbox1.width div lx;
Paintbox1.Canvas.MoveTo(0,(abs(toy)*einheity));
Paintbox1.Canvas.LineTo(PaintBox1.Width,(abs(toy)*einheity));
Paintbox1.Canvas.MoveTo(paintbox1.Width-(einheitx*(abs(tox))),0);
Paintbox1.Canvas.LineTo(paintbox1.Width-(einheitx*(abs(tox))),Paintbox1.Height);
end;
Er passt auf dein Beispiel, ist aber wohl nicht (!) allgemeingültig ...
Ciao fkerber