Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Polygone mit Pfeilen zeichnen (https://www.delphipraxis.net/22437-polygone-mit-pfeilen-zeichnen.html)

sixarp 17. Mai 2004 19:10


Polygone mit Pfeilen zeichnen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Jungs!

Ich hab was für euch.

Seht euch die Anlagen an, dort findet ihr eine Programm mit welchem ich Polygone zeichne und diese dann mit pfeilen versuche zu verbinden. Die Pfeile sind aber nicht immer richtig!

Wie behebe ich das Problem.

Man muss ziemlich mit sin, cos und vielleicht tan herumbastelt.

Bitte helft mir weiter. Ich brauch dringenst die Lösung!

danke

sixarp

P.S: unbedingt die Unit Math einbinden, wenn man mit Winkelfunktionen arbeitet!

rsilo 18. Mai 2004 05:26

Re: Polygone mit Pfeilen zeichnen
 
Keine Ahnung, ich bin kein Mathefreak

Nicodius 18. Mai 2004 05:55

Re: Polygone mit Pfeilen zeichnen
 
Erst mal HERZLICH WILKOMMEN IN DER DP

ich schaus mir gleich an ;)





Ps.: jetzt hab ich das auch mal gesagt :D

Nicodius 18. Mai 2004 06:00

Re: Polygone mit Pfeilen zeichnen
 
mal ein paar fragen bezüglich der Prozeduren


Delphi-Quellcode:
procedure TForm1.ZeichneKnoten(pos: integer; Knotenname: string);
var x,y: integer;
    Texthaelfte: integer;
begin
 Knotenpunkt(x, y, pos);

end;

:shock: für was brauchst du den Knotennamen(den du übrigens mit
Delphi-Quellcode:
   ZeichneKnoten(j, IntTOStr(j));
ürbergeben hast also 1,2,.. das bringt doch nix(erst recht nix wenn du nacher damit nix machst
--> Texthaelfte verwendest du auch nicht :| ist das weil dus vorher anders geabt has t oder programmierst du absichtlich mit dem -malgeschirbenkommtnichtweg-prinzip?!
na gut soviel dazu..

Skiron 18. Mai 2004 16:55

Re: Polygone mit Pfeilen zeichnen
 
Ich hab was zusammengestellt
Probier mal diesen Source:
Delphi-Quellcode:
procedure TForm1.ZeichneKantenpfeil(x1, y1: Integer; x2, y2: Integer);
const
  wf = pi/8;
  L = 20;
var
  dx, dy: Integer;
  w: Real;
  p: TPoint;
begin
  dx := x2 - x1;
  dy := y2 - y1;
  w := ArcCos(dx / sqrt(sqr(dx) + sqr(dy)));
  if dy > 0 then
     w := (2 * Pi) - w;
  p := Point((x1 + x2) div 2, (y1 + y2) div 2);
  with Image1.Canvas do begin
    MoveTo(p.x, p.y);
    LineTo(p.x - round(cos(w + wf) * L),
           p.y + round(sin(w + wf) * L));
    LineTo(p.x - round(cos(w - wf) * L),
           p.y + round(sin(w - wf) * L));
    LineTo(p.x, p.y);
  end;
end;

sixarp 19. Mai 2004 14:30

Re: Polygone mit Pfeilen zeichnen
 
Super! Funktioniert bestens!

sixarp


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:49 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz