
De forma predeterminada, el grosor de la línea se extiende desde el centro (trazado original) hacia el lado izquierdo y derecho.Ver esta imagen, como puedes ver allí, considera que la línea blanca es el camino original y la línea negra que se superpone con la línea blanca es el grosor.
Mi pregunta: ¿Cómo cambiar la dirección de distribución del espesor hacia abajo y hacia arriba?
La razón por la que pregunto esto es porque cuando dibujo un camino cerrado inscrito en otro camino cerrado se vuelve comoeste. Quiero que el camino cerrado en el interior tenga un espesor en dirección hacia abajo del camino original y el exterior tenga un espesor en dirección ascendente del camino original, para que mi imagen se vea bien.
MWE:
\documentclass[tikz,border=1mm]{standalone}
\usepackage{bm}
\usetikzlibrary{calc,arrows.meta}
\tikzset{
parallel segment/.style={
segment distance/.store in=\segDistance,
segment pos/.store in=\segPos,
segment length/.store in=\segLength,
to path={
($(\tikztostart)!\segPos!(\tikztotarget)!\segLength/2!(\tikztostart)!\segDistance!90:(\tikztotarget)$) --
($(\tikztostart)!\segPos!(\tikztotarget)!\segLength/2!(\tikztotarget)!\segDistance!-90:(\tikztostart)$) \tikztonodes
},
% Default values
segment pos=.5,
segment length=1cm,
segment distance=-2.5mm,
},
}
\begin{document}
\begin{tikzpicture}[>=Latex]
\coordinate (A) at (0,0);
\coordinate (B) at (7,1);
\coordinate (C) at (3.5,4);
\coordinate (D) at (3.5,.5);
\coordinate (E) at (5.25,2.5);
\coordinate (F) at (1.75,2);
\draw [line width=3pt] (A)--(B)--(C)--cycle
node[] at (1.7,.8){$\bm{C}$};
\draw [line width=3pt] (D)--(E)--(F)--cycle;
\draw[->, line width=1.5pt, red] (A) to[parallel segment] (B);
\draw[->, line width=1.5pt, red] (B) to[parallel segment] (C);
\draw[->, line width=1.5pt, red] (C) to[parallel segment] (A);
\end{tikzpicture}
\end{document}
Respuesta1
La solución más sencilla es recortar la trama. Si usa la misma forma para recortar y dibujar, solo será visible la mitad interior de cada línea.
Lo siguiente simplemente recorta las esquinas sobrantes.
\documentclass[tikz,border=1mm]{standalone}
\usepackage{bm}
\usetikzlibrary{calc,arrows.meta}
\tikzset{
parallel segment/.style={
segment distance/.store in=\segDistance,
segment pos/.store in=\segPos,
segment length/.store in=\segLength,
to path={
($(\tikztostart)!\segPos!(\tikztotarget)!\segLength/2!(\tikztostart)!\segDistance!90:(\tikztotarget)$) --
($(\tikztostart)!\segPos!(\tikztotarget)!\segLength/2!(\tikztotarget)!\segDistance!-90:(\tikztostart)$) \tikztonodes
},
% Default values
segment pos=.5,
segment length=1cm,
segment distance=-2.5mm,
},
}
\begin{document}
\begin{tikzpicture}[>=Latex]
\coordinate (A) at (0,0);
\coordinate (B) at (7,1);
\coordinate (C) at (3.5,4);
\coordinate (D) at (3.5,.5);
\coordinate (E) at (5.25,2.5);
\coordinate (F) at (1.75,2);
\draw [line width=3pt] (A)--(B)--(C)--cycle
node[] at (1.7,.8){$\bm{C}$};
\begin{scope}
\clip (A)--(B)--(C)--cycle;
\draw [line width=3pt] (D)--(E)--(F)--cycle;
\end{scope}
\draw[->, line width=1.5pt, red] (A) to[parallel segment] (B);
\draw[->, line width=1.5pt, red] (B) to[parallel segment] (C);
\draw[->, line width=1.5pt, red] (C) to[parallel segment] (A);
\end{tikzpicture}
\end{document}