Salome HOME
Update ParaVis non-regression test base in the following ways:
[modules/paravis.git] / test / VisuPrs / bugs / D5.py
1 # Copyright (C) 2010-2015  CEA/DEN, EDF R&D
2 #
3 # This library is free software; you can redistribute it and/or
4 # modify it under the terms of the GNU Lesser General Public
5 # License as published by the Free Software Foundation; either
6 # version 2.1 of the License, or (at your option) any later version.
7 #
8 # This library is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 # Lesser General Public License for more details.
12 #
13 # You should have received a copy of the GNU Lesser General Public
14 # License along with this library; if not, write to the Free Software
15 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
16 #
17 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 #
19
20 from paravistest import tablesdir
21 from presentations import *
22 import pvsimple
23
24 # Import table from file
25 print 'Import file with tables....',
26 file_path = tablesdir + "tables_test.xls"
27 table_reader = pvsimple.TableReader(FileName=file_path)
28
29 if table_reader is None:
30     print "FAILED"
31 else:
32     table_reader.UpdatePipeline()
33     print "OK"
34
35 # Display
36 table_to_3d = pvsimple.TableTo3D(table_reader)
37 prs = pvsimple.Show()
38 #prs.ColorArrayName = 'Table'
39
40 available_tables = table_reader.GetPropertyValue("AvailableTables")
41 tables_count = len(available_tables)
42 for table_nb in range(0, tables_count):
43     table_reader.TableNumber = table_nb
44
45     field_name = 'Table'
46     vector_mode = 'Magnitude'
47     nb_components = 1
48
49     # Get lookup table
50     lookup_table = get_lookup_table(field_name, nb_components, vector_mode)
51     if hasattr(lookup_table,"LockDataRange"):
52         lookup_table.LockDataRange = 0
53     elif hasattr(lookup_table,"LockScalarRange"):
54         lookup_table.LockScalarRange = 0
55     else:
56         raise RuntimeError("Object %s has no 'LockDataRange' or 'LockScalarRange' attribute!"%(lookup_table))
57
58     # Set properties
59     prs.ColorArrayName = (EntityType.get_pvtype(EntityType.NODE), field_name)
60     prs.LookupTable = lookup_table
61
62     # Add scalar bar
63     bar = add_scalar_bar(available_tables[table_nb], nb_components, vector_mode,
64                          lookup_table, "")
65
66     reset_view()
67     pvsimple.Delete(bar)