
Vi que podemos usar \x1
e \y1
acessar coordenadas cartesianas do registrador de pontos \p1
declarado em let
.
Existe uma maneira de acessar as coordenadas polares (algo como \a1
o ângulo e \r1
a distância) do ponto \p1
?
Caso contrário, qual é a melhor maneira de fazer algo assim:
\draw let \p1=(35:1cm) in (\a1+30,\r1) -- (\a1-30,2*\r1);
Responder1
Não sei se existe um cadastro direto para isso (e adoraria saber também), mas você pode acessar essa informação com um pouco mais de trabalho:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
\draw[style=help lines] (0,0) grid[step=1cm] (3,2);
\draw[red,ultra thick] (0,0) -- (35:3cm);
\draw let \p1=(35:3cm), \n1 = {veclen(\x1,\y1)},\n2 = {atan2(\x1,\y1)} in (0,0) -- (\n2:\n1);
\draw let \p1=(35:1cm), \n1 = {veclen(\x1,\y1)},\n2 = {atan2(\x1,\y1)} in (0,0) -- (\n2+30:2*\n1);
\end{tikzpicture}
\end{document}
Isto dá
Pode-se ainda envolver isso em uma macro mais pragmática, mas não é tão detalhada por si só agora. Além disso, você pode fazer o mesmo em relação a outro ponto, ou seja, não precisa ser a origem a partir da qual o ângulo e o comprimento são medidos.