Autor Beitrag
flashoverburn
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Di 27.01.04 22:40 
hier mal unser Aufgabe irgendwie kommen wir damit garnicht klar:


Es ist ein Delphi-Programm zu entwerfen , das folgende Eigentschaften hat. Es soll auf einen Tastendruck hinein Koordinatensystem zeichnen können. Die Achsenteilung auf der x- und y- Achse kann vorher in einem Edit-Feld eingegeben werden Die Achsenspitzen sollen durch "Pfeile" abgeschlossen werden.


So das ist die Aufgabe wäre nett wenn uns da jemand helfen könnte.


Die Hauptprobleme liegen bei der Einteilung und den Pfeilen.


Zuletzt bearbeitet von flashoverburn am Mi 28.01.04 17:16, insgesamt 1-mal bearbeitet
Raphael O.
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1596


VS 2013
BeitragVerfasst: Di 27.01.04 22:54 
für die Pfeile kansnt du ein dreieck zeichnen und die achsen machst du in etwa so:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
for i:=1 to maxspalten do
begin
image1.canvas.moveto(round((i/maxspalten)*image1.width),0);
image1.canvas.lineto(round((i/maxspalten)*image1.width),image1.height);
end;


Zuletzt bearbeitet von Raphael O. am Mi 28.01.04 14:10, insgesamt 2-mal bearbeitet
flashoverburn Threadstarter
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Di 27.01.04 22:58 
gut wenn ich das verstehen würde ware es okay sind sozusagen unseren ersten schritte mit delphi wie mache ich den das dreieck
Raphael O.
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1596


VS 2013
BeitragVerfasst: Di 27.01.04 23:06 
schau dir mal image1.canvas. arc an..
wenn das in ner Schulaufgabe drankommt, dann mussst du das wohl oder überl verstehn...
flashoverburn Threadstarter
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Di 27.01.04 23:09 
wir arbeiten ja mehr in der schule mit moveto und lineto statt mit den befehlen was wir können ist gerade mal rectangel
Raphael O.
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1596


VS 2013
BeitragVerfasst: Di 27.01.04 23:18 
dann mal dir mit movetos und linetos so ein dreieck oben hin...
die achsen werden ja schon damit gemacht :-/
flashoverburn Threadstarter
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Di 27.01.04 23:31 
gut dann versuche ich das mal. wenn das nicht klappt melde ich wieder
flashoverburn Threadstarter
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Di 27.01.04 23:44 
gut das mit dem dreick geht aber wir haben probs mit den spalten dort zrigt er immer einen fehler an:
for-schleifenvariable muß eine einfache lokale vaiabel sein
waldmeister
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 136

Win XP
D7 Enterp
BeitragVerfasst: Di 27.01.04 23:53 
dann fehlt da wohl was ;)
un zwar in der procedure wo die for schleife verwandt wird:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
procedure...
var  // <------- das und
i: integer; // <---- das sin die dinge die fehlen!! die for-schleifen variable muss immer lokal ( in der benutzten procedure) deklariert werden!
begin
for i:=1 to maxspalten do 
begin 
bla....
bla....
end;

_________________
der wald....der meister....der meister des waldes....der waldmeister
flashoverburn Threadstarter
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Mi 28.01.04 00:00 
Ich weis das wir es noch nicht so raus haben, aber das haben wir dann doch gemacht,´.

:lol:

also wir haben ja schon das Fadenkreuz an sich fertig,( das ist ja nicht ganz so schwer)

nun brauchen wir in regelmässigen abständen die spalten.
Und diese dumme Pfeile,,

Danke für deine Hilfe
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19346
Erhaltene Danke: 1754

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mi 28.01.04 09:51 
Titel: Also
Hallo!

Also, ich werde Dir bestimmt nicht Code schicken, der das alles macht, Du sollst es ja verstehen (wie schon Fiji-Fighter gesagt hat)!

Aber ich kann Dir ja nen Denkanstoss geben...

Also: Du hast jetzt das Fadenkreuz! Nun, für die Pfeile musst Du ja nur jeweils zwei schräge Linien ziehen, wenn Du das Dreieck nicht möchtest :shock: .

Dazu musst Du (Für das rechte Ende) vom Endpunkt eine Linie zu einem Punkt etwas weiter oben und etwas weiter links z.B. 5 Pixel nach links und oben zeichnen. Mit MoveTo und LineTo sollte das kein Problem sein...
(Ebenso kannst Du natürlich dann auch noch eine weitere Linie für ein Dreieck zeichnen.)

Und zur Unterteilung: Du solltest Dir überlegen, wie groß der Abstand zwischen den Unterteilungen sein soll und dementsprechend für verschiedene Zeichenbereiche die Unterteilungen festlegen.
(Nicht, dass ich das so machen würde, aber es ist das einfachste.)

Beispiel:
Für 0,5 < Zeichenbereich <= 3 zeichnest Du je einen Strich alle 0,5 Einheiten. Für 3 < Zeichenbereich <=10 zeichnest Du einen Strich alle 1 Einheiten. Und so weiter!

Das wäre allerdings ziemlich umständlich. Aber wie meintest Du das denn am Anfang mit die Unterteilungen sollen per Edits festgelegt werden?
Zitat:

Die Achsenteilung auf der x- und y- Achse kann vorher in einem Edit-Feld eingegeben werden

Ich geh mal davon aus, dass Du meintest, dass eingegeben werden soll, wie weit der Zahlenbereich gehen soll. Also von x=-3 bis x=3 oder so, oder?

Na ja, viel Spaß noch dabei, :D

Sebastian
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Mi 28.01.04 10:40 
Hallo!

Bitte ändere den Titel des Topics da er wenig über das eigentlich Thema verrät. Hier der entsprechende Absatz aus den Delphi-Forum.de Richtlinien:

Richtlinien hat folgendes geschrieben:

1.1 Beiträge
Bitte formuliere den Betreff Deiner Beiträge so, dass andere Mitglieder anhand dieser bereits das eigentliche Thema festmachen können. Beiträge wie etwa "Eine Anfängerfrage" oder "Weiß jemand, wie das geht?" lassen den Leser im Unklaren darüber, was das Thema der Diskussion ist.[...]

Einfach oben bei deinem ersten Beitrag auf "Edit" klicken und den Titel ändern. Dank Dir!

Gruß Peter Lustig

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
Raphael O.
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1596


VS 2013
BeitragVerfasst: Mi 28.01.04 14:13 
flashoverburn hat folgendes geschrieben:
nun brauchen wir in regelmässigen abständen die spalten.

hallo?¿¿
ich habe dir doch oben schon den Ansatz egegben, wie man das realisiert...
huier jetzt nochmal der ganze code, aber erwarte nicht, dass dir auch weiterhin alles auf dem Präsentierteller dargelegt wird :evil:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
for i:=1 to spaltenanzahl do
begin
image1.canvas.moveto(round((i/maxspalten)*image1.width),0);
image1.canvas.lineto(round((i/maxspalten)*image1.width),image1.height);
end;

for i:=1 to zeilenanzahl do
begin
image1.canvas.moveto(0,round((i/maxspalten)*image1.width));
image1.canvas.lineto(image1.Width,round((i/maxspalten)*image1.width));
end;
flashoverburn Threadstarter
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Mi 28.01.04 17:23 
danke für eure hiele habe es geschaft hetute morgen um 6 uhr war ich dann doch fertig aber egal.


nein ich erwarte nicht das mir alles auf den präsentierteller gelegt wird ich würde es viel lieber selber verstehen nur das ist leichter gesagt als getan.