Thema: Delphi Fläche berechnen

Einzelnen Beitrag anzeigen

menschjens

Registriert seit: 21. Jun 2004
21 Beiträge
 
Delphi XE Professional
 
#8

Re: Fläche berechnen

  Alt 17. Aug 2004, 20:00
Also wenn ich dein Problem richtig verstehe, möchtest programmtechnisch aus 3 Parallelprojektionen (vermutlich Bitmap-Grafiken o.ä.) von (wie auch immer gearteten) Körpern ein 3D-Modell des Körpers generieren. Dabei stößt du auf die folgenden Probleme:

1. Du möchtest jedem Punkt der XY-Ebene einen Z-Wert zuordnen. Das ist so für Körper nicht machbar, da jedem Punkt der XY-Ebene immer mindestens 2 Z-Werte zugeordnet werden müssten (Ober- und Unterseite). Bei "eingestülpten" Körpern wären es sogar mehr als 2 (z.B. 4 oder 6...) Z-Werte.

2. Dein Programm müsste sich aus den einzelnen Ansichten die jeweils ablesbaren Koordinaten der einzelnen Oberflächenpunkte zusammensuchen. Aufgrund der Verdeckung großer Oberflächenabschnitte sind aber nur die wenigsten Punkte in allen 3 Ansichten zu sehen. Ausreichen würde auch, wenn jeder Punkt in mindestens 2 Ansichten sichtbar wäre, aber selbst das ist lange nicht bei allen Punkten der Fall. Dieses Problem würde sich einfacher gestalten, wenn der in den Ansichten dargestellte Körper ein "durchsichtiges" Netz wäre. Vielleicht ist das ja der Fall.

3. Für die Punkte, die man also in mindestens 2 Ansichten sieht, besteht jetzt noch das Problem, herauszufinden, wo sich ein Punkt der einen Ansicht in der 2. bzw. 3. Ansicht wiederfindet. Das ist für dich und mich relativ einfach, für dein Programm aber in den meisten Fällen sehr schwierig. Der Grund ist, dass die Punkte der Körperoberfläche sich vermutlich nicht sehr stark voneinander unterscheiden. Selbst, wenn der Körper kunterbunt ist, wird es deinem Programm sehr schwer fallen, z.B. einen hellroten Punkt in einer der anderen Ansichten zweifelsfrei wieder zu erkennen. Hierzu wären z.B. Programme mit künstlichen neuronalen Netzen in der Lage, da diese Oberflächenmuster wieder erkennen könnten. Problem dabei ist, dass diese Muster in den verschiedenen Ansichten
aus unterschiedlichen Richtungen auch unterschiedlich verzerrt zu sehen sind.

4. Wenn aber die Probleme 1 bis 3 gelöst wären, hättest du als ideales Ergebnis eine innen hohle 3D-Punktewolke. Also streng genommen noch immer keinen 3D-Körper. Aber ich will mal nicht noch weiter ins Detail gehen. Vielleicht hab ich ja auch deine Frage ganz falsch verstanden...

Zusammenfassend würde ich sagen, dass es - so wie ich deine Frage verstehe - wie ich schon sagte nicht so einfach ist. Aber frisch ans Werk! Einfach mit Problem 1 anfangen und dann langsam durchackern.

Gruß Jens
Jens-Uwe Horn
  Mit Zitat antworten Zitat