<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Algorithmus_von_Sutherland-Hodgman</id>
	<title>Algorithmus von Sutherland-Hodgman - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Algorithmus_von_Sutherland-Hodgman"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Algorithmus_von_Sutherland-Hodgman&amp;action=history"/>
	<updated>2026-06-04T12:15:01Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Algorithmus_von_Sutherland-Hodgman&amp;diff=1203053&amp;oldid=prev</id>
		<title>imported&gt;Aka: /* Weblinks */ https</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Algorithmus_von_Sutherland-Hodgman&amp;diff=1203053&amp;oldid=prev"/>
		<updated>2021-05-02T13:56:38Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Weblinks: &lt;/span&gt; https&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Der &amp;#039;&amp;#039;&amp;#039;Algorithmus von Sutherland-Hodgman&amp;#039;&amp;#039;&amp;#039; ist ein nach [[Ivan Sutherland]] und Gary W. Hodgman benannter [[Algorithmus]] der [[Computergrafik]] zum [[Clipping (Computergrafik)|Clipping]] von [[Polygon]]en.&lt;br /&gt;
&lt;br /&gt;
== Grundversion ==&lt;br /&gt;
Mit dem Sutherland-Hodgman-Algorithmus kann man mit jedem konvexen Polygon jedes andere Polygon (konvex oder konkav) clippen. Für jede Fensterkante wird die Begrenzungsstrecke zu einer Gerade erweitert, an der sämtliche (relevanten) Polygonkanten gekürzt werden.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Sutherland-Hodgman clipping sample.svg|zentriert|gerahmt|Alle Clipping-Schritte eines Polygons &amp;#039;W&amp;#039; von einem 5-seitigen Polygon]]&lt;br /&gt;
&lt;br /&gt;
=== Pseudo-Code ===&lt;br /&gt;
Der folgende Pseudo-Code clippt ein Polygon nach dem Sutherland-Hodgman-Algorithmus:&lt;br /&gt;
&lt;br /&gt;
   List outputList = subjectPolygon;&lt;br /&gt;
   for (Edge clipEdge in clipPolygon) do&lt;br /&gt;
      List inputList = outputList;&lt;br /&gt;
      outputList.clear();&lt;br /&gt;
      Point S = inputList.last;&lt;br /&gt;
      for (Point E in inputList) do&lt;br /&gt;
         if (E inside clipEdge) then&lt;br /&gt;
            if (S not inside clipEdge) then&lt;br /&gt;
               outputList.add(ComputeIntersection(S,E,clipEdge));&lt;br /&gt;
            end if&lt;br /&gt;
            outputList.add(E);&lt;br /&gt;
         else if (S inside clipEdge) then&lt;br /&gt;
            outputList.add(ComputeIntersection(S,E,clipEdge));&lt;br /&gt;
         end if&lt;br /&gt;
         S = E;&lt;br /&gt;
      done&lt;br /&gt;
   done&lt;br /&gt;
&lt;br /&gt;
== Erweiterte Version ==&lt;br /&gt;
Clipping eines Polygons bzgl. eines beliebigen konvexen Polygons. Beschreibung des Polygons durch seine Ecken &amp;lt;math&amp;gt;v_1, \ldots, v_n&amp;lt;/math&amp;gt; und Kanten von &amp;lt;math&amp;gt;v_i&amp;lt;/math&amp;gt; nach &amp;lt;math&amp;gt;v_{i+1}, (i=1,\ldots,n-1)&amp;lt;/math&amp;gt; bzw. von &amp;lt;math&amp;gt;v_n&amp;lt;/math&amp;gt; nach &amp;lt;math&amp;gt;v_1&amp;lt;/math&amp;gt;. Nun wird in &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; Teilschritten die Liste der Ecken durchlaufen &amp;lt;math&amp;gt; (v_1 \rightarrow v_2 \rightarrow \ldots \rightarrow v_n \rightarrow v_1) &amp;lt;/math&amp;gt; und eine Liste mit &amp;lt;math&amp;gt;n&amp;#039;&amp;lt;/math&amp;gt; Polygonecken &amp;lt;math&amp;gt;v&amp;#039;_1, \ldots, v&amp;#039;_{n&amp;#039;}&amp;lt;/math&amp;gt; ausgegeben. Beim Übergang &amp;lt;math&amp;gt;v_i \rightarrow v_{i+1}&amp;lt;/math&amp;gt; sind vier Fälle möglich.&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;math&amp;gt;v_i&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;v_{i+1}&amp;lt;/math&amp;gt; liegen im Fenster, so wird &amp;lt;math&amp;gt;v_{i+1}&amp;lt;/math&amp;gt; übernommen&lt;br /&gt;
* liegt &amp;lt;math&amp;gt;v_i&amp;lt;/math&amp;gt; außerhalb und &amp;lt;math&amp;gt;v_{i+1}&amp;lt;/math&amp;gt; innerhalb, so wird der Schnittpunkt mit der Fensterkante und &amp;lt;math&amp;gt;v_{i+1}&amp;lt;/math&amp;gt; übernommen&lt;br /&gt;
* liegt &amp;lt;math&amp;gt;v_i&amp;lt;/math&amp;gt; innerhalb und &amp;lt;math&amp;gt;v_{i+1}&amp;lt;/math&amp;gt; außerhalb, dann wird ebenso der Schnittpunkt mit der Fensterkante übernommen&lt;br /&gt;
* sollten &amp;lt;math&amp;gt;v_i&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;v_{i+1}&amp;lt;/math&amp;gt; außerhalb liegen, dann wird entweder kein neuer Punkt übernommen, oder die beiden Schnittpunkte mit den Fensterkanten werden übernommen, falls die Gerade von &amp;lt;math&amp;gt;v_i&amp;lt;/math&amp;gt; nach &amp;lt;math&amp;gt;v_{i+1}&amp;lt;/math&amp;gt; durch das Clippingfenster verläuft.&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
* Mel Slater, Anthony Steed, Yiorgos Chrysanthou: &amp;#039;&amp;#039;Computer Graphics and Virtual Environments: From Realism to Real-Time.&amp;#039;&amp;#039; Addison-Wesley, ISBN 0-201-62420-6&lt;br /&gt;
* [[Ivan Sutherland]], Gary W. Hodgman: &amp;#039;&amp;#039;Reentrant Polygon Clipping.&amp;#039;&amp;#039; In: &amp;#039;&amp;#039;[[Communications of the ACM]]&amp;#039;&amp;#039;, vol. 17, 1974, S. 32–42&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [https://www.cs.helsinki.fi/group/goa/viewing/leikkaus/intro2.html Sutherland-Hodgman Polygon Clipping]&lt;br /&gt;
* [https://www.cc.gatech.edu/grads/h/Hao-wei.Hsieh/Haowei.Hsieh/code2.html Cohen-Sutherland Algorithm for line clipping]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Algorithmus (Computergrafik)]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Aka</name></author>
	</entry>
</feed>