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() |