Colorea cada borde por separado en TikZ

Colorea cada borde por separado en TikZ

Quiero colorear el borde AB con un color azul intenso y los bordes AC y BC con un color rojo intenso.

Refiriéndose a la respuesta enBordes de múltiples colores en TikZ, una forma es utilizar el \clip[draw]comando. Pero no estoy seguro de cómo usarlo en mi contexto, ya que mi forma es un triángulo y el triángulo también está relleno de color naranja.

Resultado Esperado:

ingrese la descripción de la imagen aquí

Resultado actual:

ingrese la descripción de la imagen aquí

El triángulo aún debe tener el color naranja relleno y los bordes con el color mencionado anteriormente.

Nota: Este ejemplo proviene únicamente del manual de PGF. No se recomienda/agradece proporcionar el código en el manual sin explicación.

¿Existe una forma alternativa de rellenar una forma en lugar de usar \filldrawo \draw[fill]ordenar?

MWE:

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc}
\usetikzlibrary{through}
\usetikzlibrary{intersections}
\begin{document}
\begin{tikzpicture}[help lines/.style={thin,draw=black!50}]
  \coordinate[label=left:\textcolor{blue!80!black}{$A$}] (A) at (0,0);
  \coordinate[label=right:\textcolor{blue!80!black}{$B$}] (B) at (1.25,0.25);
  \draw[name path=A--B] (A) -- (B);
%  \draw let \p1 = ($(B) - (A)$),
%            \n2 = {veclen(\x1,\y1)}
%        in
%           (A) circle (\n2)
%           (B) circle (\n2);
  \node (D) [name path=D,draw,circle through=(B),label=left:$D$,help lines,draw] at (A) {};
  \node (E) [name path=E,draw,circle through=(A),label=right:$E$,help lines,draw] at (B) {};

  \path [name intersections={of=D and E, by={[label=above:$C$]C,[label=below:$C'$]C'}}];

  %\coordinate[label=above:$C$] (C) at (intersection-1); using by instead

  \draw [name path=C--C',red] (C) -- (C');

  \path [name intersections={of=A--B and C--C', by=F}];
  \node[fill=red,inner sep=1pt, label=-45:$F$] at (F) {};

  \draw[fill=orange!80] (A) -- (B) -- (C) -- cycle;
  \foreach \point in {A,B,C}
    \fill [black,opacity=0.5] (\point) circle (2pt);
\end{tikzpicture}
\end{document} 

Respuesta1

Algunas opciones se pueden aplicar a unparte del camino, este es el caso de rounded corners. Pero esto no funciona con lo colorsindicado en la página 149 del manual 3.1.1 que siempre aplica para elcamino completo.

Captura de pantalla de la página 149:

captura de pantalla

Entonces, para hacerlo más fácil:

  • Primero coloreé el triángulo ABC de naranja con el \fillcomando(que no dibuja nada);
  • luego dibujédoscaminos, uno en blue, el otro en red.

captura de pantalla

Código comentado:

\documentclass[border=5mm]{standalone}
\usepackage{tikz}
\usetikzlibrary{calc}
\usetikzlibrary{through}
\usetikzlibrary{intersections}
\begin{document}
\begin{tikzpicture}[help lines/.style={thin,draw=black!50}]
  \coordinate[label=left:\textcolor{blue!80!black}{$A$}] (A) at (0,0);
  \coordinate[label=right:\textcolor{blue!80!black}{$B$}] (B) at (1.25,0.25);
  \path[name path=A--B] (A) -- (B);% <-- construct the path, but not draw it
%  \draw let \p1 = ($(B) - (A)$),
%            \n2 = {veclen(\x1,\y1)}
%        in
%           (A) circle (\n2)
%           (B) circle (\n2);
  \node (D) [name path=D,draw,circle through=(B),label=left:$D$,help lines,draw] at (A) {};
  \node (E) [name path=E,draw,circle through=(A),label=right:$E$,help lines,draw] at (B) {};

  \path [name intersections={of=D and E, by={[label=above:$C$]C,[label=below:$C'$]C'}}];

  %\coordinate[label=above:$C$] (C) at (intersection-1); using by instead

  \path [name path=C--C',red] (C) -- (C');

  \path [name intersections={of=A--B and C--C', by=F}];
  %\node[fill=red,inner sep=1pt, label=-45:$F$] at (F) {};

  \fill[orange!80] (A) -- (B) -- (C) -- cycle;%<-- only fill without draw the edges
  \draw[blue,thick](A)--(B);%<-- draw in blue
  \draw[red,thick](A)--(C)--(B);%<-- draw in red
  \foreach \point in {A,B,C}
    \fill [black,opacity=0.5] (\point) circle (2pt);
\end{tikzpicture}
\end{document} 

Respuesta2

Puede guardar algunas de sus rutas utilizando las posibilidades del comando \patho \draw. Especialmente los caminos vacíos se pueden eliminar integrando las intersecciones en los caminos correspondientes.

Para colorear a su manera, simplemente Adibuje Buna línea entre los dos puntos (después de dibujar el marco o simplemente quitar el marco). Lo mismo funciona para A--B--C.

triángulo

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc}
\usetikzlibrary{through}
\usetikzlibrary{intersections}
\begin{document}
\begin{tikzpicture}[help lines/.style={thin,draw=black!50}]
  \path[name path=A--B] (0,0) coordinate[label=left:\textcolor{blue!80!black}{$A$}] (A) --
    (1.25,0.25) coordinate[label=right:\textcolor{blue!80!black}{$B$}] (B);
  \node (D) [name path=D,draw,circle through=(B),label=left:$D$,help lines,draw] at (A) {};
  \node (E) [name path=E,draw,circle through=(A),label=right:$E$,help lines,draw] at (B) {};
  \draw[name intersections={of=D and E, by={[label=above:$C$]C,[label=below:$C'$]C'}},
    name path=C--C',red] (C) -- (C');
  \node[fill=red,inner sep=1pt,name intersections={of=A--B and C--C', by=F},label=-45:$F$] at (F) {};

  \draw[draw=none,fill=orange!80] (A) -- (B) -- (C) -- cycle;
  \draw[blue,thick] (A) -- (B);
  \draw[red,thick] (A) -- (C) -- (B);

  \foreach \point in {A,B,C}
    \fill [black,opacity=0.5] (\point) circle (2pt);
\end{tikzpicture}
\end{document} 

información relacionada