Finden Sie die Koordinaten entlang der Bézierkurve in Tikz

Finden Sie die Koordinaten entlang der Bézierkurve in Tikz

Nehmen wir an, ich habe in Tikz eine Bézierkurve definiert:

\documentclass{article}
\usepackage{tikz}

\begin{document} 
\begin{tikzpicture}
 \draw (0,0) .. controls (1,2) and  (2,-1) .. (4,0);
\end{tikzpicture}
\end{document} 

Ich möchte Koordinaten entlang der Kurve finden, z. B. bei 30 % und 60 % entlang der Kurve. Ich möchte ihre Position mit einem roten Punkt kennzeichnen und von den Koordinaten ausgehend Pfeile in verschiedene Richtungen zeichnen.

Gibt es einen einfachen Befehl, der Koordinaten entlang einer Bézierkurve zurückgibt? Danke.

Antwort1

Sie können es auf jedem Pfad verwenden markings, einschließlich einer Bézierkurve. mark=at position 0.30bedeutet eine Markierung 30 % entlang des Pfades.

\documentclass[border=0.2 cm]{standalone}
\usepackage{tikz}
\usetikzlibrary{decorations.markings,arrows}
\begin{document}
\begin{tikzpicture}[%
  decoration={markings,
    mark=at position 0.30 with {\coordinate (A); \fill[red] circle [radius=2pt];},
    mark=at position 0.60 with {\coordinate (B); \fill[red] circle [radius=2pt];}
  }]

\draw[postaction={decorate}] (0,0) .. controls (1,2) and  (2,-1) .. (4,0);
\draw[->] (A) -- (1,1);
\draw[->] (B) -- (2,2);
\end{tikzpicture}
\end{document}

Bezierkurve mit Markierungen

verwandte Informationen