Autor Beitrag
Hogger
Hält's aus hier
Beiträge: 1
Erhaltene Danke: 1



BeitragVerfasst: Sa 12.02.11 11:19 
HAllo liebe Community
Ich arbeite erst seit kurzer Zeit mit Delphi 7 und muss aus privaten Gründen ein Koordinatensystem erstellen.Dieses Koordinatnesystem mit Buttons vergrößern und verkleinern können,man sollte es verschieben können ein Gitternetz sowie Achsen mit Beschriftung erstellen können und auf der Image Komponente eine Farbpalette erstellen zum ändern der Penfarbe. NullX und NullY sollen die Bildschirmkoordinaten des Nullpunktes sein vom Typ Integer.Einheit soll die Einheit im Koordinatensystem in Pixeln bestimmen ebenfalls vom Typ Integer. Die Achsenbeshriftung sollte mit dem Befehl TextOut gelöst werden und für das Gitternetz könnte man eine For-Schleife erstellen die folgendermaßen aussieht : For i:=1 To 200 Do...... Zusätzlich gilt es das Programm in drei Prozeduren zuunterteilen:"Loeschen","Gitter","Achsen".Ein Einstieg könnte wie folgt aussehen:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
procedure TForm1.FormCreate(Sender:TObject);
begin
  Einheit:=40;
  NullX:=Image1.Width div 2;
  NullY:=Image1.Height div 2;
end;


Ich hoffe auf hilfreiche Antworten.

Moderiert von user profile iconMartok: Delphi-Tags gesetzt
Xion
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
EE-Maler
Beiträge: 1952
Erhaltene Danke: 128

Windows XP
Delphi (2005, SmartInspect), SQL, Lua, Java (Eclipse), C++ (Visual Studio 2010, Qt Creator), Python (Blender), Prolog (SWIProlog), Haskell (ghci)
BeitragVerfasst: Sa 12.02.11 11:35 
:welcome:

user profile iconHogger hat folgendes geschrieben Zum zitierten Posting springen:
Ich hoffe auf hilfreiche Antworten.

Dazu bräuchte es erstmal eine Frage :mrgreen:

Sieht mir aus wie ne Hausaufgabe :P

Eine hilfreiche Antwort:
Mit Image1.Picture.Bitmap.Canvas kannst du auf dem Image rummalen ;) (MoveTo,LineTo,Pen)

_________________
a broken heart is like a broken window - it'll never heal
In einem gut regierten Land ist Armut eine Schande, in einem schlecht regierten Reichtum. (Konfuzius)
Tranx
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 648
Erhaltene Danke: 85

WIN 2000, WIN XP
D5 Prof
BeitragVerfasst: Sa 12.02.11 11:36 
Was soll dieses Koordinatensystem denn bewirken? Soll es Messwerte darstellen? Funktionsplots realisieren? ... Manchmal kann man sich nämlich eine Menge Arbeit ersparen, wenn man die mit Delphi mitgelieferten Komponenten wie TChart dazu nutzt. Denn da ist schon eine ganze Menge Vorarbeit geleistet. Man muss ja nicht die Welt immer neu erfinden, oder?

_________________
Toleranz ist eine Grundvoraussetzung für das Leben.
Jann1k
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 866
Erhaltene Danke: 43

Win 7
TurboDelphi, Visual Studio 2010
BeitragVerfasst: Sa 12.02.11 14:01 
Du brauchst 6 Buttons, zwei davon erhöhen bzw. erniedrigen den Wert von Einheit, zwei verschieben den Nullpunkt in X-Richtung und die letzten beiden verschieben den Nullpunkt in Y-Richtung (du kannst auch jeweils einen Button nehmen und ein Editfeld o.ä. daneben setzen, in das man schreiben kann um wieviel verschoben werden soll).

Die Löchen-Prozedur zeichnet einfach ein weißes Rechteck quer über dein Image.

In der Gitter Prozedur kannst du dir aus Einheit und image1.width bzw. image1.height ausrechnen, wieviele Linien dein Gitter braucht und die dann mittels Schleifen auf dein Image zeichnen (dabei beachten dass der Nullpunkt verschoben sein kann).

Die Achsen Prozedur braucht nur zu prüfen, wo der Nullpunkt liegt und dann die Achsen wenn gewünscht nochmal extra "dicker" zeichnen und dann mittels image1.canvas.textout beschriften (was "beschriften" genau heißt, wissen wir nicht, wenn zB bei jeder Linie der entsprechende Wert stehen soll, wirst du auch hier wieder Schleifen brauchen).

Wie genau das mit der Farbpalette gemeint ist, geht aus deinem Text nicht wirklich hervor.
Xion
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
EE-Maler
Beiträge: 1952
Erhaltene Danke: 128

Windows XP
Delphi (2005, SmartInspect), SQL, Lua, Java (Eclipse), C++ (Visual Studio 2010, Qt Creator), Python (Blender), Prolog (SWIProlog), Haskell (ghci)
BeitragVerfasst: Sa 12.02.11 15:02 
user profile iconJann1k hat folgendes geschrieben Zum zitierten Posting springen:
Wie genau das mit der Farbpalette gemeint ist, geht aus deinem Text nicht wirklich hervor.


Ich würde sagen man soll die Farben als Rechteck auf das Image zeichnen und bei Klick darauf die Farbe des Koordinatensystems entsprechend ändern.

_________________
a broken heart is like a broken window - it'll never heal
In einem gut regierten Land ist Armut eine Schande, in einem schlecht regierten Reichtum. (Konfuzius)