aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--buch/chapters/110-elliptisch/images/Makefile11
-rw-r--r--buch/chapters/110-elliptisch/images/kegelpara.pdfbin0 -> 139626 bytes
-rw-r--r--buch/chapters/110-elliptisch/images/kegelpara.pov225
-rw-r--r--buch/chapters/110-elliptisch/images/kegelpara.tex41
4 files changed, 277 insertions, 0 deletions
diff --git a/buch/chapters/110-elliptisch/images/Makefile b/buch/chapters/110-elliptisch/images/Makefile
index a7c9e74..7e4fa0c 100644
--- a/buch/chapters/110-elliptisch/images/Makefile
+++ b/buch/chapters/110-elliptisch/images/Makefile
@@ -78,3 +78,14 @@ slcldata.tex: slcl
./slcl --outfile=slcldata.tex --a=0 --b=13.4 --steps=200
slcl.pdf: slcl.tex slcldata.tex
pdflatex slcl.tex
+
+POVRAYOPTIONS = -W1920 -H1080
+kegelpara.png: kegelpara.pov
+ povray +A0.1 -W1080 -H1080 -Okegelpara.png kegelpara.pov
+
+kegelpara.jpg: kegelpara.png Makefile
+ convert -extract 1080x1000+0+40 kegelpara.png \
+ -density 300 -units PixelsPerInch kegelpara.jpg
+
+kegelpara.pdf: kegelpara.tex kegelpara.jpg
+ pdflatex kegelpara.tex
diff --git a/buch/chapters/110-elliptisch/images/kegelpara.pdf b/buch/chapters/110-elliptisch/images/kegelpara.pdf
new file mode 100644
index 0000000..4b03119
--- /dev/null
+++ b/buch/chapters/110-elliptisch/images/kegelpara.pdf
Binary files differ
diff --git a/buch/chapters/110-elliptisch/images/kegelpara.pov b/buch/chapters/110-elliptisch/images/kegelpara.pov
new file mode 100644
index 0000000..5d85eed
--- /dev/null
+++ b/buch/chapters/110-elliptisch/images/kegelpara.pov
@@ -0,0 +1,225 @@
+//
+// kegelpara.pov
+//
+// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+//
+#version 3.7;
+#include "colors.inc"
+
+#declare O = <0,0,0>;
+
+global_settings {
+ assumed_gamma 1
+}
+
+#declare imagescale = 0.08;
+
+camera {
+ location <28, 20, -40>
+ look_at <0, 0.1, 0>
+ right x * imagescale
+ up y * imagescale
+}
+
+light_source {
+ <30, 10, -40> color White
+ area_light <1,0,0> <0,0,1>, 10, 10
+ adaptive 1
+ jitter
+}
+
+sky_sphere {
+ pigment {
+ color rgb<1,1,1>
+ }
+}
+
+
+//
+// draw an arrow from <from> to <to> with thickness <arrowthickness> with
+// color <c>
+//
+#macro arrow(from, to, arrowthickness, c)
+#declare arrowdirection = vnormalize(to - from);
+#declare arrowlength = vlength(to - from);
+union {
+ sphere {
+ from, 1.1 * arrowthickness
+ }
+ cylinder {
+ from,
+ from + (arrowlength - 5 * arrowthickness) * arrowdirection,
+ arrowthickness
+ }
+ cone {
+ from + (arrowlength - 5 * arrowthickness) * arrowdirection,
+ 2 * arrowthickness,
+ to,
+ 0
+ }
+ pigment {
+ color c
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+#end
+
+arrow(<-2,0,0>,<2,0,0>,0.02,White)
+arrow(<0,-2,0>,<0,2,0>,0.02,White)
+arrow(<0,0,-2>,<0,0,2>,0.02,White)
+
+#declare epsilon = 0.001;
+#declare l = 1.5;
+
+#macro Kegel(farbe)
+union {
+ difference {
+ cone { O, 0, <l, 0, 0>, l }
+ cone { O + <epsilon, 0,0>, 0, <l+epsilon, 0, 0>, l }
+ }
+ difference {
+ cone { O, 0, <-l, 0, 0>, l }
+ cone { O + <-epsilon, 0, 0>, 0, <-l-epsilon, 0, 0>, l }
+ }
+ pigment {
+ color farbe
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+#end
+
+#macro F(w, r)
+ <r * cos(w), r * r/sqrt(2), r * sin(w) >
+#end
+
+#macro Paraboloid(farbe)
+mesh {
+ #declare phi = 0;
+ #declare phimax = 2 * pi;
+ #declare phisteps = 100;
+ #declare phistep = pi / phisteps;
+ #declare rsteps = 100;
+ #declare rmax = 1.5;
+ #declare rstep = rmax / rsteps;
+ #while (phi < phimax - phistep/2)
+ #declare r = rstep;
+ #declare h = r * r / sqrt(2);
+ triangle {
+ O, F(phi, r), F(phi + phistep, r)
+ }
+ #while (r < rmax - rstep/2)
+ // ring
+ triangle {
+ F(phi, r),
+ F(phi + phistep, r),
+ F(phi + phistep, r + rstep)
+ }
+ triangle {
+ F(phi, r),
+ F(phi + phistep, r + rstep),
+ F(phi, r + rstep)
+ }
+ #declare r = r + rstep;
+ #end
+ #declare phi = phi + phistep;
+ #end
+ pigment {
+ color farbe
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+#end
+
+#declare a = sqrt(2);
+#macro G(phi,sg)
+ < a*sg*sqrt(cos(2*phi))*cos(phi), a*cos(2*phi), a*sqrt(cos(2*phi))*sin(phi)>
+#end
+
+#macro Lemniskate3D(s, farbe)
+union {
+ #declare phi = -pi / 4;
+ #declare phimax = pi / 4;
+ #declare phisteps = 100;
+ #declare phistep = phimax / phisteps;
+ #while (phi < phimax - phistep/2)
+ sphere { G(phi,1), s }
+ cylinder { G(phi,1), G(phi+phistep,1), s }
+ sphere { G(phi,-1), s }
+ cylinder { G(phi,-1), G(phi+phistep,-1), s }
+ #declare phi = phi + phistep;
+ #end
+ pigment {
+ color farbe
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+#end
+
+#declare a = sqrt(2);
+#macro G2(phi,sg)
+ a * sqrt(cos(2*phi)) * < sg * cos(phi), 0, sin(phi)>
+#end
+
+#macro Lemniskate(s, farbe)
+union {
+ #declare phi = -pi / 4;
+ #declare phimax = pi / 4;
+ #declare phisteps = 100;
+ #declare phistep = phimax / phisteps;
+ #while (phi < phimax - phistep/2)
+ sphere { G2(phi,1), s }
+ cylinder { G2(phi,1), G2(phi+phistep,1), s }
+ sphere { G2(phi,-1), s }
+ cylinder { G2(phi,-1), G2(phi+phistep,-1), s }
+ #declare phi = phi + phistep;
+ #end
+ pigment {
+ color farbe
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+#end
+
+#macro Projektion(s, farbe)
+union {
+ #declare phistep = pi / 16;
+ #declare phi = -pi / 4 + phistep;
+ #declare phimax = pi / 4;
+ #while (phi < phimax - phistep/2)
+ cylinder { G(phi, 1), G2(phi, 1), s }
+ cylinder { G(phi, -1), G2(phi, -1), s }
+ #declare phi = phi + phistep;
+ #end
+ pigment {
+ color farbe
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+#end
+
+#declare kegelfarbe = rgbt<0.2,0.6,0.2,0.2>;
+#declare paraboloidfarbe = rgbt<0.2,0.6,1.0,0.2>;
+
+Paraboloid(paraboloidfarbe)
+Kegel(kegelfarbe)
+Lemniskate3D(0.02, Blue)
+Lemniskate(0.02, Red)
+Projektion(0.01, Yellow)
diff --git a/buch/chapters/110-elliptisch/images/kegelpara.tex b/buch/chapters/110-elliptisch/images/kegelpara.tex
new file mode 100644
index 0000000..5a724ee
--- /dev/null
+++ b/buch/chapters/110-elliptisch/images/kegelpara.tex
@@ -0,0 +1,41 @@
+%
+% kegelpara.tex
+%
+% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+%
+\documentclass[tikz]{standalone}
+\usepackage{times}
+\usepackage{amsmath}
+\usepackage{txfonts}
+\usepackage[utf8]{inputenc}
+\usepackage{graphics}
+\usetikzlibrary{arrows,intersections,math}
+\usepackage{ifthen}
+\begin{document}
+
+\newboolean{showgrid}
+\setboolean{showgrid}{false}
+\def\breite{4}
+\def\hoehe{4}
+
+\begin{tikzpicture}[>=latex,thick]
+
+% Povray Bild
+\node at (0,0) {\includegraphics[width=8cm]{kegelpara.jpg}};
+
+% Gitter
+\ifthenelse{\boolean{showgrid}}{
+\draw[step=0.1,line width=0.1pt] (-\breite,-\hoehe) grid (\breite, \hoehe);
+\draw[step=0.5,line width=0.4pt] (-\breite,-\hoehe) grid (\breite, \hoehe);
+\draw (-\breite,-\hoehe) grid (\breite, \hoehe);
+\fill (0,0) circle[radius=0.05];
+}{}
+
+\node at (3.3,-1.0) {$X$};
+\node at (0.2,3.4) {$Z$};
+\node at (-2.5,-1.4) {$-Y$};
+
+\end{tikzpicture}
+
+\end{document}
+