3D図形の描画

3D図形の描画

3D 図形を簡単に描けるようになりたいのですが、難しいです。等角投影紙は持っていますが、どこに線を引けばよいのかわかりにくいです。3D形状 これが私のMWEです。しかし、私が添付したような図形を描くには、これがより簡単な方法です。すべての測定値は図形上になければなりません

% !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}

答え1

解決策は提案されたものよりも簡単です。John が言ったように、3D 座標でプロットするだけです。つまり、(x,y,z) を指定します。座標フレームは、(x,y)ページの平面とz「深さ」を示します。もちろん、より複雑な形状にはより多くの作業が必要になります。

もっと複雑なものを扱っている場合は、https://tikz.dev/library-perspective#autosec-6021

ここに画像の説明を入力してください

% !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}

ご覧のとおり、デフォルトでは等角投影ビューではなく、透視投影ビューです。

isometric viewなどのオプションを追加するだけで、\begin{tikzpicture}[isometric view]もちろん図面が反転します。

最後に、[3d view = {140}{50}]

関連情報