Roberts-Algorithmus

Roberts-Algorithmus

Der Roberts-Algorithmus ist ein Verfahren aus der Computergrafik zur Verdeckungsberechnung von Polyedern. Er wurde 1963 veröffentlicht und ist damit der älteste Algorithmus zur Verdeckungsberechnung.[1]

Prinzip

Der Roberts-Algorithmus verarbeitet Polygonkanten und setzt voraus, dass diese zu konvexen Polyedern (Polygonnetzen) gehören. Konkave Körper müssen erst in mehrere konvexe aufgeteilt werden.

Der Roberts-Algorithmus wendet zunächst Backface Culling an, um zu nicht sichtbaren Polygonen gehörende Kanten zu entfernen. Anschließend wird jede verbleibende Kante nach und nach gegen jedes Polyeder, das sie verdecken könnte, getestet. Durch einfache Vergleiche der Koordinaten lassen sich viele Kanten trivial eliminieren.

Beim Vergleich einer Kante mit der durch einen Polyeder aufgespannten Fläche könnten drei Fälle auftreten:

  • Anfangs- und Endpunkt liegen vor der Fläche: in diesem Fall wird die Kante nicht verdeckt.
  • Anfangs- und Endpunkt liegen hinter der Fläche: hier müssen zunächst die Schnittpunkte mit allen Kanten der Fläche ermittelt werden, um den Teil der Kante zu ermitteln, der innerhalb der Fläche liegt und somit gelöscht werden kann. Falls es keine Schnittpunkte gibt, liegt die Kante entweder komplett innerhalb oder komplett außerhalb des getesteten Polyeders.
  • Anfangs- und Endpunkt liegen auf unterschiedlichen Seiten der Ebene: auch hier muss der Schnittpunkt ermittelt werden, an dem die Kante geteilt wird. Mit den entstehenden zwei Teilkanten wird wie oben beschrieben verfahren.

Der Sichtbarkeitstest des Roberts-Algorithmus verwendet lineare Optimierung, um die Werte der Geradengleichung zu ermitteln, für die der Projektionsstrahl durch ein Polyeder verläuft und somit der entsprechende Punkt verdeckt ist.

Da jede Kante gegen jedes Polyeder getestet wird, hat der Roberts-Algorithmus theoretisch quadratische Laufzeit. Dies und das größere Interesse an bildpräzisen Verfahren zur Verdeckungsberechnung führte dazu, dass der Roberts-Algorithmus wenig beachtet wurde. Er lässt sich jedoch durch eine vorausgehende Sortierung nach den z-Koordinaten und einfache Bounding-Volume-Tests so verbessern, dass er eine nahezu lineare Laufzeit aufweist.

Literatur

  • Lawrence G. Roberts: Machine Perception Of Three-Dimensional Solids. Lincoln Laboratory, TR 315, MIT, Cambridge 1963 (Online)
  • David F. Rogers: Procedural Elements for Computer Graphics. WCB/McGraw-Hill, Boston 1998, ISBN 0-07-053548-5

Einzelnachweise

  1. Rogers: Procedural Elements for Computer Graphics, S. 303

Wikimedia Foundation.

Игры ⚽ Поможем решить контрольную работу

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Roberts (Begriffsklärung) — Roberts ist Roberts, ein Familienname, siehe dort Herkunft und Namensträger Bob Robets, US amerikanischer Spielfilm USS Samuel B. Roberts (FFG 58), Schiff der US Marine Roberts Operator, Kantendetektionsfilter in der digitalen Bildverarbeitung… …   Deutsch Wikipedia

  • Roberts-Operator — Der Roberts Operator ist ein einfacher Kantendetektions Algorithmus der Bildverarbeitung und einer der ältesten Operatoren. Der Operator wurde 1963 von Lawrence Roberts vorgestellt[1]. Hier wird die Differenz über Kreuz liegender Pixel berechnet …   Deutsch Wikipedia

  • Itai-Rodeh-Algorithmus — Der Itai Rodeh Algorithmus ist ein Auswahlalgorithmus der Las Vegas Klasse für anonyme unidirektionale Ringe und baut auf dem Chang und Roberts Algorithmus auf. Inhaltsverzeichnis 1 Voraussetzungen 2 Ablauf 2.1 erste Phase …   Deutsch Wikipedia

  • Euklidischer Algorithmus — Der euklidische Algorithmus ist ein Algorithmus aus dem mathematischen Teilgebiet der Zahlentheorie. Mit ihm lässt sich der größte gemeinsame Teiler zweier natürlicher Zahlen berechnen. Das Verfahren ist nach dem griechischen Mathematiker Euklid… …   Deutsch Wikipedia

  • Nachrichtenauslöschung nach Chang und Roberts — Der Algorithmus Nachrichtenauslöschung nach Chang und Roberts ist ein Maximumsalgorithmus für Verteilte Systeme. Er dient dazu aus Knoten, die in einem Ring angeordnet sind, den Knoten mit der größten ID auszuwählen. Grundlage ist der… …   Deutsch Wikipedia

  • Hidden Surface Removal — Oben: Ansicht einer Szene mit Betrachter. Unten links: projizierte Objekte ohne Verdeckungsberechnung. Unten rechts: gerendertes Bild nach Verdeckungsberechnung, bei der ermittelt wurde, dass die blaue Kugel und das graue Dreieck die gelbe Kugel… …   Deutsch Wikipedia

  • Sichtbarkeitsentscheid — Oben: Ansicht einer Szene mit Betrachter. Unten links: projizierte Objekte ohne Verdeckungsberechnung. Unten rechts: gerendertes Bild nach Verdeckungsberechnung, bei der ermittelt wurde, dass die blaue Kugel und das graue Dreieck die gelbe Kugel… …   Deutsch Wikipedia

  • Verdeckungsberechnung — Oben: Ansicht einer Szene mit Betrachter. Unten links: projizierte Objekte ohne Verdeckungsberechnung. Unten rechts: gerendertes Bild nach Verdeckungsberechnung, bei der ermittelt wurde, dass die blaue Kugel und das graue Dreieck die gelbe Kugel… …   Deutsch Wikipedia

  • Sichtbarkeitsproblem — Oben: Ansicht einer Szene mit Betrachter. Unten links: projizierte Objekte ohne Verdeckungsberechnung. Unten rechts: gerendertes Bild nach Verdeckungsberechnung, bei der ermittelt wurde, dass die blaue Kugel und das graue Dreieck die gelbe Kugel… …   Deutsch Wikipedia

  • Vernetztes System — Ein Verteiltes System ist nach der Definition von Andrew Tanenbaum ein Zusammenschluss unabhängiger Computer, der sich für den Benutzer als ein einzelnes System präsentiert. Peter Löhr definiert es etwas grundlegender als „eine Menge… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”