![]() |
||
| Material |
OOP
Grundlagen
Delphi
Software-Technik
Bonsai
Digitaltechnik
Ereignisse
Grafik
UML
Netze
Fischertechnik
Tipps
Werkzeuge
Literatur
Automaten
Sprachen
Datenbanken
XML
Prolog
Berechenbarkeit
|
|
|
Grafik |
|
|
mTWeltBildManager.zip
....... procedure TWeltBildManager.berechneKoeffizienten(xmin,xmax,ymin,ymax,umax,vmax : real); begin Fa := umax/(xmax-xmin); Fb := -Fa*xmin; Fc := vmax/(ymin-ymax); Fd := -Fc*ymax; end; function TWeltBildManager.ut(x : real) : integer; begin result := round(Fa*x+Fb); end; ......... function TWeltBildManager.xt(u : integer) : real; begin result := (u - Fb)/Fa; end; ........ |
........
procedure TForm1.FormCreate(Sender: TObject);
begin
wbm := TWeltBildManager.Create;
wbm.berechneKoeffizienten(-2,4,-1,3,600,400);
end;
........
procedure TForm1.bZeichneAchsenClick(Sender: TObject);
begin
with canvas do
with wbm do
begin
// x-Achse
MoveTo(ut(-2),vt(0)); LineTo(ut(+4),vt(0));
// y-Achse
MoveTo(ut(0),vt(-1)); LineTo(ut(0),vt(3));
end;
end;
.......
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
var
u,v : integer;
begin
u := x; v := y;
with canvas do
with wbm do
begin
TextOut(ut(-1.7),vt(-0.5),' '); // Leerstring zum Löschen
TextOut(ut(-1.7),vt(-0.5),FloatToStr(xt(u))); // neuer Text
TextOut(ut(-1.3),vt(-0.5),' ');
TextOut(ut(-1.3),vt(-0.5),FloatToStr(yt(v)));
end;
end;
|