Estou tentando visualizar algumas transformações da grade em um relatório que estou escrevendo. Estou satisfeito com a grade do lado esquerdo na figura que anexei e agora preciso criar uma malha anular que é mostrada à direita. É importante que eles tenham o mesmo número de pontos. Como o esquerdo tem 10 por 10, o direito deve ter 10 pontos ao longo da circunferência e 10 na direção normal da parede.
Aqui está o código que usei para gerar o da esquerda:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{arrows.meta}
\usetikzlibrary{calc}
\begin{document}
\begin{figure}[h!]
\centering
\begin{tikzpicture}
\coordinate (A) at (0,0);
\coordinate (B) at (3,0);
\coordinate (C) at (3,3);
\coordinate (D) at (0,3);
\foreach [evaluate=\i as \x using \i/10] \i in {0,...,10}
{
\draw ($(A)!\x!(B)$) arc -- ($(D)!\x!(C)$);
\draw ($(A)!\x!(D)$) -- ($(B)!\x!(C)$);
}
\draw[->, >= Latex] (-0.1, -0.1) -- (1, -0.1);
\draw[->, >= Latex] (-0.1, -0.1) -- (-0.1, 1);
\draw[->, >= Latex] (-0.1, -0.1) -- (0.5, 0.5);
\node[] at (1, -0.35) (y) {$\zeta$};
\node[] at (-0.35, 1) (x) {$\eta$};
\node[] at (-0.35, -0.10) (x) {$\xi$};
\draw[->, >= Latex] (3.5, 1.5) -- (4.5, 1.5);
\end{tikzpicture}
\caption{Visualisation of a mapping from a computational grid to a physical space using 2D section.}
\end{figure}
\end{document}
Você tem algum conselho?
Obrigado!
Responder1
Atualizar:Depois de reler sua pergunta, percebi que você deseja um anel, não um toro. Substitua scope
aqui no código original:
\begin{scope}[shift={(7,1.5)}]
\foreach \t in {0,...,10}{
\draw (0,0) circle[radius=1+.1*\t];
\draw (36*\t:1)--(36*\t:2);
}
\end{scope}
Presumo que você queira apenas 5 regiões longitudinais visíveis, já que as outras 5 estão na parte traseira.
Solução original:
Algumas sugestões:
- Use
grid
para simplificar o código da grade retangular. - Nós podem ser incluídos nos
\draw
comandos para um posicionamento mais simples. - A
scope
pode facilitar os cálculos, permitindo coordenadas polares para o toro.
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{arrows.meta}
\begin{document}
\begin{figure}[h!]
\centering
\begin{tikzpicture}
\draw[step=3mm] (0,0)grid(3,3);
\draw[-Latex] (-0.1, -0.1) -- (1, -0.1) node[below]{$\zeta$};
\draw[-Latex] (-0.1, -0.1) -- (-0.1, 1) node[left]{$\eta$};
\draw[-Latex] (-0.1, -0.1) node[left]{$\xi$} -- (0.5, 0.5);
\draw[-Latex] (3.5, 1.5) -- (4.5, 1.5);
\begin{scope}[shift={(7,1.5)}]
\foreach \t in {0,36,...,360}{
\draw (0,0) circle[radius=1.5+.5*cos(\t)];
\draw (\t:1)--(\t:2);
}
\end{scope}
\end{tikzpicture}
\caption{Visualisation of a mapping from a computational grid to a physical space using 2D section.}
\end{figure}
\end{document}