我是 LaTeX 的初学者。我在这里见过很多 tikz 包,但我很困惑。但对于同一个形状,不同的人使用不同的代码。我觉得很难理解。这就是为什么我的 LaTeX 技能没有快速提高的原因。我用简单的代码制作了一个长方体。但我不知道如何添加阴影。我在 stack exchange 上看到了一些答案,但我还不明白,因为我觉得都很难。这是我的代码:
\begin{tikzpicture}
\draw[draw=black,fill=gray!20!white] (0,0,0)--(1.5,0,0)node[below]{$\delta x$}-- (3,0,0)--(3,2,0)--(0,2,0)-- cycle;
\draw[draw=black,fill=gray!20!white] (3,0,0)--(3,0,-1)node[above=2pt]{$h$}--(3,0,-2)--(3,1,-2)node[right]{$\delta y$}--(3,2,-2) --(3,2,0)--cycle;
\draw[draw=black,fill=gray!20!white] (0,2,0)--(3,2,0)--(3,2,-2)--(0,2,-2)--cycle;
\end{tikzpicture}
我该如何给它着色?这样它才能看起来像真正的长方体(用灰色着色)。谢谢。
答案1
我可以使用以下代码来获得阴影:
\documentclass{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\pgfdeclareverticalshading{cuboid}{100bp}{
color(0bp)=(gray!0);
color(25bp)=(gray!25);
color(50bp)=(gray!50);
color(75bp)=(gray!75);
color(100bp)=(gray!100)
}
\draw[draw=black,shading=cuboid] (0,0,0)--(1.5,0,0)node[below]{$\delta x$}-- (3,0,0)--(3,2,0)--(0,2,0)-- cycle;
\draw[draw=black,shading=cuboid] (3,0,0)--(3,0,-1)node[above=2pt]{$h$}--(3,0,-2)--(3,1,-2)node[right]{$\delta y$}--(3,2,-2) --(3,2,0)--cycle;
\draw[draw=black,shading=cuboid] (0,2,0)--(3,2,0)--(3,2,-2)--(0,2,-2)--cycle;
\end{tikzpicture}
\end{document}
这将生成输出:
答案2
钛钾Z 不是 3D 渲染软件,但您可以更改不同区域的颜色以使其变暗。通常,光线来自左上角,因此长方体的正面和右侧应该更暗。您还可以使用径向渐变和一些剪辑技巧在上面添加微妙的反射效果:
\documentclass[border=10pt]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw[black, fill=gray!45]
(0,0,0) -- (1.5,0,0) node[below] {$\delta x$} --
(3,0,0) -- (3,2,0) -- (0,2,0) -- cycle;
\draw[black, fill=gray!65]
(3,0,0) -- (3,0,-1) node[above=2pt]{$h$} --
(3,0,-2) -- (3,1,-2) node[right]{$\delta y$} --
(3,2,-2) -- (3,2,0) -- cycle;
\begin{scope}
\path[clip, save path=\surface]
(0,2,0) -- (3,2,0) -- (3,2,-2) -- (0,2,-2) -- cycle;
\fill[inner color=white, outer color=gray!25]
(-2,2) rectangle (4,4);
\end{scope}
\draw[black] [use path=\surface];
\end{tikzpicture}
\end{document}