
Quiero indicar la longitud de la curva s. Usé el algoritmo suave de la misma manera pero la curva no parece "suave":
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{arrows.meta}
\begin{document}
\begin{tikzpicture}
[
>=stealth,
cm={-1,-1,1,0,(0,0)},
x=3.85mm,
z=-1cm,
axis/.style={-, black},
vector/.style={-{Stealth[length=6,width=3]}, very thick, black}
]
\draw (0,0,0) node[left]{$O$};
\draw[axis] (0,0,0) -- (4,0,0) node[left]{$X$};
\draw[axis] (0,0,0) -- (0,4,0) node[right]{$Y$};
\draw[axis] (0,0,0) -- (0,0,4) node[left]{$Z$};
\draw[vector] (0,0,0) -- (1,1,2) node[circle,fill,inner sep=0.7pt,label=left:$ A $](){};
\draw (0.5,0.5,1) node[right]{$ \vec{r}_{0} $};
\draw[vector] (0,0,0) -- (2.5,4,2.5) node[circle,fill,inner sep=0.7pt,label=right:$ B $](){};
\draw (1.25,2,1.25) node[below]{$ \vec{r}(t) $};
\draw[vector] (1,1,2) -- (2.5,4,2.5);
\draw (1.75,2.25,2.25) node[below]{$ \Delta \vec{r} $};
\draw [thick] plot [smooth, tension=1] coordinates { (1,1,2) (1.75,2.5,2.5) (2.5,4,2.5)};
\draw [>=Bracket, <->] plot [smooth, tension=1] coordinates { (1,1,2.25) (1.75,2.5,2.75) (2.5,4,2.75)};
\draw (1.75,2.5,2.5) node[above]{$ s $};
\end{tikzpicture}
\end{document}
Respuesta1
Ok, entonces el problema no es con las coordenadas ni nada más, es con el plot
especificador de ruta que maneja las puntas de las flechas, se trata aquí:La opción Suavizar a veces produce puntas de flecha incorrectas en PGFplots. Jake proporciona una solución para agregar puntas de flecha a PGFplots, específicamente.
Como estás usando TikZ, no funcionará. Pero tengo una solución. Primero, dado que el diagrama Brackets
es el mismo que el siguiente, debes usar la shift
opción que hace que el dibujo sea más conciso. Muy bien, ahora que sabemos que el problema ocurre cuando agregamos puntas de flecha, simplemente dibujaremos sin puntas y las agregaremos más tarde:
\draw[>={Bracket[]}, postaction={<->, tips=true}, shift={(0,0,.25)}] plot[smooth,...
La clave tips=true
sobrescribe las reglas para agregar puntas de flecha, lo que obliga a TikZ a agregar flechas incluso si no hay ningún dibujo. El resultado es:
MWE
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{arrows.meta}
\begin{document}
\begin{tikzpicture}
[
>=stealth,
cm={-1,-1,1,0,(0,0)},
x=3.85mm,
z=-1cm,
axis/.style={-, black},
vector/.style={-{Stealth[length=6,width=3]}, very thick, black}
]
\draw (0,0,0) node[left]{$O$};
\draw[axis] (0,0,0) -- (4,0,0) node[left]{$X$};
\draw[axis] (0,0,0) -- (0,4,0) node[right]{$Y$};
\draw[axis] (0,0,0) -- (0,0,4) node[left]{$Z$};
\draw[vector] (0,0,0) -- (1,1,2) node[circle,fill,inner sep=0.7pt,label=left:$ A $](){};
\draw (0.5,0.5,1) node[right]{$ \vec{r}_{0} $};
\draw[vector] (0,0,0) -- (2.5,4,2.5) node[circle,fill,inner sep=0.7pt,label=right:$ B $](){};
\draw (1.25,2,1.25) node[below]{$ \vec{r}(t) $};
\draw[vector] (1,1,2) -- (2.5,4,2.5);
\draw (1.75,2.25,2.25) node[below]{$ \Delta \vec{r} $};
\draw [thick] plot [smooth, tension=1] coordinates { (1,1,2) (1.75,2.5,2.5) (2.5,4,2.5)};
\draw [>={Bracket[]}, postaction={<->, tips=true}, shift={(0,0,.25)}] plot [smooth, tension=1] coordinates { (1,1,2) (1.75,2.5,2.5) (2.5,4,2.5) };
\draw (1.75,2.5,2.5) node[above]{$ s $};
\end{tikzpicture}
\end{document}