hej, rysuje graf w delphi, ma ktoś pomysł jak łaczyc grafy krawędziami tak jak na rysunku w załaczniku?
(łaczyć kształty stCircle liniami)
moge robić moveto i lineto w stosunku do środków i do punktów pokazanych na czerwono
ale jak rysować na krawędzi, czyli jak liczyć punkty xy z obręczy koła?
0
0
To dość proste, jeżeli masz wpółrzędne środków okręgów.
Zakładając że wsp środka okręgu to Xo, Yo:
x = Xo - r, y = Yo - r, gdzie r to promień okręgu
0
no nie, bo wrócisz do punktu startowego figury, tego na czerwono
0
musisz obliczyć środek okręgu i punkt przecięcia prostej z okręgiem
0
Sorry, ale nie bardzo skumałem. Czy chodzi o wygląd tak jak na 3-ciej części obrazka?
Jeżeli tak to rozwiązanie może być takie:
procedure TForm1.Button1Click(Sender: TObject);
var r: Integer;
begin
r:= 15;
Canvas.Pen.Width:= 2;
Canvas.Pen.Color:= clGreen;
Canvas.MoveTo(20,20);
Canvas.LineTo(100, 100);
Canvas.LineTo(200, 50);
Canvas.LineTo(20,20);
Canvas.Pen.Color:= clRed;
Canvas.Brush.Style:= bsSolid;
Canvas.Brush.Color:= clWhite;
Canvas.Ellipse(20-r, 20-r, 20+r, 20+r);
Canvas.Ellipse(100-r, 100-r, 100+r, 100+r);
Canvas.Ellipse(200-r, 50-r, 200+r, 50+r);
end;
0
Narysuj najpierw krawędzie od środka do środka, a potem kola białe w środku.
Canvas.Brush.Style:=bsSolid;
Canvas.Brush.Color:=clWhite;