Solución alterna

Solución alterna

MWE (copiado del manual de TikZ):

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{math}

\begin{document}
\begin{tikzpicture}
  \tikzmath{
    int \x;
    for \k in {0,10,...,350}{
      if \k>260 then { let \c = orange; } else {
        if \k>170 then { let \c = blue; } else {
          if \k>80 then { let \c = red; } else {
            let \c = green; }; }; };
      {
        \path [fill=\c!50, draw=\c] (\k:0.5cm) -- (\k:1cm) --
        (\k+5:1cm) -- (\k+5:0.5cm) -- cycle;
      };
    };
  }
\end{tikzpicture}
\end{document}

Esto me da el siguiente mensaje de error:

! Undefined control sequence.
\tikz@math@if@@doifelse ...gfmathfloatparseactive 
                                                  \pgfmathfloattofixed {\pgf...
l.19   }

Tengo el mismo problema con otro código que uso ify tikzmathesto también se aplica a los archivos TeX que solían compilarse sin problemas hace algún tiempo. ¿Está rota la versión actual (MiKTeX) de TikZ?

Estoy usando MikTeX 2.9 en Windows 10, los paquetes se actualizaron hace unos minutos, por si acaso.

ACTUALIZAR:Sólo para que esto quede más claro, incluso este tikzmathcódigo simple muestra el mismo mensaje de error.

\tikzmath{
  \x = 42;
  if \x == 42 then {
    {\fill (0,0) circle (1cm);};
  };
}

Respuesta1

Este es un error en PGF/TikZ y debería haberse informado en el rastreador de errores. Hice eso por ti y también solucioné el error. La solución alternativa también se menciona en el ticket.https://sourceforge.net/p/pgf/bugs/517/

Si no está seguro de si lo que está observando es un error o no, pruebe con un ejemplo del manual. Si el ejemplo del manual falla, definitivamente es un error.

Solución alterna

Solo agrega

\usetikzlibrary{fpu}

a su preámbulo.

información relacionada