rysowanie grafu (matematycznego) - tshape i lineto

rysowanie grafu (matematycznego) - tshape i lineto
L3
  • Rejestracja:prawie 14 lat
  • Ostatnio:około 10 lat
  • Postów:106
0

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?

edytowany 1x, ostatnio: lightning3
ZI
  • Rejestracja:prawie 22 lata
  • Ostatnio:około miesiąc
  • Postów:192
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

L3
  • Rejestracja:prawie 14 lat
  • Ostatnio:około 10 lat
  • Postów:106
0

no nie, bo wrócisz do punktu startowego figury, tego na czerwono

Misiekd
  • Rejestracja:ponad 21 lat
  • Ostatnio:prawie 13 lat
  • Postów:7923
0

musisz obliczyć środek okręgu i punkt przecięcia prostej z okręgiem


- Ciemna druga strona jest.
- Nie marudź Yoda, tylko jedz tego tosta.
Google NIE GRYZIE!
Pomogłem - kliknij
ZI
  • Rejestracja:prawie 22 lata
  • Ostatnio:około miesiąc
  • Postów:192
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:

Kopiuj
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;
edytowany 1x, ostatnio: zibicoder
_13th_Dragon
  • Rejestracja:ponad 19 lat
  • Ostatnio:3 dni
0

Narysuj najpierw krawędzie od środka do środka, a potem kola białe w środku.
Canvas.Brush.Style:=bsSolid;
Canvas.Brush.Color:=clWhite;


Wykonuję programy na zamówienie, pisać na Priv.
Asm/C/C++/Pascal/Delphi/Java/C#/PHP/JS oraz inne języki.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.