Texto colocado a una distancia de la línea, radio y ángulo dados

Texto colocado a una distancia de la línea, radio y ángulo dados

Supongamos una línea de A a B. En p% (o p mm/cm) de la distancia de A a B, comenzando desde A, quiero "girar" usando un radio r y un ángulo y con respecto a la dirección AB ( y=0 está en la dirección de la línea AB, 90=90 grados a la izquierda de la dirección de la línea AB, etc.) y coloque un texto allí.

El siguiente comando,

\node at ($(A)!0.5!10:(B)$){x};

coloca la 'x' en un ángulo de 10 grados con respecto al plano horizontal, alrededor de A (no a la distancia del 50%) con el radio del 50% de la distancia entre A y B, pero me gusta tener un comando más general donde puedo especificar el radio y ángulo, relativo a la dirección de la línea en p% de la distancia de la línea, comenzando desde A. ¿Es esto posible? TÍA! (¡Perdón por la descripción/pregunta confusa!)

Respuesta1

Esto es lo que muestra el último ejemplo de la sección.13.5.4 La sintaxis de los modificadores de distancia del pgfmanual v 3.1.4hace. Al anidar la calcsintaxis, puede combinar las directivas utilizadas allí en una.

\documentclass[tikz]{standalone} 
\usetikzlibrary{calc}  
\begin{document} 
\begin{tikzpicture} 
\coordinate (a) at (1,0); 
\coordinate (b) at (3,1); 
\draw (a) -- (b); \path ($ ($ (a)!.5!(b) $)!1cm!90:(b) $) node{x}; 
\end{tikzpicture} 
\end{document}

Si desea utilizar estas cosas repetidamente, puede tener sentido definir un estilo en el que la fracción, el radio y el ángulo se almacenen en claves pgf.

\documentclass[tikz]{standalone}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}[between/.style args={#1 and #2}{/tikz/insert path={%
 ($ ($ (#1)!\pgfkeysvalueof{/tikz/mf67/fraction}!(#2)
 $)!\pgfkeysvalueof{/tikz/mf67/radius}!\pgfkeysvalueof{/tikz/mf67/angle}:(#2) $)}},
 mf67/.cd,fraction/.initial=.5,radius/.initial=1cm,angle/.initial=90,
 ]
  \coordinate (A) at (1,0);
  \coordinate (B) at (3,1);
  \draw (A) -- (B);
  \path[between=A and B] node{x};
  \path[mf67/.cd,fraction=0.2,radius=1.5cm,angle=-30,/tikz/between=A and B] node{y};
\end{tikzpicture}
\end{document}

ingrese la descripción de la imagen aquí

información relacionada