[Python-apps-team] Bug#478359: mayavi2: fails to read blocks other than the first, in multiblock PLOT3D files

Francesco Poli frx at firenze.linux.it
Mon Apr 28 22:28:22 UTC 2008


Package: mayavi2
Version: 2.1.1-2
Severity: normal

Hi!

I'm unable to read any block, except the first, in multiblock
PLOT3D files.
I can reproduce this bug with any multiblock PLOT3D file having more
than one block.  For instance we can consider the test case I prepared
for bug #400406 (see [1] and [2]).

[1] http://bugs.debian.org/400406
[2] http://bugs.debian.org/cgi-bin/bugreport.cgi/vtk-multiblockPLOT3D-bug-test.tar.gz?bug=400406;msg=5;att=1

That test case is based on a little PLOT3D grid ('tiny.xyz')
and solution ('tiny.q'), generated by a simple Fortran program
('gen_tinyplot3d.f') on a little-endian machine.
The PLOT3D grid is composed of 5 blocks, each one of which consists
of a single cubic cell.

  $ tar xvzf vtk-multiblockPLOT3D-bug-test.tar.gz
  $ ls
  gen_tinyplot3d.f  tiny.q    vtk-multiblockPLOT3D-bug-test.tar.gz
  list_plot3d.py    tiny.xyz
  $ mayavi2

The main window shows up.

 * from menus, select File -> Load data -> PLOT3D file
 * as XYZ Co-ordinate file, select `tiny.xyz'
 * as Q Solution file, select `tiny.q'
 * select PLOT3D:tiny.xyz, tiny.q  in the MayaVi pane
 * in the PLOT3DReader tab (inside the object editor), check "Binary
file", "Do not reduce number of outputs", "Has byte count", and "Multi
grid"; *un*check "Force read", "I blanking", and "Two dimensional
geometry"; select "little_endian" Byte order
 * in the Reader tab, click on the "Update Reader" button

OK, now we are ready to visualize the data...

 * from menus, select Visualize -> Modules -> Surface (a blue square
shows up in the TVTK scene)
 * from menus, select Visualize -> Modules -> Axes (coordinate ranges
show up, confirming that we are seeing the first grid block, where
1 <= X <= 2)

OK, back to the PLOT3DReader tab: where's the option to select which
grid blocks I want to load?!?
I really cannot find it...

I would like to have a means to decide which grid blocks will be loaded
(e.g.: I want to load block 1, 2, and 4, but not the remaining two),
so that a number of PLOT3D:tiny.xyz, tiny.q objects are automatically
created, each one corresponding to one of the requested grid blocks
(e.g.: three objects are created, corresponding to blocks 1, 2, and 4).

Please note that this decision may be taken only after PLOT3D properties
(such as "Binary file", "Has byte count", and so forth) have been
specified, or otherwise the total number of blocks present in the
PLOT3D file will not be computed correctly...



-- System Information:
Debian Release: lenny/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.24-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages mayavi2 depends on:
ii  libc6                        2.7-10      GNU C Library: Shared libraries
ii  python                       2.4.4-6     An interactive high-level object-o
ii  python-central               0.6.5       register and build utility for Pyt
ii  python-enthought-traits      2.0.4-2     Manifest typing and reactive progr
ii  python-enthought-traits-ui   2.0.4-2     User interface related modules for
ii  python-numpy                 1:1.0.4-7   Numerical Python adds a fast array
ii  python-pkg-resources         0.6c8-3     Package Discovery and Resource Acc
ii  python-vtk                   5.0.4-1     Python bindings for VTK
ii  python-wxgtk2.6              2.6.3.2.2-2 wxWidgets Cross-platform C++ GUI t
ii  python2.4                    2.4.5-1     An interactive high-level object-o

mayavi2 recommends no packages.

-- no debconf information





More information about the Python-apps-team mailing list