
He creado una macro \measurement
que me permite agregar medidas a mis dibujos. Funciona bien, pero las etiquetas a veces son volátiles. En el siguiente ejemplo, las etiquetas de medición se giran de manera diferente aunque los comandos son prácticamente idénticos. Supongo que debe haber una mejor manera de controlar el etiquetado. ¿Alguien tiene alguna idea?
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{calc}
\tikzset{myscale/.code={\edef\myscale{#1}\tikzset{scale=#1}}}
\def\myscale{1}
\newcommand{\measure}[4]{%
\pgfmathsetlengthmacro\mylength{8pt/\myscale}
\draw[very thin] #1 -- ($#1!\mylength!-90:#2$) coordinate (a) -- ($#1!\mylength+0.4*\mylength!-90:#2$);
\draw[very thin] #2 -- ($#2!\mylength!90:#1$) coordinate (b) -- ($#2!\mylength+0.4*\mylength!90:#1$);
\draw[very thin,<->,>=stealth] (a) -- (b) node[auto,sloped,#3] {#4};
}
\begin{document}
\begin{tikzpicture}[myscale=0.12]
\begin{scope}[rotate=20]
\draw[red] (0,0) -- (0,12);
\measure{(0,0)}{(0,12)}{midway,above,rotate=20,font=\small}{red}
\draw[blue] (0,12) -- (0,24);
\measure{(0,12)}{(0,24)}{midway,above,rotate=20,font=\small}{blue}
\end{scope}
\end{tikzpicture}
\end{document}
Respuesta1
Tiene una línea vertical (excepto para redondear), que luego gira 20 grados. Dependiendo del redondeo, la línea se inclina un poco hacia la izquierda o un poco hacia la derecha y el nudo se invierte naturalmente.
No he intentado investigar qué intentas hacer o cuál es la mejor manera de hacerlo; tal vez haya otra pregunta.
Entonces la respuesta es:La vertical lo hace inestable..
Para ver el efecto, pruebe este código:
\documentclass[tikz, border=1cm]{standalone}
\tikzset{
nodetest/.pic={
\coordinate (c) at (1,10); %intermediate coordinate to create rounding
\draw (1,0) -- (c) node[auto, sloped, midway] {test};
}}
\begin{document}
\begin{tikzpicture}
\foreach \pos in {0.01,0.02,...,2}
\pic[scale=\pos] at (10*\pos,0) {nodetest};
\end{tikzpicture}
\end{document}
Líneas escaladas de (0,0) a (1,10):
Líneas escaladas de (2,0) a (1,10):
Líneas escaladas de (1,0) a (1,10):
Se ve que la banda oscura de nodos en el medio es inestable para las líneas verticales.
Editar:
Sólo puedo adivinar lo que quieres. A continuación se muestran nodos paralelos y debajo de la línea leída desde la primera coordenada hasta la segunda. Es estable en todas las escalas.
\documentclass[tikz, border=1cm]{standalone}
\usetikzlibrary{arrows.meta}
\begin{document}
\begin{tikzpicture}
\foreach \ang in {0,20,...,340}{
\coordinate (a) at (\ang:1);
\coordinate (b) at (\ang:4);
\draw[Stealth-Stealth] (a) --node[sloped, auto, swap, allow upside down=true]{red} (b);
}
\end{tikzpicture}
\end{document}
Respuesta2
Quizás esto ayude - contkz-euclide
MWE
\documentclass{article}
\usepackage{tkz-euclide}
\begin{document}
\begin{tikzpicture}[scale=1.2]
\tkzDefPoints{0/0/A,-4/4/B}
\tkzDefPointWith[linear,K=0.5](A,B)
\tkzGetPoint{C}
\tkzDrawSegment[red, very thick](A,C)
\tkzDrawSegment[blue,very thick](B,C)
\tkzDrawPoints[color=black](A,B,C)
\tkzLabelPoints[above right=3pt](A,B,C)
\tkzDrawSegment[style=red, dashed, dim={$10$,15pt,midway,font=\scriptsize, rotate=45}](A,C)
\tkzDrawSegment[style=blue, dashed, dim={$10$,15pt,midway,font=\scriptsize, rotate=45}](C,B)
\end{tikzpicture}
\end{document}