Antwort1
Aktualisieren:Ich füge eine zweite Möglichkeit hinzu, dies zu tun.
- Die erste Möglichkeit verwendet
double
Linie undclip
s. - Die zweite Möglichkeit verwendet
arc
s. Dies ist einfacher, aber nicht für jede Art von Kurve gültig.
\documentclass[tikz,border=2mm]{standalone}
\newcommand{\myline}{(0,0) -- (5,0) to[out=0,in=180] (6,0.25) to[out=0,in=180] (7,0) -- (8,0)}
\definecolor{mygreen} {HTML}{9DC634}
\definecolor{myorange}{HTML}{F39614}
\definecolor{mypink} {HTML}{FF00FF} % changed
\definecolor{mypurple}{HTML}{AB7CB5}
\begin{document}
\begin{tikzpicture}
\useasboundingbox (-0.5,-1.5) rectangle (8.5,1);
% first way
\begin{scope}
\clip (0,-1) rectangle (8,1);
\begin{scope}
\clip\myline |- (0,1) --cycle;
\draw[mypurple,double distance=1.5mm-\pgflinewidth] \myline;
\draw[mypink ,double distance=0.5mm-\pgflinewidth] \myline;
\end{scope}
\begin{scope}
\clip\myline |- (0,-1) --cycle;
\draw[mygreen ,double distance=1.5mm-\pgflinewidth] \myline;
\draw[myorange,double distance=0.5mm-\pgflinewidth] \myline;
\end{scope}
\end{scope}
% second way
\begin{scope}[shift={(0,-1)}]
\foreach[count=\ii]\i in {mygreen,myorange,mypink,mypurple}
\draw[draw=\i] (0,0.05*\ii) --++ (1,0) arc (270:290:1.5-0.05*\ii) arc (110:70:2+0.05*\ii)
arc (250:270:1.5-0.05*\ii) -- (8,0.05*\ii);
\end{scope}
\end{tikzpicture}
\end{document}
Antwort2
Bézierkurven parallel zu machen ist kein triviales Problem. Hier ist ein dritter, etwas komplizierterer Ansatz.
Code
\documentclass[tikz]{standalone}
\begin{document}
\tikz[
very thick,
loo/.style args={#1:#2}{#1 looseness=1.05^\i,#2 looseness=.95^\i}
] \foreach[count=\i]\c in {9DC634, F39614, FFC0CB, AB7CB5}
\color[HTML]{\c}
\draw[yshift=\i mm, out=0, in=180] (0,0) --++(right:3)
to[loo=in:out] ++(2,.5) to[loo=out:in] ++(2,-.5) -- ++(right:1);
\end{document}
Ausgabe
Antwort3
Man könnte bend
die Zeile etwas anders formulieren:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[rounded corners=0.2cm]
\draw[red] (0,0) -- (5,0) to[bend left=35] (7,0) -- (9,0);
\draw[green,yshift=1mm] (0,0) -- (5,0) to[bend left=35] (7,0) -- (9,0);
\end{tikzpicture}
\end{document}
Antwort4
Hier ist eine andere Lösung mittikz-nfold, Anerkennung andiese Antwortfür die Farben.
Die Vorteile dieser Lösung liegen darin, dass sie mit fast jedem Pfad funktioniert und dass die gekrümmten Teile alle einen konstanten Abstand voneinander haben. Nachteile sind, dass Sie eine andere Bibliothek laden müssen und dass die Kompilierungszeiten etwas länger sein können.
Aktualisieren
Die Benutzeroberfläche ist mit tikz-nfold Version 0.1.0 einfacher geworden:
\usepackage{tikz}
\usetikzlibrary{nfold}
[...]
\begin{tikzpicture}
\path[save path=\mypath]
(0,0) -- (5,0) to[out=0, in=180] (7,.75) to[out=0, in=180] (9,0) -- (10,0);
\pgfsetlinewidth{1pt}
\foreach \mycolor [count=\i] in {9DC634,F39614,FF00FF,AB7CB5}
\definecolor{tempcolor}{HTML}{\mycolor}
\color{tempcolor}
\pgfoffsetpathindex{\mypath}{8pt}{\i}{4}
\pgfusepathqstroke;
\end{tikzpicture}