Hallo Ben Root,

I put together some snippets

#----CODE----

import matplotlib.pyplot as plt

from matplotlib.patches import Circle

import mpl_toolkits.mplot3d.art3d as art3d

from mpl_toolkits.mplot3d import Axes3D

import numpy

import matplotlib

step = 0.04

maxval = 1.0

fig = plt.figure()

ax = Axes3D(fig,aspect=‘equal’)

ri = 0.625

rj = 1.25

l = 5

##CONE

r = numpy.linspace(rj,rj,6)

r[0]= numpy.zeros(r[0].shape)

r[1] *= ri/rj

r[5] *= ri/rj

r[3]= numpy.zeros(r[3].shape)

p = numpy.linspace(0,2*numpy.pi,50)

R,P = numpy.meshgrid(r,p)

X,Y = R*numpy.cos§,R*numpy.sin§

tmp=list()

for i in range(50):

tmp.append([0,0,l,l,l,0])

Z = numpy.array(tmp)

ax.plot_surface(X, Z,Y, rstride=1, cstride=1, color=“b”)

##CIRCLES

p=Circle((0,0),rj,color=“red”)

ax.add_patch§

art3d.patch_2d_to_3d(p, z=l, zdir=“y”)

p=Circle((0,0),ri,color=“red”)

ax.add_patch§

art3d.patch_2d_to_3d(p, z=0, zdir=“y”)

ax.set_ylim3d(-0.5, l+.5)

ax.set_xlim3d(-l*0.5-0.5, l*0.5+0.5)

ax.set_zlim3d(-l*0.5-0.5, l*0.5+0.5)

plt.show()

#----CODE----

greetz

Frank

Am 27.07.2010 21:36, schrieb Benjamin Root:

On Tue, Jul 27, 2010 at 2:25 PM, <copyrights@…380… > > mailto:copyrights@...380...> wrote:

```
Hallo,
```

```
I got a depth problem with Axes3D. I made a plot_surface and add 2
```

```
Circle object with add_patch and
```

```
mpl_toolkits.mplot3d.art3d.patch_2d_to_3d.
```

```
The problem is that the circles are always in front. I upload a
```

```
picture here [http://yfrog.com/nd3dproblemp](http://yfrog.com/nd3dproblemp) . The gui is rotatable,
```

```
so I can't just remove the second Circle (like I did for the
```

```
screenshot).
```

```
How to get right order to the object?
```

```
greetz
```

```
Frank
```