~ubuntu-branches/ubuntu/utopic/mayavi2/utopic-proposed

1.2.4 by Varun Hiremath
Import upstream version 3.3.0
1
"""
2
A script to generate the Mayavi logo: a Boy surface.
3
4
The boy surface is a mathematical parametric surface, see
5
http://en.wikipedia.org/wiki/Boy%27s_surface . We display it by sampling
6
the two parameters of the surface on a grid and using the mlab's mesh
1.2.9 by Varun Hiremath
Import upstream version 4.0.0
7
function: :func:`mayavi.mlab.mesh`.
1.2.4 by Varun Hiremath
Import upstream version 3.3.0
8
"""
9
1.2.9 by Varun Hiremath
Import upstream version 4.0.0
10
# Author: Gael Varoquaux <gael.varoquaux@normalesup.org>
1.2.4 by Varun Hiremath
Import upstream version 3.3.0
11
# Copyright (c) 2007, Enthought, Inc.
12
# License: BSD Style.
13
14
1.2.9 by Varun Hiremath
Import upstream version 4.0.0
15
from numpy import sin, cos, mgrid, pi, sqrt
16
from mayavi import mlab
1.2.4 by Varun Hiremath
Import upstream version 3.3.0
17
18
mlab.figure(fgcolor=(0, 0, 0), bgcolor=(1, 1, 1))
1.2.11 by Varun Hiremath
Import upstream version 4.3.1
19
u, v = mgrid[- 0.035:pi:0.01, - 0.035:pi:0.01]
1.2.4 by Varun Hiremath
Import upstream version 3.3.0
20
1.2.11 by Varun Hiremath
Import upstream version 4.3.1
21
X = 2 / 3. * (cos(u) * cos(2 * v)
22
        + sqrt(2) * sin(u) * cos(v)) * cos(u) / (sqrt(2) -
23
                                                 sin(2 * u) * sin(3 * v))
24
Y = 2 / 3. * (cos(u) * sin(2 * v) -
25
        sqrt(2) * sin(u) * sin(v)) * cos(u) / (sqrt(2)
26
        - sin(2 * u) * sin(3 * v))
27
Z = -sqrt(2) * cos(u) * cos(u) / (sqrt(2) - sin(2 * u) * sin(3 * v))
1.2.4 by Varun Hiremath
Import upstream version 3.3.0
28
S = sin(u)
29
30
mlab.mesh(X, Y, Z, scalars=S, colormap='YlGnBu', )
31
32
# Nice view from the front
1.2.11 by Varun Hiremath
Import upstream version 4.3.1
33
mlab.view(.0, - 5.0, 4)
1.2.4 by Varun Hiremath
Import upstream version 3.3.0
34
mlab.show()