Desenhando formas 3D

Desenhando formas 3D

Eu gostaria de desenhar facilmente formas 3D. Estou achando difícil. Tenho papel isométrico, mas é difícil ver onde colocar as linhas.Forma 3D aqui está meu MWE. Mas é uma maneira mais fácil de desenhar formas como a que anexei. Todas as medidas precisam estar nas formas

% !TeX program = xelatex
% !TeX spellcheck = en_GB
\documentclass[12pt,addpoints]{exam}

\usepackage{tikz}
\usetikzlibrary{plotmarks}

\usetikzlibrary{quotes,angles}

\usetikzlibrary{quotes,arrows.meta} % needed for tikz pictures

\begin{document}
    


\begin{tikzpicture}[x={(0.86cm,0.5cm)},y={(-0.86cm,0.5cm)}, color=black]
    \clip (0,12.5) rectangle (18,12.5);
    \foreach \x in {0,...,25}
    \foreach \y in {0,...,25}
    {
        \fill (\x,\y) circle (2pt);
        \draw [red ] (4,11) -- (6,13);
        \draw [red ] (4,11) -- (4,15);
        \draw [red ] (4,15) -- (6,17);
        \draw [red] (6,13) -- (6,17);
        \draw [red ] (4,11) -- (10,11);
        \draw [red ] (6,13) -- (12,13);
        \draw [red ] (10,11) -- (12,13);
        \draw [red ] (12,13) -- (12,17);
        \draw [red ] (6,17) -- (12,17);
        %\draw [red, very thick] (12,17) -- (10,15);
        \draw (4,15)-- (10,15); 
        \draw (10,15)-- (12,17);
        \draw (10,15)-- (10,11);
    }
    
\end{tikzpicture}

\end{document}

Responder1

A solução é mais simples do que as sugeridas. Basta plotá-lo em coordenadas 3D como John disse, ou seja, especificar (x,y,z). O quadro de coordenadas indica que (x,y)é o plano da página e zé a “profundidade”. É claro que formas mais complexas exigirão mais trabalho.

Se você estiver trabalhando com algo mais complicado, você pode querer verificarhttps://tikz.dev/library-perspective#autosec-6021

insira a descrição da imagem aqui

% !TeX spellcheck = en_GB
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary {perspective}

\begin{document}

\begin{tikzpicture}
\draw(0,0,0) -- (12,0,0) -- (12,5,0) -- (9,5,0) -- (9,2,0) -- (3,2,0) --(3,5,0) -- (0,5,0) -- cycle;
\draw(0,0,10) -- (12,0,10) -- (12,5,10) -- (9,5,10) -- (9,2,10) -- (3,2,10) --(3,5,10) -- (0,5,10) -- cycle;

\draw (0,0,0)-- (0,0,10);
\draw (12,0,0)-- (12,0,10);
\draw (12,5,0)-- (12,5,10);
\draw (9,5,0)-- (9,5,10);
\draw (9,2,0)-- (9,2,10);
\draw (3,2,0)-- (3,2,10);
\draw (3,5,0)-- (3,5,10);
\draw (0,5,0)-- (0,5,10);
\end{tikzpicture}

\end{document}

Como você pode ver, por padrão, não é a vista isométrica. É perspectiva.

Basta adicionar a opção isometric viewcomo \begin{tikzpicture}[isometric view]. é claro que isso inverterá o desenho.

Finalmente, você pode brincar com[3d view = {140}{50}]

informação relacionada