Hier eine Variante mit `tikz-3dplot`. Ich vermute aber mal, dass das nicht das ist wonach du suchst.
\documentclass{standalone}
\usepackage{tikz,tikz-3dplot}
\begin{document}
\tdplotsetmaincoords{70}{100}
\begin{tikzpicture}[scale=2,tdplot_main_coords]
\tdplotdefinepoints(0,0,0)(1.5,0,0)(1.5,2.5,1.75)
\coordinate (O) at (\tdplotvertexx,\tdplotvertexy,\tdplotvertexz);
\coordinate (Ax) at (\tdplotbx,0,0);
\coordinate (Ay) at (0,\tdplotby,0);
\coordinate (Az) at (0,0,\tdplotbz);
\coordinate (Axy) at (\tdplotbx,\tdplotby,0);
\coordinate (Ayz) at (0,\tdplotby,\tdplotbz);
\coordinate (Axz) at (\tdplotbx,0,\tdplotbz);
\coordinate (A) at (\tdplotbx,\tdplotby,\tdplotbz);
\draw[->] (0,0,0) -- (2,0,0) node[below left=-2pt] {$x$};
\draw[->] (0,0,0) -- (0,3,0) node[right] {$y$};
\draw[->] (0,0,0) -- (0,0,2) node[above] {$z$};
\draw[thick] (Ax) -- (Axy) -- (Ay);
\draw[thick] (Az) -- (Axz) -- (A) -- (Ayz) -- cycle;
\draw[thick] (O) -- (Az);
\draw[thick] (Ax) -- (Axz);
\draw[thick] (Axy) -- (A);
\draw[thick] (Ay) -- (Ayz);
\draw[red,thick,->] (O) -- (Ax) node[pos=0.7,above] {a};
\draw[red,thick,->] (O) -- (Ay);
\draw[red,thick,->] (O) -- (Az);
\draw[red,thick,->] (O) -- (A) node[above,pos=0.5] {d};
\tdplotdrawpolytopearc[blue,thick]{1}{anchor=north west}{$\theta$}
\end{tikzpicture}
\end{document}
![alt text][1]
---
**EDIT:** Man kann die Definition von `\tdplotdrawpolytopearc` so anpassen, dass er auch gefüllt werden kann.
kann. Man kann auch die Transformation anpassen was ich in `\tdplotsetmycoords` gemacht habe. Allerdings weiß ich nicht wieviel dabei kaputt geht. Benutzung auf eigene Gefahr.
\documentclass{standalone}
\usepackage{tikz,tikz-3dplot}
\renewcommand\tdplotdrawpolytopearc[4][]{%
%determine vector lengths
\pgfmathsetmacro{\ax}{\tdplotax - \tdplotvertexx}
\pgfmathsetmacro{\ay}{\tdplotay - \tdplotvertexy}
\pgfmathsetmacro{\az}{\tdplotaz - \tdplotvertexz}
\pgfmathsetmacro{\bx}{\tdplotbx - \tdplotvertexx}
\pgfmathsetmacro{\by}{\tdplotby - \tdplotvertexy}
\pgfmathsetmacro{\bz}{\tdplotbz - \tdplotvertexz}
%determine normal to vectors
\tdplotcrossprod(\ax,\ay,\az)(\bx,\by,\bz)
%DEBUG: show the cross product
%\draw[->,blue] (\tdplotvertexx,\tdplotvertexy,\tdplotvertexz)
-- ++(\tdplotresx,\tdplotresy,\tdplotresz);
%get angles for this vector
\tdplotgetpolarcoords{\tdplotresx}{\tdplotresy}{\tdplotresz}
\typeout{angles for cross product: phi: \tdplotresphi theta: \tdplotrestheta}
%place the rotated coordinate system so that the z' axis points along this vector
\tdplotsetrotatedcoords{\tdplotresphi}{\tdplotrestheta}{0}
\coordinate (Vertex) at (\tdplotvertexx,\tdplotvertexy,\tdplotvertexz);
\tdplotsetrotatedcoordsorigin{(Vertex)}
%calculate the start angle of the arc
\tdplottransformmainrot{\ax}{\ay}{\az}
\tdplotgetpolarcoords{\tdplotresx}{\tdplotresy}{\tdplotresz}
\pgfmathsetmacro{\tdplotstartphi}{\tdplotresphi}
%calculate the end angle of the arc
\tdplottransformmainrot{\bx}{\by}{\bz}
\tdplotgetpolarcoords{\tdplotresx}{\tdplotresy}{\tdplotresz}
%draw the arc
\pgfmathparse{\tdplotstartphi < \tdplotresphi}
\ifthenelse{\equal{\pgfmathresult}{1}}%
{}%
{
\pgfmathsetmacro{\tdplotstartphi}{\tdplotstartphi - 360}
}
\draw[tdplot_rotated_coords,#1] (0,0,0) + (\tdplotstartphi:#2) arc (\tdplotstartphi:\tdplotresphi:#2);
\fill[tdplot_rotated_coords,#1] (0,0,0) + (\tdplotstartphi:#2) arc (\tdplotstartphi:\tdplotresphi:#2) -- (0,0,0) -- (\tdplotstartphi:#2);
\pgfmathsetmacro{\tdplotresphi}{(\tdplotresphi + \tdplotstartphi)/2}
\draw[tdplot_rotated_coords] (0,0,0) + (\tdplotresphi:#2) node[#3]{#4};
}
\newcommand\tdplotsetmycoords{%
\pgfmathsetmacro{\raarot}{-.5}%
\pgfmathsetmacro{\rbarot}{-.5}%
%
\pgfmathsetmacro{\rabrot}{1}%
\pgfmathsetmacro{\rbbrot}{0}%
%
\pgfmathsetmacro{\racrot}{0}%
\pgfmathsetmacro{\rbcrot}{1}%
%
\tikzset{tdplot_main_coords/.style={x={(\raarot cm,\rbarot cm)},y={(\rabrot cm, \rbbrot cm)},z={(\racrot cm, \rbcrot cm)}}}%
}
\begin{document}
\tdplotsetmaincoords{70}{100}
\tdplotsetmycoords
\begin{tikzpicture}[scale=2,tdplot_main_coords]
\tdplotdefinepoints(0,0,0)(1.5,0,0)(1.5,2.5,1.75)
\coordinate (O) at (\tdplotvertexx,\tdplotvertexy,\tdplotvertexz);
\coordinate (Ax) at (\tdplotbx,0,0);
\coordinate (Ay) at (0,\tdplotby,0);
\coordinate (Az) at (0,0,\tdplotbz);
\coordinate (Axy) at (\tdplotbx,\tdplotby,0);
\coordinate (Ayz) at (0,\tdplotby,\tdplotbz);
\coordinate (Axz) at (\tdplotbx,0,\tdplotbz);
\coordinate (A) at (\tdplotbx,\tdplotby,\tdplotbz);
\draw[->] (0,0,0) -- (2,0,0) node[below left=-2pt] {$x$};
\draw[->] (0,0,0) -- (0,3,0) node[right] {$y$};
\draw[->] (0,0,0) -- (0,0,2) node[above] {$z$};
\draw[thick] (Ax) -- (Axy) -- (Ay);
\draw[thick] (Az) -- (Axz) -- (A) -- (Ayz) -- cycle;
\draw[thick] (O) -- (Az);
\draw[thick] (Ax) -- (Axz);
\draw[thick] (Axy) -- (A);
\draw[thick] (Ay) -- (Ayz);
\draw[red,thick,->] (O) -- (Ax) node[pos=0.7,above] {a};
\draw[red,thick,->] (O) -- (Ay);
\draw[red,thick,->] (O) -- (Az);
\draw[red,thick,->] (O) -- (A) node[above,pos=0.5] {d};
\tdplotdrawpolytopearc[blue,thick,fill opacity=0.1]{1}{anchor=east,blue}{$\theta$}
opacity=0.1]{1}{above left=-4pt,blue}{$\theta$}
\end{tikzpicture}
\end{document}
![alt text][2]
[1]: http://texwelt.de/wissen/upfiles/test_227.png
[2]: http://texwelt.de/wissen/upfiles/test_230.pnghttp://texwelt.de/wissen/upfiles/test_231.png