AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Algorithmen, Datenstrukturen und Klassendesign Volumen und Mittelpunkt von einem 3D-Raum berechnen?
Thema durchsuchen
Ansicht
Themen-Optionen

Volumen und Mittelpunkt von einem 3D-Raum berechnen?

Ein Thema von Maiky · begonnen am 11. Feb 2018 · letzter Beitrag vom 13. Feb 2018
 
Medium

Registriert seit: 23. Jan 2008
3.689 Beiträge
 
Delphi 2007 Enterprise
 
#10

AW: Volumen und Mittelpunkt von einem 3D-Raum berechnen?

  Alt 12. Feb 2018, 15:27
Du mußt da halt nur aufpassen, dass es keine Überschneidungen von den angenommenden Pyramiden und der Außenhaut gibt.
Das ist der große Knackpunkt. Die Methode funktioniert nur dann garantiert, wenn das gesamte Gebilde an allen Stellen konvex ist. Es muss nicht fehlschlagen bei konkaven, aber es kann.
Zitat:
Notfalls den gesamten Raum in mehrere Teile zerlegen (eine/mehrere Trennflächen in diesen Körper legen) und jeden Teil dann mit eigenen Mittelpunkten und Pyramiden zerlegen, berechnen und alles summieren.
Und das wäre dann der komplizierte Teil . Man müsste eine Methode finden, die für beliebige Körper die beliebig vielen Flächen finden, die diesen in rein konvexe Teilkörper zerteilt. Viel Spaß dabei. (Nicht, dass es nicht möglich wäre, aber AutoCAD und Co haben ihren Preis nicht nur aus Spaß.)

Man braucht dafür übrigens den Schwerpunkt nichtmals. Man muss nur einen finden, bei dem sich die Tetraeder nachher nicht überdecken. "Nur".

Das gleiche Verfahren klappt für 2D sehr gut. Da hat man den Vorteil, dass man anhand der Reihenfolge der Punkte der Dreiecke feststellen kann, ob man "zurück gehüpft" ist (=konkave Stelle). Diese subtrahiert man dann einfach vom Gesamtergebnis, und bekommt am Ende die korrekte Fläche. Man kann daher dabei sogar einen beliebigen Startpunkt wählen.
Aber auch diese Methode hat eine Achillesferse (wie auch die 3D-Version wenn man das konkav-Problem gelöst hätte): Löcher. Löcher, wie das vom TE gezeigte, bringen wieder einen ganz eigenen Schwierigkeitsgrad ins Spiel.

Je allgemeiner die Form, desto aufwendiger der Lösungsweg. Von x³ bis hin zu komplizierten analytischen Verfahren (Stichwort parametrische Körper z.B.). Aus dem Stegreif wüsste ich nicht, wie ich das Problem des TE angehen würde, obgleich ich schon einiges im Bereich 3D bzw. Geometrie generell gemacht habe. Aber jede Verallgemeinerung die man ausschließen kann, macht's nachher einfacher. Wenn man z.B. "keine Löcher" und "nur konvex" definieren könnte, wäre der Ansatz über Tetraeder schon ein guter.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz