Usando un comando predefinido o coordenada con \draw bend right

Usando un comando predefinido o coordenada con \draw bend right

Me encontré con este problema cuando lo usé drawcon un comando predefinido. ¿Alguna idea de cómo solucionarlo? Aquí hay un ejemplo mínimo (que no) funciona:

\documentclass{article}
\usepackage{tikz}

\newcommand{\Ve}{(1,1)}
\begin{document}
    \begin{tikzpicture}
        \draw (1,0) to[bend right] (1,1) ; %works
        \draw   \Ve to[bend right] (1,0) ; %works
        \draw (1,0) to[bend right] \Ve ;   %doesn't work
    \end{tikzpicture}
\end{document}

El error produjo:

Latex Error: ./untitled.tex:9 Package tikz Error: (, +, coordinate, pic, or node expected. Latex Error: ./untitled.tex:9 Package pgf Error: No shape named is known.

Respuesta1

Necesitas paréntesis. En \drawla ruta indicada, por ejemplo, se deben dibujar dos puntos. Las coordenadas de las posiciones inicial y final se especifican como puntos enentre paréntesis.[Ver:2.3 Construcción de camino recto,p.31]

Definición:posición del punto

  • en cm: (1,0)y(1,1)

    Las posiciones se especifican dentro de un sistema de coordenadas especial en el que inicialmente hay una unidad 1cm. [Ver2.2.1 Configurar el entorno en LATEXpág.29-30]

  • en pt: (1pt,0pt)y (1pt,1pt)-> Las posiciones se especifican dentro de un sistema de coordenadas especial con unidad pt.
  • en coordenadas polares: (0:1)y (45:{sqrt(2)})-> coordenadas polares: 1respectivamente sqrt(2)(como radio) en dirección 0respectivamente 45grados (ángulo). Para calcular {sqrt(2)}(para obtener el radio correcto) \usetikzlibrary{calc}necesita.Ver2.15 Especificación de coordenadas,p37ss.
  • con macro: (\Va)y (\Ve)-> El analizador TikZ comprende coordenadas y nodos (y sus nombres) buscando explícitamente (caracteres en el flujo de entrada. Por lo tanto, si los corchetes están ocultos dentro de la macro, el analizador primero no podrá encontrar el corchete y luego expandirá la macro, lo cual será demasiado tarde. En su lugar, defina sus propios comandos con \newcommand{\Va}{1,0}y \newcommand{\Ve}{1,1}(pista del comentario de @JLDiaz)

Pero prefiero y recomiendo:

  • con coordenadas: (A)y (B)-> Definiendo dos coordenadas (nombre:A,B) usando el \coordinatecomando. Por ejemplo \coordinate (A) at (1,0);y\coordinate (B) at (1,1);

Solución:

ingrese la descripción de la imagen aquí

MWE:

\documentclass{article}
\usepackage{tikz}
%\usetikzlibrary{calc}
%\newcommand{\Ve}{1,1}
\begin{document}
    \begin{tikzpicture}
    \coordinate (VE) at (1,1);
   %\coordinate (VE) at (45:{sqrt(2)});
        \draw (1,0) to[bend right] (1,1);
        \draw   (VE) to[bend right] (1,0);
        \draw (1,0) to[bend right] (VE) ;
    \end{tikzpicture}
%    \begin{tikzpicture}
%        \draw (1,0) to[bend right] (1,1);
%        \draw (\Ve) to[bend right] (1,0);
%        \draw (1,0) to[bend right] (\Ve) ;
%    \end{tikzpicture}
\end{document}

información relacionada