Wie kann ich das Beispiel von Alain Matthes auf TeX.se zur Antwort auf 3D bodies in TikZ erweitern, so dass ich Prismen mit
einbeziehen kann? Ich finde das Beispiel genial, kann es aber nicht selbst erweitern. |
Hier ist ein Vorschlag für ein Prisma mit einem Dreieck als Grundfläche, der sich auch relativ einfach auf ein Trapez übertragen lassen lässt. Open in Online-Editor
\documentclass[margin=5mm,dvipsnames]{standalone} \usepackage{tikz} \tikzset{ xyz/.style={x={(-.385cm,-.385cm)},y={(1cm,0cm)},z={(0cm,1cm)}}, flaeche/.style={fill=Maroon!10,opacity=.5}, } \begin{document} \begin{tikzpicture}[xyz]% z-Achse zeigt nach oben % Koordinaten in zwei zur xy-Ebene parallelen Ebenen definieren \foreach[count=\i] \z in {0,4} \path (0,0,\z)coordinate(A\i) (0,4,\z)coordinate(B\i) (-3,2,\z)coordinate(C\i) ; % Grund- und Deckfläche füllen, gegebenenfalls doppelt \foreach \i in {1,2,2} \path[flaeche](A\i)--(B\i)--(C\i)--cycle; % Seitenfläche(n) füllen \foreach \i/\j in {A/B} \path[flaeche](\i1)--(\i2)--(\j2)--(\j1)--cycle; % sichtbare Kanten zeichnen \path[draw](A2)--(B2)--(C2)--(A2)--(A1)--(B1)--(B2); % verdeckte Kanten zeichnen \path[draw,dashed](A1)--(C1)--(B1) (C1)--(C2); \end{tikzpicture} \end{document} Je nach gewählten Koordinaten werden eventuell andere Kanten verdeckt und müssen andere Flächen gefüllt werden. Beispiel für ein Trapez als Grundfläche: Code: Open in Online-Editor
\documentclass[margin=5mm,dvipsnames]{standalone} \usepackage{tikz} \tikzset{ xyz/.style={x={(-.385cm,-.385cm)},y={(1cm,0cm)},z={(0cm,1cm)}}, flaeche/.style={fill=Maroon!10,opacity=.5}, } \begin{document} \begin{tikzpicture}[xyz]% z-Achse zeigt nach oben % Koordinaten in zwei zur xy-Ebene parallelen Ebenen definieren \foreach[count=\i] \z in {0,6} \path (0,0,\z)coordinate(A\i) (0,5,\z)coordinate(B\i) (-3,3,\z)coordinate(C\i) (-3,1,\z)coordinate(D\i) ; % Grund- und Deckfläche füllen, gegebenenfalls doppelt \foreach \i in {1,2,2} \path[flaeche](A\i)--(B\i)--(C\i)--(D\i)--cycle; % Seitenfläche(n) füllen \foreach \i/\j in {A/B} \path[flaeche](\i1)--(\i2)--(\j2)--(\j1)--cycle; % sichtbare Kanten zeichnen \path[draw](A2)--(B2)--(C2)--(D2)--(A2)--(A1)--(B1)--(B2); % verdeckte Kanten zeichnen \path[draw,dashed](A1)--(D1)--(C1)--(B1) (C1)--(C2) (D1)--(D2); \end{tikzpicture} \end{document} beantwortet 22 Jun '16, 10:06 esdd |