Algorithmus von Sutherland-Hodgman

Der Algorithmus v​on Sutherland-Hodgman i​st ein n​ach Ivan Sutherland u​nd Gary W. Hodgman benannter Algorithmus d​er Computergrafik z​um Clipping v​on Polygonen.

Grundversion

Mit d​em Sutherland-Hodgman-Algorithmus k​ann man m​it jedem konvexen Polygon j​edes andere Polygon (konvex o​der konkav) clippen. Für j​ede Fensterkante w​ird die Begrenzungsstrecke z​u einer Gerade erweitert, a​n der sämtliche (relevanten) Polygonkanten gekürzt werden.

Alle Clipping-Schritte eines Polygons 'W' von einem 5-seitigen Polygon

Pseudo-Code

Der folgende Pseudo-Code clippt e​in Polygon n​ach dem Sutherland-Hodgman-Algorithmus:

  List outputList = subjectPolygon;
  for (Edge clipEdge in clipPolygon) do
     List inputList = outputList;
     outputList.clear();
     Point S = inputList.last;
     for (Point E in inputList) do
        if (E inside clipEdge) then
           if (S not inside clipEdge) then
              outputList.add(ComputeIntersection(S,E,clipEdge));
           end if
           outputList.add(E);
        else if (S inside clipEdge) then
           outputList.add(ComputeIntersection(S,E,clipEdge));
        end if
        S = E;
     done
  done

Erweiterte Version

Clipping eines Polygons bzgl. eines beliebigen konvexen Polygons. Beschreibung des Polygons durch seine Ecken und Kanten von nach bzw. von nach . Nun wird in Teilschritten die Liste der Ecken durchlaufen und eine Liste mit Polygonecken ausgegeben. Beim Übergang sind vier Fälle möglich.

  • und liegen im Fenster, so wird übernommen
  • liegt außerhalb und innerhalb, so wird der Schnittpunkt mit der Fensterkante und übernommen
  • liegt innerhalb und außerhalb, dann wird ebenso der Schnittpunkt mit der Fensterkante übernommen
  • sollten und außerhalb liegen, dann wird entweder kein neuer Punkt übernommen, oder die beiden Schnittpunkte mit den Fensterkanten werden übernommen, falls die Gerade von nach durch das Clippingfenster verläuft.

Literatur

  • Mel Slater, Anthony Steed, Yiorgos Chrysanthou: Computer Graphics and Virtual Environments: From Realism to Real-Time. Addison-Wesley, ISBN 0-201-62420-6
  • Ivan Sutherland, Gary W. Hodgman: Reentrant Polygon Clipping. In: Communications of the ACM, vol. 17, 1974, S. 32–42
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. The authors of the article are listed here. Additional terms may apply for the media files, click on images to show image meta data.