Das Zeichnen von Kreisen und Ellipsen

Eine weitere Aufgabe besteht darin, einen Kreis oder eine Ellipse zu zeichnen, ohne dabei selbst die Koordinaten einiger Stützpunkte auf der Kreislinie angeben zu müssen. Dies geschieht durch Berechnung der Parameterdarstellung der Kreis- bzw. Ellipsengleichung in der Ebene. Dazu folgende Aufgabe: Gegeben seien ein Startwinkel φ0 und ein Endwinkel φ1 in Grad, ein Mittelpunkt x, y, horizontale und vertikale Halbachse rx, ry, die Anzahl approximierender Punkte n sowie ein Drehwinkel bezüglich des Mittelpunktes α. Gesucht sind die Grafikbefehle der Treiber zum Zeichnen des zugehörigen Ellipsenbogens.

Als Lösung werden die n Punkte mit Hilfe eines Wiederholfaktors und der Parameterdarstellung der Ellipse erzeugt, um α gedreht und schließlich mit einem Spline verbunden.

Der Code zum Zeichnen sieht dann wie folgt aus:

\special{gr
  def t0=phi0*pi/180;
  def t1=phi1*pi/180;
  def rot=alpha*pi/180;
  setpoint 0 t=t0..t1:n[rx*cos(t)+x,ry*sin(t)+y:rot[x,y]];
  spline 0-n-1}

Mit den Parametern x = 50, y = 50, rx = 50, ry = 20, φ0 = 0, φ1 = 270, α = 15 und n = 12 ergibt das die Punkte von Abbildung A.17 links, die verbunden durch einen Spline den Ellipsenbogen in Abbildung A.17 rechts zeichnen.

Abbildung: Ellipsenbogen
\begin{figure}\centering
\setdefaults\setunitlength{1pt}
\begin{picture}(250,80)...
...0*cos(t)+200,20*sin(t)+50:rot[200,50]];
spline 0-11}}
\end{picture}\end{figure}