Schnittmenge zweier Kreise
-
Guten Morgen,
gibt es in Borland C++ die Möglichkeit durch eine Canvas - Funktion die Schnittmenge zweier Kreise zu bestimmen und farblich zu markieren?
Oder muss ich das per "Fuss" machen per Kreisbogensegment?
Viele Grüße,
Chris
-
vielleicht die beiden kreise mit OR in einen offscreen-speicher schreiben, das weglöschen, was nicht beide kreise sind, und in den screen blitten? klingt aber nicht elegant.
-
Hi,
ja, in dieser Richtung hab ich auch schon gedacht, aber evtl. gibt es ja eine elegante Möglichkeit.
-
Du willst die Schnittmenge nur darstellen?
Vielleicht wirst zu über FloodFill was, da musst du dann nur einen Pixel, der in der Schnittmenge liegt kennen, das sollte machbar sein.
Sie mit einem anderen CopyMode übereinander zeichnen sollte auch was können.
-
ja, nur die Schnittmenge markieren,
also ich habe zwei kreise:
k->setze(600,300); // 1.Kreis k->zeichne(Canvas); k->setze(610,300); // 2.Kreis k->zeichne(Canvas); Form1->Canvas->FloodFill(605,300, RGB(180,180,180),fsBorder); Form1->Canvas->Pixels[605][300] = clBlack; // test, ob punkt sich in der Schnittmenge befindet..
aber es wird nix gefüllt.
hat die funktion jemand schon mal benutzt?
Es funktioniert mit beiden enum-Einträgen für TFillStyle FillStyle leider nicht..
-
Form1->Canvas->Pixels[605][300] = clBlack;
Wo ist das ein Test??
if(...==...)
-
nur ein visueller..
der punkt wird in der schnittmenger beider Kreise gesetzt..