Algorithmus oder Bibliothek für Schnittfläche von Kreisen



  • Hi,

    ich muss in C++ den Flächeninhalt von Kreisen berechnen. Ich hab Radius und Koordinaten von den Kreisen und brauche den gesamten Flächeninhalt der Kreise.

    Wenn sich allerdings zwei oder mehr Kreise schneiden, muss man die Fläche ja rausrechnen, damit sich nicht doppelt mitgezählt wird.
    Gibt es eine Bibliothek oder einen Algorithmus der bei gegebenen Koordinaten und Radius von den Kreisen, den eingeschlossenen Flächeninhalt oder die Schnittflächen berechnet?



  • Sicher gibt es so etwas im Internet als Bibliothek, aber ich denke du solltest es alleine implementieren. Und sicher gibt es einen Algorithmus, aber du darfst auch gerne mal selbst darueber nachdenken.



  • ich habs nicht durchgelesen, aber auf den ersten blick sah das hier gut aus(war übrigens das erste ergebnis auf google wenn man nach "kreisstück flächeninhalt" sucht)

    http://www.schoolwork.de/forum/mathematik/flaeche-berechnen-kreisausschnitt-trapezformel-t17306/

    und bing hat nur 3 ergebnisse gebracht, das erste sieht allerdings auch gar nich so schlecht aus:
    http://www.bing.com/search?q=kreisstück+flächeninhalt&form=QBLH&filt=all

    bb



  • unskilled schrieb:

    und bing [..]

    Du hast einen bing-vergleich-faible, nicht? :p



  • <offtopic>

    drakon schrieb:

    unskilled schrieb:

    und bing [..]

    Du hast einen bing-vergleich-faible, nicht? :p

    jopp^^ allein schon das hintergrundbild ist immer toll 😉 allgemein hab ich bisher nur wenig ärger mit ms-produkten gehabt - ein grund, ms zu vertrauen^^
    und ich hatte in letzter zeit auch schon mehrere suchergebnisse, wo bing besser abschnitt - iwie nutz ich aber trotzdem immer google und mir fällt erst danach ein, dass ich mal gucken könnte, was bing dazu sagt ;o)
    ist halt schade, dass live-search am anfang so extrem unbrauchbar war, dass man alle potentiellen nutzer verschreckt hat - ich denke manchmal, wenn man mehr erfahrung mit bing hätte, würde man bei vielen suchen bessere suchergebnisse erzielen können als mit google...
    aber es scheint unter anderem noch daran zu mangeln, dass nicht mal annähernd so viele webseiten indiziert wurden, wie das bei google der fall ist...

    bb



  • Hi,

    das ganze ist ein wenig komplizierter. Mit 2 Kreisen konnte ich mir das ganze noch herleiten und berechnen. da brauch ich auch nur die Kreismittelpunkte und die Radien.

    Aber ich habe beliebig viele Kreise, die willkürlich im Raum rumschwirren. Welche Kreise sich überhaupt schneiden kann man leicht herausfinden, die "Gruppen" kann man ja getrennt berechnen. Aber wie mache ich das wenn sich z.B. 6 Kreise in irgendeiner beliebigen Form überschneiden. Davon muss ich ja den Flächeninhalt ausrechnen bzw zumindestens approximieren.


  • Mod

    Baca schrieb:

    Hi,

    das ganze ist ein wenig komplizierter. Mit 2 Kreisen konnte ich mir das ganze noch herleiten und berechnen. da brauch ich auch nur die Kreismittelpunkte und die Radien.

    Aber ich habe beliebig viele Kreise, die willkürlich im Raum rumschwirren. Welche Kreise sich überhaupt schneiden kann man leicht herausfinden, die "Gruppen" kann man ja getrennt berechnen. Aber wie mache ich das wenn sich z.B. 6 Kreise in irgendeiner beliebigen Form überschneiden.

    Ich hatte mal ein ähnliches Problem, bei dem es um die Oberfläche von Gebilden aus sich schneidenden Kugeln ging. Das war bei mehr als 2 Kugeln auch nicht mehr allgemein analytisch lösbar.

    Davon muss ich ja den Flächeninhalt ausrechnen bzw zumindestens approximieren.

    Ich habe mich damals mit einer Monte Carlo Approximation zufrieden gegeben. Das war aber eher von dem Wunsch getrieben, mal was mit MC zu machen. Das ist sicher nicht die geschickteste Art und Weise, um sowas zu approximieren. Aber ich kann berichten: Es hat zufriedenstellend funktioniert.



  • danke für den Tipp, ich hab mir das grad mal angeschaut, das sieht aber schon garnicht so schlecht aus.

    Zumindestens kann ich mir ein Verfahren mit so einer Variante vorstellen.


Log in to reply