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}](img41.png) |