Hobbykomiker
21-11-2013, 13:35
Hallo,
ich habe schon wieder ein (halb-gelöstes) Problem :)
Folgende Aufgabe wollte ich lösen:
Bestimme die Schnittpunkte einer Funktion mit einer Umrandung.
Dann plotte die Funktion nur zwischen den beiden Punkten.
Bemerkung: Die Möglichkeit, dies mit \path[clip] zu bewerkstelligen, wollte ich aus verschiedenen Gründen nicht anwenden.
Erstmal mein (wieder heruntergekochtes) Beispiel:
\documentclass[10pt]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\begin{document}
\usetikzlibrary{intersections,calc}
\begin{tikzpicture}
\path[ draw,
name path=Rand
] (0,0) -- (1.5,0) -- (2,1) -- (1,2) -- (0,1.8) --cycle ;
\path[ samples=100,
variable=\xx,
name path=Funktion
] plot({\xx},{sin(deg(\xx))+.8}) ;
\path[name intersections={of=Funktion and Rand}] ;
\path[draw,fill=blue] (intersection-1) circle (.1cm) ;
\path[draw,fill=green] (intersection-2) circle (.1cm) ;
\path[ draw,
variable=\xx,
samples=100]
let \p1 = (intersection-1) ,
\p2 = (intersection-2) in
node[anchor=east] {\x1}
plot[domain=\x1:\x2] ({\xx/72.27*2.54},{sin(deg(\xx/72.27*2.54))+.8})
node[anchor=west] {\x2} ;
\end{tikzpicture}
\end{document}
Es wird also zweimal mittels 'plot' einfach eine Sinus-Funktion aufgerufen.
Beim zweiten Aufruf musste ich jedoch per Hand von pt auf cm umrechnen, damit das Gleiche passiert, wie beim ersten Aufruf.
Daher meine Frage: Gibt es die Möglichkeit, tikZ zu zwingen beide Male in cm (was meines Wissens Standard sein sollte - bitte um Korrektur wenn nicht) zu rechnen?
Danke im Voraus,
Thorsten
ich habe schon wieder ein (halb-gelöstes) Problem :)
Folgende Aufgabe wollte ich lösen:
Bestimme die Schnittpunkte einer Funktion mit einer Umrandung.
Dann plotte die Funktion nur zwischen den beiden Punkten.
Bemerkung: Die Möglichkeit, dies mit \path[clip] zu bewerkstelligen, wollte ich aus verschiedenen Gründen nicht anwenden.
Erstmal mein (wieder heruntergekochtes) Beispiel:
\documentclass[10pt]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\begin{document}
\usetikzlibrary{intersections,calc}
\begin{tikzpicture}
\path[ draw,
name path=Rand
] (0,0) -- (1.5,0) -- (2,1) -- (1,2) -- (0,1.8) --cycle ;
\path[ samples=100,
variable=\xx,
name path=Funktion
] plot({\xx},{sin(deg(\xx))+.8}) ;
\path[name intersections={of=Funktion and Rand}] ;
\path[draw,fill=blue] (intersection-1) circle (.1cm) ;
\path[draw,fill=green] (intersection-2) circle (.1cm) ;
\path[ draw,
variable=\xx,
samples=100]
let \p1 = (intersection-1) ,
\p2 = (intersection-2) in
node[anchor=east] {\x1}
plot[domain=\x1:\x2] ({\xx/72.27*2.54},{sin(deg(\xx/72.27*2.54))+.8})
node[anchor=west] {\x2} ;
\end{tikzpicture}
\end{document}
Es wird also zweimal mittels 'plot' einfach eine Sinus-Funktion aufgerufen.
Beim zweiten Aufruf musste ich jedoch per Hand von pt auf cm umrechnen, damit das Gleiche passiert, wie beim ersten Aufruf.
Daher meine Frage: Gibt es die Möglichkeit, tikZ zu zwingen beide Male in cm (was meines Wissens Standard sein sollte - bitte um Korrektur wenn nicht) zu rechnen?
Danke im Voraus,
Thorsten