Salome HOME
Merge from BR_V5_DEV 16Feb09 before_mergefrom_V6_main_20120808_08Aug12 mergefrom_BR_V5_DEV_16Feb09 start_V5_1_main
authorvsr <vsr@opencascade.com>
Tue, 17 Feb 2009 05:24:27 +0000 (05:24 +0000)
committervsr <vsr@opencascade.com>
Tue, 17 Feb 2009 05:24:27 +0000 (05:24 +0000)
1026 files changed:
Makefile.am
README
VISU_version.h.in
adm_local/Makefile.am
adm_local/unix/Makefile.am
adm_local/unix/config_files/Makefile.am
adm_local/unix/config_files/check_VISU.m4
adm_local/unix/make_common_starter.am
bin/Makefile.am
build_configure
clean_configure
configure.ac
doc/Makefile.am
doc/salome/Makefile.am
doc/salome/gui/Makefile.am
doc/salome/gui/VISU/Makefile.am [new file with mode: 0644]
doc/salome/gui/VISU/doxyfile.in
doc/salome/gui/VISU/doxyfile_idl.in
doc/salome/gui/VISU/files/about_structure_of_med_object.htm [deleted file]
doc/salome/gui/VISU/files/about_tables.htm [deleted file]
doc/salome/gui/VISU/files/animating_presentations.htm [deleted file]
doc/salome/gui/VISU/files/changing_visualization_parameters_of_the_presenetation.htm [deleted file]
doc/salome/gui/VISU/files/creating_curves.htm [deleted file]
doc/salome/gui/VISU/files/creating_field_presentations.htm [deleted file]
doc/salome/gui/VISU/files/creating_presentations.htm [deleted file]
doc/salome/gui/VISU/files/creating_xy_plot.htm [deleted file]
doc/salome/gui/VISU/files/cut_lines_presentation.htm [deleted file]
doc/salome/gui/VISU/files/cut_lines_resentation.htm [deleted file]
doc/salome/gui/VISU/files/deformed_shape_presentation.htm [deleted file]
doc/salome/gui/VISU/files/displaying_hiding_presentations.htm [deleted file]
doc/salome/gui/VISU/files/displaying_tables.htm [deleted file]
doc/salome/gui/VISU/files/getting_elements_attributes.htm [deleted file]
doc/salome/gui/VISU/files/getting_started.htm [deleted file]
doc/salome/gui/VISU/files/importing_med_objects.htm [deleted file]
doc/salome/gui/VISU/files/importing_tables.htm [deleted file]
doc/salome/gui/VISU/files/insideframe.htm [deleted file]
doc/salome/gui/VISU/files/introduction.htm [deleted file]
doc/salome/gui/VISU/files/iso_surfaces_presentation.htm [deleted file]
doc/salome/gui/VISU/files/points.htm [deleted file]
doc/salome/gui/VISU/files/running_visu.htm [deleted file]
doc/salome/gui/VISU/files/scalar_map_presentation.htm [deleted file]
doc/salome/gui/VISU/files/scaling_presentations.htm [deleted file]
doc/salome/gui/VISU/files/setting_properties_of_xy_plots.htm [deleted file]
doc/salome/gui/VISU/files/shrink.htm [deleted file]
doc/salome/gui/VISU/files/stream_lines_presentation.htm [deleted file]
doc/salome/gui/VISU/files/surface.htm [deleted file]
doc/salome/gui/VISU/files/surfaceframe.htm [deleted file]
doc/salome/gui/VISU/files/sweeping.htm [deleted file]
doc/salome/gui/VISU/files/vectors_presentation.htm [deleted file]
doc/salome/gui/VISU/files/wireframe.htm [deleted file]
doc/salome/gui/VISU/images/activebar1.png [new file with mode: 0755]
doc/salome/gui/VISU/images/activebar2.png [new file with mode: 0755]
doc/salome/gui/VISU/images/animation.png
doc/salome/gui/VISU/images/arrangeactors.png
doc/salome/gui/VISU/images/arrangeactors1.png
doc/salome/gui/VISU/images/barproperty.png
doc/salome/gui/VISU/images/buildprogress.png
doc/salome/gui/VISU/images/clipping1.png
doc/salome/gui/VISU/images/clipping2.png
doc/salome/gui/VISU/images/clipping3.png [new file with mode: 0755]
doc/salome/gui/VISU/images/clipping4.png [new file with mode: 0755]
doc/salome/gui/VISU/images/clipping5.png [new file with mode: 0755]
doc/salome/gui/VISU/images/createcurves.png
doc/salome/gui/VISU/images/cutlines.png
doc/salome/gui/VISU/images/cutplanes.png
doc/salome/gui/VISU/images/deformed_shape.png [new file with mode: 0755]
doc/salome/gui/VISU/images/deformedshape.png
doc/salome/gui/VISU/images/distributionbar.png [new file with mode: 0755]
doc/salome/gui/VISU/images/dumpviewtofile.png
doc/salome/gui/VISU/images/editplot2dpresentation.png
doc/salome/gui/VISU/images/editplot3dpresentation.png [new file with mode: 0755]
doc/salome/gui/VISU/images/exportmedfile.png [new file with mode: 0644]
doc/salome/gui/VISU/images/exporttable.png
doc/salome/gui/VISU/images/featureedges.png [new file with mode: 0755]
doc/salome/gui/VISU/images/fieldpres1.png [new file with mode: 0644]
doc/salome/gui/VISU/images/fieldpres2.png [new file with mode: 0644]
doc/salome/gui/VISU/images/fieldpres3.png [new file with mode: 0644]
doc/salome/gui/VISU/images/fitdatarange.png
doc/salome/gui/VISU/images/gauss_points.png [new file with mode: 0755]
doc/salome/gui/VISU/images/gpp2.png
doc/salome/gui/VISU/images/gpp3.png
doc/salome/gui/VISU/images/header_salome.png [new file with mode: 0755]
doc/salome/gui/VISU/images/header_visu.png [new file with mode: 0755]
doc/salome/gui/VISU/images/image1.jpg [deleted file]
doc/salome/gui/VISU/images/image102.gif [deleted file]
doc/salome/gui/VISU/images/image13.gif
doc/salome/gui/VISU/images/image18.gif
doc/salome/gui/VISU/images/image2.jpg [deleted file]
doc/salome/gui/VISU/images/image20.gif [deleted file]
doc/salome/gui/VISU/images/image20.png
doc/salome/gui/VISU/images/image21.png
doc/salome/gui/VISU/images/image23.gif [deleted file]
doc/salome/gui/VISU/images/image27.gif
doc/salome/gui/VISU/images/image3.jpg [deleted file]
doc/salome/gui/VISU/images/image31.gif
doc/salome/gui/VISU/images/image31.jpg
doc/salome/gui/VISU/images/image33.jpg
doc/salome/gui/VISU/images/image36.gif [new file with mode: 0755]
doc/salome/gui/VISU/images/image4.jpg [deleted file]
doc/salome/gui/VISU/images/image5.jpg [deleted file]
doc/salome/gui/VISU/images/importfromfile.png
doc/salome/gui/VISU/images/importtablefromfile.png
doc/salome/gui/VISU/images/introduction.png [new file with mode: 0755]
doc/salome/gui/VISU/images/isosurfaces.png
doc/salome/gui/VISU/images/labeling_parameters.png [new file with mode: 0644]
doc/salome/gui/VISU/images/neo-transparency.png [deleted file]
doc/salome/gui/VISU/images/perspective1.png [new file with mode: 0755]
doc/salome/gui/VISU/images/perspective2.png [new file with mode: 0755]
doc/salome/gui/VISU/images/perspective3.png [new file with mode: 0755]
doc/salome/gui/VISU/images/perspective4.png [new file with mode: 0755]
doc/salome/gui/VISU/images/perspective5.png [new file with mode: 0755]
doc/salome/gui/VISU/images/perspective6.png [new file with mode: 0755]
doc/salome/gui/VISU/images/plot3d-example.png
doc/salome/gui/VISU/images/plot3d.png
doc/salome/gui/VISU/images/presentation1.png [new file with mode: 0755]
doc/salome/gui/VISU/images/recording.png
doc/salome/gui/VISU/images/recordingsaveas.png
doc/salome/gui/VISU/images/scalar_map_and_deformed_shapes.png [new file with mode: 0755]
doc/salome/gui/VISU/images/scalar_map_on_cells.png [new file with mode: 0755]
doc/salome/gui/VISU/images/scalar_map_on_points.png [new file with mode: 0755]
doc/salome/gui/VISU/images/scalarbarproperties.png
doc/salome/gui/VISU/images/selection1.png [new file with mode: 0755]
doc/salome/gui/VISU/images/selection2.png [new file with mode: 0755]
doc/salome/gui/VISU/images/selection3.png [new file with mode: 0755]
doc/salome/gui/VISU/images/selection4.png [new file with mode: 0755]
doc/salome/gui/VISU/images/selection5.png [new file with mode: 0755]
doc/salome/gui/VISU/images/selection6.png [new file with mode: 0755]
doc/salome/gui/VISU/images/selection7.png [new file with mode: 0755]
doc/salome/gui/VISU/images/selection8.png [new file with mode: 0755]
doc/salome/gui/VISU/images/setupanimation1.png
doc/salome/gui/VISU/images/setupanimation2.png
doc/salome/gui/VISU/images/slider1.png [new file with mode: 0755]
doc/salome/gui/VISU/images/slider2.png [new file with mode: 0755]
doc/salome/gui/VISU/images/smds1.png
doc/salome/gui/VISU/images/startrecording.png [new file with mode: 0755]
doc/salome/gui/VISU/images/stream_lines.png [new file with mode: 0755]
doc/salome/gui/VISU/images/streamlines.png
doc/salome/gui/VISU/images/sweep1.png [new file with mode: 0755]
doc/salome/gui/VISU/images/sweep2.png [new file with mode: 0755]
doc/salome/gui/VISU/images/table.png [new file with mode: 0644]
doc/salome/gui/VISU/images/table3d.png [new file with mode: 0644]
doc/salome/gui/VISU/images/tablesn1.png [new file with mode: 0644]
doc/salome/gui/VISU/images/tablesn2.png [new file with mode: 0644]
doc/salome/gui/VISU/images/textproperty.png
doc/salome/gui/VISU/images/translatepres.png
doc/salome/gui/VISU/images/values_labeling.png [new file with mode: 0644]
doc/salome/gui/VISU/images/vectorfield.png
doc/salome/gui/VISU/images/vectors.png [new file with mode: 0755]
doc/salome/gui/VISU/images/viewing1.png [new file with mode: 0755]
doc/salome/gui/VISU/images/viewing10.png [new file with mode: 0755]
doc/salome/gui/VISU/images/viewing11.png [new file with mode: 0755]
doc/salome/gui/VISU/images/viewing12.png [new file with mode: 0755]
doc/salome/gui/VISU/images/viewing13.png [new file with mode: 0755]
doc/salome/gui/VISU/images/viewing14.png [new file with mode: 0755]
doc/salome/gui/VISU/images/viewing2.png [new file with mode: 0755]
doc/salome/gui/VISU/images/viewing3.png [new file with mode: 0755]
doc/salome/gui/VISU/images/viewing4.png [new file with mode: 0755]
doc/salome/gui/VISU/images/viewing5.png [new file with mode: 0755]
doc/salome/gui/VISU/images/viewing6.png [new file with mode: 0755]
doc/salome/gui/VISU/images/viewing7.png [new file with mode: 0755]
doc/salome/gui/VISU/images/viewing8.png [new file with mode: 0755]
doc/salome/gui/VISU/images/viewing9.png [new file with mode: 0755]
doc/salome/gui/VISU/images/viewtable.png
doc/salome/gui/VISU/images/visufullscreen.png
doc/salome/gui/VISU/images/visuicon.jpg
doc/salome/gui/VISU/images/visuicon.png [new file with mode: 0755]
doc/salome/gui/VISU/input/3d_management.doc [new file with mode: 0755]
doc/salome/gui/VISU/input/3d_presentations.doc [new file with mode: 0755]
doc/salome/gui/VISU/input/a3d_presentations.doc [deleted file]
doc/salome/gui/VISU/input/about_tables.doc [deleted file]
doc/salome/gui/VISU/input/animating.doc
doc/salome/gui/VISU/input/calar_map_on_deformed_shape.doc [deleted file]
doc/salome/gui/VISU/input/clipping.doc
doc/salome/gui/VISU/input/creating_field_presentations.doc [deleted file]
doc/salome/gui/VISU/input/creating_gauss_points_presentation.doc [deleted file]
doc/salome/gui/VISU/input/creating_plot2d.doc [new file with mode: 0755]
doc/salome/gui/VISU/input/creating_tables_from_cut_lines.doc [deleted file]
doc/salome/gui/VISU/input/creating_xy_plots.doc [deleted file]
doc/salome/gui/VISU/input/cut_lines.doc
doc/salome/gui/VISU/input/cut_planes.doc
doc/salome/gui/VISU/input/deformed_shape.doc
doc/salome/gui/VISU/input/displaying_tables.doc [deleted file]
doc/salome/gui/VISU/input/feature_edges.doc [new file with mode: 0755]
doc/salome/gui/VISU/input/field_presentations.doc
doc/salome/gui/VISU/input/gauss_points_presentations.doc
doc/salome/gui/VISU/input/gauss_viewer.doc [deleted file]
doc/salome/gui/VISU/input/importing_med_objects.doc
doc/salome/gui/VISU/input/index.doc
doc/salome/gui/VISU/input/introduction_to_postpro.doc [deleted file]
doc/salome/gui/VISU/input/iso_surfaces.doc
doc/salome/gui/VISU/input/med_object.doc [new file with mode: 0755]
doc/salome/gui/VISU/input/navigation.doc [new file with mode: 0755]
doc/salome/gui/VISU/input/navigation_in_gauss_viewer.doc [deleted file]
doc/salome/gui/VISU/input/perspective_view.doc [new file with mode: 0755]
doc/salome/gui/VISU/input/picking.doc [deleted file]
doc/salome/gui/VISU/input/plot_3d.doc
doc/salome/gui/VISU/input/presentation_of_submesh.doc
doc/salome/gui/VISU/input/recording.doc [new file with mode: 0755]
doc/salome/gui/VISU/input/recording_in_gauss_viewer.doc [deleted file]
doc/salome/gui/VISU/input/running_postpro.doc [deleted file]
doc/salome/gui/VISU/input/scalar_bar.doc [deleted file]
doc/salome/gui/VISU/input/scalar_map.doc
doc/salome/gui/VISU/input/scalar_map_on_deformed_shape.doc [new file with mode: 0755]
doc/salome/gui/VISU/input/segmentation.doc [deleted file]
doc/salome/gui/VISU/input/selection_info.doc
doc/salome/gui/VISU/input/setting_properties_of_xy_plots.doc [deleted file]
doc/salome/gui/VISU/input/slider.doc [new file with mode: 0755]
doc/salome/gui/VISU/input/stream_lines.doc
doc/salome/gui/VISU/input/structure_of_med_objects.doc [deleted file]
doc/salome/gui/VISU/input/sweeping.doc
doc/salome/gui/VISU/input/table_3d.doc [new file with mode: 0644]
doc/salome/gui/VISU/input/table_presentations.doc
doc/salome/gui/VISU/input/values_labeling.doc [new file with mode: 0644]
doc/salome/gui/VISU/input/vectors.doc
doc/salome/gui/VISU/input/viewing_3d_presentations.doc
doc/salome/gui/VISU/input/viewing_3d_presentations_intro.doc [deleted file]
doc/salome/gui/VISU/input/xy_plots.doc [deleted file]
doc/salome/gui/VISU/pics/animatdef.jpg [deleted file]
doc/salome/gui/VISU/pics/animation.png [deleted file]
doc/salome/gui/VISU/pics/arrangeactors.png [deleted file]
doc/salome/gui/VISU/pics/arrangeactors1.png [deleted file]
doc/salome/gui/VISU/pics/begining.jpg [deleted file]
doc/salome/gui/VISU/pics/blue_down.jpg [deleted file]
doc/salome/gui/VISU/pics/blue_left.jpg [deleted file]
doc/salome/gui/VISU/pics/blue_right.jpg [deleted file]
doc/salome/gui/VISU/pics/blue_up.jpg [deleted file]
doc/salome/gui/VISU/pics/buildprogress.png [deleted file]
doc/salome/gui/VISU/pics/cellsel.jpg [deleted file]
doc/salome/gui/VISU/pics/clipping1.png [deleted file]
doc/salome/gui/VISU/pics/clipping2.png [deleted file]
doc/salome/gui/VISU/pics/createcurves.png [deleted file]
doc/salome/gui/VISU/pics/cutlines.png [deleted file]
doc/salome/gui/VISU/pics/cutlinesicn.jpg [deleted file]
doc/salome/gui/VISU/pics/cutlinesicon.jpg [deleted file]
doc/salome/gui/VISU/pics/cutlinesprsnt.png [deleted file]
doc/salome/gui/VISU/pics/cutplanes.png [deleted file]
doc/salome/gui/VISU/pics/cutplpresent.png [deleted file]
doc/salome/gui/VISU/pics/dataonelements1.png [deleted file]
doc/salome/gui/VISU/pics/dataonelements2.png [deleted file]
doc/salome/gui/VISU/pics/dataonelements3.png [deleted file]
doc/salome/gui/VISU/pics/deformedshape.png [deleted file]
doc/salome/gui/VISU/pics/deformedshapesn.png [deleted file]
doc/salome/gui/VISU/pics/defshapeicon.jpg [deleted file]
doc/salome/gui/VISU/pics/dumpviewtofile.png [deleted file]
doc/salome/gui/VISU/pics/editplot2dpresentation.png [deleted file]
doc/salome/gui/VISU/pics/end.jpg [deleted file]
doc/salome/gui/VISU/pics/exporttable.png [deleted file]
doc/salome/gui/VISU/pics/fitdatarange.png [deleted file]
doc/salome/gui/VISU/pics/gpp2.png [deleted file]
doc/salome/gui/VISU/pics/gpp3.png [deleted file]
doc/salome/gui/VISU/pics/gpp6.png [deleted file]
doc/salome/gui/VISU/pics/graduatedaxes1.png [deleted file]
doc/salome/gui/VISU/pics/image100.gif [deleted file]
doc/salome/gui/VISU/pics/image102.gif [deleted file]
doc/salome/gui/VISU/pics/image103.gif [deleted file]
doc/salome/gui/VISU/pics/image104.gif [deleted file]
doc/salome/gui/VISU/pics/image105.gif [deleted file]
doc/salome/gui/VISU/pics/image109.gif [deleted file]
doc/salome/gui/VISU/pics/image117.gif [deleted file]
doc/salome/gui/VISU/pics/image157.gif [deleted file]
doc/salome/gui/VISU/pics/image20.png [deleted file]
doc/salome/gui/VISU/pics/image21.png [deleted file]
doc/salome/gui/VISU/pics/image30.gif [deleted file]
doc/salome/gui/VISU/pics/image39.gif [deleted file]
doc/salome/gui/VISU/pics/image46.gif [deleted file]
doc/salome/gui/VISU/pics/image47.gif [deleted file]
doc/salome/gui/VISU/pics/image48.gif [deleted file]
doc/salome/gui/VISU/pics/image49.gif [deleted file]
doc/salome/gui/VISU/pics/image50.gif [deleted file]
doc/salome/gui/VISU/pics/image51.gif [deleted file]
doc/salome/gui/VISU/pics/image52.gif [deleted file]
doc/salome/gui/VISU/pics/image53.gif [deleted file]
doc/salome/gui/VISU/pics/image54.gif [deleted file]
doc/salome/gui/VISU/pics/image55.gif [deleted file]
doc/salome/gui/VISU/pics/image69.gif [deleted file]
doc/salome/gui/VISU/pics/image74.gif [deleted file]
doc/salome/gui/VISU/pics/image81.gif [deleted file]
doc/salome/gui/VISU/pics/image82.gif [deleted file]
doc/salome/gui/VISU/pics/image83.gif [deleted file]
doc/salome/gui/VISU/pics/image84.gif [deleted file]
doc/salome/gui/VISU/pics/image87.gif [deleted file]
doc/salome/gui/VISU/pics/image88.gif [deleted file]
doc/salome/gui/VISU/pics/image89.gif [deleted file]
doc/salome/gui/VISU/pics/image90.gif [deleted file]
doc/salome/gui/VISU/pics/image91.gif [deleted file]
doc/salome/gui/VISU/pics/image96.gif [deleted file]
doc/salome/gui/VISU/pics/image97.gif [deleted file]
doc/salome/gui/VISU/pics/image98.gif [deleted file]
doc/salome/gui/VISU/pics/image99.gif [deleted file]
doc/salome/gui/VISU/pics/importfromfile.png [deleted file]
doc/salome/gui/VISU/pics/importtablefromfile.png [deleted file]
doc/salome/gui/VISU/pics/iso.png [deleted file]
doc/salome/gui/VISU/pics/isosurf.jpg [deleted file]
doc/salome/gui/VISU/pics/isosurfaces.png [deleted file]
doc/salome/gui/VISU/pics/neo-transparency.png [deleted file]
doc/salome/gui/VISU/pics/next.jpg [deleted file]
doc/salome/gui/VISU/pics/picking.png [deleted file]
doc/salome/gui/VISU/pics/planes.png [deleted file]
doc/salome/gui/VISU/pics/plot3d-example.png [deleted file]
doc/salome/gui/VISU/pics/plot3d.png [deleted file]
doc/salome/gui/VISU/pics/points.jpg [deleted file]
doc/salome/gui/VISU/pics/previous.jpg [deleted file]
doc/salome/gui/VISU/pics/recording.png [deleted file]
doc/salome/gui/VISU/pics/recordingsaveas.png [deleted file]
doc/salome/gui/VISU/pics/rename.png [deleted file]
doc/salome/gui/VISU/pics/run.jpg [deleted file]
doc/salome/gui/VISU/pics/scalarbarproperties.png [deleted file]
doc/salome/gui/VISU/pics/scalarmapicon.jpg [deleted file]
doc/salome/gui/VISU/pics/scalarrangesn.png [deleted file]
doc/salome/gui/VISU/pics/set_rotation_point_dialog1.png [deleted file]
doc/salome/gui/VISU/pics/set_rotation_point_dialog2.png [deleted file]
doc/salome/gui/VISU/pics/setupanimation.png [deleted file]
doc/salome/gui/VISU/pics/setupplot2d.png [deleted file]
doc/salome/gui/VISU/pics/shrink.jpg [deleted file]
doc/salome/gui/VISU/pics/smds-example.png [deleted file]
doc/salome/gui/VISU/pics/smds-example1.png [deleted file]
doc/salome/gui/VISU/pics/smds1.png [deleted file]
doc/salome/gui/VISU/pics/snapfgf.png [deleted file]
doc/salome/gui/VISU/pics/speed.jpg [deleted file]
doc/salome/gui/VISU/pics/spheroid.png [deleted file]
doc/salome/gui/VISU/pics/streamlines.png [deleted file]
doc/salome/gui/VISU/pics/streamlinesicon.jpg [deleted file]
doc/salome/gui/VISU/pics/streamlinesprsnt.png [deleted file]
doc/salome/gui/VISU/pics/surface.jpg [deleted file]
doc/salome/gui/VISU/pics/textproperty.png [deleted file]
doc/salome/gui/VISU/pics/translatepres.png [deleted file]
doc/salome/gui/VISU/pics/vecticon.jpg [deleted file]
doc/salome/gui/VISU/pics/vectorfield.png [deleted file]
doc/salome/gui/VISU/pics/vectorsprsnt.png [deleted file]
doc/salome/gui/VISU/pics/view_rotation_point.png [deleted file]
doc/salome/gui/VISU/pics/viewsettings.png [deleted file]
doc/salome/gui/VISU/pics/viewtable.png [deleted file]
doc/salome/gui/VISU/pics/visufullscreen.png [deleted file]
doc/salome/gui/VISU/pics/visuicon.jpg [deleted file]
doc/salome/gui/VISU/pics/warning.png [deleted file]
doc/salome/gui/VISU/pics/wireframe.jpg [deleted file]
doc/salome/gui/VISU/static/footer.html
doc/salome/gui/VISU/visugenidl_doc/VISU__Gen_8idl.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/VISU__Gen_8idl__incl.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/doxygen.css [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Animation.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Animation__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Base.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Base__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ColoredPrs3d.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ColoredPrs3dCache.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ColoredPrs3dCache__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ColoredPrs3dHolder.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ColoredPrs3dHolder__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ColoredPrs3d__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Container.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Container__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Curve.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Curve__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1CutLines.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1CutLines__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1CutPlanes.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1CutPlanes__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1DeformedShape.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1DeformedShape__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1GaussPoints.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1GaussPoints__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1IsoSurfaces.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1IsoSurfaces__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Mesh.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Mesh__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Plot3D.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Plot3D__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Prs3d.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Prs3d__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1PrsObject.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1PrsObject__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1RemovableObject.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1RemovableObject__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Result.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Result__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ScalarMap.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ScalarMapOnDeformedShape.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ScalarMapOnDeformedShape__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ScalarMap__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1StreamLines.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1StreamLines__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Table.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1TableView.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1TableView__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Table__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1VISU__Gen.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1VISU__Gen__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Vectors.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Vectors__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1View.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1View3D.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1View3D__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ViewManager.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ViewManager__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1View__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1XYPlot.html [deleted file]
doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1XYPlot__inherit__graph.jpg [deleted file]
doc/salome/gui/VISU/visugenidl_doc/namespaceVISU.html [deleted file]
doc/salome/gui/VISU/whdata/whftdata.js [deleted file]
doc/salome/gui/VISU/whdata/whftdata0.htm [deleted file]
doc/salome/gui/VISU/whdata/whfts.htm [deleted file]
doc/salome/gui/VISU/whdata/whfts.js [deleted file]
doc/salome/gui/VISU/whdata/whfwdata.js [deleted file]
doc/salome/gui/VISU/whdata/whfwdata0.htm [deleted file]
doc/salome/gui/VISU/whdata/whgdata.js [deleted file]
doc/salome/gui/VISU/whdata/whgdata0.htm [deleted file]
doc/salome/gui/VISU/whdata/whglo.htm [deleted file]
doc/salome/gui/VISU/whdata/whglo.js [deleted file]
doc/salome/gui/VISU/whdata/whidata.js [deleted file]
doc/salome/gui/VISU/whdata/whidx.htm [deleted file]
doc/salome/gui/VISU/whdata/whidx.js [deleted file]
doc/salome/gui/VISU/whdata/whtdata.js [deleted file]
doc/salome/gui/VISU/whdata/whtdata0.htm [deleted file]
doc/salome/gui/VISU/whdata/whtoc.htm [deleted file]
doc/salome/gui/VISU/whdata/whtoc.js [deleted file]
doc/salome/gui/VISU/whgdata/whexpbar.gif [deleted file]
doc/salome/gui/VISU/whgdata/whlstf0.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstf1.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstf2.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstf3.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstf4.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstf5.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstf6.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstf7.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstf8.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstf9.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl0.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl1.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl10.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl11.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl12.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl13.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl14.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl15.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl16.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl17.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl18.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl19.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl2.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl20.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl21.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl22.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl23.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl24.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl3.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl4.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl5.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl6.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl7.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl8.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstfl9.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstg0.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlsti0.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstt0.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstt1.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstt2.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstt3.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstt4.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstt5.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstt6.htm [deleted file]
doc/salome/gui/VISU/whgdata/whlstt7.htm [deleted file]
doc/salome/gui/VISU/whgdata/whnvf30.htm [deleted file]
doc/salome/gui/VISU/whgdata/whnvf31.htm [deleted file]
doc/salome/gui/VISU/whgdata/whnvf32.htm [deleted file]
doc/salome/gui/VISU/whgdata/whnvf33.htm [deleted file]
doc/salome/gui/VISU/whgdata/whnvl31.htm [deleted file]
doc/salome/gui/VISU/whgdata/whnvl32.htm [deleted file]
doc/salome/gui/VISU/whgdata/whnvl33.htm [deleted file]
doc/salome/gui/VISU/whgdata/whnvp30.htm [deleted file]
doc/salome/gui/VISU/whgdata/whnvp31.htm [deleted file]
doc/salome/gui/VISU/whgdata/whnvp32.htm [deleted file]
doc/salome/gui/VISU/whgdata/whnvp33.htm [deleted file]
doc/salome/gui/VISU/whgdata/whnvt30.htm [deleted file]
doc/salome/gui/VISU/whgdata/whnvt31.htm [deleted file]
doc/salome/gui/VISU/whgdata/whnvt32.htm [deleted file]
doc/salome/gui/VISU/whgdata/whnvt33.htm [deleted file]
doc/salome/gui/VISU/whxdata/whftdata0.xml [deleted file]
doc/salome/gui/VISU/whxdata/whfts.xml [deleted file]
doc/salome/gui/VISU/whxdata/whfwdata0.xml [deleted file]
doc/salome/gui/VISU/whxdata/whgdata0.xml [deleted file]
doc/salome/gui/VISU/whxdata/whglo.xml [deleted file]
doc/salome/gui/VISU/whxdata/whidx.xml [deleted file]
doc/salome/gui/VISU/whxdata/whtdata0.xml [deleted file]
doc/salome/gui/VISU/whxdata/whtoc.xml [deleted file]
doc/salome/tui/Makefile.am
doc/salome/tui/VISU/HTML/VISU_Gen.html [deleted file]
doc/salome/tui/VISU/doxyfile.in [deleted file]
doc/salome/tui/VISU/sources/Application-About.png [deleted file]
doc/salome/tui/VISU/sources/Application-About1.jpg [deleted file]
doc/salome/tui/VISU/sources/application.gif [deleted file]
doc/salome/tui/VISU/sources/application.jpg [deleted file]
doc/salome/tui/VISU/sources/bg_salome.gif [deleted file]
doc/salome/tui/VISU/sources/footer.html [deleted file]
doc/salome/tui/VISU/sources/logocorp.gif [deleted file]
doc/salome/tui/VISU/sources/myheader.html [deleted file]
doc/salome/tui/VISU/sources/occ.gif [deleted file]
doc/salome/tui/VISU/sources/static/DataStruct.gif [deleted file]
doc/salome/tui/VISU/sources/static/PrsObj.gif [deleted file]
doc/salome/tui/VISU/sources/static/View.gif [deleted file]
doc/salome/tui/VISU/sources/static/doxygen.css [deleted file]
doc/salome/tui/VISU/sources/static/examples_VISU.html [deleted file]
doc/salome/tui/VISU/sources/static/overview_VISU.html [deleted file]
doc/salome/tui/VISU/sources/static/page2.html [deleted file]
doc/salome/tui/VISU/sources/static/tree.js.in [deleted file]
doc/salome/tui/VISU/sources/static/treeview.js [deleted file]
doc/salome/tui/doxyfile.in [new file with mode: 0755]
doc/salome/tui/images/application.jpg [new file with mode: 0755]
doc/salome/tui/images/logocorp.gif [new file with mode: 0755]
doc/salome/tui/images/occ.gif [new file with mode: 0755]
doc/salome/tui/static/doxygen.css [new file with mode: 0755]
doc/salome/tui/static/footer.html [new file with mode: 0755]
doc/salome/tui/static/myheader.html [new file with mode: 0755]
idl/Makefile.am
idl/VISU_Gen.idl
resources/Makefile.am
resources/ModuleVisu.png
resources/SalomeApp.xml
resources/VISUCatalog.xml.in
resources/VISU_en.xml
resources/VISU_fr.xml
resources/Visu_DeactivatePlane.png [new file with mode: 0644]
resources/Visu_PlaneSegmentation.png
resources/Visu_SphereSegmentation.png
resources/Visu_actor_selection.png [new file with mode: 0644]
resources/Visu_add.png
resources/Visu_anim.png
resources/Visu_apply.png [new file with mode: 0644]
resources/Visu_cell_selection.png [new file with mode: 0644]
resources/Visu_close.png [new file with mode: 0644]
resources/Visu_cutlines.png
resources/Visu_cutplane.png [deleted file]
resources/Visu_cutplanes.png
resources/Visu_deformed.png
resources/Visu_deformed_anim.png
resources/Visu_eraseall.png
resources/Visu_gauss_point_selection.png [new file with mode: 0644]
resources/Visu_gauss_points.png
resources/Visu_graduated_axes.png
resources/Visu_help.png [new file with mode: 0644]
resources/Visu_holo_render.png
resources/Visu_import_med.png
resources/Visu_isosurfaces.png
resources/Visu_load_texture.png
resources/Visu_ok.png [new file with mode: 0644]
resources/Visu_planemanager.png [new file with mode: 0644]
resources/Visu_plot2d.png
resources/Visu_plot3d.png
resources/Visu_point_selection.png [new file with mode: 0644]
resources/Visu_points.png
resources/Visu_recording_pause.png
resources/Visu_recording_play.png
resources/Visu_recording_start.png
resources/Visu_recording_stop.png
resources/Visu_remove.png
resources/Visu_scalarmapondeformedshape.png
resources/Visu_scalars.png
resources/Visu_scaling.png
resources/Visu_selectall.png
resources/Visu_selection_panel.png [new file with mode: 0644]
resources/Visu_selectionactor.png
resources/Visu_selectioncell.png
resources/Visu_selectionedge.png
resources/Visu_selectionpoint.png
resources/Visu_selectonly.png
resources/Visu_slider_avi.png
resources/Visu_slider_first.png
resources/Visu_slider_last.png
resources/Visu_slider_next.png
resources/Visu_slider_panel.png [new file with mode: 0644]
resources/Visu_slider_pause.png
resources/Visu_slider_play.png
resources/Visu_slider_previous.png
resources/Visu_streamlines.png
resources/Visu_surface.png
resources/Visu_sweep_panel.png [new file with mode: 0644]
resources/Visu_tree_container.png
resources/Visu_tree_curve.png
resources/Visu_tree_cutlines.png
resources/Visu_tree_cutlines_gr.png
resources/Visu_tree_cutplanes.png
resources/Visu_tree_cutplanes_gr.png
resources/Visu_tree_deformed.png
resources/Visu_tree_deformed_gr.png
resources/Visu_tree_mesh.png
resources/Visu_tree_multipr_full.png
resources/Visu_tree_multipr_hide.png
resources/Visu_tree_multipr_low.png
resources/Visu_tree_multipr_medium.png
resources/Visu_tree_plot3d.png
resources/Visu_tree_plot3d_gr.png
resources/Visu_tree_result.png
resources/Visu_tree_scalarmapondeformedshape.png
resources/Visu_tree_scalarmapondeformedshape_gr.png
resources/Visu_tree_scalars.png
resources/Visu_tree_scalars_gr.png
resources/Visu_tree_streamlines.png
resources/Visu_tree_streamlines_gr.png
resources/Visu_tree_table.png
resources/Visu_tree_vectors.png
resources/Visu_tree_vectors_gr.png
resources/Visu_tree_visu.png
resources/Visu_vectors.png
resources/Visu_wireframe.png
src/CONVERTOR/Makefile.am
src/CONVERTOR/VISUConvertor.cxx
src/CONVERTOR/VISUConvertor.hxx
src/CONVERTOR/VISU_AppendFilter.cxx
src/CONVERTOR/VISU_AppendFilter.hxx
src/CONVERTOR/VISU_AppendFilterUtilities.cxx
src/CONVERTOR/VISU_AppendFilterUtilities.hxx
src/CONVERTOR/VISU_AppendPolyData.cxx
src/CONVERTOR/VISU_AppendPolyData.hxx
src/CONVERTOR/VISU_CommonCellsFilter.cxx
src/CONVERTOR/VISU_CommonCellsFilter.hxx
src/CONVERTOR/VISU_Convertor.cxx
src/CONVERTOR/VISU_Convertor.hxx
src/CONVERTOR/VISU_ConvertorDef.hxx
src/CONVERTOR/VISU_ConvertorDef_impl.hxx
src/CONVERTOR/VISU_ConvertorUtils.cxx
src/CONVERTOR/VISU_ConvertorUtils.hxx
src/CONVERTOR/VISU_Convertor_impl.cxx
src/CONVERTOR/VISU_Convertor_impl.hxx
src/CONVERTOR/VISU_ElnoMeshValue.hxx [new file with mode: 0644]
src/CONVERTOR/VISU_ExtractUnstructuredGrid.cxx
src/CONVERTOR/VISU_ExtractUnstructuredGrid.hxx
src/CONVERTOR/VISU_GaussMergeFilter.cxx
src/CONVERTOR/VISU_GaussMergeFilter.hxx
src/CONVERTOR/VISU_IDMapper.cxx
src/CONVERTOR/VISU_IDMapper.hxx
src/CONVERTOR/VISU_MedConvertor.cxx
src/CONVERTOR/VISU_MedConvertor.hxx
src/CONVERTOR/VISU_MergeFilter.cxx
src/CONVERTOR/VISU_MergeFilter.hxx
src/CONVERTOR/VISU_MergeFilterUtilities.cxx
src/CONVERTOR/VISU_MergeFilterUtilities.hxx
src/CONVERTOR/VISU_MeshValue.cxx
src/CONVERTOR/VISU_MeshValue.hxx
src/CONVERTOR/VISU_PointCoords.cxx
src/CONVERTOR/VISU_PointCoords.hxx
src/CONVERTOR/VISU_Structures.cxx
src/CONVERTOR/VISU_Structures.hxx
src/CONVERTOR/VISU_Structures_impl.cxx
src/CONVERTOR/VISU_Structures_impl.hxx
src/CONVERTOR/VISU_TableReader.cxx [new file with mode: 0644]
src/CONVERTOR/VISU_TableReader.hxx [new file with mode: 0644]
src/CONVERTOR/VISU_TypeList.hxx
src/CONVERTOR/VISU_UsedPointsFilter.cxx
src/CONVERTOR/VISU_UsedPointsFilter.hxx
src/CONVERTOR/VISU_VTKTypeList.hxx [new file with mode: 0644]
src/CONVERTOR/VISU_Vtk2MedConvertor.cxx [new file with mode: 0644]
src/CONVERTOR/VISU_Vtk2MedConvertor.hxx [new file with mode: 0644]
src/ENGINE/Makefile.am
src/ENGINE/VISU_Engine_i.cc
src/ENGINE/VISU_Engine_i.hh
src/GUITOOLS/Makefile.am
src/GUITOOLS/VisuGUITools.h
src/GUITOOLS/VisuGUI_TableDlg.cxx
src/GUITOOLS/VisuGUI_TableDlg.h
src/Makefile.am
src/OBJECT/Makefile.am
src/OBJECT/VISU_Actor.cxx
src/OBJECT/VISU_Actor.h
src/OBJECT/VISU_ActorBase.cxx [new file with mode: 0644]
src/OBJECT/VISU_ActorBase.h [new file with mode: 0644]
src/OBJECT/VISU_ActorFactory.h
src/OBJECT/VISU_BoostSignals.h
src/OBJECT/VISU_DataSetActor.cxx
src/OBJECT/VISU_DataSetActor.h
src/OBJECT/VISU_Event.h
src/OBJECT/VISU_GaussPtsAct.cxx
src/OBJECT/VISU_GaussPtsAct.h
src/OBJECT/VISU_GaussPtsActorFactory.h
src/OBJECT/VISU_GaussPtsDeviceActor.cxx
src/OBJECT/VISU_GaussPtsDeviceActor.h
src/OBJECT/VISU_GaussPtsSettings.cxx
src/OBJECT/VISU_GaussPtsSettings.h
src/OBJECT/VISU_IsoSurfActor.cxx [new file with mode: 0644]
src/OBJECT/VISU_IsoSurfActor.h [new file with mode: 0644]
src/OBJECT/VISU_MeshAct.cxx
src/OBJECT/VISU_MeshAct.h
src/OBJECT/VISU_OBJECT.h [new file with mode: 0755]
src/OBJECT/VISU_PickingSettings.cxx [new file with mode: 0644]
src/OBJECT/VISU_PickingSettings.h [new file with mode: 0644]
src/OBJECT/VISU_PointMap3dActor.cxx [new file with mode: 0644]
src/OBJECT/VISU_PointMap3dActor.h [new file with mode: 0644]
src/OBJECT/VISU_ScalarMapAct.cxx
src/OBJECT/VISU_ScalarMapAct.h
src/OBJECT/VISU_VectorsAct.cxx
src/OBJECT/VISU_VectorsAct.h
src/PIPELINE/Makefile.am
src/PIPELINE/SALOME_ExtractGeometry.cxx
src/PIPELINE/SALOME_ExtractGeometry.h
src/PIPELINE/SALOME_ExtractPolyDataGeometry.cxx
src/PIPELINE/SALOME_ExtractPolyDataGeometry.h
src/PIPELINE/VISUPipeLine.cxx
src/PIPELINE/VISUPipeline.hxx
src/PIPELINE/VISU_ColoredPL.cxx
src/PIPELINE/VISU_ColoredPL.hxx
src/PIPELINE/VISU_CutLinesPL.cxx
src/PIPELINE/VISU_CutLinesPL.hxx
src/PIPELINE/VISU_CutPlanesPL.cxx
src/PIPELINE/VISU_CutPlanesPL.hxx
src/PIPELINE/VISU_DataSetMapperHolder.cxx
src/PIPELINE/VISU_DataSetMapperHolder.hxx
src/PIPELINE/VISU_DeformationPL.cxx [new file with mode: 0755]
src/PIPELINE/VISU_DeformationPL.hxx [new file with mode: 0755]
src/PIPELINE/VISU_DeformedGridPL.cxx [new file with mode: 0644]
src/PIPELINE/VISU_DeformedGridPL.hxx [new file with mode: 0644]
src/PIPELINE/VISU_DeformedShapeAndScalarMapPL.cxx [new file with mode: 0644]
src/PIPELINE/VISU_DeformedShapeAndScalarMapPL.hxx [new file with mode: 0644]
src/PIPELINE/VISU_DeformedShapePL.cxx
src/PIPELINE/VISU_DeformedShapePL.hxx
src/PIPELINE/VISU_ElnoAssembleFilter.cxx [new file with mode: 0644]
src/PIPELINE/VISU_ElnoAssembleFilter.hxx [new file with mode: 0644]
src/PIPELINE/VISU_ElnoDisassembleFilter.cxx [new file with mode: 0644]
src/PIPELINE/VISU_ElnoDisassembleFilter.hxx [new file with mode: 0644]
src/PIPELINE/VISU_Extractor.cxx
src/PIPELINE/VISU_Extractor.hxx
src/PIPELINE/VISU_FieldTransform.cxx
src/PIPELINE/VISU_FieldTransform.hxx
src/PIPELINE/VISU_GaussPointsPL.cxx
src/PIPELINE/VISU_GaussPointsPL.hxx
src/PIPELINE/VISU_ImplicitFunctionWidget.cxx
src/PIPELINE/VISU_ImplicitFunctionWidget.hxx
src/PIPELINE/VISU_IsoSurfacesPL.cxx
src/PIPELINE/VISU_IsoSurfacesPL.hxx
src/PIPELINE/VISU_LabelPointsFilter.cxx [new file with mode: 0644]
src/PIPELINE/VISU_LabelPointsFilter.hxx [new file with mode: 0644]
src/PIPELINE/VISU_LookupTable.cxx
src/PIPELINE/VISU_LookupTable.hxx
src/PIPELINE/VISU_MapperHolder.cxx
src/PIPELINE/VISU_MapperHolder.hxx
src/PIPELINE/VISU_MaskPointsFilter.cxx
src/PIPELINE/VISU_MaskPointsFilter.hxx
src/PIPELINE/VISU_MergedPL.cxx [new file with mode: 0644]
src/PIPELINE/VISU_MergedPL.hxx [new file with mode: 0644]
src/PIPELINE/VISU_MeshPL.cxx
src/PIPELINE/VISU_MeshPL.hxx
src/PIPELINE/VISU_OpenGLPointSpriteMapper.cxx
src/PIPELINE/VISU_OpenGLPointSpriteMapper.hxx
src/PIPELINE/VISU_OptionalDeformationPL.cxx [new file with mode: 0755]
src/PIPELINE/VISU_OptionalDeformationPL.hxx [new file with mode: 0755]
src/PIPELINE/VISU_PipeLine.cxx
src/PIPELINE/VISU_PipeLine.hxx
src/PIPELINE/VISU_PipeLineUtils.cxx
src/PIPELINE/VISU_PipeLineUtils.hxx
src/PIPELINE/VISU_PlanesWidget.cxx
src/PIPELINE/VISU_PlanesWidget.hxx
src/PIPELINE/VISU_Plot3DPL.cxx
src/PIPELINE/VISU_Plot3DPL.hxx
src/PIPELINE/VISU_PointSpriteMapperHolder.cxx
src/PIPELINE/VISU_PointSpriteMapperHolder.hxx
src/PIPELINE/VISU_PolyDataMapperHolder.cxx
src/PIPELINE/VISU_PolyDataMapperHolder.hxx
src/PIPELINE/VISU_PolyDataPL.cxx
src/PIPELINE/VISU_PolyDataPL.hxx
src/PIPELINE/VISU_ScalarBarActor.cxx
src/PIPELINE/VISU_ScalarBarActor.hxx
src/PIPELINE/VISU_ScalarBarCtrl.cxx
src/PIPELINE/VISU_ScalarBarCtrl.hxx
src/PIPELINE/VISU_ScalarMapOnDeformedShapePL.cxx [deleted file]
src/PIPELINE/VISU_ScalarMapOnDeformedShapePL.hxx [deleted file]
src/PIPELINE/VISU_ScalarMapPL.cxx
src/PIPELINE/VISU_ScalarMapPL.hxx
src/PIPELINE/VISU_SphereWidget.cxx
src/PIPELINE/VISU_SphereWidget.hxx
src/PIPELINE/VISU_StreamLinesPL.cxx
src/PIPELINE/VISU_StreamLinesPL.hxx
src/PIPELINE/VISU_UnstructuredGridPL.cxx
src/PIPELINE/VISU_UnstructuredGridPL.hxx
src/PIPELINE/VISU_VectorsPL.cxx
src/PIPELINE/VISU_VectorsPL.hxx
src/PIPELINE/VISU_WidgetCtrl.cxx
src/PIPELINE/VISU_WidgetCtrl.hxx
src/PIPELINE/VISU_XYPlotActor.cxx [new file with mode: 0644]
src/PIPELINE/VISU_XYPlotActor.hxx [new file with mode: 0644]
src/PIPELINE/VISU_img2vti.cxx
src/VISUGUI/Makefile.am
src/VISUGUI/VISU_images.po [deleted file]
src/VISUGUI/VISU_images.ts [new file with mode: 0644]
src/VISUGUI/VISU_msg_en.po [deleted file]
src/VISUGUI/VISU_msg_en.ts [new file with mode: 0644]
src/VISUGUI/VisuGUI.cxx
src/VISUGUI/VisuGUI.h
src/VISUGUI/VisuGUI_ActionsDef.h
src/VISUGUI/VisuGUI_BasePanel.cxx [new file with mode: 0755]
src/VISUGUI/VisuGUI_BasePanel.h [new file with mode: 0755]
src/VISUGUI/VisuGUI_BuildProgressDlg.cxx
src/VISUGUI/VisuGUI_BuildProgressDlg.h
src/VISUGUI/VisuGUI_CacheDlg.cxx
src/VISUGUI/VisuGUI_CacheDlg.h
src/VISUGUI/VisuGUI_ClippingDlg.cxx
src/VISUGUI/VisuGUI_ClippingDlg.h
src/VISUGUI/VisuGUI_ClippingPanel.cxx [new file with mode: 0644]
src/VISUGUI/VisuGUI_ClippingPanel.h [new file with mode: 0644]
src/VISUGUI/VisuGUI_ClippingPlaneDlg.cxx [new file with mode: 0644]
src/VISUGUI/VisuGUI_ClippingPlaneDlg.h [new file with mode: 0644]
src/VISUGUI/VisuGUI_CursorDlg.cxx
src/VISUGUI/VisuGUI_CursorDlg.h
src/VISUGUI/VisuGUI_CutLinesDlg.cxx
src/VISUGUI/VisuGUI_CutLinesDlg.h
src/VISUGUI/VisuGUI_CutPlanesDlg.cxx
src/VISUGUI/VisuGUI_CutPlanesDlg.h
src/VISUGUI/VisuGUI_DeformedShapeAndScalarMapDlg.cxx [new file with mode: 0644]
src/VISUGUI/VisuGUI_DeformedShapeAndScalarMapDlg.h [new file with mode: 0644]
src/VISUGUI/VisuGUI_DeformedShapeDlg.cxx
src/VISUGUI/VisuGUI_DeformedShapeDlg.h
src/VISUGUI/VisuGUI_DialogRunner.cxx
src/VISUGUI/VisuGUI_DialogRunner.h
src/VISUGUI/VisuGUI_Displayer.cxx
src/VISUGUI/VisuGUI_Displayer.h
src/VISUGUI/VisuGUI_EditContainerDlg.cxx
src/VISUGUI/VisuGUI_EditContainerDlg.h
src/VISUGUI/VisuGUI_Factory.cxx
src/VISUGUI/VisuGUI_FeatureEdgesPanel.cxx [new file with mode: 0644]
src/VISUGUI/VisuGUI_FeatureEdgesPanel.h [new file with mode: 0644]
src/VISUGUI/VisuGUI_FieldFilter.cxx
src/VISUGUI/VisuGUI_FieldFilter.h
src/VISUGUI/VisuGUI_FileDlg.cxx
src/VISUGUI/VisuGUI_FileDlg.h
src/VISUGUI/VisuGUI_FileInfoDlg.cxx [new file with mode: 0644]
src/VISUGUI/VisuGUI_FileInfoDlg.h [new file with mode: 0644]
src/VISUGUI/VisuGUI_FilterScalarsDlg.cxx [new file with mode: 0644]
src/VISUGUI/VisuGUI_FilterScalarsDlg.h [new file with mode: 0644]
src/VISUGUI/VisuGUI_FindPane.cxx [new file with mode: 0644]
src/VISUGUI/VisuGUI_FindPane.h [new file with mode: 0644]
src/VISUGUI/VisuGUI_GaussPointsDlg.cxx
src/VISUGUI/VisuGUI_GaussPointsDlg.h
src/VISUGUI/VisuGUI_GaussPointsSelectionPane.cxx [new file with mode: 0644]
src/VISUGUI/VisuGUI_GaussPointsSelectionPane.h [new file with mode: 0644]
src/VISUGUI/VisuGUI_InputPane.cxx
src/VISUGUI/VisuGUI_InputPane.h
src/VISUGUI/VisuGUI_InputPanel.cxx [new file with mode: 0755]
src/VISUGUI/VisuGUI_InputPanel.h [new file with mode: 0755]
src/VISUGUI/VisuGUI_IsoSurfacesDlg.cxx
src/VISUGUI/VisuGUI_IsoSurfacesDlg.h
src/VISUGUI/VisuGUI_Module.cxx
src/VISUGUI/VisuGUI_Module.h
src/VISUGUI/VisuGUI_NameDlg.cxx
src/VISUGUI/VisuGUI_NameDlg.h
src/VISUGUI/VisuGUI_OffsetDlg.cxx
src/VISUGUI/VisuGUI_OffsetDlg.h
src/VISUGUI/VisuGUI_Panel.cxx [new file with mode: 0755]
src/VISUGUI/VisuGUI_Panel.h [new file with mode: 0755]
src/VISUGUI/VisuGUI_Plot3DDlg.cxx
src/VISUGUI/VisuGUI_Plot3DDlg.h
src/VISUGUI/VisuGUI_PopupTools.cxx [deleted file]
src/VISUGUI/VisuGUI_PopupTools.h [deleted file]
src/VISUGUI/VisuGUI_Prs3dDlg.cxx
src/VISUGUI/VisuGUI_Prs3dDlg.h
src/VISUGUI/VisuGUI_Prs3dTools.h
src/VISUGUI/VisuGUI_ScalarBarDlg.cxx
src/VISUGUI/VisuGUI_ScalarBarDlg.h
src/VISUGUI/VisuGUI_ScalarMapOnDeformedShapeDlg.cxx [deleted file]
src/VISUGUI/VisuGUI_ScalarMapOnDeformedShapeDlg.h [deleted file]
src/VISUGUI/VisuGUI_Selection.cxx
src/VISUGUI/VisuGUI_Selection.h
src/VISUGUI/VisuGUI_SelectionPanel.cxx [new file with mode: 0644]
src/VISUGUI/VisuGUI_SelectionPanel.h [new file with mode: 0644]
src/VISUGUI/VisuGUI_SelectionPrefDlg.cxx [new file with mode: 0644]
src/VISUGUI/VisuGUI_SelectionPrefDlg.h [new file with mode: 0644]
src/VISUGUI/VisuGUI_SetupPlot2dDlg.cxx
src/VISUGUI/VisuGUI_SetupPlot2dDlg.h
src/VISUGUI/VisuGUI_Slider.cxx
src/VISUGUI/VisuGUI_Slider.h
src/VISUGUI/VisuGUI_StreamLinesDlg.cxx
src/VISUGUI/VisuGUI_StreamLinesDlg.h
src/VISUGUI/VisuGUI_Sweep.cxx [new file with mode: 0644]
src/VISUGUI/VisuGUI_Sweep.h [new file with mode: 0644]
src/VISUGUI/VisuGUI_Table3dDlg.cxx [new file with mode: 0644]
src/VISUGUI/VisuGUI_Table3dDlg.h [new file with mode: 0644]
src/VISUGUI/VisuGUI_TimeAnimation.cxx
src/VISUGUI/VisuGUI_TimeAnimation.h
src/VISUGUI/VisuGUI_Timer.cxx
src/VISUGUI/VisuGUI_Timer.h
src/VISUGUI/VisuGUI_Tools.cxx
src/VISUGUI/VisuGUI_Tools.h
src/VISUGUI/VisuGUI_TransparencyDlg.cxx
src/VISUGUI/VisuGUI_TransparencyDlg.h
src/VISUGUI/VisuGUI_ValuesLabelingDlg.cxx [new file with mode: 0755]
src/VISUGUI/VisuGUI_ValuesLabelingDlg.h [new file with mode: 0755]
src/VISUGUI/VisuGUI_VectorsDlg.cxx
src/VISUGUI/VisuGUI_VectorsDlg.h
src/VISUGUI/VisuGUI_ViewExtender.cxx [new file with mode: 0644]
src/VISUGUI/VisuGUI_ViewExtender.h [new file with mode: 0644]
src/VISUGUI/VisuGUI_ViewTools.cxx
src/VISUGUI/VisuGUI_ViewTools.h
src/VISU_I/Makefile.am
src/VISU_I/SALOME_GenericObjPointer.cc
src/VISU_I/SALOME_GenericObjPointer.hh
src/VISU_I/VISUConfig.cc
src/VISU_I/VISUConfig.hh
src/VISU_I/VISU_ClippingPlaneMgr.cxx [new file with mode: 0644]
src/VISU_I/VISU_ClippingPlaneMgr.hxx [new file with mode: 0644]
src/VISU_I/VISU_ColoredPrs3dCache_i.cc
src/VISU_I/VISU_ColoredPrs3dCache_i.hh
src/VISU_I/VISU_ColoredPrs3dFactory.cc
src/VISU_I/VISU_ColoredPrs3dFactory.hh
src/VISU_I/VISU_ColoredPrs3dHolder_i.cc
src/VISU_I/VISU_ColoredPrs3dHolder_i.hh
src/VISU_I/VISU_ColoredPrs3d_i.cc
src/VISU_I/VISU_ColoredPrs3d_i.hh
src/VISU_I/VISU_CorbaMedConvertor.cxx
src/VISU_I/VISU_CorbaMedConvertor.hxx
src/VISU_I/VISU_CutLines_i.cc
src/VISU_I/VISU_CutLines_i.hh
src/VISU_I/VISU_CutPlanes_i.cc
src/VISU_I/VISU_CutPlanes_i.hh
src/VISU_I/VISU_Deformation_i.cc [new file with mode: 0755]
src/VISU_I/VISU_Deformation_i.hh [new file with mode: 0755]
src/VISU_I/VISU_DeformedShapeAndScalarMap_i.cc [new file with mode: 0644]
src/VISU_I/VISU_DeformedShapeAndScalarMap_i.hh [new file with mode: 0644]
src/VISU_I/VISU_DeformedShape_i.cc
src/VISU_I/VISU_DeformedShape_i.hh
src/VISU_I/VISU_DumpPython.cc
src/VISU_I/VISU_GaussPoints_i.cc
src/VISU_I/VISU_GaussPoints_i.hh
src/VISU_I/VISU_Gen_i.cc
src/VISU_I/VISU_Gen_i.hh
src/VISU_I/VISU_I.cxx
src/VISU_I/VISU_I.hxx
src/VISU_I/VISU_IsoSurfaces_i.cc
src/VISU_I/VISU_IsoSurfaces_i.hh
src/VISU_I/VISU_Mesh_i.cc
src/VISU_I/VISU_Mesh_i.hh
src/VISU_I/VISU_MonoColorPrs_i.cc [new file with mode: 0644]
src/VISU_I/VISU_MonoColorPrs_i.hh [new file with mode: 0644]
src/VISU_I/VISU_MultiResult_i.cc
src/VISU_I/VISU_MultiResult_i.hh
src/VISU_I/VISU_OptionalDeformation_i.cc [new file with mode: 0755]
src/VISU_I/VISU_OptionalDeformation_i.hh [new file with mode: 0755]
src/VISU_I/VISU_Plot3D_i.cc
src/VISU_I/VISU_Plot3D_i.hh
src/VISU_I/VISU_PointMap3d_i.cc [new file with mode: 0644]
src/VISU_I/VISU_PointMap3d_i.hh [new file with mode: 0644]
src/VISU_I/VISU_Prs3dUtils.cc
src/VISU_I/VISU_Prs3dUtils.hh
src/VISU_I/VISU_Prs3d_i.cc
src/VISU_I/VISU_Prs3d_i.hh
src/VISU_I/VISU_PrsObject_i.cc
src/VISU_I/VISU_PrsObject_i.hh
src/VISU_I/VISU_ResultUtils.cc
src/VISU_I/VISU_ResultUtils.hh
src/VISU_I/VISU_Result_i.cc
src/VISU_I/VISU_Result_i.hh
src/VISU_I/VISU_ScalarMapOnDeformedShape_i.cc [deleted file]
src/VISU_I/VISU_ScalarMapOnDeformedShape_i.hh [deleted file]
src/VISU_I/VISU_ScalarMap_i.cc
src/VISU_I/VISU_ScalarMap_i.hh
src/VISU_I/VISU_StreamLines_i.cc
src/VISU_I/VISU_StreamLines_i.hh
src/VISU_I/VISU_Table_i.cc
src/VISU_I/VISU_Table_i.hh
src/VISU_I/VISU_TimeAnimation.cxx
src/VISU_I/VISU_TimeAnimation.h
src/VISU_I/VISU_Vectors_i.cc
src/VISU_I/VISU_Vectors_i.hh
src/VISU_I/VISU_ViewManager_i.cc
src/VISU_I/VISU_ViewManager_i.hh
src/VISU_I/VISU_View_i.cc
src/VISU_I/VISU_View_i.hh
src/VISU_SWIG/Makefile.am
src/VISU_SWIG/VISU_Example_01.py
src/VISU_SWIG/VISU_Example_02.py
src/VISU_SWIG/VISU_Example_03.py
src/VISU_SWIG/VISU_Example_04.py
src/VISU_SWIG/VISU_Example_05.py
src/VISU_SWIG/VISU_Example_06.py
src/VISU_SWIG/VISU_Example_07.py
src/VISU_SWIG/VISU_Gen_s.cc
src/VISU_SWIG/VISU_Gen_s.hh
src/VISU_SWIG/VISU_shared_modules.py
src/VISU_SWIG/batch_test_events.py [deleted file]
src/VISU_SWIG/batchmode_visu.py
src/VISU_SWIG/batchmode_visu_table.py
src/VISU_SWIG/batchmode_visu_view.py
src/VISU_SWIG/batchmode_visu_view3d.py
src/VISU_SWIG/libVISU_Swig.i
src/VISU_SWIG/test_events.py [deleted file]
src/VISU_SWIG/visu.py
src/VISU_SWIG/visu_apply_properties.py
src/VISU_SWIG/visu_apply_properties_successive.py
src/VISU_SWIG/visu_big_table.py
src/VISU_SWIG/visu_cache.py
src/VISU_SWIG/visu_delete.py
src/VISU_SWIG/visu_gui.py
src/VISU_SWIG/visu_med.py
src/VISU_SWIG/visu_pointmap3d.py [new file with mode: 0755]
src/VISU_SWIG/visu_prs_example.py
src/VISU_SWIG/visu_split_views.py
src/VISU_SWIG/visu_succcessive_animation.py
src/VISU_SWIG/visu_swig_test.py
src/VISU_SWIG/visu_table.py
src/VISU_SWIG/visu_view.py
src/VISU_SWIG/visu_view3d.py
src/VVTK/Makefile.am
src/VVTK/VVTK.h
src/VVTK/VVTK_ImageWriter.cxx
src/VVTK/VVTK_ImageWriter.h
src/VVTK/VVTK_ImageWriterMgr.cxx
src/VVTK/VVTK_ImageWriterMgr.h
src/VVTK/VVTK_InteractorStyle.cxx
src/VVTK/VVTK_InteractorStyle.h
src/VVTK/VVTK_MainWindow.cxx
src/VVTK/VVTK_MainWindow.h
src/VVTK/VVTK_PickingDlg.cxx
src/VVTK/VVTK_PickingDlg.h
src/VVTK/VVTK_PrimitiveBox.cxx
src/VVTK/VVTK_PrimitiveBox.h
src/VVTK/VVTK_Recorder.cxx
src/VVTK/VVTK_Recorder.h
src/VVTK/VVTK_RecorderDlg.cxx
src/VVTK/VVTK_RecorderDlg.h
src/VVTK/VVTK_Renderer.cxx
src/VVTK/VVTK_Renderer.h
src/VVTK/VVTK_SegmentationCursorDlg.cxx
src/VVTK/VVTK_SegmentationCursorDlg.h
src/VVTK/VVTK_SizeBox.cxx
src/VVTK/VVTK_SizeBox.h
src/VVTK/VVTK_ViewManager.cxx
src/VVTK/VVTK_ViewManager.h
src/VVTK/VVTK_ViewModel.cxx
src/VVTK/VVTK_ViewModel.h
src/VVTK/VVTK_ViewWindow.cxx
src/VVTK/VVTK_ViewWindow.h

index d0f229775fd7d941ce41b2e1cfec5e08f95f494f..6bc65dd3c1e17a03283ee549fd9f5dac4148a676 100644 (file)
@@ -1,4 +1,7 @@
-#  Copyright (C) 2005  CEA/DEN, EDF R&D, OPEN CASCADE, PRINCIPIA R&D
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 #
 #  This library is free software; you can redistribute it and/or
 #  modify it under the terms of the GNU Lesser General Public
 #  License along with this library; if not, write to the Free Software
 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 # -* Makefile *-
-#
 # Author : Patrick GOLDBRONN (CEA)
 # Date : 28/06/2001
 # $Header$
 #
-
 include $(top_srcdir)/adm_local/unix/make_common_starter.am
 
+ACLOCAL_AMFLAGS = -I adm_local/unix/config_files \
+                  -I ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files \
+                  -I ${GUI_ROOT_DIR}/adm_local/unix/config_files \
+                  -I ${MED_ROOT_DIR}/adm_local/unix/config_files
+
 SUBDIRS = adm_local idl resources src doc bin 
 
 DISTCLEANFILES = a.out aclocal.m4 configure
 
-salomeinclude_DATA=VISU_version.h
+salomeinclude_DATA = VISU_version.h
 
-EXTRA_DIST+= \
-       build_configure \
-       clean_configure \
+EXTRA_DIST +=          \
+       build_configure \
+       clean_configure \
        LICENCE
 
 dist-hook:
@@ -42,7 +48,7 @@ dist-hook:
 usr_docs:
        (cd doc && $(MAKE) $(AM_MAKEFLAGS) usr_docs)
 
-docs:usr_docs
+docs: usr_docs
 
 dev_docs:
        (cd doc && $(MAKE) $(AM_MAKEFLAGS) dev_docs)
diff --git a/README b/README
index 975c663963b1e5ee02feafb493013739d21f6ae3..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 (file)
--- a/README
+++ b/README
@@ -1,106 +0,0 @@
-This is the Med Memory package V3.2.0
-
-I : Major evolution of the Med Memory package between V2.2.x and V3.2.x :
-=========================================================================
-
-The Med Memory may be used as a stand alone package with only the C++ and the
-python layers (adding --without-kernel at the configure step). In this case
-there are no links with the SALOME KERNEL.
-
-In this version,
-
-- mesh defined with polygones/polyhedra mixed with usual types of cells;
-
-- the Med File drivers of the Med Memory support the V2.1 as well as the
-  V2.2 versions of the Med File layer. The requirement of the Salome platform
-  is only Med File V2.2, the V2.1 version is emberked in the Med Memory.
-
-- Using the Med file (V2.1 and V2.2) and GIBI drivers; fields laying on a
-  partial support;
-
-- Fields defined on cells mesh with multiple gauss points,
-
-may be mounted in memory and treated.
-
-With all those new functionalities, most of the Med Memory client codes
-based on previous releases of the Med Memory should work; but minor changes
-should be done for the get/set field classes methods:
-
-- the getValue() and the setValue(T *) methods take no MED_EN::medModeSwitch
-  parameter;
-- the getValueI (resp. setValueI) should be replaced by getRow(int )
-  (resp. setRow(int ,T*) if the field is in full interlacing mode (using the
-  method getInterlacingType() of the classe FIELD_). If the field is stored in
-  no interlacing mode getValueIJ (resp. setValueIJ) should be replaced by
-  getColumn(int ) (resp. setColumn(int ,T*)).
-
-Intensive debugging was carried throughout the entire Med Memory C++ Layer:
-
-  - especially on the major user's C++ classes (such as MED, MESH,
-    SUPPORT and FIELD);
-
-  - the C++ drivers classes on those major classes. Especially the
-    Med File and the GIBI drivers are read/write ones. The VTK drivers
-    are only for the writing; and finally the PORFLOW drivers may only
-    be used for the MESH class in the reading mode.
-
-The Med Client layer of the Med Memory has been tested in a full
-Server/Client configuration.
-
-II : MedMemory building and installation :
-=========================================
-
-It's very simple :
-
-./configure --prefix=path_to_your_installation_directory
-make
-make install
-
-eventually if the user or the installer needs to build an installation of Med
-Memory as a stand alone package, he may use the configure option
---without-kernel. By default the full debug options are set:
-      - compilation using -g option
-      - Med Memory debugging information history using -D_DEBUG_ option.
-
-The user may get all configure option with :
-  ./configure --help
-
-The user may set optimization option :
-  ./configure --enable-production --disable-debug (use compiler flags -O)
-
-In order to avoid most of the problem the user or the installer should first
-check the HDF5HOME and the MED2HOME environment variables. This version of
-Med Memory with Med File V2.2.2, V2.2.3, as well as V2.3.0 but with the
-version of HDF5 V1.6.3. In the installation of Med File you should take care
-of the $HDF5HOME environement variable. This warning is especially intended
-to the user of The Med Memory in stand alone (without the SALOME KERNEL
-component).
-
-III : MedMemory testing :
-=========================
-
-After installation of the Med Memory; the user may find a large set of test
-files in Med File V2.1, V2.2, GIBI format.
-
-To check the Med Memory installation, in the directory
-path_to_your_installation_directory/bin/salome you may find a set of python
-scripts and test executable. To ckeck the deep layers (C++, Python) of the Med
-Memory, the installer may run:
-
-- testMedMemGeneral.py,
-- medMeshing_test.py
-- test_profil_MedFieldDriver.py
-- testGaussLocalization.py
-- med_field_anal.py
-- test_MEDMEM_MeshingFlica
-- test_MEDMEM_Meshing_poly
-- test_MEDMEM_MeshingPoly
-
-To check the upper layer (CORBA, Client), the installer may run in the SALOME
-Python consol:
-
- - Med_Gen_test.py
- - medClient_test.py
- - testMedAlliances1.py
- - testMedAlliances.py
- - testMeshAlliances.py
index c0a63cf72031eaf6aa12d98e277b0d8a2f6e71cf..0ea0965ad05d7a470b79e18c530614c6c2c92729 100644 (file)
@@ -1,26 +1,28 @@
-// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-// 
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either 
-// version 2.1 of the License.
-// 
-// This library is distributed in the hope that it will be useful 
-// but WITHOUT ANY WARRANTY; without even the implied warranty of 
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-// Lesser General Public License for more details.
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// You should have received a copy of the GNU Lesser General Public  
-// License along with this library; if not, write to the Free Software 
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// See http://www.salome-platform.org/
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VISU_version.h
 //  Author : Vadim SANDLER
 //  Module : SALOME
-
+//
 #if !defined(__VISU_VERSION_H__)
 #define __VISU_VERSION_H__
 
index 76fe0fa5ff1505e9fefd859c28411681900990d2..9bca392c3703d5078606dd70553a31ddcba03bdc 100644 (file)
@@ -1,22 +1,24 @@
-# Copyright (C) 2005  OPEN CASCADE, CEA, EDF R&D, LEG
-#           PRINCIPIA R&D, EADS CCR, Lip6, BV, CEDRAT
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either 
-# version 2.1 of the License.
-# 
-# This library is distributed in the hope that it will be useful 
-# but WITHOUT ANY WARRANTY; without even the implied warranty of 
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-# Lesser General Public License for more details.
-# 
-# You should have received a copy of the GNU Lesser General Public  
-# License along with this library; if not, write to the Free Software 
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-# 
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-# 
-
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
 include $(top_srcdir)/adm_local/unix/make_common_starter.am
 
-SUBDIRS= unix
\ No newline at end of file
+SUBDIRS = unix
\ No newline at end of file
index facd4e6f4afcae75a48956b85ab2e4687876c2aa..5f6d5f7536c72fc43090c511c2a26518cb92af5d 100644 (file)
@@ -1,22 +1,24 @@
-# Copyright (C) 2005  OPEN CASCADE, CEA, EDF R&D, LEG
-#           PRINCIPIA R&D, EADS CCR, Lip6, BV, CEDRAT
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either 
-# version 2.1 of the License.
-# 
-# This library is distributed in the hope that it will be useful 
-# but WITHOUT ANY WARRANTY; without even the implied warranty of 
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-# Lesser General Public License for more details.
-# 
-# You should have received a copy of the GNU Lesser General Public  
-# License along with this library; if not, write to the Free Software 
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-# 
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-# 
-
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
 include $(top_srcdir)/adm_local/unix/make_common_starter.am
 
 SUBDIRS = config_files
index f4266455b0fdb6bc00ff1e35591a72eca89d8fac..170a21c9d3cc360285210bb5d3e4f764b3541e87 100644 (file)
@@ -1,22 +1,25 @@
-# Copyright (C) 2005  OPEN CASCADE, CEA, EDF R&D, LEG
-#           PRINCIPIA R&D, EADS CCR, Lip6, BV, CEDRAT
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either 
-# version 2.1 of the License.
-# 
-# This library is distributed in the hope that it will be useful 
-# but WITHOUT ANY WARRANTY; without even the implied warranty of 
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-# Lesser General Public License for more details.
-# 
-# You should have received a copy of the GNU Lesser General Public  
-# License along with this library; if not, write to the Free Software 
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-# 
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-# 
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
 include $(top_srcdir)/adm_local/unix/make_common_starter.am
 
-dist_admlocalm4_DATA= \
+dist_admlocalm4_DATA = \
     check_VISU.m4
index cea3c3866269844edc1383ef46d63791d11af8cb..1fde1814ea2f4873d2384fef60dd371f926eee00 100755 (executable)
@@ -1,8 +1,28 @@
+dnl  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+dnl
+dnl  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+dnl  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+dnl
+dnl  This library is free software; you can redistribute it and/or
+dnl  modify it under the terms of the GNU Lesser General Public
+dnl  License as published by the Free Software Foundation; either
+dnl  version 2.1 of the License.
+dnl
+dnl  This library is distributed in the hope that it will be useful,
+dnl  but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+dnl  Lesser General Public License for more details.
+dnl
+dnl  You should have received a copy of the GNU Lesser General Public
+dnl  License along with this library; if not, write to the Free Software
+dnl  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+dnl
+dnl  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+dnl
 ###########################################################
 # File    : check_Visu.m4
 # Author  : Vadim SANDLER (OCN)
 # Created : 13/07/05
-# Copyright (C) 2005 Open CASCADE
 # Check availability of VISU binary distribution
 ###########################################################
 
index 6a4c36d2340be80640e0484af5b11df1bd69be27..ae95b7df34cca1fac81d0ef9d641910f757f8172 100644 (file)
@@ -1,54 +1,88 @@
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 # ============================================================
 # This file defines the common definitions used in several
 # Makefile. This file must be included, if needed, by the file
 # Makefile.am.
 # ============================================================
-#
-
 # Standard directory for installation
-salomeincludedir   = $(includedir)/@PACKAGE@
-libdir             = $(prefix)/lib@LIB_LOCATION_SUFFIX@/@PACKAGE@
-bindir             = $(prefix)/bin/@PACKAGE@
+#
+salomeincludedir   = $(includedir)/salome
+libdir             = $(prefix)/lib@LIB_LOCATION_SUFFIX@/salome
+bindir             = $(prefix)/bin/salome
 purebindir         = $(prefix)/bin
 salomescriptdir    = $(bindir)
+salomepythondir    = $(pythondir)/salome
+salomepyexecdir    = $(pyexecdir)/salome
 
 # Tests environment folders
 testsenvirondir    = $(prefix)/Tests/environ
 testsenvironcshdir = $(prefix)/Tests/environ/csh
 
 # Directory for installing idl files
-salomeidldir       = $(prefix)/idl/@PACKAGE@
+salomeidldir       = $(prefix)/idl/salome
 
 # Directory for installing resource files
-salomeresdir       = $(prefix)/share/@PACKAGE@/resources/@MODULE_NAME@
+salomeresdir       = $(prefix)/share/salome/resources/@MODULE_NAME@
 
 # Directories for installing admin files
-admlocaldir       = $(prefix)/adm_local
-admlocalunixdir     = $(admlocaldir)/unix
-admlocalm4dir        = $(admlocaldir)/unix/config_files
+admlocaldir        = $(prefix)/adm_local
+admlocalunixdir    = $(admlocaldir)/unix
+admlocalm4dir      = $(admlocaldir)/unix/config_files
 
 # Shared modules installation directory
-sharedpkgpythondir =$(pkgpythondir)/shared_modules
+sharedpkgpythondir = $(salomepythondir)/shared_modules
 
 # Documentation directory
-docdir             = $(datadir)/doc/@PACKAGE@
+docdir             = $(datadir)/doc/salome
 
 # common rules
 
-# moc-files generation
+# meta object implementation files generation (moc)
 %_moc.cxx: %.h
        $(MOC) $< -o $@
 
-# qm-files generation
-%.qm: %.po
-       $(MSG2QM) $< $@
+# translation (*.qm) files generation (lrelease)
+%.qm: %.ts
+       $(LRELEASE) $< -qm $@
+
+# resource files generation (qrcc)
+qrc_%.cxx: %.qrc
+       $(QRCC) $< -o $@ -name $(*F)
+
+# qt forms files generation (uic)
+ui_%.h: %.ui
+       $(UIC) -o $@ $<
 
-EXTRA_DIST=$(MOC_FILES:%_moc.cxx=%.h) $(nodist_salomeres_DATA:%.qm=%.po)
+# extra distributed files
+EXTRA_DIST = $(MOC_FILES:%_moc.cxx=%.h) $(QRC_FILES:qrc_%.cxx=%.qrc) \
+             $(UIC_FILES:ui_%.h=%.ui) $(nodist_salomeres_DATA:%.qm=%.ts)
 
+# customize clean operation
 mostlyclean-local:
        rm -f @builddir@/*_moc.cxx
        rm -f @builddir@/*.qm
+       rm -f @builddir@/ui_*.h
+       rm -f @builddir@/qrc_*.cxx
 
 # tests
 tests: unittest
index e81b2089afbc8abac23f4f90225d9c726832531e..15df8dbd0f1738625bf684fae67e1ff82f8d7279 100644 (file)
@@ -1,22 +1,28 @@
-# Copyright (C) 2005  OPEN CASCADE, CEA, EDF R&D, LEG
-#           PRINCIPIA R&D, EADS CCR, Lip6, BV, CEDRAT
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either 
-# version 2.1 of the License.
-# 
-# This library is distributed in the hope that it will be useful 
-# but WITHOUT ANY WARRANTY; without even the implied warranty of 
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-# Lesser General Public License for more details.
-# 
-# You should have received a copy of the GNU Lesser General Public  
-# License along with this library; if not, write to the Free Software 
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-# 
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
 include $(top_srcdir)/adm_local/unix/make_common_starter.am
 
-nodist_salomescript_DATA= VERSION
-EXTRA_DIST+= VERSION.in
+# non-distributed files 
+nodist_salomescript_DATA = VERSION
+
+# distributed files
+dist_salomescript_SCRIPTS =
index 26207a8cac82f16114d545896d02ff88cb24b1aa..0ece669e5442b3f2d92ffbdc0b6253462b3e1ced 100755 (executable)
@@ -1,16 +1,33 @@
 #!/bin/bash
-
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 # Tool for updating list of .in file for the SALOME project
 # and regenerating configure script
-#
 # Author : Marc Tajchman - CEA
 # Date : 10/10/2002
 # $Header$
-#
 # 29/03/2007: Mikhail PONIKAROV - OCN
 # Reorganization for uage of autotools
-
+#
 ORIG_DIR=`pwd`
 CONF_DIR=`echo $0 | sed -e "s,[^/]*$,,;s,/$,,;s,^$,.,"`
 
index be0b5427f39955a0e5a4704b1b5c9b22605fde78..f57f7b3bf98d03cab5f0acc1a75b80d039d61886 100755 (executable)
@@ -1,5 +1,25 @@
 #!/bin/sh
-
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
 rm -rf autom4te.cache aclocal.m4 configure make_config
 find . -name "*~" -print -exec rm {} \;
 find . -name "*.pyc" -print -exec rm {} \;
index 1a48bc5f0646c484b969c13422d5a6aceb81eea0..02711d93a0c09c38bdecccf35947d9de8a2548f7 100644 (file)
@@ -1,12 +1,31 @@
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
 # Author : Marc Tajchman (CEA)
 # Date : 28/06/2001
 # Modified by : Patrick GOLDBRONN (CEA)
 # Modified by : Marc Tajchman (CEA)
 # Modified by : Mikhail Ponikarov (OCN)
 #
-
-
-AC_INIT([Salome2 Project VISU module], [4.1.1], [webmaster.salome@opencascade.com], [salome])
+AC_INIT([Salome2 Project VISU module], [5.1.0], [webmaster.salome@opencascade.com], [SalomeVISU])
 AC_CONFIG_AUX_DIR(salome_adm/unix/config_files)
 AC_CANONICAL_HOST
 AC_CANONICAL_TARGET
@@ -207,13 +226,13 @@ echo
 
 CHECK_QT
 
-echo
-echo ---------------------------------------------
-echo testing msg2qm
-echo ---------------------------------------------
-echo
+dnl echo
+dnl echo ---------------------------------------------
+dnl echo testing msg2qm
+dnl echo ---------------------------------------------
+dnl echo
 
-CHECK_MSG2QM
+dnl CHECK_MSG2QM
 
 echo
 echo ---------------------------------------------
@@ -308,7 +327,7 @@ echo ---------------------------------------------
 echo
 
 echo Configure
-variables="cc_ok boost_ok lex_yacc_ok python_ok swig_ok threads_ok OpenGL_ok qt_ok vtk_ok hdf5_ok omniORB_ok occ_ok qwt_ok doxygen_ok graphviz_ok Kernel_ok Med_ok"
+variables="cc_ok boost_ok lex_yacc_ok python_ok swig_ok threads_ok OpenGL_ok qt_ok vtk_ok hdf5_ok omniORB_ok occ_ok qwt_ok doxygen_ok graphviz_ok Kernel_ok Med_ok SalomeGUI_ok"
 
 for var in $variables
 do
@@ -354,11 +373,11 @@ AC_OUTPUT([ \
        ./doc/Makefile \
        ./doc/salome/Makefile \
        ./doc/salome/gui/Makefile \
+       ./doc/salome/gui/VISU/Makefile \
        ./doc/salome/gui/VISU/doxyfile \
        ./doc/salome/gui/VISU/doxyfile_idl \
        ./doc/salome/tui/Makefile \
-       ./doc/salome/tui/VISU/doxyfile \
-       ./doc/salome/tui/VISU/sources/static/tree.js \
+       ./doc/salome/tui/doxyfile \
        ./idl/Makefile \
        ./resources/VISUCatalog.xml \
        ./resources/Makefile \
index 68f247f877f126a5739512f2fe9987e7ad662d33..34a233c1488a8c1680fc8743a5fa5991d49e1d6e 100644 (file)
@@ -1,22 +1,30 @@
-# Copyright (C) 2005  OPEN CASCADE, CEA, EDF R&D, LEG
-#           PRINCIPIA R&D, EADS CCR, Lip6, BV, CEDRAT
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either 
-# version 2.1 of the License.
-# 
-# This library is distributed in the hope that it will be useful 
-# but WITHOUT ANY WARRANTY; without even the implied warranty of 
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-# Lesser General Public License for more details.
-# 
-# You should have received a copy of the GNU Lesser General Public  
-# License along with this library; if not, write to the Free Software 
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-# 
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-# 
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
+SUBDIRS = salome
 
-SUBDIRS= salome
+usr_docs:
+       (cd salome && $(MAKE) $(AM_MAKEFLAGS) usr_docs)
 
-EXTRA_DIST= html
\ No newline at end of file
+docs: usr_docs
+
+dev_docs:
+       (cd salome && $(MAKE) $(AM_MAKEFLAGS) dev_docs)
index 35fbf228fee24cfdb83290822b5e456858b03830..7e1ed33595533eedca2302bae99d2734b95969e5 100644 (file)
@@ -1,4 +1,7 @@
-#  Copyright (C) 2005  CEA/DEN, EDF R&D, OPEN CASCADE, PRINCIPIA R&D
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 #
 #  This library is free software; you can redistribute it and/or
 #  modify it under the terms of the GNU Lesser General Public
 #  License along with this library; if not, write to the Free Software
 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 # $Header$
-
-SUBDIRS= tui gui
-SUBDIRSTUI= tui
-SUBDIRSGUI= gui
+#
+SUBDIRS = tui gui
+SUBDIRSTUI = tui
+SUBDIRSGUI = gui
 
 usr_docs:
        @@SETX@; for d in $(SUBDIRSGUI); do     \
index 1ec04c7a64a270e47900d28749697f2c8dcb20ed..85aabb8c3e8157568c53ddf0e5ccb01f4992472d 100644 (file)
@@ -1,4 +1,7 @@
-#  Copyright (C) 2005  CEA/DEN, EDF R&D, OPEN CASCADE, PRINCIPIA R&D
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 #
 #  This library is free software; you can redistribute it and/or
 #  modify it under the terms of the GNU Lesser General Public
 #  File   : Makefile.am
 #  Author : Vasily Rusyaev (Open Cascade NN)
 #  Module : doc
-
+#
 include $(top_srcdir)/adm_local/unix/make_common_starter.am
 
-EXTRA_DIST+=VISU
-
-doxygen=@DOXYGEN@
+SUBDIRS = VISU
 
 usr_docs:
-       cd ./VISU; \
-       echo "Processing VISU_Gen.idl file: "; \
-       $(doxygen) ./doxyfile_idl; \
-       echo "Running doxygen in directory: "`pwd`; \
-       $(doxygen) ./doxyfile;
+       (cd VISU && $(MAKE) $(AM_MAKEFLAGS) usr_docs)
 
 docs: usr_docs
-
-clean-local:
-       rm -fr `ls | grep -v "Makefile"`
-       rm -fr VISU
-
-install-data-local: usr_docs
-       mkdir -p $(docdir)/gui
-       cp -rf VISU $(docdir)/gui
-       -find $(PWD) -name CVS -prune -exec rm -rf {} \;
-
-uninstall-local:
-       rm -rf $(docdir)/gui/VISU
-
-docguidir=$(docdir)/gui/VISU
-
-nodist_docgui_DATA= VISU/doxyfile
-nodist_docgui_DATA+= VISU/doxyfile_idl
-EXTRA_DIST+= VISU/doxyfile.in
-EXTRA_DIST+= VISU/doxyfile_idl.in
diff --git a/doc/salome/gui/VISU/Makefile.am b/doc/salome/gui/VISU/Makefile.am
new file mode 100644 (file)
index 0000000..6f320dc
--- /dev/null
@@ -0,0 +1,63 @@
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
+#  File   : Makefile.am
+#  Author : Vasily Rusyaev (Open Cascade NN)
+#  Module : doc
+#
+include $(top_srcdir)/adm_local/unix/make_common_starter.am
+
+EXTRA_DIST += images input static
+
+usr_docs: doxyfile_idl doxyfile 
+       @echo "===========================================" ;   \
+       echo "Processing VISU_Gen.idl file" ;                   \
+       echo "===========================================" ;    \
+       $(DOXYGEN) doxyfile_idl;                                \
+       echo "===========================================" ;    \
+       echo "Generating GUI documentation" ;                   \
+       echo "===========================================" ;    \
+       $(DOXYGEN) doxyfile;
+
+docs: usr_docs
+
+clean-local:
+       @for filen in `find . -maxdepth 1` ; do                         \
+         case $${filen} in                                     \
+           ./Makefile | ./doxyfile | ./doxyfile_idl ) ;;       \
+           . | .. ) ;;                                         \
+           *) echo "Removing $${filen}" ; rm -rf $${filen} ;;  \
+         esac ;                                                \
+       done ;
+
+install-data-local: usr_docs
+       $(INSTALL) -d $(DESTDIR)$(docdir)/gui/VISU
+       @for filen in `find . -maxdepth 1` ; do                                                         \
+         case $${filen} in                                                                     \
+           ./Makefile | ./doxyfile | ./doxyfile_idl ) ;;                                       \
+           ./doxyfile.bak | ./doxyfile_idl.bak ) ;;                                            \
+           . | .. ) ;;                                                                         \
+           *) echo "Installing $${filen}" ; cp -rp $${filen} $(DESTDIR)$(docdir)/gui/VISU ;;   \
+         esac ;                                                                                \
+       done ;
+
+uninstall-local:
+       rm -rf $(DESTDIR)$(docdir)/gui/VISU
index b8330d48a01eae4eaa94dd88f21b5ec7e23f01a9..010fa709f89c0cbc074cadfe3ac4262c10ea12ef 100755 (executable)
@@ -1,8 +1,29 @@
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
 #---------------------------------------------------------------------------
 # Project related configuration options
 #---------------------------------------------------------------------------
 PROJECT_NAME      = "Post-Pro Module Reference Manual v.@VERSION@"
-OUTPUT_DIRECTORY  = ./
+OUTPUT_DIRECTORY  = .
 CREATE_SUBDIRS   = NO
 OUTPUT_LANGUAGE   = English
 TAB_SIZE          = 5
@@ -18,13 +39,15 @@ WARNINGS          = YES
 #---------------------------------------------------------------------------
 INPUT             = @srcdir@/input               
 FILE_PATTERNS     = *.doc
+EXCLUDE           = 
 IMAGE_PATH        = @srcdir@/images
+EXAMPLE_PATH      = 
 
 #---------------------------------------------------------------------------
 #HTML related options
 #---------------------------------------------------------------------------
 GENERATE_HTML     = YES
-HTML_OUTPUT       = ./
+HTML_OUTPUT       = .
 HTML_HEADER       = @srcdir@/static/header.html
 HTML_FOOTER       = @srcdir@/static/footer.html
 #HTML_STYLESHEET  = @srcdir@/static/doxygen.css
@@ -46,4 +69,4 @@ GENERATE_RTF      = NO
 #---------------------------------------------------------------------------
 #External reference options
 #---------------------------------------------------------------------------
-TAGFILES = visugen_doc.tag=./visugen_doc
\ No newline at end of file
+TAGFILES          = visugen_doc.tag=visugen_doc
index 60d89c2d3c2ab3baa9662ca36f433734e2c62c98..c9e8461117c38a5acad4fab3c0ff7077e009ffdc 100755 (executable)
@@ -1,8 +1,29 @@
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
 #---------------------------------------------------------------------------
 # Project related configuration options
 #---------------------------------------------------------------------------
 PROJECT_NAME      = "Post-Pro Module Reference Manual v.@VERSION@"
-OUTPUT_DIRECTORY  = ./
+OUTPUT_DIRECTORY  = .
 CREATE_SUBDIRS   = NO
 OUTPUT_LANGUAGE   = English
 USE_WINDOWS_ENCODING   = NO
@@ -66,8 +87,8 @@ VERBATIM_HEADERS       = YES
 #---------------------------------------------------------------------------
 # configuration options related to warning and progress messages
 #---------------------------------------------------------------------------
-QUIET             = NO
-WARNINGS          = YES
+QUIET                  = NO
+WARNINGS               = YES
 WARN_IF_UNDOCUMENTED   = YES
 WARN_IF_DOC_ERROR      = YES
 WARN_NO_PARAMDOC       = NO
@@ -86,7 +107,7 @@ RECURSIVE         = NO
 #HTML related options
 #---------------------------------------------------------------------------
 GENERATE_HTML     = YES
-HTML_OUTPUT       = ./visugen_doc
+HTML_OUTPUT       = visugen_doc
 HTML_HEADER       = @srcdir@/static/header.html
 HTML_FOOTER       = @srcdir@/static/footer.html
 #HTML_STYLESHEET  = @srcdir@/static/doxygen.css
@@ -134,4 +155,4 @@ DOT_CLEANUP            = YES
 #---------------------------------------------------------------------------
 #External reference options
 #---------------------------------------------------------------------------
-GENERATE_TAGFILE  = visugen_doc.tag
+GENERATE_TAGFILE       = visugen_doc.tag
diff --git a/doc/salome/gui/VISU/files/about_structure_of_med_object.htm b/doc/salome/gui/VISU/files/about_structure_of_med_object.htm
deleted file mode 100755 (executable)
index 551859c..0000000
+++ /dev/null
@@ -1,255 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>About structure of MED object</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { font-family:'Times New Roman' , serif; }
-img_whs2 { border:none; width:30px; height:30px; float:none; border-style:none; }
-p.whs3 { font-family:'Times New Roman' , serif; }
-p.whs4 { margin-left:40px; font-family:'Times New Roman' , serif; }
-p.whs5 { font-family:'Times New Roman' , serif; margin-left:40px; }
-img_whs6 { border:none; width:177px; height:274px; float:none; border-style:none; }
-h3.whs7 { font-family:'Times New Roman' , serif; }
-img_whs8 { border:none; float:none; width:30px; height:30px; border-style:none; }
-p.whs9 { font-family:'Times New Roman' , serif; text-align:justify; }
-table.whs10 { width:100%; float:alignleft; border-left-style:Outset; border-left-width:1px; border-top-style:Outset; border-top-width:1px; border-right-style:Outset; border-right-width:1px; border-bottom-style:Outset; border-bottom-width:1px; border-left-color:#c0c0c0; border-right-color:#c0c0c0; border-top-color:#c0c0c0; border-bottom-color:#c0c0c0; }
-col.whs11 { width:50%; }
-td.whs12 { width:50%; border-left-width:1px; border-left-style:Inset; border-left-color:#808080; border-top-color:#808080; border-top-style:Inset; border-top-width:1px; border-right-width:1px; border-right-style:Inset; border-right-color:#808080; border-bottom-color:#808080; border-bottom-style:Inset; border-bottom-width:1px; padding-right:10px; padding-left:10px; }
-p.whs13 { text-align:center; font-weight:bold; font-family:'Times New Roman' , serif; }
-p.whs14 { text-align:center; font-family:'Times New Roman' , serif; }
-p.whs15 { font-family:'Times New Roman' , serif; text-align:center; }
--->
-</style><script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\nStructure of MED objects");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Structure of MED objects</h1>
-
-<p>&nbsp;<img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs2">In <span style="font-weight: bold;"><B>Post-Pro</B></span> module 
- 3d representations are constructed on the base of &nbsp;submeshes 
- representing parts of a mesh, which is stored in form of MED objects in 
- *.med files. Each MED object has its own user-defined structure.</p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs3">In general, the mesh 
- represents an object including the following types of data:</p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs4">&nbsp;- 
- <span style="font-style: italic;"><I>Geometrical information</I></span>: list 
- of nodes, edges, faces and cells of the mesh;</p>
-
-<p class="whs4">&nbsp;- 
- <span style="font-style: italic;"><I>Information on the interpolation in 
- accordance with resulting elements</I></span>: the mesh should be compatible 
- with chosen interpolation;</p>
-
-<p class="whs5">&nbsp;- 
- <span style="font-style: italic;"><I>Physical information</I></span>: initial 
- and boundary conditions. (Scalar or vector values applied to the cells 
- of the mesh)</p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs3">The structure of MED 
- object has a tree-like form. It contains three main folders: <span style="font-weight: bold;"><B><a 
- href="#Families">Families</a>, <a href="#Groups">Groups</a>, <a href="#Fields">Fields</a>.</B></span></p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../pics/snapfgf.png" x-maintain-ratio="TRUE" width="177px" height="274px" border="0" class="img_whs6"></p>
-
-<h3 class="whs7"><img src="../i_blue.jpg" x-save-file="TRUE" x-save-method="compute-relative" width="30px" height="30px" border="0" class="img_whs8"> <a name=Families></a>Families</h3>
-
-<p class="whs9">From 
- general point of view, the whole mesh is divided into <span style="font-weight: bold;"><B>families</B></span>, 
- submeshes created by the user. <span style="font-style: italic;"><I>Every 
- </I></span><span style="font-weight: bold; font-style: italic;"><I><B>family</B></I></span><span 
- style="font-style: italic;"><I> is composed of cells of a definite type &nbsp;- 
- it can be Nodes, Edges, Faces or Cells.</I></span> The presentation created 
- on the basis of a particular <span style="font-weight: bold;"><B>family </B></span>will 
- be composed of geometrical elements, corresponding to the type of cells 
- of this <span style="font-weight: bold;"><B>family. </B></span>&nbsp;</p>
-
-<p class="whs3">&nbsp;</p>
-
-<div align=left>
-<table x-use-null-cells width="100%" class="whs10">
-<script language='JavaScript'><!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4)) document.write("</table><table x-use-null-cells width='100%' border='1' bordercolor='gray' bordercolorlight='gray' bordercolordark='gray'>");
-//--></script>
-<col class="whs11">
-<col class="whs11">
-
-<tr>
-<td width="50%" class="whs12">
-<p align="center" class="whs13">Type of cells (entities) of the family</td>
-<td width="50%" class="whs12">
-<p align="center" class="whs13">Geometrical element</td></tr>
-
-<tr>
-<td width="50%" class="whs12">
-<p align="center" class="whs14">Nodes</td>
-<td width="50%" class="whs12">
-<p align="center" class="whs14">Points</td></tr>
-
-<tr>
-<td width="50%" class="whs12">
-<p align="center" class="whs14">Edges</td>
-<td width="50%" class="whs12">
-<p align="center" class="whs14">Segments</td></tr>
-
-<tr>
-<td width="50%" class="whs12">
-<p align="center" class="whs14">Faces</td>
-<td width="50%" class="whs12">
-<p align="center" class="whs14">Triangles, quadrangles</td></tr>
-
-<tr>
-<td width="50%" class="whs12">
-<p align="center" class="whs14">Cells</td>
-<td width="50%" class="whs12">
-<p align="center" class="whs14">Any</td></tr>
-<script language='JavaScript'><!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4)) document.write("</table></table><table>");
-//--></script>
-</table>
-</div>
-<p align="center" class="whs15">Table of correspondence</p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs9">&nbsp;In 
- the folder <span style="font-weight: bold;"><B>Families </B></span>all families 
- of the mesh are put into the following subfolders, defining the type of 
- cells of the mesh: <span style="font-weight: bold;"><B>onNodes, onEdges, 
- onFaces, onCells. </B></span></p>
-
-<p class="whs9">These 
- subfolders also represent submeshes of the mesh, which are composed of 
- all cells of the mesh of this type.</p>
-
-<h3 class="whs7"><img src="../i_blue.jpg" x-save-file="TRUE" x-save-method="compute-relative" width="30px" height="30px" border="0" class="img_whs8"><a name=Groups></a>Groups</h3>
-
-<p class="whs3"><span style="font-weight: bold;"><B>Groups 
- </B></span>combine different families independently of the type of cells, 
- they are composed of. </p>
-
-<p class="whs3">&nbsp;</p>
-
-<h3 class="whs7"><img src="../i_blue.jpg" x-save-file="TRUE" x-save-method="compute-relative" width="30px" height="30px" border="0" class="img_whs8"><a name=Fields></a>Fields</h3>
-
-<p class="whs9"><span 
- style="font-weight: bold;"><B>Fields </B></span>represent the results of calculations 
- (scalar or vector values), grouped together under one physical concept. 
- </p>
-
-<p class="whs9">These 
- values are applied to the cells of a definite submesh, which is indicated 
- in the Object Browser in the subfolder of the <span style="font-weight: bold;"><B>field. 
- </B></span></p>
-
-<p class="whs9">Most 
- often the calculations are performed during some period of time. That's 
- why <span style="font-weight: bold;"><B>fields </B></span>include <span style="font-weight: bold;"><B>Time 
- Stamps, </B></span>representing the results of calculations in one definite 
- moment. In <span style="font-weight: bold;"><B>Post-Pro </B></span>field presentations 
- are constructed basing on these <span style="font-weight: bold;"><B>Time 
- Stamps. </B></span>(<a href="creating_field_presentations.htm">See: Creating 
- field presentations</a>) &nbsp;</p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs3">
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;}  if (parseInt(navigator.appVersion) >=2 && typeof(PickupDialog_Invoke) == 'function') PickupDialog_Invoke(e,'','Creating field presentations','creating_field_presentations.htm','Creating presentations','creating_presentations.htm','Importing MED files','importing_med_objects.htm','Introduction','introduction.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a>
-
-
- </p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs3">&nbsp;</p>
-
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")
-  WritePopupMenuLayer();
-//--></script><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/about_tables.htm b/doc/salome/gui/VISU/files/about_tables.htm
deleted file mode 100755 (executable)
index ab5213d..0000000
+++ /dev/null
@@ -1,153 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>About tables</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { font-family:'Times New Roman' , serif; }
-p.whs2 { font-family:'Times New Roman' , serif; }
-p.whs3 { font-family:'Times New Roman'  , serif; background-image:url('../texture_horiz_ltbluebubbles.jpg'); }
-img_whs4 { border:none; width:36px; height:38px; float:none; border-style:none; }
-p.whs5 { font-family:'Times New Roman' , serif; margin-left:40px; }
-p.whs6 { font-family:'Times New Roman' , serif; margin-left:0px; }
--->
-</style><script type="text/javascript" language="JavaScript">
-<!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
-{
-  var strNSS = "<style type='text/css'>";
-  strNSS += "p.whs6 {margin-left:1pt; }";
-  strNSS +="</style>";
-  document.write(strNSS);
-}
-//-->
-</script>
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\nTable presentations\nAbout tables");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">About tables</h1>
-
-<p class="whs2">Functionality of <span 
- style="font-weight: bold;"><B>Post-Pro </B></span>component allows to import 
- data tables and display them in a special table viewer. <span style="font-weight: bold;"><B>Tables 
- </B></span>represent column-ranged data with <span style="font-weight: bold;"><B>units</B></span> 
- and <span style="font-weight: bold;"><B>column</B></span> and <span style="font-weight: bold;"><B>row 
- titles </B></span>(<a href="displaying_tables.htm#Table">see also</a>). </p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs3"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs4"> Tables can be <span style="font-weight: bold;"><B>rarefied</B></span> 
- - some of the cells may be empty, without any values.</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs2">In <span style="font-weight: bold;"><B>Post-Pro 
- </B></span>there are &nbsp;three 
- methods to import tables:</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs5">1. 
- &nbsp;<a href="importing_tables.htm">Importing 
- tables from *.xls, *.txt or *.tab files, which have been previously created.</a></p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5">2. 
- &nbsp;<a href="../creating_tables.htm">Creating 
- tables on the basis of <span style="font-weight: bold;"><B>Cut Lines </B></span>presentations</a></p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5">3. 
- &nbsp;&nbsp;Importing 
- tables with the help of a special Python script (not described in this 
- reference manual)</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs6">
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;}  if (parseInt(navigator.appVersion) >=2 && typeof(PickupDialog_Invoke) == 'function') PickupDialog_Invoke(e,'','Creating tables','../creating_tables.htm','Displaying tables','displaying_tables.htm','Importing tables','importing_tables.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a>
-
-
- </p>
-
-<p class="whs6">&nbsp;</p>
-
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")
-  WritePopupMenuLayer();
-//--></script><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/animating_presentations.htm b/doc/salome/gui/VISU/files/animating_presentations.htm
deleted file mode 100755 (executable)
index df79eed..0000000
+++ /dev/null
@@ -1,385 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Animating presentations</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { font-family:'Times New Roman' , serif; }
-p.whs2 { text-align:justify; }
-img_whs3 { border:none; width:30px; height:30px; float:none; border-style:none; }
-p.whs4 { font-family:'Times New Roman' , serif; }
-p.whs5 { font-family:'Times New Roman' , serif; margin-left:40px; }
-p.whs6 { font-family:'Times New Roman' , serif; margin-left:40px; font-weight:bold; }
-p.whs7 { margin-left:40px; }
-img_whs8 { border:none; width:301px; height:562px; float:none; border-style:none; }
-p.whs9 { margin-left:0px; }
-img_whs10 { border:none; width:364px; height:243px; float:none; border-style:none; }
-p.whs11 { font-family:'Times New Roman' , serif; margin-left:80px; }
-ul.whs12 { list-style:disc; }
-p.whs13 { font-family:'Times New Roman' , serif; font-style:italic; color:#ff0000; margin-left:40px; }
-p.whs14 { font-family:'Times New Roman' , serif; margin-left:0px; }
-img_whs15 { border:none; width:128px; height:18px; float:none; border-style:none; }
-img_whs16 { border:none; width:53px; height:18px; float:none; border-style:none; }
-img_whs17 { border:none; height:19px; float:none; width:69px; border-style:none; }
-img_whs18 { border:none; width:54px; height:20px; float:none; border-style:none; }
-img_whs19 { border:none; height:21px; float:none; width:68px; border-style:none; }
-p.whs20 { font-family:'Times New Roman' , serif; margin-left:0px; font-weight:bold; color:#000000; font-size:14pt; }
-p.whs21 { font-family:'Times New Roman' , serif; margin-left:0px; font-weight:normal; }
-img_whs22 { border:none; width:85px; height:97px; float:none; border-style:none; }
-p.whs23 { font-family:'Times New Roman' , serif; margin-left:0px; font-weight:bold; }
-p.whs24 { font-family:'Times New Roman' , serif; margin-left:0px; font-weight:bold; font-size:14pt; }
-p.whs25 { font-family:'Times New Roman'  , serif; margin-left:0px; background-image:url('../texture_horiz_ltbluebubbles.jpg'); }
-img_whs26 { border:none; float:none; width:36px; height:38px; border-style:none; }
-p.whs27 { font-family:'Courier New' , monospace; margin-left:0px; background-image:url('../../KERNEL/Texture_horiz_ltbluebubbles.jpg'); }
-img_whs28 { border:none; width:298px; height:209px; float:none; border-style:none; }
--->
-</style><script type="text/javascript" language="JavaScript">
-<!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
-{
-  var strNSS = "<style type='text/css'>";
-  strNSS += "p.whs9 {margin-left:1pt; }";
-  strNSS += "p.whs14 {margin-left:1pt; }";
-  strNSS += "p.whs20 {margin-left:1pt; }";
-  strNSS += "p.whs21 {margin-left:1pt; }";
-  strNSS += "p.whs23 {margin-left:1pt; }";
-  strNSS += "p.whs24 {margin-left:1pt; }";
-  strNSS += "p.whs25 {margin-left:1pt; }";
-  strNSS += "p.whs27 {margin-left:1pt; }";
-  strNSS +="</style>";
-  document.write(strNSS);
-}
-//-->
-</script>
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\n3D presentations\nField presentations\nAnimating presentations");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Animating presentations</h1>
-
-<p class="whs2"><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3">In <span style="font-weight: bold;"><B>Post-Pro 
- </B></span>module you can generate real-time animation of fields. In comparison 
- with <a href="sweeping.htm">sweeping</a>, animations are created on the 
- base of frames, displaying field presentations generated on <span style="font-weight: bold;"><B>EVERY</B></span> 
- Time Stamp of your field. So, the frame displaying the field presentation 
- created on the base of the first time stamp will begin your animation 
- and the frame displaying the field presentation created on the base of 
- the last time stamp will end it. In sweeping <span style="font-weight: bold;"><B>ONLY 
- ONE</B></span> Time Stamp is used for its generation. </p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs2">In the case of animation of several fields 
- <span style="font-weight: bold;"><B>Parallel Animation</B></span> will display 
- the animations simultaneously<span style="font-weight: bold;"><B>, </B></span>while<span 
- style="font-weight: bold;"><B> Successive Animation</B></span> will display them 
- one after another. </p>
-
-<p class="whs2">In the case of<span style="font-weight: bold;"><B> 
- Parallel Animation</B></span> you can set different kinds of presentations 
- for each of the selected fields. This animation type also requires that 
- the number of time stamps &gt; 1 and is the same for all animated fields. 
- </p>
-
-<p class="whs2">For <span style="text-align: justify; font-weight: bold;"><B>Successive 
- Aimation</B></span><span style="text-align: justify;"> the kind of presentation 
- should be the same for all selected fields, which means that it is not 
- possible to select a field from the list. &nbsp;It 
- is also necessary that the number of time stamps &gt; 0&nbsp;and the number 
- of components is the same for all animated fields. </span></p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class=TODO>To generate an animation:</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5">1. 
- &nbsp;Right-click 
- on the field in the Object Browser.</p>
-
-<p class="whs5">2. 
- &nbsp;From the 
- pop-up menu select <span style="font-weight: bold;"><B>Parallel </B></span>or<span 
- style="font-weight: bold;"><B> Successive Animation.</B></span></p>
-
-<p class="whs6">&nbsp;</p>
-
-<p class="whs4">The following dialog 
- box will appear:</p>
-
-<p class="whs4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>
-
-<p class="whs7">&nbsp;<img src="../pics/animation.png" x-maintain-ratio="TRUE" width="301px" height="562px" border="0" class="img_whs8"></p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs4"><span style="font-weight: bold;"><B>Animation</B></span> 
- dialog box is destined for management of your animation.</p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs5">3. 
- Click <span style="font-weight: bold;"><B>Setup Animation</B></span> button. 
- The following dialog box allowing to set the parameters of your animation 
- will appear.</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs9">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../pics/setupanimation.png" x-maintain-ratio="TRUE" width="364px" height="243px" border="0" class="img_whs10"></p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5">- 
- <span style="font-weight: bold;"><B>Use range of time stamps</B></span> check 
- box allows to select the range of time stamps, which will be used for 
- generating your animation.</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5">- 
- <span style="font-weight: bold;"><B>Fields: </B></span>list of fields for animation.</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5"><span 
- style="font-weight: bold;"><B>- Properties: </B></span>Here you can adjust properties 
- of each field selected from the list:</p>
-
-<p class="whs11">&nbsp;</p>
-
-<ul type="disc" class="whs12">
-       
-       <li class=kadov-p><p class="whs11">&nbsp;Select 
- the <span style="font-weight: bold;"><B>type</B></span> of field presentations, 
- which will be used as frames in animation.</p></li>
-       
-       <li class=kadov-p><p class="whs11">&nbsp;Set 
- properties of the <span style="font-weight: bold;"><B>Scalar Bar </B></span>(<a href="scalar_map_presentation.htm#Scalar Bar">see also</a>)</p></li>
-       
-       <li class=kadov-p><p class="whs11">&nbsp;Adjust 
- additional <span style="font-weight: bold;"><B>properties</B></span> of the selected 
- type of field presentation.</p></li>
-</ul>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5">4. 
- &nbsp;Click <span 
- style="font-weight: bold;"><B>OK </B></span>to validate your parameters. You 
- will return back to <span style="font-weight: bold;"><B>Animation </B></span><span>dialog 
- box</span></p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5">5. 
- &nbsp;Click <span 
- style="font-weight: bold;"><B>Generate frames </B></span>button to generate the 
- frames for your animation based on the parameters adjusted in <span style="font-weight: bold;"><B>Setup 
- Animation </B></span>dialog box.</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class=TODO>Running animations:</p>
-
-<p class="whs13">&nbsp;</p>
-
-<p class="whs14">In 
- the main <span style="font-weight: bold;"><B>Animation </B></span>dialog box 
- there are several button intended for management and running your animation:</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs14">&nbsp;&nbsp;&nbsp;&nbsp;<img src="../pics/run.jpg" x-maintain-ratio="TRUE" width="128px" height="18px" border="0" class="img_whs15"> &nbsp;&nbsp;<span style="font-weight: bold;"><B>Running 
- </B></span>your animation.</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs14">&nbsp;&nbsp;&nbsp;&nbsp;<img src="../pics/previous.jpg" x-maintain-ratio="TRUE" width="53px" height="18px" border="0" class="img_whs16"> <img src="../pics/next.jpg" x-maintain-ratio="TRUE" height="19px" width="69px" border="0" class="img_whs17"> &nbsp;&nbsp;&nbsp;<span 
- style="font-weight: bold;"><B>Previous / Next</B></span> 
- frame (time step)</p>
-
-<p class="whs14">&nbsp;</p>
-
-<p class="whs14">&nbsp;&nbsp;&nbsp;&nbsp;<img src="../pics/begining.jpg" x-maintain-ratio="TRUE" width="54px" height="20px" border="0" class="img_whs18"> <img src="../pics/end.jpg" x-maintain-ratio="TRUE" height="21px" width="68px" border="0" class="img_whs19"> &nbsp;&nbsp;&nbsp;<span 
- style="font-weight: bold;"><B>To the beginning 
- / end </B></span><span>of the animation.</span></p>
-
-<p class="whs14">&nbsp;</p>
-
-<p class="whs20">Additional options of the animation:</p>
-
-<p class="whs14">&nbsp;</p>
-
-<p class="whs14">You 
- can <span style="font-weight: bold;"><B>increase/decrease </B></span>the speed 
- of your animation by moving the <span style="font-weight: bold;"><B>Speed 
- </B></span>wheel <span style="font-weight: bold;"><B>Up/Down:</B></span></p>
-
-<p class="whs21">&nbsp;</p>
-
-<p class="whs14">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../pics/speed.jpg" x-maintain-ratio="TRUE" width="85px" height="97px" border="0" class="img_whs22"></p>
-
-<p class="whs21">&nbsp;</p>
-
-<p class="whs21"><span style="font-weight: bold;"><B>Cycled 
- animation</B></span> check box: This option allows to start a cycled animation 
- of your presentation.</p>
-
-<p class="whs21">&nbsp;</p>
-
-<p class="whs23">Use proportional timing <span style="font-weight: normal;">check 
- box: This option allows to render your animation with proportional periods 
- of time between every frame (not depending on the time stamps).</span></p>
-
-<p class="whs23">&nbsp;</p>
-
-<p class="whs23">Clean memory at each frame - <span style="font-weight: normal;">this 
- option allows to optimize the performance of the operation.</span></p>
-
-<p class="whs24">&nbsp;</p>
-
-<p class="whs24">Saving Animations:</p>
-
-<p class="whs23">&nbsp;</p>
-
-<p class="whs21"><span style="font-weight: bold;"><B>Save 
- pictures to directory </B></span>check box: This option allows to save all 
- the frames composing the animation into a definite directory, which can 
- be specified in <span style="font-weight: bold;"><B>Path </B></span>field.</p>
-
-<p class="whs21">&nbsp;</p>
-
-<p class="whs21"><span style="font-weight: bold;"><B>Save 
- Animation to AVI file</B></span> check box This option allows to save the 
- animation into a definite .avi file, which can be specified in <span style="font-weight: bold;"><B>Path 
- </B></span>field.</p>
-
-<p class="whs21">&nbsp;</p>
-
-<p class="whs25"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs26"> <span style="font-weight: bold;"><B>Save animation to AVI file</B></span> 
- works only if there is <span style="font-weight: bold;"><B>jpeg2yuv</B></span> 
- utility installed on your computer. If this third-party product is missing, 
- the check-box will not be selectable. This utility is a part of &nbsp;<span 
- style="font-weight: bold;"><B>mjpegtool</B></span> 
- package, which can be downloaded from <a class=moz-txt-link-freetext
-                                                                                       href="http://mjpeg.sourceforge.net/">http://mjpeg.sourceforge.net/</a>. 
- &nbsp;Run &quot;<span 
- style="font-family: 'Lucida Console', monospace;">which jpeg2yuv&quot;</span> 
- to check whether this tool has been installed and the path to it was properly 
- added to your PATH variable. If not, you need to activate <span style="font-weight: bold;"><B>mjpegtools 
- </B></span>indicating its location in the variable PATH. The syntax of the 
- command should be as follows: <span style="font-weight: bold;"><B>&nbsp;</B></span></p>
-
-<p class="whs27"><span 
- style="font-family: 'Lucida Console', monospace;">export PATH=${INSTALL_ROOT}/mjpegtools-1.8.0/bin:${PATH}.</span></p>
-
-<p class="whs21">&nbsp;</p>
-
-<p class="whs21"><span style="font-weight: bold;"><B>Save 
- Animation</B></span> - saves changes made in the published animation. If you 
- have already published a study and press <span style="font-weight: bold;"><B>Publish 
- to study</B></span> again you get another animation in the Object Browser. 
- </p>
-
-<p class="whs21">&nbsp;</p>
-
-<p class="whs21"><span style="font-weight: bold;"><B>Publish 
- to Study</B></span> - saves your animation in the study and presents it in 
- the Object Browser </p>
-
-<p class="whs11">&nbsp;</p>
-
-<p class="whs14">The 
- following picture shows an animation of deformation of an object:</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5"><img src="../pics/animatdef.jpg" x-maintain-ratio="TRUE" width="298px" height="209px" border="0" class="img_whs28"></p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs14">
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;}  if (parseInt(navigator.appVersion) >=2 && typeof(PickupDialog_Invoke) == 'function') PickupDialog_Invoke(e,'','Creating field presentations','creating_field_presentations.htm','Sweeping','sweeping.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a>
-
-
- </p>
-
-<p class="whs4">&nbsp;</p>
-
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")
-  WritePopupMenuLayer();
-//--></script><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/changing_visualization_parameters_of_the_presenetation.htm b/doc/salome/gui/VISU/files/changing_visualization_parameters_of_the_presenetation.htm
deleted file mode 100755 (executable)
index 5df43c6..0000000
+++ /dev/null
@@ -1,333 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Setting presentation view parameters</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { font-family:'Times New Roman' , serif; }
-p.whs2 { margin-left:40px; }
-img_whs3 { border:none; width:169px; height:335px; border-style:none; }
-p.whs4 { margin-left:0px; background-image:url('../texture_horiz_ltbluebubbles.jpg'); margin-top:0px; margin-bottom:0px; }
-img_whs5 { border:none; width:36px; height:38px; float:none; border-style:none; }
-p.whs6 { margin-top:0px; margin-bottom:0px; }
-ul.whs7 { list-style:disc; }
-p.whs8 { font-weight:bold; }
-p.whs9 { margin-left:48px; font-weight:normal; }
-table.whs10 { x-cell-content-align:top; width:50%; border-spacing:0px; }
-col.whs11 { width:33.334%; }
-tr.whs12 { x-cell-content-align:top; }
-td.whs13 { width:33.334%; padding-right:10px; padding-left:10px; border-bottom-style:none; border-right-style:none; border-left-style:none; border-top-style:none; }
-td.whs14 { width:33.334%; padding-right:10px; padding-left:10px; border-bottom-style:none; border-right-style:none; border-top-style:none; }
-td.whs15 { width:33.334%; padding-right:10px; padding-left:10px; border-bottom-style:none; border-top-style:none; border-right-style:none; }
-td.whs16 { width:33.334%; padding-right:10px; padding-left:10px; border-bottom-style:none; border-right-style:none; border-left-style:none; }
-img_whs17 { border:none; width:204px; height:267px; border-style:none; }
-td.whs18 { width:33.334%; padding-right:10px; padding-left:10px; border-bottom-style:none; border-right-style:none; }
-img_whs19 { border:none; width:208px; height:266px; border-style:none; }
-img_whs20 { border:none; width:204px; height:266px; border-style:none; }
-td.whs21 { width:33.334%; padding-right:10px; padding-left:10px; border-right-style:none; border-left-style:none; border-bottom-style:none; }
-img_whs22 { border:none; width:208px; height:275px; border-style:none; }
-td.whs23 { width:33.334%; padding-right:10px; padding-left:10px; border-right-style:none; border-bottom-style:none; }
-img_whs24 { border:none; width:209px; height:274px; border-style:none; }
-img_whs25 { border:none; width:202px; height:256px; border-style:none; }
-p.whs26 { margin-left:0px; }
-p.whs27 { font-weight:bold; margin-left:48px; }
-img_whs28 { border:none; width:354px; height:177px; float:none; border-style:none; }
-p.whs29 { font-weight:bold; margin-left:88px; }
-p.whs30 { font-weight:normal; }
-img_whs31 { border:none; width:30px; height:30px; float:none; border-style:none; }
-img_whs32 { border:none; width:302px; height:247px; float:none; border-style:none; }
-img_whs33 { border:none; width:305px; height:247px; float:none; border-style:none; }
--->
-</style><script type="text/javascript" language="JavaScript">
-<!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
-{
-  var strNSS = "<style type='text/css'>";
-  strNSS += "p.whs4 {margin-left:1pt;margin-top:1pt;margin-bottom:1pt; }";
-  strNSS += "p.whs6 {margin-top:1pt;margin-bottom:1pt; }";
-  strNSS += "p.whs26 {margin-left:1pt; }";
-  strNSS +="</style>";
-  document.write(strNSS);
-}
-//-->
-</script>
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\n3D presentations\nViewing 3D presentations\nViewing 3D Presentations");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Viewing 3D presentations. 
- </h1>
-
-<p>Each &nbsp;newly 
- created presentation is displayed in the <span style="font-weight: bold;"><B>VTK 
- 3D Viewer</B></span>. <span style="font-weight: bold;"><B>VTK 3D Viewer</B></span> 
- is detailly described in the documentation on<span style="font-weight: bold;"><B> 
- GUI module.</B></span> </p>
-
-<p>To display an existing presentation, right-click on it in the Object 
- Browser and select <span style="font-weight: bold;"><B>Display</B></span>. &nbsp;</p>
-
-<p>&nbsp;</p>
-
-<p>Right mouse-click on the Presentation gives access to the following 
- options:</p>
-
-<p>&nbsp;</p>
-
-<p class="whs2"><img src="../image23.gif" width="169px" height="335px" border="0" class="img_whs3"></p>
-
-<p>&nbsp;</p>
-
-<p class="whs4"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs5"> All parameters are context-sensitive: 
- NOT all types of visualization and NOT all properties can be set for a 
- certain 3D presentation. &nbsp;&nbsp;&nbsp;<span 
- style="margin-left: 40px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></p>
-
-<p class="whs6">&nbsp;</p>
-
-<ul type="disc" class="whs7">
-       
-       <li class=kadov-p><p class="whs8">Erase all - <span style="font-weight: normal;">allows 
- to hide all objects from the viewer.</span> &nbsp;</p></li>
-       
-       <li class=kadov-p><p class="whs8">Edit - <span style="font-weight: normal;">allows 
- to return to the menu where the presentation has been created and change 
- its parameters.</span></p></li>
-       
-       <li class=kadov-p><p><span style="font-weight: bold;"><B>Rename</B></span> 
- - allows to rename the presentation.</p></li>
-       
-       <li class=kadov-p><p><span style="font-weight: bold;"><B>Copy</B></span> - 
- allows to create a copy of the presentation in the same subfolder (time 
- stamp) in the Object Browser.</p></li>
-       
-       <li class=kadov-p><p><span style="font-weight: bold;"><B>Erase</B></span> 
- - allows to hide the selected presentation from the viewer. </p></li>
-       
-       <li class=kadov-p><p><span style="font-weight: bold;"><B>Display Only</B></span> 
- - allows to display only the selected presentation, hiding all other from 
- the viewer.</p></li>
-       
-       <li class=kadov-p><p class="whs8">Representation - <span 
- style="font-weight: normal;">allows to switch among the available representation 
- types.</span></p></li>
-</ul>
-
-<p class="whs9">&nbsp;</p>
-
-<table x-use-null-cells cellspacing="0" width="50%" class="whs10">
-<col class="whs11">
-<col class="whs11">
-<col class="whs11">
-
-<tr valign="top" class="whs12">
-<td colspan="1" rowspan="1" width="33.334%" class="whs13">
-<p class="whs8">Points</td>
-<td colspan="1" rowspan="1" width="33.334%" class="whs14">
-<p class="whs8">Surface</td>
-<td colspan="1" rowspan="1" width="33.334%" class="whs15">
-<p class="whs8">Wireframe</td></tr>
-
-<tr valign="top" class="whs12">
-<td colspan="1" rowspan="1" width="33.334%" class="whs16">
-<p><img src="../image20.gif" width="204px" height="267px" border="0" class="img_whs17"></td>
-<td colspan="1" rowspan="1" width="33.334%" class="whs18">
-<p><img src="../image5.jpg" width="208px" height="266px" border="0" class="img_whs19"></td>
-<td colspan="1" rowspan="1" width="33.334%" class="whs18">
-<p><img src="../image2.jpg" width="204px" height="266px" border="0" class="img_whs20"></td></tr>
-
-<tr valign="top" class="whs12">
-<td width="33.334%" class="whs16">
-<p><span style="font-weight: bold;"><B>Insideframe</B></span> (displays the wires 
- lying within the object)</td>
-<td width="33.334%" class="whs18">
-<p class="whs8">Shrink</td>
-<td width="33.334%" class="whs18">
-<p class="whs8">Shading on</td></tr>
-
-<tr valign="top" class="whs12">
-<td width="33.334%" class="whs21">
-<p><img src="../image3.jpg" width="208px" height="275px" border="0" class="img_whs22"></td>
-<td width="33.334%" class="whs23">
-<p><img src="../image4.jpg" width="209px" height="274px" border="0" class="img_whs24"></td>
-<td width="33.334%" class="whs18">
-<p><img src="../image1.jpg" width="202px" height="256px" border="0" class="img_whs25"></td></tr>
-</table>
-
-<p class="whs26">&nbsp;</p>
-
-<ul type="disc" class="whs7">
-       
-       <li class=kadov-p><p class="whs8">Properties </p></li>
-       
-       <li class=kadov-p><p class="whs27">Opacity 
- - <span style="font-weight: normal;">allows to set the value of opacity 
- of the presentation between 0 (transparent) and 100 (opaque).</span> </p></li>
-</ul>
-
-<p class="whs27">&nbsp;</p>
-
-<p class="whs27"><img src="../pics/neo-transparency.png" x-maintain-ratio="TRUE" width="354px" height="177px" border="0" class="img_whs28"></p>
-
-<p class="whs29">&nbsp;</p>
-
-<ul type="disc" class="whs7">
-       
-       <li class=kadov-p><p class="whs27">Line 
- Width - <span style="font-weight: normal;">allows to set the width of 
- lines representing edges of the presentation between 1 (thin) and 100 
- (thick).</span> </p></li>
-</ul>
-
-<ul type="disc" class="whs7">
-       
-       <li class=kadov-p><p class="whs8"><a href="scaling_presentations.htm">Translate 
- Presentation</a> - <span style="font-weight: normal;">allows to translate 
- the presentation along coordinate axes.</span></p></li>
-       
-       <li class=kadov-p><p class="whs8"><a href="../clipping.htm">Clipping 
- Planes</a> - <span style="font-weight: normal;">allows to create cross-section 
- views of presentations.</span></p></li>
-       
-       <li class=kadov-p><p class="whs8"><a href="sweeping.htm">Sweep</a> 
- - <span style="font-weight: normal;">allows to display pseudo-animation 
- of the presentation.</span></p></li>
-       
-       <li class=kadov-p><p class="whs8"><a href="getting_elements_attributes.htm">Selection 
- Info</a> - <span style="font-weight: normal;">provides information about 
- the attributes of elements displayed in the viewer.</span></p></li>
-       
-       <li class=kadov-p><p class="whs8">Dump view - <span style="font-weight: normal;">exports 
- an object from the viewer in bmp, png, jpg or jpeg image format. </span></p></li>
-       
-       <li class=kadov-p><p class="whs30"><span style="font-weight: bold;"><B>Change 
- Background</B></span> - allows to change the properties of the background.</p></li>
-</ul>
-
-<p class="whs30">&nbsp;</p>
-
-<p class="whs30"><span style="font-weight: bold;"><B><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs31"> </B></span>When you create several presentations of the same 
- object, you may wish to see them simultaneously, &nbsp;which 
- might be impossible, because they all are located at the same place. To 
- solve this problem, right-click in the viewer and select <span style="font-weight: bold;"><B>Arrange 
- Actors</B></span> in the pop-up menu. &nbsp;&nbsp;&nbsp;</p>
-
-<p class="whs30">&nbsp;</p>
-
-<p class="whs2"><img src="../pics/arrangeactors.png" x-maintain-ratio="TRUE" width="302px" height="247px" border="0" class="img_whs32"></p>
-
-<p class="whs30">&nbsp;</p>
-
-<p class="whs30">In <span style="font-weight: bold;"><B>Auto</B></span> 
- mode you specify along which <span style="font-weight: bold;"><B>Axis</B></span> 
- and at which <span style="font-weight: bold;"><B>Relative Distance</B></span> 
- the presentations should be lined up.</p>
-
-<p class="whs30">&nbsp;</p>
-
-<p class="whs2"><img src="../pics/arrangeactors1.png" x-maintain-ratio="TRUE" width="305px" height="247px" border="0" class="img_whs33"></p>
-
-<p class="whs30">&nbsp;</p>
-
-<p class="whs30">In <span style="font-weight: bold;"><B>Manual</B></span> 
- mode you set the coordinates for each presentation separately.</p>
-
-<p class="whs30">&nbsp;</p>
-
-<p class="whs30">&nbsp;</p>
-
-<p class="whs30"><span style="font-weight: bold;"><B><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs31"> </B></span>Displaying several presentations at the same time 
- may cause superposition of their scalar bars. To avoid this, check <span 
- style="font-weight: bold;"><B>Arrange Scalar Bars</B></span> radio button &nbsp;in 
- the <span style="font-weight: bold;"><B>Preferences - &gt; Post-Pro - &gt; 
- Scalar Bar. </B></span>A separate scalar bar will be displayed for each presentation. 
- </p>
-
-<p class="whs30">Alternatively you may wish to merge the 
- scalar bars to have a common scalar bar for all presentations. To do this, 
- select several presentations or fields in the object browser, right-click 
- and from the pop-up menu select &nbsp;<span 
- style="font-weight: bold;"><B>Merge Scalar Range</B></span>. 
- </p>
-
-<p class="whs30">To restore separate bars and scales for 
- each module select <span style="font-weight: bold;"><B>Use Field Range</B></span> 
- from the same menu.</p>
-
-<p class="whs30">&nbsp;</p>
-
-<p class="whs30">&nbsp;</p>
-
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/creating_curves.htm b/doc/salome/gui/VISU/files/creating_curves.htm
deleted file mode 100755 (executable)
index b75af45..0000000
+++ /dev/null
@@ -1,231 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Creating curves</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { font-family:'Times New Roman' , serif; }
-p.whs2 { font-family:'Times New Roman' , serif; }
-img_whs3 { border:none; width:30px; height:30px; float:none; border-style:none; }
-p.whs4 { font-family:'Times New Roman' , serif; margin-left:40px; color:#000000; font-style:normal; }
-p.whs5 { font-family:'Times New Roman' , serif; font-style:italic; color:#ff0000; margin-left:40px; }
-img_whs6 { border:none; width:705px; height:209px; float:none; }
-p.whs7 { margin-left:36px; }
-ul.whs8 { list-style:disc; }
-p.whs9 { font-family:'Times New Roman' , serif; margin-left:40px; }
-p.whs10 { font-weight:bold; margin-left:40px; }
-p.whs11 { font-weight:bold; margin-left:38px; }
-p.whs12 { font-family:'Times New Roman'  , serif; margin-left:0px; background-image:url('../texture_horiz_ltbluebubbles.jpg'); }
-img_whs13 { border:none; float:none; width:36px; height:38px; border-style:none; }
-p.whs14 { font-family:'Times New Roman' , serif; margin-left:0px; font-weight:normal; }
-p.whs15 { margin-left:80px; }
-p.whs16 { font-family:'Times New Roman' , serif; margin-left:40px; font-weight:bold; }
-p.whs17 { font-family:'Times New Roman' , serif; margin-left:0px; }
--->
-</style><script type="text/javascript" language="JavaScript">
-<!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
-{
-  var strNSS = "<style type='text/css'>";
-  strNSS += "p.whs12 {margin-left:1pt; }";
-  strNSS += "p.whs14 {margin-left:1pt; }";
-  strNSS += "p.whs17 {margin-left:1pt; }";
-  strNSS +="</style>";
-  document.write(strNSS);
-}
-//-->
-</script>
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\nXY plots\nCreating curves");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Creating curves</h1>
-
-<p class="whs2"><span style="font-weight: bold;"><B><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3">Post-Pro </B></span>functionality allows to create <span style="font-weight: bold;"><B>&nbsp;Curve 
- lines &nbsp;</B></span>on 
- the basis of the data taken from tables, and to display these curves in 
- form of 2D plot using <span style="font-weight: bold;"><B>Plot2d viewer</B></span>.</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class=TODO>To create curves:</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs4"><span style="font-family: 'Times New Roman', serif;
-                                                                                               color: #000000;
-                                                                                               font-style: normal;"><font color=black >1. 
- &nbsp;Right-click 
- on the required table in the Object Browser </font></span></p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs4">2. &nbsp;From 
- the pop-up menu choose <span style="font-weight: bold;"><B>Create Curves 
- </B></span>option. </p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs4">3. &nbsp;The 
- following dialog box will appear:</p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs4"><img src="../pics/createcurves.png" x-maintain-ratio="TRUE" width="705px" height="209px" border="0" class="img_whs6"></p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs7">This dialog box has the form of a table; 
- each row of this table represents one column of values of the imported 
- data table. </p>
-
-<p class="whs7">To construct curve lines, you should choose 
- at least two columns of the data table by checking them in the <span style="font-weight: bold;"><B>Axis</B></span> 
- part of the &nbsp;dialog 
- box:</p>
-
-<ul type="disc" class="whs8">
-       
-       <li class=kadov-p><p class="whs9"><span 
- style="font-weight: bold;"><B>H</B></span> (horisontal) - the values of this 
- column will correspond to X-coordinates of the curve.</p></li>
-       
-       <li class=kadov-p><p class="whs9"><span 
- style="font-weight: bold;"><B>V</B></span> (vertical) - the values of this column 
- will correspond to Y-coordinates of the curve.</p></li>
-</ul>
-
-<p class="whs7"><br>
-The column <span style="font-weight: bold;"><B>Assigned</B></span> allows to represent 
- the values assigned to the points of the curve (possible for V-rows only). 
- Any row, even coinciding with the current or empty (no values assigned), 
- can be represented. All values are indicated with tool tips over the corresponding 
- curve points in the Plot2d viewer <br>
-<br>
-To define the &nbsp;<span style="font-weight: bold;"><B>Attributes 
- </B></span>of your curve remove the checkmark from <span style="font-weight: bold;"><B>Auto 
- assign </B></span>&nbsp;(if 
- it is checked, default attributes are taken) and select<span style="margin-left: 40px;">:</span></p>
-
-<ul type="disc" class="whs8">
-       
-       <li class=kadov-p><p class="whs9"><span 
- style="font-weight: bold;"><B>Line type </B></span>(None, Solid, Dash, Dot, Dash 
- - Dot, Dash - Dot - Dot),</p></li>
-       
-       <li class=kadov-p><p class="whs10">Line 
- width, </p></li>
-       
-       <li class=kadov-p><p class="whs11">Marker 
- type <span style="font-weight: normal;">(</span><span style="font-weight: normal;">Circle, 
- Rectangle, Diamond, Rightward, Leftward, Downward &amp; Upward Triangle, 
- Cross or Diagonal Cross)</span><span style="font-weight: normal;">,</span></p></li>
-       
-       <li class=kadov-p><p class="whs11">Color 
- <span style="font-weight: normal;">(using the standard </span>Select Color<span 
- style="font-weight: normal;"> menu).</span></p></li>
-</ul>
-
-<p>&nbsp;</p>
-
-<p class="whs12"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs13"> From this dialog box you can create several curves for the 
- columns of your data table with the same units. <span style="font-weight: bold;"><B>Post-Pro</B></span> 
- allows to display at once up to 200 curves. </p>
-
-<p class="whs14">&nbsp;</p>
-
-<p class="whs9">4. 
- &nbsp;Click <span 
- style="font-weight: bold;"><B>OK </B></span>to create your curves with the given 
- parameters. <span style="font-weight: bold;"><B>Post-Pro</B></span> will automatically 
- create your curve or curves in the structure of the study under two SALOME 
- objects:</p>
-
-<p class="whs15">- &nbsp;SALOME 
- table object,</p>
-
-<p class="whs15">- &nbsp;<span 
- style="font-weight: bold;"><B>Plot2DView </B></span>object: 
- SALOME container of curve lines which will be created automatically. </p>
-
-<p class="whs9">&nbsp;</p>
-
-<p class="whs16">&nbsp;</p>
-
-<p class="whs9">&nbsp;</p>
-
-<p class="whs17">&nbsp;</p>
-
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/creating_field_presentations.htm b/doc/salome/gui/VISU/files/creating_field_presentations.htm
deleted file mode 100755 (executable)
index bd34dde..0000000
+++ /dev/null
@@ -1,171 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Creating field presentations</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { font-family:'Times New Roman' , serif; }
-p.whs2 { font-family:'Times New Roman' , serif; font-style:italic; color:#ff0000; margin-left:40px; }
-p.whs3 { font-family:'Times New Roman' , serif; margin-left:40px; font-style:normal; color:#000000; }
-img_whs4 { border:none; width:198px; height:267px; float:none; border-style:none; }
-p.whs5 { font-family:'Times New Roman' , serif; margin-left:0px; }
-p.whs6 { font-family:'Times New Roman'  , serif; margin-left:0px; background-image:url('../texture_horiz_ltbluebubbles.jpg'); }
-img_whs7 { border:none; float:none; width:36px; height:38px; border-style:none; }
-img_whs8 { border:none; width:111px; height:171px; float:none; border-style:none; }
-p.whs9 { font-family:'Times New Roman' , serif; margin-left:40px; }
-p.whs10 { font-family:'Times New Roman' , serif; margin-left:0px; font-weight:normal; }
-p.whs11 { font-family:'Times New Roman' , serif; margin-left:0px; font-weight:bold; }
--->
-</style><script type="text/javascript" language="JavaScript">
-<!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
-{
-  var strNSS = "<style type='text/css'>";
-  strNSS += "p.whs5 {margin-left:1pt; }";
-  strNSS += "p.whs6 {margin-left:1pt; }";
-  strNSS += "p.whs10 {margin-left:1pt; }";
-  strNSS += "p.whs11 {margin-left:1pt; }";
-  strNSS +="</style>";
-  document.write(strNSS);
-}
-//-->
-</script>
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\n3D presentations\nField presentations\nCreating field presentations");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Creating field presentations</h1>
-
-<p class=TODO>To create a field presentation (<a href="about_structure_of_med_object.htm#Fields">see 
- also</a>):</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs3">Right-click on one of the time stamps of this 
- field in the Object browser and choose the required type of presentation 
- from the following pop-up menu:</p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../pics/image20.png" x-maintain-ratio="TRUE" width="198px" height="267px" border="0" class="img_whs4"></p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs6"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs7"> In <span style="font-weight: bold;"><B>Post-Pro </B></span>fields 
- may contain both scalar and vector values, applied to the cells of the 
- submesh, as well as <span style="font-weight: bold;"><B>ONLY </B></span>scalar 
- values. It is not possible to make a vector presentation for fields containing 
- only scalar values. </p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5">For 
- fields containing only scalar values, you can create the following types 
- of presentation:</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../pics/image21.png" x-maintain-ratio="TRUE" width="111px" height="171px" border="0" class="img_whs8"> &nbsp;</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs9">- 
- Click on one of the time stamps of this field in the Object browser and 
- select the required type of presentation from the &nbsp;<span 
- style="font-weight: bold;"><B>Visualization 
- </B></span>submenu of the<span style="font-weight: bold;"> <B></B></span>main menu 
- or from the <span style="font-weight: bold;"><B>Visualization Toolbar</B></span></p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs10">The new field presentation will be located 
- in the time stamp subfolder in the Object Browser and displayed </p>
-
-<p class="whs11">&nbsp;</p>
-
-<p class="whs10">&nbsp;</p>
-
-<p class="whs10">
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;}  if (parseInt(navigator.appVersion) >=2 && typeof(PickupDialog_Invoke) == 'function') PickupDialog_Invoke(e,'','About structure of MED object','about_structure_of_med_object.htm','Cut Lines presentation','cut_lines_presentation.htm','Cut Planes presentation','cut_lines_resentation.htm','Deformed Shape presentation','deformed_shape_presentation.htm','Iso Surfaces presentation','iso_surfaces_presentation.htm','Stream Lines presentation','stream_lines_presentation.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a>
-
-
- </p>
-
-<p class="whs3">&nbsp;</p>
-
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")
-  WritePopupMenuLayer();
-//--></script><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/creating_presentations.htm b/doc/salome/gui/VISU/files/creating_presentations.htm
deleted file mode 100755 (executable)
index 7e5c95e..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Creating presentations</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { font-family:'Times New Roman' , serif; }
-p.whs2 { font-family:'Times New Roman' , serif; }
-p.whs3 { margin-left:40px; }
-p.whs4 { margin-left:0px; }
-img_whs5 { border:none; width:388px; height:385px; }
--->
-</style><script type="text/javascript" language="JavaScript">
-<!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
-{
-  var strNSS = "<style type='text/css'>";
-  strNSS += "p.whs4 {margin-left:1pt; }";
-  strNSS +="</style>";
-  document.write(strNSS);
-}
-//-->
-</script>
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\n3D presentations\nPresentation of a submesh");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Presentation of a submesh</h1>
-
-<p class=TODO>To create a presentation of a submesh: </p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs3">In the Object Browser right-click on a submesh 
- of an imported MED object and from the pop-up menu choose <span style="font-weight: bold;"><B>Create 
- Presentation:</B></span></p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This 
- presentation will be displayed in the viewer:</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../image11.gif" width="388px" height="385px" border="0" class="img_whs5"></p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs2">
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;}  if (parseInt(navigator.appVersion) >=2 && typeof(PickupDialog_Invoke) == 'function') PickupDialog_Invoke(e,'','About structure of MED object','about_structure_of_med_object.htm','Introduction','introduction.htm','Setting presentation view parameters','changing_visualization_parameters_of_the_presenetation.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a>
-
-
- </p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs2">&nbsp;</p>
-
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")
-  WritePopupMenuLayer();
-//--></script><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/creating_xy_plot.htm b/doc/salome/gui/VISU/files/creating_xy_plot.htm
deleted file mode 100755 (executable)
index ae6f02f..0000000
+++ /dev/null
@@ -1,207 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Creating XY plot</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { font-family:'Times New Roman' , serif; }
-p.whs2 { font-family:'Times New Roman' , serif; font-style:italic; color:#ff0000; }
-p.whs3 { font-family:'Times New Roman' , serif; margin-left:40px; font-style:normal; color:#000000; }
-p.whs4 { font-family:'Times New Roman' , serif; font-style:italic; color:#ff0000; margin-left:40px; }
-p.whs5 { font-family:'Times New Roman' , serif; margin-left:40px; font-style:normal; color:#000000; font-weight:normal; }
-p.whs6 { font-family:'Times New Roman' , serif; margin-left:40px; font-style:normal; color:#000000; font-weight:bold; }
-img_whs7 { border:none; width:444px; height:310px; float:none; border-style:none; }
-p.whs8 { font-weight:bold; margin-left:0px; }
-p.whs9 { margin-left:40px; }
-p.whs10 { margin-left:0px; }
-img_whs11 { border:none; width:20px; height:20px; border-style:none; }
-p.whs12 { font-weight:bold; margin-left:40px; }
-p.whs13 { margin-left:40px; font-weight:normal; }
-img_whs14 { border:none; width:590px; height:310px; }
--->
-</style><script type="text/javascript" language="JavaScript">
-<!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
-{
-  var strNSS = "<style type='text/css'>";
-  strNSS += "p.whs8 {margin-left:1pt; }";
-  strNSS += "p.whs10 {margin-left:1pt; }";
-  strNSS +="</style>";
-  document.write(strNSS);
-}
-//-->
-</script>
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\nXY plots\nCreating XY plots");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Creating XY plots</h1>
-
-<p class=TODO>To create a XY plot based on one definite curve:</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs3">1. &nbsp;Select 
- Plot2d viewer: from the main menu choose <span style="font-weight: bold;"><B>Window 
- &gt; New Window &gt; Plot2d View</B></span></p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs5">2. In the Object Browser right-click 
- on this curve line and from the pop-up menu select <span style="font-weight: bold;"><B>Display 
- </B></span><span>item.</span></p>
-
-<p class=TODO>&nbsp;</p>
-
-<p class=TODO>To create a XY plot based on several curves:</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs3">1. &nbsp;Select 
- Plot2d viewer: from the main menu choose <span style="font-weight: bold;"><B>Window 
- &gt; New Window &gt; Plot2d View</B></span></p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs6"><span style="font-weight: normal;">2. In 
- the Object Browser right-click on the </span>Post-Pro <span style="font-weight: normal;">object 
- and from the pop-up menu select </span>Create Plot2D View. </p>
-
-<p class="whs6">&nbsp;</p>
-
-<p class="whs5">3. Right-click on the name of this container 
- in the Object Browser and select <span style="font-weight: bold;"><B>Edit 
- </B></span>item. The following dialog box will appear:</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5"><img src="../pics/editplot2dpresentation.png" x-maintain-ratio="TRUE" width="444px" height="310px" border="0" class="img_whs7"></p>
-
-<p class="whs6">&nbsp;</p>
-
-<p class="whs6">&nbsp;</p>
-
-<p class="whs8">&nbsp;<span 
- style="font-weight: normal;">This box contains 
- two windows:</span></p>
-
-<p class="whs8">&nbsp;</p>
-
-<p class="whs9">- Left window displays a list of curve lines, 
- which have been created in the study.</p>
-
-<p class="whs9">&nbsp;</p>
-
-<p class="whs9">- Right window displays a list of curve lines 
- contained in this particular container. These curves will used for creation 
- of the XY plot.</p>
-
-<p class="whs9">&nbsp;</p>
-
-<p class="whs10">To move a definite curve line from the study 
- into the container, select it in the left window of this dialog box and 
- click <img src="../image15.gif" width="20px" height="20px" border="0" class="img_whs11"> button. &nbsp;</p>
-
-<p class="whs6">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>
-
-<p class="whs8"><span style="font-weight: normal;">To 
- move a definite curve line from the container back into the study, select 
- it in the right window of this dialog box and click <img src="../image16.gif" width="20px" height="20px" border="0" class="img_whs11"> button.</span> 
- </p>
-
-<p class="whs8">&nbsp;</p>
-
-<p class="whs8"><span style="font-weight: normal;">After 
- having chosen the curve lines, which will compose your XY plot, click 
- </span>OK <span style="font-weight: normal;">button to quit this dialog 
- box. In the Object Browser the references to the selected curve lines 
- will be created under your container:</span></p>
-
-<p class="whs8">&nbsp;</p>
-
-<p class="whs12"><span style="font-weight: normal;">4. 
- Right-click on the name of the container in the Object Browser and select 
- </span>Display <span style="font-weight: normal;">button. A XY plot consisting 
- of the previously selected curve lines, will be displayed in the viewer:</span></p>
-
-<p class="whs12">&nbsp;</p>
-
-<p class="whs13"><img src="../image12.gif" width="590px" height="310px" border="0" class="img_whs14"></p>
-
-<p class="whs6">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>
-
-<p class="whs6">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>
-
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/cut_lines_presentation.htm b/doc/salome/gui/VISU/files/cut_lines_presentation.htm
deleted file mode 100755 (executable)
index 73fb379..0000000
+++ /dev/null
@@ -1,276 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Cut Lines presentation</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { font-family:'Times New Roman' , serif; font-size:24pt; }
-p.whs2 { font-family:'Times New Roman' , serif; font-size:12pt; }
-img_whs3 { border:none; width:30px; height:30px; float:none; border-style:none; }
-ol.whs4 { list-style:decimal; }
-p.whs5 { font-family:'Times New Roman' , serif; font-size:12pt; margin-left:40px; }
-p.whs6 { font-family:'Times New Roman' , serif; font-style:italic; color:#ff0000; margin-left:40px; }
-p.whs7 { font-family:'Times New Roman' , serif; margin-left:40px; font-style:normal; color:#000000; }
-img_whs8 { border:none; width:28px; height:26px; float:none; border-style:none; }
-img_whs9 { border:none; width:378px; height:666px; float:none; }
-p.whs10 { margin-left:40px; }
-p.whs11 { margin-left:0px; }
-p.whs12 { font-family:'Times New Roman' , serif; margin-left:0px; }
-ul.whs13 { list-style:disc; }
-p.whs14 { margin-left:36px; }
-p.whs15 { font-family:'Times New Roman' , serif; margin-left:0px; font-weight:normal; }
-p.whs16 { margin-left:0px; font-family:'Times New Roman' , serif; }
-img_whs17 { border:none; width:574px; height:525px; float:none; border-style:none; }
-p.whs18 { margin-left:0px; font-family:'Times New Roman'  , serif; background-image:url('../texture_horiz_ltbluebubbles.jpg'); }
-img_whs19 { border:none; width:35px; height:37px; float:none; border-style:none; }
--->
-</style><script type="text/javascript" language="JavaScript">
-<!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
-{
-  var strNSS = "<style type='text/css'>";
-  strNSS += "p.whs11 {margin-left:1pt; }";
-  strNSS += "p.whs12 {margin-left:1pt; }";
-  strNSS += "p.whs15 {margin-left:1pt; }";
-  strNSS += "p.whs16 {margin-left:1pt; }";
-  strNSS += "p.whs18 {margin-left:1pt; }";
-  strNSS +="</style>";
-  document.write(strNSS);
-}
-//-->
-</script>
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\n3D presentations\nField presentations\nCut Lines presentation");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Cut 
- Lines presentation</h1>
-
-<p class="whs2"><span 
- style="font-weight: bold;"><B><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3">Cut Lines</B></span> is a type of 
- presentation which displays colored cells with applied scalar values on 
- the mesh where lines are placed. </p>
-
-<p class="whs2">The 
- procedure of construction of <span style="font-weight: bold;"><B>Cut Lines 
- </B></span>presentation reuses the algorithm of creation <span style="font-weight: bold;"><B>Cut 
- Planes</B></span> presentation and consists of two steps:</p>
-
-<ol type="1" class="whs4">
-       
-       <li style="/*begin!kadov{{*/ font-family: 'Times New Roman', serif; font-size: 12pt; /*}}end!kadov*/ "
-               class=kadov-p><p class="whs5">&nbsp;From 
- <span style="font-weight: bold;"><B>Cut Planes</B></span> presentation one plane 
- is taken and it is used as base plane for construction of cut lines. </p></li>
-       
-       <li style="/*begin!kadov{{*/ font-family: 'Times New Roman', serif; font-size: 12pt; /*}}end!kadov*/ "
-               class=kadov-p><p class="whs5">This plane is cut by 
- a regular array of planes. The result of this operation is a regular array 
- of lines in space, &nbsp;belonging 
- to the same plane and having the same orientation. They are located inside 
- or on the mesh. </p></li>
-</ol>
-
-<p class="whs2">&nbsp;</p>
-
-<p class=TODO
-       style="color: #000000;"><span class=expandtext
-                                                                       style="color: #000000;"><font color=black >To create a 
- Cut Lines presentation:</font></span></p>
-
-<p class="whs6">&nbsp;</p>
-
-<p class="whs7">- Right-click on one of the time stamps of 
- the field in the Object browser and from the pop-up menu choose <span 
- style="font-weight: bold;"><B>Cut Lines, </B></span>or</p>
-
-<p class="whs7">&nbsp;</p>
-
-<p class="whs7">- Click on one of the time stamps of the field 
- in the Object browser and select from the main menu <span style="font-weight: bold;"><B>Visualization 
- &gt; Cut Lines</B></span>, or click <img src="../pics/cutlinesicn.jpg" x-maintain-ratio="TRUE" width="28px" height="26px" border="0" class="img_whs8"> icon<span style="font-weight: bold;"> 
- <B></B></span>in the <span style="font-weight: bold;"><B>Visualization Toolbar.</B></span></p>
-
-<p class="whs7">&nbsp;</p>
-
-<p class="whs7"><img src="../pics/cutlines.png" x-maintain-ratio="TRUE" width="378px" height="666px" border="0" class="img_whs9"></p>
-
-<p class="whs10">&nbsp;</p>
-
-<p class="whs11"><span style="font-weight: bold;"><B>Plane of 
- lines: </B></span>this tab of the dialog box contains the parameters of the 
- base plane, on which the cut lines will be located.</p>
-
-<p class="whs12">&nbsp;</p>
-
-<ul type="disc" class="whs13">
-       
-       <li class=kadov-p><p class="whs14"><span style="font-weight: bold;"><B>Orientation 
- </B></span>check boxes allow to set the orientation of cut planes in 3D space. 
- You should select two of three axis (XY, YZ, or ZX) in which your planes 
- will be located in 3D space</p></li>
-       
-       <li class=kadov-p><p class="whs14"><span style="font-weight: bold;"><B>Rotations 
- </B></span>of the planes in 3d space around the axes of the selected orientation. 
- (The angle of rotation is set in degrees.) </p></li>
-       
-       <li class=kadov-p><p class="whs14"><span style="font-weight: bold;"><B>Base 
- plane position: </B></span>position of the base plane. This value can be set 
- by default or entered manually. &nbsp;</p></li>
-       
-       <li class=kadov-p><p class="whs14"><span style="font-weight: bold;"><B>Displacement 
- </B></span>of the plane. This parameter defines position of the base plane 
- in 3d space.</p></li>
-       
-       <li class=kadov-p><p class="whs14"><span style="font-weight: bold;"><B>Show 
- preview </B></span>check box allows to edit the parameters of the presentation 
- and simultaneously observe the preview of this presentation in the viewer.</p></li>
-       
-       <li class=kadov-p><p class="whs14"><span style="font-weight: bold;"><B>Invert 
- all curves</B></span> check box allows to invert the resulting curves. </p></li>
-       
-       <li class=kadov-p><p class="whs14"><span style="font-weight: bold;"><B>Use 
- absolute length</B></span> check box allows to see the real length of the 
- line, instead of [0,1] interval. </p></li>
-       
-       <li class=kadov-p><p class="whs14"><a name=Table></a> 
- <span style="font-weight: bold;"><B>Generate Data Table: </B></span>If this check 
- box is marked, <span style="font-weight: bold;"><B>Post Pro</B></span> will automatically 
- generate a data table on the basis of your Cut Lines presentation. This 
- table will be created in the structure of the study. &nbsp;<span 
- style="font-weight: bold;"><B>&nbsp;</B></span></p></li>
-       
-       <li class=kadov-p><p class="whs14"><span style="font-weight: bold;"><B>Generate 
- Curves: </B></span>If this check box is marked, <span style="font-weight: bold;"><B>Post 
- Pro</B></span> &nbsp;will 
- automatically generate curve lines on the basis of values taken from the 
- generated data table. These curves will be created in the structure of 
- the study and can be visualized in a XY plot. &nbsp;</p></li>
-</ul>
-
-<p class="whs10">See more about table presentations and curve 
- lines <a href="about_tables.htm">here.</a></p>
-
-<p class="whs12"><span 
- style="font-weight: bold;"><B>&nbsp;</B></span></p>
-
-<p class="whs15"><span style="font-weight: bold;"><B>Cut 
- Planes: </B></span>this tab of the dialog box contains the parameters of cut 
- planes, which will be used for construction of the cut lines.</p>
-
-<p class="whs15">&nbsp;</p>
-
-<p class="whs11"><span style="font-weight: bold;"><B>Scalar Bar 
- </B></span>tab allows to define the parameters of the scalar bar displayed 
- with this presentation (<a href="scalar_map_presentation.htm#Scalar Bar">see 
- also</a>).</p>
-
-<p class="whs11">&nbsp;</p>
-
-<p class="whs16">After 
- you have finished with setting these parameters, click <span style="font-weight: bold;"><B>OK. 
- </B></span>Your presentation with scalar bar will be immediately displayed 
- in the viewer: </p>
-
-<p class="whs10">&nbsp;&nbsp;&nbsp;&nbsp;<img src="../pics/cutlinesprsnt.png" x-maintain-ratio="TRUE" width="574px" height="525px" border="0" class="img_whs17"></p>
-
-<p class="whs16">&nbsp;</p>
-
-<p class="whs18"><img src="../tip1.gif" x-maintain-ratio="TRUE" width="35px" height="37px" border="0" class="img_whs19"> From <span style="font-weight: bold;"><B>Cut Lines</B></span> presentation 
- you can create a <span style="font-weight: bold;"><B>data table. </B></span>This 
- table will consist of the field scalar values located on each cut line 
- of the constructed presentation (<a href="../creating_tables.htm">see 
- also: Creating tables from Cut Lines presentations</a>). After that your 
- data table can be used for construction of a 2d plot of curves based on 
- the scalar values from the table (see also: <a href="creating_curves.htm">Creating 
- curves</a> and <a href="creating_xy_plot.htm">Creating XY plots</a>). 
- &nbsp;&nbsp;</p>
-
-<p class="whs16">&nbsp;</p>
-
-<p class="whs16">&nbsp;</p>
-
-<p class="whs16">
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;}  if (parseInt(navigator.appVersion) >=2 && typeof(PickupDialog_Invoke) == 'function') PickupDialog_Invoke(e,'','Creating curves','creating_curves.htm','Creating field presentations','creating_field_presentations.htm','Creating tables','../creating_tables.htm','Creating XY plot','creating_xy_plot.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a>
-
-
- </p>
-
-<p class="whs16">&nbsp;</p>
-
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")
-  WritePopupMenuLayer();
-//--></script><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/cut_lines_resentation.htm b/doc/salome/gui/VISU/files/cut_lines_resentation.htm
deleted file mode 100755 (executable)
index c42da1b..0000000
+++ /dev/null
@@ -1,204 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Cut Planes presentation</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { font-family:'Times New Roman' , serif; }
-img_whs2 { border:none; float:none; width:30px; height:30px; border-style:none; }
-p.whs3 { font-family:'Times New Roman' , serif; }
-p.whs4 { font-family:'Times New Roman' , serif; font-style:italic; color:#ff0000; margin-left:40px; }
-p.whs5 { font-family:'Times New Roman' , serif; margin-left:40px; font-style:normal; color:#000000; }
-img_whs6 { border:none; width:26px; height:25px; float:none; border-style:none; }
-p.whs7 { margin-left:80px; }
-img_whs8 { border:none; width:386px; height:597px; float:none; }
-ul.whs9 { list-style:disc; }
-p.whs10 { margin-left:24px; }
-p.whs11 { font-family:'Times New Roman' , serif; margin-left:0px; font-weight:normal; }
-p.whs12 { margin-left:60px; }
-p.whs13 { margin-left:40px; }
-img_whs14 { border:none; border-style:none; width:661px; height:531px; float:none; }
-p.whs15 { font-family:'Times New Roman' , serif; font-weight:bold; margin-left:0px; }
--->
-</style><script type="text/javascript" language="JavaScript">
-<!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
-{
-  var strNSS = "<style type='text/css'>";
-  strNSS += "p.whs11 {margin-left:1pt; }";
-  strNSS += "p.whs15 {margin-left:1pt; }";
-  strNSS +="</style>";
-  document.write(strNSS);
-}
-//-->
-</script>
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\n3D presentations\nField presentations\nCut Planes presentation");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Cut Planes presentation</h1>
-
-<p><span style="font-weight: bold;"><B><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs2">Cut Planes </B></span>is a 
- type of field presentation, when the given shape is cut by a definite 
- number of surfaces. These surfaces are colored according the values applied 
- to the cells of the mesh. </p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class=TODO
-       style="font-family: 'Arial Black', sans-serif;">To create a Cut Planes 
- &nbsp;presentation:</p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs5">- Right-click on one of the time stamps of 
- the field in the Object browser and from the pop-up menu choose <span 
- style="font-weight: bold;"><B>Cut Planes, </B></span>or</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5">- Click on one of the time stamps of the field 
- in the Object browser and select from the main menu <span style="font-weight: bold;"><B>Visualization 
- &gt; Cut Planes</B></span>, or click <img src="../pics/cutlinesicon.jpg" x-maintain-ratio="TRUE" width="26px" height="25px" border="0" class="img_whs6"> icon<span style="font-weight: bold;"> 
- <B></B></span>in the <span style="font-weight: bold;"><B>Visualization Toolbar.</B></span></p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs7"><img src="../pics/cutplanes.png" x-maintain-ratio="TRUE" width="386px" height="597px" border="0" class="img_whs8"></p>
-
-<p class="whs7">&nbsp;</p>
-
-<ul type="disc" class="whs9">
-       
-       <li class=kadov-p><p class="whs10"><span style="font-weight: bold;"><B>Cut 
- Planes </B></span>tab allows to set additional parameters of your <span style="font-weight: bold;"><B>Cut 
- Planes </B></span>presentation:</p></li>
-</ul>
-
-<p class="whs11">&nbsp;</p>
-
-<ul type="disc" class="whs9">
-       
-       <li class=kadov-p><p class="whs12"><span style="font-weight: bold;"><B>Orientation 
- </B></span>check boxes allow to set the orientation of cut planes in 3D space. 
- You should select two of three axis (<span style="font-weight: bold;"><B>XY</B></span>, 
- <span style="font-weight: bold;"><B>YZ</B></span>, or <span style="font-weight: bold;"><B>ZX</B></span>) 
- in which your planes will be located in 3D space</p></li>
-       
-       <li class=kadov-p><p class="whs12"><span style="font-weight: bold;"><B>Rotations 
- </B></span>of the planes in 3d space around the axes of the selected orientation. 
- (The angle of rotation is set in degrees.) </p></li>
-       
-       <li class=kadov-p><p class="whs12"><span style="font-weight: bold;"><B>Number 
- of planes</B></span>, which will form your presentation.</p></li>
-       
-       <li class=kadov-p><p class="whs12"><span style="font-weight: bold;"><B>Position 
- </B></span>of each of the planes relative to other planes, which form your 
- presentation. This value can be set by default, entered manually. &nbsp;</p></li>
-       
-       <li class=kadov-p><p class="whs12"><span style="font-weight: bold;"><B>Displacement 
- </B></span>of the planes. This parameter defines the displacement of the planes 
- into one or another side. </p></li>
-       
-       <li class=kadov-p><p class="whs12"><span style="font-weight: bold;"><B>Show 
- preview </B></span>check box allows to edit the parameters of the presentation 
- and simultaneously observe the preview of this presentation in the viewer.</p></li>
-</ul>
-
-<p class="whs11">&nbsp;</p>
-
-<p class="whs11">After you have finished with setting 
- these parameters, click <span style="font-weight: bold;"><B>OK. </B></span>Your 
- presentation with scalar bar will be immediately displayed in the viewer: 
- </p>
-
-<p class="whs11">&nbsp;</p>
-
-<p class="whs13">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../pics/cutplpresent.png" x-maintain-ratio="TRUE" width="661px" height="531px" border="0" class="img_whs14"></p>
-
-<p class="whs15">&nbsp;</p>
-
-<p class="whs11">
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;}  if (parseInt(navigator.appVersion) >=2 && typeof(PickupDialog_Invoke) == 'function') PickupDialog_Invoke(e,'','Creating field presentations','creating_field_presentations.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a>
-
-
- </p>
-
-<p class="whs11">&nbsp;</p>
-
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")
-  WritePopupMenuLayer();
-//--></script><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/deformed_shape_presentation.htm b/doc/salome/gui/VISU/files/deformed_shape_presentation.htm
deleted file mode 100755 (executable)
index 41a5a9d..0000000
+++ /dev/null
@@ -1,193 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Deformed Shape presentation</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { font-family:'Times New Roman' , serif; }
-p.whs2 { font-weight:bold; }
-img_whs3 { border:none; float:none; width:30px; height:30px; border-style:none; }
-p.whs4 { font-family:'Times New Roman' , serif; font-weight:bold; }
-p.whs5 { font-family:'Times New Roman' , serif; font-style:italic; color:#ff0000; margin-left:40px; }
-p.whs6 { font-family:'Times New Roman' , serif; margin-left:40px; font-style:normal; color:#000000; }
-img_whs7 { border:none; width:26px; height:26px; float:none; border-style:none; }
-img_whs8 { border:none; width:348px; height:533px; float:none; border-style:none; }
-ul.whs9 { list-style:disc; }
-p.whs10 { margin-left:36px; }
-p.whs11 { margin-left:84px; }
-p.whs12 { font-family:'Times New Roman' , serif; }
-p.whs13 { font-family:'Times New Roman' , serif; margin-left:0px; font-weight:normal; }
-p.whs14 { margin-left:40px; }
-img_whs15 { border:none; width:451px; height:299px; float:none; border-style:none; }
--->
-</style><script type="text/javascript" language="JavaScript">
-<!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
-{
-  var strNSS = "<style type='text/css'>";
-  strNSS += "p.whs13 {margin-left:1pt; }";
-  strNSS +="</style>";
-  document.write(strNSS);
-}
-//-->
-</script>
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\n3D presentations\nField presentations\nDeformed Shape presentation");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Deformed Shape presentation</h1>
-
-<p class="whs2"><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3">Deformed Shape <span style="font-weight: normal;">is 
- a type of field presentation when vector values corresponding to the cells 
- of the mesh are visualized by shifting of these cells. </span></p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class=TODO>To create a Deformed Shape &nbsp;presentation:</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs6">- Right-click on one of the time stamps of 
- the field in the Object browser and from the pop-up menu choose <span 
- style="font-weight: bold;"><B>Deformed Shape, </B></span>or</p>
-
-<p class="whs6">&nbsp;</p>
-
-<p class="whs6">- Click on one of the time stamps of the field 
- in the Object browser and select from the main menu <span style="font-weight: bold;"><B>Visualization 
- &gt; Deformed Shape</B></span>, or click <img src="../pics/defshapeicon.jpg" x-maintain-ratio="TRUE" width="26px" height="26px" border="0" class="img_whs7"> icon<span style="font-weight: bold;"> 
- <B></B></span>in the <span style="font-weight: bold;"><B>Visualization Toolbar.</B></span></p>
-
-<p class="whs6">&nbsp;</p>
-
-<p class="whs6"><img src="../pics/deformedshape.png" x-maintain-ratio="TRUE" width="348px" height="533px" border="0" class="img_whs8"></p>
-
-<p class="whs6">&nbsp;</p>
-
-<ul type="disc" class="whs9">
-       
-       <li class=kadov-p><p class="whs10"><span style="font-weight: bold;"><B>Deformed 
- Shape</B></span> tab allows to set additional parameters of your <span style="font-weight: bold;"><B>Deformed 
- Shape </B></span>presentation:</p></li>
-</ul>
-
-<ul type="disc" class="whs9">
-       
-       <li class=kadov-p><p class="whs11"><span style="font-weight: bold;"><B>Scale 
- Factor:</B></span> visualization scaling of all vector values applied to the 
- cells of the mesh. </p></li>
-       
-       <li class=kadov-p><p class="whs11"><span style="font-weight: bold;"><B>Magnitude 
- coloring</B></span> check box: this option allows to color your presentation 
- according the <a href="scalar_map_presentation.htm#Scalar range">scalar 
- range</a> defined in Scalar Bar properties or to display it using only 
- one color (this color is taken by default). <span style="font-weight: bold;"><B>&nbsp;</B></span></p></li>
-</ul>
-
-<p class="whs12">&nbsp;</p>
-
-<ul type="disc" class="whs9">
-       
-       <li class=kadov-p><p class="whs10"><span style="font-weight: bold;"><B>Scalar 
- Bar </B></span>tab allows to define the parameters of the scalar bar displayed 
- with this presentation (<a href="scalar_map_presentation.htm#Scalar Bar">see 
- also</a>).</p></li>
-</ul>
-
-<p class="whs13">&nbsp;</p>
-
-<p class="whs12">After you have finished 
- with setting these parameters, click <span style="font-weight: bold;"><B>OK. 
- </B></span>Your presentation with scalar bar will be immediately displayed 
- in the viewer: </p>
-
-<p class="whs12">&nbsp;</p>
-
-<p class="whs14">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../pics/deformedshapesn.png" x-maintain-ratio="TRUE" width="451px" height="299px" border="0" class="img_whs15"></p>
-
-<p class="whs12">&nbsp;</p>
-
-<p class="whs12">
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;}  if (parseInt(navigator.appVersion) >=2 && typeof(PickupDialog_Invoke) == 'function') PickupDialog_Invoke(e,'','Creating field presentations','creating_field_presentations.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a>
-
-
- </p>
-
-<p class="whs12">&nbsp;</p>
-
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")
-  WritePopupMenuLayer();
-//--></script><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/displaying_hiding_presentations.htm b/doc/salome/gui/VISU/files/displaying_hiding_presentations.htm
deleted file mode 100755 (executable)
index 959acd8..0000000
+++ /dev/null
@@ -1,251 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Displaying/Hiding presentations</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { font-family:'Times New Roman' , serif; }
-p.whs2 { margin-left:40px; }
-img_whs3 { border:none; width:154px; height:311px; float:none; }
-p.whs4 { font-family:'Times New Roman' , serif; }
-p.whs5 { font-family:'Times New Roman' , serif; margin-left:40px; }
-p.whs6 { color:#ff0000; font-family:'Times New Roman' , serif; }
-img_whs7 { border:none; width:26px; height:26px; border-style:none; }
-p.whs8 { font-family:'Times New Roman' , serif; margin-left:0px; font-style:italic; color:#ff0000; }
-p.whs9 { font-family:'Times New Roman' , serif; margin-left:0px; }
-p.whs10 { margin-left:0px; font-family:'Times New Roman' , serif; }
-img_whs11 { border:none; width:344px; height:150px; float:none; border-style:none; }
--->
-</style><script type="text/javascript" language="JavaScript">
-<!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
-{
-  var strNSS = "<style type='text/css'>";
-  strNSS += "p.whs8 {margin-left:1pt; }";
-  strNSS += "p.whs9 {margin-left:1pt; }";
-  strNSS += "p.whs10 {margin-left:1pt; }";
-  strNSS +="</style>";
-  document.write(strNSS);
-}
-//-->
-</script>
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Operations with presentations</h1>
-
-<p class="whs2"><img src="../pics/image39.gif" x-maintain-ratio="TRUE" width="154px" height="311px" border="0" class="img_whs3"></p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class=TODO>To display a presentation: </p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs2">Right-click on it in the Object Browser and 
- from the pop-up menu choose <span style="font-weight: bold;"><B>Display</B></span>. 
- </p>
-
-<p class="whs4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>
-
-<p class=TODO>To display several presentations:</p>
-
-<p class=TODO>&nbsp;</p>
-
-<p class="whs2">Hold down <span style="font-weight: bold;"><B>Ctrl</B></span> 
- button and select in the Object Browser the presentations for displaying. 
- Right-click with the mouse and from the pop-up menu select <span style="font-weight: bold;"><B>Display</B></span>. 
- </p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class=TODO><span style="font-style: italic;"><I>To display only one presentation:</I></span> 
- </p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs2">&nbsp;Choose 
- <span style="font-weight: bold;"><B>Display only </B></span>option. The other 
- presentations will be immediately &nbsp;hidden.</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class=TODO>To hide this presentation: </p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs2">From the same pop-up menu choose <span style="font-weight: bold;"><B>Erase</B></span>. 
- (This option will automatically appear in this pop-up menu if this presentation 
- have been displayed)</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class=TODO><span>To hide all presentations</span><span>:</span><span> 
- </span></p>
-
-<p class="whs6">&nbsp;</p>
-
-<p class="whs2">From the main menu choose <span style="font-weight: bold;"><B>Representation 
- &gt; Erase All, </B></span>click button &nbsp;<img src="../image22.gif" width="26px" height="26px" border="0" class="img_whs7"> in the <span style="font-weight: bold;"><B>Representation toolbar</B></span> 
- or right-click in the 3D Viewer and select <span style="font-weight: bold;"><B>Erase 
- All</B></span> in the pop-up menu. &nbsp;&nbsp;</p>
-
-<p class="whs2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class=TODO>To delete an existing presentation:</p>
-
-<p class=TODO>&nbsp;</p>
-
-<p class="whs2">Right-click on it in the Object Browser and 
- from the pop-up menu choose <span style="font-weight: bold;"><B>Delete</B></span>. 
- </p>
-
-<p>&nbsp;</p>
-
-<h4>Operations accessible only for field presentations.</h4>
-
-<p class="whs8">&nbsp;</p>
-
-<p class=TODO>To copy a field presentation:</p>
-
-<p class="whs9">&nbsp;</p>
-
-<p class="whs5">1. 
- Right-click on this presentation in the Object Browser or in the viewer.</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5">2. 
- From the pop-up menu select <span style="font-weight: bold;"><B>Same as </B></span>option.</p>
-
-<p class="whs9">&nbsp;</p>
-
-<p class="whs9">Your 
- field presentation will duplicated in the same subfolder (time stamp) 
- in the Object Browser.</p>
-
-<p class="whs10">&nbsp;</p>
-
-<p class="whs9">&nbsp;</p>
-
-<p class=TODO>To set additional parameters of field presentations: </p>
-
-<p class="whs9">&nbsp;</p>
-
-<p class="whs5">1. 
- Right-click on this presentation in the Object Browser or in the viewer.</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5">2. 
- From the pop-up menu select <span style="font-weight: bold;"><B>Edit &nbsp;</B></span>option.</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs9">This 
- option allows to set or modify additional parameters of field presentations 
- after its creation. </p>
-
-<p class="whs9">&nbsp;</p>
-
-<p class=TODO>To rename a field presentation</p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs5"><span 
- style="font-family: 'Times New Roman', serif;">1. Right-click on this 
- presentation in the Object Browser or in the viewer.</span></p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs2">2. From the pop-up menu select <span style="font-weight: bold;"><B>Rename 
- </B></span>option, the following dialog box will appear:</p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../pics/rename.png" x-maintain-ratio="TRUE" width="344px" height="150px" border="0" class="img_whs11"> </p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs4">In the field <span style="font-weight: bold;"><B>Name 
- </B></span>enter your personal name of the presentation and click <span style="font-weight: bold;"><B>OK 
- </B></span>button to confirm your choice. The name of the presentation will 
- change in the Object Browser.</p>
-
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/displaying_tables.htm b/doc/salome/gui/VISU/files/displaying_tables.htm
deleted file mode 100755 (executable)
index d47dff4..0000000
+++ /dev/null
@@ -1,134 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Displaying tables</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { font-family:'Times New Roman' , serif; }
-p.whs2 { font-family:'Times New Roman' , serif; }
-p.whs3 { font-family:'Times New Roman' , serif; margin-left:40px; color:#000000; font-style:normal; }
-p.whs4 { font-family:'Times New Roman' , serif; font-style:italic; color:#ff0000; margin-left:40px; }
-img_whs5 { border:none; border-style:none; width:238px; height:429px; float:none; }
-p.whs6 { font-family:'Times New Roman' , serif; margin-left:0px; }
--->
-</style><script type="text/javascript" language="JavaScript">
-<!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
-{
-  var strNSS = "<style type='text/css'>";
-  strNSS += "p.whs6 {margin-left:1pt; }";
-  strNSS +="</style>";
-  document.write(strNSS);
-}
-//-->
-</script>
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\nTable presentations\nDisplaying tables");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Displaying tables</h1>
-
-<p class=TODO>To display a table:</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs3">1. &nbsp;Right-click 
- on the required table in the Object Browser </p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs3">2. &nbsp;From 
- the pop-up menu choose <span style="font-weight: bold;"><B>Show Table </B></span>option. 
- Your table will be displayed in a separate <span style="font-weight: bold;"><B>View 
- Table </B></span>window:</p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs3">&nbsp;<img src="../pics/viewtable.png" x-maintain-ratio="TRUE" width="238px" height="429px" border="0" class="img_whs5"></p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs6">
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;}  if (parseInt(navigator.appVersion) >=2 && typeof(PickupDialog_Invoke) == 'function') PickupDialog_Invoke(e,'','About tables','about_tables.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a>
-
-
- </p>
-
-<p class="whs6">&nbsp;</p>
-
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")
-  WritePopupMenuLayer();
-//--></script><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/getting_elements_attributes.htm b/doc/salome/gui/VISU/files/getting_elements_attributes.htm
deleted file mode 100755 (executable)
index d45edd7..0000000
+++ /dev/null
@@ -1,224 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Getting elements attributes</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { font-family:'Times New Roman' , serif; }
-p.whs2 { font-style:italic; color:#ff0000; margin-left:48px; }
-img_whs3 { border:none; width:294px; height:192px; float:none; border-style:none; }
-p.whs4 { margin-left:40px; font-style:normal; font-family:'Times New Roman' , serif; color:#000000; }
-h4.whs5 { margin-left:48px; }
-img_whs6 { border:none; width:547px; height:364px; float:none; }
-ul.whs7 { list-style:disc; }
-p.whs8 { margin-left:38px; }
-p.whs9 { font-style:italic; margin-left:94px; }
-h4.whs10 { font-weight:normal; margin-left:48px; }
-img_whs11 { border:none; width:553px; height:387px; float:none; }
-p.whs12 { margin-left:40px; }
-p.whs13 { margin-left:40px; font-family:'Times New Roman' , serif; font-style:normal; }
-p.whs14 { margin-left:0px; font-family:'Times New Roman' , serif; font-weight:bold; }
-p.whs15 { font-weight:bold; margin-left:48px; }
-img_whs16 { border:none; width:427px; height:364px; float:none; border-style:none; }
-p.whs17 { font-weight:bold; margin-left:0px; }
-p.whs18 { margin-left:40px; font-style:italic; font-family:'Times New Roman' , serif; }
-p.whs19 { background-image:url('../texture_horiz_ltbluebubbles.jpg'); }
-img_whs20 { border:none; width:36px; height:38px; float:none; border-style:none; }
--->
-</style><script type="text/javascript" language="JavaScript">
-<!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
-{
-  var strNSS = "<style type='text/css'>";
-  strNSS += "p.whs14 {margin-left:1pt; }";
-  strNSS += "p.whs17 {margin-left:1pt; }";
-  strNSS +="</style>";
-  document.write(strNSS);
-}
-//-->
-</script>
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\n3D presentations\nViewing 3D presentations\nSelection Info");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Selection Info </h1>
-
-<p class=TODO>To view the attributes of elements (cells, points, meshes) 
- displayed in the viewer:</p>
-
-<p class=TODO>&nbsp;</p>
-
-<p class="whs2"><img src="../pics/cellsel.jpg" x-maintain-ratio="TRUE" width="294px" height="192px" border="0" class="img_whs3"></p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs4">In the main menu choose &nbsp;<span 
- style="font-weight: bold;"><B>Selection &gt; 
- Selection info..., &nbsp;</B></span>choose 
- the necessary type of elements (<span style="font-weight: bold;"><B>Point, 
- Cell,</B></span> or<span style="font-weight: bold;"><B> Actor</B></span>) in the 
- dialog box and click on the element of the required type in the viewer. 
- The chosen element will be highlighted and its attributes will be displayed 
- in this dialog box: </p>
-
-<h4 class="whs5"><img src="../pics/dataonelements1.png" x-maintain-ratio="TRUE" width="547px" height="364px" border="0" class="img_whs6"></h4>
-
-<p><span style="font-weight: normal;">You can get the following information 
- about</span> Points<span style="font-weight: normal;">:</span></p>
-
-<ul type="disc" class="whs7">
-       
-       <li class=kadov-p><p class="whs8">Mesh name</p></li>
-       
-       <li class=kadov-p><p class="whs8">Field name</p></li>
-       
-       <li class=kadov-p><p class="whs8">ID Number of the point 
- </p></li>
-       
-       <li class=kadov-p><p class="whs8">Scalar value applied 
- to the point (if any)</p></li>
-       
-       <li class=kadov-p><p class="whs8">Vector value applied 
- to the point (if any)</p></li>
-       
-       <li class=kadov-p><p class="whs8">Coordinates of the 
- point in 3d space</p></li>
-       
-       <li class=kadov-p><p class="whs8">Indexes (i,j,k) of 
- the point (for structured meshes only)</p></li>
-</ul>
-
-<p class="whs9">&nbsp;</p>
-
-<h4 class="whs10"><img src="../pics/dataonelements2.png" x-maintain-ratio="TRUE" width="553px" height="387px" border="0" class="img_whs11"></h4>
-
-<p><span style="font-weight: normal;">The following information about</span> 
- Cells <span style="font-weight: normal;">is available:</span></p>
-
-<ul type="disc" class="whs7">
-       
-       <li class=kadov-p><p class="whs12">Mesh name</p></li>
-       
-       <li class=kadov-p><p class="whs12">Field name</p></li>
-       
-       <li class=kadov-p><p class="whs13">ID Number of the cell</p></li>
-       
-       <li class=kadov-p><p class="whs13">Scalar value applied 
- to the cell (if any)</p></li>
-       
-       <li class=kadov-p><p class="whs13">Vector value applied 
- to the cell (if any)</p></li>
-       
-       <li class=kadov-p><p class="whs13">Attributes of the 
- points forming this cell (in table layout)</p></li>
-</ul>
-
-<p class="whs14">&nbsp;</p>
-
-<p class="whs15"><img src="../pics/dataonelements3.png" x-maintain-ratio="TRUE" width="427px" height="364px" border="0" class="img_whs16"></p>
-
-<p class="whs14">&nbsp;</p>
-
-<p class="whs17"><span style="font-weight: normal;">An</span> 
- Actor (<span style="font-weight: normal;">any 3D object (presentation 
- of a submesh, field presentation) displayed in the viewer</span>) <span 
- style="font-weight: normal;">possesses the following characteristics:</span></p>
-
-<ul type="disc" class="whs7">
-       
-       <li class=kadov-p><p class="whs12"><span style="font-style: italic;"><I>Mesh 
- name</I></span></p></li>
-       
-       <li class=kadov-p><p class="whs12"><span style="font-style: italic;"><I>Field 
- name</I></span></p></li>
-       
-       <li class=kadov-p><p class="whs18">Coordinates 
- of the object in 3d space</p></li>
-       
-       <li class=kadov-p><p class="whs18">Size 
- of the object (expressed as the extent along the coordinates)</p></li>
-</ul>
-
-<p class="whs18">&nbsp;</p>
-
-<p class="whs19"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs20">Using this dialog box, you can examine the attributes of a 
- definite point or cell, selected by its ID number. For that, you should 
- only enter an ID number of a definite point or cell in the <span style="font-weight: bold;"><B>ID 
- </B></span>field, the attributes of this point or cell will be immediately 
- displayed.</p>
-
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/getting_started.htm b/doc/salome/gui/VISU/files/getting_started.htm
deleted file mode 100755 (executable)
index e462ea6..0000000
+++ /dev/null
@@ -1,150 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Getting started</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-img_whs1 { border:none; float:none; width:30px; height:30px; border-style:none; }
-h4.whs2 { margin-left:40px; }
-img_whs3 { border:none; float:none; width:13px; height:13px; border-style:none; }
-img_whs4 { border:none; float:none; width:29px; height:29px; border-style:none; }
-p.whs5 { margin-left:40px; }
-p.whs6 { color:#0000ff; margin-left:40px; }
--->
-</style><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script><script type="text/javascript" language="JavaScript1.2" src="../ehlpdhtm.js" x-save-method="compute-relative" name="EHELP_DHTM"></script>
-<script type="text/javascript"
-               language=JavaScript1.2>
-<!-- 
-if( typeof( kadovInitEffects ) != 'function' ) kadovInitEffects = new Function();if( typeof( kadovInitTrigger ) != 'function' ) kadovInitTrigger = new Function();if( typeof( kadovFilePopupInit ) != 'function' ) kadovFilePopupInit = new Function();if( typeof( kadovTextPopupInit ) != 'function' ) kadovTextPopupInit = new Function();
- //-->
-</script>
-
-
-<h1>Usage overview</h1>
-
-<h4><span style="font-weight: normal;"><img src="../q_blue.jpg" x-save-file="TRUE" x-save-method="compute-relative" width="30px" height="30px" border="0" class="img_whs1"> </span>HOW TO:</h4>
-
-<h4 class="whs2"><img src="../bgbaby.gif" x-maintain-ratio="TRUE" x-save-file="TRUE" x-save-method="compute-relative" width="13px" height="13px" border="0" class="img_whs3"> Create a new study and launch 
- Post-Pro module &nbsp;<img src="../more.jpg" x-maintain-ratio="TRUE" width="29px" height="29px" border="0" class="img_whs4"><script type="text/javascript"
-                                                                                       language=JavaScript1.2><!--
-kadovFilePopupInit('a1');
-//--></script> 
- </h4>
-
-<p class="whs5">&nbsp;</p>
-
-<h4 class="whs2"><img src="../bgbaby.gif" x-maintain-ratio="TRUE" x-save-file="TRUE" x-save-method="compute-relative" width="13px" height="13px" border="0" class="img_whs3"> Import a mesh from a MED 
- file &nbsp;&nbsp;<img src="../more.jpg" x-maintain-ratio="TRUE" width="29px" height="29px" border="0" class="img_whs4"><script type="text/javascript"
-                                                                                       language=JavaScript1.2><!--
-kadovFilePopupInit('a2');
-//--></script></h4>
-
-<p class="whs5">&nbsp;</p>
-
-<h4 class="whs2"><img src="../bgbaby.gif" x-maintain-ratio="TRUE" x-save-file="TRUE" x-save-method="compute-relative" width="13px" height="13px" border="0" class="img_whs3"> Create a presentation of 
- a submesh and set view parameters &nbsp;<img src="../more.jpg" x-maintain-ratio="TRUE" width="29px" height="29px" border="0" class="img_whs4"><script type="text/javascript"
-                                                                                       language=JavaScript1.2><!--
-kadovFilePopupInit('a3');
-//--></script></h4>
-
-<p class="whs6">&nbsp;</p>
-
-<h4 class="whs2"><img src="../bgbaby.gif" x-maintain-ratio="TRUE" x-save-file="TRUE" x-save-method="compute-relative" width="13px" height="13px" border="0" class="img_whs3"> Create field presentations 
- and use sweeping &nbsp;<img src="../more.jpg" x-maintain-ratio="TRUE" width="29px" height="29px" border="0" class="img_whs4"><script type="text/javascript"
-                                                                                       language=JavaScript1.2><!--
-kadovFilePopupInit('a4');
-//--></script></h4>
-
-<p class="whs5">&nbsp;</p>
-
-<h4 class="whs2"><img src="../bgbaby.gif" x-maintain-ratio="TRUE" x-save-file="TRUE" x-save-method="compute-relative" width="13px" height="13px" border="0" class="img_whs3"> Animate fields &nbsp;<img src="../more.jpg" x-maintain-ratio="TRUE" width="29px" height="29px" border="0" class="img_whs4"><script type="text/javascript"
-                                                                                       language=JavaScript1.2><!--
-kadovFilePopupInit('a5');
-//--></script></h4>
-
-<p class="whs5">&nbsp;</p>
-
-<h4 class="whs2">&nbsp;<img src="../bgbaby.gif" x-maintain-ratio="TRUE" x-save-file="TRUE" x-save-method="compute-relative" width="13px" height="13px" border="0" class="img_whs3"> Import a table from a file and create a 2d plot based on 
- the data from this table <img src="../more.jpg" x-maintain-ratio="TRUE" width="29px" height="29px" border="0" class="img_whs4"><script 
- type="text/javascript"
-       language=JavaScript1.2><!--
-kadovFilePopupInit('a6');
-//--></script></h4>
-
-<h4 class="whs2">&nbsp;</h4>
-
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/importing_med_objects.htm b/doc/salome/gui/VISU/files/importing_med_objects.htm
deleted file mode 100755 (executable)
index 6415628..0000000
+++ /dev/null
@@ -1,202 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Importing MED objects</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { font-family:'Times New Roman' , serif; }
-p.whs2 { font-family:'Times New Roman' , serif; }
-p.whs3 { font-family:'Times New Roman' , serif; margin-left:40px; }
-p.whs4 { margin-left:40px; }
-img_whs5 { border:none; width:453px; height:256px; float:none; border-style:none; }
-p.whs6 { margin-left:120px; }
-img_whs7 { border:none; width:294px; height:486px; float:none; border-style:none; }
-p.whs8 { font-family:'Times New Roman' , serif; margin-left:40px; font-weight:bold; }
-ul.whs9 { list-style:disc; }
--->
-</style><script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\nImporting MED files");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Importing MED file</h1>
-
-<p class=TODO>To import a MED file:</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs3">From 
- the <span style="font-weight: bold;"><B>File </B></span>menu choose <span style="font-weight: bold;"><B>Import 
- &nbsp;- &gt; 
- MED File </B></span>or right-click on the <span style="font-weight: bold;"><B>Post-Pro</B></span> 
- object in the Object Browser and select <span style="font-weight: bold;"><B>MED 
- File </B></span>option.<span style="font-weight: bold;"> <B></B></span>After it you 
- will see a standard dialog box allowing to search for and choose *.med 
- &nbsp;files:</p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../pics/importfromfile.png" x-maintain-ratio="TRUE" width="453px" height="256px" border="0" class="img_whs5"> &nbsp;</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs3">To 
- confirm your choice click <span style="font-weight: bold;"><B>Open</B></span>.</p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs3">If 
- the option <span style="font-weight: bold;"><B>Use Build Progress</B></span> 
- is checked in <span style="font-weight: bold;"><B>Post-Pro Sweep and MED 
- Import Preferences</B></span>, you will be able to choose how the object containing 
- in the file will be built, otherwise the structure of the imported MED 
- object will be immediately displayed in the Object Browser and it will 
- be loaded and built as set in the <span style="font-weight: bold;"><B>Preferences</B></span>.</p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs6"><img src="../pics/buildprogress.png" x-maintain-ratio="TRUE" width="294px" height="486px" border="0" class="img_whs7"></p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs8">Settings</p>
-
-<ul type="disc" class="whs9">
-       
-       <li class=kadov-p><p class="whs3"><span 
- style="font-weight: bold;"><B>Build all</B></span> - when this option is checked, 
- the application loads all data necessary for processing of the object.</p></li>
-       
-       <li class=kadov-p><p class="whs3"><span 
- style="font-weight: bold;"><B>Build at once</B></span> - when this option is 
- checked, you can't perform any operations until the MED file is fully 
- loaded and processed. </p></li>
-       
-       <li class=kadov-p><p class="whs3"><span 
- style="font-weight: bold;"><B>Close dialog at finish</B></span> - when this option 
- is checked, the dialog box is closed after loading of the selected MED 
- file. When unchecked, it allows to monitor the build process. </p></li>
-</ul>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs8">Import progress -<span style="font-weight: normal;"> 
- allows to choose what items exactly should be built at loading. By default 
- everything is checked in. </span>&nbsp;<span 
- style="font-weight: normal;">Note that the 
- coloured rectangles show the progress of the respective step and become 
- blue when complete. </span></p>
-
-<ul type="disc" class="whs9">
-       
-       <li class=kadov-p><p class="whs8">Build entities - <span 
- style="font-weight: normal;">displays the rate at which the geometrical 
- data is loaded.</span> </p></li>
-       
-       <li class=kadov-p><p class="whs8">Build fields - <span 
- style="font-weight: normal;">when this</span> <span style="font-weight: normal;">option 
- is checked, the fields are built automatically at loading. </span></p></li>
-       
-       <li class=kadov-p><p class="whs8">Build min/max - <span 
- style="font-weight: normal;">parses time stamps at loading finding</span> 
- <span style="font-weight: normal;">the highest and the lowest value.</span></p></li>
-       
-       <li class=kadov-p><p class="whs3"><span 
- style="font-weight: bold;"><B>Build Groups</B></span> - builds groups and families 
- at loading.</p></li>
-</ul>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs3"><span 
- style="font-weight: bold;"><B>Time</B></span> - shows the <span style="font-weight: bold;"><B>Elapsed 
- time</B></span> spent by the application on processing.</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs2">
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;}  if (parseInt(navigator.appVersion) >=2 && typeof(PickupDialog_Invoke) == 'function') PickupDialog_Invoke(e,'','About structure of MED object','about_structure_of_med_object.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a>
-
- </p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs2">&nbsp;</p>
-
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")
-  WritePopupMenuLayer();
-//--></script><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/importing_tables.htm b/doc/salome/gui/VISU/files/importing_tables.htm
deleted file mode 100755 (executable)
index cc2046a..0000000
+++ /dev/null
@@ -1,154 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Importing tables</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { font-family:'Times New Roman' , serif; }
-p.whs2 { font-family:'Times New Roman' , serif; color:#ff0000; font-style:italic; }
-p.whs3 { font-family:'Times New Roman' , serif; margin-left:40px; font-style:normal; color:#000000; }
-p.whs4 { font-family:'Times New Roman' , serif; color:#ff0000; font-style:italic; margin-left:40px; }
-p.whs5 { font-family:'Times New Roman' , serif; margin-left:40px; font-style:normal; color:#000000; font-weight:normal; }
-p.whs6 { font-family:'Times New Roman' , serif; margin-left:40px; font-style:normal; color:#000000; font-weight:bold; }
-img_whs7 { border:none; border-style:none; width:494px; height:268px; float:none; }
-p.whs8 { margin-left:40px; }
-p.whs9 { margin-left:40px; font-weight:bold; }
-p.whs10 { margin-left:80px; }
-img_whs11 { border:none; width:462px; height:268px; float:none; border-style:none; }
--->
-</style><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\nTable presentations\nImporting/exporting tables");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Importing/exporting 
- tables</h1>
-
-<p class=TODO>To import a table from file:</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs3">1. &nbsp;From 
- the main menu choose <span style="font-weight: bold;"><B>File &gt; Import 
- &gt; Table from File</B></span>, or in the Object Browser right-click on the 
- <span style="font-weight: bold;"><B>Post-Pro </B></span>object and select <span 
- style="font-weight: bold;"><B>Table from File </B></span>item.<span style="font-weight: bold;"> 
- <B></B></span></p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs5">2. &nbsp;From 
- the following standard dialog box:</p>
-
-<p class="whs6">&nbsp;</p>
-
-<p class="whs5">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../pics/importtablefromfile.png" x-maintain-ratio="TRUE" width="494px" height="268px" border="0" class="img_whs7"></p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5">choose the necessary *.xls, *.txt or 
- *.tab file containing tables and click <span style="font-weight: bold;"><B>Open</B></span> 
- button. &nbsp;</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5">3. &nbsp;In 
- the Object Browser <span style="font-weight: bold;"><B>Post-Pro </B></span>will 
- create a new folder having the name of the imported file. All tables from 
- this file will be located in this folder. One *.xls file can contain several 
- tables. &nbsp;&nbsp;&nbsp;</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class=TODO>To export a table:</p>
-
-<p class=TODO>&nbsp;</p>
-
-<p class="whs8">1. Click on it in the Object Browser and 
- select <span style="font-weight: bold;"><B>Export Table.</B></span></p>
-
-<p class="whs8">&nbsp;</p>
-
-<p class="whs9"><span style="font-weight: normal;">2. 
- In the standard dialog box enter the name of the file, which will contain 
- your exported table, and click </span>OK <span style="font-weight: normal;">button. 
- Your table will be exported.</span></p>
-
-<p class="whs9">&nbsp;</p>
-
-<p class="whs10">&nbsp;<img src="../pics/exporttable.png" x-maintain-ratio="TRUE" width="462px" height="268px" border="0" class="img_whs11"></p>
-
-<p class="whs5">&nbsp;</p>
-
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/insideframe.htm b/doc/salome/gui/VISU/files/insideframe.htm
deleted file mode 100755 (executable)
index 0ca8f5f..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Insideframe</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-img_whs1 { border-style:none; border:none; width:422px; height:293px; }
--->
-</style><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<p><img src="../image19.jpg" width="422px" height="293px" border="0" class="img_whs1"></p>
-
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/introduction.htm b/doc/salome/gui/VISU/files/introduction.htm
deleted file mode 100755 (executable)
index 3799858..0000000
+++ /dev/null
@@ -1,156 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Introduction</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-p.whs1 { font-family:'Times New Roman' , serif; }
-img_whs2 { border:none; width:30px; height:30px; float:none; border-style:none; }
-ul.whs3 { list-style:disc; }
-p.whs4 { margin-left:0px; font-family:'Times New Roman' , serif; }
--->
-</style><script type="text/javascript" language="JavaScript">
-<!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
-{
-  var strNSS = "<style type='text/css'>";
-  strNSS += "p.whs4 {margin-left:1pt; }";
-  strNSS +="</style>";
-  document.write(strNSS);
-}
-//-->
-</script>
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\nIntroduction to Post-Pro");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1>Introduction to Post-Pro</h1>
-
-<p class="whs1"><span style="font-family: 'Times New Roman', serif;"><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs2">Post-processing module <span style="font-weight: bold;"><B>Post-Pro 
- </B></span>&nbsp;for 
- SALOME &nbsp;is 
- destined for visualization of data produced by the other components of 
- the platform. <span style="font-weight: bold;"><B>Post-Pro</B></span> provides 
- &nbsp;various 
- forms of data visualization including: </span></p>
-
-<p class="whs1">&nbsp;</p>
-
-<ul type="disc" class="whs3">
-       
-       <li class=kadov-p><p class="whs1"><a href="about_tables.htm">Data tables</a>,</p></li>
-</ul>
-
-<p class="whs1">&nbsp;</p>
-
-<ul type="disc" class="whs3">
-       
-       <li class=kadov-p><p class="whs1"><a href="creating_xy_plot.htm">XY plots based on data from tables,</a></p></li>
-</ul>
-
-<p class="whs1">&nbsp;</p>
-
-<ul type="disc" class="whs3">
-       
-       <li class=kadov-p><p class="whs1"><a href="creating_presentations.htm">3d presentations of submeshes</a>,</p></li>
-</ul>
-
-<p class="whs1">&nbsp;</p>
-
-<ul type="disc" class="whs3">
-       
-       <li class=kadov-p><p class="whs1"><a href="creating_field_presentations.htm">3d presentations of fields</a>:</p></li>
-</ul>
-
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>
-
-<p class="whs1">&nbsp;</p>
-
-<p class="whs4">
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;}  if (parseInt(navigator.appVersion) >=2 && typeof(PickupDialog_Invoke) == 'function') PickupDialog_Invoke(e,'','Creating field presentations','creating_field_presentations.htm','Creating presentations','creating_presentations.htm','Creating XY plot','creating_xy_plot.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a>
-
-
- </p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs4">&nbsp;</p>
-
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")
-  WritePopupMenuLayer();
-//--></script><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/iso_surfaces_presentation.htm b/doc/salome/gui/VISU/files/iso_surfaces_presentation.htm
deleted file mode 100755 (executable)
index c0207a6..0000000
+++ /dev/null
@@ -1,215 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Iso Surfaces presentation</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { font-family:'Times New Roman' , serif; }
-img_whs2 { border:none; width:30px; height:30px; float:none; border-style:none; }
-p.whs3 { font-family:'Times New Roman' , serif; }
-p.whs4 { font-family:'Times New Roman' , serif; font-style:italic; color:#ff0000; margin-left:40px; }
-p.whs5 { margin-left:40px; }
-img_whs6 { border:none; width:26px; height:27px; float:none; border-style:none; }
-p.whs7 { margin-left:0px; }
-p.whs8 { margin-left:80px; }
-img_whs9 { border:none; width:348px; height:533px; float:none; border-style:none; }
-ul.whs10 { list-style:disc; }
-p.whs11 { margin-left:24px; }
-p.whs12 { font-family:'Times New Roman' , serif; margin-left:40px; }
-p.whs13 { margin-left:60px; }
-p.whs14 { font-family:'Times New Roman' , serif; margin-left:0px; }
-img_whs15 { border:none; border-style:none; width:634px; height:577px; float:none; }
--->
-</style><script type="text/javascript" language="JavaScript">
-<!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
-{
-  var strNSS = "<style type='text/css'>";
-  strNSS += "p.whs7 {margin-left:1pt; }";
-  strNSS += "p.whs14 {margin-left:1pt; }";
-  strNSS +="</style>";
-  document.write(strNSS);
-}
-//-->
-</script>
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\n3D presentations\nField presentations\nIso Surfaces presentation");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Iso Surfaces presentation</h1>
-
-<p><span style="font-weight: bold;"><B><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs2">Iso Surfaces </B></span>presentation 
- combines all equal scalar values applied to the cells and on the basis 
- of them constructs &nbsp;isobaric 
- surfaces, which form this presentation.</p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class=TODO
-       style="font-family: 'Arial Black', sans-serif;">To create an Iso Surfaces 
- presentation:</p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs5">- Right-click on one of the time stamps of 
- the field in the Object browser and from the pop-up menu choose <span 
- style="font-weight: bold;"><B>Iso Surfaces, </B></span><span>or</span></p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5">- Click on one of the time stamps of the 
- field in the Object browser and select from the main menu <span style="font-weight: bold;"><B>Visualization 
- &gt; Iso Surfaces</B></span>, or click <img src="../pics/isosurf.jpg" x-maintain-ratio="TRUE" width="26px" height="27px" border="0" class="img_whs6"> icon<span style="font-weight: bold;"> 
- <B></B></span>in the <span style="font-weight: bold;"><B>Visualization Toolbar</B></span></p>
-
-<p class="whs7">&nbsp;</p>
-
-<p class="whs8"><img src="../pics/isosurfaces.png" x-maintain-ratio="TRUE" width="348px" height="533px" border="0" class="img_whs9"></p>
-
-<p class="whs8">&nbsp;</p>
-
-<ul type="disc" class="whs10">
-       
-       <li class=kadov-p><p class="whs11"><span style="font-weight: bold;"><B>Iso 
- Surface </B></span><span>tab allows to set </span>additional parameters of 
- the <span style="font-weight: bold;"><B>Iso Surfaces </B></span>presentation:</p></li>
-</ul>
-
-<p class="whs12">&nbsp;</p>
-
-<ul type="disc" class="whs10">
-       
-       <li class=kadov-p><p class="whs13"><span style="font-weight: bold;"><B>Number 
- of surfaces</B></span>, which will be generated in the framework of this presentation</p></li>
-</ul>
-
-<p class="whs13">&nbsp;</p>
-
-<ul type="disc" class="whs10">
-       
-       <li class=kadov-p><p class="whs13">&nbsp;<span 
- style="font-weight: bold;"><B>Minimum / Maximum 
- value </B></span>fields allow to enter the range of scalar or vector values 
- applied to the cells, on the basis of which this presentation will be 
- created. </p></li>
-</ul>
-
-<p class="whs13">&nbsp;</p>
-
-<ul type="disc" class="whs10">
-       
-       <li class=kadov-p><p class="whs13"><span style="font-weight: bold;"><B>Update 
- scalar bar range with these values </B></span><span>button allows you to update 
- the range of the values, displayed with by the scalar bar, with the previously 
- defined range of values.</span></p></li>
-</ul>
-
-<p class="whs14">&nbsp;</p>
-
-<ul type="disc" class="whs10">
-       
-       <li class=kadov-p><p class="whs11"><span style="font-weight: bold;"><B>Scalar 
- Bar </B></span>tab allows to define the parameters of the scalar bar displayed 
- with this presentation (<a href="scalar_map_presentation.htm#Scalar Bar">see 
- also</a>).</p></li>
-</ul>
-
-<p class="whs14">&nbsp;</p>
-
-<p class="whs14">After 
- you have finished with setting these parameters, click <span style="font-weight: bold;"><B>OK. 
- </B></span>Your presentation with scalar bar will be immediately displayed 
- in the viewer: </p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5"><img src="../pics/iso.png" x-maintain-ratio="TRUE" width="634px" height="577px" border="0" class="img_whs15"></p>
-
-<p class="whs14">&nbsp;</p>
-
-<p class="whs14">&nbsp;</p>
-
-<p class="whs14">
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;}  if (parseInt(navigator.appVersion) >=2 && typeof(PickupDialog_Invoke) == 'function') PickupDialog_Invoke(e,'','Creating field presentations','creating_field_presentations.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a>
-
-
- </p>
-
-<p class="whs14">&nbsp;</p>
-
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")
-  WritePopupMenuLayer();
-//--></script><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/points.htm b/doc/salome/gui/VISU/files/points.htm
deleted file mode 100755 (executable)
index bf1d9a6..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Points</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-img_whs1 { border-style:none; border:none; width:422px; height:220px; float:none; }
--->
-</style><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<p><img src="../pics/points.jpg" x-maintain-ratio="TRUE" width="422px" height="220px" border="0" class="img_whs1"></p>
-
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/running_visu.htm b/doc/salome/gui/VISU/files/running_visu.htm
deleted file mode 100755 (executable)
index 9121b1b..0000000
+++ /dev/null
@@ -1,130 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Running VISU</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { font-family:'Times New Roman' , serif; }
-img_whs2 { border:none; width:33px; height:40px; float:none; border-style:none; }
-p.whs3 { font-family:'Times New Roman' , serif; }
-p.whs4 { font-family:'Times New Roman'  , serif; background-image:url('../texture_horiz_ltbluebubbles.jpg'); }
-img_whs5 { border:none; float:none; width:36px; height:38px; border-style:none; }
-p.whs6 { margin-left:40px; }
-img_whs7 { border:none; width:702px; height:509px; float:none; border-style:none; }
--->
-</style><script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\nRunning Post-Pro");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Running Post-Pro</h1>
-
-<p>To start Post-Pro <span class=glossterm>module</span> in the SALOME 
- application click <img src="../pics/visuicon.jpg" x-maintain-ratio="TRUE" width="33px" height="40px" border="0" class="img_whs2"> icon in the toolbar.</p>
-
-<p class="whs3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>
-
-<p class="whs4"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs5"> Before launching Post-Pro module, you should set the VTK 
- viewer as default viewer for creation of a new study window. In Post-Pro 
- you can create presentations only in the VTK viewer. (see also: Setting 
- preferences)</p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs3">The initial desktop of 
- the SALOME platform will be updated with some additional toolbars and 
- menus related to Post-Pro component . It will look like as follows:</p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs6">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../pics/visufullscreen.png" x-maintain-ratio="TRUE" width="702px" height="509px" border="0" class="img_whs7"> &nbsp;</p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs3">
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;}  if (parseInt(navigator.appVersion) >=2 && typeof(PickupDialog_Invoke) == 'function') PickupDialog_Invoke(e,'','Importing MED files','importing_med_objects.htm','Introduction','introduction.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a>
-
-
- </p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs3">&nbsp;</p>
-
-<p class="whs3">&nbsp;</p>
-
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")
-  WritePopupMenuLayer();
-//--></script><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/scalar_map_presentation.htm b/doc/salome/gui/VISU/files/scalar_map_presentation.htm
deleted file mode 100755 (executable)
index 8367a3f..0000000
+++ /dev/null
@@ -1,396 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Scalar Map presentation</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { margin-top:0px; margin-bottom:0px; }
-p.whs2 { margin-top:0px; margin-bottom:0px; }
-img_whs3 { border:none; float:none; width:30px; height:30px; border-style:none; }
-p.whs4 { margin-left:40px; margin-top:0px; margin-bottom:0px; }
-p.whs5 { margin-top:0px; margin-bottom:0px; margin-left:72px; }
-p.whs6 { font-style:italic; color:#ff0000; margin-left:40px; margin-top:0px; margin-bottom:0px; }
-img_whs7 { border:none; width:31px; height:27px; float:none; border-style:none; }
-p.whs8 { margin-left:0px; margin-top:0px; margin-bottom:0px; }
-p.whs9 { margin-left:0px; background-image:url('../texture_horiz_ltbluebubbles.jpg'); margin-top:0px; margin-bottom:0px; }
-img_whs10 { border:none; float:none; width:36px; height:38px; border-style:none; }
-img_whs11 { border:none; width:374px; height:643px; float:none; border-style:none; }
-ul.whs12 { list-style:disc; }
-p.whs13 { margin-left:36px; margin-top:0px; margin-bottom:0px; }
-p.whs14 { margin-left:36px; margin-top:0px; margin-bottom:0px; font-weight:bold; }
-p.whs15 { font-weight:bold; margin-left:24px; margin-top:0px; margin-bottom:0px; }
-p.whs16 { margin-left:40px; font-weight:bold; margin-top:0px; margin-bottom:0px; }
-p.whs17 { margin-left:24px; margin-top:0px; margin-bottom:0px; }
-p.whs18 { font-weight:bold; margin-left:36px; margin-top:0px; margin-bottom:0px; }
-p.whs19 { margin-left:60px; margin-top:0px; margin-bottom:0px; }
-p.whs20 { margin-top:0px; margin-bottom:0px; margin-left:36px; }
-p.whs21 { margin-left:36px; font-weight:bold; margin-top:0px; margin-bottom:0px; }
-p.whs22 { margin-left:120px; margin-top:0px; margin-bottom:0px; }
-img_whs23 { border:none; width:308px; height:241px; float:none; border-style:none; }
-p.whs24 { margin-left:72px; margin-top:0px; margin-bottom:0px; }
-p.whs25 { margin-left:48px; margin-top:0px; margin-bottom:0px; }
-img_whs26 { border:none; width:433px; height:303px; float:none; border-style:none; }
--->
-</style><script type="text/javascript" language="JavaScript">
-<!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
-{
-  var strNSS = "<style type='text/css'>";
-  strNSS += "h1.whs1 {margin-top:1pt;margin-bottom:1pt; }";
-  strNSS += "p.whs2 {margin-top:1pt;margin-bottom:1pt; }";
-  strNSS += "p.whs4 {margin-top:1pt;margin-bottom:1pt; }";
-  strNSS += "p.whs5 {margin-top:1pt;margin-bottom:1pt; }";
-  strNSS += "p.whs6 {margin-top:1pt;margin-bottom:1pt; }";
-  strNSS += "p.whs8 {margin-left:1pt;margin-top:1pt;margin-bottom:1pt; }";
-  strNSS += "p.whs9 {margin-left:1pt;margin-top:1pt;margin-bottom:1pt; }";
-  strNSS += "p.whs13 {margin-top:1pt;margin-bottom:1pt; }";
-  strNSS += "p.whs14 {margin-top:1pt;margin-bottom:1pt; }";
-  strNSS += "p.whs15 {margin-top:1pt;margin-bottom:1pt; }";
-  strNSS += "p.whs16 {margin-top:1pt;margin-bottom:1pt; }";
-  strNSS += "p.whs17 {margin-top:1pt;margin-bottom:1pt; }";
-  strNSS += "p.whs18 {margin-top:1pt;margin-bottom:1pt; }";
-  strNSS += "p.whs19 {margin-top:1pt;margin-bottom:1pt; }";
-  strNSS += "p.whs20 {margin-top:1pt;margin-bottom:1pt; }";
-  strNSS += "p.whs21 {margin-top:1pt;margin-bottom:1pt; }";
-  strNSS += "p.whs22 {margin-top:1pt;margin-bottom:1pt; }";
-  strNSS += "p.whs24 {margin-top:1pt;margin-bottom:1pt; }";
-  strNSS += "p.whs25 {margin-top:1pt;margin-bottom:1pt; }";
-  strNSS +="</style>";
-  document.write(strNSS);
-}
-//-->
-</script>
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\n3D presentations\nField presentations\nScalar Map presentation");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Scalar Map presentation</h1>
-
-<p class="whs2"><span style="font-weight: bold;"><B><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3">Scalar Map</B></span> is the basic type of visualization of calculation 
- data in <span style="font-weight: bold;"><B>Post-Pro </B></span>module. This 
- presentation consists of the following:</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs4">- creating a 3D presentation on the basis 
- of a field:</p>
-
-<p class="whs5">&nbsp;&nbsp;&nbsp;&nbsp;- 
- on the whole mesh (default)</p>
-
-<p class="whs5">&nbsp;&nbsp;&nbsp;&nbsp;- 
- on group(s) of the mesh</p>
-
-<p class="whs4">- coloring the cells of this presentation, 
- according the scalar or vector values applied to this cells;</p>
-
-<p class="whs4">- creating a scalar bar representing the 
- correspondence &nbsp;between 
- the scalar values of the field and the used colors. </p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs2">All other types of field 
- presentations are based on the <span style="font-weight: bold;"><B>Scalar 
- Map. </B></span></p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class=TODO
-       style="margin-top: 0px; margin-bottom: 0px;">To create a Scalar Map 
- presentation:</p>
-
-<p class="whs6">&nbsp;</p>
-
-<p class="whs4">- Right-click on one of the time stamps 
- of the field in the Object browser and from the pop-up menu choose <span 
- style="font-weight: bold;"><B>Scalar Map, </B></span><span>or</span></p>
-
-<p class="whs4">- Click on one of the time stamps of the 
- field in the Object browser and select from the main menu <span style="font-weight: bold;"><B>Visualization 
- &gt; Scalar Map</B></span>, or click <img src="../pics/scalarmapicon.jpg" x-maintain-ratio="TRUE" width="31px" height="27px" border="0" class="img_whs7"> icon<span style="font-weight: bold;"> 
- <B></B></span>in the <span style="font-weight: bold;"><B>Visualization Toolbar</B></span></p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs8">The following dialog box will appear:</p>
-
-<p class="whs8">&nbsp;</p>
-
-<p class="whs9"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs10">This dialog box is equal 
- for all types of field presentations and it will be present as an additional 
- tab in all dialog boxes allowing to create the other types of presentations. 
- It allows to set the parameters of <span style="font-weight: bold;"><B>Scalar 
- range,</B></span> as well as the parameters of the <span style="font-weight: bold;"><B>Scalar 
- Bar.</B></span> You can also set these parameters as preferences which will 
- be used in all SALOME sessions: in the main menu select <span style="font-weight: bold;"><B>File 
- &gt;</B></span> <span style="font-weight: bold;"><B>Preferences &gt; Post Pro 
- &gt; Scalar Bar.</B></span> &nbsp;<span style="font-weight: bold;"><B>&nbsp;</B></span>&nbsp;</p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs8">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../pics/scalarbarproperties.png" x-maintain-ratio="TRUE" width="374px" height="643px" border="0" class="img_whs11"></p>
-
-<p class="whs8">&nbsp;</p>
-
-<ul type="disc" class="whs12">
-       
-       <li class=kadov-p><p class="whs13"><span style="font-weight: bold;"><B>Build 
- presentation on groups</B></span>: You can choose the groups on which <span 
- style="font-weight: bold;"><B>Scalar Map</B></span> can be built from the list 
- to the left and add them in the list to the right.</p></li>
-</ul>
-
-<p class="whs13"><span>&nbsp;</span></p>
-
-<ul type="disc" class="whs12">
-       
-       <li class=kadov-p><p class="whs14">Scalar range parameters:</p></li>
-</ul>
-
-<p class="whs13">&nbsp;</p>
-
-<ul type="disc" class="whs12">
-       
-       <ul type="disc" class="whs12">
-               
-               <li class=kadov-p><p class="whs15">Scalar Mode <span 
- style="font-weight: normal;">field: This field allows to choose the mode 
- of transformation of vector values into scalar values for creation of 
- the presentation. It can be module of the vector or one of three components 
- of the vector. (Note: This choose box is relevant only for fields containing 
- vector values, in other cases it will be inactive). &nbsp;</span></p></li>
-       </ul>
-</ul>
-
-<p class="whs16">&nbsp;</p>
-
-<ul type="disc" class="whs12">
-       
-       <ul type="disc" class="whs12">
-               
-               <li class=kadov-p><p class="whs15">Logarithmic scaling 
- <span style="font-weight: normal;">check box: You can apply logarithmic 
- scaling to the color scale of the presentation.</span></p></li>
-       </ul>
-</ul>
-
-<p class="whs17">&nbsp;</p>
-
-<ul type="disc" class="whs12">
-       
-       <ul type="disc" class="whs12">
-               
-               <li class=kadov-p><p class="whs17"><span style="font-weight: bold;"><B>Use 
- field range: </B></span>if this check box is selected, all cells of the field 
- presentation will be colored according the values applied to these cells. 
- &nbsp;</p></li>
-       </ul>
-</ul>
-
-<p class="whs17">&nbsp;</p>
-
-<ul type="disc" class="whs12">
-       
-       <ul type="disc" class="whs12">
-               
-               <li class=kadov-p><p class="whs15">Use imposed range: 
- <span style="font-weight: normal;">here you can define your own range 
- of scalar values of the field, on the basis of which this presentation 
- will be constructed. The cells of the field presentation with applied 
- scalar or vector values belonging to this imposed range will be colored 
- according to these values. The other cells of the field presentation (with 
- applied scalar or vector values out of this imposed range) will be displayed 
- using one color. For the cells with applied scalar or vector values, which 
- are less than the minimal value of the imposed range, the color will be 
- the same as for the cells with applied minimal values. For the cells with 
- applied scalar or vector values, which are larger than the maximal value 
- of the imposed range the color will be the same as for the cells with 
- applied minimal values. &nbsp;</span></p></li>
-       </ul>
-</ul>
-
-<p class="whs4">&nbsp;</p>
-
-<ul type="disc" class="whs12">
-       
-       <li class=kadov-p><p class="whs18">Colors and Labels</p></li>
-       
-       <li class=kadov-p><p class="whs19"><span style="font-weight: bold;"><B>Nb. 
- of colors </B></span>field: In this field you can enter the number of colors, 
- which will be used for coloring of cells containing scalar values.</p></li>
-       
-       <li class=kadov-p><p class="whs19"><span style="font-weight: bold;"><B>Nb. 
- of labels </B></span>field: In this field you can enter the number of labels, 
- indicating graduation of the scalar bar.</p></li>
-</ul>
-
-<p class="whs4">&nbsp;</p>
-
-<ul type="disc" class="whs12">
-       
-       <li class=kadov-p><p class="whs20"><span style="font-weight: bold;"><B>Orientation: 
- </B></span>You can select <span style="font-weight: bold;"><B>Vertical </B></span>or<span 
- style="font-weight: bold;"><B> Horizontal </B></span>orientation of the scalar 
- bar. &nbsp;</p></li>
-</ul>
-
-<p class="whs4">&nbsp;</p>
-
-<ul type="disc" class="whs12">
-       
-       <li class=kadov-p><p class="whs20"><span style="font-weight: bold;"><B>Origin:</B></span> 
- you can enter <span style="font-weight: bold;"><B>X</B></span> &amp; <span style="font-weight: bold;"><B>Y</B></span> 
- coordinates of the origin of the scalar bar.</p></li>
-</ul>
-
-<p class="whs4">&nbsp;</p>
-
-<ul type="disc" class="whs12">
-       
-       <li class=kadov-p><p class="whs20">&nbsp;<span 
- style="font-weight: bold;"><B>Dimensions</B></span>: 
- you can enter <span style="font-weight: bold;"><B>Width</B></span> and <span 
- style="font-weight: bold;"><B>Height</B></span> of the scalar bar.</p></li>
-</ul>
-
-<p class="whs4">&nbsp;</p>
-
-<ul type="disc" class="whs12">
-       
-       <li class=kadov-p><p class="whs20"><span style="font-weight: bold;"><B>Save 
- as default values </B></span>check box allows to save this parameters for 
- all presentations, which will be constructed later.</p></li>
-</ul>
-
-<p class="whs8">&nbsp;</p>
-
-<ul type="disc" class="whs12">
-       
-       <li class=kadov-p><p class="whs21">Text properties <span 
- style="font-weight: normal;">button allows you to define from the following 
- dialog box:</span></p></li>
-</ul>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs22"><img src="../pics/textproperty.png" x-maintain-ratio="TRUE" width="308px" height="241px" border="0" class="img_whs23"></p>
-
-<p class="whs13">&nbsp;</p>
-
-<ul type="disc" class="whs12">
-       
-       <li class=kadov-p><p class="whs24"><span style="font-weight: bold;"><B>Title</B></span> 
- of the field, on the basis of which this presentation is created,</p></li>
-       
-       <li class=kadov-p><p class="whs24">Font<span style="font-weight: bold;"> 
- <B></B></span>properties of the <span style="font-weight: bold;"><B>Title</B></span>, 
- displayed in the Viewer</p></li>
-       
-       <li class=kadov-p><p class="whs24">Font<span style="font-weight: bold;"> 
- <B></B></span>properties of the <span style="font-weight: bold;"><B>Labels</B></span>, 
- displayed in the Viewer. &nbsp;</p></li>
-</ul>
-
-<p class="whs24">&nbsp;</p>
-
-<p class="whs25">After you have finished with setting these 
- parameters, click <span style="font-weight: bold;"><B>OK. </B></span>Your presentation 
- with scalar bar will be immediately displayed in the viewer: </p>
-
-<p class="whs8">&nbsp;</p>
-
-<p class="whs4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../pics/scalarrangesn.png" x-maintain-ratio="TRUE" width="433px" height="303px" border="0" class="img_whs26"></p>
-
-<p class="whs8">&nbsp;</p>
-
-<p class="whs8">
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;}  if (parseInt(navigator.appVersion) >=2 && typeof(PickupDialog_Invoke) == 'function') PickupDialog_Invoke(e,'','Creating field presentations','creating_field_presentations.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a>
-
-
- </p>
-
-<p class="whs8">&nbsp;</p>
-
-<p class="whs8">&nbsp;</p>
-
-<p class="whs8">&nbsp;</p>
-
-<p class="whs8">&nbsp;</p>
-
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")
-  WritePopupMenuLayer();
-//--></script><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/scaling_presentations.htm b/doc/salome/gui/VISU/files/scaling_presentations.htm
deleted file mode 100755 (executable)
index a213939..0000000
+++ /dev/null
@@ -1,150 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Scaling presentations</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { font-family:'Times New Roman' , serif; }
-p.whs2 { font-family:'Times New Roman' , serif; }
-img_whs3 { border:none; float:none; width:30px; height:30px; border-style:none; }
-p.whs4 { color:#ff0000; font-style:italic; margin-left:40px; font-family:'Times New Roman' , serif; }
-p.whs5 { color:#ff0000; font-style:italic; margin-left:0px; }
-img_whs6 { border:none; border-style:none; width:371px; height:159px; float:none; }
-p.whs7 { margin-left:40px; font-style:normal; color:#000000; font-family:'Times New Roman' , serif; }
-p.whs8 { margin-left:0px; }
-p.whs9 { margin-left:40px; color:#ff0000; font-style:italic; font-family:'Times New Roman' , serif; }
--->
-</style><script type="text/javascript" language="JavaScript">
-<!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
-{
-  var strNSS = "<style type='text/css'>";
-  strNSS += "p.whs5 {margin-left:1pt; }";
-  strNSS += "p.whs8 {margin-left:1pt; }";
-  strNSS +="</style>";
-  document.write(strNSS);
-}
-//-->
-</script>
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\n3D presentations\nViewing 3D presentations\nTranslate Presentation");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Translate Presentation</h1>
-
-<p class="whs2"><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3">In SALOME 
- there is a feature allowing to translate presentations of submeshes and 
- field presentations along axes (X, Y, Z). </p>
-
-<p class="whs2">&nbsp;</p>
-
-<p>To translate a presentation right-click on it in the Object Browser 
- or 3D Viewer and select <span style="font-weight: bold;"><B>Translate Presentation</B></span>. 
- </p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs5">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../pics/translatepres.png" x-maintain-ratio="TRUE" width="371px" height="159px" border="0" class="img_whs6"></p>
-
-<p class="whs7">&nbsp;</p>
-
-<p class="whs8">The presentation will be moved by the specified 
- distance along axes.</p>
-
-<p class="whs8">To cancel all changes, click <span style="font-weight: bold;"><B>Reset 
- </B></span>button.</p>
-
-<p class="whs7">&nbsp;</p>
-
-<p class="whs8">3. Click <span style="font-weight: bold;"><B>Apply 
- </B></span>button, to apply your scaling on the chosen presentation. </p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5"><span style="font-style: normal; color: #000000;"><font color=black >4. 
- To confirm all actions and quit </font></span><span style="font-style: normal;
-                                                                                                               color: #000000;
-                                                                                                               font-weight: bold;"><font color=black ><B>Translate 
- Presentation </B></font></span><span style="font-style: normal; color: #000000;"><font color=black >dialog 
- box, click </font></span><span style="font-style: normal;
-                                                               color: #000000;
-                                                               font-weight: bold;"><font color=black ><B>OK</B></font></span><span style="font-style: normal; color: #000000;"><font color=black >. 
- </font></span>&nbsp;&nbsp;</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs9">&nbsp;</p>
-
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/setting_properties_of_xy_plots.htm b/doc/salome/gui/VISU/files/setting_properties_of_xy_plots.htm
deleted file mode 100755 (executable)
index 567b6fc..0000000
+++ /dev/null
@@ -1,176 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Setting properties of XY plots</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-p.whs1 { margin-left:40px; }
-img_whs2 { border:none; width:170px; height:219px; border-style:none; }
-img_whs3 { border:none; width:195px; height:101px; border-style:none; }
-img_whs4 { border:none; width:395px; height:189px; float:none; border-style:none; }
-img_whs5 { border:none; width:109px; height:75px; border-style:none; }
-p.whs6 { margin-left:0px; }
-img_whs7 { border:none; width:444px; height:260px; float:none; border-style:none; }
--->
-</style><script type="text/javascript" language="JavaScript">
-<!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
-{
-  var strNSS = "<style type='text/css'>";
-  strNSS += "p.whs6 {margin-left:1pt; }";
-  strNSS +="</style>";
-  document.write(strNSS);
-}
-//-->
-</script>
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\nXY plots\nSetting properties of XY plots");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1>Setting properties of XY plots</h1>
-
-<p class=TODO>To define properties of XY plots:</p>
-
-<p class=TODO>&nbsp;</p>
-
-<p class="whs1">Right-click on the background of the Plot 
- 2d viewer. The following menu will appear: </p>
-
-<p class="whs1"><img src="../image13.gif" width="170px" height="219px" border="0" class="img_whs2"></p>
-
-<p class="whs1">&nbsp;</p>
-
-<p class="whs1"><span style="font-weight: bold;"><B>Erase all</B></span> 
- - hides all previously displayed curves from the viewer. </p>
-
-<p class="whs1"><span style="font-weight: bold;"><B>Rename</B></span> 
- - allows to rename the object currently selected in the Object Browser 
- (table, curve or XY plot). </p>
-
-<p class="whs1">&nbsp;</p>
-
-<p class="whs1"><span style="font-weight: bold;"><B>Scaling</B></span> 
- gives you the possibility to select the scale (logarithmic or linear) 
- for both axes</p>
-
-<p class="whs1">&nbsp;</p>
-
-<p class="whs1"><img src="../image18.gif" width="195px" height="101px" border="0" class="img_whs3"></p>
-
-<p class="whs1">&nbsp;</p>
-
-<p class="whs1">via <span style="font-weight: bold;"><B>Fit 
- Range</B></span> option you can access to the following menu</p>
-
-<p class="whs1">&nbsp;</p>
-
-<p class="whs1"><img src="../pics/fitdatarange.png" x-maintain-ratio="TRUE" width="395px" height="189px" border="0" class="img_whs4"></p>
-
-<p class="whs1">&nbsp;</p>
-
-<p class="whs1"><span style="font-weight: bold;"><B>Curve Type 
- </B></span>gives you the possibility to select the type for your curves.</p>
-
-<p class="whs1">&nbsp;</p>
-
-<p class="whs1"><img src="../image27.gif" width="109px" height="75px" border="0" class="img_whs5"></p>
-
-<p class="whs1">&nbsp;</p>
-
-<p class="whs1"><span style="font-weight: bold;"><B>Show Legend</B></span> 
- triggers all labels on the graph.</p>
-
-<p class="whs1">&nbsp;</p>
-
-<p class="whs1"><span style="font-weight: bold;"><B>Settings</B></span> 
- menu allows to adjust the representation of the graphs in the <a href="../plot2d_viewer.htm">Plot 
- 2d viewer</a></p>
-
-<p class="whs6">&nbsp;</p>
-
-<p class="whs1"><span style="font-weight: bold;"><B>Dump View</B></span> 
- - allows to save the current graph represented in the 2D viewer in a graphic 
- file.</p>
-
-<p class="whs1">&nbsp;</p>
-
-<p class="whs1"><img src="../pics/dumpviewtofile.png" x-maintain-ratio="TRUE" width="444px" height="260px" border="0" class="img_whs7"></p>
-
-<p class="whs1">&nbsp;</p>
-
-<p class="whs1"><span style="font-weight: bold;"><B>Change Background</B></span> 
- - allows to change the background of the 2D viewer. </p>
-
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/shrink.htm b/doc/salome/gui/VISU/files/shrink.htm
deleted file mode 100755 (executable)
index c495f4a..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Shrink</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-img_whs1 { border-style:none; border:none; width:422px; height:220px; float:none; }
--->
-</style><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<p><img src="../pics/shrink.jpg" x-maintain-ratio="TRUE" width="422px" height="220px" border="0" class="img_whs1"></p>
-
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/stream_lines_presentation.htm b/doc/salome/gui/VISU/files/stream_lines_presentation.htm
deleted file mode 100755 (executable)
index 42a205e..0000000
+++ /dev/null
@@ -1,253 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Stream Lines presentation</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { text-align:justify; }
-p.whs2 { text-align:justify; }
-img_whs3 { border:none; width:30px; height:30px; float:none; border-style:none; }
-p.whs4 { text-indent:48px; text-align:justify; }
-p.whs5 { margin-left:0px; text-indent:48px; text-align:justify; }
-p.whs6 { margin-left:40px; text-align:justify; }
-p.whs7 { font-style:italic; color:#ff0000; margin-left:40px; text-align:justify; }
-img_whs8 { border:none; width:26px; height:25px; float:none; border-style:none; }
-p.whs9 { margin-left:40px; text-align:justify; color:#000000; }
-img_whs10 { border:none; width:348px; height:533px; float:none; border-style:none; }
-p.whs11 { text-align:justify; margin-left:0px; }
-ul.whs12 { list-style:disc; }
-p.whs13 { margin-left:36px; text-align:justify; }
-p.whs14 { text-align:justify; margin-left:36px; }
-p.whs15 { font-weight:bold; text-align:justify; margin-left:36px; }
-img_whs16 { border:none; border-style:none; width:816px; height:681px; float:none; }
-p.whs17 { margin-left:0px; text-align:justify; }
--->
-</style><script type="text/javascript" language="JavaScript">
-<!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
-{
-  var strNSS = "<style type='text/css'>";
-  strNSS += "p.whs5 {margin-left:1pt; }";
-  strNSS += "p.whs11 {margin-left:1pt; }";
-  strNSS += "p.whs17 {margin-left:1pt; }";
-  strNSS +="</style>";
-  document.write(strNSS);
-}
-//-->
-</script>
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\n3D presentations\nField presentations\nStream Lines presentation");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Stream Lines presentation</h1>
-
-<p class="whs2"><span style="font-weight: bold;"><B><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3">Stream Lines </B></span>is a type of presentation transforming 
- the cells with vectors having most similar direction into lines . A streamline 
- can be thought of as the path that a massless particle takes in a vector 
- field. Streamlines are used to convey the structure of a vector field. 
- Usually streamlines are created to explore the most interesting features 
- in the field.</p>
-
-<p class="whs4">Creating streamlines 
- requires specifying multiple parameters including <span style="font-weight: bold;"><B>starting 
- points</B></span> of streamlines, <span style="font-weight: bold;"><B>direction</B></span> 
- and other parameters to control the <span style="font-weight: bold;"><B>propagation</B></span> 
- of the streamlines.</p>
-
-<p class="whs4">&nbsp;In 
- <span style="font-weight: bold;"><B>Post-Pro</B></span> there is an option allowing 
- to specify <span style="font-weight: bold;"><B>one particular area</B></span> 
- of the field on which the <span style="font-weight: bold;"><B>Stream Lines</B></span> 
- presentation will be created. This option has been created for optimization 
- purposes: sometimes generation of a Stream Lines presentation based on 
- all points of a very complicated field is very time-consuming and requires 
- a lot of hardware resources. </p>
-
-<p class="whs5">To bound the area on which the Stream 
- Lines presentation will be created. you can use another field presentation. 
- The points of the field located on this source presentation will serve 
- as starting points for generated streamlines. &nbsp;</p>
-
-<p class="whs6">&nbsp;</p>
-
-<p class=TODO
-       style="text-align: justify; color: #000000;"><span class=expandtext
-                                                                                                               style="color: #000000;"><font color=black >To 
- create a Stream Lines presentation:</font></span></p>
-
-<p class="whs7">&nbsp;</p>
-
-<p class="whs6">- Right-click on one 
- of the time stamps of the field in the Object browser and from the pop-up 
- menu choose <span style="font-weight: bold;"><B>Stream Lines, </B></span>or</p>
-
-<p class="whs6">- Click on one of the 
- time stamps of the field in the Object browser and select from the main 
- menu <span style="font-weight: bold;"><B>Visualization &gt; Stream Lines</B></span>, 
- or click <img src="../pics/streamlinesicon.jpg" x-maintain-ratio="TRUE" width="26px" height="25px" border="0" class="img_whs8"> icon<span style="font-weight: bold;"> <B></B></span>in 
- the <span style="font-weight: bold;"><B>Visualization Toolbar.</B></span></p>
-
-<p class="whs6">&nbsp;</p>
-
-<p class="whs9"><span class=expandtext
-                                                                       style="color: #000000;"><font color=black ><img src="../pics/streamlines.png" x-maintain-ratio="TRUE" width="348px" height="533px" border="0" class="img_whs10"></font></span></p>
-
-<p class="whs9">&nbsp;</p>
-
-<p class="whs11"><span style="font-weight: bold;"><B>Stream 
- Lines </B></span><span>tab allows you to set additional parameters of your 
- Stream Lines presentation:</span></p>
-
-<p class="whs6">&nbsp;</p>
-
-<ul type="disc" class="whs12">
-       
-       <li class=kadov-p><p class="whs13"><span 
- style="font-weight: bold;"><B>Source</B></span>: This set of fields allows to 
- define a source presentation on the basis of which your <span style="font-weight: bold;"><B>Stream 
- Lines </B></span>presentation will be generated. If in the <span style="font-weight: bold;"><B>Source 
- type </B></span>choose box you have chosen <span style="font-weight: bold;"><B>None</B></span>, 
- your Stream Lines presentation will be generated on all points of the 
- field. You can also choose <span style="font-weight: bold;"><B>Entity, Family, 
- Group </B></span>or <span style="font-weight: bold;"><B>Presentation. </B></span>You 
- can also specify the source presentation (from the list of already created 
- field presentations). The points of the field located on this source presentation 
- will serve as starting points for generated streamlines. </p></li>
-       
-       <li class=kadov-p><p class="whs14">In 
- the <span style="font-weight: bold;"><B>Used points</B></span> field you can 
- set the number of these starting points (from 0 to 100%).</p></li>
-       
-       <li class=kadov-p><p class="whs14"><span 
- style="font-weight: bold;"><B>Step Length</B></span>: this parameter defines 
- the size of the output line segments that make up the streamline (which 
- is represented as a polyline). </p></li>
-       
-       <li class=kadov-p><p class="whs14"><span 
- style="font-weight: bold;"><B>Integration Step </B></span>field: parameter of 
- smoothness of the stream lines. This parameter defines the accuracy of 
- construction of the streamlines. A smaller value of this parameter allows 
- to construct smoother streamlines (at the cost of more computation time).</p></li>
-       
-       <li class=kadov-p><p class="whs14"><span 
- style="font-weight: bold;"><B>Propagation Time </B></span>field: this parameter 
- controls the maximum length of the stream line (measured in units of time)</p></li>
-       
-       <li class=kadov-p><p class="whs15">Direction <span style="font-weight: normal;">choose 
- box: this option allows to select direction of the stream lines.(Forward, 
- Backward or Both)</span></p></li>
-       
-       <li class=kadov-p><p class="whs14"><span 
- style="font-weight: bold;"><B>Magnitude coloring</B></span> check box: this option 
- allows to color your presentation according the vector values applied 
- to the cells of the mesh or to display it using only one color (this color 
- can be selected if you click <span style="font-weight: bold;"><B>Use Color 
- </B></span>button).</p></li>
-</ul>
-
-<p class="whs2">&nbsp;</p>
-
-<p><span style="font-weight: bold;"><B>Scalar Bar </B></span>tab allows to define 
- the parameters of the scalar bar displayed with this presentation (<a href="scalar_map_presentation.htm#Scalar Bar">see also</a>).</p>
-
-<p>&nbsp;</p>
-
-<p class="whs2"><span style="font-family: 'Times New Roman', serif;">After 
- you have finished with setting these parameters, click <span style="font-weight: bold;"><B>OK. 
- </B></span>Your presentation with scalar bar will be immediately displayed 
- in the viewer: </span></p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs6">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../pics/streamlinesprsnt.png" x-maintain-ratio="TRUE" width="816px" height="681px" border="0" class="img_whs16"></p>
-
-<p class="whs17">&nbsp;</p>
-
-<p class="whs17">&nbsp;</p>
-
-<p class="whs17">
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;}  if (parseInt(navigator.appVersion) >=2 && typeof(PickupDialog_Invoke) == 'function') PickupDialog_Invoke(e,'','Creating field presentations','creating_field_presentations.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a>
-
-
- </p>
-
-<p class="whs17">&nbsp;</p>
-
-<p class="whs17">&nbsp;</p>
-
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")
-  WritePopupMenuLayer();
-//--></script><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/surface.htm b/doc/salome/gui/VISU/files/surface.htm
deleted file mode 100755 (executable)
index aa79d4d..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Surface</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-img_whs1 { border-style:none; border:none; width:422px; height:223px; float:none; }
--->
-</style><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<p><img src="../pics/surface.jpg" x-maintain-ratio="TRUE" width="422px" height="223px" border="0" class="img_whs1"></p>
-
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/surfaceframe.htm b/doc/salome/gui/VISU/files/surfaceframe.htm
deleted file mode 100755 (executable)
index bcfbd6d..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Surfaceframe</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-img_whs1 { border-style:none; border:none; width:422px; height:297px; }
--->
-</style><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<p><img src="../image20.jpg" width="422px" height="297px" border="0" class="img_whs1"></p>
-
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/sweeping.htm b/doc/salome/gui/VISU/files/sweeping.htm
deleted file mode 100755 (executable)
index 4bde679..0000000
+++ /dev/null
@@ -1,162 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Sweeping</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { text-align:justify; }
-p.whs2 { margin-left:0px; text-align:justify; }
-img_whs3 { border:none; width:30px; height:30px; float:none; border-style:none; }
-p.whs4 { text-align:justify; }
-p.whs5 { margin-left:40px; text-align:justify; }
--->
-</style><script type="text/javascript" language="JavaScript">
-<!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
-{
-  var strNSS = "<style type='text/css'>";
-  strNSS += "p.whs2 {margin-left:1pt; }";
-  strNSS +="</style>";
-  document.write(strNSS);
-}
-//-->
-</script>
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\n3D presentations\nViewing 3D presentations\nSweeping");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Sweeping</h1>
-
-<p class="whs2"><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3">In <span 
- style="font-weight: bold;"><B>Post-Pro</B></span> there is an option allowing 
- to display pseudo-animation of a field presentation. For creation of this 
- pseudo-animation you should take one field presentation generated on the 
- base of <span style="font-weight: bold;"><B>ONE</B></span> Time Step (for comparison, 
- <a href="animating_presentations.htm">Animation</a> &nbsp;is 
- generated on the base of <span style="font-weight: bold;"><B>ALL</B></span> Time 
- Steps of a field). The frame displaying this field presentation will be 
- the <span style="font-style: italic;"><I>basic.</I></span> <span style="font-weight: bold;"><B>Post-Pro 
- </B></span>automatically generates another frame displaying the <span style="font-style: italic;"><I>initial</I></span> 
- field presentation, which is composed of cells with <span style="font-style: italic;"><I>minimum</I></span> 
- acceptable values regarding the values applied to the cells of the <span 
- style="font-style: italic;"><I>basic</I></span> presentation. It also automatically 
- generates a user-defined number of frames (<span style="font-weight: bold;"><B>steps</B></span>), 
- which will display the process of transformation of the field presentation 
- from the <span style="font-style: italic;"><I>initial </I></span>state in the<span 
- style="font-style: italic;"><I> basic </I></span>state<span style="font-style: italic;"><I>.</I></span> 
- &nbsp;<span style="font-weight: bold;"><B>Sweeping 
- </B></span>is a type of animation composed of these frames: the frame displaying 
- the <span style="font-style: italic;"><I>initial</I></span> field presentation 
- will start the animation, the frame displaying the <span style="font-style: italic;"><I>basic</I></span> 
- field presentation will end it. </p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class=TODO
-       style="text-align: justify;"><span class=expandtext
-                                                                               style="color: #000000;"><font color=black >To sweep 
- a field presentation:</font></span></p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs5">1. <a href="creating_field_presentations.htm">Create 
- a field presentation</a>. </p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5">2. Right-click on this 
- presentation in the Object Browser or in the viewer.</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5">3. From the pop-up menu 
- select <span style="font-weight: bold;"><B>Sweep </B></span>option.</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs2">
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;}  if (parseInt(navigator.appVersion) >=2 && typeof(PickupDialog_Invoke) == 'function') PickupDialog_Invoke(e,'','Animating presentations','animating_presentations.htm','Creating field presentations','creating_field_presentations.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a>
-
-
- </p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs2">&nbsp;</p>
-
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")
-  WritePopupMenuLayer();
-//--></script><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/vectors_presentation.htm b/doc/salome/gui/VISU/files/vectors_presentation.htm
deleted file mode 100755 (executable)
index 3862f64..0000000
+++ /dev/null
@@ -1,216 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Vectors presentation</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-h1.whs1 { font-family:'Times New Roman' , serif; }
-p.whs2 { font-family:'Times New Roman' , serif; }
-img_whs3 { border:none; float:none; width:30px; height:30px; border-style:none; }
-p.whs4 { font-family:'Times New Roman' , serif; font-style:italic; color:#ff0000; margin-left:40px; }
-p.whs5 { font-family:'Times New Roman' , serif; margin-left:40px; font-style:normal; color:#000000; }
-img_whs6 { border:none; width:30px; height:25px; float:none; border-style:none; }
-img_whs7 { border:none; width:348px; height:533px; float:none; border-style:none; }
-ul.whs8 { list-style:disc; }
-p.whs9 { margin-left:36px; }
-p.whs10 { font-family:'Times New Roman' , serif; margin-left:0px; font-weight:normal; }
-p.whs11 { margin-left:60px; }
-p.whs12 { margin-left:40px; }
-img_whs13 { border:none; border-style:none; width:675px; height:690px; float:none; }
--->
-</style><script type="text/javascript" language="JavaScript">
-<!--
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
-{
-  var strNSS = "<style type='text/css'>";
-  strNSS += "p.whs10 {margin-left:1pt; }";
-  strNSS +="</style>";
-  document.write(strNSS);
-}
-//-->
-</script>
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addTocInfo("Post-Pro module\n3D presentations\nField presentations\nVectors Presentation");
-addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<h1 class="whs1">Vectors Presentation</h1>
-
-<p class="whs2"><span style="font-weight: bold;"><B><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3">Vector Field &nbsp;</B></span>presentation 
- visualizes vectors of the corresponding cells of the mesh in graphical 
- mode.</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class=TODO>To create a Vector &nbsp;presentation:</p>
-
-<p class="whs4">&nbsp;</p>
-
-<p class="whs5">- Right-click on one of the time stamps of 
- the field in the Object browser and from the pop-up menu choose <span 
- style="font-weight: bold;"><B>Vectors, </B></span>or</p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5">- Click on one of the time stamps of the field 
- in the Object browser and select from the main menu <span style="font-weight: bold;"><B>Visualization 
- &gt; Vectors</B></span>, or click <img src="../pics/vecticon.jpg" x-maintain-ratio="TRUE" width="30px" height="25px" border="0" class="img_whs6"> icon<span style="font-weight: bold;"> 
- <B></B></span>in the <span style="font-weight: bold;"><B>Visualization Toolbar.</B></span></p>
-
-<p class="whs5">&nbsp;</p>
-
-<p class="whs5"><img src="../pics/vectorfield.png" x-maintain-ratio="TRUE" width="348px" height="533px" border="0" class="img_whs7"></p>
-
-<p class="whs5">&nbsp;</p>
-
-<ul type="disc" class="whs8">
-       
-       <li class=kadov-p><p class="whs9"><span style="font-family: 'Times New Roman', serif;
-       margin-left: 0px;
-       font-weight: bold;"><B>Vectors </B></span><span style="font-family: 'Times New Roman', serif;
-                                                                                                       margin-left: 0px;
-                                                                                                       font-weight: normal;">tab 
- allows you to set additional parameters of your </span><span style="font-family: 'Times New Roman', serif;
-       margin-left: 0px;
-       font-weight: bold;"><B>Vectors </B></span><span style="font-family: 'Times New Roman', serif;
-                                                                                                       margin-left: 0px;
-                                                                                                       font-weight: normal;">presentation:</span></p></li>
-</ul>
-
-<p class="whs10">&nbsp;</p>
-
-<ul type="disc" class="whs8">
-       
-       <li class=kadov-p><p class="whs11"><span style="font-weight: bold;"><B>Scale 
- Factor:</B></span> visualization scaling of all vector values applied to the 
- cells of the mesh. </p></li>
-       
-       <li class=kadov-p><p class="whs11"><span style="font-weight: bold;"><B>Line 
- width</B></span>: width of the lines representing vectors in your presentation.</p></li>
-       
-       <li class=kadov-p><p class="whs11"><span style="font-weight: bold;"><B>Magnitude 
- coloring</B></span> check box: this option allows to color your presentation 
- according the <a href="scalar_map_presentation.htm#Scalar range">scalar 
- range</a> defined in Scalar Bar properties or to display it using only 
- one color (this color can be selected if you click <span style="font-weight: bold;"><B>Select 
- Color </B></span>button).</p></li>
-       
-       <li class=kadov-p><p class="whs11"><span style="font-weight: bold;"><B>Use 
- glyphs</B></span> check box: this option allows you to visualize vectors with 
- pointers and select their <span style="font-weight: bold;"><B>type</B></span> 
- and <span style="font-weight: bold;"><B>position </B></span>on the line of the 
- vectors<span style="font-weight: bold;"><B>.</B></span> You can choose <span 
- style="font-weight: bold;"><B>Glyph Type </B></span>(<span style="font-weight: bold;"><B>Arrows</B></span>, 
- big or small<span style="font-weight: bold;"><B> Cones</B></span>) and Glyph 
- Position (at the <span style="font-weight: bold;"><B>Tail</B></span>, at the 
- <span style="font-weight: bold;"><B>Head</B></span> or in the <span style="font-weight: bold;"><B>Center</B></span>).</p></li>
-</ul>
-
-<p>&nbsp;</p>
-
-<ul type="disc" class="whs8">
-       
-       <li class=kadov-p><p class="whs9"><span style="font-weight: bold;"><B>Scalar 
- Bar </B></span>tab allows to define the parameters of the scalar bar displayed 
- with this presentation (<a href="scalar_map_presentation.htm#Scalar Bar">see 
- also</a>).</p></li>
-</ul>
-
-<p>&nbsp;</p>
-
-<p class="whs2"><span style="font-family: 'Times New Roman', serif;">After 
- you have finished with setting these parameters, click <span style="font-weight: bold;"><B>OK. 
- </B></span>Your presentation with scalar bar will be immediately displayed 
- in the viewer: </span></p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs12">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../pics/vectorsprsnt.png" x-maintain-ratio="TRUE" width="675px" height="690px" border="0" class="img_whs13"></p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs2">&nbsp;</p>
-
-<p class="whs2">
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;}  if (parseInt(navigator.appVersion) >=2 && typeof(PickupDialog_Invoke) == 'function') PickupDialog_Invoke(e,'','Creating field presentations','creating_field_presentations.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a>
-
-
- </p>
-
-<p class="whs2">&nbsp;</p>
-
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")
-  WritePopupMenuLayer();
-//--></script><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/files/wireframe.htm b/doc/salome/gui/VISU/files/wireframe.htm
deleted file mode 100755 (executable)
index 45cf670..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<html>
-
-<head>
-<title>Wireframe</title>
-<meta http-equiv="content-type" content="text/html; charset=windows-1252">
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
-<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
-<!--
-if (navigator.appName !="Netscape")
-{   document.write("<link rel='stylesheet' href='../default.css'>");}
-//-->
-</script>
-<style type="text/css">
-<!--
-img_whs1 { border-style:none; border:none; width:422px; height:218px; float:none; }
--->
-</style><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
-<!--
-function reDo() {
-  if (innerWidth != origWidth || innerHeight != origHeight)
-     location.reload();
-}
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
-       origWidth = innerWidth;
-       origHeight = innerHeight;
-       onresize = reDo;
-}
-onerror = null; 
-//-->
-</script>
-<style type="text/css">
-<!--
-div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
-p.WebHelpNavBar { text-align:right; }
--->
-</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
-<script type="text/javascript" language="javascript" src="../whver.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.gbWhTopic)
-{
-       if (window.setRelStartPage)
-       {
-       addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
-addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
-
-       }
-
-
-       if (window.setRelStartPage)
-       {
-       setRelStartPage("../index.htm");
-
-               autoSync(1);
-               sendSyncInfo();
-               sendAveInfoOut();
-       }
-
-}
-else
-       if (window.gbIE4)
-               document.location.reload();
-//-->
-</script>
-</head>
-<body><script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(4);
-//-->
-</script>
-<p><img src="../pics/wireframe.jpg" x-maintain-ratio="TRUE" width="422px" height="218px" border="0" class="img_whs1"></p>
-
-<script type="text/javascript" language="javascript1.2">
-<!--
-if (window.writeIntopicBar)
-       writeIntopicBar(0);
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/images/activebar1.png b/doc/salome/gui/VISU/images/activebar1.png
new file mode 100755 (executable)
index 0000000..7f5cb70
Binary files /dev/null and b/doc/salome/gui/VISU/images/activebar1.png differ
diff --git a/doc/salome/gui/VISU/images/activebar2.png b/doc/salome/gui/VISU/images/activebar2.png
new file mode 100755 (executable)
index 0000000..f87adc2
Binary files /dev/null and b/doc/salome/gui/VISU/images/activebar2.png differ
index 85070152e7b9dfb000c52cd1be878c1483779621..24518926f9da71a47c9022928aa6abb32395d1f3 100644 (file)
Binary files a/doc/salome/gui/VISU/images/animation.png and b/doc/salome/gui/VISU/images/animation.png differ
index 8424e602d3a8f3488853aabb0d4e749d98b59e1f..ddbbb99b80817d689651f6db6622bf6a2966c224 100644 (file)
Binary files a/doc/salome/gui/VISU/images/arrangeactors.png and b/doc/salome/gui/VISU/images/arrangeactors.png differ
index 560272fa7228c9b5e509eb85905698c3d357f6d4..749a6303c1dc37caef49f31f85b4f31583ca62ba 100644 (file)
Binary files a/doc/salome/gui/VISU/images/arrangeactors1.png and b/doc/salome/gui/VISU/images/arrangeactors1.png differ
index 6bc74cec101b76e103f39ca67dec2d8ec54ead45..f095a330c1fc8ab1a5033865b01baefc56e4d0bf 100644 (file)
Binary files a/doc/salome/gui/VISU/images/barproperty.png and b/doc/salome/gui/VISU/images/barproperty.png differ
index 8d1b1858e814df45608a2d51c24182d47aadc673..679cfb4106b32a790ef99f5c2a26606a92bd67e0 100644 (file)
Binary files a/doc/salome/gui/VISU/images/buildprogress.png and b/doc/salome/gui/VISU/images/buildprogress.png differ
index 0c60603673acba1b9ab5e1017bb5a44eaa73dc51..2c52fccaa185e71e3e7616a8ed5cd27aad3984ac 100644 (file)
Binary files a/doc/salome/gui/VISU/images/clipping1.png and b/doc/salome/gui/VISU/images/clipping1.png differ
index ea114065cb57c3cf9fac47be9ee2e31860a4fbb1..64fce9b8dfb045dbe0e791f410c39059d6abb282 100644 (file)
Binary files a/doc/salome/gui/VISU/images/clipping2.png and b/doc/salome/gui/VISU/images/clipping2.png differ
diff --git a/doc/salome/gui/VISU/images/clipping3.png b/doc/salome/gui/VISU/images/clipping3.png
new file mode 100755 (executable)
index 0000000..2c31462
Binary files /dev/null and b/doc/salome/gui/VISU/images/clipping3.png differ
diff --git a/doc/salome/gui/VISU/images/clipping4.png b/doc/salome/gui/VISU/images/clipping4.png
new file mode 100755 (executable)
index 0000000..42dcc1c
Binary files /dev/null and b/doc/salome/gui/VISU/images/clipping4.png differ
diff --git a/doc/salome/gui/VISU/images/clipping5.png b/doc/salome/gui/VISU/images/clipping5.png
new file mode 100755 (executable)
index 0000000..c4ce0f9
Binary files /dev/null and b/doc/salome/gui/VISU/images/clipping5.png differ
index 82b50a06c5c3c4ab889f84a679510c411bc54902..20b93a3873fd2eda3e8b9f33149874f7126b37d5 100644 (file)
Binary files a/doc/salome/gui/VISU/images/createcurves.png and b/doc/salome/gui/VISU/images/createcurves.png differ
index 3db09092b68e7bb209f49061bd1777a0f2df066c..11a013276d6b7f9e6f90f66ca7adb50762003255 100644 (file)
Binary files a/doc/salome/gui/VISU/images/cutlines.png and b/doc/salome/gui/VISU/images/cutlines.png differ
index 579332ac1636616bb0d23db7a3cee842c1f08c98..452cbe0b7d1d1f7bc0b7f8a300fecf5b4a633d1b 100644 (file)
Binary files a/doc/salome/gui/VISU/images/cutplanes.png and b/doc/salome/gui/VISU/images/cutplanes.png differ
diff --git a/doc/salome/gui/VISU/images/deformed_shape.png b/doc/salome/gui/VISU/images/deformed_shape.png
new file mode 100755 (executable)
index 0000000..58f7ee6
Binary files /dev/null and b/doc/salome/gui/VISU/images/deformed_shape.png differ
index aea062713810177aa42c006703c59dd0357a5ed6..00107971236736ca2ea129da3593aef3afce70dd 100644 (file)
Binary files a/doc/salome/gui/VISU/images/deformedshape.png and b/doc/salome/gui/VISU/images/deformedshape.png differ
diff --git a/doc/salome/gui/VISU/images/distributionbar.png b/doc/salome/gui/VISU/images/distributionbar.png
new file mode 100755 (executable)
index 0000000..ad77259
Binary files /dev/null and b/doc/salome/gui/VISU/images/distributionbar.png differ
index d67e2c0ae194399f855e26cd7bb69b572ae8c503..b2639a9a8e527d742f95292f03f4375f6682b317 100644 (file)
Binary files a/doc/salome/gui/VISU/images/dumpviewtofile.png and b/doc/salome/gui/VISU/images/dumpviewtofile.png differ
index 43ac17d4f657ee39a4376fe41c073a8c1c445134..79487872faa36316f71de55ee32255eace3ccb64 100644 (file)
Binary files a/doc/salome/gui/VISU/images/editplot2dpresentation.png and b/doc/salome/gui/VISU/images/editplot2dpresentation.png differ
diff --git a/doc/salome/gui/VISU/images/editplot3dpresentation.png b/doc/salome/gui/VISU/images/editplot3dpresentation.png
new file mode 100755 (executable)
index 0000000..0c78624
Binary files /dev/null and b/doc/salome/gui/VISU/images/editplot3dpresentation.png differ
diff --git a/doc/salome/gui/VISU/images/exportmedfile.png b/doc/salome/gui/VISU/images/exportmedfile.png
new file mode 100644 (file)
index 0000000..c2fc56f
Binary files /dev/null and b/doc/salome/gui/VISU/images/exportmedfile.png differ
index 7b3a42e7626a02f5248fa2644a2cb4434d7dee17..edf5b574fa7b33ab80bac3c1e0c21224e4b1d15d 100644 (file)
Binary files a/doc/salome/gui/VISU/images/exporttable.png and b/doc/salome/gui/VISU/images/exporttable.png differ
diff --git a/doc/salome/gui/VISU/images/featureedges.png b/doc/salome/gui/VISU/images/featureedges.png
new file mode 100755 (executable)
index 0000000..47cde49
Binary files /dev/null and b/doc/salome/gui/VISU/images/featureedges.png differ
diff --git a/doc/salome/gui/VISU/images/fieldpres1.png b/doc/salome/gui/VISU/images/fieldpres1.png
new file mode 100644 (file)
index 0000000..3b2a68e
Binary files /dev/null and b/doc/salome/gui/VISU/images/fieldpres1.png differ
diff --git a/doc/salome/gui/VISU/images/fieldpres2.png b/doc/salome/gui/VISU/images/fieldpres2.png
new file mode 100644 (file)
index 0000000..03c2338
Binary files /dev/null and b/doc/salome/gui/VISU/images/fieldpres2.png differ
diff --git a/doc/salome/gui/VISU/images/fieldpres3.png b/doc/salome/gui/VISU/images/fieldpres3.png
new file mode 100644 (file)
index 0000000..9f2eff0
Binary files /dev/null and b/doc/salome/gui/VISU/images/fieldpres3.png differ
index be4c24df46839200d2dd14c85b02261debdfb5ef..98030f15e2e17ffdfc883cf271b4b3de15e19c85 100644 (file)
Binary files a/doc/salome/gui/VISU/images/fitdatarange.png and b/doc/salome/gui/VISU/images/fitdatarange.png differ
diff --git a/doc/salome/gui/VISU/images/gauss_points.png b/doc/salome/gui/VISU/images/gauss_points.png
new file mode 100755 (executable)
index 0000000..9641fa0
Binary files /dev/null and b/doc/salome/gui/VISU/images/gauss_points.png differ
index 1562d03f3f2c273f59a37c1082195a7e8d5829f1..fc879b42d9994e22ac026d824ad06001949e84f4 100644 (file)
Binary files a/doc/salome/gui/VISU/images/gpp2.png and b/doc/salome/gui/VISU/images/gpp2.png differ
index 128e22bb13032178e5e3dc03cd14bfd746a70624..cc3275d8088efa0fe6cf12ab5f1d11c3fb2f3765 100644 (file)
Binary files a/doc/salome/gui/VISU/images/gpp3.png and b/doc/salome/gui/VISU/images/gpp3.png differ
diff --git a/doc/salome/gui/VISU/images/header_salome.png b/doc/salome/gui/VISU/images/header_salome.png
new file mode 100755 (executable)
index 0000000..8dbdbb2
Binary files /dev/null and b/doc/salome/gui/VISU/images/header_salome.png differ
diff --git a/doc/salome/gui/VISU/images/header_visu.png b/doc/salome/gui/VISU/images/header_visu.png
new file mode 100755 (executable)
index 0000000..8a190dd
Binary files /dev/null and b/doc/salome/gui/VISU/images/header_visu.png differ
diff --git a/doc/salome/gui/VISU/images/image1.jpg b/doc/salome/gui/VISU/images/image1.jpg
deleted file mode 100644 (file)
index b510c20..0000000
Binary files a/doc/salome/gui/VISU/images/image1.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/images/image102.gif b/doc/salome/gui/VISU/images/image102.gif
deleted file mode 100644 (file)
index 4a4900f..0000000
Binary files a/doc/salome/gui/VISU/images/image102.gif and /dev/null differ
index dc926bc27641cbabb94b0a4a526e9bf650fd2757..0c78624e9d3b0dddf0b6d9d3d51ca594c5784a55 100644 (file)
Binary files a/doc/salome/gui/VISU/images/image13.gif and b/doc/salome/gui/VISU/images/image13.gif differ
index 5ac78adfdb26fe723e149ef80fac98bb055601c2..8f721bbb9c831bbd53424910fbe4acf5d729dd26 100644 (file)
Binary files a/doc/salome/gui/VISU/images/image18.gif and b/doc/salome/gui/VISU/images/image18.gif differ
diff --git a/doc/salome/gui/VISU/images/image2.jpg b/doc/salome/gui/VISU/images/image2.jpg
deleted file mode 100644 (file)
index 14d0076..0000000
Binary files a/doc/salome/gui/VISU/images/image2.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/images/image20.gif b/doc/salome/gui/VISU/images/image20.gif
deleted file mode 100644 (file)
index ce95d95..0000000
Binary files a/doc/salome/gui/VISU/images/image20.gif and /dev/null differ
index 2658973f38f861675af939b30d00e59a650a47f7..1d4889e8d490043b43582fa97361ce1035950e40 100644 (file)
Binary files a/doc/salome/gui/VISU/images/image20.png and b/doc/salome/gui/VISU/images/image20.png differ
index 6d7f71517fd537564e0b508f8a9cb89f13cf60f6..57d5c012f5533846580848e98c67f41f0ac99df9 100644 (file)
Binary files a/doc/salome/gui/VISU/images/image21.png and b/doc/salome/gui/VISU/images/image21.png differ
diff --git a/doc/salome/gui/VISU/images/image23.gif b/doc/salome/gui/VISU/images/image23.gif
deleted file mode 100644 (file)
index 2340bc7..0000000
Binary files a/doc/salome/gui/VISU/images/image23.gif and /dev/null differ
index 81facca9d37277ea31aaa1fa59c5c1e0fb71d4f6..fe6a5996bbc04bd5a7f6ab445699604512b4e83b 100644 (file)
Binary files a/doc/salome/gui/VISU/images/image27.gif and b/doc/salome/gui/VISU/images/image27.gif differ
diff --git a/doc/salome/gui/VISU/images/image3.jpg b/doc/salome/gui/VISU/images/image3.jpg
deleted file mode 100644 (file)
index ba11447..0000000
Binary files a/doc/salome/gui/VISU/images/image3.jpg and /dev/null differ
index 4194350e983267133058c2456b0aa0eb6facd1e8..2d7ab871a02ece511a0632d54777904fda90c0cf 100644 (file)
Binary files a/doc/salome/gui/VISU/images/image31.gif and b/doc/salome/gui/VISU/images/image31.gif differ
index 8c20450c40bc47ff70f3feda83e63dc247041fbd..6f86056981f2364fd2bdcd9f45ef16c7cfa7574c 100644 (file)
Binary files a/doc/salome/gui/VISU/images/image31.jpg and b/doc/salome/gui/VISU/images/image31.jpg differ
index 5d7498c80655a5b61f56ef860a56933f9bd517b3..08250848e5ad69de2e3308eacd8c908fe95ecd51 100644 (file)
Binary files a/doc/salome/gui/VISU/images/image33.jpg and b/doc/salome/gui/VISU/images/image33.jpg differ
diff --git a/doc/salome/gui/VISU/images/image36.gif b/doc/salome/gui/VISU/images/image36.gif
new file mode 100755 (executable)
index 0000000..84d5e16
Binary files /dev/null and b/doc/salome/gui/VISU/images/image36.gif differ
diff --git a/doc/salome/gui/VISU/images/image4.jpg b/doc/salome/gui/VISU/images/image4.jpg
deleted file mode 100644 (file)
index 1f2bec2..0000000
Binary files a/doc/salome/gui/VISU/images/image4.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/images/image5.jpg b/doc/salome/gui/VISU/images/image5.jpg
deleted file mode 100644 (file)
index 94f30a8..0000000
Binary files a/doc/salome/gui/VISU/images/image5.jpg and /dev/null differ
index af51e7184dd19bb16629f14f70b52088bf71feb9..fae17a5b21659326cb6ac06f40b9bb2481b967b1 100644 (file)
Binary files a/doc/salome/gui/VISU/images/importfromfile.png and b/doc/salome/gui/VISU/images/importfromfile.png differ
index 7cd6a28d3013b785ad616434c6af2a75e7ff6190..7f98fb1c189cdc6817f91c57324eace4938aeeaa 100644 (file)
Binary files a/doc/salome/gui/VISU/images/importtablefromfile.png and b/doc/salome/gui/VISU/images/importtablefromfile.png differ
diff --git a/doc/salome/gui/VISU/images/introduction.png b/doc/salome/gui/VISU/images/introduction.png
new file mode 100755 (executable)
index 0000000..85ea848
Binary files /dev/null and b/doc/salome/gui/VISU/images/introduction.png differ
index f431d63e8403292a17b52c5e91cb247648807834..358dc90650eec72ea181d7744713afa5dd370855 100644 (file)
Binary files a/doc/salome/gui/VISU/images/isosurfaces.png and b/doc/salome/gui/VISU/images/isosurfaces.png differ
diff --git a/doc/salome/gui/VISU/images/labeling_parameters.png b/doc/salome/gui/VISU/images/labeling_parameters.png
new file mode 100644 (file)
index 0000000..58ae411
Binary files /dev/null and b/doc/salome/gui/VISU/images/labeling_parameters.png differ
diff --git a/doc/salome/gui/VISU/images/neo-transparency.png b/doc/salome/gui/VISU/images/neo-transparency.png
deleted file mode 100644 (file)
index ec1fb7f..0000000
Binary files a/doc/salome/gui/VISU/images/neo-transparency.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/images/perspective1.png b/doc/salome/gui/VISU/images/perspective1.png
new file mode 100755 (executable)
index 0000000..fff1f73
Binary files /dev/null and b/doc/salome/gui/VISU/images/perspective1.png differ
diff --git a/doc/salome/gui/VISU/images/perspective2.png b/doc/salome/gui/VISU/images/perspective2.png
new file mode 100755 (executable)
index 0000000..c9685e7
Binary files /dev/null and b/doc/salome/gui/VISU/images/perspective2.png differ
diff --git a/doc/salome/gui/VISU/images/perspective3.png b/doc/salome/gui/VISU/images/perspective3.png
new file mode 100755 (executable)
index 0000000..10fcf01
Binary files /dev/null and b/doc/salome/gui/VISU/images/perspective3.png differ
diff --git a/doc/salome/gui/VISU/images/perspective4.png b/doc/salome/gui/VISU/images/perspective4.png
new file mode 100755 (executable)
index 0000000..9255ec4
Binary files /dev/null and b/doc/salome/gui/VISU/images/perspective4.png differ
diff --git a/doc/salome/gui/VISU/images/perspective5.png b/doc/salome/gui/VISU/images/perspective5.png
new file mode 100755 (executable)
index 0000000..c8e4732
Binary files /dev/null and b/doc/salome/gui/VISU/images/perspective5.png differ
diff --git a/doc/salome/gui/VISU/images/perspective6.png b/doc/salome/gui/VISU/images/perspective6.png
new file mode 100755 (executable)
index 0000000..45fe5c3
Binary files /dev/null and b/doc/salome/gui/VISU/images/perspective6.png differ
index e2711dd0d5efb113549aefbb9f9d6b426cdd8da1..27f85fe756af401b8b9133d00d1314191855e2cf 100644 (file)
Binary files a/doc/salome/gui/VISU/images/plot3d-example.png and b/doc/salome/gui/VISU/images/plot3d-example.png differ
index f04ce94c45505fbfe42f56f093940ffc4b31d211..90b9e5ee644b198782982170e5c2e9a18114d880 100644 (file)
Binary files a/doc/salome/gui/VISU/images/plot3d.png and b/doc/salome/gui/VISU/images/plot3d.png differ
diff --git a/doc/salome/gui/VISU/images/presentation1.png b/doc/salome/gui/VISU/images/presentation1.png
new file mode 100755 (executable)
index 0000000..b94ae19
Binary files /dev/null and b/doc/salome/gui/VISU/images/presentation1.png differ
index 272386ae7ca23b72f9387cf66f58248c6212977d..512bf4fcc8c1d9ec86c6dc681f94661274a85955 100644 (file)
Binary files a/doc/salome/gui/VISU/images/recording.png and b/doc/salome/gui/VISU/images/recording.png differ
index 28dac73cf650a178a8df6b405901d6164b3789d6..5514f0f6dac764b028c5fe0ecaf7089513875130 100644 (file)
Binary files a/doc/salome/gui/VISU/images/recordingsaveas.png and b/doc/salome/gui/VISU/images/recordingsaveas.png differ
diff --git a/doc/salome/gui/VISU/images/scalar_map_and_deformed_shapes.png b/doc/salome/gui/VISU/images/scalar_map_and_deformed_shapes.png
new file mode 100755 (executable)
index 0000000..c6fa34f
Binary files /dev/null and b/doc/salome/gui/VISU/images/scalar_map_and_deformed_shapes.png differ
diff --git a/doc/salome/gui/VISU/images/scalar_map_on_cells.png b/doc/salome/gui/VISU/images/scalar_map_on_cells.png
new file mode 100755 (executable)
index 0000000..9cf7eb6
Binary files /dev/null and b/doc/salome/gui/VISU/images/scalar_map_on_cells.png differ
diff --git a/doc/salome/gui/VISU/images/scalar_map_on_points.png b/doc/salome/gui/VISU/images/scalar_map_on_points.png
new file mode 100755 (executable)
index 0000000..fee321f
Binary files /dev/null and b/doc/salome/gui/VISU/images/scalar_map_on_points.png differ
index b60ed8988ad552a4b04bf063ba75cf34bfa49750..318497db8ae0e169a667995dd014ec206cbee0ce 100644 (file)
Binary files a/doc/salome/gui/VISU/images/scalarbarproperties.png and b/doc/salome/gui/VISU/images/scalarbarproperties.png differ
diff --git a/doc/salome/gui/VISU/images/selection1.png b/doc/salome/gui/VISU/images/selection1.png
new file mode 100755 (executable)
index 0000000..8739308
Binary files /dev/null and b/doc/salome/gui/VISU/images/selection1.png differ
diff --git a/doc/salome/gui/VISU/images/selection2.png b/doc/salome/gui/VISU/images/selection2.png
new file mode 100755 (executable)
index 0000000..4c7d555
Binary files /dev/null and b/doc/salome/gui/VISU/images/selection2.png differ
diff --git a/doc/salome/gui/VISU/images/selection3.png b/doc/salome/gui/VISU/images/selection3.png
new file mode 100755 (executable)
index 0000000..9ac6c09
Binary files /dev/null and b/doc/salome/gui/VISU/images/selection3.png differ
diff --git a/doc/salome/gui/VISU/images/selection4.png b/doc/salome/gui/VISU/images/selection4.png
new file mode 100755 (executable)
index 0000000..b6d7688
Binary files /dev/null and b/doc/salome/gui/VISU/images/selection4.png differ
diff --git a/doc/salome/gui/VISU/images/selection5.png b/doc/salome/gui/VISU/images/selection5.png
new file mode 100755 (executable)
index 0000000..81206af
Binary files /dev/null and b/doc/salome/gui/VISU/images/selection5.png differ
diff --git a/doc/salome/gui/VISU/images/selection6.png b/doc/salome/gui/VISU/images/selection6.png
new file mode 100755 (executable)
index 0000000..933c2d7
Binary files /dev/null and b/doc/salome/gui/VISU/images/selection6.png differ
diff --git a/doc/salome/gui/VISU/images/selection7.png b/doc/salome/gui/VISU/images/selection7.png
new file mode 100755 (executable)
index 0000000..c24b481
Binary files /dev/null and b/doc/salome/gui/VISU/images/selection7.png differ
diff --git a/doc/salome/gui/VISU/images/selection8.png b/doc/salome/gui/VISU/images/selection8.png
new file mode 100755 (executable)
index 0000000..eb2e12e
Binary files /dev/null and b/doc/salome/gui/VISU/images/selection8.png differ
index 032b6ab2d8138928427accc9b0957f3a9e70698e..3edad69329e315683bf2aa146a7d03f54f21c788 100755 (executable)
Binary files a/doc/salome/gui/VISU/images/setupanimation1.png and b/doc/salome/gui/VISU/images/setupanimation1.png differ
index f115846ee6acbef56059da8dce2637aece883a9d..878dfca0f5e42cabf2798727be11b38fe5a97855 100755 (executable)
Binary files a/doc/salome/gui/VISU/images/setupanimation2.png and b/doc/salome/gui/VISU/images/setupanimation2.png differ
diff --git a/doc/salome/gui/VISU/images/slider1.png b/doc/salome/gui/VISU/images/slider1.png
new file mode 100755 (executable)
index 0000000..4b3e1a7
Binary files /dev/null and b/doc/salome/gui/VISU/images/slider1.png differ
diff --git a/doc/salome/gui/VISU/images/slider2.png b/doc/salome/gui/VISU/images/slider2.png
new file mode 100755 (executable)
index 0000000..3616cb3
Binary files /dev/null and b/doc/salome/gui/VISU/images/slider2.png differ
index 24c5feda71d28271be6e63a1388b1b6aaa3cea20..43abae313e558a50846b5e17642746e7ff6f1d95 100644 (file)
Binary files a/doc/salome/gui/VISU/images/smds1.png and b/doc/salome/gui/VISU/images/smds1.png differ
diff --git a/doc/salome/gui/VISU/images/startrecording.png b/doc/salome/gui/VISU/images/startrecording.png
new file mode 100755 (executable)
index 0000000..880eb55
Binary files /dev/null and b/doc/salome/gui/VISU/images/startrecording.png differ
diff --git a/doc/salome/gui/VISU/images/stream_lines.png b/doc/salome/gui/VISU/images/stream_lines.png
new file mode 100755 (executable)
index 0000000..2d239ca
Binary files /dev/null and b/doc/salome/gui/VISU/images/stream_lines.png differ
index 1cdd9fe92d1fe964195999c4043da16342e04f28..8cacd750d52b831c4c82632c71fc5a61aef554c8 100644 (file)
Binary files a/doc/salome/gui/VISU/images/streamlines.png and b/doc/salome/gui/VISU/images/streamlines.png differ
diff --git a/doc/salome/gui/VISU/images/sweep1.png b/doc/salome/gui/VISU/images/sweep1.png
new file mode 100755 (executable)
index 0000000..8c2e864
Binary files /dev/null and b/doc/salome/gui/VISU/images/sweep1.png differ
diff --git a/doc/salome/gui/VISU/images/sweep2.png b/doc/salome/gui/VISU/images/sweep2.png
new file mode 100755 (executable)
index 0000000..7b9c3f5
Binary files /dev/null and b/doc/salome/gui/VISU/images/sweep2.png differ
diff --git a/doc/salome/gui/VISU/images/table.png b/doc/salome/gui/VISU/images/table.png
new file mode 100644 (file)
index 0000000..7a7d2ce
Binary files /dev/null and b/doc/salome/gui/VISU/images/table.png differ
diff --git a/doc/salome/gui/VISU/images/table3d.png b/doc/salome/gui/VISU/images/table3d.png
new file mode 100644 (file)
index 0000000..b285a16
Binary files /dev/null and b/doc/salome/gui/VISU/images/table3d.png differ
diff --git a/doc/salome/gui/VISU/images/tablesn1.png b/doc/salome/gui/VISU/images/tablesn1.png
new file mode 100644 (file)
index 0000000..4db643e
Binary files /dev/null and b/doc/salome/gui/VISU/images/tablesn1.png differ
diff --git a/doc/salome/gui/VISU/images/tablesn2.png b/doc/salome/gui/VISU/images/tablesn2.png
new file mode 100644 (file)
index 0000000..4b3b85d
Binary files /dev/null and b/doc/salome/gui/VISU/images/tablesn2.png differ
index d521459b66808c0e576d55f51ca812718f71ac61..8d25201a13a33f9bc065107f49ba6e2b437dbd34 100644 (file)
Binary files a/doc/salome/gui/VISU/images/textproperty.png and b/doc/salome/gui/VISU/images/textproperty.png differ
index f68ac955d6a5dc94875193c0e3ba550f3fe1cae9..ca430da36bc0a0e25c56fcdff25490a650341501 100644 (file)
Binary files a/doc/salome/gui/VISU/images/translatepres.png and b/doc/salome/gui/VISU/images/translatepres.png differ
diff --git a/doc/salome/gui/VISU/images/values_labeling.png b/doc/salome/gui/VISU/images/values_labeling.png
new file mode 100644 (file)
index 0000000..056b1f1
Binary files /dev/null and b/doc/salome/gui/VISU/images/values_labeling.png differ
index 1c6de4d7fb370e27577bc1b5fc473ab06b6be2db..0a8ac3239f50cb75053900563fb70abd58d03e8a 100644 (file)
Binary files a/doc/salome/gui/VISU/images/vectorfield.png and b/doc/salome/gui/VISU/images/vectorfield.png differ
diff --git a/doc/salome/gui/VISU/images/vectors.png b/doc/salome/gui/VISU/images/vectors.png
new file mode 100755 (executable)
index 0000000..156628d
Binary files /dev/null and b/doc/salome/gui/VISU/images/vectors.png differ
diff --git a/doc/salome/gui/VISU/images/viewing1.png b/doc/salome/gui/VISU/images/viewing1.png
new file mode 100755 (executable)
index 0000000..4a5450b
Binary files /dev/null and b/doc/salome/gui/VISU/images/viewing1.png differ
diff --git a/doc/salome/gui/VISU/images/viewing10.png b/doc/salome/gui/VISU/images/viewing10.png
new file mode 100755 (executable)
index 0000000..52d4ac2
Binary files /dev/null and b/doc/salome/gui/VISU/images/viewing10.png differ
diff --git a/doc/salome/gui/VISU/images/viewing11.png b/doc/salome/gui/VISU/images/viewing11.png
new file mode 100755 (executable)
index 0000000..957319e
Binary files /dev/null and b/doc/salome/gui/VISU/images/viewing11.png differ
diff --git a/doc/salome/gui/VISU/images/viewing12.png b/doc/salome/gui/VISU/images/viewing12.png
new file mode 100755 (executable)
index 0000000..b0ead38
Binary files /dev/null and b/doc/salome/gui/VISU/images/viewing12.png differ
diff --git a/doc/salome/gui/VISU/images/viewing13.png b/doc/salome/gui/VISU/images/viewing13.png
new file mode 100755 (executable)
index 0000000..76bd8d5
Binary files /dev/null and b/doc/salome/gui/VISU/images/viewing13.png differ
diff --git a/doc/salome/gui/VISU/images/viewing14.png b/doc/salome/gui/VISU/images/viewing14.png
new file mode 100755 (executable)
index 0000000..0922b98
Binary files /dev/null and b/doc/salome/gui/VISU/images/viewing14.png differ
diff --git a/doc/salome/gui/VISU/images/viewing2.png b/doc/salome/gui/VISU/images/viewing2.png
new file mode 100755 (executable)
index 0000000..4426d1d
Binary files /dev/null and b/doc/salome/gui/VISU/images/viewing2.png differ
diff --git a/doc/salome/gui/VISU/images/viewing3.png b/doc/salome/gui/VISU/images/viewing3.png
new file mode 100755 (executable)
index 0000000..e237f85
Binary files /dev/null and b/doc/salome/gui/VISU/images/viewing3.png differ
diff --git a/doc/salome/gui/VISU/images/viewing4.png b/doc/salome/gui/VISU/images/viewing4.png
new file mode 100755 (executable)
index 0000000..b32a9f5
Binary files /dev/null and b/doc/salome/gui/VISU/images/viewing4.png differ
diff --git a/doc/salome/gui/VISU/images/viewing5.png b/doc/salome/gui/VISU/images/viewing5.png
new file mode 100755 (executable)
index 0000000..51d36b1
Binary files /dev/null and b/doc/salome/gui/VISU/images/viewing5.png differ
diff --git a/doc/salome/gui/VISU/images/viewing6.png b/doc/salome/gui/VISU/images/viewing6.png
new file mode 100755 (executable)
index 0000000..70fd9a5
Binary files /dev/null and b/doc/salome/gui/VISU/images/viewing6.png differ
diff --git a/doc/salome/gui/VISU/images/viewing7.png b/doc/salome/gui/VISU/images/viewing7.png
new file mode 100755 (executable)
index 0000000..43c6ab0
Binary files /dev/null and b/doc/salome/gui/VISU/images/viewing7.png differ
diff --git a/doc/salome/gui/VISU/images/viewing8.png b/doc/salome/gui/VISU/images/viewing8.png
new file mode 100755 (executable)
index 0000000..21ee234
Binary files /dev/null and b/doc/salome/gui/VISU/images/viewing8.png differ
diff --git a/doc/salome/gui/VISU/images/viewing9.png b/doc/salome/gui/VISU/images/viewing9.png
new file mode 100755 (executable)
index 0000000..74d85b3
Binary files /dev/null and b/doc/salome/gui/VISU/images/viewing9.png differ
index 8aca30d4aa884c887c353ba557893e97189de004..13a0e5da3db65786103f013789269b92899068ec 100644 (file)
Binary files a/doc/salome/gui/VISU/images/viewtable.png and b/doc/salome/gui/VISU/images/viewtable.png differ
index cc98df07236c39ed3e5dd9ab58209b261e90a266..22e82419f4ccf45b5fe49263887c8e6af5a94afe 100644 (file)
Binary files a/doc/salome/gui/VISU/images/visufullscreen.png and b/doc/salome/gui/VISU/images/visufullscreen.png differ
index 8489eef2e0dc87f435cc6db4a207ea59e467e2a4..8a190ddf958b5e1dbd167f57109fbee7b92566a3 100644 (file)
Binary files a/doc/salome/gui/VISU/images/visuicon.jpg and b/doc/salome/gui/VISU/images/visuicon.jpg differ
diff --git a/doc/salome/gui/VISU/images/visuicon.png b/doc/salome/gui/VISU/images/visuicon.png
new file mode 100755 (executable)
index 0000000..11e7e52
Binary files /dev/null and b/doc/salome/gui/VISU/images/visuicon.png differ
diff --git a/doc/salome/gui/VISU/input/3d_management.doc b/doc/salome/gui/VISU/input/3d_management.doc
new file mode 100755 (executable)
index 0000000..6705d8f
--- /dev/null
@@ -0,0 +1,53 @@
+/*!
+
+\page a3d_management_page Managing 3D Presentations
+
+After the 3D presentation is created, it can be edited or submitted to
+various post-processing operations. 
+
+The operations connected with the presentation-handling in the VTK
+Viewer and in the Object Browser via context menus are described in
+\subpage viewing_3d_presentations_page "Viewing 3D presentations" section.
+
+Some more specific functionalities are available via dockable windows
+accessed from the Main menu <b>View -> Windows </b>
+
+\image html presentation1.png
+
+<ul>
+<li><b> Object Browser</b> - hides and displays the Object browser
+used for management of objects created or imported into Salome application</li>
+<li><b> Python Console</b> - hides and displays the Python console,
+which is a window for Pytho0n interpreter.</li>
+<li> \subpage slider_page - used for animation of presentations created on
+all timestamps of a field.</li>
+<li> \subpage sweeping_page "Sweep" -  used for pseudo-animation of presentations created on
+one timestamp of a field.</li>
+<li> \subpage clipping_page "Clipping Planes" - allows to create cross-section of
+the presentation.</li> 
+<li> \subpage selection_info_page "Selection" - allows to view the
+attributes of elements displayed in the viewer.</li>
+<li> \subpage feature_edges_page "Feature Edges" - allows to choose the
+edges selectable for <b>Feature Edges</b> functionality.</li>
+</ul>
+
+Other important presentation management functionalities characteristic for Post-Pro
+module are:
+<ul>
+<li> \subpage animating_page - another way of animation of
+presentations on fields. </li>
+<li> \subpage translate_presentation_page - displacement of
+presentations in the viewer.</li>
+<li> \subpage recording_page - allows to dump user actions in an AVI
+file. </li>
+<li> \subpage navigation_page - about advanced user operation modes in the
+VTK viewer (using keyboard only, mouse only or spacemouse). </li> 
+<li> \subpage perspective_view_page and the possibility to set camera
+position and focal point of the scene manually provide flexibility of
+viewing the presentation.</li> 
+</ul>
+
+
+
+*/
+
diff --git a/doc/salome/gui/VISU/input/3d_presentations.doc b/doc/salome/gui/VISU/input/3d_presentations.doc
new file mode 100755 (executable)
index 0000000..e5b7033
--- /dev/null
@@ -0,0 +1,19 @@
+/*!
+
+\page a3d_presentations_page 3D presentations
+
+\image html introduction.png "Example of a 3D presentation"
+
+\b Post Pro module provides several types of 3D presentations,
+visualizing the structure of MED objects. All
+presentations can be seen only in Salome VTK Viewer (ALT+K).
+\n All presentation types could be divided in two main groups:
+<ul>
+        <li>\subpage presentation_of_submesh_page "3D presentation on submesh" - can be created on a submesh. </li>
+        <li>\subpage field_presentations_page "3D presentations on fields" - can be created on fields and timestamps</li> 
+</ul>
+
+Created presentations can be edited, animaded, recorded and viewed in
+different modes. The whole range of such operations is described in \subpage 3d_management_page "Managment of presentations" section.
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/input/a3d_presentations.doc b/doc/salome/gui/VISU/input/a3d_presentations.doc
deleted file mode 100644 (file)
index 852bb5a..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-/*!
-
-\page a3d_presentations_page 3D presentations
-
-<ul>
-<li>\subpage presentation_of_submesh_page</li>
-<li>\subpage field_presentations_page</li>
-<ul>
-<li>\ref creating_field_presentations_page</li>
-<li>\ref scalar_map_page</li>
-<li>\ref iso_surfaces_page</li>
-<li>\ref cut_lines_page</li>
-<li>\ref cut_planes_page</li>
-<li>\ref deformed_shape_page</li>
-<li>\ref vectors_page</li>
-<li>\ref stream_lines_page</li>
-<li>\ref scalar_map_on_deformed_shape_page</li>
-<li>\ref plot_3d_page</li>
-<li>\ref animating_page</li>
-<li>\ref gauss_points_presentations_page</li>
-<ul>
-<li>\ref creating_gauss_points_presentation_page</li>
-<li>\ref primitive_types_page</li>
-<li>\ref types_of_gauss_points_presentations_page</li>
-<li>\ref scalar_bar_page</li>
-<li>\ref gauss_viewer_page</li>
-<li>\ref navigation_in_gauss_viewer_page</li>
-<li>\ref picking_page</li>
-<li>\ref segmentation_page</li>
-<li>\ref recording_in_gauss_viewer_page</li>
-</ul>
-</ul>
-<li>\subpage viewing_3d_presentations_page</li>
-<ul>
-<li>\ref viewing_3d_presentations_intro_page</li>
-<li>\ref translate_presentation_page</li>
-<li>\ref clipping_page</li>
-<li>\ref sweeping_page</li>
-<li>\ref selection_info_page</li>
-</ul>
-</ul>
-
-*/
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/input/about_tables.doc b/doc/salome/gui/VISU/input/about_tables.doc
deleted file mode 100644 (file)
index d33b751..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-/*!
-
-\page about_tables_page About tables
-
-\n Functionality of \b Post-Pro component allows to import data tables
-and display them in a special table viewer. \b Tables represent
-column-ranged data with \b units and \b column and <b>row titles</b> (\ref displaying_tables_page "see also").
-
-\note Tables can be \b rarefied - some of the cells may be empty,
-without any values.
-
-In \b Post-Pro there are three methods to import tables:
-<ul>
-<li>\ref importing_exporting_tables_page "Importing tables from *.xls, *.txt or *.tab files, which have been previously created"</li>
-
-<li>\ref creating_tables_from_cut_lines_page "Creating tables on the basis of Cut Lines presentations"</li>
-
-<li>Importing tables with the help of a special Python script (not described in this reference manual)</li>
-</ul>
-
-*/
\ No newline at end of file
index dd903fdb5a6d469c589b04ec64309e4d56f7e3f3..09afa84ce6ad2dc2105d96ba8ea50efc90b2f728 100644 (file)
@@ -1,30 +1,36 @@
 /*!
 
-\page animating_page Animating presentations
+\page animating_page Animation
+
+\image html animatdef.jpg "Example of Animation presentations for deformed shape"
 
 \n In \b Post-Pro module you can generate real-time animation of
 fields. In comparison with sweeping, animations are created on the
 base of frames, displaying field presentations generated on \b EVERY
-Time Stamp of your field. So, the frame displaying the field
-presentation created on the base of the first time stamp will begin
+timestamp of your field. So, the frame displaying the field
+presentation created on the base of the first timestamp will begin
 your animation and the frame displaying the field presentation created
-on the base of the last time stamp will end it. In sweeping <b>ONLY
-ONE</b> Time Stamp is used for its generation.
+on the base of the last timestamp will end it. In sweeping <b>ONLY
+ONE</b> timestamp is used for its generation.
 
 In the case of animation of several fields <b>Parallel Animation</b>
 will display the animations simultaneously, while <b>Successive
 Animation</b> will display them one after another.
 \n In the case of <b>Parallel Animation</b> you can set different
 kinds of presentations for each of the selected fields. This animation
-type also requires that the number of time stamps > 1 and is the same
+type also requires that the number of timestamps > 1 and is the same
 for all animated fields.
 \n For <b>Successive Aimation</b> the kind of presentation should be
 the same for all selected fields, which means that it is not possible
 to select a field from the list.  It is also necessary that the number
-of time stamps > 0 and the number of components is the same for all
+of timestamps > 0 and the number of components is the same for all
 animated fields.
 
-<em>To generate an animation:</em>
+\ref slider_page functionality also allows to create real-time
+animation on every time stamp of the field. This is another,
+somewhat more user-friendly, implementation of animation on fields.
+
+<em>To generate an Animation:</em>
 \par
 <ol>
 <li>Right-click on the field in the Object Browser.</li>
@@ -128,8 +134,4 @@ to study</b> again you get another animation in the Object Browser.
 <b>Publish to Study</b> - saves your animation in the study and
 presents it in the Object Browser.
 
-The following picture shows an animation of deformation of an object:
-
-\image html animatdef.jpg
-
 */
diff --git a/doc/salome/gui/VISU/input/calar_map_on_deformed_shape.doc b/doc/salome/gui/VISU/input/calar_map_on_deformed_shape.doc
deleted file mode 100644 (file)
index 0ec95fb..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-/*!
-
-\page scalar_map_on_deformed_shape_page Scalar Map on Deformed Shape presentation
-
-\n <b>Scalar Map on Deformed Shape</b> presentation is a mix of the
-two: \ref scalar_map_page "Scalar Map" and \ref deformed_shape_page
-"Deformed Shape". In this presentation the Scalar Map is built on a
-Deformed Shape.
-
-<em>To create a Scalar Map on Deformed Shape presentation:</em>
-\par
-&ndash; Right-click on one of the time stamps of the field in the
-Object browser and from the pop-up menu choose <b>Scalar Map on
-Deformed Shape</b>, or
-\n &ndash; Click on one of the time stamps of the field in the Object
-browser and select from the main menu <b>Visualization > Scalar Map on
-Deformed Shape</b>, or click <em>"Scalar Map on Deformed Shape"</em>
-icon in the <b>Visualization Toolbar</b>.
-
-\image html image40.gif
-<center><em>"Scalar Map on Deformed Shape" icon</em></center>
-
-\image html smds1.png
-
-\par
-<b>Scalar Map on Deformed Shape</b> tab allows you to set additional
-parameters of your Scalar Map on Deformed Shape presentation:
-<ul>
-<li><b>Scale Factor:</b> visualization scaling of all vector values
-applied to the cells of the mesh.</li>
-<li><b>Fields:</b> allows to choose type of fields on which the
-presentation will be built.</li>
-<li><b>Time Stamp:</b> allows to choose the time stamp on which the
-presentation will be built.</li>
-</ul>
-<b>Scalar Bar</b> tab allows to define the parameters of the scalar
-bar displayed with this presentation (\ref scalar_map_page "see also").
-
-After you have finished with setting these parameters, click \b
-OK. Your presentation will be immediately displayed in the viewer.
-
-Compare ordinary Scalar Map presentation:
-
-\image html smds-example1.png
-
-with Scalar Map on Deformed Shape presentation:
-
-\image html smds-example.png
-
-*/
\ No newline at end of file
index 58a24c0eb265ae56a01e654a9bf24fc9572525d8..e3db0d79d3d5ecba4912921fe5eb0364ba21450b 100644 (file)
@@ -2,15 +2,84 @@
 
 \page clipping_page Clipping
 
-\n Using this menu you can create cross-section views (clipping planes) of your presentation.
+\n <b>Clipping planes</b> allow to create cross-section views of presentations.
 
-To start, click on the \b New button. A new clipping plane will be
+Salome features two distinct types of clipping planes: \b Global and
+\b Local.
+<ul>
+<li> <b>Global Clipping Planes</b> are defined in the VTK viewer and can
+be automatically applied to all Post-Pro presentations shown in the
+viewer (or not applied depending on the user's choice).</li>
+<li> <b>Local Clipping Planes</b> are defined directly for the given
+presentation </li>
+</ul>
+
+To define <b>Global Clipping Planes</b> in the Main Menu select <b>
+View -> Windows -> Clipping Planes.
+</b> 
+
+The following dialog will appear as a dockable window.
+
+\image html clipping3.png
+
+The list of \b Presentations allows choosing for display from all
+presentations currently created or loaded in the study.
+The list of <b>Associated planes</b> contains all global planes
+created by the user.
+<ul>
+<li>The checkbox near the name of the plane defines the plane as global. </li>
+<li>The checkbox \b Active makes the Plane active (used together with
+<b>Show planes preview</b>, <b>Deactivate planes</b> and <b>Auto
+Apply</b> buttons).</li>
+</ul>
+
+\b New and \b Edit buttons call the dialog for creation and
+modification of clipping planes. 
+
+\image html clipping4.png
+
+<ul>
+<li> <b> Name of the plane </b> - allows to input the custom name of
+the plane (Plane n) by default</li>
+<li> \b Origin - allows to define the point of origin of the clipping
+plane.</li> 
+<li> \b Direction - allows to define the direction of the plane in
+relation to the coordinate planes OX OY and OZ, from 0 - parallel to
+the plane to 1 - perpendicular to the plane.</li>
+<li> \b Global checkbox - allows to make the created plane global by
+default, i.e. the the checkbox near the name of the plane will be
+always checked, otherwise the created presentation is local, yet
+it is possible to check the respective checkbox and make it global.</li>
+</ul>
+
+\b Delete button removes the selected plane from the list of planes.
+
+<b>Show planes preview</b> checkbox displays active planes in the Viewer.
+<b>Deactivate planes</b> checkbox - if checked, unchecks \b Active
+checkboxes for all planes, revealing the entire presentation.
+<b>Auto Apply</b> checkbox - automatically hides from view the part of
+object truncated by the newly created plane.
+
+Note that the clipping planes defined in this way depend on the whole
+MED object and are stored in the dedicated Object Browser folder.
+
+\image html clipping5.png
+
+The described functionality allows to  create both local and global
+clipping planes, however, there is another way to create local
+clipping planes, depending on the presentations. 
+
+To create a local clipping plane on a presentation, select the
+presentation in the viewer or in the Object Browser, right-click on it
+and select <b>Clipping plane</b> from the context menu. 
+
+\image html clipping1.png
+
+Click on the \b New button. A new clipping plane will be
 immediately displayed in 3D Viewer. You can create as many clipping
 planes as you need. To delete an unwanted plane, select it in the list of
 planes and click \b Delete button.
 
-\image html clipping1.png
-
 Now you can define the parameters of your cross-section. You can
 define them either in <b>Non Structured</b> or in <b>IJK
 (Structured)</b> way.
diff --git a/doc/salome/gui/VISU/input/creating_field_presentations.doc b/doc/salome/gui/VISU/input/creating_field_presentations.doc
deleted file mode 100644 (file)
index 54443d1..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-/*!
-
-\page creating_field_presentations_page Creating field presentations
-
-<br><em>To create a field presentation (\ref fields_anchor "see also"):</em>
-\par
-Right-click on one of the time stamps of this field in the Object
-browser and choose the required type of presentation from the
-following pop-up menu:
-
-\image html image20.png
-
-\note In \b Post-Pro fields may contain both scalar and vector values,
-applied to the cells of the submesh, as well as \b ONLY scalar
-values. It is not possible to make a vector presentation for fields
-containing only scalar values.
-
-\par
-For fields containing only scalar values, you can create the following
-types of presentation:
-
-\image html image21.png
-
-\par
-Click on one of the time stamps of this field in the Object browser
-and select the required type of presentation from the \b Visualization
-submenu of the main menu or from the <b>Visualization Toolbar</b>.
-
-The new field presentation will be located in the time stamp subfolder in the Object Browser and displayed
-
-*/
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/input/creating_gauss_points_presentation.doc b/doc/salome/gui/VISU/input/creating_gauss_points_presentation.doc
deleted file mode 100644 (file)
index 6c02aa2..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-/*!
-
-\page creating_gauss_points_presentation_page Creating a Gauss Points Presentation
-
-\n <em>To create a Gauss Points  presentation:</em>
-\par
-&ndash; Right-click on one of the time stamps of the field in the
-Object browser and from the pop-up menu choose <b>Gauss Points</b>, or
-\n &ndash; Click on one of the time stamps of the field in the Object
-browser and select from the main menu <b>Visualization > Gauss
-Points</b>, or click <em>"Gauss Points"</em> icon in the
-<b>Visualization Toolbar</b>.
-
-\image html image29.gif
-<center><em>"Gauss Points" icon</em></center>
-
-\image html image31.jpg
-
-\par
-Now you can choose the \ref types_of_gauss_points_presentations_page
-"Type" of your Gauss Points presentation and \ref primitive_types_page
-"Primitives" used for visualisation of the points and set their properties.
-\n You can also change the \ref scalar_bar_page "Scalar Bar" properties.
-<br><br>
-To exit the dialog and apply choices press \b OK button, or press \b
-CANCEL button to quit.
-
-*/
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/input/creating_plot2d.doc b/doc/salome/gui/VISU/input/creating_plot2d.doc
new file mode 100755 (executable)
index 0000000..1b2d275
--- /dev/null
@@ -0,0 +1,60 @@
+/*!
+
+\page creating_plot2d_page Creating Plot 2D Presentations
+
+\n <em>To create a Plot 2D based on a definite curve:</em>
+<ol>
+<li>Select the Plot 2D Viewer: from the main menu choose <b>Window > New
+Window > Plot2d View</b>.</li>
+
+<li>In the Object Browser right-click on this curve line and from the
+pop-up menu select \b Display item.</li>
+</ol>
+
+<br><em>To create a Plot 2D presentation based on several curves:</em>
+<ol>
+<li>Select Plot 2D Viewer: from the main menu choose <b>Window > New
+Window > Plot2d View</b></li>
+
+<li>In the Object Browser right-click on the \b Post-Pro object and
+from the pop-up menu select <b>Create Plot2D View</b>.</li>
+
+<li>Right-click on the name of this container in the Object Browser
+and select \b Edit item. The following dialog box will appear:
+
+\image html editplot2dpresentation.png
+
+This box contains two windows:
+\par
+&ndash; The left window displays a list of curve lines, which have been
+created in the study.
+\n\n &ndash; The right window displays a list of curve lines contained in
+this particular container. These curves will be used for creation of the
+XY plot.
+
+To move a definite curve line from the study into the container,
+select it in the left window of this dialog box and click the button:
+
+\image html image15.gif
+
+To move a definite curve line from the container back into the study,
+select it in the right window of this dialog box and click the button:
+
+\image html image16.gif
+
+After having chosen the curve lines, which will compose your XY plot,
+click \b OK button to quit this dialog box. In the Object Browser the
+references to the selected curve lines will be created under your
+container.
+</li>
+
+<li>Right-click on the name of the container in the Object Browser and
+select \b Display button. A Plot 2D presentation consisting of the previously
+selected curve lines, will be displayed in the viewer:
+
+\image html image12.gif
+
+</li>
+</ol>
+
+*/
diff --git a/doc/salome/gui/VISU/input/creating_tables_from_cut_lines.doc b/doc/salome/gui/VISU/input/creating_tables_from_cut_lines.doc
deleted file mode 100644 (file)
index 2b6b5cd..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-/*!
-
-\page creating_tables_from_cut_lines_page Creating tables from Cut Lines presentations
-
-\n In \b Post-Pro you can create a table, which will be composed of
-the scalar values applied to the cells forming a <b>Cut Lines</b>
-presentation.
-
-<em>To create a table from Cut Lines presentation:</em>
-<ol>
-<li>Create a \ref cut_lines_page "Cut Lines presentation".</li>
-
-<li>In the Object Browser or in the viewer right-click on your
-presentation and from the pop-up menu select <b>Create Table</b>.</li>
-</ol>
-
-Your new table will be created and displayed in the Object Browser.
-
-*/
diff --git a/doc/salome/gui/VISU/input/creating_xy_plots.doc b/doc/salome/gui/VISU/input/creating_xy_plots.doc
deleted file mode 100644 (file)
index 49c0260..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/*!
-
-\page creating_xy_plots_page Creating XY plots
-
-\n <em>To create a XY plot based on one definite curve:</em>
-<ol>
-<li>Select Plot2d viewer: from the main menu choose <b>Window > New
-Window > Plot2d View</b>.</li>
-
-<li>In the Object Browser right-click on this curve line and from the
-pop-up menu select \b Display item.</li>
-</ol>
-
-<br><em>To create a XY plot based on several curves:</em>
-<ol>
-<li>Select Plot2d viewer: from the main menu choose <b>Window > New
-Window > Plot2d View</b></li>
-
-<li>In the Object Browser right-click on the \b Post-Pro object and
-from the pop-up menu select <b>Create Plot2D View</b>.</li>
-
-<li>Right-click on the name of this container in the Object Browser
-and select \b Edit item. The following dialog box will appear:
-
-\image html editplot2dpresentation.png
-
-This box contains two windows:
-\par
-&ndash; Left window displays a list of curve lines, which have been
-created in the study.
-\n\n &ndash; Right window displays a list of curve lines contained in
-this particular container. These curves will be used for creation of the
-XY plot.
-
-To move a definite curve line from the study into the container,
-select it in the left window of this dialog box and click the button:
-
-\image html image15.gif
-
-To move a definite curve line from the container back into the study,
-select it in the right window of this dialog box and click the button:
-
-\image html image16.gif
-
-After having chosen the curve lines, which will compose your XY plot,
-click \b OK button to quit this dialog box. In the Object Browser the
-references to the selected curve lines will be created under your
-container.
-</li>
-
-<li>Right-click on the name of the container in the Object Browser and
-select \b Display button. A XY plot consisting of the previously
-selected curve lines, will be displayed in the viewer:
-
-\image html image12.gif
-
-</li>
-</ol>
-
-*/
index ceb234d7e755299288fffd91797aa69833ed21aa..a119a75fb83b510a809ac92c1f04d65c9e2d9bf5 100644 (file)
@@ -1,6 +1,7 @@
 /*!
 
 \page cut_lines_page Cut Lines presentation
+\image html cutlinesprsnt.png "Example of Cut Lines presentation"
 
 \n <b>Cut Lines</b> is a type of presentation which displays colored
 cells with applied scalar values on the mesh where lines are placed.
@@ -60,7 +61,7 @@ from the generated data table. These curves will be created in the
 structure of the study and can be visualized in a XY plot.</li>
 </ul>
 See more about table presentations and curve lines 
-\ref about_tables_page "here".
+\ref table_presentations_page "here".
 
 \par
 <b>Cut Planes:</b> this tab of the dialog box contains the parameters of cut
@@ -73,8 +74,6 @@ After you have finished with setting these parameters, click \b
 OK. Your presentation with scalar bar will be immediately displayed in
 the viewer:
 
-\image html cutlinesprsnt.png
-
 <b>Tip:</b> From <b>Cut Lines</b> presentation you can create a
 <b>data table</b>. This table will consist of the field scalar values
 located on each cut line of the constructed presentation (see also:
@@ -82,6 +81,6 @@ located on each cut line of the constructed presentation (see also:
 Lines presentations"). After that your data table can be used for
 construction of a 2d plot of curves based on the scalar values from
 the table (see also: \ref creating_curves_page "Creating curves" and 
-\ref creating_xy_plots_page "Creating XY plots").
+\ref creating_plot2d_page "Creating Plot 2D presentation").
 
 */
\ No newline at end of file
index bb60f1fc8fd09237a49c65640a9f8800d2f6ee5c..8d5f9ccfdad0c86b7a49d501f3ee3691e91c3848 100644 (file)
@@ -2,6 +2,8 @@
 
 \page cut_planes_page Cut Planes presentation
 
+\image html cutplpresent.png "Example of Cut Planes presentation"
+
 <b>Cut Planes</b> is a type of field presentation, when the given
 shape is cut by a definite number of surfaces. These surfaces are
 colored according the values applied to the cells of the mesh.
@@ -39,13 +41,15 @@ displacement of the planes into one or another side.</li>
 <li><b>Show preview</b> check box allows to edit the parameters of the
 presentation and simultaneously observe the preview of this
 presentation in the viewer.</li>
+<li><b>Deformation</b> allows to switch on/off deformation of the
+planes.</li>
+<li><b>Vectors</b> allows to choose a vectorial field for deformation.</li>
+<li><b>Scale Factor</b> allows to set the scaling ratio for all vector values.</li>
 </ul>
 </ul>
 
 After you have finished with setting these parameters, click \b
 OK. Your presentation with scalar bar will be immediately displayed in
-the viewer:
-
-\image html cutplpresent.png
+the viewer.
 
-*/
\ No newline at end of file
+*/
index ede9765a4a5f86c1d9ae1f3b9060a82acb6fae27..028397c13deac65bc436310efbf1b268b42c7c13 100644 (file)
@@ -2,6 +2,8 @@
 
 \page deformed_shape_page Deformed Shape presentation
 
+\image html deformed_shape.png "Example of Deformed Shape presentation"
+
 \n <b>Deformed Shape</b> is a type of field presentation when vector
 values corresponding to the cells of the mesh are visualized by
 shifting of these cells.
@@ -39,8 +41,6 @@ displayed with this presentation (\ref scalar_map_page "see also").</li>
 
 After you have finished with setting these parameters, click \b OK. Your
 presentation with scalar bar will be immediately displayed in the
-viewer:
-
-\image html deformedshapesn.png
+viewer.
 
 */
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/input/displaying_tables.doc b/doc/salome/gui/VISU/input/displaying_tables.doc
deleted file mode 100644 (file)
index 2b762a4..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-/*!
-
-\page displaying_tables_page Displaying tables
-
-\n <em>To display a table:</em>
-<ol>
-<li>Right-click on the required table in the Object Browser</li>
-
-<li>From the pop-up menu choose <b>Show Table</b> option. Your table
-will be displayed in a separate <b>View Table</b> window:
-
-\image html viewtable.png
-
-</li>
-</ol>
-
-
-*/
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/input/feature_edges.doc b/doc/salome/gui/VISU/input/feature_edges.doc
new file mode 100755 (executable)
index 0000000..8f6a6d1
--- /dev/null
@@ -0,0 +1,24 @@
+/*!
+
+\page feature_edges_page Feature Edges
+
+This functionality highlights the contour of the object. To apply it,
+select the object in the VTK Viewer, right-click on it and choose in
+the context menu <b>Representation -> Feature edges.</b> 
+
+\image html viewing11.png 
+
+To select, which contours should be highlighted, in the Main menu
+choose <b> View -> Windows -> Feature Edges</b>
+
+\image html featureedges.png 
+
+<ul>
+<li><b>Feature edges angle</b> - allows to define at which minimum
+angle between two faces a wire is considered an edge. </li> 
+<li><b>Show feature edges</b> - allows to display feature edges.</li>
+<li><b>Show boundary edges</b> - allows to display boundary edges.</li>
+<li><b>Show manifold edges</b> - allows to display manifold edges. </li>
+<li><b>Show non-manifold edges</b> - allows to display non-manifold edges.</li>
+</ul>
+*/
index a60c43cb24627d61948141fe83d355ed786ba010..2755401b3b0961d86ad441312aea7111e1865bce 100644 (file)
@@ -2,30 +2,60 @@
 
 \page field_presentations_page Field presentations
 
+\n \b To represent and explore  \ref med_object_page "MED objects", Post-Pro module provides the following types of Field
+presentations:
 <ul>
-<li>\subpage creating_field_presentations_page</li>
-<li>\subpage scalar_map_page</li>
-<li>\subpage iso_surfaces_page</li>
-<li>\subpage cut_lines_page</li>
-<li>\subpage cut_planes_page</li>
-<li>\subpage deformed_shape_page</li>
-<li>\subpage vectors_page</li>
-<li>\subpage stream_lines_page</li>
-<li>\subpage scalar_map_on_deformed_shape_page</li>
-<li>\subpage plot_3d_page</li>
-<li>\subpage animating_page</li>
-<li>\subpage gauss_points_presentations_page</li>
-<ul>
-<li>\ref creating_gauss_points_presentation_page</li>
-<li>\ref primitive_types_page</li>
-<li>\ref types_of_gauss_points_presentations_page</li>
-<li>\ref scalar_bar_page</li>
-<li>\ref gauss_viewer_page</li>
-<li>\ref navigation_in_gauss_viewer_page</li>
-<li>\ref picking_page</li>
-<li>\ref segmentation_page</li>
-<li>\ref recording_in_gauss_viewer_page</li>
-</ul>
+        <li>\subpage scalar_map_page</li>
+        <li>\subpage iso_surfaces_page</li>
+        <li>\subpage cut_lines_page</li>
+        <li>\subpage cut_planes_page</li>
+        <li>\subpage deformed_shape_page</li>
+        <li>\subpage vectors_page</li>
+        <li>\subpage stream_lines_page</li>
+        <li>\subpage scalar_map_on_deformed_shape_page</li>
+        <li>\subpage plot_3d_page</li>
+        <li>\subpage gauss_points_presentations_page</li>
 </ul>
 
+A field presentation can be created either on a single time stamp or on
+all time stamps of the field.
+
+To create a field presentation on a single time stamp of the field
+right-click on the time stamp in the Object
+browser and choose the required type of presentation from the
+following pop-up menu:
+
+\image html image20.png
+
+The new field presentation will be located in the time stamp subfolder
+in the Object Browser and displayed in the viewer. 
+
+\image html fieldpres1.png
+
+To create a field presentation on all time stamps of the field,
+right-click on the field in the Object
+browser and choose the required type of presentation. 
+
+The new field presentation will be located in the Presentations
+subfolder of the MED object in the Object Browser and displayed in the viewer. 
+
+\image html fieldpres2.png 
+
+
+
+\note In \b Post-Pro fields may contain both scalar and vector values,
+applied to the cells of the submesh, as well as \b ONLY scalar
+values. It is not possible to make a vector presentation for the fields
+containing only scalar values.
+
+\par
+It is possible to create the following types of presentations for the fields containing only scalar values:
+
+\image html image21.png
+
+\par
+Click on one of the time stamps of this field in the Object browser
+and select the required type of presentation from the \b Visualization
+submenu of the main menu or from the <b>Visualization Toolbar</b>.
+
 */
\ No newline at end of file
index 705b9d975eea9ef6fe3ec2f4971765a322db7ea4..fe28655feb0344eb2861815829721e0a2bb0d5b2 100644 (file)
@@ -2,16 +2,33 @@
 
 \page gauss_points_presentations_page Gauss Points Presentations
 
-<ul>
-<li>\subpage creating_gauss_points_presentation_page</li>
-<li>\subpage primitive_types_page</li>
-<li>\subpage types_of_gauss_points_presentations_page</li>
-<li>\subpage scalar_bar_page</li>
-<li>\subpage gauss_viewer_page</li>
-<li>\subpage navigation_in_gauss_viewer_page</li>
-<li>\subpage picking_page</li>
-<li>\subpage segmentation_page</li>
-<li>\subpage recording_in_gauss_viewer_page</li>
-</ul>
+\image html gauss_points.png "Example of Gauss Points presentation"
+
+Gauss Points presentation presents data on Fields as a set of fixed
+points of the renormalisation group flow with Gaussian distribution.
+
+\n <em>To create a Gauss Points  presentation:</em>
+\par
+&ndash; Right-click on one of the time stamps of the field in the
+Object browser and from the pop-up menu choose <b>Gauss Points</b>, or
+\n &ndash; Click on one of the time stamps of the field in the Object
+browser and select from the main menu <b>Visualization > Gauss
+Points</b>, or click <em>"Gauss Points"</em> icon in the
+<b>Visualization Toolbar</b>.
+
+\image html image29.gif
+<center><em>"Gauss Points" icon</em></center>
+
+\image html image31.jpg
+
+\par
+Now it is possible to choose the \subpage types_of_gauss_points_presentations_page
+"Type" of your Gauss Points presentation and \subpage primitive_types_page
+"Primitives" used for visualisation of the points and set their properties.
+
+To exit the dialog and apply choices press \b OK button, or press \b
+CANCEL button to quit.
+
+
 
 */
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/input/gauss_viewer.doc b/doc/salome/gui/VISU/input/gauss_viewer.doc
deleted file mode 100644 (file)
index 29f0ae2..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-/*!
-
-\page gauss_viewer_page Gauss Viewer
-
-\n <b>Gauss Points Viewer</b> is the viewer specially developed to
-display <b>Gauss Points Presentations</b> in <b>Post-Pro Module</b>.
-
-The viewer is activated automatically when you choose to create a
-Gauss Points Presentation.
-\n Right mouse-click on the Presentation gives access to the following
-options:
-
-\image html image1.gif
-
-<ul>
-<li><b>Rename</b> - allows to rename the presentation.</li>
-<li><b>Edit</b> - allows to return to 
-\ref types_of_gauss_points_presentations_page "Gauss Points Properties" 
-menu and change the parameters of a presentation.</li>
-<li><b>Copy</b> - allows to create a copy of the presentation in the
-same subfolder (time stamp) in the Object Browser.</li>
-<li><b>Erase</b> - allows to hide the selected presentation from the
-viewer.</li>
-<li><b>Display Only</b> - allows to display only the selected
-presentation, hiding all other from the viewer.</li>
-<li><b>Store current configuration</b> - allows to save the current
-layout of the viewer (settings, position of windows, etc).</li>
-<li><b>Dump view</b> - exports an object from the viewer in bmp, png,
-jpg or jpeg image format.</li>
-<li><b>Change Background</b> - allows to change the properties of the
-background.</li>
-</ul>
-
-Most operations available via Viewer Toolbar are common with <b>VTK 3D
-Viewer</b>. <b>VTK 3D Viewer</b> is detailly described in the
-documentation on <b>GUI module</b>.
-\n However, some functionalities are used only in <b>Gauss Points Viewer</b>.
-
-<ul>
-<li>These buttons are used for \ref recording_in_gauss_viewer_page "Recording":
-
-\image html image26.gif
-
-</li>
-<li>Interaction Style Switch - allows to switch between two the modes
-of mouse manipulation:
-
-\image html image6.gif 
-
-<ul>
-<li><b>Salome Standard Controls</b> - allows to manipulate objects in
-the viewer with the mouse and locked Ctrl button: increase or decrease
-the zoom ratio with the left mouse button, translate object in any
-direction with the central mouse button or rotate it with the right
-mouse button.</li>
-<li><b>Keyboard Free</b> - allows to manipulate objects in the viewer
-with the mouse without locking Ctrl button. In this case the
-operations are assigned to the buttons differently: rotation is made
-with the left button, translation with the right and zoom with both
-pressed in the same time.</li>
-</ul>
-</li>
-<li><b>Selection Mode Switch</b> - activates \ref picking_page "Picking":
-
-\image html image7.gif
-
-</li>
-<li><b>Plane Segmentation</b> - activates \ref segmentation_page "Segmentation":
-
-\image html image8.gif
-</ul>
-
-*/
\ No newline at end of file
index e4f00bba51c0b58bf3b9591abc0bd9942ef2b0fc..e6a53c315efccd391067995dcc395ecf6c2ce553 100644 (file)
@@ -1,6 +1,6 @@
 /*!
 
-\page importing_med_objects_page Importing MED objects
+\page importing_med_objects_page Import/Export MED objects
 
 \n There exist two sources of \ref structure_of_med_objects_page "MED objects": MED and other Salome
 components publishing them and MED files.
@@ -77,4 +77,14 @@ highest and the lowest value.</li>
 </ul>
 \b Time - shows the <b>Elapsed time</b> spent by the application on processing.
 
+<em>To export a MED file:</em>
+\par
+Right-click on the top level of MED object in the Object Browser and select <b>Export to MED
+File</b> option. When you do so you will see a standard dialog box where you can select the 
+path and change the name of the exported MED file:
+
+\image html exportmedfile.png
+
+To complete file export click <b>Save</b>.
+
 */
\ No newline at end of file
index e82b2bc7b971a6be032a33d913a254c71f4ad420..c82f49773c9bc2fdde98193ba5d01a6c7653be83 100644 (file)
@@ -1,64 +1,18 @@
 /*!
 
-\mainpage Post-Pro Module Reference Documentation
+\mainpage Introduction to Post-Pro
 
-<ul>
-<li>\subpage introduction_to_postpro_page</li>
-<li>\subpage running_postpro_page</li>
-<li>\subpage structure_of_med_objects_page</li>
-<li>\subpage importing_med_objects_page</li>
-<li>\subpage a3d_presentations_page</li>
-<ul>
-<li>\ref presentation_of_submesh_page</li>
-<li>\ref field_presentations_page</li>
-<ul>
-<li>\ref creating_field_presentations_page</li>
-<li>\ref scalar_map_page</li>
-<li>\ref iso_surfaces_page</li>
-<li>\ref cut_lines_page</li>
-<li>\ref cut_planes_page</li>
-<li>\ref deformed_shape_page</li>
-<li>\ref vectors_page</li>
-<li>\ref stream_lines_page</li>
-<li>\ref scalar_map_on_deformed_shape_page</li>
-<li>\ref plot_3d_page</li>
-<li>\ref animating_page</li>
-<li>\ref gauss_points_presentations_page</li>
-<ul>
-<li>\ref creating_gauss_points_presentation_page</li>
-<li>\ref primitive_types_page</li>
-<li>\ref types_of_gauss_points_presentations_page</li>
-<li>\ref scalar_bar_page</li>
-<li>\ref gauss_viewer_page</li>
-<li>\ref navigation_in_gauss_viewer_page</li>
-<li>\ref picking_page</li>
-<li>\ref segmentation_page</li>
-<li>\ref recording_in_gauss_viewer_page</li>
-</ul>
-</ul>
-<li>\ref viewing_3d_presentations_page</li>
-<ul>
-<li>\ref viewing_3d_presentations_intro_page</li>
-<li>\ref translate_presentation_page</li>
-<li>\ref clipping_page</li>
-<li>\ref sweeping_page</li>
-<li>\ref selection_info_page</li>
-</ul>
-</ul>
-<li>\subpage table_presentations_page</li>
-<ul>
-<li>\ref about_tables_page</li>
-<li>\ref importing_exporting_tables_page</li>
-<li>\ref displaying_tables_page</li>
-<li>\ref creating_tables_from_cut_lines_page</li>
-</ul>
-<li>\subpage xy_plots_page</li>
-<ul>
-<li>\ref creating_curves_page</li>
-<li>\ref creating_xy_plots_page</li>
-<li>\ref setting_properties_of_xy_plots_page</li>
-</ul>
-<li>\subpage idl_interface_page</li>
-</ul>
+\image html visufullscreen.png
+
+<b>Post-Pro</b> module of Salome is used for analysis and post-processing  of numerical simulation results. 
+\n The major part of \b Post-Pro functionality is dedicated to post-processing of files in MED format.
+A MED file contains the description of a  \subpage med_object_page "MED object", which represents a \b mesh and a set of \b physical \b values corresponding to mesh cells.
+
+\n For compability with other solver solutions \b Post-Pro supports
+ \subpage table_presentations_page "Data Table Objects",
+ two-dimensional data arrays, as input type for visualization. 
+
+\n The Python interface of \b Post-Pro module is described in \subpage idl_interface_page "Access to Post-Pro module functionality" page.
 
 */
diff --git a/doc/salome/gui/VISU/input/introduction_to_postpro.doc b/doc/salome/gui/VISU/input/introduction_to_postpro.doc
deleted file mode 100644 (file)
index 0cbcdc3..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-/*!
-
-\page introduction_to_postpro_page Introduction to Post-Pro
-
-\n Post-processing module \b Post-Pro  for SALOME  is destined for
-visualization of data produced by the other components of the
-platform. \b Post-Pro provides  various forms of data visualization
-including:
-<ul>
-<li>\ref about_tables_page "Data tables",</li>
-
-<li>\ref creating_xy_plots_page "XY plots based on data from tables",</li>
-
-<li>\ref presentation_of_submesh_page "3d presentations of submeshes",</li>
-
-<li>\ref creating_field_presentations_page "3d presentations of fields".</li>
-</ul>
-
-*/
\ No newline at end of file
index 4679116a6120294d70c015f937e77cf713f9d86e..a06f907e1f895dc4ba66eae381407b92dba28a48 100644 (file)
@@ -2,6 +2,8 @@
 
 \page iso_surfaces_page Iso Surfaces presentation
 
+\image html iso.png "Example of Iso Surfaces presentation"
+
 \n <b>Iso Surfaces</b> presentation combines all equal scalar values
 applied to the cells and on the basis of them constructs  isobaric
 surfaces, which form this presentation.
@@ -39,8 +41,6 @@ scalar bar displayed with this presentation (\ref scalar_map_page "see also").</
 
 After you have finished with setting these parameters, click \b OK. Your
 presentation with scalar bar will be immediately displayed in the
-viewer:
-
-\image html iso.png
+viewer.
 
 */
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/input/med_object.doc b/doc/salome/gui/VISU/input/med_object.doc
new file mode 100755 (executable)
index 0000000..a6791f4
--- /dev/null
@@ -0,0 +1,91 @@
+/*!
+
+\page med_object_page MED Objects
+
+\b MED \b Object is a specific twofold data structure
+with consists of \b  Mesh \b Data and \b Physical \b Data.
+
+\b  Mesh \b Data includes geometrical information: list of nodes, edges, faces and cells
+of the mesh, and information on the interpolation in accordance with resulting
+elements, i.e. the mesh should be compatible with the chosen interpolation;</em></li>
+\b Physical \b Data contains initial and boundary conditions: scalar
+or vector values applied to the mesh cells.
+
+\n It is not possible to create and edit \b MED \b Objects in the \b
+Post-Pro module. You can only \subpage importing_med_objects_page
+"import a MED object" from Salome MED module or from a MED file.
+
+\n \b MED Objects can be visualized and explored with various types of
+\subpage a3d_presentations_page "3D presentations".
+
+\n \b Post-Pro visualization engine bases on VTK and OpenGL
+technologies, which provide useful tools for 
+\subpage a3d_management_page "Management of presentations".
+
+As it can be seen, the description of a MED Object is written in a tree-like form,
+containing three main folders: \ref families_anchor "Families", 
+\ref groups_anchor "Groups", and \ref fields_anchor "Fields".
+
+\image html snapfgf.png
+
+<br>
+\anchor families_anchor
+<h2>Families</h2>
+
+A \b Family is a user-defined submesh composed of cells of a
+definite type  - Nodes, Edges, Faces or Cells</em>. The
+presentation created on the basis of a particular \b family will be
+composed of geometrical elements, corresponding to the type of cells
+of this \b family.
+
+<center>
+<table>
+<tr>
+<td><b>Type of cells (entities) of the family</b></td>
+<td><b>Geometrical element</b></td>
+</tr>
+<tr>
+<td>Nodes</td>
+<td>Points</td>
+</tr>
+<tr>
+<td>Edges</td>
+<td>Segments</td>
+</tr>
+<tr>
+<td>Faces</td>
+<td>Triangles, quadrangles</td>
+</tr>
+<tr>
+<td>Cells</td>
+<td>Any</td>
+</tr>
+</table>
+<em>Table of correspondence</em>
+</center>
+
+In the \b Families  folder all families of the mesh are put into subfolders defining the type of cells of the mesh: \b onNodes,
+\b onEdges, \b onFaces, \b onCells.
+\n The subfolders also represent submeshes of the mesh, which are
+composed of all cells of the mesh of this type.
+
+<br>
+\anchor groups_anchor
+<h2>Groups</h2>
+
+\b Groups combine families independently on the type of
+cells, of which they are composed.
+
+<br>
+\anchor fields_anchor
+<h2>Fields</h2>
+
+\b Fields represent the results of calculations (scalar or vector
+values), grouped under one physical concept.
+\n These values are applied to the cells of a definite submesh, which
+is indicated in the Object Browser in the subfolder of the \b field. 
+\n Most often the calculations are performed during some period of
+time. That's why \b fields include <b>Time Stamps</b>, representing
+the results of calculations in one definite moment. 
+
+*/
diff --git a/doc/salome/gui/VISU/input/navigation.doc b/doc/salome/gui/VISU/input/navigation.doc
new file mode 100755 (executable)
index 0000000..d6e01a9
--- /dev/null
@@ -0,0 +1,193 @@
+/*!
+
+\page navigation_page Navigation in the VTK viewer
+
+\n VTK viewer in Post-pro module provides two ways of user style
+navigation modes: \b Standard and \b Advanced. Switching between them
+is allowed with <b>Interaction Style Switch</b> button from Viewer Toolbar:
+
+<br><h2>Navigation using the mouse</h2>
+
+<h3>Standard</h3> user interaction style supports processing of mouse
+and keyboard events with the following assignments:
+
+<table>
+<tr>
+<td><center><b>Action</b></center></td><td><center><b>Command</b></center></td><td><center><b>Movement</b></center></td>
+</tr>
+<tr>
+<td>Dynamic rotation</td>
+<td><center><b>[CTRL] key + Right Mouse Button</b></center></td>
+<td>\image html image46.gif 
+<center>Rotation about the focal point</center>
+</td>
+</tr>
+<tr>
+<td>Dynamic panning</td>
+<td><center><b>[CTRL] key + Central Mouse button</b></center></td>
+<td>\image html image47.gif
+<center>Translation in any direction</center>
+</td>
+</tr>
+<tr>
+<td>Dynamic zoom</td>
+<td><center><b>[CTRL] key + Left Mouse Button</b></center></td>
+<td>\image html image48.gif
+<center>Increase or decrease of zoom ratio</center>
+</td>
+</tr>
+</table>
+
+<h3>Advanced or "keyboard free"</h3> style makes it possible to manipulate objects without
+keyboard keys, 
+
+<table>
+<tr>
+<td><center><b>Action</b></center></td><td><center><b>Command</b></center></td><td><center><b>Movement</b></center></td>
+</tr>
+<tr>
+<td>Dynamic rotation</td>
+<td><center><b>Right Mouse Button</b></center></td>
+<td>\image html image46.gif 
+<center>Rotation about the focal point</center>
+</td>
+</tr>
+<tr>
+<td>Dynamic panning</td>
+<td><center><b>Central Mouse button</b></center></td>
+<td>\image html image47.gif
+<center>Translation in any direction</center>
+</td>
+</tr>
+<tr>
+<td>Dynamic zoom</td>
+<td><center><b>Left Mouse Button + Central Mouse button</b></center></td>
+<td>\image html image49.gif
+<center>Increase or decrease of zoom ratio</center>
+</td>
+</tr>
+</table>
+
+\ref selection_info_page  also depends on the user interaction
+style. With the \b Standard style Selection is activated by pressing
+left mouse button, while with the \b Advanced style selection is done
+by pressing \b S key.
+
+It is possible to customize the sencibility of each view operation
+(rotation, panning and zooming) by pressing \b + or \b - keys to
+increase or decrease the speed.   
+
+
+
+<br><h2>Navigation using the keyboard</h2>
+
+VTK viewer also allows to manipulate objects using keyboard keys.
+
+<table>
+<tr>
+<td><center><b>Action</b></center></td><td><center><b>Key</b></center></td><td><center><b>Movement</b></center></td>
+</tr>
+<tr>
+<td>Dynamic rotation</td>
+<td><center><b>[CTRL] key + \n Left Arrow, Right Arrow , \n Up Arrow, Down Arrow</b></center></td>
+<td>\image html image46.gif 
+<center>Rotation about the focal point</center>
+</td>
+</tr>
+<tr>
+<td>Dynamic panning</td>
+<td><center><b>Left Arrow, Right Arrow, \n Up Arrow, Down Arrow</b></center></td>
+<td>\image html image47.gif
+<center>Translation in any direction</center>
+</td>
+</tr>
+<tr>
+<td>Dynamic zoom</td>
+<td><center><b>[PageUp], \n [PageDn]</b></center></td>
+<td><center>Increase or decrease of zoom ratio</center></td>
+</tr>
+<tr>
+<td>Speed increment</td>
+<td><center><b>[ + ], \n [ - ]</b></center></td>
+<td><center>Increase or decrease by 1 of the speed increment for the previously defined movement.</center></td>
+</tr>
+</table>
+
+<br><h2>Navigation using the spacemouse</h2>
+
+VTK viewer also allows to manipulate objects using a spacemouse.
+
+The spacemouse introduces a local coordinate system and 6 degrees of
+freedom, which are independent from the 3D view coordinate system.
+
+\image html image50.gif
+
+The movement of 3D models in the screen depends on the user
+manipulations with the controller head.
+
+<table>
+<tr>
+<td><center><b>Action</b></center></td><td><center><b>Move</b></center></td><td><center><b>Description</b></center></td>
+</tr>
+<tr>
+<td>Dynamic rotation \n about axis X</td>
+<td>\image html image51.gif</td>
+<td><center><b>Tilt</b> the controller head forward and backward to rotate the object about axis X.</center></td>
+</tr>
+<tr>
+<td>Dynamic rotation \n about axis Y</td>
+<td>\image html image52.gif</td>
+<td><center><b>Rotate</b> the controller head clockwise and counterclockwise to rotate the model about axis Y.</center> 
+</td>
+</tr>
+<tr>
+<td>Dynamic panning</td>
+<td>\image html image53.gif</td>
+<td><center><b>Pull</b> up and <b>push</b> down to move the model up and down.
+\n <b>Move left</b> and <b>right</b> to move the model left and right.</center>
+</td>
+</tr>
+<tr>
+<td>Dynamic zoom</td>
+<td>\image html image54.gif</td>
+<td><center><b>Push forward</b> or <b>pull backward</b> to respectively decrease or increase the zoom ratio.</center>
+</td>
+</tr>
+</table>
+
+Buttons of the spacemouse are also used to change the magnification
+for Gauss points:
+
+\image html image55.gif
+
+By default, buttons are defined as follows, however the user can
+change them in the preferences:
+
+<table>
+<tr> 
+<td><center><b>Button</b></center></td>
+<td><center><b>Description</b></center></td>
+</tr>
+<tr>
+<td><center>Button 1</center></td>
+<td>Decrease by 1 speed increment used for the keyboard (the same as [-] key)</td>
+</tr>
+<tr>
+<td><center>Button 2</center></td>
+<td>Increase by 1 speed increment used for the keyboard (the same as [+] key)</td>
+</tr>
+<tr>
+<td><center>Button 10</center></td>
+<td>Divide the current magnification by the magnification ratio</td>
+</tr>
+<tr>
+<td><center>Button 11</center></td>
+<td>Multiply the current magnification by the magnification ratio</td>
+</tr>
+<tr>
+<td><center>Button Star</center></td>
+<td>Toggle button to switch to dominant or combined movements</td>
+</tr>
+</table>
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/input/navigation_in_gauss_viewer.doc b/doc/salome/gui/VISU/input/navigation_in_gauss_viewer.doc
deleted file mode 100644 (file)
index fb4d907..0000000
+++ /dev/null
@@ -1,187 +0,0 @@
-/*!
-
-\page navigation_in_gauss_viewer_page Navigation in the Gauss viewer
-
-\n Gauss viewer provides some navigation options, which are not
-available in other Salome viewers.
-
-<br><h2>Navigation using the mouse</h2>
-
-<h3>Salome standard</h3>
-The mouse is supported as a standard manipulator in Salome possessing
-the following actions by default:
-
-<table>
-<tr>
-<td><center><b>Action</b></center></td><td><center><b>Command</b></center></td><td><center><b>Movement</b></center></td>
-</tr>
-<tr>
-<td>Dynamic rotation</td>
-<td><center><b>[CTRL] key + Right Mouse Button</b></center></td>
-<td>\image html image46.gif 
-<center>Rotation about the focal point</center>
-</td>
-</tr>
-<tr>
-<td>Dynamic panning</td>
-<td><center><b>[CTRL] key + Central Mouse button</b></center></td>
-<td>\image html image47.gif
-<center>Translation in any direction</center>
-</td>
-</tr>
-<tr>
-<td>Dynamic zoom</td>
-<td><center><b>[CTRL] key + Left Mouse Button</b></center></td>
-<td>\image html image48.gif
-<center>Increase or decrease of zoom ratio</center>
-</td>
-</tr>
-</table>
-
-<h3>Gauss Viewer</h3>
-In Gauss Viewer it is possible to manipulate objects without locking
-keyboard keys, switching between the standard and the advanced
-operation modes with <b>Interaction Style Switch</b> button from Gauss
-Viewer Toolbar:
-
-<table>
-<tr>
-<td><center><b>Action</b></center></td><td><center><b>Command</b></center></td><td><center><b>Movement</b></center></td>
-</tr>
-<tr>
-<td>Dynamic rotation</td>
-<td><center><b>Right Mouse Button</b></center></td>
-<td>\image html image46.gif 
-<center>Rotation about the focal point</center>
-</td>
-</tr>
-<tr>
-<td>Dynamic panning</td>
-<td><center><b>Central Mouse button</b></center></td>
-<td>\image html image47.gif
-<center>Translation in any direction</center>
-</td>
-</tr>
-<tr>
-<td>Dynamic zoom</td>
-<td><center><b>Left Mouse Button + Central Mouse button</b></center></td>
-<td>\image html image49.gif
-<center>Increase or decrease of zoom ratio</center>
-</td>
-</tr>
-</table>
-
-<br><h2>Navigation using the keyboard</h2>
-
-Salome does not allow to manipulate objects using keyboard keys, which
-is possible in Gauss Viewer only.
-
-<table>
-<tr>
-<td><center><b>Action</b></center></td><td><center><b>Key</b></center></td><td><center><b>Movement</b></center></td>
-</tr>
-<tr>
-<td>Dynamic rotation</td>
-<td><center><b>[CTRL] key + \n Left Arrow, Right Arrow , \n Up Arrow, Down Arrow</b></center></td>
-<td>\image html image46.gif 
-<center>Rotation about the focal point</center>
-</td>
-</tr>
-<tr>
-<td>Dynamic panning</td>
-<td><center><b>Left Arrow, Right Arrow, \n Up Arrow, Down Arrow</b></center></td>
-<td>\image html image47.gif
-<center>Translation in any direction</center>
-</td>
-</tr>
-<tr>
-<td>Dynamic zoom</td>
-<td><center><b>[PageUp], \n [PageDn]</b></center></td>
-<td><center>Increase or decrease of zoom ratio</center></td>
-</tr>
-<tr>
-<td>Speed increment</td>
-<td><center><b>[ + ], \n [ - ]</b></center></td>
-<td><center>Increase or decrease by 1 of the speed increment for the previously defined movement.</center></td>
-</tr>
-</table>
-
-<br><h2>Navigation using the spacemouse</h2>
-
-Salome does not allow to manipulate objects using a spacemouse, which
-is possible in Gauss Viewer only.
-
-The spacemouse introduces a local coordinate system and 6 degrees of
-freedom, which are independent from the 3D view coordinate system.
-
-\image html image50.gif
-
-The movement of 3D models in the screen depends on the user
-manipulations with the controller head.
-
-<table>
-<tr>
-<td><center><b>Action</b></center></td><td><center><b>Move</b></center></td><td><center><b>Description</b></center></td>
-</tr>
-<tr>
-<td>Dynamic rotation \n about axis X</td>
-<td>\image html image51.gif</td>
-<td><center><b>Tilt</b> the controller head forward and backward to rotate the object about axis X.</center></td>
-</tr>
-<tr>
-<td>Dynamic rotation \n about axis Y</td>
-<td>\image html image52.gif</td>
-<td><center><b>Rotate</b> the controller head clockwise and counterclockwise to rotate the model about axis Y.</center> 
-</td>
-</tr>
-<tr>
-<td>Dynamic panning</td>
-<td>\image html image53.gif</td>
-<td><center><b>Pull</b> up and <b>push</b> down to move the model up and down.
-\n <b>Move left</b> and <b>right</b> to move the model left and right.</center>
-</td>
-</tr>
-<tr>
-<td>Dynamic zoom</td>
-<td>\image html image54.gif</td>
-<td><center><b>Push forward</b> or <b>pull backward</b> to respectively decrease or increase the zoom ratio.</center>
-</td>
-</tr>
-</table>
-
-Buttons of the spacemouse are also used to change the magnification
-for Gauss points:
-
-\image html image55.gif
-
-By default, buttons are defined as follows, however the user can
-change them in the preferences:
-
-<table>
-<tr> 
-<td><center><b>Button</b></center></td>
-<td><center><b>Description</b></center></td>
-</tr>
-<tr>
-<td><center>Button 1</center></td>
-<td>Decrease by 1 speed increment used for the keyboard (the same as [-] key)</td>
-</tr>
-<tr>
-<td><center>Button 2</center></td>
-<td>Increase by 1 speed increment used for the keyboard (the same as [+] key)</td>
-</tr>
-<tr>
-<td><center>Button 10</center></td>
-<td>Divide the current magnification by the magnification ratio</td>
-</tr>
-<tr>
-<td><center>Button 11</center></td>
-<td>Multiply the current magnification by the magnification ratio</td>
-</tr>
-<tr>
-<td><center>Button Star</center></td>
-<td>Toggle button to switch to dominant or combined movements</td>
-</tr>
-</table>
-
-*/
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/input/perspective_view.doc b/doc/salome/gui/VISU/input/perspective_view.doc
new file mode 100755 (executable)
index 0000000..7017cbb
--- /dev/null
@@ -0,0 +1,53 @@
+/*!
+
+\page perspective_view_page Orthogonal and Perspective view modes
+
+3D objects in orthogonal projection sometimes look as if they were 2D.
+Perspective projection mode makes presentations look more realistic.
+
+It is possible to switch between two modes using VTK viewer toolbar
+buttons:
+
+\image html perspective1.png "Perspective mode button"
+
+\image html perspective2.png "Orthogonal mode button"
+
+For example, look at the tube shape in both views.
+
+\image html perspective3.png "Shape in perspective mode"
+
+\image html perspective4.png "Shape in orthogonal mode"
+
+Further than that, it is possible to exercise full control of the presentation of a 3D
+scene by modification of camera attributes. 
+
+To understand how the scene is built, see this picture. 
+
+\image html image36.gif
+
+<ul>
+<li><b>Camera position</b> defines the location of the camera. </li>
+<li><b>Focal point</b> defines the point where the camera is
+aimed.</li>
+<li><b>View up</b> defines the camera orientation. </li> 
+</ul>
+
+To change camera attributes, click <b>Change View Parameters</b>
+button in the VTK viewer toolbar.
+
+\image html perspective5.png
+
+The following dialog will appear:
+
+\image html perspective6.png
+
+<ul>
+<li><b>Focal point</b> - can be set in the center of the bounding box
+of all displayed objects, or in the origin of coordinates, or defined
+by the user.</li>
+<li><b>Camera position</b> - can be defined by the absolute coordinates or by the coordinates relative to the focal point.</li> 
+<li><b>View up</b> defines the vector of camera orientation.</li>
+<li>\b Zooming in Orthogonal mode is defined by \b Scale factor, in 
+\b Perspective mode is defined by <b>View angle</b>. </li>
+</ul> 
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/input/picking.doc b/doc/salome/gui/VISU/input/picking.doc
deleted file mode 100644 (file)
index a59a6ea..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-/*!
-
-\page picking_page Picking
-
-\n Picking is a special way of viewing Gauss Points presentations.
-
-\image html image34.jpg
-
-Picking mode is activated by selecting <em>"Selection Mode Switch"</em>
-button in the Gauss Viewer toolbar.
-
-\image html image34.gif
-<center><em>"Selection Mode Switch" icon</em></center>
-
-Now if the cursor touches a point it is highlighted  with triangular
-markers (pyramids). The cursor is dynamically generated so that apexes
-of each pyramid touch the point sprite boundary, and the height of the
-pyramid is fixed.
-
-\image html image69.gif
-
-To get information about the point click the left mouse button or
-press S (or s) key of the keyboard.
-\n Once a point is selected, the presentation is centered around this
-point and a semi-transparent window is displayed next to the selected
-point and shows the following information:
-<ul>
-<li>The ID of the point within its parent mesh element</li>
-<li>Coordinates of the Gauss point</li>
-<li>In the case of a result at Gauss point: Scalar value being inspected + all components individually</li>
-<li>Name of its parent mesh element</li>
-</ul>
-In addition, the active scalar bar is updated to highlight the
-corresponding value of the selected scalar value by a black line.
-
-All Picking preferences can be defined using Preferences, however, you
-can customize them for the current presentation.
-
-\image html picking.png
-
-<ul>
-<li>\b Cursor - allows to adjust the \b Size of the cursor used for
-Picking (ranging from 0.1 to 1), the <b>Height of the pyramids</b>
-(ranging from 0 to 10) and the <b>Selection cursor color</b>.</li>
-<li>\b Tolerance - defines at which distance of the cursor from the
-point it becomes selected (ranges from 0.001 to 10).</li>
-<li><b>Information window</b> - allows to define the \b Transparency
-(from 0% = opaque to 100% = transparent) and \b Position of the
-window, which can be:</li>
-<ul>
-<li><b>Centred below the point</b>, or </li>
-<li>located at <b>Top-left corner of the 3D view</b></li>
-</ul>
-<li><b>Movement of the Camera</b> can also be define by the user.</li>
-<ul>
-<li><b>Zoom at first selected point</b> - This value is used to define
-the focal distance at the first selected point (at the end of the
-movement of the camera). This value is a ratio that will be multiplied
-by the current zoom value.</li>
-<li><b>Number of steps between two positions</b> - defines the
-smoothness of camera movement at selection by the number of
-iterations. If set to 1 the camera is zoomed and centered at the point
-momentarily. Greater numbers mean very slow camera movement.</li>
-</ul>
-<li><b>Display parent mesh element</b> - allows to visualize or hide
-the parent mesh element of the selected gauss point.</li>
-</ul>
-
-*/
\ No newline at end of file
index 672cf5f5a17a61e03b3fc2c7bb711fe67726e3ab..1380992474c6f5f455842419df3743ed35a3485c 100644 (file)
@@ -2,6 +2,8 @@
 
 \page plot_3d_page Plot 3D presentation
 
+\image html plot3d-example.png "Example of Plot 3D presentation"
+
 \n <b>Plot 3D</b> is a presentation of scalar values of meshes lying
 on a cutting plane. The relief and coloring of the resulting
 presentation both correspond to the values applied to the cells of the
@@ -55,8 +57,6 @@ presentation.</li>
 bar displayed with this presentation (\ref scalar_map_page "see also").
 
 After you have finished with setting these parameters, click \b
-OK. Your presentation  will be immediately displayed in the viewer:
-
-\image html plot3d-example.png
+OK. Your presentation  will be immediately displayed in the viewer.
 
 */
\ No newline at end of file
index e621528c4e77b84e6d6e79630a935d4c5e133dfd..e515cab2929d2fd1f55d5b4b82b1956ee15f42e4 100644 (file)
@@ -2,13 +2,16 @@
 
 \page presentation_of_submesh_page Presentation of a submesh
 
+\image html image11.gif "Example of submesh presentation"
+
+The main purpose of presentations of a submesh is to display the mesh structure without any physical data. 
+Thus it is possible to create such presentations only on \b Families sub-objects.
+
 <br><em>To create a presentation of a submesh:</em>
 \par
 In the Object Browser right-click on a submesh of an imported MED
 object and from the pop-up menu choose <b>Create Presentation</b>.
 <br><br>
-This presentation will be displayed in the viewer:
-
-\image html image11.gif
+This presentation will be displayed in the viewer.
 
 */
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/input/recording.doc b/doc/salome/gui/VISU/input/recording.doc
new file mode 100755 (executable)
index 0000000..3d3516e
--- /dev/null
@@ -0,0 +1,72 @@
+/*!
+
+\page recording_page Recording
+
+\n In the addition to the \ref animating_page "Animation" and 
+\ref sweeping_page "Sweeping" on timestamps Post-Pro module provides a possibility of recording AVI clips of user actions. This
+functionality is available at any time for all contents of the VTK Viewer.
+
+To start the video recording session, click <em>"Start"</em>
+button. You will see a standard dialog box allowing to input the file
+name for the AVI clip and browse for the location.
+
+\image html startrecording.png
+<center><em>"Start" button</em></center>
+
+\image html recordingsaveas.png
+
+Then you'll be asked to define <b>Recording Properties</b>:
+
+\image html recording.png
+
+- \b Settings:
+<ul>
+<li><b>Save to file</b> - you can change the name of the file you've
+chosen for saving.</li>
+<li>\b Mode - allows to choose from two recording regimes: </li>
+<ul>
+<li><b>Recording all displayed frames</b> - records exactly at the FPS
+rate specified by the user.</li>
+<li><b>Recording at a given FPS</b> - records only when the contents
+of the viewer change (some activity is performed). In the AVI file
+non-recorded images are substituted with the copies of the latest
+recorded image, which produces files with lower quality but requires
+less system resources.</li>
+</ul>
+<li>\b FPS - allows to define the FPS (frames per second) rate for the
+clip. Set greater value for better quality.</li>
+<li>\b Quality - allows to set the quality of the clip in the interval
+between 0 and 100.</li>
+<li>\b Progressive - allows to record a progressive API file.</li>
+</ul>
+
+After you click \b OK, the recording will start and all your actions
+in the viewer will be recorded.
+\n Note that if you change the size of the 3D viewer window, the avi
+file would be corrupt.
+
+Press \b Stop button to finish video recording or \b Pause  button to
+suspend it. If the recording is just paused, you can always continue
+it by clicking \b Play button.
+
+\image html image105.gif
+<center><em>"Stop" button</em></center>
+
+\image html image104.gif
+<center><em>"Pause" button</em></center>
+
+\image html image103.gif
+<center><em>"Play" button</em></center>
+
+\note This functionality works only if there is \b jpeg2yuv utility
+installed on your computer. If this third-party product is missing,
+the \b Recording buttons will be disabled. This utility is a part of
+\b mjpegtool package, which can be downloaded from
+http://mjpeg.sourceforge.net/.  Run "which jpeg2yuv" to check whether
+this tool has been installed and the path to it was properly added to
+your PATH variable. If not, you need to activate \b mjpegtools
+indicating its location in the variable PATH. The syntax of the
+command should be as follows: export
+PATH=${INSTALL_ROOT}/mjpegtools-1.8.0/bin:${PATH}.
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/input/recording_in_gauss_viewer.doc b/doc/salome/gui/VISU/input/recording_in_gauss_viewer.doc
deleted file mode 100644 (file)
index cdeb6f3..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-/*!
-
-\page recording_in_gauss_viewer_page Recording in Gauss Viewer
-
-\n In the addition to the \ref animating_page "Animation" at Time
-stamps available for all Post-Pro presentations, <b>Gauss Viewer</b>
-gives the possibility to record AVI clips of user actions. This
-functionality is available at any time for all contents of the 3D
-Viewer, including Animation or Segmentation.
-
-To start the video recording session click <em>"Start"</em> button. After it
-you will see a standard dialog box allowing input the file name for
-AVI clip and browse for the location.
-
-\image html image102.gif
-<center><em>"Start" button</em></center>
-
-\image html recordingsaveas.png
-
-Then you'll be asked to define <b>Recording Properties</b>:
-
-\image html recording.png
-
-- \b Settings:
-<ul>
-<li><b>Save to file</b> - you can change the name of the file you've
-chosen for saving.</li>
-<li>\b Mode - allows to choose from two recording regimes: </li>
-<ul>
-<li><b>Recording all displayed frames</b> - records exactly at the FPS
-rate specified by the user.</li>
-<li><b>Recording at a given FPS</b> - records only when the contents
-of the viewer change (some activity is performed). In the AVI file
-non-recorded images are substituted with the copies of the latest
-recorded image, which produces files with lower quality but requires
-less system resources.</li>
-</ul>
-<li>\b FPS - allows to define the FPS (frames per second) rate for the
-clip. Set greater value for better quality.</li>
-<li>\b Quality - allows to set the quality of the clip in the interval
-between 0 and 100.</li>
-<li>\b Progressive - allows to record a progressive API file.</li>
-</ul>
-
-After you click \b OK, the recording will start and all your actions
-in the viewer will be recorded.
-\n Note that if you change the size of the 3D viewer window, the avi
-file would be corrupt.
-
-Press \b Stop button to finish video recording or \b Pause  button to
-suspend it. If the recording is just paused, you can always continue
-it by clicking \b Play button.
-
-\image html image105.gif
-<center><em>"Stop" button</em></center>
-
-\image html image104.gif
-<center><em>"Pause" button</em></center>
-
-\image html image103.gif
-<center><em>"Play" button</em></center>
-
-\note This functionality works only if there is \b jpeg2yuv utility
-installed on your computer. If this third-party product is missing,
-the \b Recording buttons will be disabled. This utility is a part of
-\b mjpegtool package, which can be downloaded from
-http://mjpeg.sourceforge.net/.  Run "which jpeg2yuv" to check whether
-this tool has been installed and the path to it was properly added to
-your PATH variable. If not, you need to activate \b mjpegtools
-indicating its location in the variable PATH. The syntax of the
-command should be as follows: export
-PATH=${INSTALL_ROOT}/mjpegtools-1.8.0/bin:${PATH}.
-
-*/
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/input/running_postpro.doc b/doc/salome/gui/VISU/input/running_postpro.doc
deleted file mode 100644 (file)
index 8d05063..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-/*!
-
-\page running_postpro_page Running Post-Pro
-
-\n To start Post-Pro module in the SALOME application click
-<em>"Post-Pro"</em> icon in the toolbar.
-
-\image html visuicon.jpg
-<center><em>"Post-Pro" icon</em></center>
-
-\note Before launching Post-Pro module, you should set the VTK viewer
-as default viewer for creation of a new study window. In Post-Pro you
-can create presentations only in the VTK viewer. (see also: Setting
-preferences)
-
-The initial desktop of the SALOME platform will be updated with some
-additional toolbars and menus related to Post-Pro component . It will
-look like as follows:
-
-\image html visufullscreen.png
-
-*/
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/input/scalar_bar.doc b/doc/salome/gui/VISU/input/scalar_bar.doc
deleted file mode 100644 (file)
index 9c0d071..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-/*!
-
-\page scalar_bar_page Scalar Bar
-
-\n Gauss Points Presentations presume that two different scalar bars
-are displayed simultaneously:
-\n The Global scale corresponds to the minimum and maximum values
-founded for the variable at all time stamps (located on the left
-side). When active, the second is displayed in grey and disabled. The
-Local scale defines the minimum and maximum values at the current time
-stamp for the variable (located on the right side). When the Local
-scale is active, the Global scale shows its limits 2 black lines.
-
-The dialog allows user to define the characteristics of the scalar
-bars displayed within the scene.
-
-\image html gpp6.png
-
-<ul>
-<li><b>Active bar</b></li>
-<ul>
-<li>\b Local: when selected, the \b Local bar will be active and
-colors used for rendering of the results will be taken from this
-bar. If displayed, the \b Global bar will be displayed in grey and 2
-markers will define the limits of the local min/max range.</li>
-<li>\b Global: when selected, the \b Global bar will be active and
-colors used for rendering of the results will be taken from this bar
-(i.e.: not all colors may be used to display results at a given time
-stamp). \b Local bar will be displayed in grey  and inactive.</li>
-<li>\b Displayed: when checked, the \b Global bar is displayed, else
-it is not seen. This control is systematically checked and disabled
-when the \b Global bar is defined as active.</li>
-</ul>
-<li><b>Scalar range</b></li>
-<ul>
-<li><b>Scalar Mode:</b> this feature allows refining the value to be
-inspected:</li>
-<ul>
-<li>\b Modulus: value of a scalar or modulus of a vector.</li>
-<li><b>Component N:</b> Nth component of a vector, a tensor or a
-matrix.</li>
-</ul>
-</ul>
-<li><b>Colors and labels</b></li>
-<ul>
-<li>\b Bicolor: only 2 colors are used for the active bar:</li>
-<ul>
-<li>\b Red for positive values.</li>
-<li>\b Blue for negative values.</li>
-</ul>
-These colors also correspond to the colors associated to min/max
-values of the palette option.
-</ul>
-<ul>
-<li>\b Rainbow: A palette of several colors will be used to render the
-results. A regular and linear progression is considered from min to
-max.</li>
-<ul>
-<li><b>Nb. of colors:</b> defines the number of color to design the
-palette (up to 256 colors can be used).</li>
-<li><b>Nb. of labels:</b> defines the number of labels to be written
-in the bar as text markers.</li>
-</ul>
-</ul>
-<li>\b Orientation - allows to choose between \b Vertical and \b
-Horizontal orientation.</li>
-<li>\b Origin - allows to define placement and lookout of Scalar
-Bars.</li>
-<ul>
-<li>\b X: abscissa of the point of origin (from the left side).</li>
-<li>\b Y: ordinate of the origin of the bar (from the bottom).</li>
-</ul>
-<li>\b Dimensions - allows to define \b Width and \b Height of each
-bar.</li>
-<ul>
-<li>\b Spacing -  space between the bars (only if both are displayed). </li>
-</ul>
-<li><b>Text properties:</b> allows to define properties of font and
-text associated to the active bar.</li>
-<li><b>Bar properties:</b> It allows changing the relative scale of Title, Labels and Color Bar. It is possible to change the visibility of units in Scalar Bar title and format of labels.</li>
-</ul>
-
-*/
index 1f92cc3cb7a57c767ad51fd6ffde18309b15071e..749ff40ce9cab101d87497ba5900baeab867ac30 100644 (file)
@@ -2,6 +2,9 @@
 
 \page scalar_map_page Scalar Map presentation
 
+\n \image html scalar_map_on_points.png "Scalar map on Point Mesh"
+
+
 \n <b>Scalar Map</b> is the basic type of visualization of calculation
 data in \b Post-Pro module. This presentation consists of the
 following:
@@ -37,7 +40,7 @@ The following dialog box will appear:
 
 \image html scalarbarproperties.png
 
-\note This dialog box is equal for all types of field presentations
+\note This dialog box is the same for all types of field presentations
 and it will be present as an additional tab in all dialog boxes
 allowing to create the other types of presentations. It allows to set
 the parameters of <b>Scalar range</b>, as well as the parameters of
@@ -91,7 +94,7 @@ orientation of the scalar bar.</li>
 <li><b>Origin:</b> you can enter X & Y coordinates of the origin of
 the scalar bar.</li>
 <li><b>Dimensions:</b> you can enter \b Width and \b Height of the
-scalar bar.</li>
+scalar bar specified in % of the size of view.</li>
 <li><b>Text properties</b> button allows you to define from the
 following dialog box:
 
@@ -110,19 +113,63 @@ following dialog box:
 \image html barproperty.png
 
 <ul>
-<li>Relative \b width and \b height of \b Title (in percents),</li>
-<li>Relative \b width and \b height of \b Labels (in percents),</li>
-<li>Relative \b width and \b height of \b Bar (in percents),</li>
+<li>Relative \b size of \b Title (in percents of the width of scalar bar widget),</li>
+<li>Relative \b size of \b Labels (in percents of the width of scalar bar widget),</li>
+<li>Relative \b width and \b height of \b Bar (in percents of the width and height of scalar bar widget),</li>
 <li>Visibility of \b Units in \b Title,</li>
-<li>Format of \b Labels.</li>
+<li>Precision of \b Labels which specifies the number of characters to be printed, the number of decimal places, or the number of significant digits</li>
 </ul>
 </li>
+<li> <b> Preview </b> checkbox allows to see a preview of the
+presentation while editing <b>Scalar Bar</b> properties. </li>
+<li> <b> Show distribution </b> checkbox introduces additional curved
+scalar bar representing the distribution curve according to the number
+of mesh elements of the corresponding color. This bar is always placed
+along the scalar bar.</li>
+
+\image html distributionbar.png "Distribution Bar" 
+
+<li> <b>Save as default </b> checkbox saves the modified
+<b>Scalar Bar</b> parameters as default for all other
+presentations.</li>
+</ul>
+
+\note The following option is relevant only for Gauss Points presentations.
+
+\n Gauss Points Presentations presume that two different scalar bars
+are displayed simultaneously:
+\n The Global scale corresponds to the minimum and maximum values
+founded for the variable at all time stamps (located on the left
+side). When active, the second is displayed in grey and disabled. The
+Local scale defines the minimum and maximum values at the current time
+stamp for the variable (located on the right side). When the Local
+scale is active, the Global scale shows its limits with two black
+lines.
+
+\image html activebar2.png "Local and Global bars"
+
+Local and Global bars can be switched in the <b>Scalar bar</b> tab for
+Gauss Points presentation. 
+
+\image html activebar1.png
+
+<ul>
+<li>\b Local: when selected, the \b Local bar will be active and
+colors used for rendering of the results will be taken from this
+bar. If displayed, the \b Global bar will be displayed in grey and 2
+markers will define the limits of the local min/max range.</li>
+<li>\b Global: when selected, the \b Global bar will be active and
+colors used for rendering of the results will be taken from this bar
+(i.e.: not all colors may be used to display results at a given time
+stamp). \b Local bar will be displayed in grey  and inactive.</li>
+<li>\b Displayed: when checked, the \b Global bar is displayed, else
+it is not seen. This control is systematically checked and disabled
+when the \b Global bar is defined as active.</li>
 </ul>
 
-After you have finished with setting these parameters, click \b
-OK. Your presentation with scalar bar will be immediately displayed in
-the viewer:
+After you have finished with setting the parameters, click \b
+OK. The presentation will be immediately displayed in the viewer:
 
-\image html scalarrangesn.png
+\image html scalar_map_on_cells.png "Scalar map on Cell Mesh"
 
 */
diff --git a/doc/salome/gui/VISU/input/scalar_map_on_deformed_shape.doc b/doc/salome/gui/VISU/input/scalar_map_on_deformed_shape.doc
new file mode 100755 (executable)
index 0000000..f5fac0d
--- /dev/null
@@ -0,0 +1,48 @@
+/*!
+
+\page scalar_map_on_deformed_shape_page Deformed Shape and Scalar Map presentation
+
+\image html scalar_map_and_deformed_shapes.png "Example of Deformed Shape and Scalar Map presentation"
+
+\n <b>Deformed Shape and Scalar Map</b> presentation is a mix of the
+two: \ref scalar_map_page "Scalar Map" and \ref deformed_shape_page
+"Deformed Shape". In this presentation the Scalar Map is built on a
+Deformed Shape.
+
+<em>To create a Deformed Shape and Scalar Map presentation:</em>
+\par
+&ndash; Right-click on one of the time stamps of the field in the
+Object browser and from the pop-up menu choose <b>Deformed Shape and
+Scalar Map</b>, or
+\n &ndash; Click on one of the time stamps of the field in the Object
+browser and select from the main menu <b>Visualization > Deformed Shape and
+Scalar Map</b>, or click <em>"Deformed Shape and Scalar Map"</em>
+icon in the <b>Visualization Toolbar</b>.
+
+\image html image40.gif
+<center><em>"Deformed Shape and Scalar Map" icon</em></center>
+
+\image html smds1.png
+
+\par
+<b>Deformed Shape and Scalar Map</b> tab allows you to set additional
+parameters of your Deformed Shape and Scalar Map presentation:
+<ul>
+<li><b>Scale Factor:</b> visualization scaling of all vector values
+applied to the cells of the mesh.</li>
+<li><b>Fields:</b> allows to choose type of fields on which the
+presentation will be built.</li>
+<li><b>Time Stamp:</b> allows to choose the time stamp on which the
+presentation will be built.</li>
+</ul>
+<b>Scalar Bar</b> tab allows to define the parameters of the scalar
+bar displayed with this presentation (\ref scalar_map_page "see also").
+
+After you have finished with setting these parameters, click \b
+OK. Your presentation will be immediately displayed in the viewer.
+
+You can compire result presentation with \ref scalar_map_page "Scalar Map" presentation
+
+\image html scalar_map_on_cells.png "Example of Scalar Map presentation"
+
+*/
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/input/segmentation.doc b/doc/salome/gui/VISU/input/segmentation.doc
deleted file mode 100644 (file)
index bbfa7ba..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-/*!
-
-\page segmentation_page Segmentation
-
-\n \b Segmentation is a functionality similar to \b Clipping in \b
-Mesh and \b Geom modules.
-
-\b Segmentation can be activated by clicking <em>"Plane
-Segmentation"</em> or <em>"Sphere Segmentation"</em> button in the
-Gauss Viewer toolbar.
-
-\image html image35.gif
-<center><em>"Plane Segmentation" icon</em></center>
-
-\image html image38.gif
-<center><em>"Sphere Segmentation" icon</em></center>
-
-Once the command is activated, a new window, below the main 3D view is
-created to display the content of the segmentation cursor. A dialog
-box is also displayed to manually configure the segmentation cursor
-parameters.
-\n The <b>Main view</b> (top) shows the results at Gauss points with
-scalar bars. A semi-transparent <b>Segmentation Cursor</b> defines the
-part of the variables to be inspected.  Two different presentations
-for Gauss points are used, depending on location of the points: \b
-Inside or \b Outside the segmentation cursor. 
-\n The <b>Secondary view</b> (bottom) is also called <b>Segmentation
-Viewer</b>. It shows, in real time, the results at Gauss points only
-(no mesh elements) that are located inside the segmentation
-cursor. Gauss points are displayed in the same way as \b Inside points
-in the first view. This view is automatically updated when the cursor
-is changed in the first view.
-\n <b>Gauss Points</b> tab of the Segmentation menu allows to define
-visualization parameters for Inside and Outside cursor Gauss Points.
-See \ref primitive_types_page "Primitives" and 
-\ref types_of_gauss_points_presentations_page "Presentations" to learn
-about parameters definable in this tab.
-
-\image html planes.png
-
-<b>Plane segmentation</b> is characteristic for its Segmentation
-Cursor in the form of a box with an axis to define its orientation and
-two planes defining its upper and lower boundaries.
-\n It can be defined in Segmentation Cursor tab, which allows to
-define coordinates of origin, direction and depth of the segmentation
-plane.
-
-\image html image74.gif
-
-\image html image37.jpg
-
-Actually it is also possible to edit these parameters directly with
-the mouse in the main 3D view:
-<ul>
-<li>Translation (dragging) of the lower plane along the V axis changes
-the \b Origin of the cursor.</li>
-<li>Rotating the V axis around its origin defines a new \b Direction
-for the cursor.</li>
-<li>Dragging the upper plane along its axis changes the \b Depth of
-the cursor. It is not possible to move the lower above the upper plane
-(minimum depth is 0).</li>
-</ul>
-
-\image html spheroid.png
-
-<b>Sphere segmentation</b> is characteristic for its Segmentation
-Cursor in the form of a sphere with an axis to define its orientation.
-\n It can be defined in Segmentation Cursor tab, which allows to
-define coordinates of origin, and radius of the segmentation sphere.
-
-\image html image117.gif
-
-\image html image38.jpg
-
-The \b Origin can also be changed in the 3D Viewer by dragging the
-Sphere with the mouse.
-
-When the user exits the \b Segmentation menu, the function is ended
-and the second view (segmentation cursor viewer) is erased.
-
-*/
index e4e10e35c9ffcb6a326788341befb74106ba88d6..2652c69e9f31a609f1951ce4a3ca6bc799201875 100644 (file)
 /*!
 
-\page selection_info_page Selection Info
+\page selection_info_page Selection
 
-<em>To view the attributes of elements (cells, points, meshes)
-displayed in the viewer:</em>
+This functionality allows to view the attributes of elements
+(meshes, cells, points, gauss points) displayed in the viewer
 
 \image html cellsel.jpg
 
-\par
-In the main menu choose <b>Selection > Selection info...</b>,  choose
-the necessary type of elements (\b Point, \b Cell, or \b Actor) in the
-dialog box and click on the element of the required type in the
+By default the indication of position and size of the selected object is
+always present in the top left corner of the viewer. 
+
+\image html selection1.png
+
+To access more advanced selection possibilities the Main menu choose
+<b>View - > Windows -> Selection</b>,  choose
+the necessary type of elements (\b Actor, \b Cell, \b Point or \b
+Gauss \b Point) in the dialog box and click on the element of the required type in the
 viewer. The chosen element will be highlighted and its attributes will
-be displayed in this dialog box:
+be displayed in the dialog box.
 
-\image html dataonelements1.png
+\image html selection2.png
 
-You can get the following information about \b Points:
+An \b Actor (any 3D object (presentation of a submesh, field
+presentation) displayed in the viewer) possesses the following
+characteristics:
 <ul>
-<li>Mesh name</li>
-<li>Field name</li>
-<li>ID Number of the point</li>
-<li>Scalar value applied to the point (if any)</li>
-<li>Vector value applied to the point (if any)</li>
-<li>Coordinates of the point in 3d space</li>
-<li>Indexes (i,j,k) of the point (for structured meshes only)</li>
+<li> \b Mesh \b name - name of the mesh on which the presentation is built.</li>
+<li> \b Field \b name - name of the mesh on which the presentation is built.</li>
+<li> \b Position - coordinates of the object in 3d space.</li>
+<li> \b Size of the object (expressed as the extent along the coordinates).</li>
 </ul>
 
-<br>
-\image html dataonelements2.png
+\image html selection3.png
 
 The following information about \b Cells is available:
 <ul>
-<li>Mesh name</li>
-<li>Field name</li>
-<li>ID Number of the cell</li>
-<li>Scalar value applied to the cell (if any)</li>
-<li>Vector value applied to the cell (if any)</li>
-<li>Attributes of the points forming this cell (in table layout)</li>
+<li> \b Mesh \b name - name of the mesh on which the presentation is built.</li>
+<li> \b Field \b name - name of the mesh on which the presentation is built.</li>
+<li> \b ID - number of the cell.</li>
+<li> \b Scalar \b Value applied to the cell (if any).</li>
+<li> \b Vector \b Value applied to the cell (if any).</li>
+<li> Attributes of the points forming this cell (in table layout).</li>
 </ul>
 
-<br>
-\image html dataonelements3.png
+\image html selection4.png
 
-An \b Actor (any 3D object (presentation of a submesh, field
-presentation) displayed in the viewer) possesses the following
-characteristics:
+You can get the following information about \b Points:
 <ul>
-<li><em>Mesh name</em></li>
-<li><em>Field name</em></li>
-<li><em>Coordinates of the object in 3d space</em></li>
-<li><em>Size of the object (expressed as the extent along the coordinates)</em></li>
+<li> \b Mesh \b name - name of the mesh on which the presentation is built.</li>
+<li> \b Field \b name - name of the mesh on which the presentation is built.</li>
+<li> \b ID Number of the point.</li>
+<li> \b Scalar \b Value applied to the point (if any).</li>
+<li> \b Vector \b Value applied to the point (if any).</li>
+<li> \b Coordinates (x,y,z) of the point in 3d space.</li>
+<li> \b Indexes (i,j,k) of the point (for structured meshes only).</li>
+<li> \b Scalar and \b Vector values assigned to the point (if any).</li>
 </ul>
 
-\note Using this dialog box, you can examine the attributes of a
-definite point or cell, selected by its ID number. For that, you
-should only enter an ID number of a definite point or cell in the \b
+\note It is possible to examine the attributes of a
+definite point or cell, selected by its ID number. For that, input the ID number of a definite point or cell in the \b
 ID field, the attributes of this point or cell will be immediately
 displayed.
 
+Gauss points can be selected with the help of a special cursor with markers
+(pyramids). The cursor is dynamically generated so that the apexes
+of each pyramid touch the point sprite boundary, and the height of the
+pyramid is fixed.
+
+\image html image69.gif
+
+\n Once a point is selected, the presentation is centered around it.
+In the picture the already selected point is surrounded with yellow
+markers and the point touched by the cursor is surrounded with red markers. 
+\image html selection6.png
+
+In addition, the active scalar bar is updated to highlight the
+corresponding value of the selected scalar value by a black line.
+
+The following information is displayed in the dialog box:
+
+\image html selection5.png
+
+<ul>
+<li> \b Mesh \b name - name of the mesh on which the presentation is built.</li>
+<li> \b Field \b name - name of the mesh on which the presentation is
+built.</li>
+<li> <b>Parent ID </b> - ID of the point within its parent mesh element.</li>
+<li> <b>Local ID </b>  of the Gauss point.</li>
+<li><b>Display parent mesh element</b> - allows to visualize or hide
+the parent mesh element of the selected gauss point.</li>
+</ul> 
+
+<b> Find group</b> and <b> Selection Preferences</b> button are common for
+all types of selectable objects. 
+
+\image html selection7.png
+
+Here, it is possible to choose the mathematical formula, input
+values to limit the range of the selection and apply them with the
+checkmark button.
+Then the required element can be chosen from the list of elements
+fitting in the defined range.
+
+<b> Selection Preferences </b> button allows to customize selection preferences.
+
+\image html selection8.png
+
+<ul>
+<li>\b Cursor - allows to adjust the \b Size of the cursor (ranging from 0.1 to 1), the <b>Height of the pyramids</b>
+(ranging from 0 to 10) and the <b>Selection cursor color</b>. This
+control is relevant only for the selection of Gauss points.</li>
+<li>\b Tolerance - defines at which distance of the cursor from the
+point it becomes selected (ranges from 0.001 to 10).</li>
+<li><b>Information window</b> - allows to define the \b Transparency
+(from 0% = opaque to 100% = transparent) and \b Position of the
+window, which can be:</li>
+<ul>
+<li> \b Centered below the point, or </li>
+<li>located at <b>Top-left corner of the 3D view</b></li>
+</ul>
+<li><b>Movement of the Camera</b> can also be defined by the user.</li>
+<ul>
+<li><b>Zoom factor</b> - This value is used to define
+the focal distance at the first selected point (at the end of the
+movement of the camera). This value is a ratio that will be multiplied
+by the current zoom value.</li>
+<li><b>Number of steps</b> - defines the
+smoothness of camera movement at selection by the number of
+iterations between two positions. If set to 1 the camera is zoomed and centered at the point
+momentarily. Greater numbers mean very slow camera movement.</li>
+</ul>
+</ul>
+
+
 */
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/input/setting_properties_of_xy_plots.doc b/doc/salome/gui/VISU/input/setting_properties_of_xy_plots.doc
deleted file mode 100644 (file)
index e19b383..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-/*!
-
-\page setting_properties_of_xy_plots_page Setting properties of XY plots
-
-\n <em>To define properties of XY plots:</em>
-\par
-Right-click on the background of the Plot 2d viewer. The following
-menu will appear:
-
-\image html image13.gif
-
-\par
-<b>Erase all</b> - hides all previously displayed curves from the viewer. 
-\n \b Rename - allows to rename the object currently selected in the
-Object Browser (table, curve or XY plot).
-<br><br>
-\b Scaling gives you the possibility to select the scale (logarithmic
-or linear) for both axes.
-
-\image html image18.gif
-
-\par
-via <b>Fit Range</b> option you can access to the following menu:
-
-\image html fitdatarange.png
-
-\par
-<b>Curve Type</b> gives you the possibility to select the type for
-your curves.
-
-\image html image27.gif
-
-\par
-<b>Show Legend</b> triggers all labels on the graph.
-<br><br>
-<b>Settings</b> menu allows to adjust the representation of the graphs
-in the Plot 2d viewer.
-<br><br>
-<b>Dump View</b> - allows to save the current graph represented in the
-2D viewer in a graphic file.
-
-\image html dumpviewtofile.png
-
-\par
-<b>Change Background</b> - allows to change the background of the 2D
-viewer.
-
-*/
diff --git a/doc/salome/gui/VISU/input/slider.doc b/doc/salome/gui/VISU/input/slider.doc
new file mode 100755 (executable)
index 0000000..bf2f4cc
--- /dev/null
@@ -0,0 +1,57 @@
+/*!
+
+\page slider_page Slider
+
+\n \b Slider allows animating Post-Pro field presentations in the
+most simple and efficient way. \b Slider works only with field
+presentations created on all timestamps of the field. 
+
+\image html fieldpres3.png
+
+The presentations compatible with this
+functionality can be synchronized (in terms of timestamps) and moved
+along the time axis to reproduce the corresponding physical process.
+
+\b Slider also provides memory management possibilities, which allow the
+user to define a suitable compromise between the available computer
+resources and the navigation performance.
+
+\n \ref animating_page is an earlier implementation of the same
+functionality. However, it provides some extended possibilities, such
+as saving presentations into AVI files.
+
+To activate \b Slider, in the Main menu select <b>View -> Windows ->
+Slider</b>
+
+\image html slider1.png
+
+\b Navigation tab provides possibilities for managing and running
+the animation:
+<ul>
+<li>The scroll bar allows to navigate through the
+timestamps. The values of the first and the last timestamps are
+displayed. </li>
+<li>The control buttons allow to launch or to end the sweeping, run it forward or backward,
+move to the next or the previous frame.</li>
+<li>The drop-down field to the left lists the timestamps by their order
+numbers from 1 to n. </li>
+<li>The drop-down field to the right lists the values
+of the timestamps. </li>
+<li>Cycled button allows to view the animation in the loop.</li>
+</ul>
+
+\image html slider2.png
+
+\b Properties tab allows setting memory management properties.
+<ul>
+<li> \b Minimal radio button commands the application to use a minimum
+amount of memory</li>
+<li> \b Limited radio button allows to set the upper limit for the
+amount of used memory.</li>
+<li> \b Used  and \b Free fields allow to set target values for used
+and free memory.</li>
+<li> \b Speed scroll allows to set the speed of the presentation.</li>
+<ul>
+
+
+*/
\ No newline at end of file
index 4b7bf1469b7f0f6740e61bfba278d3ef1f93d0e2..b040a28727af9d7aa93fe7541283c073cd0a0a1b 100644 (file)
@@ -2,6 +2,9 @@
 
 \page stream_lines_page Stream Lines presentation
 
+\image html stream_lines.png "Example of Stream Lines presentation"
+
+
 \n <b>Stream Lines</b> is a type of presentation transforming the
 cells with vectors having most similar direction into lines . A
 streamline can be thought of as the path that a massless particle
@@ -78,6 +81,4 @@ After you have finished with setting these parameters, click \b
 OK. Your presentation with scalar bar will be immediately displayed in
 the viewer:
 
-\image html streamlinesprsnt.png
-
 */
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/input/structure_of_med_objects.doc b/doc/salome/gui/VISU/input/structure_of_med_objects.doc
deleted file mode 100644 (file)
index 835290b..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-/*!
-
-\page structure_of_med_objects_page Structure of MED objects
-
-\n In \b Post-Pro module 3d representations are constructed on the
-base of  submeshes representing parts of a mesh, which is stored in
-form of MED objects in *.med files. Each MED object has its own
-user-defined structure.
-
-In general, the mesh represents an object including the following
-types of data:
-<ul>
-<li><em>Geometrical information: list of nodes, edges, faces and cells
-of the mesh;</em></li>
-<li><em>Information on the interpolation in accordance with resulting
-elements: the mesh should be compatible with chosen
-interpolation;</em></li>
-<li><em>Physical information: initial and boundary conditions. (Scalar
-or vector values applied to the cells of the mesh)</em></li>
-</ul>
-
-The structure of MED object has a tree-like form. It contains three
-main folders: \ref families_anchor "Families", 
-\ref groups_anchor "Groups", \ref fields_anchor "Fields".
-
-\image html snapfgf.png
-
-<br>
-\anchor families_anchor
-<h2>Families</h2>
-
-From general point of view, the whole mesh is divided into \b families,
-submeshes created by the user. <em>Every \b family is composed of cells of a
-definite type  - it can be Nodes, Edges, Faces or Cells</em>. The
-presentation created on the basis of a particular \b family will be
-composed of geometrical elements, corresponding to the type of cells
-of this \b family.
-
-<center>
-<table>
-<tr>
-<td><b>Type of cells (entities) of the family</b></td>
-<td><b>Geometrical element</b></td>
-</tr>
-<tr>
-<td>Nodes</td>
-<td>Points</td>
-</tr>
-<tr>
-<td>Edges</td>
-<td>Segments</td>
-</tr>
-<tr>
-<td>Faces</td>
-<td>Triangles, quadrangles</td>
-</tr>
-<tr>
-<td>Cells</td>
-<td>Any</td>
-</tr>
-</table>
-<em>Table of correspondence</em>
-</center>
-
-In the folder \b Families all families of the mesh are put into the
-following subfolders, defining the type of cells of the mesh: \b onNodes,
-\b onEdges, \b onFaces, \b onCells.
-\n These subfolders also represent submeshes of the mesh, which are
-composed of all cells of the mesh of this type.
-
-<br>
-\anchor groups_anchor
-<h2>Groups</h2>
-
-\b Groups combine different families independently of the type of
-cells, they are composed of.
-
-<br>
-\anchor fields_anchor
-<h2>Fields</h2>
-
-\b Fields represent the results of calculations (scalar or vector
-values), grouped together under one physical concept.
-\n These values are applied to the cells of a definite submesh, which
-is indicated in the Object Browser in the subfolder of the \b field. 
-\n Most often the calculations are performed during some period of
-time. That's why \b fields include <b>Time Stamps</b>, representing
-the results of calculations in one definite moment. In \b Post-Pro
-field presentations are constructed basing on these <b>Time
-Stamps</b>. (See: \ref creating_field_presentations_page "Creating field presentations")
-
-*/
\ No newline at end of file
index 02be51cc9df2df7d6d85b2cae5c08de68f8291e0..cd243d2241af69a60a753582fd3730c656507b64 100644 (file)
@@ -5,8 +5,8 @@
 \n In \b Post-Pro there is an option allowing to display
 pseudo-animation of a field presentation. For creation of this
 pseudo-animation you should take one field presentation generated on
-the base of \n ONE Time Step (for comparison, \ref animating_page "Animation" is generated on
-the base of \n ALL Time Steps of a field). The frame displaying this
+the base of ONE Time Step (for comparison, \ref animating_page "Animation" is generated on
+the base of ALL Time Steps of a field). The frame displaying this
 field presentation will be the \em basic. \b Post-Pro automatically
 generates another frame displaying the \em initial field presentation,
 which is composed of cells with \em minimum acceptable values regarding
@@ -19,13 +19,39 @@ a type of animation composed of these frames: the frame displaying the
 displaying the \em basic field presentation will end it.
 
 <em>To sweep a field presentation:</em>
-<ol>
-<li>\ref creating_field_presentations_page "Create a field presentation".</li>
 
-<li>Right-click on this presentation in the Object Browser or in the
-viewer.</li>
+\ref creating_field_presentations_page "Create a field presentation".
+In the Main menu select <b>View -> Windows -> Sweep</b>. The following
+dialog will appear.
 
-<li>From the pop-up menu select \b Sweep option.</li>
-</ol>
+\image html sweep1.png
+
+\b Navigation tab provides possibilities for managing and running
+the sweep:
+<ul>
+<li>Control buttons allow to launch or end the sweeping, run it forward or backward,
+move to the next or the previous frame.</li>
+<li> \b Cycled checkbox allows to view the sweep in the loop.</li>
+</ul>
+
+\image html sweep2.png 
+
+\b Properties tab allows to set sweep properties.
+<ul>
+<li> \b Mode gives the choice between \b Linear, \b Sine and \b Cosine
+sweeping. </li>
+<li> <b>Number of steps</b> - allows to set the number of steps,
+which will compose the whole animation.</li>
+<li> <b>Step delay</b> - allows to set the time of representation of
+one step. </li> 
+</ul>
+
+It is also possible to fast-launch \b Sweep with default parameters by
+right-clicking on the presentation in the Object Browser or in the
+viewer and selecting \b Sweep in the context menu.
+
+Default parameters for \b Sweep can be set in the Main menu in <b>File
+-> Preferences -> Post-Pro -> Sweep, Animation</b> tab
 
 */
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/input/table_3d.doc b/doc/salome/gui/VISU/input/table_3d.doc
new file mode 100644 (file)
index 0000000..d389fee
--- /dev/null
@@ -0,0 +1,50 @@
+/*!
+
+\page table_3d_page Table 3D presentation
+
+\n <b>Table 3D</b> is a 3D graphic presentation of data contained in the table. 
+The relief and coloring of the resulting
+presentation both correspond to the values contained in the table. The values from the first column of the 
+table define X-axis. The values from the second to the last columns define Z-axis. 
+Y increases with a fixed step starting from Y=0. 
+To successfully produce a Table 3D presentation, the table should not contain empty fields. 
+
+<em>To create a Table 3D presentation:</em>
+\par
+&ndash; Right-click on an XLS table in the
+Object browser and from the context menu choose <b>Show</b>, or <b>Show only</b>
+
+\image html table.png
+
+The table will be immediately displayed in the Viewer.
+
+Choose <b>Edit</b> in the context menu if you wish to change the layout of the presentation.
+
+\image html table3d.png
+
+\par
+<ul>
+<li><b>Scale Factor</b> - visualization scaling of all values of the table.</li>
+<li><b>Presentation type:</b></li>
+<ul>
+<li>\b Surface - Plot 3D will be represented with a smooth surface.</li>
+
+\image html tablesn2.png
+
+<li>\b Contour - Plot 3D will be represented with a set of contours.</li>
+
+\image html tablesn1.png
+
+</ul>
+<li><b>Number of contours</b> - allows to define the number of
+contours (active when Contour presentation type is selected).</li>
+<li> <b>Scalar Bar</b> tab allows to define the parameters of the scalar
+bar displayed with this presentation (\ref scalar_map_page "see also").</li>
+</ul>
+
+It is also possible to choose \b Wireframe or \b Shading \b Representation type, change
+such properties as \b Opacity and <b> Line Width </b> and <b> Translate </b> the presentation using the context menu.  
+
+
+
+*/
\ No newline at end of file
index 9e6dc79fe1e6bacc0baab15238f125ef00ba4df4..ee162476d4e48239c66989c16c17a139279c6876 100644 (file)
@@ -1,12 +1,38 @@
 /*!
 
-\page table_presentations_page Table presentations
-
-<ul>
-<li>\subpage about_tables_page</li>
-<li>\subpage importing_exporting_tables_page</li>
-<li>\subpage displaying_tables_page</li>
-<li>\subpage creating_tables_from_cut_lines_page</li>
-</ul>
+\page table_presentations_page DataTable object
+
+<b>DataTable object</b> is a way to represent a two-dimensional data array
+(data arranged in rows and columns) in Salome. Each column groups values expressed in certain measurement \b units.
+All \b columns and <b>rows</b>  have  </b>titles</b>. Tables can be \b
+rarefied, which means that some cells may be empty, without any
+values.
+
+<b>DataTable object</b> can be created directly, with the usage of a
+special programming API (this problem lies out of the scope of Salome
+GUI Help), or \subpage importing_exporting_tables_page "imported"
+from properly defined ACSII files. 
+
+\note Alternatively, it is possible to  create a table from
+the scalar values applied to the cells forming a \ref cut_lines_page "Cut Lines"
+presentation. Simply  right-click on the presentation in the Object
+Browser or in the viewer and select <b>Create Table</b> from the pop-up menu.
+
+Tables are not displayed automatically. To view the imported table,
+right-click on it in the Object Brower and select <b>Show Table</b>
+in the context menu.
+
+\image html viewtable.png
+
+It is also possible to create 
+\subpage table_3d_page "Table 3D presentation" basing on the table
+data and display it in the VTK viewer.
+
+Another way of exploiting table data is 
+\subpage creating_curves_page "creating curves" and
+ \subpage creating_plot2d_page "displaying them in the Plot 2D viewer".
+Plot 2D viewer is described in the documentation on GUI module. 
+
 
 */
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/input/values_labeling.doc b/doc/salome/gui/VISU/input/values_labeling.doc
new file mode 100644 (file)
index 0000000..e6d3f93
--- /dev/null
@@ -0,0 +1,34 @@
+/*!
+
+\page values_labeling_page Values labeling
+
+<br><h2>Displaying value labels</h2>
+
+In VISU you can display values applied to the cells or nodes of 3D presentation intended for visualization of calculation data.
+
+<em>To display labels for values:</em>
+<ol>
+<li>Display your presentation in 3d viewer</li>
+<li>Right-click on the presentation in the 3D viewer and from the associated pop-up menu choose <b>Values labeling</b>.</li>
+</ol>
+
+It will looks as follow:
+
+\image html values_labeling.png
+
+<br><h2>Parameters of values labeling</h2>
+
+You have ability to change parameters of values labeling such as font and color. Default parameters can be specified using "Preferences" dialog box. Also you can change parameters  for each presentation.
+
+<em>To change parameters of the presentation:</em>
+<ol>
+<li>Display your presentation in 3d viewer</li>
+<li>Right-click on the presentation in the 3D viewer and from the associated pop-up menu choose <b>Labeling parameters</b>.</li>
+<li>Use "Parameters of values labeling" dialog box for the operation</li>
+</ol>
+
+It will looks as follows:
+
+\image html labeling_parameters.png
+
+*/
index 21dc6d9c9968b3467af664b8c05b6482254fcb97..4b2509955d07162d50caf0ea02b902f2988b0d1c 100644 (file)
@@ -2,6 +2,8 @@
 
 \page vectors_page Vectors Presentation
 
+\image html vectors.png "Example of Vectors presentation"
+
 \n <b>Vector Field</b> presentation visualizes vectors of the
 corresponding cells of the mesh in graphical mode.
 
@@ -43,6 +45,4 @@ After you have finished with setting these parameters, click \b
 OK. Your presentation with scalar bar will be immediately displayed in
 the viewer:
 
-\image html vectorsprsnt.png
-
 */
index 890a53d7b55240c8231c456cbe3ad7e2d8516b38..052ef24a64dc5aca33bd4285face90de18386747 100644 (file)
 
 \page viewing_3d_presentations_page Viewing 3D presentations
 
+\n Each  newly created presentation is displayed in the <b>VTK 3D
+Viewer</b>. <b>VTK 3D Viewer</b> is described in details in the
+documentation on GUI module.
+\n To display an existing presentation, right-click on it in the
+Object Browser and select \b Show.
+
+\image html viewing3.png
+
+Right mouse-click on the Presentation gives access to the following
+options:
+
+\image html viewing1.png
+
+\note All parameters are context-sensitive: NOT all types of
+visualization and NOT all properties can be set for a certain 3D
+presentation.
+
 <ul>
-<li>\subpage viewing_3d_presentations_intro_page</li>
-<li>\subpage translate_presentation_page</li>
-<li>\subpage clipping_page</li>
-<li>\subpage sweeping_page</li>
-<li>\subpage selection_info_page</li>
+<li><b>Hide all</b> - allows to hide all objects from the
+viewer.</li>
+<li><b>Edit</b> - allows to return to the menu, where the presentation
+has been created and change its parameters.</li>
+<li><b>Filter by Scalars</b> - allows showing only the cells with
+values that fit into the defined <b>Scalar Range</b>.
+
+\image html viewing2.png
+
+In this menu, check in <b>Filter by scalar range</b> box and input
+the minimum and the maximum values for the <b>Scalar Range</b></li>
+
+\image html viewing4.png 
+
+<li><b>Rename</b> - allows to rename the presentation.</li>
+<li><b>Copy</b> - allows to create a copy of the presentation in the
+same subfolder (time stamp) in the Object Browser.</li>
+
+<li><b>Hide</b> - allows to hide the selected presentation from the
+viewer.</li>
+<li>If selected in the Object Browser, <b>Hide</b> is replaced by
+<b>Show</b>, which allows to display the selected presentation in the
+viewer.</li>
+
+<li><b>Show Only</b> - allows to display only the selected
+presentation, hiding all other from the viewer.</li>
+<li><b>Representation</b> - allows to switch among the available
+representation types.
+
+\image html viewing10.png 
+
 </ul>
 
-*/
\ No newline at end of file
+\image html viewing5.png "Points"
+
+\image html viewing6.png "Surface" 
+
+\image html viewing7.png "Wireframe"
+
+\image html viewing8.png "Insideframe - displays the wires lying within the object"
+
+\image html viewing9.png "Surfaceframe - displays wires and cells lying on the object surface" 
+
+\image html viewing11.png "Feature edges - shows the contour of the object" 
+
+\image html viewing12.png "Shrink"
+
+<b>Shading on</b> - colors the object in a realistic
+way, revealing its geometry, for example, by applying shadows to the inside regions; used together with \b Surface.
+
+<b>Shading off</b> - colors the object basing only on scalar values. </li>
+
+\anchor width_opacity_anchor
+<ul>
+<li>\b Properties</li>
+
+\image html viewing13.png
+<ul>
+<li>\b Opacity - allows to set the value of opacity of the
+presentation between 0 (transparent) and 100 (opaque).</li>
+<li><b>Line Width</b> - allows to set the width of lines representing
+edges of the presentation between 1 (thin) and 100 (thick).</li>
+</ul>
+<li>\ref translate_presentation_page "Translate Presentation" - allows
+to translate the presentation along coordinate axes.</li>
+<li>\ref clipping_page "Clipping Planes" - allows to create
+cross-section views of presentations.</li>
+<li>\ref sweeping_page "Sweep" - allows to display pseudo-animation of
+the presentation.</li>
+
+<li><b>Dump view</b> - exports an object from the viewer in bmp, png,
+jpg or jpeg image format.</li>
+<li><b>Change Background</b> - allows to change the properties of the
+background.</li>
+<li><b>View Operations</b> checkbox - shows or hides the VTK viewer
+toolbar. The information about the VTK viewer functionalities is
+available in the documentation on the GUI module.</li>
+<li><b>Recording operations</b> checkbox - shows or hides buttons used
+for \ref recording_page "Recording" </li>
+
+<li>The following menu items are added when the presentation is
+selected in the Object Browser</li>.
+<ul>
+<li> \b Delete - removes the presentation from the study.</li>
+<li> \b Refresh - updates the presentation in the VTK viewer </li>
+<li> \b Find - activates <b> Find Tool</b> described in the documentation
+on GUI module. </li>
+
+</ul>
+</ul>
+
+When you create several presentations of the same object, you may wish
+to see them simultaneously,  which might be impossible, because they
+all are located at the same place. To solve this problem, right-click
+in the viewer and select <b>Arrange Actors</b> in the pop-up menu.
+
+\image html arrangeactors.png
+
+In \b Auto mode you specify along which \b Axis and at which
+<b>Relative Distance</b> the presentations should be lined up.
+
+\image html arrangeactors1.png
+
+In \b Manual mode you set the coordinates for each presentation
+separately.
+
+<br>
+Displaying several presentations at the same time may cause
+superposition of their scalar bars. To avoid this, check <b>Arrange
+Scalar Bars</b> radio button  in the <b>Preferences -> Post-Pro ->
+Scalar Bar</b>. A separate scalar bar will be displayed for each
+presentation.
+\n Alternatively you may wish to merge the scalar bars to have a
+common scalar bar for all presentations. To do this, select several
+presentations or fields in the object browser, right-click and from
+the pop-up menu select <b>Merge Scalar Range</b>.
+\n To restore separate bars and scales for each module select <b>Use
+Field Range</b> from the same menu.
+
+*/
diff --git a/doc/salome/gui/VISU/input/viewing_3d_presentations_intro.doc b/doc/salome/gui/VISU/input/viewing_3d_presentations_intro.doc
deleted file mode 100644 (file)
index 942fea4..0000000
+++ /dev/null
@@ -1,109 +0,0 @@
-/*!
-
-\page viewing_3d_presentations_intro_page Viewing 3D presentations
-
-\n Each  newly created presentation is displayed in the <b>VTK 3D
-Viewer</b>. <b>VTK 3D Viewer</b> is detailly described in the
-documentation on GUI module.
-\n To display an existing presentation, right-click on it in the
-Object Browser and select \b Display.
-
-Right mouse-click on the Presentation gives access to the following
-options:
-
-\image html image23.gif
-
-\note All parameters are context-sensitive: NOT all types of
-visualization and NOT all properties can be set for a certain 3D
-presentation.
-
-<ul>
-<li><b>Hide all</b> - allows to hide all objects from the
-viewer.</li>
-<li><b>Edit</b> - allows to return to the menu where the presentation
-has been created and change its parameters.</li>
-<li><b>Rename</b> - allows to rename the presentation.</li>
-<li><b>Copy</b> - allows to create a copy of the presentation in the
-same subfolder (time stamp) in the Object Browser.</li>
-<li><b>Hide</b> - allows to hide the selected presentation from the
-viewer.</li>
-<li><b>Display Only</b> - allows to display only the selected
-presentation, hiding all other from the viewer.</li>
-<li><b>Representation</b> - allows to switch among the available
-representation types.</li>
-</ul>
-
-\image html image20.gif
-<center><b>Points</b></center>
-
-\image html image5.jpg
-<center><b>Surface</b></center>
-
-\image html image2.jpg
-<center><b>Wireframe</b></center>
-
-\image html image3.jpg
-<center><b>Insideframe</b> (displays the wires lying within the object)</center>
-
-\image html image4.jpg
-<center><b>Shrink</b></center>
-
-\image html image1.jpg
-<center><b>Shading on</b></center>
-
-\anchor width_opacity_anchor
-<ul>
-<li>\b Properties</li>
-<ul>
-<li>\b Opacity - allows to set the value of opacity of the
-presentation between 0 (transparent) and 100 (opaque).
-
-\image html neo-transparency.png
-</li>
-
-<li><b>Line Width</b> - allows to set the width of lines representing
-edges of the presentation between 1 (thin) and 100 (thick).</li>
-</ul>
-<li>\ref translate_presentation_page "Translate Presentation" - allows
-to translate the presentation along coordinate axes.</li>
-<li>\ref clipping_page "Clipping Planes" - allows to create
-cross-section views of presentations.</li>
-<li>\ref sweeping_page "Sweep" - allows to display pseudo-animation of
-the presentation.</li>
-<li>\ref selection_info_page "Selection Info" - provides information
-about the attributes of elements displayed in the viewer.</li>
-<li><b>Dump view</b> - exports an object from the viewer in bmp, png,
-jpg or jpeg image format.</li>
-<li><b>Change Background</b> - allows to change the properties of the
-background.</li>
-</ul>
-
-When you create several presentations of the same object, you may wish
-to see them simultaneously,  which might be impossible, because they
-all are located at the same place. To solve this problem, right-click
-in the viewer and select <b>Arrange Actors</b> in the pop-up menu.
-
-\image html arrangeactors.png
-
-In \b Auto mode you specify along which \b Axis and at which
-<b>Relative Distance</b> the presentations should be lined up.
-
-\image html arrangeactors1.png
-
-In \b Manual mode you set the coordinates for each presentation
-separately.
-
-<br>
-Displaying several presentations at the same time may cause
-superposition of their scalar bars. To avoid this, check <b>Arrange
-Scalar Bars</b> radio button  in the <b>Preferences -> Post-Pro ->
-Scalar Bar</b>. A separate scalar bar will be displayed for each
-presentation.
-\n Alternatively you may wish to merge the scalar bars to have a
-common scalar bar for all presentations. To do this, select several
-presentations or fields in the object browser, right-click and from
-the pop-up menu select <b>Merge Scalar Range</b>.
-\n To restore separate bars and scales for each module select <b>Use
-Field Range</b> from the same menu.
-
-*/
diff --git a/doc/salome/gui/VISU/input/xy_plots.doc b/doc/salome/gui/VISU/input/xy_plots.doc
deleted file mode 100644 (file)
index 77881f4..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-/*!
-
-\page xy_plots_page XY plots
-
-<ul>
-<li>\subpage creating_curves_page</li>
-<li>\subpage creating_xy_plots_page</li>
-<li>\subpage setting_properties_of_xy_plots_page</li>
-</ul>
-
-*/
diff --git a/doc/salome/gui/VISU/pics/animatdef.jpg b/doc/salome/gui/VISU/pics/animatdef.jpg
deleted file mode 100755 (executable)
index ed9b469..0000000
Binary files a/doc/salome/gui/VISU/pics/animatdef.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/animation.png b/doc/salome/gui/VISU/pics/animation.png
deleted file mode 100755 (executable)
index 8507015..0000000
Binary files a/doc/salome/gui/VISU/pics/animation.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/arrangeactors.png b/doc/salome/gui/VISU/pics/arrangeactors.png
deleted file mode 100755 (executable)
index 8424e60..0000000
Binary files a/doc/salome/gui/VISU/pics/arrangeactors.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/arrangeactors1.png b/doc/salome/gui/VISU/pics/arrangeactors1.png
deleted file mode 100755 (executable)
index 560272f..0000000
Binary files a/doc/salome/gui/VISU/pics/arrangeactors1.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/begining.jpg b/doc/salome/gui/VISU/pics/begining.jpg
deleted file mode 100755 (executable)
index 9c62402..0000000
Binary files a/doc/salome/gui/VISU/pics/begining.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/blue_down.jpg b/doc/salome/gui/VISU/pics/blue_down.jpg
deleted file mode 100755 (executable)
index 5376a15..0000000
Binary files a/doc/salome/gui/VISU/pics/blue_down.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/blue_left.jpg b/doc/salome/gui/VISU/pics/blue_left.jpg
deleted file mode 100755 (executable)
index ceb91ef..0000000
Binary files a/doc/salome/gui/VISU/pics/blue_left.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/blue_right.jpg b/doc/salome/gui/VISU/pics/blue_right.jpg
deleted file mode 100755 (executable)
index bf6f924..0000000
Binary files a/doc/salome/gui/VISU/pics/blue_right.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/blue_up.jpg b/doc/salome/gui/VISU/pics/blue_up.jpg
deleted file mode 100755 (executable)
index 383840f..0000000
Binary files a/doc/salome/gui/VISU/pics/blue_up.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/buildprogress.png b/doc/salome/gui/VISU/pics/buildprogress.png
deleted file mode 100755 (executable)
index 8d1b185..0000000
Binary files a/doc/salome/gui/VISU/pics/buildprogress.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/cellsel.jpg b/doc/salome/gui/VISU/pics/cellsel.jpg
deleted file mode 100755 (executable)
index 8e7f8d9..0000000
Binary files a/doc/salome/gui/VISU/pics/cellsel.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/clipping1.png b/doc/salome/gui/VISU/pics/clipping1.png
deleted file mode 100755 (executable)
index 0c60603..0000000
Binary files a/doc/salome/gui/VISU/pics/clipping1.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/clipping2.png b/doc/salome/gui/VISU/pics/clipping2.png
deleted file mode 100755 (executable)
index ea11406..0000000
Binary files a/doc/salome/gui/VISU/pics/clipping2.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/createcurves.png b/doc/salome/gui/VISU/pics/createcurves.png
deleted file mode 100755 (executable)
index 82b50a0..0000000
Binary files a/doc/salome/gui/VISU/pics/createcurves.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/cutlines.png b/doc/salome/gui/VISU/pics/cutlines.png
deleted file mode 100755 (executable)
index 3db0909..0000000
Binary files a/doc/salome/gui/VISU/pics/cutlines.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/cutlinesicn.jpg b/doc/salome/gui/VISU/pics/cutlinesicn.jpg
deleted file mode 100755 (executable)
index eb43365..0000000
Binary files a/doc/salome/gui/VISU/pics/cutlinesicn.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/cutlinesicon.jpg b/doc/salome/gui/VISU/pics/cutlinesicon.jpg
deleted file mode 100755 (executable)
index cd86673..0000000
Binary files a/doc/salome/gui/VISU/pics/cutlinesicon.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/cutlinesprsnt.png b/doc/salome/gui/VISU/pics/cutlinesprsnt.png
deleted file mode 100755 (executable)
index 63b4fb0..0000000
Binary files a/doc/salome/gui/VISU/pics/cutlinesprsnt.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/cutplanes.png b/doc/salome/gui/VISU/pics/cutplanes.png
deleted file mode 100755 (executable)
index 579332a..0000000
Binary files a/doc/salome/gui/VISU/pics/cutplanes.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/cutplpresent.png b/doc/salome/gui/VISU/pics/cutplpresent.png
deleted file mode 100755 (executable)
index e97ff56..0000000
Binary files a/doc/salome/gui/VISU/pics/cutplpresent.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/dataonelements1.png b/doc/salome/gui/VISU/pics/dataonelements1.png
deleted file mode 100755 (executable)
index b9cb2c0..0000000
Binary files a/doc/salome/gui/VISU/pics/dataonelements1.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/dataonelements2.png b/doc/salome/gui/VISU/pics/dataonelements2.png
deleted file mode 100755 (executable)
index e532ef1..0000000
Binary files a/doc/salome/gui/VISU/pics/dataonelements2.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/dataonelements3.png b/doc/salome/gui/VISU/pics/dataonelements3.png
deleted file mode 100755 (executable)
index 2ae6448..0000000
Binary files a/doc/salome/gui/VISU/pics/dataonelements3.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/deformedshape.png b/doc/salome/gui/VISU/pics/deformedshape.png
deleted file mode 100755 (executable)
index 9b36a8d..0000000
Binary files a/doc/salome/gui/VISU/pics/deformedshape.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/deformedshapesn.png b/doc/salome/gui/VISU/pics/deformedshapesn.png
deleted file mode 100755 (executable)
index 9af0290..0000000
Binary files a/doc/salome/gui/VISU/pics/deformedshapesn.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/defshapeicon.jpg b/doc/salome/gui/VISU/pics/defshapeicon.jpg
deleted file mode 100755 (executable)
index 5d59f16..0000000
Binary files a/doc/salome/gui/VISU/pics/defshapeicon.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/dumpviewtofile.png b/doc/salome/gui/VISU/pics/dumpviewtofile.png
deleted file mode 100755 (executable)
index d67e2c0..0000000
Binary files a/doc/salome/gui/VISU/pics/dumpviewtofile.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/editplot2dpresentation.png b/doc/salome/gui/VISU/pics/editplot2dpresentation.png
deleted file mode 100755 (executable)
index 43ac17d..0000000
Binary files a/doc/salome/gui/VISU/pics/editplot2dpresentation.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/end.jpg b/doc/salome/gui/VISU/pics/end.jpg
deleted file mode 100755 (executable)
index 3aef5d1..0000000
Binary files a/doc/salome/gui/VISU/pics/end.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/exporttable.png b/doc/salome/gui/VISU/pics/exporttable.png
deleted file mode 100755 (executable)
index 7b3a42e..0000000
Binary files a/doc/salome/gui/VISU/pics/exporttable.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/fitdatarange.png b/doc/salome/gui/VISU/pics/fitdatarange.png
deleted file mode 100755 (executable)
index be4c24d..0000000
Binary files a/doc/salome/gui/VISU/pics/fitdatarange.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/gpp2.png b/doc/salome/gui/VISU/pics/gpp2.png
deleted file mode 100755 (executable)
index 1562d03..0000000
Binary files a/doc/salome/gui/VISU/pics/gpp2.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/gpp3.png b/doc/salome/gui/VISU/pics/gpp3.png
deleted file mode 100755 (executable)
index 128e22b..0000000
Binary files a/doc/salome/gui/VISU/pics/gpp3.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/gpp6.png b/doc/salome/gui/VISU/pics/gpp6.png
deleted file mode 100755 (executable)
index 9408b33..0000000
Binary files a/doc/salome/gui/VISU/pics/gpp6.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/graduatedaxes1.png b/doc/salome/gui/VISU/pics/graduatedaxes1.png
deleted file mode 100755 (executable)
index cf021ba..0000000
Binary files a/doc/salome/gui/VISU/pics/graduatedaxes1.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image100.gif b/doc/salome/gui/VISU/pics/image100.gif
deleted file mode 100755 (executable)
index c44d68f..0000000
Binary files a/doc/salome/gui/VISU/pics/image100.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image102.gif b/doc/salome/gui/VISU/pics/image102.gif
deleted file mode 100755 (executable)
index 4a4900f..0000000
Binary files a/doc/salome/gui/VISU/pics/image102.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image103.gif b/doc/salome/gui/VISU/pics/image103.gif
deleted file mode 100755 (executable)
index 147612d..0000000
Binary files a/doc/salome/gui/VISU/pics/image103.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image104.gif b/doc/salome/gui/VISU/pics/image104.gif
deleted file mode 100755 (executable)
index 584b367..0000000
Binary files a/doc/salome/gui/VISU/pics/image104.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image105.gif b/doc/salome/gui/VISU/pics/image105.gif
deleted file mode 100755 (executable)
index 9d74786..0000000
Binary files a/doc/salome/gui/VISU/pics/image105.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image109.gif b/doc/salome/gui/VISU/pics/image109.gif
deleted file mode 100755 (executable)
index 5dbba46..0000000
Binary files a/doc/salome/gui/VISU/pics/image109.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image117.gif b/doc/salome/gui/VISU/pics/image117.gif
deleted file mode 100755 (executable)
index c0e2715..0000000
Binary files a/doc/salome/gui/VISU/pics/image117.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image157.gif b/doc/salome/gui/VISU/pics/image157.gif
deleted file mode 100644 (file)
index 2f66e05..0000000
Binary files a/doc/salome/gui/VISU/pics/image157.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image20.png b/doc/salome/gui/VISU/pics/image20.png
deleted file mode 100755 (executable)
index 2658973..0000000
Binary files a/doc/salome/gui/VISU/pics/image20.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image21.png b/doc/salome/gui/VISU/pics/image21.png
deleted file mode 100755 (executable)
index 6d7f715..0000000
Binary files a/doc/salome/gui/VISU/pics/image21.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image30.gif b/doc/salome/gui/VISU/pics/image30.gif
deleted file mode 100755 (executable)
index f78b7c2..0000000
Binary files a/doc/salome/gui/VISU/pics/image30.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image39.gif b/doc/salome/gui/VISU/pics/image39.gif
deleted file mode 100755 (executable)
index 0a7acc2..0000000
Binary files a/doc/salome/gui/VISU/pics/image39.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image46.gif b/doc/salome/gui/VISU/pics/image46.gif
deleted file mode 100755 (executable)
index 0fe311c..0000000
Binary files a/doc/salome/gui/VISU/pics/image46.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image47.gif b/doc/salome/gui/VISU/pics/image47.gif
deleted file mode 100755 (executable)
index 57011e0..0000000
Binary files a/doc/salome/gui/VISU/pics/image47.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image48.gif b/doc/salome/gui/VISU/pics/image48.gif
deleted file mode 100755 (executable)
index 4733090..0000000
Binary files a/doc/salome/gui/VISU/pics/image48.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image49.gif b/doc/salome/gui/VISU/pics/image49.gif
deleted file mode 100755 (executable)
index 94df647..0000000
Binary files a/doc/salome/gui/VISU/pics/image49.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image50.gif b/doc/salome/gui/VISU/pics/image50.gif
deleted file mode 100755 (executable)
index d86bc15..0000000
Binary files a/doc/salome/gui/VISU/pics/image50.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image51.gif b/doc/salome/gui/VISU/pics/image51.gif
deleted file mode 100755 (executable)
index e568a49..0000000
Binary files a/doc/salome/gui/VISU/pics/image51.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image52.gif b/doc/salome/gui/VISU/pics/image52.gif
deleted file mode 100755 (executable)
index d376407..0000000
Binary files a/doc/salome/gui/VISU/pics/image52.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image53.gif b/doc/salome/gui/VISU/pics/image53.gif
deleted file mode 100755 (executable)
index 139f9ee..0000000
Binary files a/doc/salome/gui/VISU/pics/image53.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image54.gif b/doc/salome/gui/VISU/pics/image54.gif
deleted file mode 100755 (executable)
index 7391fdd..0000000
Binary files a/doc/salome/gui/VISU/pics/image54.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image55.gif b/doc/salome/gui/VISU/pics/image55.gif
deleted file mode 100755 (executable)
index f11da80..0000000
Binary files a/doc/salome/gui/VISU/pics/image55.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image69.gif b/doc/salome/gui/VISU/pics/image69.gif
deleted file mode 100755 (executable)
index 36f5760..0000000
Binary files a/doc/salome/gui/VISU/pics/image69.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image74.gif b/doc/salome/gui/VISU/pics/image74.gif
deleted file mode 100755 (executable)
index 85713fa..0000000
Binary files a/doc/salome/gui/VISU/pics/image74.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image81.gif b/doc/salome/gui/VISU/pics/image81.gif
deleted file mode 100755 (executable)
index 3473ad9..0000000
Binary files a/doc/salome/gui/VISU/pics/image81.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image82.gif b/doc/salome/gui/VISU/pics/image82.gif
deleted file mode 100755 (executable)
index 0d3b25e..0000000
Binary files a/doc/salome/gui/VISU/pics/image82.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image83.gif b/doc/salome/gui/VISU/pics/image83.gif
deleted file mode 100755 (executable)
index a40211e..0000000
Binary files a/doc/salome/gui/VISU/pics/image83.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image84.gif b/doc/salome/gui/VISU/pics/image84.gif
deleted file mode 100755 (executable)
index 87e1105..0000000
Binary files a/doc/salome/gui/VISU/pics/image84.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image87.gif b/doc/salome/gui/VISU/pics/image87.gif
deleted file mode 100755 (executable)
index 61e26b2..0000000
Binary files a/doc/salome/gui/VISU/pics/image87.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image88.gif b/doc/salome/gui/VISU/pics/image88.gif
deleted file mode 100755 (executable)
index 16cdbf7..0000000
Binary files a/doc/salome/gui/VISU/pics/image88.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image89.gif b/doc/salome/gui/VISU/pics/image89.gif
deleted file mode 100755 (executable)
index 373a6c0..0000000
Binary files a/doc/salome/gui/VISU/pics/image89.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image90.gif b/doc/salome/gui/VISU/pics/image90.gif
deleted file mode 100755 (executable)
index 3507814..0000000
Binary files a/doc/salome/gui/VISU/pics/image90.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image91.gif b/doc/salome/gui/VISU/pics/image91.gif
deleted file mode 100755 (executable)
index 9e93c1c..0000000
Binary files a/doc/salome/gui/VISU/pics/image91.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image96.gif b/doc/salome/gui/VISU/pics/image96.gif
deleted file mode 100755 (executable)
index 4580d5b..0000000
Binary files a/doc/salome/gui/VISU/pics/image96.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image97.gif b/doc/salome/gui/VISU/pics/image97.gif
deleted file mode 100755 (executable)
index 1d78de1..0000000
Binary files a/doc/salome/gui/VISU/pics/image97.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image98.gif b/doc/salome/gui/VISU/pics/image98.gif
deleted file mode 100755 (executable)
index 6519dbb..0000000
Binary files a/doc/salome/gui/VISU/pics/image98.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/image99.gif b/doc/salome/gui/VISU/pics/image99.gif
deleted file mode 100755 (executable)
index 3711be8..0000000
Binary files a/doc/salome/gui/VISU/pics/image99.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/importfromfile.png b/doc/salome/gui/VISU/pics/importfromfile.png
deleted file mode 100755 (executable)
index af51e71..0000000
Binary files a/doc/salome/gui/VISU/pics/importfromfile.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/importtablefromfile.png b/doc/salome/gui/VISU/pics/importtablefromfile.png
deleted file mode 100755 (executable)
index 7cd6a28..0000000
Binary files a/doc/salome/gui/VISU/pics/importtablefromfile.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/iso.png b/doc/salome/gui/VISU/pics/iso.png
deleted file mode 100755 (executable)
index 880ccb1..0000000
Binary files a/doc/salome/gui/VISU/pics/iso.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/isosurf.jpg b/doc/salome/gui/VISU/pics/isosurf.jpg
deleted file mode 100755 (executable)
index 88d5ac7..0000000
Binary files a/doc/salome/gui/VISU/pics/isosurf.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/isosurfaces.png b/doc/salome/gui/VISU/pics/isosurfaces.png
deleted file mode 100755 (executable)
index f431d63..0000000
Binary files a/doc/salome/gui/VISU/pics/isosurfaces.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/neo-transparency.png b/doc/salome/gui/VISU/pics/neo-transparency.png
deleted file mode 100755 (executable)
index ec1fb7f..0000000
Binary files a/doc/salome/gui/VISU/pics/neo-transparency.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/next.jpg b/doc/salome/gui/VISU/pics/next.jpg
deleted file mode 100755 (executable)
index 958ff00..0000000
Binary files a/doc/salome/gui/VISU/pics/next.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/picking.png b/doc/salome/gui/VISU/pics/picking.png
deleted file mode 100755 (executable)
index cea1a56..0000000
Binary files a/doc/salome/gui/VISU/pics/picking.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/planes.png b/doc/salome/gui/VISU/pics/planes.png
deleted file mode 100755 (executable)
index 23fdc94..0000000
Binary files a/doc/salome/gui/VISU/pics/planes.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/plot3d-example.png b/doc/salome/gui/VISU/pics/plot3d-example.png
deleted file mode 100755 (executable)
index e2711dd..0000000
Binary files a/doc/salome/gui/VISU/pics/plot3d-example.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/plot3d.png b/doc/salome/gui/VISU/pics/plot3d.png
deleted file mode 100755 (executable)
index f04ce94..0000000
Binary files a/doc/salome/gui/VISU/pics/plot3d.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/points.jpg b/doc/salome/gui/VISU/pics/points.jpg
deleted file mode 100755 (executable)
index 6164f76..0000000
Binary files a/doc/salome/gui/VISU/pics/points.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/previous.jpg b/doc/salome/gui/VISU/pics/previous.jpg
deleted file mode 100755 (executable)
index 4b4106b..0000000
Binary files a/doc/salome/gui/VISU/pics/previous.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/recording.png b/doc/salome/gui/VISU/pics/recording.png
deleted file mode 100755 (executable)
index 272386a..0000000
Binary files a/doc/salome/gui/VISU/pics/recording.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/recordingsaveas.png b/doc/salome/gui/VISU/pics/recordingsaveas.png
deleted file mode 100755 (executable)
index 28dac73..0000000
Binary files a/doc/salome/gui/VISU/pics/recordingsaveas.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/rename.png b/doc/salome/gui/VISU/pics/rename.png
deleted file mode 100755 (executable)
index c6bc615..0000000
Binary files a/doc/salome/gui/VISU/pics/rename.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/run.jpg b/doc/salome/gui/VISU/pics/run.jpg
deleted file mode 100755 (executable)
index d880592..0000000
Binary files a/doc/salome/gui/VISU/pics/run.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/scalarbarproperties.png b/doc/salome/gui/VISU/pics/scalarbarproperties.png
deleted file mode 100755 (executable)
index db018ae..0000000
Binary files a/doc/salome/gui/VISU/pics/scalarbarproperties.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/scalarmapicon.jpg b/doc/salome/gui/VISU/pics/scalarmapicon.jpg
deleted file mode 100755 (executable)
index fff992d..0000000
Binary files a/doc/salome/gui/VISU/pics/scalarmapicon.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/scalarrangesn.png b/doc/salome/gui/VISU/pics/scalarrangesn.png
deleted file mode 100755 (executable)
index c4cb681..0000000
Binary files a/doc/salome/gui/VISU/pics/scalarrangesn.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/set_rotation_point_dialog1.png b/doc/salome/gui/VISU/pics/set_rotation_point_dialog1.png
deleted file mode 100644 (file)
index bdab73b..0000000
Binary files a/doc/salome/gui/VISU/pics/set_rotation_point_dialog1.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/set_rotation_point_dialog2.png b/doc/salome/gui/VISU/pics/set_rotation_point_dialog2.png
deleted file mode 100644 (file)
index 7f3696a..0000000
Binary files a/doc/salome/gui/VISU/pics/set_rotation_point_dialog2.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/setupanimation.png b/doc/salome/gui/VISU/pics/setupanimation.png
deleted file mode 100755 (executable)
index a7121fd..0000000
Binary files a/doc/salome/gui/VISU/pics/setupanimation.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/setupplot2d.png b/doc/salome/gui/VISU/pics/setupplot2d.png
deleted file mode 100755 (executable)
index 4d8ac43..0000000
Binary files a/doc/salome/gui/VISU/pics/setupplot2d.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/shrink.jpg b/doc/salome/gui/VISU/pics/shrink.jpg
deleted file mode 100755 (executable)
index 0985b85..0000000
Binary files a/doc/salome/gui/VISU/pics/shrink.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/smds-example.png b/doc/salome/gui/VISU/pics/smds-example.png
deleted file mode 100755 (executable)
index 84d3a3d..0000000
Binary files a/doc/salome/gui/VISU/pics/smds-example.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/smds-example1.png b/doc/salome/gui/VISU/pics/smds-example1.png
deleted file mode 100755 (executable)
index 8085fea..0000000
Binary files a/doc/salome/gui/VISU/pics/smds-example1.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/smds1.png b/doc/salome/gui/VISU/pics/smds1.png
deleted file mode 100755 (executable)
index 24c5fed..0000000
Binary files a/doc/salome/gui/VISU/pics/smds1.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/snapfgf.png b/doc/salome/gui/VISU/pics/snapfgf.png
deleted file mode 100755 (executable)
index fc8803c..0000000
Binary files a/doc/salome/gui/VISU/pics/snapfgf.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/speed.jpg b/doc/salome/gui/VISU/pics/speed.jpg
deleted file mode 100755 (executable)
index 3076f30..0000000
Binary files a/doc/salome/gui/VISU/pics/speed.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/spheroid.png b/doc/salome/gui/VISU/pics/spheroid.png
deleted file mode 100755 (executable)
index 162700b..0000000
Binary files a/doc/salome/gui/VISU/pics/spheroid.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/streamlines.png b/doc/salome/gui/VISU/pics/streamlines.png
deleted file mode 100755 (executable)
index 1cdd9fe..0000000
Binary files a/doc/salome/gui/VISU/pics/streamlines.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/streamlinesicon.jpg b/doc/salome/gui/VISU/pics/streamlinesicon.jpg
deleted file mode 100755 (executable)
index 3d90087..0000000
Binary files a/doc/salome/gui/VISU/pics/streamlinesicon.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/streamlinesprsnt.png b/doc/salome/gui/VISU/pics/streamlinesprsnt.png
deleted file mode 100755 (executable)
index b04a002..0000000
Binary files a/doc/salome/gui/VISU/pics/streamlinesprsnt.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/surface.jpg b/doc/salome/gui/VISU/pics/surface.jpg
deleted file mode 100755 (executable)
index 6f9a024..0000000
Binary files a/doc/salome/gui/VISU/pics/surface.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/textproperty.png b/doc/salome/gui/VISU/pics/textproperty.png
deleted file mode 100755 (executable)
index 565ec31..0000000
Binary files a/doc/salome/gui/VISU/pics/textproperty.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/translatepres.png b/doc/salome/gui/VISU/pics/translatepres.png
deleted file mode 100755 (executable)
index f68ac95..0000000
Binary files a/doc/salome/gui/VISU/pics/translatepres.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/vecticon.jpg b/doc/salome/gui/VISU/pics/vecticon.jpg
deleted file mode 100755 (executable)
index 40c36af..0000000
Binary files a/doc/salome/gui/VISU/pics/vecticon.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/vectorfield.png b/doc/salome/gui/VISU/pics/vectorfield.png
deleted file mode 100755 (executable)
index 1c6de4d..0000000
Binary files a/doc/salome/gui/VISU/pics/vectorfield.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/vectorsprsnt.png b/doc/salome/gui/VISU/pics/vectorsprsnt.png
deleted file mode 100755 (executable)
index 698a1e8..0000000
Binary files a/doc/salome/gui/VISU/pics/vectorsprsnt.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/view_rotation_point.png b/doc/salome/gui/VISU/pics/view_rotation_point.png
deleted file mode 100644 (file)
index 7fe8f83..0000000
Binary files a/doc/salome/gui/VISU/pics/view_rotation_point.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/viewsettings.png b/doc/salome/gui/VISU/pics/viewsettings.png
deleted file mode 100755 (executable)
index 79dcc49..0000000
Binary files a/doc/salome/gui/VISU/pics/viewsettings.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/viewtable.png b/doc/salome/gui/VISU/pics/viewtable.png
deleted file mode 100755 (executable)
index 8aca30d..0000000
Binary files a/doc/salome/gui/VISU/pics/viewtable.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/visufullscreen.png b/doc/salome/gui/VISU/pics/visufullscreen.png
deleted file mode 100755 (executable)
index cc98df0..0000000
Binary files a/doc/salome/gui/VISU/pics/visufullscreen.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/visuicon.jpg b/doc/salome/gui/VISU/pics/visuicon.jpg
deleted file mode 100755 (executable)
index 8489eef..0000000
Binary files a/doc/salome/gui/VISU/pics/visuicon.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/warning.png b/doc/salome/gui/VISU/pics/warning.png
deleted file mode 100755 (executable)
index 55e06d3..0000000
Binary files a/doc/salome/gui/VISU/pics/warning.png and /dev/null differ
diff --git a/doc/salome/gui/VISU/pics/wireframe.jpg b/doc/salome/gui/VISU/pics/wireframe.jpg
deleted file mode 100755 (executable)
index aa84b51..0000000
Binary files a/doc/salome/gui/VISU/pics/wireframe.jpg and /dev/null differ
index 56d52a61ad5a331e8853efcfe4e67584805c2b96..3bc5ba029fa366620f16739444fd2d57ce91929a 100755 (executable)
@@ -1,10 +1,7 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-</head>
-<body>
-<hr style="width: 100%; height: 2px;">
-<div style="text-align: center;">Copyright &copy; 2003-2007 CEA, EDF<br>
-</div>
+    <hr style="width: 100%; height: 2px;">
+    <div style="text-align: center;">
+       Copyright &copy; 2003-2009 CEA, EDF
+       <br>
+    </div>
 </body>
 </html>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/VISU__Gen_8idl.html b/doc/salome/gui/VISU/visugenidl_doc/VISU__Gen_8idl.html
deleted file mode 100644 (file)
index 5d34130..0000000
+++ /dev/null
@@ -1,196 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<h1>idl/VISU_Gen.idl File Reference</h1><code>#include &quot;SALOME_Exception.idl&quot;</code><br>
-<code>#include &quot;SALOME_GenericObj.idl&quot;</code><br>
-<code>#include &quot;SALOME_Component.idl&quot;</code><br>
-<code>#include &quot;SALOMEDS.idl&quot;</code><br>
-<code>#include &quot;SALOMEDS_Attributes.idl&quot;</code><br>
-<code>#include &quot;MED.idl&quot;</code><br>
-
-<p>
-Include dependency graph for VISU_Gen.idl:<p><center><img src="VISU__Gen_8idl__incl.jpg" border="0" usemap="#idl/VISU_Gen.idl_map" alt=""></center>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Namespaces</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">namespace &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceVISU.html">VISU</a></td></tr>
-
-<tr><td colspan="2"><br><h2>Data Structures</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html">VISU.Base</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html">VISU.RemovableObject</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Removable object interface.  <a href="interfaceVISU_1_1RemovableObject.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1PrsObject.html">VISU.PrsObject</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Presentable object interface.  <a href="interfaceVISU_1_1PrsObject.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Table.html">VISU.Table</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Table representation interface  <a href="interfaceVISU_1_1Table.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html">VISU.Curve</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Interface of curve representation.  <a href="interfaceVISU_1_1Curve.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Container.html">VISU.Container</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Container presentable object interface  <a href="interfaceVISU_1_1Container.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html">VISU.Prs3d</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">3D presentation interface  <a href="interfaceVISU_1_1Prs3d.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Mesh.html">VISU.Mesh</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Interface of the mesh.  <a href="interfaceVISU_1_1Mesh.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html">VISU.ColoredPrs3d</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Basic Interface for the Colored 3D Presentations.  <a href="interfaceVISU_1_1ColoredPrs3d.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dHolder.html">VISU.ColoredPrs3dHolder</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">ColoredPrs3dHolder interface. Interface of 3d presentation's holder, which represents colored 3d presentations, created on fields. It is publishing in the object browser in a separate folder and can be controled by viewer's slider.  <a href="interfaceVISU_1_1ColoredPrs3dHolder.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVISU_1_1ColoredPrs3dHolder_1_1BasicInput.html">VISU.ColoredPrs3dHolder.BasicInput</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVISU_1_1ColoredPrs3dHolder_1_1TimeStampInfo.html">VISU.ColoredPrs3dHolder.TimeStampInfo</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html">VISU.ColoredPrs3dCache</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">ColoredPrs3dCache interface. This interface is responsible for memory management of 3d presentations. One cache corresponds to one study.  <a href="interfaceVISU_1_1ColoredPrs3dCache.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html">VISU.ScalarMap</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Interface of the Scalar Map.  <a href="interfaceVISU_1_1ScalarMap.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1GaussPoints.html">VISU.GaussPoints</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gauss Points presentation interface.  <a href="interfaceVISU_1_1GaussPoints.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1DeformedShape.html">VISU.DeformedShape</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deformed shape presentation interface.  <a href="interfaceVISU_1_1DeformedShape.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMapOnDeformedShape.html">VISU.ScalarMapOnDeformedShape</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Scalar Map on Deformed shape presentation interface.  <a href="interfaceVISU_1_1ScalarMapOnDeformedShape.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Plot3D.html">VISU.Plot3D</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="interfaceVISU_1_1Plot3D.html">Plot3D</a> interface.  <a href="interfaceVISU_1_1Plot3D.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutPlanes.html">VISU.CutPlanes</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cut planes interface.  <a href="interfaceVISU_1_1CutPlanes.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html">VISU.CutLines</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cut lines presentation.  <a href="interfaceVISU_1_1CutLines.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1StreamLines.html">VISU.StreamLines</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Interface of the stream lines representation.  <a href="interfaceVISU_1_1StreamLines.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1IsoSurfaces.html">VISU.IsoSurfaces</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Interface of the isometric surface presentation.  <a href="interfaceVISU_1_1IsoSurfaces.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Vectors.html">VISU.Vectors</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Interface of the vector presentation.  <a href="interfaceVISU_1_1Vectors.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html">VISU.Animation</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Animation class  <a href="interfaceVISU_1_1Animation.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Result.html">VISU.Result</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Interface Result.  <a href="interfaceVISU_1_1Result.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html">VISU.VISU_Gen</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">VISU_Gen interface  <a href="interfaceVISU_1_1VISU__Gen.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html">VISU.View</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">View interface  <a href="interfaceVISU_1_1View.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html">VISU.View3D</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">3D view interface  <a href="interfaceVISU_1_1View3D.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1TableView.html">VISU.TableView</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Interface of the <a class="el" href="interfaceVISU_1_1Table.html">Table</a> view.  <a href="interfaceVISU_1_1TableView.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html">VISU.XYPlot</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Interface of the 2D plot view.  <a href="interfaceVISU_1_1XYPlot.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ViewManager.html">VISU.ViewManager</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Interface of the ViewManager.  <a href="interfaceVISU_1_1ViewManager.html#_details">More...</a><br></td></tr>
-<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">VISU.IdType</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef sequence&lt; string &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceVISU.html#872f0083b78d222a7504d8df938d4ca2">VISU.string_array</a></td></tr>
-
-<tr><td colspan="2"><br><h2>Enumerations</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">VISU.Scaling</a> { <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a472467096027b4435ec88065499f1bd0443c1d0">VISU.LINEAR</a>, 
-<a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670b90da0ae947772de8ddb3d44e0438d65">VISU.LOGARITHMIC</a>
- }</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">VISU.Entity</a> { <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601ab5dfae0efc17a2cef0979bda81e020a">VISU.NODE</a>, 
-<a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f2760174b87bffbcbdd2583de4aa65047b8e15">VISU.EDGE</a>, 
-<a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f276014e272c8d19260215368ab32560ebb7e2">VISU.FACE</a>, 
-<a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f276014dd25122ffd8b57c789c56039b756737">VISU.CELL</a>
- }</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISU.VISUType</a> { <br>
-&nbsp;&nbsp;<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505f46f97ca11adf0444163a144cf29ab13">VISU.TNONE</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505c6d9b77cf674551b1cf2179ff42781f0">VISU.TCURVE</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505e079bcfbc71945ab03281cf510171d26">VISU.TTABLE</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505965ef5d3ad806032d110867995b06e90">VISU.TCONTAINER</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505661bdd7054541ec3684ef3d3fcc672a0">VISU.TMESH</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05050960e75e1598e360545b0183bfd9cb95">VISU.TSCALARMAP</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505c657580f92e263f74a98b54fe1706b7b">VISU.TISOSURFACES</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05059690f6678b90c5197640d9c72cdb01fd">VISU.TDEFORMEDSHAPE</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05056bf835dd96cc7162efab6f850cffcd95">VISU.TSCALARMAPONDEFORMEDSHAPE</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505ce563a71f490cf21887b6a85d1b81592">VISU.TGAUSSPOINTS</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05055b20108e5fd99c1c6957b13ae4c4e821">VISU.TPLOT3D</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b050534c331c752baaaccb976018ecf2e53bc">VISU.TCUTPLANES</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05059c6b6e8056dd1bd6fd0c4ea3328bcc17">VISU.TCUTLINES</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505911ef60269dcac4c732d790995896ed0">VISU.TVECTORS</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05052268a72efecbd9a06447b63e1c54b6f2">VISU.TSTREAMLINES</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b050504419b3b862ecbd3b02ccf23c3543335">VISU.TVISUGEN</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05050e959877d50f85d7ee40b0ef146bf0ce">VISU.TVIEWMANAGER</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05050acc53310e74049525934b8a2c1bf982">VISU.TRESULT</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05050ad90d55da57038b69a0f37bea9e93e3">VISU.TXYPLOT</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b050585ad2c2bc11c65cc83e7723aa3b9ca43">VISU.TTABLEVIEW</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b050589621dec5daff308a7875cd3f354b2e3">VISU.TVIEW3D</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05057fa257b6dd9bafe9fb6a872e7a574933">VISU.TGAUSSVIEW</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b050549b445831a583d858fc5d7b7fb77f360">VISU.TENTITY</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05059934d0c1500fbbaaae397336d01249c7">VISU.TFAMILY</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505561c80c0d2ae06bb4c99533fa6d818b1">VISU.TGROUP</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b050510be29a83a16fcc206a046eccc6fbda4">VISU.TFIELD</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505198236cbe5a729c333beae7c82cadead">VISU.TTIMESTAMP</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b050569ee0801ab47b8d250ed07abbf0c8dcf">VISU.TANIMATION</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505736525664cf44c8acfb0de4c9d337fc9">VISU.TCOLOREDPRS3DHOLDER</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05057e67f1255c6c45a829bf8b4d0a7c4d84">VISU.TCOLOREDPRS3DCACHE</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05052b6c2d55d67d3cdaf2534657b41fac5d">VISU.TPART</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505c9355c9018e38c117367c28e91210a20">VISU.TALL</a>
-<br>
- }</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb5">VISU.PresentationType</a> { <br>
-&nbsp;&nbsp;<a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb5bd7d875fff4b7c862e404084bec135bc">VISU.POINT</a>, 
-<a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb5e4948f9c5e5153edffab72b435a472cd">VISU.WIREFRAME</a>, 
-<a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb5d446e93e36a0b982a923eaf4282a71d8">VISU.SHADED</a>, 
-<a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb5b618cd0ad95c1b5e6ffa80a8d4cf5624">VISU.INSIDEFRAME</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb573fefa806279b7bb7c88811aa1a7a18a">VISU.SURFACEFRAME</a>, 
-<a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb57d62e1a9d8f0e0447539a7b3274d5aec">VISU.SHRINK</a>
-<br>
- }</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-This file conatins a set of interfaces of the VISU module. This module provides various forms of data visualization in SALOME application. These forms include data tables, XY plots, 3d representations and combination of these forms. </DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:30:37 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/VISU__Gen_8idl__incl.jpg b/doc/salome/gui/VISU/visugenidl_doc/VISU__Gen_8idl__incl.jpg
deleted file mode 100644 (file)
index b39f3e1..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/VISU__Gen_8idl__incl.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/doxygen.css b/doc/salome/gui/VISU/visugenidl_doc/doxygen.css
deleted file mode 100644 (file)
index dc9da52..0000000
+++ /dev/null
@@ -1,218 +0,0 @@
-H1 {
-       text-align: center;
-       font-family: Geneva, Arial, Helvetica, sans-serif;
-}
-H2 {
-       font-family: Geneva, Arial, Helvetica, sans-serif;
-}
-CAPTION { font-weight: bold }
-DIV.qindex {
-       width: 100%;
-       background-color: #eeeeff;
-       border: 1px solid #B0B0B0;
-       text-align: center;
-       margin: 2px;
-       padding: 2px;
-       line-height: 120%;
-}
-A.qindex {
-       text-decoration: none;
-       font-weight: bold;
-       color: #1A419D;
-       padding: 2px;
-}
-A.qindex:visited {
-       text-decoration: none;
-       font-weight: bold;
-       color: #1A419D
-       padding: 2px;
-}
-A.qindex:hover {
-       text-decoration: none;
-       background-color: #ddddff;
-       padding: 2px;
-}
-A.qindexHL {
-       text-decoration: none;
-       font-weight: bold;
-       background-color: #6666cc;
-       color: #ffffff;
-       padding: 2px 6px;
-       border: 1px double #9295C2;
-}
-A.qindexHL:hover {
-       text-decoration: none;
-       background-color: #6666cc;
-       color: #ffffff;
-       padding: 2px 6px;
-}
-A.qindexHL:visited { text-decoration: none; background-color: #6666cc; color: #ffffff }
-A.el { text-decoration: none; font-weight: bold }
-A.elRef { font-weight: bold }
-A.code { text-decoration: none; font-weight: normal; color: #1A419D}
-A.codeRef { font-weight: normal; color: #1A419D}
-A:hover { text-decoration: none; background-color: #f2f2ff }
-DL.el { margin-left: -1cm }
-PRE.fragment {
-       border: 1px solid #CCCCCC;
-       background-color: #f5f5f5;
-       margin-top: 4px;
-       margin-bottom: 4px;
-       margin-left: 2px;
-       margin-right: 8px;
-       padding-left: 6px;
-       padding-right: 6px;
-       padding-top: 4px;
-       padding-bottom: 4px;
-}
-DIV.fragment {
-       border: 1px solid #CCCCCC;
-       background-color: #f5f5f5;
-       padding: 6px;
-}
-DIV.ah { background-color: black; font-weight: bold; color: #ffffff; margin-bottom: 3px; margin-top: 3px }
-TD.md { background-color: #F4F4FB; font-weight: bold; }
-TD.mdname1 { background-color: #F4F4FB; font-weight: bold; color: #602020; }
-TD.mdname { background-color: #F4F4FB; font-weight: bold; color: #602020; width: 600px; }
-DIV.groupHeader {
-       margin-left: 16px;
-       margin-top: 12px;
-       margin-bottom: 6px;
-       font-weight: bold;
-       font-family: Geneva, Arial, Helvetica, sans-serif;
-}
-DIV.groupText { margin-left: 16px; font-style: italic; font-size: smaller }
-BODY {
-       background: white;
-       color: black;
-       margin-right: 20px;
-       margin-left: 20px;
-}
-TD.indexkey {
-       background-color: #eeeeff;
-       font-weight: bold;
-       padding-right  : 10px;
-       padding-top    : 2px;
-       padding-left   : 10px;
-       padding-bottom : 2px;
-       margin-left    : 0px;
-       margin-right   : 0px;
-       margin-top     : 2px;
-       margin-bottom  : 2px;
-       border: 1px solid #CCCCCC;
-}
-TD.indexvalue {
-       background-color: #eeeeff;
-       font-style: italic;
-       padding-right  : 10px;
-       padding-top    : 2px;
-       padding-left   : 10px;
-       padding-bottom : 2px;
-       margin-left    : 0px;
-       margin-right   : 0px;
-       margin-top     : 2px;
-       margin-bottom  : 2px;
-       border: 1px solid #CCCCCC;
-}
-TR.memlist {
-   background-color: #f0f0f0; 
-}
-P.formulaDsp { text-align: center; }
-IMG.formulaDsp { }
-IMG.formulaInl { vertical-align: middle; }
-SPAN.keyword       { color: #008000 }
-SPAN.keywordtype   { color: #604020 }
-SPAN.keywordflow   { color: #e08000 }
-SPAN.comment       { color: #800000 }
-SPAN.preprocessor  { color: #806020 }
-SPAN.stringliteral { color: #002080 }
-SPAN.charliteral   { color: #008080 }
-.mdTable {
-       border: 1px solid #868686;
-       background-color: #F4F4FB;
-}
-.mdRow {
-       padding: 8px 10px;
-}
-.mdescLeft {
-       font-size: smaller;
-       font-style: italic;
-       background-color: #FAFAFA;
-       padding-left: 8px;
-       border-top: 1px none #E0E0E0;
-       border-right: 1px none #E0E0E0;
-       border-bottom: 1px none #E0E0E0;
-       border-left: 1px none #E0E0E0;
-       margin: 0px;
-}
-.mdescRight {
-       font-size: smaller;
-       font-style: italic;
-       background-color: #FAFAFA;
-       padding-left: 4px;
-       border-top: 1px none #E0E0E0;
-       border-right: 1px none #E0E0E0;
-       border-bottom: 1px none #E0E0E0;
-       border-left: 1px none #E0E0E0;
-       margin: 0px;
-       padding-bottom: 0px;
-       padding-right: 8px;
-}
-.memItemLeft {
-       padding: 1px 0px 0px 8px;
-       margin: 4px;
-       border-top-width: 1px;
-       border-right-width: 1px;
-       border-bottom-width: 1px;
-       border-left-width: 1px;
-       border-top-style: solid;
-       border-top-color: #E0E0E0;
-       border-right-color: #E0E0E0;
-       border-bottom-color: #E0E0E0;
-       border-left-color: #E0E0E0;
-       border-right-style: none;
-       border-bottom-style: none;
-       border-left-style: none;
-       background-color: #FAFAFA;
-       font-family: Geneva, Arial, Helvetica, sans-serif;
-       font-size: 12px;
-}
-.memItemRight {
-       padding: 1px 0px 0px 8px;
-       margin: 4px;
-       border-top-width: 1px;
-       border-right-width: 1px;
-       border-bottom-width: 1px;
-       border-left-width: 1px;
-       border-top-style: solid;
-       border-top-color: #E0E0E0;
-       border-right-color: #E0E0E0;
-       border-bottom-color: #E0E0E0;
-       border-left-color: #E0E0E0;
-       border-right-style: none;
-       border-bottom-style: none;
-       border-left-style: none;
-       background-color: #FAFAFA;
-       font-family: Geneva, Arial, Helvetica, sans-serif;
-       font-size: 13px;
-}
-.search     { color: #003399;
-              font-weight: bold;
-}
-FORM.search {
-              margin-bottom: 0px;
-              margin-top: 0px;
-}
-INPUT.search { font-size: 75%;
-               color: #000080;
-               font-weight: normal;
-               background-color: #eeeeff;
-}
-TD.tiny      { font-size: 75%;
-}
-a {
-       color: #252E78;
-}
-a:visited {
-       color: #3D2185;
-}
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Animation.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Animation.html
deleted file mode 100644 (file)
index 4e0aa36..0000000
+++ /dev/null
@@ -1,1115 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1Animation.html">Animation</a></div>
-<h1>VISU.Animation Interface Reference</h1><!-- doxytag: class="VISU::Animation" --><!-- doxytag: inherits="VISU::Base" -->Animation class  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.Animation:<p><center><img src="interfaceVISU_1_1Animation__inherit__graph.jpg" border="0" usemap="#VISU_8Animation__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8Animation__inherit__map">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="26,9,114,33" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#d0b1e36ccff0d698235e550e98552dfbb76b5afefd161b7460e29fc629a73357">PARALLEL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#d0b1e36ccff0d698235e550e98552dfb900f0897c0e38f27ba97a84f8362c3ae">SUCCCESSIVE</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#d0b1e36ccff0d698235e550e98552dfb">AnimationMode</a> { <a class="el" href="interfaceVISU_1_1Animation.html#d0b1e36ccff0d698235e550e98552dfbb76b5afefd161b7460e29fc629a73357">PARALLEL</a>, 
-<a class="el" href="interfaceVISU_1_1Animation.html#d0b1e36ccff0d698235e550e98552dfb900f0897c0e38f27ba97a84f8362c3ae">SUCCCESSIVE</a>
- }</td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#8891abb2659a431d6b64053418f2b7b6">addField</a> (in SALOMEDS::SObject theObject)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#f6f7de8915ff2a3be947c9e6a73e2ce6">clearFields</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#25c03888e5c49e48507b0f9fc0fb79f3">generatePresentations</a> (in long theFieldNum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#ca54d598533e3e30e84640121ae16bff">generateFrames</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#386d2b25e1276295fd618218fbd30073">clearView</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#e9ea700f1bbd93ca4bdddce598685200">getNbFields</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#219de6ccf55113b6a2cab9907d58df17">getNbFrames</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#943911d8020e1a06f8defd98e0f33528">isRunning</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#462e94cc04bd0656dffbef0855c68d04">getCurrentFrame</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html">ColoredPrs3d</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#062d169734c8eff19203a256de6559a5">getPresentation</a> (in long theField, in long theFrame)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#db826a2038bac1d7586f73b55aadd0b9">setPresentationType</a> (in long theFieldNum, in <a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> theType)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#430b5660c7bb58b2b1cceec551505833">getPresentationType</a> (in long theFieldNum)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#e898a692b5912aa183490ae62e8be347">setSpeed</a> (in long theSpeed)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#d014916dbb7cf4fa6c78bb322b173d30">getSpeed</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#faadd2d3622a45cc362191875d0655d2">isProportional</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#cb63317bc328ee1ebb474b9fa91a7287">setAnimationRange</a> (in double theMin, in double theMax)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#3ad0fe10b74fdc5e39063ba901b1f9e8">getMinRange</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#e45ff6bb80611ae975046232a614ae2e">getMaxRange</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#bad167297c3268fa405816da832177cc">isRangeDefined</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#81cb12ae0191dd51c8885231db089fb3">dumpTo</a> (in string thePath)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#02587889300d23a9954986a1d74792ae">setDumpFormat</a> (in string theFormat)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#80a08a2ae8787b810f9580d9eaeec980">isCycling</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#d91817585b9d0bd0cd78517a6f86a896">getMinTime</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#44f2187c8a251b86c01fbc909fec9831">getMaxTime</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#8efb829f405446f3fc177dff08494542">setProportional</a> (in boolean theProp)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#42713aa4a73b5e9ebcb7c00814673eb2">setCycling</a> (in boolean theCycle)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#b6aa7bc964aa59da44e43a900c72d930">isCleaningMemoryAtEachFrame</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#6a4f2e02a45d97c3f192b395f2a9c53b">setCleaningMemoryAtEachFrame</a> (in boolean theCycle)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">SALOMEDS::SObject&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#0187e62b2aa9df4ced73cad693d4814e">publishInStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#2189248274471c67003a675969961586">saveAnimation</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#5f7fc011c8ec6b2f8d31f5b3b00ed094">restoreFromStudy</a> (in SALOMEDS::SObject theSObj)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#74fa288c3401f75740596e0c4d4b7447">isSavedInStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#0256f797240324bc547a37587954985c">setAnimationMode</a> (in <a class="el" href="interfaceVISU_1_1Animation.html#d0b1e36ccff0d698235e550e98552dfb">AnimationMode</a> theMode)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Animation.html#d0b1e36ccff0d698235e550e98552dfb">AnimationMode</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#b6861359ec72364119e599008cbf224b">getAnimationMode</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#d74ecf981377c2eafa0684adcaa6a53b">ApplyProperties</a> (in long theFieldNum, in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html">ColoredPrs3d</a> thePrs)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-<tr><td colspan="2"><div class="groupHeader">Playback of an animation:</div></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#f844fd8fa04b7355fdfed8d02fec10c3">startAnimation</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#345eb500eeb0d2e54fca3fbea1a253e6">stopAnimation</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#66540bf68570402a49020606fa96ba3d">nextFrame</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#f743a5ad5d5daad4487b712d7a2ca13e">prevFrame</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#bbec0f7c6177a233c914cac024cda549">firstFrame</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#498a16969035c0c100d83c95723941a9">lastFrame</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html#ea0339ecac1ffc84a0f6ddceecbabc8e">gotoFrame</a> (in long theFrame)</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-This class provides a set of methods used for:<br>
- <ul>
-<li>
-generating different animations on the basis of a field, </li>
-<li>
-setting the parameters of the animations, </li>
-<li>
-playing these animations in the VISU module. </li>
-</ul>
-<dl compact><dt><b>Note:</b></dt><dd><br>
-<b>Field</b> represents the results of calculations (it can be scalar or vector values), grouped together under one physical concept. <br>
-<b>Time stamp</b> represents a subfield: the results of calculations are taken in one definite moment. </dd></dl>
-
-<p>
-<hr><h2>Member Enumeration Documentation</h2>
-<a class="anchor" name="d0b1e36ccff0d698235e550e98552dfb"></a><!-- doxytag: member="VISU::Animation::AnimationMode" ref="d0b1e36ccff0d698235e550e98552dfb" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1Animation.html#d0b1e36ccff0d698235e550e98552dfb">VISU::Animation::AnimationMode</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-This enumeration contains a set of available animation modes. <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="d0b1e36ccff0d698235e550e98552dfbb76b5afefd161b7460e29fc629a73357"></a><!-- doxytag: member="PARALLEL" ref="d0b1e36ccff0d698235e550e98552dfbb76b5afefd161b7460e29fc629a73357" args="" -->PARALLEL</em>&nbsp;</td><td>
-parallel mode of animation. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="d0b1e36ccff0d698235e550e98552dfb900f0897c0e38f27ba97a84f8362c3ae"></a><!-- doxytag: member="SUCCCESSIVE" ref="d0b1e36ccff0d698235e550e98552dfb900f0897c0e38f27ba97a84f8362c3ae" args="" -->SUCCCESSIVE</em>&nbsp;</td><td>
-succcessive mode of animation. </td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="8891abb2659a431d6b64053418f2b7b6"></a><!-- doxytag: member="VISU::Animation::addField" ref="8891abb2659a431d6b64053418f2b7b6" args="(in SALOMEDS::SObject theObject)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.Animation.addField           </td>
-          <td>(</td>
-          <td class="paramtype">in SALOMEDS::SObject&nbsp;</td>
-          <td class="paramname"> <em>theObject</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Defines the field which will be used as a base for generation of the animation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theObject</em>&nbsp;</td><td>The SObject corresponding to the field. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="f6f7de8915ff2a3be947c9e6a73e2ce6"></a><!-- doxytag: member="VISU::Animation::clearFields" ref="f6f7de8915ff2a3be947c9e6a73e2ce6" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Animation.clearFields           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove all fields from <a class="el" href="interfaceVISU_1_1Animation.html">Animation</a> object. 
-</div>
-</div><p>
-<a class="anchor" name="25c03888e5c49e48507b0f9fc0fb79f3"></a><!-- doxytag: member="VISU::Animation::generatePresentations" ref="25c03888e5c49e48507b0f9fc0fb79f3" args="(in long theFieldNum)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Animation.generatePresentations           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theFieldNum</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Generates presentations on the basis of the field. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theFieldNum</em>&nbsp;</td><td>The number of the field, which will be used as the basis for construction of the presentation. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="ca54d598533e3e30e84640121ae16bff"></a><!-- doxytag: member="VISU::Animation::generateFrames" ref="ca54d598533e3e30e84640121ae16bff" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.Animation.generateFrames           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Generates a set of frames from the created by the method <em>generatePresentations</em>3D presentations. A sequence of these frames will be transformed into an animation. <dl compact><dt><b>Returns:</b></dt><dd>True, if the frames have been successfully generated. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="386d2b25e1276295fd618218fbd30073"></a><!-- doxytag: member="VISU::Animation::clearView" ref="386d2b25e1276295fd618218fbd30073" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Animation.clearView           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Clears the view before starting an animation. 
-</div>
-</div><p>
-<a class="anchor" name="f844fd8fa04b7355fdfed8d02fec10c3"></a><!-- doxytag: member="VISU::Animation::startAnimation" ref="f844fd8fa04b7355fdfed8d02fec10c3" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Animation.startAnimation           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Starts an animation. 
-</div>
-</div><p>
-<a class="anchor" name="345eb500eeb0d2e54fca3fbea1a253e6"></a><!-- doxytag: member="VISU::Animation::stopAnimation" ref="345eb500eeb0d2e54fca3fbea1a253e6" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Animation.stopAnimation           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Stops an animation. 
-</div>
-</div><p>
-<a class="anchor" name="66540bf68570402a49020606fa96ba3d"></a><!-- doxytag: member="VISU::Animation::nextFrame" ref="66540bf68570402a49020606fa96ba3d" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Animation.nextFrame           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Forwards to the next frame. 
-</div>
-</div><p>
-<a class="anchor" name="f743a5ad5d5daad4487b712d7a2ca13e"></a><!-- doxytag: member="VISU::Animation::prevFrame" ref="f743a5ad5d5daad4487b712d7a2ca13e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Animation.prevFrame           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns to the previous frame. 
-</div>
-</div><p>
-<a class="anchor" name="bbec0f7c6177a233c914cac024cda549"></a><!-- doxytag: member="VISU::Animation::firstFrame" ref="bbec0f7c6177a233c914cac024cda549" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Animation.firstFrame           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns to the first frame of the animation. 
-</div>
-</div><p>
-<a class="anchor" name="498a16969035c0c100d83c95723941a9"></a><!-- doxytag: member="VISU::Animation::lastFrame" ref="498a16969035c0c100d83c95723941a9" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Animation.lastFrame           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Forwards to the last frame of the animation. 
-</div>
-</div><p>
-<a class="anchor" name="ea0339ecac1ffc84a0f6ddceecbabc8e"></a><!-- doxytag: member="VISU::Animation::gotoFrame" ref="ea0339ecac1ffc84a0f6ddceecbabc8e" args="(in long theFrame)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Animation.gotoFrame           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theFrame</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Passes to a definite frame of the animation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theFrame</em>&nbsp;</td><td>A long value defining the number of the frame. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="e9ea700f1bbd93ca4bdddce598685200"></a><!-- doxytag: member="VISU::Animation::getNbFields" ref="e9ea700f1bbd93ca4bdddce598685200" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.Animation.getNbFields           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of time stamps (subfields) contained in the given field. 
-</div>
-</div><p>
-<a class="anchor" name="219de6ccf55113b6a2cab9907d58df17"></a><!-- doxytag: member="VISU::Animation::getNbFrames" ref="219de6ccf55113b6a2cab9907d58df17" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.Animation.getNbFrames           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of generated frames 
-</div>
-</div><p>
-<a class="anchor" name="943911d8020e1a06f8defd98e0f33528"></a><!-- doxytag: member="VISU::Animation::isRunning" ref="943911d8020e1a06f8defd98e0f33528" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.Animation.isRunning           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns True, if the animation is currently running. 
-</div>
-</div><p>
-<a class="anchor" name="462e94cc04bd0656dffbef0855c68d04"></a><!-- doxytag: member="VISU::Animation::getCurrentFrame" ref="462e94cc04bd0656dffbef0855c68d04" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.Animation.getCurrentFrame           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the number of the current frame. 
-</div>
-</div><p>
-<a class="anchor" name="062d169734c8eff19203a256de6559a5"></a><!-- doxytag: member="VISU::Animation::getPresentation" ref="062d169734c8eff19203a256de6559a5" args="(in long theField, in long theFrame)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html">ColoredPrs3d</a> VISU.Animation.getPresentation           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theField</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theFrame</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="db826a2038bac1d7586f73b55aadd0b9"></a><!-- doxytag: member="VISU::Animation::setPresentationType" ref="db826a2038bac1d7586f73b55aadd0b9" args="(in long theFieldNum, in VISUType theType)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Animation.setPresentationType           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theFieldNum</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td>
-          <td class="paramname"> <em>theType</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of presentation (vectors, deformed shape etc.) which will be generated by the method <em>generatePresentations</em>. 
-</div>
-</div><p>
-<a class="anchor" name="430b5660c7bb58b2b1cceec551505833"></a><!-- doxytag: member="VISU::Animation::getPresentationType" ref="430b5660c7bb58b2b1cceec551505833" args="(in long theFieldNum)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Animation.getPresentationType           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theFieldNum</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of presentation (vectors, deformed shape etc.) which will be generated by the method <em>generatePresentations</em>. 
-</div>
-</div><p>
-<a class="anchor" name="e898a692b5912aa183490ae62e8be347"></a><!-- doxytag: member="VISU::Animation::setSpeed" ref="e898a692b5912aa183490ae62e8be347" args="(in long theSpeed)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Animation.setSpeed           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theSpeed</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the speed of the animation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theSpeed</em>&nbsp;</td><td>The speed of the animation. The value varies from 1 to 99. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="d014916dbb7cf4fa6c78bb322b173d30"></a><!-- doxytag: member="VISU::Animation::getSpeed" ref="d014916dbb7cf4fa6c78bb322b173d30" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.Animation.getSpeed           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the speed of the animation. 
-</div>
-</div><p>
-<a class="anchor" name="faadd2d3622a45cc362191875d0655d2"></a><!-- doxytag: member="VISU::Animation::isProportional" ref="faadd2d3622a45cc362191875d0655d2" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.Animation.isProportional           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Ruturns True, if playback of the animation is proportional. This option allows to render your animation with proportional periods of time between every frame (not depending on the time stamps). 
-</div>
-</div><p>
-<a class="anchor" name="cb63317bc328ee1ebb474b9fa91a7287"></a><!-- doxytag: member="VISU::Animation::setAnimationRange" ref="cb63317bc328ee1ebb474b9fa91a7287" args="(in double theMin, in double theMax)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Animation.setAnimationRange           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theMin</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theMax</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the range of the animation. The range is defined on the basis of the time stamps of the field which have been used for generation of the animation. This method allows to bound the range of generated frames. If this method is not used, the animation will be generated on the basis of all time stamps contained in the field. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theMin</em>&nbsp;</td><td>The value of the first time stamp which will be used for generation of the animation. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMax</em>&nbsp;</td><td>The value of the last time stamp which will be used for generation of the animation. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="3ad0fe10b74fdc5e39063ba901b1f9e8"></a><!-- doxytag: member="VISU::Animation::getMinRange" ref="3ad0fe10b74fdc5e39063ba901b1f9e8" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.Animation.getMinRange           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of the first time stamp which will be used for generation of the animation. 
-</div>
-</div><p>
-<a class="anchor" name="e45ff6bb80611ae975046232a614ae2e"></a><!-- doxytag: member="VISU::Animation::getMaxRange" ref="e45ff6bb80611ae975046232a614ae2e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.Animation.getMaxRange           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of the last time stamp which will be used for generation of the animation. 
-</div>
-</div><p>
-<a class="anchor" name="bad167297c3268fa405816da832177cc"></a><!-- doxytag: member="VISU::Animation::isRangeDefined" ref="bad167297c3268fa405816da832177cc" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.Animation.isRangeDefined           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns True if the range of the animation has been defined by the method <em>setAnimationRange</em>. Otherwise the animation will be generated on the basis of all time stamps contained in the field. 
-</div>
-</div><p>
-<a class="anchor" name="81cb12ae0191dd51c8885231db089fb3"></a><!-- doxytag: member="VISU::Animation::dumpTo" ref="81cb12ae0191dd51c8885231db089fb3" args="(in string thePath)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Animation.dumpTo           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>thePath</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Saves all the frames composing the animation into a definite directory. Pictures format is set with method <em><a class="el" href="interfaceVISU_1_1Animation.html#02587889300d23a9954986a1d74792ae">setDumpFormat()</a></em>. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePath</em>&nbsp;</td><td>The directory where all the frames will be saved. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="02587889300d23a9954986a1d74792ae"></a><!-- doxytag: member="VISU::Animation::setDumpFormat" ref="02587889300d23a9954986a1d74792ae" args="(in string theFormat)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.Animation.setDumpFormat           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFormat</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set format for saving all the frames composing the animation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theFormat</em>&nbsp;</td><td>The format for saving pictures. For available formats see QImageIO documentation (Qt). If specified format is not available, default format will be used. Default format is JPEG or first of supported, if JPEG is not available. </td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>Really set format. Differ from <em>theFormat</em> if <em>theFormat</em> is not available. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="80a08a2ae8787b810f9580d9eaeec980"></a><!-- doxytag: member="VISU::Animation::isCycling" ref="80a08a2ae8787b810f9580d9eaeec980" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.Animation.isCycling           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns True, if the playback of the animation is cycling. 
-</div>
-</div><p>
-<a class="anchor" name="d91817585b9d0bd0cd78517a6f86a896"></a><!-- doxytag: member="VISU::Animation::getMinTime" ref="d91817585b9d0bd0cd78517a6f86a896" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.Animation.getMinTime           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the first time stamp of the field defined at the input of the animation. <dl compact><dt><b>Note:</b></dt><dd>This method is used if animation range is <b>NOT</b> defined. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="44f2187c8a251b86c01fbc909fec9831"></a><!-- doxytag: member="VISU::Animation::getMaxTime" ref="44f2187c8a251b86c01fbc909fec9831" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.Animation.getMaxTime           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the last time stamp of the field defined at the input of the animation. <dl compact><dt><b>Note:</b></dt><dd>This method is used if animation range is <b>NOT</b> defined. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8efb829f405446f3fc177dff08494542"></a><!-- doxytag: member="VISU::Animation::setProportional" ref="8efb829f405446f3fc177dff08494542" args="(in boolean theProp)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Animation.setProportional           </td>
-          <td>(</td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>theProp</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets proprtional playback of the animation. This option allows to render your animation with proportional periods of time between every frame (not depending on the time stamps). <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theProp</em>&nbsp;</td><td>If this boolean parameter is True, playback of your animation will be set as proportional. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="42713aa4a73b5e9ebcb7c00814673eb2"></a><!-- doxytag: member="VISU::Animation::setCycling" ref="42713aa4a73b5e9ebcb7c00814673eb2" args="(in boolean theCycle)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Animation.setCycling           </td>
-          <td>(</td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>theCycle</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets cycling playback of the animation. The number of cycles can be infinite, untill you use <em>startAnimation</em> method. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theCycle</em>&nbsp;</td><td>If this boolean parameter is True, playback of your animation will be set as cycling. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="b6aa7bc964aa59da44e43a900c72d930"></a><!-- doxytag: member="VISU::Animation::isCleaningMemoryAtEachFrame" ref="b6aa7bc964aa59da44e43a900c72d930" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.Animation.isCleaningMemoryAtEachFrame           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="6a4f2e02a45d97c3f192b395f2a9c53b"></a><!-- doxytag: member="VISU::Animation::setCleaningMemoryAtEachFrame" ref="6a4f2e02a45d97c3f192b395f2a9c53b" args="(in boolean theCycle)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Animation.setCleaningMemoryAtEachFrame           </td>
-          <td>(</td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>theCycle</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="0187e62b2aa9df4ced73cad693d4814e"></a><!-- doxytag: member="VISU::Animation::publishInStudy" ref="0187e62b2aa9df4ced73cad693d4814e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">SALOMEDS::SObject VISU.Animation.publishInStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="2189248274471c67003a675969961586"></a><!-- doxytag: member="VISU::Animation::saveAnimation" ref="2189248274471c67003a675969961586" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Animation.saveAnimation           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="5f7fc011c8ec6b2f8d31f5b3b00ed094"></a><!-- doxytag: member="VISU::Animation::restoreFromStudy" ref="5f7fc011c8ec6b2f8d31f5b3b00ed094" args="(in SALOMEDS::SObject theSObj)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Animation.restoreFromStudy           </td>
-          <td>(</td>
-          <td class="paramtype">in SALOMEDS::SObject&nbsp;</td>
-          <td class="paramname"> <em>theSObj</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="74fa288c3401f75740596e0c4d4b7447"></a><!-- doxytag: member="VISU::Animation::isSavedInStudy" ref="74fa288c3401f75740596e0c4d4b7447" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.Animation.isSavedInStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="0256f797240324bc547a37587954985c"></a><!-- doxytag: member="VISU::Animation::setAnimationMode" ref="0256f797240324bc547a37587954985c" args="(in AnimationMode theMode)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Animation.setAnimationMode           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Animation.html#d0b1e36ccff0d698235e550e98552dfb">AnimationMode</a>&nbsp;</td>
-          <td class="paramname"> <em>theMode</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the animation mode. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theMode</em>&nbsp;</td><td>The value of this parameter is taken from the <em>AnimationMode</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="b6861359ec72364119e599008cbf224b"></a><!-- doxytag: member="VISU::Animation::getAnimationMode" ref="b6861359ec72364119e599008cbf224b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Animation.html#d0b1e36ccff0d698235e550e98552dfb">AnimationMode</a> VISU.Animation.getAnimationMode           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the animation mode. 
-</div>
-</div><p>
-<a class="anchor" name="d74ecf981377c2eafa0684adcaa6a53b"></a><!-- doxytag: member="VISU::Animation::ApplyProperties" ref="d74ecf981377c2eafa0684adcaa6a53b" args="(in long theFieldNum, in ColoredPrs3d thePrs)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Animation.ApplyProperties           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theFieldNum</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html">ColoredPrs3d</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrs</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Apply the presentation properties to all fields. The exception is raised in the following cases: 1) presentations for the given field is not yet created; 2) invalid dynamic cast of the given presentation to VISU.ColoredPrs3d_i; 3) the MED file is not the same; 4) the mesh name is not the same; 5) the field name is not the same; 6) the entity is not the same. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::Animation::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::Animation::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:31:14 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Animation__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Animation__inherit__graph.jpg
deleted file mode 100644 (file)
index 83cfd51..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Animation__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Base.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Base.html
deleted file mode 100644 (file)
index ddc5521..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1Base.html">Base</a></div>
-<h1>VISU.Base Interface Reference</h1><!-- doxytag: class="VISU::Base" --><code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.Base:<p><center><img src="interfaceVISU_1_1Base__inherit__graph.jpg" border="0" usemap="#VISU_8Base__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8Base__inherit__map">
-<area href="interfaceVISU_1_1Animation.html" shape="rect" coords="162,84,288,108" alt="">
-<area href="interfaceVISU_1_1RemovableObject.html" shape="rect" coords="312,84,485,108" alt="">
-<area href="interfaceVISU_1_1View.html" shape="rect" coords="509,84,597,108" alt="">
-<area href="interfaceVISU_1_1ViewManager.html" shape="rect" coords="621,84,768,108" alt="">
-<area href="interfaceVISU_1_1VISU__Gen.html" shape="rect" coords="792,84,912,108" alt="">
-<area href="interfaceVISU_1_1ColoredPrs3dCache.html" shape="rect" coords="8,158,192,182" alt="">
-<area href="interfaceVISU_1_1PrsObject.html" shape="rect" coords="216,158,336,182" alt="">
-<area href="interfaceVISU_1_1Result.html" shape="rect" coords="360,158,458,182" alt="">
-<area href="interfaceVISU_1_1TableView.html" shape="rect" coords="482,158,605,182" alt="">
-<area href="interfaceVISU_1_1View3D.html" shape="rect" coords="629,158,736,182" alt="">
-<area href="interfaceVISU_1_1XYPlot.html" shape="rect" coords="760,158,858,182" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::Base::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::Base::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:30:44 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Base__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Base__inherit__graph.jpg
deleted file mode 100644 (file)
index 0a3207a..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Base__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ColoredPrs3d.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ColoredPrs3d.html
deleted file mode 100644 (file)
index 0ec3630..0000000
+++ /dev/null
@@ -1,749 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1ColoredPrs3d.html">ColoredPrs3d</a></div>
-<h1>VISU.ColoredPrs3d Interface Reference</h1><!-- doxytag: class="VISU::ColoredPrs3d" --><!-- doxytag: inherits="VISU::Prs3d" -->Basic Interface for the Colored 3D Presentations.  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.ColoredPrs3d:<p><center><img src="interfaceVISU_1_1ColoredPrs3d__inherit__graph.jpg" border="0" usemap="#VISU_8ColoredPrs3d__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8ColoredPrs3d__inherit__map">
-<area href="interfaceVISU_1_1GaussPoints.html" shape="rect" coords="237,382,373,406" alt="">
-<area href="interfaceVISU_1_1ScalarMap.html" shape="rect" coords="397,382,522,406" alt="">
-<area href="interfaceVISU_1_1Prs3d.html" shape="rect" coords="335,233,429,257" alt="">
-<area href="interfaceVISU_1_1PrsObject.html" shape="rect" coords="241,158,361,182" alt="">
-<area href="interfaceVISU_1_1RemovableObject.html" shape="rect" coords="214,83,387,107" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="257,9,345,33" alt="">
-<area href="classSALOME_1_1GenericObj.html" shape="rect" coords="385,158,542,182" alt="">
-<area href="interfaceVISU_1_1CutLines.html" shape="rect" coords="7,457,122,481" alt="">
-<area href="interfaceVISU_1_1CutPlanes.html" shape="rect" coords="146,457,269,481" alt="">
-<area href="interfaceVISU_1_1DeformedShape.html" shape="rect" coords="293,457,455,481" alt="">
-<area href="interfaceVISU_1_1IsoSurfaces.html" shape="rect" coords="479,457,613,481" alt="">
-<area href="interfaceVISU_1_1Plot3D.html" shape="rect" coords="637,457,738,481" alt="">
-<area href="interfaceVISU_1_1ScalarMapOnDeformedShape.html" shape="rect" coords="762,457,1013,481" alt="">
-<area href="interfaceVISU_1_1StreamLines.html" shape="rect" coords="231,531,370,555" alt="">
-<area href="interfaceVISU_1_1Vectors.html" shape="rect" coords="394,531,501,555" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72">HORIZONTAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d">VERTICAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> { <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72">HORIZONTAL</a>, 
-<a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d">VERTICAL</a>
- }</td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#0cb01513d53cac1cf26699344580962a">SetScalarMode</a> (in long theScalarMode)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#bd7047f0543f356e7e0853285679c8a0">GetScalarMode</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#df97f8522a471c2e90470584cf7c92d9">GetMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#294cd1fcd6a6c21d76a6d03dc28b5a85">GetMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ff19e0cdd15257ff97b65daf0fae8d57">GetSourceMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#c559644dd49a59f28a7ae5047da2b01b">GetSourceMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e0604356d4ef90ad08cf001f109e1153">IsRangeFixed</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e5d7bfff180529eedad1a140e5a449c3">SetPosition</a> (in double X, in double Y)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Position of the scalar bar.  <a href="#e5d7bfff180529eedad1a140e5a449c3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ddd48392a778ada1e0153ddcc781edbc">GetPosX</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#a20c6859e00c881a7db6fa3259a33e51">GetPosY</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e9331edc9bb097dd99556ee27735710c">SetSize</a> (in double theWidth, in double theHeight)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Size of this presentable object.  <a href="#e9331edc9bb097dd99556ee27735710c"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#fb5593e03da36959bcd7ac2e25c387ef">GetWidth</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#75cb62b325060b5d268159e53e7a9de4">GetHeight</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#caf0e43c7f94f9c3c2a2482a1ab0db06">SetNbColors</a> (in long theNbColors)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#2164a8ce3d888c7ac6b3644c0b7347c2">GetNbColors</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#21dd013631e20ce6c72368e7ac568802">SetLabels</a> (in long theNbLabels)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#085c23900301c3a4eb274584ee7d8ca6">GetLabels</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#449207525dc96443b81f42cef38047dd">SetTitle</a> (in string theName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#3618c82757da8f8471dd20ab13cbc27b">GetTitle</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#72fe2019f5aa9bb1c5e19b67a51d7f71">SetBarOrientation</a> (in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> theOrientation)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#8422578b257adc48e4c9e50d697e0364">GetBarOrientation</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#347812588c93643946de30dfc62cf765">SetOffset</a> (in float theDx, in float theDy, in float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#fec212476adf7396e8672ae1c3e7fb78">GetOffset</a> (out float theDx, out float theDy, out float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#b02c2fa9085433d4f3e50bf052471139">GetMemorySize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html#7d053f4324b26edd325024cd45424f13">RemoveFromStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-This interface is responsable for coloring of 3D field presentations according the scalar values applied to different cells. As well it contains presentation parameters of the scalar bar. The scalar bar is displayed along with each colored field presentation and serves for consulting the correspondance between colors and data values. 
-<p>
-<hr><h2>Member Enumeration Documentation</h2>
-<a class="anchor" name="12f791060a4820aca541565c57ce715c"></a><!-- doxytag: member="VISU::ColoredPrs3d::Orientation" ref="12f791060a4820aca541565c57ce715c" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">VISU::ColoredPrs3d::Orientation</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Orientation of the scalar bar (to provide backward compatibility). <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72"></a><!-- doxytag: member="HORIZONTAL" ref="12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72" args="" -->HORIZONTAL</em>&nbsp;</td><td>
-Horizontal orientation of the scalar bar. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d"></a><!-- doxytag: member="VERTICAL" ref="12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d" args="" -->VERTICAL</em>&nbsp;</td><td>
-Vertical orientation of the scalar bar. </td></tr>
-</table>
-</dl>
-
-<p>
-Implemented in <a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713">VISU.Plot3D</a>, and <a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">VISU.CutPlanes</a>.
-</div>
-</div><p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="0cb01513d53cac1cf26699344580962a"></a><!-- doxytag: member="VISU::ColoredPrs3d::SetScalarMode" ref="0cb01513d53cac1cf26699344580962a" args="(in long theScalarMode)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetScalarMode           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theScalarMode</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="bd7047f0543f356e7e0853285679c8a0"></a><!-- doxytag: member="VISU::ColoredPrs3d::GetScalarMode" ref="bd7047f0543f356e7e0853285679c8a0" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetScalarMode           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="df97f8522a471c2e90470584cf7c92d9"></a><!-- doxytag: member="VISU::ColoredPrs3d::GetMin" ref="df97f8522a471c2e90470584cf7c92d9" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="294cd1fcd6a6c21d76a6d03dc28b5a85"></a><!-- doxytag: member="VISU::ColoredPrs3d::GetMax" ref="294cd1fcd6a6c21d76a6d03dc28b5a85" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="ff19e0cdd15257ff97b65daf0fae8d57"></a><!-- doxytag: member="VISU::ColoredPrs3d::GetSourceMin" ref="ff19e0cdd15257ff97b65daf0fae8d57" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="c559644dd49a59f28a7ae5047da2b01b"></a><!-- doxytag: member="VISU::ColoredPrs3d::GetSourceMax" ref="c559644dd49a59f28a7ae5047da2b01b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="e0604356d4ef90ad08cf001f109e1153"></a><!-- doxytag: member="VISU::ColoredPrs3d::IsRangeFixed" ref="e0604356d4ef90ad08cf001f109e1153" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.ColoredPrs3d.IsRangeFixed           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Defines whether the scalar range corresponds to the source data or not. 
-</div>
-</div><p>
-<a class="anchor" name="e5d7bfff180529eedad1a140e5a449c3"></a><!-- doxytag: member="VISU::ColoredPrs3d::SetPosition" ref="e5d7bfff180529eedad1a140e5a449c3" args="(in double X, in double Y)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetPosition           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>X</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>Y</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the position of the scalar bar origin on the screen. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>X</em>&nbsp;</td><td>Horizontal position. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>Y</em>&nbsp;</td><td>Vertical position. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="ddd48392a778ada1e0153ddcc781edbc"></a><!-- doxytag: member="VISU::ColoredPrs3d::GetPosX" ref="ddd48392a778ada1e0153ddcc781edbc" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosX           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets horizontal position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="a20c6859e00c881a7db6fa3259a33e51"></a><!-- doxytag: member="VISU::ColoredPrs3d::GetPosY" ref="a20c6859e00c881a7db6fa3259a33e51" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosY           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets vertical position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="e9331edc9bb097dd99556ee27735710c"></a><!-- doxytag: member="VISU::ColoredPrs3d::SetSize" ref="e9331edc9bb097dd99556ee27735710c" args="(in double theWidth, in double theHeight)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetSize           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theWidth</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theHeight</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the size of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theWidth</em>&nbsp;</td><td>Width of this presentable object. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theHeight</em>&nbsp;</td><td>Height of this presentable object. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="fb5593e03da36959bcd7ac2e25c387ef"></a><!-- doxytag: member="VISU::ColoredPrs3d::GetWidth" ref="fb5593e03da36959bcd7ac2e25c387ef" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetWidth           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the width of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the width of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="75cb62b325060b5d268159e53e7a9de4"></a><!-- doxytag: member="VISU::ColoredPrs3d::GetHeight" ref="75cb62b325060b5d268159e53e7a9de4" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetHeight           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the height of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the height of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="caf0e43c7f94f9c3c2a2482a1ab0db06"></a><!-- doxytag: member="VISU::ColoredPrs3d::SetNbColors" ref="caf0e43c7f94f9c3c2a2482a1ab0db06" args="(in long theNbColors)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetNbColors           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbColors</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of colors which will be used for presentation of this presentable object. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbColors</em>&nbsp;</td><td>A long value defining the number of colors. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="2164a8ce3d888c7ac6b3644c0b7347c2"></a><!-- doxytag: member="VISU::ColoredPrs3d::GetNbColors" ref="2164a8ce3d888c7ac6b3644c0b7347c2" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetNbColors           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of colors which will be used for visualization of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of colors which will be used for visualization of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="21dd013631e20ce6c72368e7ac568802"></a><!-- doxytag: member="VISU::ColoredPrs3d::SetLabels" ref="21dd013631e20ce6c72368e7ac568802" args="(in long theNbLabels)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetLabels           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbLabels</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbLabels</em>&nbsp;</td><td>A long value defining the number of labels. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="085c23900301c3a4eb274584ee7d8ca6"></a><!-- doxytag: member="VISU::ColoredPrs3d::GetLabels" ref="085c23900301c3a4eb274584ee7d8ca6" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetLabels           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of labels which will be used for indication of color gradation of the scalar bar. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="449207525dc96443b81f42cef38047dd"></a><!-- doxytag: member="VISU::ColoredPrs3d::SetTitle" ref="449207525dc96443b81f42cef38047dd" args="(in string theName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetTitle           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the title of the scalar bar. By default - the name of the selected result is used. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theName</em>&nbsp;</td><td>String parameter defining the name of the scalar bar. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="3618c82757da8f8471dd20ab13cbc27b"></a><!-- doxytag: member="VISU::ColoredPrs3d::GetTitle" ref="3618c82757da8f8471dd20ab13cbc27b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.ColoredPrs3d.GetTitle           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the title of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="72fe2019f5aa9bb1c5e19b67a51d7f71"></a><!-- doxytag: member="VISU::ColoredPrs3d::SetBarOrientation" ref="72fe2019f5aa9bb1c5e19b67a51d7f71" args="(in Orientation theOrientation)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a>&nbsp;</td>
-          <td class="paramname"> <em>theOrientation</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of orientation of the scalar bar (to provide backward compatibility). <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theOrientation</em>&nbsp;</td><td>This parameter defines the orientation of the scalar bar. It is taken from the <em>Orientaton</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8422578b257adc48e4c9e50d697e0364"></a><!-- doxytag: member="VISU::ColoredPrs3d::GetBarOrientation" ref="8422578b257adc48e4c9e50d697e0364" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> VISU.ColoredPrs3d.GetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of orientation of the scalar bar (to provide backward compatibility). 
-</div>
-</div><p>
-<a class="anchor" name="347812588c93643946de30dfc62cf765"></a><!-- doxytag: member="VISU::ColoredPrs3d::SetOffset" ref="347812588c93643946de30dfc62cf765" args="(in float theDx, in float theDy, in float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.SetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Move the 3D presentation according to the given offset parameters 
-</div>
-</div><p>
-<a class="anchor" name="fec212476adf7396e8672ae1c3e7fb78"></a><!-- doxytag: member="VISU::ColoredPrs3d::GetOffset" ref="fec212476adf7396e8672ae1c3e7fb78" args="(out float theDx, out float theDy, out float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.GetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets offset parameters for the 3D presentation 
-</div>
-</div><p>
-<a class="anchor" name="b02c2fa9085433d4f3e50bf052471139"></a><!-- doxytag: member="VISU::ColoredPrs3d::GetMemorySize" ref="b02c2fa9085433d4f3e50bf052471139" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">float VISU.Prs3d.GetMemorySize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets memory size actually used by the presentation (Mb). 
-</div>
-</div><p>
-<a class="anchor" name="7d053f4324b26edd325024cd45424f13"></a><!-- doxytag: member="VISU::ColoredPrs3d::RemoveFromStudy" ref="7d053f4324b26edd325024cd45424f13" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.RemovableObject.RemoveFromStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove object from study. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::ColoredPrs3d::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::ColoredPrs3d::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:30:55 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ColoredPrs3dCache.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ColoredPrs3dCache.html
deleted file mode 100644 (file)
index 9730844..0000000
+++ /dev/null
@@ -1,344 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html">ColoredPrs3dCache</a></div>
-<h1>VISU.ColoredPrs3dCache Interface Reference</h1><!-- doxytag: class="VISU::ColoredPrs3dCache" --><!-- doxytag: inherits="VISU::RemovableObject,SALOME::GenericObj" -->ColoredPrs3dCache interface. This interface is responsible for memory management of 3d presentations. One cache corresponds to one study.  
-<a href="#_details"></a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.ColoredPrs3dCache:<p><center><img src="interfaceVISU_1_1ColoredPrs3dCache__inherit__graph.jpg" border="0" usemap="#VISU_8ColoredPrs3dCache__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8ColoredPrs3dCache__inherit__map">
-<area href="interfaceVISU_1_1RemovableObject.html" shape="rect" coords="8,84,181,108" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="50,9,138,33" alt="">
-<area href="classSALOME_1_1GenericObj.html" shape="rect" coords="205,84,362,108" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#3e01e2c35a7bfab6224b26f2e42b6a07fe80cdb1a5ad31ce82b71149ba9f2081">MINIMAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#3e01e2c35a7bfab6224b26f2e42b6a0793fa4876c64d50f0f1cf0cd510f50a95">LIMITED</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#fc72321294d01a97952178b530f67c5741abcbfc4ac5dc4fd67d8793373b4279">NO_ENLARGE</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#fc72321294d01a97952178b530f67c5760957db66137afbfd07f5623caa6aae7">ENLARGE</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#fc72321294d01a97952178b530f67c577ba0baa1cab5421eb63b3f707d5f3603">IMPOSSIBLE</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#3e01e2c35a7bfab6224b26f2e42b6a07">MemoryMode</a> { <a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#3e01e2c35a7bfab6224b26f2e42b6a07fe80cdb1a5ad31ce82b71149ba9f2081">MINIMAL</a>, 
-<a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#3e01e2c35a7bfab6224b26f2e42b6a0793fa4876c64d50f0f1cf0cd510f50a95">LIMITED</a>
- }</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#fc72321294d01a97952178b530f67c57">EnlargeType</a> { <a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#fc72321294d01a97952178b530f67c5741abcbfc4ac5dc4fd67d8793373b4279">NO_ENLARGE</a>, 
-<a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#fc72321294d01a97952178b530f67c5760957db66137afbfd07f5623caa6aae7">ENLARGE</a>, 
-<a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#fc72321294d01a97952178b530f67c577ba0baa1cab5421eb63b3f707d5f3603">IMPOSSIBLE</a>
- }</td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#5948a7b2a1f55ec01a9e610a98784aeb">SetMemoryMode</a> (in <a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#3e01e2c35a7bfab6224b26f2e42b6a07">MemoryMode</a> theMode)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#3e01e2c35a7bfab6224b26f2e42b6a07">MemoryMode</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#30afd31622b2be836b4c07321446b492">GetMemoryMode</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#194c7241df12bbe99af33a2e3ebc190e">SetLimitedMemory</a> (in float theMemorySize)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#e479313208a548f6a1ddc0c684a7c766">GetLimitedMemory</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#1c6bdace39a791a138cb9531bd4bbc2f">GetMemorySize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1ColoredPrs3dHolder.html">ColoredPrs3dHolder</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#e535428f5712fdfaff14e508e9a2b0af">CreateHolder</a> (in <a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> theType, in <a class="el" href="structVISU_1_1ColoredPrs3dHolder_1_1BasicInput.html">ColoredPrs3dHolder::BasicInput</a> theInput)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#fc72321294d01a97952178b530f67c57">EnlargeType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#a8252e02fc2fd67ca4222b5f7c5d0486">GetRequiredMemory</a> (in <a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> theType, in <a class="el" href="structVISU_1_1ColoredPrs3dHolder_1_1BasicInput.html">ColoredPrs3dHolder::BasicInput</a> theInput, out float theRequiredMemory)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html#7d053f4324b26edd325024cd45424f13">RemoveFromStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><h2>Member Enumeration Documentation</h2>
-<a class="anchor" name="3e01e2c35a7bfab6224b26f2e42b6a07"></a><!-- doxytag: member="VISU::ColoredPrs3dCache::MemoryMode" ref="3e01e2c35a7bfab6224b26f2e42b6a07" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#3e01e2c35a7bfab6224b26f2e42b6a07">VISU::ColoredPrs3dCache::MemoryMode</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-This enumeration contains the cache memory modes. <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="3e01e2c35a7bfab6224b26f2e42b6a07fe80cdb1a5ad31ce82b71149ba9f2081"></a><!-- doxytag: member="MINIMAL" ref="3e01e2c35a7bfab6224b26f2e42b6a07fe80cdb1a5ad31ce82b71149ba9f2081" args="" -->MINIMAL</em>&nbsp;</td><td>
-Minimal memory mode (default behaviour). </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="3e01e2c35a7bfab6224b26f2e42b6a0793fa4876c64d50f0f1cf0cd510f50a95"></a><!-- doxytag: member="LIMITED" ref="3e01e2c35a7bfab6224b26f2e42b6a0793fa4876c64d50f0f1cf0cd510f50a95" args="" -->LIMITED</em>&nbsp;</td><td>
-Limited memory mode (fixed memory size for presentations). </td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="fc72321294d01a97952178b530f67c57"></a><!-- doxytag: member="VISU::ColoredPrs3dCache::EnlargeType" ref="fc72321294d01a97952178b530f67c57" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#fc72321294d01a97952178b530f67c57">VISU::ColoredPrs3dCache::EnlargeType</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-This enumeration defines how to enlarge the cache limited memory. <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="fc72321294d01a97952178b530f67c5741abcbfc4ac5dc4fd67d8793373b4279"></a><!-- doxytag: member="NO_ENLARGE" ref="fc72321294d01a97952178b530f67c5741abcbfc4ac5dc4fd67d8793373b4279" args="" -->NO_ENLARGE</em>&nbsp;</td><td>
-No need to enlarge (default behaviour). </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="fc72321294d01a97952178b530f67c5760957db66137afbfd07f5623caa6aae7"></a><!-- doxytag: member="ENLARGE" ref="fc72321294d01a97952178b530f67c5760957db66137afbfd07f5623caa6aae7" args="" -->ENLARGE</em>&nbsp;</td><td>
-Enlarge limited memory. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="fc72321294d01a97952178b530f67c577ba0baa1cab5421eb63b3f707d5f3603"></a><!-- doxytag: member="IMPOSSIBLE" ref="fc72321294d01a97952178b530f67c577ba0baa1cab5421eb63b3f707d5f3603" args="" -->IMPOSSIBLE</em>&nbsp;</td><td>
-Impossible to enlarge (not enough free memory). </td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="5948a7b2a1f55ec01a9e610a98784aeb"></a><!-- doxytag: member="VISU::ColoredPrs3dCache::SetMemoryMode" ref="5948a7b2a1f55ec01a9e610a98784aeb" args="(in MemoryMode theMode)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3dCache.SetMemoryMode           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#3e01e2c35a7bfab6224b26f2e42b6a07">MemoryMode</a>&nbsp;</td>
-          <td class="paramname"> <em>theMode</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets a memory mode. 
-</div>
-</div><p>
-<a class="anchor" name="30afd31622b2be836b4c07321446b492"></a><!-- doxytag: member="VISU::ColoredPrs3dCache::GetMemoryMode" ref="30afd31622b2be836b4c07321446b492" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#3e01e2c35a7bfab6224b26f2e42b6a07">MemoryMode</a> VISU.ColoredPrs3dCache.GetMemoryMode           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets a memory mode. 
-</div>
-</div><p>
-<a class="anchor" name="194c7241df12bbe99af33a2e3ebc190e"></a><!-- doxytag: member="VISU::ColoredPrs3dCache::SetLimitedMemory" ref="194c7241df12bbe99af33a2e3ebc190e" args="(in float theMemorySize)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3dCache.SetLimitedMemory           </td>
-          <td>(</td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theMemorySize</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets a memory size for limited mode (Mb). 
-</div>
-</div><p>
-<a class="anchor" name="e479313208a548f6a1ddc0c684a7c766"></a><!-- doxytag: member="VISU::ColoredPrs3dCache::GetLimitedMemory" ref="e479313208a548f6a1ddc0c684a7c766" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">float VISU.ColoredPrs3dCache.GetLimitedMemory           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets a memory size for limited mode (Mb). 
-</div>
-</div><p>
-<a class="anchor" name="1c6bdace39a791a138cb9531bd4bbc2f"></a><!-- doxytag: member="VISU::ColoredPrs3dCache::GetMemorySize" ref="1c6bdace39a791a138cb9531bd4bbc2f" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">float VISU.ColoredPrs3dCache.GetMemorySize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets memory size actually used by the cache system (Mb). 
-</div>
-</div><p>
-<a class="anchor" name="e535428f5712fdfaff14e508e9a2b0af"></a><!-- doxytag: member="VISU::ColoredPrs3dCache::CreateHolder" ref="e535428f5712fdfaff14e508e9a2b0af" args="(in VISUType theType, in ColoredPrs3dHolder::BasicInput theInput)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1ColoredPrs3dHolder.html">ColoredPrs3dHolder</a> VISU.ColoredPrs3dCache.CreateHolder           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td>
-          <td class="paramname"> <em>theType</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="structVISU_1_1ColoredPrs3dHolder_1_1BasicInput.html">ColoredPrs3dHolder::BasicInput</a>&nbsp;</td>
-          <td class="paramname"> <em>theInput</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Creates ColoredPrs3dHolder. 
-</div>
-</div><p>
-<a class="anchor" name="a8252e02fc2fd67ca4222b5f7c5d0486"></a><!-- doxytag: member="VISU::ColoredPrs3dCache::GetRequiredMemory" ref="a8252e02fc2fd67ca4222b5f7c5d0486" args="(in VISUType theType, in ColoredPrs3dHolder::BasicInput theInput, out float theRequiredMemory)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html#fc72321294d01a97952178b530f67c57">EnlargeType</a> VISU.ColoredPrs3dCache.GetRequiredMemory           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td>
-          <td class="paramname"> <em>theType</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="structVISU_1_1ColoredPrs3dHolder_1_1BasicInput.html">ColoredPrs3dHolder::BasicInput</a>&nbsp;</td>
-          <td class="paramname"> <em>theInput</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theRequiredMemory</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets a memory which is required to create a holder. 
-</div>
-</div><p>
-<a class="anchor" name="7d053f4324b26edd325024cd45424f13"></a><!-- doxytag: member="VISU::ColoredPrs3dCache::RemoveFromStudy" ref="7d053f4324b26edd325024cd45424f13" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.RemovableObject.RemoveFromStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove object from study. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::ColoredPrs3dCache::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::ColoredPrs3dCache::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:30:58 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ColoredPrs3dCache__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ColoredPrs3dCache__inherit__graph.jpg
deleted file mode 100644 (file)
index 5cab723..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ColoredPrs3dCache__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ColoredPrs3dHolder.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ColoredPrs3dHolder.html
deleted file mode 100644 (file)
index 9ed9911..0000000
+++ /dev/null
@@ -1,288 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1ColoredPrs3dHolder.html">ColoredPrs3dHolder</a></div>
-<h1>VISU.ColoredPrs3dHolder Interface Reference</h1><!-- doxytag: class="VISU::ColoredPrs3dHolder" --><!-- doxytag: inherits="VISU::PrsObject,SALOME::GenericObj" -->ColoredPrs3dHolder interface. Interface of 3d presentation's holder, which represents colored 3d presentations, created on fields. It is publishing in the object browser in a separate folder and can be controled by viewer's slider.  
-<a href="#_details"></a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.ColoredPrs3dHolder:<p><center><img src="interfaceVISU_1_1ColoredPrs3dHolder__inherit__graph.jpg" border="0" usemap="#VISU_8ColoredPrs3dHolder__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8ColoredPrs3dHolder__inherit__map">
-<area href="interfaceVISU_1_1PrsObject.html" shape="rect" coords="34,158,154,182" alt="">
-<area href="interfaceVISU_1_1RemovableObject.html" shape="rect" coords="8,84,181,108" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="50,9,138,33" alt="">
-<area href="classSALOME_1_1GenericObj.html" shape="rect" coords="178,158,336,182" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef sequence&lt; <a class="el" href="structVISU_1_1ColoredPrs3dHolder_1_1TimeStampInfo.html">TimeStampInfo</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dHolder.html#7f5dc1e4a67c2b329f0b4899dc00d57a">TimeStampsRange</a></td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dHolder.html#0b23bf89f3d905ac78bf52c2735c6e96">Apply</a> (in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html">ColoredPrs3d</a> thePrs3d, in <a class="el" href="structVISU_1_1ColoredPrs3dHolder_1_1BasicInput.html">BasicInput</a> theInput, in <a class="el" href="interfaceVISU_1_1View3D.html">View3D</a> theView3D)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html">ColoredPrs3d</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dHolder.html#c5eda9c67bc1864b5b08b8074b1ccb30">GetDevice</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dHolder.html#28acbed1b1f420866bde7285840c7013">GetPrsType</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1ColoredPrs3dHolder.html#7f5dc1e4a67c2b329f0b4899dc00d57a">TimeStampsRange</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dHolder.html#499c0347c7f2516a222476a36bdf94d5">GetTimeStampsRange</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structVISU_1_1ColoredPrs3dHolder_1_1BasicInput.html">BasicInput</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dHolder.html#dd8557e892e1b5b81c2e12e5e1ee0c9e">GetBasicInput</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html">ColoredPrs3dCache</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dHolder.html#162df5ba914d00d7a15e8a683931a3f1">GetCache</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dHolder.html#ccc74fc2c6ffc467102d301b45b8bd88">GetMemorySize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html#7d053f4324b26edd325024cd45424f13">RemoveFromStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-<tr><td colspan="2"><br><h2>Data Structures</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVISU_1_1ColoredPrs3dHolder_1_1BasicInput.html">BasicInput</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVISU_1_1ColoredPrs3dHolder_1_1TimeStampInfo.html">TimeStampInfo</a></td></tr>
-
-</table>
-<hr><h2>Member Typedef Documentation</h2>
-<a class="anchor" name="7f5dc1e4a67c2b329f0b4899dc00d57a"></a><!-- doxytag: member="VISU::ColoredPrs3dHolder::TimeStampsRange" ref="7f5dc1e4a67c2b329f0b4899dc00d57a" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef sequence&lt;<a class="el" href="structVISU_1_1ColoredPrs3dHolder_1_1TimeStampInfo.html">TimeStampInfo</a>&gt; <a class="el" href="interfaceVISU_1_1ColoredPrs3dHolder.html#7f5dc1e4a67c2b329f0b4899dc00d57a">VISU.ColoredPrs3dHolder.TimeStampsRange</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Defines representation range of timestamps. 
-</div>
-</div><p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="0b23bf89f3d905ac78bf52c2735c6e96"></a><!-- doxytag: member="VISU::ColoredPrs3dHolder::Apply" ref="0b23bf89f3d905ac78bf52c2735c6e96" args="(in ColoredPrs3d thePrs3d, in BasicInput theInput, in View3D theView3D)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.ColoredPrs3dHolder.Apply           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html">ColoredPrs3d</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrs3d</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="structVISU_1_1ColoredPrs3dHolder_1_1BasicInput.html">BasicInput</a>&nbsp;</td>
-          <td class="paramname"> <em>theInput</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View3D.html">View3D</a>&nbsp;</td>
-          <td class="paramname"> <em>theView3D</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Apply input parameters to last visited presentation in the cache. 
-</div>
-</div><p>
-<a class="anchor" name="c5eda9c67bc1864b5b08b8074b1ccb30"></a><!-- doxytag: member="VISU::ColoredPrs3dHolder::GetDevice" ref="c5eda9c67bc1864b5b08b8074b1ccb30" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html">ColoredPrs3d</a> VISU.ColoredPrs3dHolder.GetDevice           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the last visited presentation in the cache. 
-</div>
-</div><p>
-<a class="anchor" name="28acbed1b1f420866bde7285840c7013"></a><!-- doxytag: member="VISU::ColoredPrs3dHolder::GetPrsType" ref="28acbed1b1f420866bde7285840c7013" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.ColoredPrs3dHolder.GetPrsType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets type of the managed presentations. 
-</div>
-</div><p>
-<a class="anchor" name="499c0347c7f2516a222476a36bdf94d5"></a><!-- doxytag: member="VISU::ColoredPrs3dHolder::GetTimeStampsRange" ref="499c0347c7f2516a222476a36bdf94d5" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1ColoredPrs3dHolder.html#7f5dc1e4a67c2b329f0b4899dc00d57a">TimeStampsRange</a> VISU.ColoredPrs3dHolder.GetTimeStampsRange           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets TimeStampsRange information from the last visited presentation. 
-</div>
-</div><p>
-<a class="anchor" name="dd8557e892e1b5b81c2e12e5e1ee0c9e"></a><!-- doxytag: member="VISU::ColoredPrs3dHolder::GetBasicInput" ref="dd8557e892e1b5b81c2e12e5e1ee0c9e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="structVISU_1_1ColoredPrs3dHolder_1_1BasicInput.html">BasicInput</a> VISU.ColoredPrs3dHolder.GetBasicInput           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets input parameters of the last visited presentation. 
-</div>
-</div><p>
-<a class="anchor" name="162df5ba914d00d7a15e8a683931a3f1"></a><!-- doxytag: member="VISU::ColoredPrs3dHolder::GetCache" ref="162df5ba914d00d7a15e8a683931a3f1" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html">ColoredPrs3dCache</a> VISU.ColoredPrs3dHolder.GetCache           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets a ColoredPrs3dCache, to which the holder belongs 
-</div>
-</div><p>
-<a class="anchor" name="ccc74fc2c6ffc467102d301b45b8bd88"></a><!-- doxytag: member="VISU::ColoredPrs3dHolder::GetMemorySize" ref="ccc74fc2c6ffc467102d301b45b8bd88" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">float VISU.ColoredPrs3dHolder.GetMemorySize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets memory size actually used by the holder (Mb). 
-</div>
-</div><p>
-<a class="anchor" name="7d053f4324b26edd325024cd45424f13"></a><!-- doxytag: member="VISU::ColoredPrs3dHolder::RemoveFromStudy" ref="7d053f4324b26edd325024cd45424f13" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.RemovableObject.RemoveFromStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove object from study. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::ColoredPrs3dHolder::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::ColoredPrs3dHolder::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:30:56 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ColoredPrs3dHolder__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ColoredPrs3dHolder__inherit__graph.jpg
deleted file mode 100644 (file)
index 8f127ae..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ColoredPrs3dHolder__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ColoredPrs3d__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ColoredPrs3d__inherit__graph.jpg
deleted file mode 100644 (file)
index f9aaa9a..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ColoredPrs3d__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Container.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Container.html
deleted file mode 100644 (file)
index 6dab228..0000000
+++ /dev/null
@@ -1,200 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1Container.html">Container</a></div>
-<h1>VISU.Container Interface Reference</h1><!-- doxytag: class="VISU::Container" --><!-- doxytag: inherits="VISU::PrsObject" -->Container presentable object interface  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.Container:<p><center><img src="interfaceVISU_1_1Container__inherit__graph.jpg" border="0" usemap="#VISU_8Container__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8Container__inherit__map">
-<area href="interfaceVISU_1_1PrsObject.html" shape="rect" coords="34,158,154,182" alt="">
-<area href="interfaceVISU_1_1RemovableObject.html" shape="rect" coords="7,84,181,108" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="50,9,138,33" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Container.html#313192ea8431ad0a5c30331bbf1a2a5d">AddCurve</a> (in <a class="el" href="interfaceVISU_1_1Curve.html">Curve</a> theCurve)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Container.html#70ad8fdee09c462b363b61a1202cc59d">RemoveCurve</a> (in <a class="el" href="interfaceVISU_1_1Curve.html">Curve</a> theCurve)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Container.html#56c69bf2a6e02e5ecf552b7d9023c8a0">GetNbCurves</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Container.html#f5214ab7eaf5db6cda15707cdb8170d8">Clear</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html#7d053f4324b26edd325024cd45424f13">RemoveFromStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-This class is provided in order to create one presentation using several presentable objects. This can provide a combination of a set of curves to display them in XY plot view. 
-<p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="313192ea8431ad0a5c30331bbf1a2a5d"></a><!-- doxytag: member="VISU::Container::AddCurve" ref="313192ea8431ad0a5c30331bbf1a2a5d" args="(in Curve theCurve)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Container.AddCurve           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Curve.html">Curve</a>&nbsp;</td>
-          <td class="paramname"> <em>theCurve</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Adds a curve into the container. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theCurve</em>&nbsp;</td><td>The added curve. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="70ad8fdee09c462b363b61a1202cc59d"></a><!-- doxytag: member="VISU::Container::RemoveCurve" ref="70ad8fdee09c462b363b61a1202cc59d" args="(in Curve theCurve)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Container.RemoveCurve           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Curve.html">Curve</a>&nbsp;</td>
-          <td class="paramname"> <em>theCurve</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Removes a curve from the container. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theCurve</em>&nbsp;</td><td>The removed curve. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="56c69bf2a6e02e5ecf552b7d9023c8a0"></a><!-- doxytag: member="VISU::Container::GetNbCurves" ref="56c69bf2a6e02e5ecf552b7d9023c8a0" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.Container.GetNbCurves           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of curves which are stored in the container. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of curves which are stored in the container. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="f5214ab7eaf5db6cda15707cdb8170d8"></a><!-- doxytag: member="VISU::Container::Clear" ref="f5214ab7eaf5db6cda15707cdb8170d8" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Container.Clear           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Removes all curves from the container. 
-</div>
-</div><p>
-<a class="anchor" name="7d053f4324b26edd325024cd45424f13"></a><!-- doxytag: member="VISU::Container::RemoveFromStudy" ref="7d053f4324b26edd325024cd45424f13" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.RemovableObject.RemoveFromStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove object from study. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::Container::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::Container::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:30:50 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Container__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Container__inherit__graph.jpg
deleted file mode 100644 (file)
index ed68a9b..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Container__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Curve.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Curve.html
deleted file mode 100644 (file)
index a959e67..0000000
+++ /dev/null
@@ -1,462 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1Curve.html">Curve</a></div>
-<h1>VISU.Curve Interface Reference</h1><!-- doxytag: class="VISU::Curve" --><!-- doxytag: inherits="VISU::PrsObject" -->Interface of curve representation.  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.Curve:<p><center><img src="interfaceVISU_1_1Curve__inherit__graph.jpg" border="0" usemap="#VISU_8Curve__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8Curve__inherit__map">
-<area href="interfaceVISU_1_1PrsObject.html" shape="rect" coords="34,158,154,182" alt="">
-<area href="interfaceVISU_1_1RemovableObject.html" shape="rect" coords="7,84,181,108" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="50,9,138,33" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294af2636154f27b52c163d8fc40bd92dd7d">NONE</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294ad2e3dc782da1c9d26f0ae1613e7f98eb">CIRCLE</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294aa525e56913eeb8e82b6a5e1638d983a4">RECTANGLE</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294a1c94d3d52008835d4f01f8479c614cd2">DIAMOND</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294a8837e2a03ae9cc5ea3bc58344a24c086">DTRIANGLE</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294a84fd76bf798da09c7d6b58ede7d95d83">UTRIANGLE</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294a2bc63d77bd494feb5ddfce98685bc773">LTRIANGLE</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294a00319089674a46e42b33e1928e4e6e1b">RTRIANGLE</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294abd9584e778ff73cfbfc6e734b33625d5">CROSS</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294a4e6156b00d87dec8c52f23d92c5710fd">XCROSS</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#df3aecb191f106dba8a4b150c386de442f73b3f73b089d3aea6a3f1841739a8c">VOIDLINE</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#df3aecb191f106dba8a4b150c386de448cfe9c9a659d866b318779df56d07727">SOLIDLINE</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#df3aecb191f106dba8a4b150c386de44d49db72e37add623e082d97033ea654a">DASHLINE</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#df3aecb191f106dba8a4b150c386de44194a4b8be0412b0e202db697a8e89b3b">DOTLINE</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#df3aecb191f106dba8a4b150c386de44892862418642ea4e24b1b2e2a3c97965">DASHDOTLINE</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#df3aecb191f106dba8a4b150c386de44ed488c5708b5cee3ba3e0b1dee70e10e">DASHDOTDOTLINE</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294a">MarkerType</a> { <br>
-&nbsp;&nbsp;<a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294af2636154f27b52c163d8fc40bd92dd7d">NONE</a>, 
-<a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294ad2e3dc782da1c9d26f0ae1613e7f98eb">CIRCLE</a>, 
-<a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294aa525e56913eeb8e82b6a5e1638d983a4">RECTANGLE</a>, 
-<a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294a1c94d3d52008835d4f01f8479c614cd2">DIAMOND</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294a8837e2a03ae9cc5ea3bc58344a24c086">DTRIANGLE</a>, 
-<a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294a84fd76bf798da09c7d6b58ede7d95d83">UTRIANGLE</a>, 
-<a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294a2bc63d77bd494feb5ddfce98685bc773">LTRIANGLE</a>, 
-<a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294a00319089674a46e42b33e1928e4e6e1b">RTRIANGLE</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294abd9584e778ff73cfbfc6e734b33625d5">CROSS</a>, 
-<a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294a4e6156b00d87dec8c52f23d92c5710fd">XCROSS</a>
-<br>
- }</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#df3aecb191f106dba8a4b150c386de44">LineType</a> { <br>
-&nbsp;&nbsp;<a class="el" href="interfaceVISU_1_1Curve.html#df3aecb191f106dba8a4b150c386de442f73b3f73b089d3aea6a3f1841739a8c">VOIDLINE</a>, 
-<a class="el" href="interfaceVISU_1_1Curve.html#df3aecb191f106dba8a4b150c386de448cfe9c9a659d866b318779df56d07727">SOLIDLINE</a>, 
-<a class="el" href="interfaceVISU_1_1Curve.html#df3aecb191f106dba8a4b150c386de44d49db72e37add623e082d97033ea654a">DASHLINE</a>, 
-<a class="el" href="interfaceVISU_1_1Curve.html#df3aecb191f106dba8a4b150c386de44194a4b8be0412b0e202db697a8e89b3b">DOTLINE</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="interfaceVISU_1_1Curve.html#df3aecb191f106dba8a4b150c386de44892862418642ea4e24b1b2e2a3c97965">DASHDOTLINE</a>, 
-<a class="el" href="interfaceVISU_1_1Curve.html#df3aecb191f106dba8a4b150c386de44ed488c5708b5cee3ba3e0b1dee70e10e">DASHDOTDOTLINE</a>
-<br>
- }</td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#f405d1e446dbc60882d0af41426f663e">SetTitle</a> (in string theTitle)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#d5977e6a03033828900c086af5f7e689">GetTitle</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#14e86a425ce8c6e832517e2107ff3b30">SetColor</a> (in SALOMEDS::Color theColor)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">SALOMEDS::Color&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#96b0a9f47b83c99ec2ffb84cbc295e92">GetColor</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#bd0b2b09b2e37277abc041d9ad47a03a">SetMarker</a> (in <a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294a">MarkerType</a> theType)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294a">MarkerType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#03a22241fa5a94206e7cc8cd95fa1d01">GetMarker</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#148c472d3b3fb406a50ecc5ce544b027">SetLine</a> (in <a class="el" href="interfaceVISU_1_1Curve.html#df3aecb191f106dba8a4b150c386de44">LineType</a> theType, in long theLineWidth)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Curve.html#df3aecb191f106dba8a4b150c386de44">LineType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#64a0564926bc81390486b297b851bdc9">GetLine</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html#8925ac3f1a28a67b2f2aef0fec390cc0">GetLineWidth</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html#7d053f4324b26edd325024cd45424f13">RemoveFromStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-Manages presentation parameters of one curve. It can be used for presentation of a set of curves using a combined presentation. 
-<p>
-<hr><h2>Member Enumeration Documentation</h2>
-<a class="anchor" name="97e903f19aa34a323e2263212055294a"></a><!-- doxytag: member="VISU::Curve::MarkerType" ref="97e903f19aa34a323e2263212055294a" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294a">VISU::Curve::MarkerType</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-This enumeration contains a set of elements defining the presentation type of markers (data points) with help of which the curve is constructed on the graphics. <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="97e903f19aa34a323e2263212055294af2636154f27b52c163d8fc40bd92dd7d"></a><!-- doxytag: member="NONE" ref="97e903f19aa34a323e2263212055294af2636154f27b52c163d8fc40bd92dd7d" args="" -->NONE</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="97e903f19aa34a323e2263212055294ad2e3dc782da1c9d26f0ae1613e7f98eb"></a><!-- doxytag: member="CIRCLE" ref="97e903f19aa34a323e2263212055294ad2e3dc782da1c9d26f0ae1613e7f98eb" args="" -->CIRCLE</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="97e903f19aa34a323e2263212055294aa525e56913eeb8e82b6a5e1638d983a4"></a><!-- doxytag: member="RECTANGLE" ref="97e903f19aa34a323e2263212055294aa525e56913eeb8e82b6a5e1638d983a4" args="" -->RECTANGLE</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="97e903f19aa34a323e2263212055294a1c94d3d52008835d4f01f8479c614cd2"></a><!-- doxytag: member="DIAMOND" ref="97e903f19aa34a323e2263212055294a1c94d3d52008835d4f01f8479c614cd2" args="" -->DIAMOND</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="97e903f19aa34a323e2263212055294a8837e2a03ae9cc5ea3bc58344a24c086"></a><!-- doxytag: member="DTRIANGLE" ref="97e903f19aa34a323e2263212055294a8837e2a03ae9cc5ea3bc58344a24c086" args="" -->DTRIANGLE</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="97e903f19aa34a323e2263212055294a84fd76bf798da09c7d6b58ede7d95d83"></a><!-- doxytag: member="UTRIANGLE" ref="97e903f19aa34a323e2263212055294a84fd76bf798da09c7d6b58ede7d95d83" args="" -->UTRIANGLE</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="97e903f19aa34a323e2263212055294a2bc63d77bd494feb5ddfce98685bc773"></a><!-- doxytag: member="LTRIANGLE" ref="97e903f19aa34a323e2263212055294a2bc63d77bd494feb5ddfce98685bc773" args="" -->LTRIANGLE</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="97e903f19aa34a323e2263212055294a00319089674a46e42b33e1928e4e6e1b"></a><!-- doxytag: member="RTRIANGLE" ref="97e903f19aa34a323e2263212055294a00319089674a46e42b33e1928e4e6e1b" args="" -->RTRIANGLE</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="97e903f19aa34a323e2263212055294abd9584e778ff73cfbfc6e734b33625d5"></a><!-- doxytag: member="CROSS" ref="97e903f19aa34a323e2263212055294abd9584e778ff73cfbfc6e734b33625d5" args="" -->CROSS</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="97e903f19aa34a323e2263212055294a4e6156b00d87dec8c52f23d92c5710fd"></a><!-- doxytag: member="XCROSS" ref="97e903f19aa34a323e2263212055294a4e6156b00d87dec8c52f23d92c5710fd" args="" -->XCROSS</em>&nbsp;</td><td>
-</td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="df3aecb191f106dba8a4b150c386de44"></a><!-- doxytag: member="VISU::Curve::LineType" ref="df3aecb191f106dba8a4b150c386de44" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1Curve.html#df3aecb191f106dba8a4b150c386de44">VISU::Curve::LineType</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-This enumeration contains a set of elements defining the type of presentation of a curve line on the graphics. <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="df3aecb191f106dba8a4b150c386de442f73b3f73b089d3aea6a3f1841739a8c"></a><!-- doxytag: member="VOIDLINE" ref="df3aecb191f106dba8a4b150c386de442f73b3f73b089d3aea6a3f1841739a8c" args="" -->VOIDLINE</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="df3aecb191f106dba8a4b150c386de448cfe9c9a659d866b318779df56d07727"></a><!-- doxytag: member="SOLIDLINE" ref="df3aecb191f106dba8a4b150c386de448cfe9c9a659d866b318779df56d07727" args="" -->SOLIDLINE</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="df3aecb191f106dba8a4b150c386de44d49db72e37add623e082d97033ea654a"></a><!-- doxytag: member="DASHLINE" ref="df3aecb191f106dba8a4b150c386de44d49db72e37add623e082d97033ea654a" args="" -->DASHLINE</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="df3aecb191f106dba8a4b150c386de44194a4b8be0412b0e202db697a8e89b3b"></a><!-- doxytag: member="DOTLINE" ref="df3aecb191f106dba8a4b150c386de44194a4b8be0412b0e202db697a8e89b3b" args="" -->DOTLINE</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="df3aecb191f106dba8a4b150c386de44892862418642ea4e24b1b2e2a3c97965"></a><!-- doxytag: member="DASHDOTLINE" ref="df3aecb191f106dba8a4b150c386de44892862418642ea4e24b1b2e2a3c97965" args="" -->DASHDOTLINE</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="df3aecb191f106dba8a4b150c386de44ed488c5708b5cee3ba3e0b1dee70e10e"></a><!-- doxytag: member="DASHDOTDOTLINE" ref="df3aecb191f106dba8a4b150c386de44ed488c5708b5cee3ba3e0b1dee70e10e" args="" -->DASHDOTDOTLINE</em>&nbsp;</td><td>
-</td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="f405d1e446dbc60882d0af41426f663e"></a><!-- doxytag: member="VISU::Curve::SetTitle" ref="f405d1e446dbc60882d0af41426f663e" args="(in string theTitle)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Curve.SetTitle           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theTitle</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the title of the curve. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theTitle</em>&nbsp;</td><td>This string parameter defines the title of this curve. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="d5977e6a03033828900c086af5f7e689"></a><!-- doxytag: member="VISU::Curve::GetTitle" ref="d5977e6a03033828900c086af5f7e689" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.Curve.GetTitle           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the title of the curve. <dl compact><dt><b>Returns:</b></dt><dd>String value corresponding to the title of the curve. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="14e86a425ce8c6e832517e2107ff3b30"></a><!-- doxytag: member="VISU::Curve::SetColor" ref="14e86a425ce8c6e832517e2107ff3b30" args="(in SALOMEDS::Color theColor)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Curve.SetColor           </td>
-          <td>(</td>
-          <td class="paramtype">in SALOMEDS::Color&nbsp;</td>
-          <td class="paramname"> <em>theColor</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the color of the curve. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theColor</em>&nbsp;</td><td>The color of the curve. This parameter is taken from the <em>Orientation</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="96b0a9f47b83c99ec2ffb84cbc295e92"></a><!-- doxytag: member="VISU::Curve::GetColor" ref="96b0a9f47b83c99ec2ffb84cbc295e92" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">SALOMEDS::Color VISU.Curve.GetColor           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the color of the curve. <dl compact><dt><b>Returns:</b></dt><dd>Color of the curve. The returned value will correspond to one of the elements the <em>Color</em> enumeration. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="bd0b2b09b2e37277abc041d9ad47a03a"></a><!-- doxytag: member="VISU::Curve::SetMarker" ref="bd0b2b09b2e37277abc041d9ad47a03a" args="(in MarkerType theType)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Curve.SetMarker           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294a">MarkerType</a>&nbsp;</td>
-          <td class="paramname"> <em>theType</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the presentation type of markers (data points) with help of which the curve is constructed on the graphics. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theType</em>&nbsp;</td><td>This parameter defines the type of marker with help of which the curve is constructed on the graphics. It is taken from <em>MarkerType</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="03a22241fa5a94206e7cc8cd95fa1d01"></a><!-- doxytag: member="VISU::Curve::GetMarker" ref="03a22241fa5a94206e7cc8cd95fa1d01" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Curve.html#97e903f19aa34a323e2263212055294a">MarkerType</a> VISU.Curve.GetMarker           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the presentation type of markers (data points) with help of which the curve is constructed on the graphics. <dl compact><dt><b>Returns:</b></dt><dd>The type of marker with help of which the curve is constructed on the graphics. The returned value will correspond to one of the elements the <em>MarkerType</em> enumeration. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="148c472d3b3fb406a50ecc5ce544b027"></a><!-- doxytag: member="VISU::Curve::SetLine" ref="148c472d3b3fb406a50ecc5ce544b027" args="(in LineType theType, in long theLineWidth)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Curve.SetLine           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Curve.html#df3aecb191f106dba8a4b150c386de44">LineType</a>&nbsp;</td>
-          <td class="paramname"> <em>theType</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theLineWidth</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of presentation of curve lines on the graphics. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theType</em>&nbsp;</td><td>This parameter defines the type of presentation of curve lines on the graphics. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theLineWidth</em>&nbsp;</td><td>Long value defining the width of the curve line. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="64a0564926bc81390486b297b851bdc9"></a><!-- doxytag: member="VISU::Curve::GetLine" ref="64a0564926bc81390486b297b851bdc9" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Curve.html#df3aecb191f106dba8a4b150c386de44">LineType</a> VISU.Curve.GetLine           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of representation of curve lines on the graphics. <dl compact><dt><b>Returns:</b></dt><dd>The type of representation of curve lines on the graphics. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8925ac3f1a28a67b2f2aef0fec390cc0"></a><!-- doxytag: member="VISU::Curve::GetLineWidth" ref="8925ac3f1a28a67b2f2aef0fec390cc0" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.Curve.GetLineWidth           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the width of the curve line. <dl compact><dt><b>Returns:</b></dt><dd>Long value corresponding to the width of the curve line. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="7d053f4324b26edd325024cd45424f13"></a><!-- doxytag: member="VISU::Curve::RemoveFromStudy" ref="7d053f4324b26edd325024cd45424f13" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.RemovableObject.RemoveFromStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove object from study. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::Curve::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::Curve::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:30:49 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Curve__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Curve__inherit__graph.jpg
deleted file mode 100644 (file)
index 4beb40d..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Curve__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1CutLines.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1CutLines.html
deleted file mode 100644 (file)
index 0ba6ffc..0000000
+++ /dev/null
@@ -1,1568 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1CutLines.html">CutLines</a></div>
-<h1>VISU.CutLines Interface Reference</h1><!-- doxytag: class="VISU::CutLines" --><!-- doxytag: inherits="VISU::ScalarMap" -->Cut lines presentation.  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.CutLines:<p><center><img src="interfaceVISU_1_1CutLines__inherit__graph.jpg" border="0" usemap="#VISU_8CutLines__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8CutLines__inherit__map">
-<area href="interfaceVISU_1_1ScalarMap.html" shape="rect" coords="113,382,238,406" alt="">
-<area href="interfaceVISU_1_1ColoredPrs3d.html" shape="rect" coords="104,308,248,332" alt="">
-<area href="interfaceVISU_1_1Prs3d.html" shape="rect" coords="129,233,222,257" alt="">
-<area href="interfaceVISU_1_1PrsObject.html" shape="rect" coords="34,158,154,182" alt="">
-<area href="interfaceVISU_1_1RemovableObject.html" shape="rect" coords="8,84,181,108" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="50,9,138,33" alt="">
-<area href="classSALOME_1_1GenericObj.html" shape="rect" coords="178,158,336,182" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72">HORIZONTAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d">VERTICAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> { <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72">HORIZONTAL</a>, 
-<a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d">VERTICAL</a>
- }</td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#60bb9fde7bcf96ef53839f3fc5923927">SetOrientation</a> (in <a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">CutPlanes::Orientation</a> theOrientation, in double theXAngle, in double theYAngle)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#590fbf87f5976e392dc337b97f05723e">SetOrientation2</a> (in <a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">CutPlanes::Orientation</a> theOrientation, in double theXAngle, in double theYAngle)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">CutPlanes::Orientation</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#196e30a3cc2cc23ce6fe63013a7ca291">GetOrientationType</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">CutPlanes::Orientation</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#894eb145740eb411dc0fea5d9f39608a">GetOrientationType2</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#ba4947a2c47e5c0c60a1695ea7b10f76">GetRotateX</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#f3a417f8c533eb9b867d97a6bd688ffa">GetRotateX2</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#4d112f6020965651615de7848dc60e86">GetRotateY</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#e9c0b3729ffc42cfc8af7b57e695af71">GetRotateY2</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#3b527963a1e5df6a1afecfdf4ff908e1">SetDisplacement</a> (in double theDisp)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#c20a797ab614a51a74d24efe328b5313">SetDisplacement2</a> (in double theDisp)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#5eded24d733ef30044937a4ac14b6474">GetDisplacement</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#52ce6bbc7e0a7d598e5b40b6eddff024">GetDisplacement2</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#495c0e5cac80a8ac3b4a235a39abf996">SetBasePlanePosition</a> (in double thePlanePosition)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#587d657c1c872ba0a6fd5c85f051b52e">GetBasePlanePosition</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#d12a26aad23d346169333b654531b0e8">SetLinePosition</a> (in long thePlaneNumber, in double thePlanePosition)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#1a83169fc3783b82c34aed8592c2f1fd">GetLinePosition</a> (in long thePlaneNumber)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#ad32dd12efb7df8b6bf6c4089a235f70">SetDefault</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#d7890d93098a18680019d903d0741627">IsDefault</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#7b94b966f7820c290bf85cc0154f0ed1">SetDefaultPosition</a> (in long thePlaneNumber)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#18a904c6bf82ec36b7d3695db3f679bd">IsDefaultPosition</a> (in long thePlaneNumber)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#fecd659e1f51ee2f3fa2d11bc0347a8d">SetNbLines</a> (in long theNb)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#476f66b1f3ff489231156a6362e533ba">GetNbLines</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#4b3453ec648ef02b955a5d50aa389a77">SetAllCurvesInverted</a> (in boolean theInvert)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#6c84ff465c952f65c4dc14079fc507ae">IsAllCurvesInverted</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#4737ede13dd6bf4c199bc500b3c25202">SetUseAbsoluteLength</a> (in boolean theAbsLength)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html#9fb962badd5cb0684a93164c545aaba3">IsUseAbsoluteLength</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#533517f061d61d34128a7ebd40ec3df2">SetScaling</a> (in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> theScaling)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#af368a29e0046f847a2af205e7040c23">GetScaling</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#76016f8035d5fb342c64b13ca2e30a66">SetRange</a> (in double theMin, in double theMax)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#39afc84381d63d9d8f77a37b86e36e5e">SetSourceRange</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#04340c7d752c439d0715da0c84a3a9c2">AddMeshOnGroup</a> (in string theGroupName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#11ff37051db7278522d4f55a104ad1de">RemoveAllGeom</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#0cb01513d53cac1cf26699344580962a">SetScalarMode</a> (in long theScalarMode)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#bd7047f0543f356e7e0853285679c8a0">GetScalarMode</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#df97f8522a471c2e90470584cf7c92d9">GetMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#294cd1fcd6a6c21d76a6d03dc28b5a85">GetMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ff19e0cdd15257ff97b65daf0fae8d57">GetSourceMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#c559644dd49a59f28a7ae5047da2b01b">GetSourceMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e0604356d4ef90ad08cf001f109e1153">IsRangeFixed</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e5d7bfff180529eedad1a140e5a449c3">SetPosition</a> (in double X, in double Y)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Position of the scalar bar.  <a href="#e5d7bfff180529eedad1a140e5a449c3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ddd48392a778ada1e0153ddcc781edbc">GetPosX</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#a20c6859e00c881a7db6fa3259a33e51">GetPosY</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e9331edc9bb097dd99556ee27735710c">SetSize</a> (in double theWidth, in double theHeight)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Size of this presentable object.  <a href="#e9331edc9bb097dd99556ee27735710c"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#fb5593e03da36959bcd7ac2e25c387ef">GetWidth</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#75cb62b325060b5d268159e53e7a9de4">GetHeight</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#caf0e43c7f94f9c3c2a2482a1ab0db06">SetNbColors</a> (in long theNbColors)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#2164a8ce3d888c7ac6b3644c0b7347c2">GetNbColors</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#21dd013631e20ce6c72368e7ac568802">SetLabels</a> (in long theNbLabels)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#085c23900301c3a4eb274584ee7d8ca6">GetLabels</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#449207525dc96443b81f42cef38047dd">SetTitle</a> (in string theName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#3618c82757da8f8471dd20ab13cbc27b">GetTitle</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#72fe2019f5aa9bb1c5e19b67a51d7f71">SetBarOrientation</a> (in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> theOrientation)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#8422578b257adc48e4c9e50d697e0364">GetBarOrientation</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#347812588c93643946de30dfc62cf765">SetOffset</a> (in float theDx, in float theDy, in float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#fec212476adf7396e8672ae1c3e7fb78">GetOffset</a> (out float theDx, out float theDy, out float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#b02c2fa9085433d4f3e50bf052471139">GetMemorySize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html#7d053f4324b26edd325024cd45424f13">RemoveFromStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-Presentation parameters of a Cut lines presentation. Cut Lines is a type of presentation which displays colored cells with applied scalar values on the mesh where lines are placed. The procedure of construction of a Cut Lines presentation reuses the algorithm of creation of Cut Planes presentation and consists of two steps:<p>
-1. From Cut Planes presentation one plane is taken and it is used as base plane for construction of cut lines. 2. This plane is cut by a regular array of planes. The result of this operation is a regular array of lines in space, belonging to the same plane and having the same orientation. They are located inside or on the mesh. 
-<p>
-<hr><h2>Member Enumeration Documentation</h2>
-<a class="anchor" name="12f791060a4820aca541565c57ce715c"></a><!-- doxytag: member="VISU::CutLines::Orientation" ref="12f791060a4820aca541565c57ce715c" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">VISU::ColoredPrs3d::Orientation</a><code> [inherited]</code>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Orientation of the scalar bar (to provide backward compatibility). <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72"></a><!-- doxytag: member="HORIZONTAL" ref="12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72" args="" -->HORIZONTAL</em>&nbsp;</td><td>
-Horizontal orientation of the scalar bar. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d"></a><!-- doxytag: member="VERTICAL" ref="12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d" args="" -->VERTICAL</em>&nbsp;</td><td>
-Vertical orientation of the scalar bar. </td></tr>
-</table>
-</dl>
-
-<p>
-Implemented in <a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713">VISU.Plot3D</a>, and <a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">VISU.CutPlanes</a>.
-</div>
-</div><p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="60bb9fde7bcf96ef53839f3fc5923927"></a><!-- doxytag: member="VISU::CutLines::SetOrientation" ref="60bb9fde7bcf96ef53839f3fc5923927" args="(in CutPlanes::Orientation theOrientation, in double theXAngle, in double theYAngle)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.CutLines.SetOrientation           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">CutPlanes::Orientation</a>&nbsp;</td>
-          <td class="paramname"> <em>theOrientation</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theXAngle</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theYAngle</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of orientation in 3D space of the base plane of a cut lines presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theOrientation</em>&nbsp;</td><td>The orientation of the base plane in 3D space. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theXAngle</em>&nbsp;</td><td>The angle of rotation of the base plane around the first axis of the chosen orientation. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theXAngle</em>&nbsp;</td><td>The angle of rotation of the base plane around the second axis of the chosen orientation. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="590fbf87f5976e392dc337b97f05723e"></a><!-- doxytag: member="VISU::CutLines::SetOrientation2" ref="590fbf87f5976e392dc337b97f05723e" args="(in CutPlanes::Orientation theOrientation, in double theXAngle, in double theYAngle)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.CutLines.SetOrientation2           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">CutPlanes::Orientation</a>&nbsp;</td>
-          <td class="paramname"> <em>theOrientation</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theXAngle</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theYAngle</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of orientation in 3D space of the cutting planes of a cut lines presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theOrientation</em>&nbsp;</td><td>This parameter defines the type of orientation of the cutting planes in 3D space. It is taken from the <em>Orientation</em> enumeration. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theXAngle</em>&nbsp;</td><td>The angle of rotation of the cutting planes around the first axis of the chosen orientation. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theXAngle</em>&nbsp;</td><td>The angle of rotation of the cutting planes around the second axis of the chosen orientation. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="196e30a3cc2cc23ce6fe63013a7ca291"></a><!-- doxytag: member="VISU::CutLines::GetOrientationType" ref="196e30a3cc2cc23ce6fe63013a7ca291" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">CutPlanes::Orientation</a> VISU.CutLines.GetOrientationType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of orientation in 3D space of the base plane of a cut lines presentation. 
-</div>
-</div><p>
-<a class="anchor" name="894eb145740eb411dc0fea5d9f39608a"></a><!-- doxytag: member="VISU::CutLines::GetOrientationType2" ref="894eb145740eb411dc0fea5d9f39608a" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">CutPlanes::Orientation</a> VISU.CutLines.GetOrientationType2           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of orientation in 3D space of the cutting planes of a cut lines presentation. 
-</div>
-</div><p>
-<a class="anchor" name="ba4947a2c47e5c0c60a1695ea7b10f76"></a><!-- doxytag: member="VISU::CutLines::GetRotateX" ref="ba4947a2c47e5c0c60a1695ea7b10f76" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.CutLines.GetRotateX           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets rotation angle of the base plane around the first axis of the chosen orientation. 
-</div>
-</div><p>
-<a class="anchor" name="f3a417f8c533eb9b867d97a6bd688ffa"></a><!-- doxytag: member="VISU::CutLines::GetRotateX2" ref="f3a417f8c533eb9b867d97a6bd688ffa" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.CutLines.GetRotateX2           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets rotation angle of the cutting planes around the first axis of the chosen orientation. 
-</div>
-</div><p>
-<a class="anchor" name="4d112f6020965651615de7848dc60e86"></a><!-- doxytag: member="VISU::CutLines::GetRotateY" ref="4d112f6020965651615de7848dc60e86" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.CutLines.GetRotateY           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets rotation angle of the base plane around the second axis of the chosen orientation. 
-</div>
-</div><p>
-<a class="anchor" name="e9c0b3729ffc42cfc8af7b57e695af71"></a><!-- doxytag: member="VISU::CutLines::GetRotateY2" ref="e9c0b3729ffc42cfc8af7b57e695af71" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.CutLines.GetRotateY2           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets rotation angle of the cutting planes around the second axis of the chosen orientation. 
-</div>
-</div><p>
-<a class="anchor" name="3b527963a1e5df6a1afecfdf4ff908e1"></a><!-- doxytag: member="VISU::CutLines::SetDisplacement" ref="3b527963a1e5df6a1afecfdf4ff908e1" args="(in double theDisp)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.CutLines.SetDisplacement           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theDisp</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the displacement of the base plane of the cut lines presentation in 3D space.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theDisp</em>&nbsp;</td><td>This parameter defines position of the base plane in 3D space. It varies from 0 to 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="c20a797ab614a51a74d24efe328b5313"></a><!-- doxytag: member="VISU::CutLines::SetDisplacement2" ref="c20a797ab614a51a74d24efe328b5313" args="(in double theDisp)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.CutLines.SetDisplacement2           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theDisp</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the displacement of the cutting planes of the cut lines presentation in 3D space.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theDisp</em>&nbsp;</td><td>This parameter defines position of the cutting planes in 3D space. It varies from 0 to 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="5eded24d733ef30044937a4ac14b6474"></a><!-- doxytag: member="VISU::CutLines::GetDisplacement" ref="5eded24d733ef30044937a4ac14b6474" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.CutLines.GetDisplacement           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the displacement of the base plane of the cut lines presentation in 3D space. 
-</div>
-</div><p>
-<a class="anchor" name="52ce6bbc7e0a7d598e5b40b6eddff024"></a><!-- doxytag: member="VISU::CutLines::GetDisplacement2" ref="52ce6bbc7e0a7d598e5b40b6eddff024" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.CutLines.GetDisplacement2           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the displacement of the cutting planes of the cut lines presentation in 3D space. 
-</div>
-</div><p>
-<a class="anchor" name="495c0e5cac80a8ac3b4a235a39abf996"></a><!-- doxytag: member="VISU::CutLines::SetBasePlanePosition" ref="495c0e5cac80a8ac3b4a235a39abf996" args="(in double thePlanePosition)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.CutLines.SetBasePlanePosition           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>thePlanePosition</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the position of the base plane in 3D space. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePlanePosition</em>&nbsp;</td><td>A double value defining the position of the base plane in 3D space. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="587d657c1c872ba0a6fd5c85f051b52e"></a><!-- doxytag: member="VISU::CutLines::GetBasePlanePosition" ref="587d657c1c872ba0a6fd5c85f051b52e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.CutLines.GetBasePlanePosition           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the position of the base plane in 3D space. 
-</div>
-</div><p>
-<a class="anchor" name="d12a26aad23d346169333b654531b0e8"></a><!-- doxytag: member="VISU::CutLines::SetLinePosition" ref="d12a26aad23d346169333b654531b0e8" args="(in long thePlaneNumber, in double thePlanePosition)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.CutLines.SetLinePosition           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>thePlaneNumber</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>thePlanePosition</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the position of one of cutting planes in 3D space. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePlaneNumber</em>&nbsp;</td><td>A long value defining the order number of this cutting plane. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>thePlanePosition</em>&nbsp;</td><td>A double value defining the position of the base plane in 3D space. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="1a83169fc3783b82c34aed8592c2f1fd"></a><!-- doxytag: member="VISU::CutLines::GetLinePosition" ref="1a83169fc3783b82c34aed8592c2f1fd" args="(in long thePlaneNumber)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.CutLines.GetLinePosition           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>thePlaneNumber</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the position of one of cutting planes in 3D space. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePlaneNumber</em>&nbsp;</td><td>A long value defining the order number of this cutting plane. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="ad32dd12efb7df8b6bf6c4089a235f70"></a><!-- doxytag: member="VISU::CutLines::SetDefault" ref="ad32dd12efb7df8b6bf6c4089a235f70" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.CutLines.SetDefault           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the position of the base plane to default value. 
-</div>
-</div><p>
-<a class="anchor" name="d7890d93098a18680019d903d0741627"></a><!-- doxytag: member="VISU::CutLines::IsDefault" ref="d7890d93098a18680019d903d0741627" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.CutLines.IsDefault           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Determines whether the base plane has default position. <dl compact><dt><b>Returns:</b></dt><dd>True if the base plane has default position. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="7b94b966f7820c290bf85cc0154f0ed1"></a><!-- doxytag: member="VISU::CutLines::SetDefaultPosition" ref="7b94b966f7820c290bf85cc0154f0ed1" args="(in long thePlaneNumber)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.CutLines.SetDefaultPosition           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>thePlaneNumber</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the position of the choosen cutting plane to default value. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePlaneNumber</em>&nbsp;</td><td>The number of this cutting plane. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="18a904c6bf82ec36b7d3695db3f679bd"></a><!-- doxytag: member="VISU::CutLines::IsDefaultPosition" ref="18a904c6bf82ec36b7d3695db3f679bd" args="(in long thePlaneNumber)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.CutLines.IsDefaultPosition           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>thePlaneNumber</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Determines whether the choosen cutting plane has default position. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePlaneNumber</em>&nbsp;</td><td>The number of this cutting plane. </td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>True if this cutting plane has default position. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="fecd659e1f51ee2f3fa2d11bc0347a8d"></a><!-- doxytag: member="VISU::CutLines::SetNbLines" ref="fecd659e1f51ee2f3fa2d11bc0347a8d" args="(in long theNb)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.CutLines.SetNbLines           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNb</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of cut lines. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNb</em>&nbsp;</td><td>The number of cut lines. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="476f66b1f3ff489231156a6362e533ba"></a><!-- doxytag: member="VISU::CutLines::GetNbLines" ref="476f66b1f3ff489231156a6362e533ba" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.CutLines.GetNbLines           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of cut lines. 
-</div>
-</div><p>
-<a class="anchor" name="4b3453ec648ef02b955a5d50aa389a77"></a><!-- doxytag: member="VISU::CutLines::SetAllCurvesInverted" ref="4b3453ec648ef02b955a5d50aa389a77" args="(in boolean theInvert)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.CutLines.SetAllCurvesInverted           </td>
-          <td>(</td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>theInvert</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Invert all curves of corresponding table <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theInvert</em>&nbsp;</td><td>- Invert all curves, if value is TRUE, else not. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="6c84ff465c952f65c4dc14079fc507ae"></a><!-- doxytag: member="VISU::CutLines::IsAllCurvesInverted" ref="6c84ff465c952f65c4dc14079fc507ae" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.CutLines.IsAllCurvesInverted           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Checks the orientation of all curves <dl compact><dt><b>Return values:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>TRUE</em>&nbsp;</td><td>- if all curves are inverted, else FALSE </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="4737ede13dd6bf4c199bc500b3c25202"></a><!-- doxytag: member="VISU::CutLines::SetUseAbsoluteLength" ref="4737ede13dd6bf4c199bc500b3c25202" args="(in boolean theAbsLength)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.CutLines.SetUseAbsoluteLength           </td>
-          <td>(</td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>theAbsLength</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets values which cutlines would be shown: aboslute or relative values <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theAbsLength</em>&nbsp;</td><td>- boolean value, TRUE or false. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="9fb962badd5cb0684a93164c545aaba3"></a><!-- doxytag: member="VISU::CutLines::IsUseAbsoluteLength" ref="9fb962badd5cb0684a93164c545aaba3" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.CutLines.IsUseAbsoluteLength           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Checks values of cutlines: using aboslute or relative values 
-</div>
-</div><p>
-<a class="anchor" name="533517f061d61d34128a7ebd40ec3df2"></a><!-- doxytag: member="VISU::CutLines::SetScaling" ref="533517f061d61d34128a7ebd40ec3df2" args="(in Scaling theScaling)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetScaling           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td>
-          <td class="paramname"> <em>theScaling</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of scaling of the values reflected by the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theScaling</em>&nbsp;</td><td>The value of this parameter is taken from the <em>Scaling</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="af368a29e0046f847a2af205e7040c23"></a><!-- doxytag: member="VISU::CutLines::GetScaling" ref="af368a29e0046f847a2af205e7040c23" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> VISU.ScalarMap.GetScaling           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of scaling of the values reflected by this presentation. 
-</div>
-</div><p>
-<a class="anchor" name="76016f8035d5fb342c64b13ca2e30a66"></a><!-- doxytag: member="VISU::CutLines::SetRange" ref="76016f8035d5fb342c64b13ca2e30a66" args="(in double theMin, in double theMax)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetRange           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theMin</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theMax</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets scalar range - min and max boundaries of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theMin</em>&nbsp;</td><td>Min boundary of the scalar bar. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMax</em>&nbsp;</td><td>Max boundary of the scalar bar. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="39afc84381d63d9d8f77a37b86e36e5e"></a><!-- doxytag: member="VISU::CutLines::SetSourceRange" ref="39afc84381d63d9d8f77a37b86e36e5e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetSourceRange           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets scalar range that corresponds to the source data. 
-</div>
-</div><p>
-<a class="anchor" name="04340c7d752c439d0715da0c84a3a9c2"></a><!-- doxytag: member="VISU::CutLines::AddMeshOnGroup" ref="04340c7d752c439d0715da0c84a3a9c2" args="(in string theGroupName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.AddMeshOnGroup           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theGroupName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Add group as geometry of presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>- mesh name </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theGroupName</em>&nbsp;</td><td>- group name </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="11ff37051db7278522d4f55a104ad1de"></a><!-- doxytag: member="VISU::CutLines::RemoveAllGeom" ref="11ff37051db7278522d4f55a104ad1de" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.RemoveAllGeom           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-PrsMerger method: Remove all groups.(The scalar map will be placed on all mesh). 
-</div>
-</div><p>
-<a class="anchor" name="0cb01513d53cac1cf26699344580962a"></a><!-- doxytag: member="VISU::CutLines::SetScalarMode" ref="0cb01513d53cac1cf26699344580962a" args="(in long theScalarMode)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetScalarMode           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theScalarMode</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="bd7047f0543f356e7e0853285679c8a0"></a><!-- doxytag: member="VISU::CutLines::GetScalarMode" ref="bd7047f0543f356e7e0853285679c8a0" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetScalarMode           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="df97f8522a471c2e90470584cf7c92d9"></a><!-- doxytag: member="VISU::CutLines::GetMin" ref="df97f8522a471c2e90470584cf7c92d9" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="294cd1fcd6a6c21d76a6d03dc28b5a85"></a><!-- doxytag: member="VISU::CutLines::GetMax" ref="294cd1fcd6a6c21d76a6d03dc28b5a85" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="ff19e0cdd15257ff97b65daf0fae8d57"></a><!-- doxytag: member="VISU::CutLines::GetSourceMin" ref="ff19e0cdd15257ff97b65daf0fae8d57" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="c559644dd49a59f28a7ae5047da2b01b"></a><!-- doxytag: member="VISU::CutLines::GetSourceMax" ref="c559644dd49a59f28a7ae5047da2b01b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="e0604356d4ef90ad08cf001f109e1153"></a><!-- doxytag: member="VISU::CutLines::IsRangeFixed" ref="e0604356d4ef90ad08cf001f109e1153" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.ColoredPrs3d.IsRangeFixed           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Defines whether the scalar range corresponds to the source data or not. 
-</div>
-</div><p>
-<a class="anchor" name="e5d7bfff180529eedad1a140e5a449c3"></a><!-- doxytag: member="VISU::CutLines::SetPosition" ref="e5d7bfff180529eedad1a140e5a449c3" args="(in double X, in double Y)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetPosition           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>X</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>Y</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the position of the scalar bar origin on the screen. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>X</em>&nbsp;</td><td>Horizontal position. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>Y</em>&nbsp;</td><td>Vertical position. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="ddd48392a778ada1e0153ddcc781edbc"></a><!-- doxytag: member="VISU::CutLines::GetPosX" ref="ddd48392a778ada1e0153ddcc781edbc" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosX           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets horizontal position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="a20c6859e00c881a7db6fa3259a33e51"></a><!-- doxytag: member="VISU::CutLines::GetPosY" ref="a20c6859e00c881a7db6fa3259a33e51" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosY           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets vertical position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="e9331edc9bb097dd99556ee27735710c"></a><!-- doxytag: member="VISU::CutLines::SetSize" ref="e9331edc9bb097dd99556ee27735710c" args="(in double theWidth, in double theHeight)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetSize           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theWidth</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theHeight</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the size of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theWidth</em>&nbsp;</td><td>Width of this presentable object. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theHeight</em>&nbsp;</td><td>Height of this presentable object. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="fb5593e03da36959bcd7ac2e25c387ef"></a><!-- doxytag: member="VISU::CutLines::GetWidth" ref="fb5593e03da36959bcd7ac2e25c387ef" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetWidth           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the width of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the width of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="75cb62b325060b5d268159e53e7a9de4"></a><!-- doxytag: member="VISU::CutLines::GetHeight" ref="75cb62b325060b5d268159e53e7a9de4" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetHeight           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the height of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the height of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="caf0e43c7f94f9c3c2a2482a1ab0db06"></a><!-- doxytag: member="VISU::CutLines::SetNbColors" ref="caf0e43c7f94f9c3c2a2482a1ab0db06" args="(in long theNbColors)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetNbColors           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbColors</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of colors which will be used for presentation of this presentable object. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbColors</em>&nbsp;</td><td>A long value defining the number of colors. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="2164a8ce3d888c7ac6b3644c0b7347c2"></a><!-- doxytag: member="VISU::CutLines::GetNbColors" ref="2164a8ce3d888c7ac6b3644c0b7347c2" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetNbColors           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of colors which will be used for visualization of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of colors which will be used for visualization of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="21dd013631e20ce6c72368e7ac568802"></a><!-- doxytag: member="VISU::CutLines::SetLabels" ref="21dd013631e20ce6c72368e7ac568802" args="(in long theNbLabels)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetLabels           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbLabels</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbLabels</em>&nbsp;</td><td>A long value defining the number of labels. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="085c23900301c3a4eb274584ee7d8ca6"></a><!-- doxytag: member="VISU::CutLines::GetLabels" ref="085c23900301c3a4eb274584ee7d8ca6" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetLabels           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of labels which will be used for indication of color gradation of the scalar bar. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="449207525dc96443b81f42cef38047dd"></a><!-- doxytag: member="VISU::CutLines::SetTitle" ref="449207525dc96443b81f42cef38047dd" args="(in string theName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetTitle           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the title of the scalar bar. By default - the name of the selected result is used. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theName</em>&nbsp;</td><td>String parameter defining the name of the scalar bar. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="3618c82757da8f8471dd20ab13cbc27b"></a><!-- doxytag: member="VISU::CutLines::GetTitle" ref="3618c82757da8f8471dd20ab13cbc27b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.ColoredPrs3d.GetTitle           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the title of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="72fe2019f5aa9bb1c5e19b67a51d7f71"></a><!-- doxytag: member="VISU::CutLines::SetBarOrientation" ref="72fe2019f5aa9bb1c5e19b67a51d7f71" args="(in Orientation theOrientation)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a>&nbsp;</td>
-          <td class="paramname"> <em>theOrientation</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of orientation of the scalar bar (to provide backward compatibility). <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theOrientation</em>&nbsp;</td><td>This parameter defines the orientation of the scalar bar. It is taken from the <em>Orientaton</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8422578b257adc48e4c9e50d697e0364"></a><!-- doxytag: member="VISU::CutLines::GetBarOrientation" ref="8422578b257adc48e4c9e50d697e0364" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> VISU.ColoredPrs3d.GetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of orientation of the scalar bar (to provide backward compatibility). 
-</div>
-</div><p>
-<a class="anchor" name="347812588c93643946de30dfc62cf765"></a><!-- doxytag: member="VISU::CutLines::SetOffset" ref="347812588c93643946de30dfc62cf765" args="(in float theDx, in float theDy, in float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.SetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Move the 3D presentation according to the given offset parameters 
-</div>
-</div><p>
-<a class="anchor" name="fec212476adf7396e8672ae1c3e7fb78"></a><!-- doxytag: member="VISU::CutLines::GetOffset" ref="fec212476adf7396e8672ae1c3e7fb78" args="(out float theDx, out float theDy, out float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.GetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets offset parameters for the 3D presentation 
-</div>
-</div><p>
-<a class="anchor" name="b02c2fa9085433d4f3e50bf052471139"></a><!-- doxytag: member="VISU::CutLines::GetMemorySize" ref="b02c2fa9085433d4f3e50bf052471139" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">float VISU.Prs3d.GetMemorySize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets memory size actually used by the presentation (Mb). 
-</div>
-</div><p>
-<a class="anchor" name="7d053f4324b26edd325024cd45424f13"></a><!-- doxytag: member="VISU::CutLines::RemoveFromStudy" ref="7d053f4324b26edd325024cd45424f13" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.RemovableObject.RemoveFromStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove object from study. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::CutLines::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::CutLines::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:31:09 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1CutLines__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1CutLines__inherit__graph.jpg
deleted file mode 100644 (file)
index e7dea05..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1CutLines__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1CutPlanes.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1CutPlanes.html
deleted file mode 100644 (file)
index 2fa278d..0000000
+++ /dev/null
@@ -1,1222 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1CutPlanes.html">CutPlanes</a></div>
-<h1>VISU.CutPlanes Interface Reference</h1><!-- doxytag: class="VISU::CutPlanes" --><!-- doxytag: inherits="VISU::ScalarMap" -->Cut planes interface.  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.CutPlanes:<p><center><img src="interfaceVISU_1_1CutPlanes__inherit__graph.jpg" border="0" usemap="#VISU_8CutPlanes__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8CutPlanes__inherit__map">
-<area href="interfaceVISU_1_1ScalarMap.html" shape="rect" coords="113,382,238,406" alt="">
-<area href="interfaceVISU_1_1ColoredPrs3d.html" shape="rect" coords="104,308,248,332" alt="">
-<area href="interfaceVISU_1_1Prs3d.html" shape="rect" coords="129,233,222,257" alt="">
-<area href="interfaceVISU_1_1PrsObject.html" shape="rect" coords="34,158,154,182" alt="">
-<area href="interfaceVISU_1_1RemovableObject.html" shape="rect" coords="8,84,181,108" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="50,9,138,33" alt="">
-<area href="classSALOME_1_1GenericObj.html" shape="rect" coords="178,158,336,182" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d82e2e0acb8863f0a4fb076397d81333c4">XY</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8953b0c17175d6a45294d65daeddbed60">YZ</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d849c82a9ddd7bcd17e4f86484c068cb7f">ZX</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">Orientation</a> { <a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d82e2e0acb8863f0a4fb076397d81333c4">XY</a>, 
-<a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8953b0c17175d6a45294d65daeddbed60">YZ</a>, 
-<a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d849c82a9ddd7bcd17e4f86484c068cb7f">ZX</a>
- }</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72">HORIZONTAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d">VERTICAL</a></td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutPlanes.html#1d9df2ba05a443ed415e973320b29c55">SetOrientation</a> (in <a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">Orientation</a> theOrientation, in double theXAngle, in double theYAngle)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">Orientation</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutPlanes.html#c9f89f6fac655be4fbcbaabc032de945">GetOrientationType</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutPlanes.html#9deadd5352bb8b590f17df7417505c46">GetRotateX</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutPlanes.html#5e265ed7c354bd5599ee3285519c449f">GetRotateY</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutPlanes.html#f076fc58a0a8322e496704e0792b1e07">SetDisplacement</a> (in double theDisp)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutPlanes.html#64a719e6183a3e97ab99c8e4d0626a43">GetDisplacement</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutPlanes.html#04efdcd02e08836141f1046a1244299b">SetPlanePosition</a> (in long thePlaneNumber, in double thePlanePosition)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutPlanes.html#c47a9b5dbe82968caccbc0bdfb1cdadd">SetDefault</a> (in long thePlaneNumber)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutPlanes.html#bf706ecff0abf3faf1c8254486fe4fcb">GetPlanePosition</a> (in long thePlaneNumber)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutPlanes.html#5af860addf66ea173386da395714f841">IsDefault</a> (in long thePlaneNumber)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutPlanes.html#e12cd931e3627fb9f9bbfd8f274ebb00">SetNbPlanes</a> (in long theNb)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutPlanes.html#f14abf721c5ee81ab210f3b9f28a6543">GetNbPlanes</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#533517f061d61d34128a7ebd40ec3df2">SetScaling</a> (in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> theScaling)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#af368a29e0046f847a2af205e7040c23">GetScaling</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#76016f8035d5fb342c64b13ca2e30a66">SetRange</a> (in double theMin, in double theMax)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#39afc84381d63d9d8f77a37b86e36e5e">SetSourceRange</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#04340c7d752c439d0715da0c84a3a9c2">AddMeshOnGroup</a> (in string theGroupName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#11ff37051db7278522d4f55a104ad1de">RemoveAllGeom</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#0cb01513d53cac1cf26699344580962a">SetScalarMode</a> (in long theScalarMode)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#bd7047f0543f356e7e0853285679c8a0">GetScalarMode</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#df97f8522a471c2e90470584cf7c92d9">GetMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#294cd1fcd6a6c21d76a6d03dc28b5a85">GetMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ff19e0cdd15257ff97b65daf0fae8d57">GetSourceMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#c559644dd49a59f28a7ae5047da2b01b">GetSourceMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e0604356d4ef90ad08cf001f109e1153">IsRangeFixed</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e5d7bfff180529eedad1a140e5a449c3">SetPosition</a> (in double X, in double Y)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Position of the scalar bar.  <a href="#e5d7bfff180529eedad1a140e5a449c3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ddd48392a778ada1e0153ddcc781edbc">GetPosX</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#a20c6859e00c881a7db6fa3259a33e51">GetPosY</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e9331edc9bb097dd99556ee27735710c">SetSize</a> (in double theWidth, in double theHeight)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Size of this presentable object.  <a href="#e9331edc9bb097dd99556ee27735710c"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#fb5593e03da36959bcd7ac2e25c387ef">GetWidth</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#75cb62b325060b5d268159e53e7a9de4">GetHeight</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#caf0e43c7f94f9c3c2a2482a1ab0db06">SetNbColors</a> (in long theNbColors)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#2164a8ce3d888c7ac6b3644c0b7347c2">GetNbColors</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#21dd013631e20ce6c72368e7ac568802">SetLabels</a> (in long theNbLabels)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#085c23900301c3a4eb274584ee7d8ca6">GetLabels</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#449207525dc96443b81f42cef38047dd">SetTitle</a> (in string theName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#3618c82757da8f8471dd20ab13cbc27b">GetTitle</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#72fe2019f5aa9bb1c5e19b67a51d7f71">SetBarOrientation</a> (in <a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">Orientation</a> theOrientation)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">Orientation</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#8422578b257adc48e4c9e50d697e0364">GetBarOrientation</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#347812588c93643946de30dfc62cf765">SetOffset</a> (in float theDx, in float theDy, in float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#fec212476adf7396e8672ae1c3e7fb78">GetOffset</a> (out float theDx, out float theDy, out float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#b02c2fa9085433d4f3e50bf052471139">GetMemorySize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html#7d053f4324b26edd325024cd45424f13">RemoveFromStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-Presentation parameters of Cut planes presentation. This type of presentation consists of cutting your initial mesh by a definite number of planes. As the result you will see these planes which will be cutted by the borders of the mesh. 
-<p>
-<hr><h2>Member Enumeration Documentation</h2>
-<a class="anchor" name="e6323ddacff1f78376488b92a5cdd3d8"></a><!-- doxytag: member="VISU::CutPlanes::Orientation" ref="e6323ddacff1f78376488b92a5cdd3d8" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">VISU::CutPlanes::Orientation</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-This enumeration contains a set of elements defining the type of orientation in 3D space of the cut planes. <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="e6323ddacff1f78376488b92a5cdd3d82e2e0acb8863f0a4fb076397d81333c4"></a><!-- doxytag: member="XY" ref="e6323ddacff1f78376488b92a5cdd3d82e2e0acb8863f0a4fb076397d81333c4" args="" -->XY</em>&nbsp;</td><td>
-The object is located in the plane formed by X and Y axis. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="e6323ddacff1f78376488b92a5cdd3d8953b0c17175d6a45294d65daeddbed60"></a><!-- doxytag: member="YZ" ref="e6323ddacff1f78376488b92a5cdd3d8953b0c17175d6a45294d65daeddbed60" args="" -->YZ</em>&nbsp;</td><td>
-The object is located in the plane formed by Y and Z axis. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="e6323ddacff1f78376488b92a5cdd3d849c82a9ddd7bcd17e4f86484c068cb7f"></a><!-- doxytag: member="ZX" ref="e6323ddacff1f78376488b92a5cdd3d849c82a9ddd7bcd17e4f86484c068cb7f" args="" -->ZX</em>&nbsp;</td><td>
-</td></tr>
-</table>
-</dl>
-
-<p>
-Implements <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">VISU.ColoredPrs3d</a>.
-</div>
-</div><p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="1d9df2ba05a443ed415e973320b29c55"></a><!-- doxytag: member="VISU::CutPlanes::SetOrientation" ref="1d9df2ba05a443ed415e973320b29c55" args="(in Orientation theOrientation, in double theXAngle, in double theYAngle)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.CutPlanes.SetOrientation           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">Orientation</a>&nbsp;</td>
-          <td class="paramname"> <em>theOrientation</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theXAngle</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theYAngle</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of orientation in 3D space of cut planes presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theOrientation</em>&nbsp;</td><td>This parameter defines the type of orientation of cut planes in 3D space. It is taken from the <em>Orientation</em> enumeration. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theXAngle</em>&nbsp;</td><td>The angle of rotation of the cut planes around the first axis of the chosen orientation. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theXAngle</em>&nbsp;</td><td>The angle of rotation of the cut planes around the second axis of the chosen orientation. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="c9f89f6fac655be4fbcbaabc032de945"></a><!-- doxytag: member="VISU::CutPlanes::GetOrientationType" ref="c9f89f6fac655be4fbcbaabc032de945" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">Orientation</a> VISU.CutPlanes.GetOrientationType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of orientation in 3D space of cut planes presentation. 
-</div>
-</div><p>
-<a class="anchor" name="9deadd5352bb8b590f17df7417505c46"></a><!-- doxytag: member="VISU::CutPlanes::GetRotateX" ref="9deadd5352bb8b590f17df7417505c46" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.CutPlanes.GetRotateX           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets rotation angle of the cut plane presentation around the first axis of the chosen orientation. 
-</div>
-</div><p>
-<a class="anchor" name="5e265ed7c354bd5599ee3285519c449f"></a><!-- doxytag: member="VISU::CutPlanes::GetRotateY" ref="5e265ed7c354bd5599ee3285519c449f" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.CutPlanes.GetRotateY           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets rotation angle of the cut plane presentation around the second axis of the chosen orientation. 
-</div>
-</div><p>
-<a class="anchor" name="f076fc58a0a8322e496704e0792b1e07"></a><!-- doxytag: member="VISU::CutPlanes::SetDisplacement" ref="f076fc58a0a8322e496704e0792b1e07" args="(in double theDisp)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.CutPlanes.SetDisplacement           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theDisp</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the displacement of the cut planes in 3D space.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theDisp</em>&nbsp;</td><td>This parameter defines position of the cut planes in 3D space. It varies from 0 to 1. If the chosen value is 0.5, the cut planes will be evenly located regarding each other; in other words, the distance between all of them will be equal. If the value is higher or lower than 0.5, the planes will be displaced to one or another side. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="64a719e6183a3e97ab99c8e4d0626a43"></a><!-- doxytag: member="VISU::CutPlanes::GetDisplacement" ref="64a719e6183a3e97ab99c8e4d0626a43" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.CutPlanes.GetDisplacement           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the displacement of the cut planes in 3D space. 
-</div>
-</div><p>
-<a class="anchor" name="04efdcd02e08836141f1046a1244299b"></a><!-- doxytag: member="VISU::CutPlanes::SetPlanePosition" ref="04efdcd02e08836141f1046a1244299b" args="(in long thePlaneNumber, in double thePlanePosition)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.CutPlanes.SetPlanePosition           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>thePlaneNumber</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>thePlanePosition</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the position of a definite cut plane. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePlaneNumber</em>&nbsp;</td><td>The number of this cut plane. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>thePlanePosition</em>&nbsp;</td><td>The position of this cut plane. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="c47a9b5dbe82968caccbc0bdfb1cdadd"></a><!-- doxytag: member="VISU::CutPlanes::SetDefault" ref="c47a9b5dbe82968caccbc0bdfb1cdadd" args="(in long thePlaneNumber)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.CutPlanes.SetDefault           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>thePlaneNumber</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the position of the choosen plane to default value. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePlaneNumber</em>&nbsp;</td><td>The number of this cut plane. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="bf706ecff0abf3faf1c8254486fe4fcb"></a><!-- doxytag: member="VISU::CutPlanes::GetPlanePosition" ref="bf706ecff0abf3faf1c8254486fe4fcb" args="(in long thePlaneNumber)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.CutPlanes.GetPlanePosition           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>thePlaneNumber</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the position of the choosen plane 
-</div>
-</div><p>
-<a class="anchor" name="5af860addf66ea173386da395714f841"></a><!-- doxytag: member="VISU::CutPlanes::IsDefault" ref="5af860addf66ea173386da395714f841" args="(in long thePlaneNumber)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.CutPlanes.IsDefault           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>thePlaneNumber</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Determines whether the choosen plane has default position. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePlaneNumber</em>&nbsp;</td><td>The number of this cut plane. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="e12cd931e3627fb9f9bbfd8f274ebb00"></a><!-- doxytag: member="VISU::CutPlanes::SetNbPlanes" ref="e12cd931e3627fb9f9bbfd8f274ebb00" args="(in long theNb)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.CutPlanes.SetNbPlanes           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNb</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of cut planes. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNb</em>&nbsp;</td><td>The number of cut planes. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="f14abf721c5ee81ab210f3b9f28a6543"></a><!-- doxytag: member="VISU::CutPlanes::GetNbPlanes" ref="f14abf721c5ee81ab210f3b9f28a6543" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.CutPlanes.GetNbPlanes           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of cut planes. 
-</div>
-</div><p>
-<a class="anchor" name="533517f061d61d34128a7ebd40ec3df2"></a><!-- doxytag: member="VISU::CutPlanes::SetScaling" ref="533517f061d61d34128a7ebd40ec3df2" args="(in Scaling theScaling)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetScaling           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td>
-          <td class="paramname"> <em>theScaling</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of scaling of the values reflected by the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theScaling</em>&nbsp;</td><td>The value of this parameter is taken from the <em>Scaling</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="af368a29e0046f847a2af205e7040c23"></a><!-- doxytag: member="VISU::CutPlanes::GetScaling" ref="af368a29e0046f847a2af205e7040c23" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> VISU.ScalarMap.GetScaling           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of scaling of the values reflected by this presentation. 
-</div>
-</div><p>
-<a class="anchor" name="76016f8035d5fb342c64b13ca2e30a66"></a><!-- doxytag: member="VISU::CutPlanes::SetRange" ref="76016f8035d5fb342c64b13ca2e30a66" args="(in double theMin, in double theMax)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetRange           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theMin</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theMax</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets scalar range - min and max boundaries of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theMin</em>&nbsp;</td><td>Min boundary of the scalar bar. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMax</em>&nbsp;</td><td>Max boundary of the scalar bar. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="39afc84381d63d9d8f77a37b86e36e5e"></a><!-- doxytag: member="VISU::CutPlanes::SetSourceRange" ref="39afc84381d63d9d8f77a37b86e36e5e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetSourceRange           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets scalar range that corresponds to the source data. 
-</div>
-</div><p>
-<a class="anchor" name="04340c7d752c439d0715da0c84a3a9c2"></a><!-- doxytag: member="VISU::CutPlanes::AddMeshOnGroup" ref="04340c7d752c439d0715da0c84a3a9c2" args="(in string theGroupName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.AddMeshOnGroup           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theGroupName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Add group as geometry of presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>- mesh name </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theGroupName</em>&nbsp;</td><td>- group name </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="11ff37051db7278522d4f55a104ad1de"></a><!-- doxytag: member="VISU::CutPlanes::RemoveAllGeom" ref="11ff37051db7278522d4f55a104ad1de" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.RemoveAllGeom           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-PrsMerger method: Remove all groups.(The scalar map will be placed on all mesh). 
-</div>
-</div><p>
-<a class="anchor" name="0cb01513d53cac1cf26699344580962a"></a><!-- doxytag: member="VISU::CutPlanes::SetScalarMode" ref="0cb01513d53cac1cf26699344580962a" args="(in long theScalarMode)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetScalarMode           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theScalarMode</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="bd7047f0543f356e7e0853285679c8a0"></a><!-- doxytag: member="VISU::CutPlanes::GetScalarMode" ref="bd7047f0543f356e7e0853285679c8a0" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetScalarMode           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="df97f8522a471c2e90470584cf7c92d9"></a><!-- doxytag: member="VISU::CutPlanes::GetMin" ref="df97f8522a471c2e90470584cf7c92d9" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="294cd1fcd6a6c21d76a6d03dc28b5a85"></a><!-- doxytag: member="VISU::CutPlanes::GetMax" ref="294cd1fcd6a6c21d76a6d03dc28b5a85" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="ff19e0cdd15257ff97b65daf0fae8d57"></a><!-- doxytag: member="VISU::CutPlanes::GetSourceMin" ref="ff19e0cdd15257ff97b65daf0fae8d57" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="c559644dd49a59f28a7ae5047da2b01b"></a><!-- doxytag: member="VISU::CutPlanes::GetSourceMax" ref="c559644dd49a59f28a7ae5047da2b01b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="e0604356d4ef90ad08cf001f109e1153"></a><!-- doxytag: member="VISU::CutPlanes::IsRangeFixed" ref="e0604356d4ef90ad08cf001f109e1153" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.ColoredPrs3d.IsRangeFixed           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Defines whether the scalar range corresponds to the source data or not. 
-</div>
-</div><p>
-<a class="anchor" name="e5d7bfff180529eedad1a140e5a449c3"></a><!-- doxytag: member="VISU::CutPlanes::SetPosition" ref="e5d7bfff180529eedad1a140e5a449c3" args="(in double X, in double Y)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetPosition           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>X</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>Y</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the position of the scalar bar origin on the screen. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>X</em>&nbsp;</td><td>Horizontal position. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>Y</em>&nbsp;</td><td>Vertical position. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="ddd48392a778ada1e0153ddcc781edbc"></a><!-- doxytag: member="VISU::CutPlanes::GetPosX" ref="ddd48392a778ada1e0153ddcc781edbc" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosX           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets horizontal position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="a20c6859e00c881a7db6fa3259a33e51"></a><!-- doxytag: member="VISU::CutPlanes::GetPosY" ref="a20c6859e00c881a7db6fa3259a33e51" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosY           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets vertical position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="e9331edc9bb097dd99556ee27735710c"></a><!-- doxytag: member="VISU::CutPlanes::SetSize" ref="e9331edc9bb097dd99556ee27735710c" args="(in double theWidth, in double theHeight)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetSize           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theWidth</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theHeight</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the size of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theWidth</em>&nbsp;</td><td>Width of this presentable object. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theHeight</em>&nbsp;</td><td>Height of this presentable object. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="fb5593e03da36959bcd7ac2e25c387ef"></a><!-- doxytag: member="VISU::CutPlanes::GetWidth" ref="fb5593e03da36959bcd7ac2e25c387ef" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetWidth           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the width of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the width of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="75cb62b325060b5d268159e53e7a9de4"></a><!-- doxytag: member="VISU::CutPlanes::GetHeight" ref="75cb62b325060b5d268159e53e7a9de4" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetHeight           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the height of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the height of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="caf0e43c7f94f9c3c2a2482a1ab0db06"></a><!-- doxytag: member="VISU::CutPlanes::SetNbColors" ref="caf0e43c7f94f9c3c2a2482a1ab0db06" args="(in long theNbColors)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetNbColors           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbColors</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of colors which will be used for presentation of this presentable object. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbColors</em>&nbsp;</td><td>A long value defining the number of colors. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="2164a8ce3d888c7ac6b3644c0b7347c2"></a><!-- doxytag: member="VISU::CutPlanes::GetNbColors" ref="2164a8ce3d888c7ac6b3644c0b7347c2" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetNbColors           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of colors which will be used for visualization of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of colors which will be used for visualization of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="21dd013631e20ce6c72368e7ac568802"></a><!-- doxytag: member="VISU::CutPlanes::SetLabels" ref="21dd013631e20ce6c72368e7ac568802" args="(in long theNbLabels)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetLabels           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbLabels</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbLabels</em>&nbsp;</td><td>A long value defining the number of labels. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="085c23900301c3a4eb274584ee7d8ca6"></a><!-- doxytag: member="VISU::CutPlanes::GetLabels" ref="085c23900301c3a4eb274584ee7d8ca6" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetLabels           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of labels which will be used for indication of color gradation of the scalar bar. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="449207525dc96443b81f42cef38047dd"></a><!-- doxytag: member="VISU::CutPlanes::SetTitle" ref="449207525dc96443b81f42cef38047dd" args="(in string theName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetTitle           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the title of the scalar bar. By default - the name of the selected result is used. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theName</em>&nbsp;</td><td>String parameter defining the name of the scalar bar. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="3618c82757da8f8471dd20ab13cbc27b"></a><!-- doxytag: member="VISU::CutPlanes::GetTitle" ref="3618c82757da8f8471dd20ab13cbc27b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.ColoredPrs3d.GetTitle           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the title of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="72fe2019f5aa9bb1c5e19b67a51d7f71"></a><!-- doxytag: member="VISU::CutPlanes::SetBarOrientation" ref="72fe2019f5aa9bb1c5e19b67a51d7f71" args="(in Orientation theOrientation)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a>&nbsp;</td>
-          <td class="paramname"> <em>theOrientation</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of orientation of the scalar bar (to provide backward compatibility). <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theOrientation</em>&nbsp;</td><td>This parameter defines the orientation of the scalar bar. It is taken from the <em>Orientaton</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8422578b257adc48e4c9e50d697e0364"></a><!-- doxytag: member="VISU::CutPlanes::GetBarOrientation" ref="8422578b257adc48e4c9e50d697e0364" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">Orientation</a> VISU.ColoredPrs3d.GetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of orientation of the scalar bar (to provide backward compatibility). 
-</div>
-</div><p>
-<a class="anchor" name="347812588c93643946de30dfc62cf765"></a><!-- doxytag: member="VISU::CutPlanes::SetOffset" ref="347812588c93643946de30dfc62cf765" args="(in float theDx, in float theDy, in float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.SetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Move the 3D presentation according to the given offset parameters 
-</div>
-</div><p>
-<a class="anchor" name="fec212476adf7396e8672ae1c3e7fb78"></a><!-- doxytag: member="VISU::CutPlanes::GetOffset" ref="fec212476adf7396e8672ae1c3e7fb78" args="(out float theDx, out float theDy, out float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.GetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets offset parameters for the 3D presentation 
-</div>
-</div><p>
-<a class="anchor" name="b02c2fa9085433d4f3e50bf052471139"></a><!-- doxytag: member="VISU::CutPlanes::GetMemorySize" ref="b02c2fa9085433d4f3e50bf052471139" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">float VISU.Prs3d.GetMemorySize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets memory size actually used by the presentation (Mb). 
-</div>
-</div><p>
-<a class="anchor" name="7d053f4324b26edd325024cd45424f13"></a><!-- doxytag: member="VISU::CutPlanes::RemoveFromStudy" ref="7d053f4324b26edd325024cd45424f13" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.RemovableObject.RemoveFromStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove object from study. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::CutPlanes::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::CutPlanes::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:31:07 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1CutPlanes__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1CutPlanes__inherit__graph.jpg
deleted file mode 100644 (file)
index 9f08665..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1CutPlanes__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1DeformedShape.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1DeformedShape.html
deleted file mode 100644 (file)
index 51fab04..0000000
+++ /dev/null
@@ -1,1043 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1DeformedShape.html">DeformedShape</a></div>
-<h1>VISU.DeformedShape Interface Reference</h1><!-- doxytag: class="VISU::DeformedShape" --><!-- doxytag: inherits="VISU::ScalarMap" -->Deformed shape presentation interface.  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.DeformedShape:<p><center><img src="interfaceVISU_1_1DeformedShape__inherit__graph.jpg" border="0" usemap="#VISU_8DeformedShape__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8DeformedShape__inherit__map">
-<area href="interfaceVISU_1_1StreamLines.html" shape="rect" coords="33,531,172,555" alt="">
-<area href="interfaceVISU_1_1Vectors.html" shape="rect" coords="196,531,302,555" alt="">
-<area href="interfaceVISU_1_1ScalarMap.html" shape="rect" coords="113,382,238,406" alt="">
-<area href="interfaceVISU_1_1ColoredPrs3d.html" shape="rect" coords="104,307,248,331" alt="">
-<area href="interfaceVISU_1_1Prs3d.html" shape="rect" coords="129,233,222,257" alt="">
-<area href="interfaceVISU_1_1PrsObject.html" shape="rect" coords="34,158,154,182" alt="">
-<area href="interfaceVISU_1_1RemovableObject.html" shape="rect" coords="8,83,181,107" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="50,9,138,33" alt="">
-<area href="classSALOME_1_1GenericObj.html" shape="rect" coords="178,158,336,182" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72">HORIZONTAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d">VERTICAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> { <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72">HORIZONTAL</a>, 
-<a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d">VERTICAL</a>
- }</td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1DeformedShape.html#8fec704a5438549c0f2cd7a94260c1ed">SetScale</a> (in double theScale)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1DeformedShape.html#11175320f4447acfcf1015573cadc053">GetScale</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1DeformedShape.html#070cfdada47826feb248b649183e4c75">IsColored</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1DeformedShape.html#6f4d04a7028c9f2e1f166c8cb8b4f428">ShowColored</a> (in boolean theColored)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">SALOMEDS::Color&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1DeformedShape.html#1ade0c34dd1c21936f0f518d7082eb34">GetColor</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1DeformedShape.html#461232d5358160cb1183a08d85ce1572">SetColor</a> (in SALOMEDS::Color theColor)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#533517f061d61d34128a7ebd40ec3df2">SetScaling</a> (in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> theScaling)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#af368a29e0046f847a2af205e7040c23">GetScaling</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#76016f8035d5fb342c64b13ca2e30a66">SetRange</a> (in double theMin, in double theMax)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#39afc84381d63d9d8f77a37b86e36e5e">SetSourceRange</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#04340c7d752c439d0715da0c84a3a9c2">AddMeshOnGroup</a> (in string theGroupName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#11ff37051db7278522d4f55a104ad1de">RemoveAllGeom</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#0cb01513d53cac1cf26699344580962a">SetScalarMode</a> (in long theScalarMode)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#bd7047f0543f356e7e0853285679c8a0">GetScalarMode</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#df97f8522a471c2e90470584cf7c92d9">GetMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#294cd1fcd6a6c21d76a6d03dc28b5a85">GetMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ff19e0cdd15257ff97b65daf0fae8d57">GetSourceMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#c559644dd49a59f28a7ae5047da2b01b">GetSourceMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e0604356d4ef90ad08cf001f109e1153">IsRangeFixed</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e5d7bfff180529eedad1a140e5a449c3">SetPosition</a> (in double X, in double Y)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Position of the scalar bar.  <a href="#e5d7bfff180529eedad1a140e5a449c3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ddd48392a778ada1e0153ddcc781edbc">GetPosX</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#a20c6859e00c881a7db6fa3259a33e51">GetPosY</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e9331edc9bb097dd99556ee27735710c">SetSize</a> (in double theWidth, in double theHeight)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Size of this presentable object.  <a href="#e9331edc9bb097dd99556ee27735710c"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#fb5593e03da36959bcd7ac2e25c387ef">GetWidth</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#75cb62b325060b5d268159e53e7a9de4">GetHeight</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#caf0e43c7f94f9c3c2a2482a1ab0db06">SetNbColors</a> (in long theNbColors)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#2164a8ce3d888c7ac6b3644c0b7347c2">GetNbColors</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#21dd013631e20ce6c72368e7ac568802">SetLabels</a> (in long theNbLabels)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#085c23900301c3a4eb274584ee7d8ca6">GetLabels</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#449207525dc96443b81f42cef38047dd">SetTitle</a> (in string theName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#3618c82757da8f8471dd20ab13cbc27b">GetTitle</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#72fe2019f5aa9bb1c5e19b67a51d7f71">SetBarOrientation</a> (in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> theOrientation)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#8422578b257adc48e4c9e50d697e0364">GetBarOrientation</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#347812588c93643946de30dfc62cf765">SetOffset</a> (in float theDx, in float theDy, in float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#fec212476adf7396e8672ae1c3e7fb78">GetOffset</a> (out float theDx, out float theDy, out float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#b02c2fa9085433d4f3e50bf052471139">GetMemorySize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html#7d053f4324b26edd325024cd45424f13">RemoveFromStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-Presentation parameters of the deformed shape presentation. 
-<p>
-<hr><h2>Member Enumeration Documentation</h2>
-<a class="anchor" name="12f791060a4820aca541565c57ce715c"></a><!-- doxytag: member="VISU::DeformedShape::Orientation" ref="12f791060a4820aca541565c57ce715c" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">VISU::ColoredPrs3d::Orientation</a><code> [inherited]</code>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Orientation of the scalar bar (to provide backward compatibility). <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72"></a><!-- doxytag: member="HORIZONTAL" ref="12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72" args="" -->HORIZONTAL</em>&nbsp;</td><td>
-Horizontal orientation of the scalar bar. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d"></a><!-- doxytag: member="VERTICAL" ref="12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d" args="" -->VERTICAL</em>&nbsp;</td><td>
-Vertical orientation of the scalar bar. </td></tr>
-</table>
-</dl>
-
-<p>
-Implemented in <a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713">VISU.Plot3D</a>, and <a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">VISU.CutPlanes</a>.
-</div>
-</div><p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="8fec704a5438549c0f2cd7a94260c1ed"></a><!-- doxytag: member="VISU::DeformedShape::SetScale" ref="8fec704a5438549c0f2cd7a94260c1ed" args="(in double theScale)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.DeformedShape.SetScale           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theScale</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the scale of the presentatable object. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theScale</em>&nbsp;</td><td>Double value defining the scale of this presentable object. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="11175320f4447acfcf1015573cadc053"></a><!-- doxytag: member="VISU::DeformedShape::GetScale" ref="11175320f4447acfcf1015573cadc053" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.DeformedShape.GetScale           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the scale of the presentatable object. 
-</div>
-</div><p>
-<a class="anchor" name="070cfdada47826feb248b649183e4c75"></a><!-- doxytag: member="VISU::DeformedShape::IsColored" ref="070cfdada47826feb248b649183e4c75" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.DeformedShape.IsColored           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-This boolean method returns True if this deformed shape presentation is colored. 
-</div>
-</div><p>
-<a class="anchor" name="6f4d04a7028c9f2e1f166c8cb8b4f428"></a><!-- doxytag: member="VISU::DeformedShape::ShowColored" ref="6f4d04a7028c9f2e1f166c8cb8b4f428" args="(in boolean theColored)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.DeformedShape.ShowColored           </td>
-          <td>(</td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>theColored</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Shows this presentation in colored mode. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theColored</em>&nbsp;</td><td>If this boolean parameter is True this presentable object will be shown in colored mode. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="1ade0c34dd1c21936f0f518d7082eb34"></a><!-- doxytag: member="VISU::DeformedShape::GetColor" ref="1ade0c34dd1c21936f0f518d7082eb34" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">SALOMEDS::Color VISU.DeformedShape.GetColor           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the color of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>The color of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="461232d5358160cb1183a08d85ce1572"></a><!-- doxytag: member="VISU::DeformedShape::SetColor" ref="461232d5358160cb1183a08d85ce1572" args="(in SALOMEDS::Color theColor)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.DeformedShape.SetColor           </td>
-          <td>(</td>
-          <td class="paramtype">in SALOMEDS::Color&nbsp;</td>
-          <td class="paramname"> <em>theColor</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the color of this presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theColor</em>&nbsp;</td><td>The color of this presentation. This parameter is taken from the <em>Color</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="533517f061d61d34128a7ebd40ec3df2"></a><!-- doxytag: member="VISU::DeformedShape::SetScaling" ref="533517f061d61d34128a7ebd40ec3df2" args="(in Scaling theScaling)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetScaling           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td>
-          <td class="paramname"> <em>theScaling</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of scaling of the values reflected by the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theScaling</em>&nbsp;</td><td>The value of this parameter is taken from the <em>Scaling</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="af368a29e0046f847a2af205e7040c23"></a><!-- doxytag: member="VISU::DeformedShape::GetScaling" ref="af368a29e0046f847a2af205e7040c23" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> VISU.ScalarMap.GetScaling           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of scaling of the values reflected by this presentation. 
-</div>
-</div><p>
-<a class="anchor" name="76016f8035d5fb342c64b13ca2e30a66"></a><!-- doxytag: member="VISU::DeformedShape::SetRange" ref="76016f8035d5fb342c64b13ca2e30a66" args="(in double theMin, in double theMax)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetRange           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theMin</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theMax</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets scalar range - min and max boundaries of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theMin</em>&nbsp;</td><td>Min boundary of the scalar bar. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMax</em>&nbsp;</td><td>Max boundary of the scalar bar. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="39afc84381d63d9d8f77a37b86e36e5e"></a><!-- doxytag: member="VISU::DeformedShape::SetSourceRange" ref="39afc84381d63d9d8f77a37b86e36e5e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetSourceRange           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets scalar range that corresponds to the source data. 
-</div>
-</div><p>
-<a class="anchor" name="04340c7d752c439d0715da0c84a3a9c2"></a><!-- doxytag: member="VISU::DeformedShape::AddMeshOnGroup" ref="04340c7d752c439d0715da0c84a3a9c2" args="(in string theGroupName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.AddMeshOnGroup           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theGroupName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Add group as geometry of presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>- mesh name </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theGroupName</em>&nbsp;</td><td>- group name </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="11ff37051db7278522d4f55a104ad1de"></a><!-- doxytag: member="VISU::DeformedShape::RemoveAllGeom" ref="11ff37051db7278522d4f55a104ad1de" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.RemoveAllGeom           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-PrsMerger method: Remove all groups.(The scalar map will be placed on all mesh). 
-</div>
-</div><p>
-<a class="anchor" name="0cb01513d53cac1cf26699344580962a"></a><!-- doxytag: member="VISU::DeformedShape::SetScalarMode" ref="0cb01513d53cac1cf26699344580962a" args="(in long theScalarMode)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetScalarMode           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theScalarMode</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="bd7047f0543f356e7e0853285679c8a0"></a><!-- doxytag: member="VISU::DeformedShape::GetScalarMode" ref="bd7047f0543f356e7e0853285679c8a0" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetScalarMode           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="df97f8522a471c2e90470584cf7c92d9"></a><!-- doxytag: member="VISU::DeformedShape::GetMin" ref="df97f8522a471c2e90470584cf7c92d9" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="294cd1fcd6a6c21d76a6d03dc28b5a85"></a><!-- doxytag: member="VISU::DeformedShape::GetMax" ref="294cd1fcd6a6c21d76a6d03dc28b5a85" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="ff19e0cdd15257ff97b65daf0fae8d57"></a><!-- doxytag: member="VISU::DeformedShape::GetSourceMin" ref="ff19e0cdd15257ff97b65daf0fae8d57" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="c559644dd49a59f28a7ae5047da2b01b"></a><!-- doxytag: member="VISU::DeformedShape::GetSourceMax" ref="c559644dd49a59f28a7ae5047da2b01b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="e0604356d4ef90ad08cf001f109e1153"></a><!-- doxytag: member="VISU::DeformedShape::IsRangeFixed" ref="e0604356d4ef90ad08cf001f109e1153" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.ColoredPrs3d.IsRangeFixed           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Defines whether the scalar range corresponds to the source data or not. 
-</div>
-</div><p>
-<a class="anchor" name="e5d7bfff180529eedad1a140e5a449c3"></a><!-- doxytag: member="VISU::DeformedShape::SetPosition" ref="e5d7bfff180529eedad1a140e5a449c3" args="(in double X, in double Y)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetPosition           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>X</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>Y</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the position of the scalar bar origin on the screen. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>X</em>&nbsp;</td><td>Horizontal position. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>Y</em>&nbsp;</td><td>Vertical position. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="ddd48392a778ada1e0153ddcc781edbc"></a><!-- doxytag: member="VISU::DeformedShape::GetPosX" ref="ddd48392a778ada1e0153ddcc781edbc" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosX           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets horizontal position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="a20c6859e00c881a7db6fa3259a33e51"></a><!-- doxytag: member="VISU::DeformedShape::GetPosY" ref="a20c6859e00c881a7db6fa3259a33e51" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosY           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets vertical position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="e9331edc9bb097dd99556ee27735710c"></a><!-- doxytag: member="VISU::DeformedShape::SetSize" ref="e9331edc9bb097dd99556ee27735710c" args="(in double theWidth, in double theHeight)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetSize           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theWidth</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theHeight</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the size of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theWidth</em>&nbsp;</td><td>Width of this presentable object. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theHeight</em>&nbsp;</td><td>Height of this presentable object. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="fb5593e03da36959bcd7ac2e25c387ef"></a><!-- doxytag: member="VISU::DeformedShape::GetWidth" ref="fb5593e03da36959bcd7ac2e25c387ef" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetWidth           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the width of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the width of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="75cb62b325060b5d268159e53e7a9de4"></a><!-- doxytag: member="VISU::DeformedShape::GetHeight" ref="75cb62b325060b5d268159e53e7a9de4" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetHeight           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the height of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the height of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="caf0e43c7f94f9c3c2a2482a1ab0db06"></a><!-- doxytag: member="VISU::DeformedShape::SetNbColors" ref="caf0e43c7f94f9c3c2a2482a1ab0db06" args="(in long theNbColors)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetNbColors           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbColors</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of colors which will be used for presentation of this presentable object. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbColors</em>&nbsp;</td><td>A long value defining the number of colors. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="2164a8ce3d888c7ac6b3644c0b7347c2"></a><!-- doxytag: member="VISU::DeformedShape::GetNbColors" ref="2164a8ce3d888c7ac6b3644c0b7347c2" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetNbColors           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of colors which will be used for visualization of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of colors which will be used for visualization of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="21dd013631e20ce6c72368e7ac568802"></a><!-- doxytag: member="VISU::DeformedShape::SetLabels" ref="21dd013631e20ce6c72368e7ac568802" args="(in long theNbLabels)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetLabels           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbLabels</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbLabels</em>&nbsp;</td><td>A long value defining the number of labels. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="085c23900301c3a4eb274584ee7d8ca6"></a><!-- doxytag: member="VISU::DeformedShape::GetLabels" ref="085c23900301c3a4eb274584ee7d8ca6" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetLabels           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of labels which will be used for indication of color gradation of the scalar bar. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="449207525dc96443b81f42cef38047dd"></a><!-- doxytag: member="VISU::DeformedShape::SetTitle" ref="449207525dc96443b81f42cef38047dd" args="(in string theName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetTitle           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the title of the scalar bar. By default - the name of the selected result is used. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theName</em>&nbsp;</td><td>String parameter defining the name of the scalar bar. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="3618c82757da8f8471dd20ab13cbc27b"></a><!-- doxytag: member="VISU::DeformedShape::GetTitle" ref="3618c82757da8f8471dd20ab13cbc27b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.ColoredPrs3d.GetTitle           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the title of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="72fe2019f5aa9bb1c5e19b67a51d7f71"></a><!-- doxytag: member="VISU::DeformedShape::SetBarOrientation" ref="72fe2019f5aa9bb1c5e19b67a51d7f71" args="(in Orientation theOrientation)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a>&nbsp;</td>
-          <td class="paramname"> <em>theOrientation</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of orientation of the scalar bar (to provide backward compatibility). <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theOrientation</em>&nbsp;</td><td>This parameter defines the orientation of the scalar bar. It is taken from the <em>Orientaton</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8422578b257adc48e4c9e50d697e0364"></a><!-- doxytag: member="VISU::DeformedShape::GetBarOrientation" ref="8422578b257adc48e4c9e50d697e0364" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> VISU.ColoredPrs3d.GetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of orientation of the scalar bar (to provide backward compatibility). 
-</div>
-</div><p>
-<a class="anchor" name="347812588c93643946de30dfc62cf765"></a><!-- doxytag: member="VISU::DeformedShape::SetOffset" ref="347812588c93643946de30dfc62cf765" args="(in float theDx, in float theDy, in float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.SetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Move the 3D presentation according to the given offset parameters 
-</div>
-</div><p>
-<a class="anchor" name="fec212476adf7396e8672ae1c3e7fb78"></a><!-- doxytag: member="VISU::DeformedShape::GetOffset" ref="fec212476adf7396e8672ae1c3e7fb78" args="(out float theDx, out float theDy, out float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.GetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets offset parameters for the 3D presentation 
-</div>
-</div><p>
-<a class="anchor" name="b02c2fa9085433d4f3e50bf052471139"></a><!-- doxytag: member="VISU::DeformedShape::GetMemorySize" ref="b02c2fa9085433d4f3e50bf052471139" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">float VISU.Prs3d.GetMemorySize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets memory size actually used by the presentation (Mb). 
-</div>
-</div><p>
-<a class="anchor" name="7d053f4324b26edd325024cd45424f13"></a><!-- doxytag: member="VISU::DeformedShape::RemoveFromStudy" ref="7d053f4324b26edd325024cd45424f13" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.RemovableObject.RemoveFromStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove object from study. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::DeformedShape::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::DeformedShape::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:31:02 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1DeformedShape__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1DeformedShape__inherit__graph.jpg
deleted file mode 100644 (file)
index a53bc9f..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1DeformedShape__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1GaussPoints.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1GaussPoints.html
deleted file mode 100644 (file)
index 9c19577..0000000
+++ /dev/null
@@ -1,740 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1GaussPoints.html">GaussPoints</a></div>
-<h1>VISU.GaussPoints Interface Reference</h1><!-- doxytag: class="VISU::GaussPoints" --><!-- doxytag: inherits="VISU::ColoredPrs3d" -->Gauss Points presentation interface.  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.GaussPoints:<p><center><img src="interfaceVISU_1_1GaussPoints__inherit__graph.jpg" border="0" usemap="#VISU_8GaussPoints__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8GaussPoints__inherit__map">
-<area href="interfaceVISU_1_1ColoredPrs3d.html" shape="rect" coords="104,308,248,332" alt="">
-<area href="interfaceVISU_1_1Prs3d.html" shape="rect" coords="129,233,222,257" alt="">
-<area href="interfaceVISU_1_1PrsObject.html" shape="rect" coords="34,158,154,182" alt="">
-<area href="interfaceVISU_1_1RemovableObject.html" shape="rect" coords="8,84,181,108" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="50,9,138,33" alt="">
-<area href="classSALOME_1_1GenericObj.html" shape="rect" coords="178,158,336,182" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72">HORIZONTAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d">VERTICAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> { <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72">HORIZONTAL</a>, 
-<a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d">VERTICAL</a>
- }</td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#0cb01513d53cac1cf26699344580962a">SetScalarMode</a> (in long theScalarMode)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#bd7047f0543f356e7e0853285679c8a0">GetScalarMode</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#df97f8522a471c2e90470584cf7c92d9">GetMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#294cd1fcd6a6c21d76a6d03dc28b5a85">GetMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ff19e0cdd15257ff97b65daf0fae8d57">GetSourceMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#c559644dd49a59f28a7ae5047da2b01b">GetSourceMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e0604356d4ef90ad08cf001f109e1153">IsRangeFixed</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e5d7bfff180529eedad1a140e5a449c3">SetPosition</a> (in double X, in double Y)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Position of the scalar bar.  <a href="#e5d7bfff180529eedad1a140e5a449c3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ddd48392a778ada1e0153ddcc781edbc">GetPosX</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#a20c6859e00c881a7db6fa3259a33e51">GetPosY</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e9331edc9bb097dd99556ee27735710c">SetSize</a> (in double theWidth, in double theHeight)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Size of this presentable object.  <a href="#e9331edc9bb097dd99556ee27735710c"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#fb5593e03da36959bcd7ac2e25c387ef">GetWidth</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#75cb62b325060b5d268159e53e7a9de4">GetHeight</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#caf0e43c7f94f9c3c2a2482a1ab0db06">SetNbColors</a> (in long theNbColors)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#2164a8ce3d888c7ac6b3644c0b7347c2">GetNbColors</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#21dd013631e20ce6c72368e7ac568802">SetLabels</a> (in long theNbLabels)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#085c23900301c3a4eb274584ee7d8ca6">GetLabels</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#449207525dc96443b81f42cef38047dd">SetTitle</a> (in string theName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#3618c82757da8f8471dd20ab13cbc27b">GetTitle</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#72fe2019f5aa9bb1c5e19b67a51d7f71">SetBarOrientation</a> (in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> theOrientation)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#8422578b257adc48e4c9e50d697e0364">GetBarOrientation</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#347812588c93643946de30dfc62cf765">SetOffset</a> (in float theDx, in float theDy, in float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#fec212476adf7396e8672ae1c3e7fb78">GetOffset</a> (out float theDx, out float theDy, out float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#b02c2fa9085433d4f3e50bf052471139">GetMemorySize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html#7d053f4324b26edd325024cd45424f13">RemoveFromStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-Presentation parameters of the Gauss Points presentation. 
-<p>
-<hr><h2>Member Enumeration Documentation</h2>
-<a class="anchor" name="12f791060a4820aca541565c57ce715c"></a><!-- doxytag: member="VISU::GaussPoints::Orientation" ref="12f791060a4820aca541565c57ce715c" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">VISU::ColoredPrs3d::Orientation</a><code> [inherited]</code>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Orientation of the scalar bar (to provide backward compatibility). <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72"></a><!-- doxytag: member="HORIZONTAL" ref="12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72" args="" -->HORIZONTAL</em>&nbsp;</td><td>
-Horizontal orientation of the scalar bar. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d"></a><!-- doxytag: member="VERTICAL" ref="12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d" args="" -->VERTICAL</em>&nbsp;</td><td>
-Vertical orientation of the scalar bar. </td></tr>
-</table>
-</dl>
-
-<p>
-Implemented in <a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713">VISU.Plot3D</a>, and <a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">VISU.CutPlanes</a>.
-</div>
-</div><p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="0cb01513d53cac1cf26699344580962a"></a><!-- doxytag: member="VISU::GaussPoints::SetScalarMode" ref="0cb01513d53cac1cf26699344580962a" args="(in long theScalarMode)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetScalarMode           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theScalarMode</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="bd7047f0543f356e7e0853285679c8a0"></a><!-- doxytag: member="VISU::GaussPoints::GetScalarMode" ref="bd7047f0543f356e7e0853285679c8a0" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetScalarMode           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="df97f8522a471c2e90470584cf7c92d9"></a><!-- doxytag: member="VISU::GaussPoints::GetMin" ref="df97f8522a471c2e90470584cf7c92d9" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="294cd1fcd6a6c21d76a6d03dc28b5a85"></a><!-- doxytag: member="VISU::GaussPoints::GetMax" ref="294cd1fcd6a6c21d76a6d03dc28b5a85" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="ff19e0cdd15257ff97b65daf0fae8d57"></a><!-- doxytag: member="VISU::GaussPoints::GetSourceMin" ref="ff19e0cdd15257ff97b65daf0fae8d57" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="c559644dd49a59f28a7ae5047da2b01b"></a><!-- doxytag: member="VISU::GaussPoints::GetSourceMax" ref="c559644dd49a59f28a7ae5047da2b01b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="e0604356d4ef90ad08cf001f109e1153"></a><!-- doxytag: member="VISU::GaussPoints::IsRangeFixed" ref="e0604356d4ef90ad08cf001f109e1153" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.ColoredPrs3d.IsRangeFixed           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Defines whether the scalar range corresponds to the source data or not. 
-</div>
-</div><p>
-<a class="anchor" name="e5d7bfff180529eedad1a140e5a449c3"></a><!-- doxytag: member="VISU::GaussPoints::SetPosition" ref="e5d7bfff180529eedad1a140e5a449c3" args="(in double X, in double Y)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetPosition           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>X</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>Y</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the position of the scalar bar origin on the screen. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>X</em>&nbsp;</td><td>Horizontal position. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>Y</em>&nbsp;</td><td>Vertical position. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="ddd48392a778ada1e0153ddcc781edbc"></a><!-- doxytag: member="VISU::GaussPoints::GetPosX" ref="ddd48392a778ada1e0153ddcc781edbc" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosX           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets horizontal position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="a20c6859e00c881a7db6fa3259a33e51"></a><!-- doxytag: member="VISU::GaussPoints::GetPosY" ref="a20c6859e00c881a7db6fa3259a33e51" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosY           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets vertical position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="e9331edc9bb097dd99556ee27735710c"></a><!-- doxytag: member="VISU::GaussPoints::SetSize" ref="e9331edc9bb097dd99556ee27735710c" args="(in double theWidth, in double theHeight)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetSize           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theWidth</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theHeight</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the size of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theWidth</em>&nbsp;</td><td>Width of this presentable object. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theHeight</em>&nbsp;</td><td>Height of this presentable object. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="fb5593e03da36959bcd7ac2e25c387ef"></a><!-- doxytag: member="VISU::GaussPoints::GetWidth" ref="fb5593e03da36959bcd7ac2e25c387ef" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetWidth           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the width of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the width of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="75cb62b325060b5d268159e53e7a9de4"></a><!-- doxytag: member="VISU::GaussPoints::GetHeight" ref="75cb62b325060b5d268159e53e7a9de4" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetHeight           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the height of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the height of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="caf0e43c7f94f9c3c2a2482a1ab0db06"></a><!-- doxytag: member="VISU::GaussPoints::SetNbColors" ref="caf0e43c7f94f9c3c2a2482a1ab0db06" args="(in long theNbColors)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetNbColors           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbColors</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of colors which will be used for presentation of this presentable object. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbColors</em>&nbsp;</td><td>A long value defining the number of colors. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="2164a8ce3d888c7ac6b3644c0b7347c2"></a><!-- doxytag: member="VISU::GaussPoints::GetNbColors" ref="2164a8ce3d888c7ac6b3644c0b7347c2" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetNbColors           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of colors which will be used for visualization of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of colors which will be used for visualization of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="21dd013631e20ce6c72368e7ac568802"></a><!-- doxytag: member="VISU::GaussPoints::SetLabels" ref="21dd013631e20ce6c72368e7ac568802" args="(in long theNbLabels)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetLabels           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbLabels</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbLabels</em>&nbsp;</td><td>A long value defining the number of labels. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="085c23900301c3a4eb274584ee7d8ca6"></a><!-- doxytag: member="VISU::GaussPoints::GetLabels" ref="085c23900301c3a4eb274584ee7d8ca6" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetLabels           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of labels which will be used for indication of color gradation of the scalar bar. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="449207525dc96443b81f42cef38047dd"></a><!-- doxytag: member="VISU::GaussPoints::SetTitle" ref="449207525dc96443b81f42cef38047dd" args="(in string theName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetTitle           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the title of the scalar bar. By default - the name of the selected result is used. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theName</em>&nbsp;</td><td>String parameter defining the name of the scalar bar. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="3618c82757da8f8471dd20ab13cbc27b"></a><!-- doxytag: member="VISU::GaussPoints::GetTitle" ref="3618c82757da8f8471dd20ab13cbc27b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.ColoredPrs3d.GetTitle           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the title of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="72fe2019f5aa9bb1c5e19b67a51d7f71"></a><!-- doxytag: member="VISU::GaussPoints::SetBarOrientation" ref="72fe2019f5aa9bb1c5e19b67a51d7f71" args="(in Orientation theOrientation)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a>&nbsp;</td>
-          <td class="paramname"> <em>theOrientation</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of orientation of the scalar bar (to provide backward compatibility). <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theOrientation</em>&nbsp;</td><td>This parameter defines the orientation of the scalar bar. It is taken from the <em>Orientaton</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8422578b257adc48e4c9e50d697e0364"></a><!-- doxytag: member="VISU::GaussPoints::GetBarOrientation" ref="8422578b257adc48e4c9e50d697e0364" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> VISU.ColoredPrs3d.GetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of orientation of the scalar bar (to provide backward compatibility). 
-</div>
-</div><p>
-<a class="anchor" name="347812588c93643946de30dfc62cf765"></a><!-- doxytag: member="VISU::GaussPoints::SetOffset" ref="347812588c93643946de30dfc62cf765" args="(in float theDx, in float theDy, in float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.SetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Move the 3D presentation according to the given offset parameters 
-</div>
-</div><p>
-<a class="anchor" name="fec212476adf7396e8672ae1c3e7fb78"></a><!-- doxytag: member="VISU::GaussPoints::GetOffset" ref="fec212476adf7396e8672ae1c3e7fb78" args="(out float theDx, out float theDy, out float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.GetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets offset parameters for the 3D presentation 
-</div>
-</div><p>
-<a class="anchor" name="b02c2fa9085433d4f3e50bf052471139"></a><!-- doxytag: member="VISU::GaussPoints::GetMemorySize" ref="b02c2fa9085433d4f3e50bf052471139" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">float VISU.Prs3d.GetMemorySize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets memory size actually used by the presentation (Mb). 
-</div>
-</div><p>
-<a class="anchor" name="7d053f4324b26edd325024cd45424f13"></a><!-- doxytag: member="VISU::GaussPoints::RemoveFromStudy" ref="7d053f4324b26edd325024cd45424f13" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.RemovableObject.RemoveFromStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove object from study. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::GaussPoints::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::GaussPoints::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:31:01 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1GaussPoints__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1GaussPoints__inherit__graph.jpg
deleted file mode 100644 (file)
index c11019f..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1GaussPoints__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1IsoSurfaces.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1IsoSurfaces.html
deleted file mode 100644 (file)
index 252b38a..0000000
+++ /dev/null
@@ -1,945 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1IsoSurfaces.html">IsoSurfaces</a></div>
-<h1>VISU.IsoSurfaces Interface Reference</h1><!-- doxytag: class="VISU::IsoSurfaces" --><!-- doxytag: inherits="VISU::ScalarMap" -->Interface of the isometric surface presentation.  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.IsoSurfaces:<p><center><img src="interfaceVISU_1_1IsoSurfaces__inherit__graph.jpg" border="0" usemap="#VISU_8IsoSurfaces__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8IsoSurfaces__inherit__map">
-<area href="interfaceVISU_1_1ScalarMap.html" shape="rect" coords="113,382,238,406" alt="">
-<area href="interfaceVISU_1_1ColoredPrs3d.html" shape="rect" coords="104,308,248,332" alt="">
-<area href="interfaceVISU_1_1Prs3d.html" shape="rect" coords="129,233,222,257" alt="">
-<area href="interfaceVISU_1_1PrsObject.html" shape="rect" coords="34,158,154,182" alt="">
-<area href="interfaceVISU_1_1RemovableObject.html" shape="rect" coords="8,84,181,108" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="50,9,138,33" alt="">
-<area href="classSALOME_1_1GenericObj.html" shape="rect" coords="178,158,336,182" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72">HORIZONTAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d">VERTICAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> { <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72">HORIZONTAL</a>, 
-<a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d">VERTICAL</a>
- }</td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1IsoSurfaces.html#668b95d719d871f2ebccc2cf6a187700">SetNbSurfaces</a> (in long theNb)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1IsoSurfaces.html#60ae4a9ffb947112d4cbcb228e0e42bf">GetNbSurfaces</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#533517f061d61d34128a7ebd40ec3df2">SetScaling</a> (in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> theScaling)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#af368a29e0046f847a2af205e7040c23">GetScaling</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#76016f8035d5fb342c64b13ca2e30a66">SetRange</a> (in double theMin, in double theMax)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#39afc84381d63d9d8f77a37b86e36e5e">SetSourceRange</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#04340c7d752c439d0715da0c84a3a9c2">AddMeshOnGroup</a> (in string theGroupName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#11ff37051db7278522d4f55a104ad1de">RemoveAllGeom</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#0cb01513d53cac1cf26699344580962a">SetScalarMode</a> (in long theScalarMode)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#bd7047f0543f356e7e0853285679c8a0">GetScalarMode</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#df97f8522a471c2e90470584cf7c92d9">GetMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#294cd1fcd6a6c21d76a6d03dc28b5a85">GetMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ff19e0cdd15257ff97b65daf0fae8d57">GetSourceMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#c559644dd49a59f28a7ae5047da2b01b">GetSourceMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e0604356d4ef90ad08cf001f109e1153">IsRangeFixed</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e5d7bfff180529eedad1a140e5a449c3">SetPosition</a> (in double X, in double Y)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Position of the scalar bar.  <a href="#e5d7bfff180529eedad1a140e5a449c3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ddd48392a778ada1e0153ddcc781edbc">GetPosX</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#a20c6859e00c881a7db6fa3259a33e51">GetPosY</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e9331edc9bb097dd99556ee27735710c">SetSize</a> (in double theWidth, in double theHeight)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Size of this presentable object.  <a href="#e9331edc9bb097dd99556ee27735710c"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#fb5593e03da36959bcd7ac2e25c387ef">GetWidth</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#75cb62b325060b5d268159e53e7a9de4">GetHeight</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#caf0e43c7f94f9c3c2a2482a1ab0db06">SetNbColors</a> (in long theNbColors)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#2164a8ce3d888c7ac6b3644c0b7347c2">GetNbColors</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#21dd013631e20ce6c72368e7ac568802">SetLabels</a> (in long theNbLabels)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#085c23900301c3a4eb274584ee7d8ca6">GetLabels</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#449207525dc96443b81f42cef38047dd">SetTitle</a> (in string theName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#3618c82757da8f8471dd20ab13cbc27b">GetTitle</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#72fe2019f5aa9bb1c5e19b67a51d7f71">SetBarOrientation</a> (in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> theOrientation)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#8422578b257adc48e4c9e50d697e0364">GetBarOrientation</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#347812588c93643946de30dfc62cf765">SetOffset</a> (in float theDx, in float theDy, in float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#fec212476adf7396e8672ae1c3e7fb78">GetOffset</a> (out float theDx, out float theDy, out float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#b02c2fa9085433d4f3e50bf052471139">GetMemorySize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html#7d053f4324b26edd325024cd45424f13">RemoveFromStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-This interface contains presentation parameters of isometric surface presentations. <br>
-Iso surfaces presentation combines all equal scalar values on the cells and on the basis of them constructs isobaric surfaces, which form this presentation. 
-<p>
-<hr><h2>Member Enumeration Documentation</h2>
-<a class="anchor" name="12f791060a4820aca541565c57ce715c"></a><!-- doxytag: member="VISU::IsoSurfaces::Orientation" ref="12f791060a4820aca541565c57ce715c" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">VISU::ColoredPrs3d::Orientation</a><code> [inherited]</code>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Orientation of the scalar bar (to provide backward compatibility). <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72"></a><!-- doxytag: member="HORIZONTAL" ref="12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72" args="" -->HORIZONTAL</em>&nbsp;</td><td>
-Horizontal orientation of the scalar bar. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d"></a><!-- doxytag: member="VERTICAL" ref="12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d" args="" -->VERTICAL</em>&nbsp;</td><td>
-Vertical orientation of the scalar bar. </td></tr>
-</table>
-</dl>
-
-<p>
-Implemented in <a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713">VISU.Plot3D</a>, and <a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">VISU.CutPlanes</a>.
-</div>
-</div><p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="668b95d719d871f2ebccc2cf6a187700"></a><!-- doxytag: member="VISU::IsoSurfaces::SetNbSurfaces" ref="668b95d719d871f2ebccc2cf6a187700" args="(in long theNb)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.IsoSurfaces.SetNbSurfaces           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNb</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of isometric surfaces. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNb</em>&nbsp;</td><td>A long value defining the number of isometric surfaces which will be used for construction of this presentation. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="60ae4a9ffb947112d4cbcb228e0e42bf"></a><!-- doxytag: member="VISU::IsoSurfaces::GetNbSurfaces" ref="60ae4a9ffb947112d4cbcb228e0e42bf" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.IsoSurfaces.GetNbSurfaces           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of isometric surfaces 
-</div>
-</div><p>
-<a class="anchor" name="533517f061d61d34128a7ebd40ec3df2"></a><!-- doxytag: member="VISU::IsoSurfaces::SetScaling" ref="533517f061d61d34128a7ebd40ec3df2" args="(in Scaling theScaling)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetScaling           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td>
-          <td class="paramname"> <em>theScaling</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of scaling of the values reflected by the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theScaling</em>&nbsp;</td><td>The value of this parameter is taken from the <em>Scaling</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="af368a29e0046f847a2af205e7040c23"></a><!-- doxytag: member="VISU::IsoSurfaces::GetScaling" ref="af368a29e0046f847a2af205e7040c23" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> VISU.ScalarMap.GetScaling           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of scaling of the values reflected by this presentation. 
-</div>
-</div><p>
-<a class="anchor" name="76016f8035d5fb342c64b13ca2e30a66"></a><!-- doxytag: member="VISU::IsoSurfaces::SetRange" ref="76016f8035d5fb342c64b13ca2e30a66" args="(in double theMin, in double theMax)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetRange           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theMin</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theMax</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets scalar range - min and max boundaries of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theMin</em>&nbsp;</td><td>Min boundary of the scalar bar. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMax</em>&nbsp;</td><td>Max boundary of the scalar bar. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="39afc84381d63d9d8f77a37b86e36e5e"></a><!-- doxytag: member="VISU::IsoSurfaces::SetSourceRange" ref="39afc84381d63d9d8f77a37b86e36e5e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetSourceRange           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets scalar range that corresponds to the source data. 
-</div>
-</div><p>
-<a class="anchor" name="04340c7d752c439d0715da0c84a3a9c2"></a><!-- doxytag: member="VISU::IsoSurfaces::AddMeshOnGroup" ref="04340c7d752c439d0715da0c84a3a9c2" args="(in string theGroupName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.AddMeshOnGroup           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theGroupName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Add group as geometry of presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>- mesh name </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theGroupName</em>&nbsp;</td><td>- group name </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="11ff37051db7278522d4f55a104ad1de"></a><!-- doxytag: member="VISU::IsoSurfaces::RemoveAllGeom" ref="11ff37051db7278522d4f55a104ad1de" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.RemoveAllGeom           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-PrsMerger method: Remove all groups.(The scalar map will be placed on all mesh). 
-</div>
-</div><p>
-<a class="anchor" name="0cb01513d53cac1cf26699344580962a"></a><!-- doxytag: member="VISU::IsoSurfaces::SetScalarMode" ref="0cb01513d53cac1cf26699344580962a" args="(in long theScalarMode)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetScalarMode           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theScalarMode</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="bd7047f0543f356e7e0853285679c8a0"></a><!-- doxytag: member="VISU::IsoSurfaces::GetScalarMode" ref="bd7047f0543f356e7e0853285679c8a0" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetScalarMode           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="df97f8522a471c2e90470584cf7c92d9"></a><!-- doxytag: member="VISU::IsoSurfaces::GetMin" ref="df97f8522a471c2e90470584cf7c92d9" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="294cd1fcd6a6c21d76a6d03dc28b5a85"></a><!-- doxytag: member="VISU::IsoSurfaces::GetMax" ref="294cd1fcd6a6c21d76a6d03dc28b5a85" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="ff19e0cdd15257ff97b65daf0fae8d57"></a><!-- doxytag: member="VISU::IsoSurfaces::GetSourceMin" ref="ff19e0cdd15257ff97b65daf0fae8d57" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="c559644dd49a59f28a7ae5047da2b01b"></a><!-- doxytag: member="VISU::IsoSurfaces::GetSourceMax" ref="c559644dd49a59f28a7ae5047da2b01b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="e0604356d4ef90ad08cf001f109e1153"></a><!-- doxytag: member="VISU::IsoSurfaces::IsRangeFixed" ref="e0604356d4ef90ad08cf001f109e1153" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.ColoredPrs3d.IsRangeFixed           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Defines whether the scalar range corresponds to the source data or not. 
-</div>
-</div><p>
-<a class="anchor" name="e5d7bfff180529eedad1a140e5a449c3"></a><!-- doxytag: member="VISU::IsoSurfaces::SetPosition" ref="e5d7bfff180529eedad1a140e5a449c3" args="(in double X, in double Y)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetPosition           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>X</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>Y</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the position of the scalar bar origin on the screen. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>X</em>&nbsp;</td><td>Horizontal position. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>Y</em>&nbsp;</td><td>Vertical position. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="ddd48392a778ada1e0153ddcc781edbc"></a><!-- doxytag: member="VISU::IsoSurfaces::GetPosX" ref="ddd48392a778ada1e0153ddcc781edbc" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosX           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets horizontal position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="a20c6859e00c881a7db6fa3259a33e51"></a><!-- doxytag: member="VISU::IsoSurfaces::GetPosY" ref="a20c6859e00c881a7db6fa3259a33e51" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosY           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets vertical position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="e9331edc9bb097dd99556ee27735710c"></a><!-- doxytag: member="VISU::IsoSurfaces::SetSize" ref="e9331edc9bb097dd99556ee27735710c" args="(in double theWidth, in double theHeight)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetSize           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theWidth</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theHeight</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the size of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theWidth</em>&nbsp;</td><td>Width of this presentable object. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theHeight</em>&nbsp;</td><td>Height of this presentable object. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="fb5593e03da36959bcd7ac2e25c387ef"></a><!-- doxytag: member="VISU::IsoSurfaces::GetWidth" ref="fb5593e03da36959bcd7ac2e25c387ef" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetWidth           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the width of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the width of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="75cb62b325060b5d268159e53e7a9de4"></a><!-- doxytag: member="VISU::IsoSurfaces::GetHeight" ref="75cb62b325060b5d268159e53e7a9de4" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetHeight           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the height of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the height of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="caf0e43c7f94f9c3c2a2482a1ab0db06"></a><!-- doxytag: member="VISU::IsoSurfaces::SetNbColors" ref="caf0e43c7f94f9c3c2a2482a1ab0db06" args="(in long theNbColors)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetNbColors           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbColors</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of colors which will be used for presentation of this presentable object. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbColors</em>&nbsp;</td><td>A long value defining the number of colors. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="2164a8ce3d888c7ac6b3644c0b7347c2"></a><!-- doxytag: member="VISU::IsoSurfaces::GetNbColors" ref="2164a8ce3d888c7ac6b3644c0b7347c2" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetNbColors           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of colors which will be used for visualization of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of colors which will be used for visualization of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="21dd013631e20ce6c72368e7ac568802"></a><!-- doxytag: member="VISU::IsoSurfaces::SetLabels" ref="21dd013631e20ce6c72368e7ac568802" args="(in long theNbLabels)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetLabels           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbLabels</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbLabels</em>&nbsp;</td><td>A long value defining the number of labels. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="085c23900301c3a4eb274584ee7d8ca6"></a><!-- doxytag: member="VISU::IsoSurfaces::GetLabels" ref="085c23900301c3a4eb274584ee7d8ca6" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetLabels           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of labels which will be used for indication of color gradation of the scalar bar. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="449207525dc96443b81f42cef38047dd"></a><!-- doxytag: member="VISU::IsoSurfaces::SetTitle" ref="449207525dc96443b81f42cef38047dd" args="(in string theName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetTitle           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the title of the scalar bar. By default - the name of the selected result is used. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theName</em>&nbsp;</td><td>String parameter defining the name of the scalar bar. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="3618c82757da8f8471dd20ab13cbc27b"></a><!-- doxytag: member="VISU::IsoSurfaces::GetTitle" ref="3618c82757da8f8471dd20ab13cbc27b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.ColoredPrs3d.GetTitle           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the title of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="72fe2019f5aa9bb1c5e19b67a51d7f71"></a><!-- doxytag: member="VISU::IsoSurfaces::SetBarOrientation" ref="72fe2019f5aa9bb1c5e19b67a51d7f71" args="(in Orientation theOrientation)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a>&nbsp;</td>
-          <td class="paramname"> <em>theOrientation</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of orientation of the scalar bar (to provide backward compatibility). <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theOrientation</em>&nbsp;</td><td>This parameter defines the orientation of the scalar bar. It is taken from the <em>Orientaton</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8422578b257adc48e4c9e50d697e0364"></a><!-- doxytag: member="VISU::IsoSurfaces::GetBarOrientation" ref="8422578b257adc48e4c9e50d697e0364" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> VISU.ColoredPrs3d.GetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of orientation of the scalar bar (to provide backward compatibility). 
-</div>
-</div><p>
-<a class="anchor" name="347812588c93643946de30dfc62cf765"></a><!-- doxytag: member="VISU::IsoSurfaces::SetOffset" ref="347812588c93643946de30dfc62cf765" args="(in float theDx, in float theDy, in float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.SetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Move the 3D presentation according to the given offset parameters 
-</div>
-</div><p>
-<a class="anchor" name="fec212476adf7396e8672ae1c3e7fb78"></a><!-- doxytag: member="VISU::IsoSurfaces::GetOffset" ref="fec212476adf7396e8672ae1c3e7fb78" args="(out float theDx, out float theDy, out float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.GetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets offset parameters for the 3D presentation 
-</div>
-</div><p>
-<a class="anchor" name="b02c2fa9085433d4f3e50bf052471139"></a><!-- doxytag: member="VISU::IsoSurfaces::GetMemorySize" ref="b02c2fa9085433d4f3e50bf052471139" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">float VISU.Prs3d.GetMemorySize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets memory size actually used by the presentation (Mb). 
-</div>
-</div><p>
-<a class="anchor" name="7d053f4324b26edd325024cd45424f13"></a><!-- doxytag: member="VISU::IsoSurfaces::RemoveFromStudy" ref="7d053f4324b26edd325024cd45424f13" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.RemovableObject.RemoveFromStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove object from study. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::IsoSurfaces::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::IsoSurfaces::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:31:12 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1IsoSurfaces__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1IsoSurfaces__inherit__graph.jpg
deleted file mode 100644 (file)
index 1f9133f..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1IsoSurfaces__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Mesh.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Mesh.html
deleted file mode 100644 (file)
index 1215e72..0000000
+++ /dev/null
@@ -1,393 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1Mesh.html">Mesh</a></div>
-<h1>VISU.Mesh Interface Reference</h1><!-- doxytag: class="VISU::Mesh" --><!-- doxytag: inherits="VISU::Prs3d" -->Interface of the mesh.  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.Mesh:<p><center><img src="interfaceVISU_1_1Mesh__inherit__graph.jpg" border="0" usemap="#VISU_8Mesh__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8Mesh__inherit__map">
-<area href="interfaceVISU_1_1Prs3d.html" shape="rect" coords="129,233,222,257" alt="">
-<area href="interfaceVISU_1_1PrsObject.html" shape="rect" coords="34,158,154,182" alt="">
-<area href="interfaceVISU_1_1RemovableObject.html" shape="rect" coords="8,83,181,107" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="50,9,138,33" alt="">
-<area href="classSALOME_1_1GenericObj.html" shape="rect" coords="178,158,336,182" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Mesh.html#94a807af486d9f98f87cb2378da457b8">SetCellColor</a> (in SALOMEDS::Color theColor)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">SALOMEDS::Color&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Mesh.html#7cd1fb68ad3a990c6163e41439306cd2">GetCellColor</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Mesh.html#d00acdc4bbbcb15a9047629ff95d0f5e">SetNodeColor</a> (in SALOMEDS::Color theColor)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">SALOMEDS::Color&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Mesh.html#cf933e539fb7e3a3e544fad8c6bb1446">GetNodeColor</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Mesh.html#099e0c5c12343ecef6c53a99aa49a29b">SetLinkColor</a> (in SALOMEDS::Color theColor)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">SALOMEDS::Color&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Mesh.html#659e1a3b6e17ccb78a4a04897c5b6643">GetLinkColor</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Mesh.html#d53d47a80d086867b78f2b87f51eb6f0">SetPresentationType</a> (in <a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb5">PresentationType</a> theType)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb5">PresentationType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Mesh.html#076b35153202b948820538a2d00136e3">GetPresentationType</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#347812588c93643946de30dfc62cf765">SetOffset</a> (in float theDx, in float theDy, in float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#fec212476adf7396e8672ae1c3e7fb78">GetOffset</a> (out float theDx, out float theDy, out float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#b02c2fa9085433d4f3e50bf052471139">GetMemorySize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html#7d053f4324b26edd325024cd45424f13">RemoveFromStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-Manages presentation parameters of a 3D presentation of a mesh. This object can be used for presentation of set of curves using <a class="el" href="interfaceVISU_1_1Container.html">Container</a> class. 
-<p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="94a807af486d9f98f87cb2378da457b8"></a><!-- doxytag: member="VISU::Mesh::SetCellColor" ref="94a807af486d9f98f87cb2378da457b8" args="(in SALOMEDS::Color theColor)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Mesh.SetCellColor           </td>
-          <td>(</td>
-          <td class="paramtype">in SALOMEDS::Color&nbsp;</td>
-          <td class="paramname"> <em>theColor</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the color of mesh cells. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theColor</em>&nbsp;</td><td>The color of the cells. This parameter is taken from <em>Color</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="7cd1fb68ad3a990c6163e41439306cd2"></a><!-- doxytag: member="VISU::Mesh::GetCellColor" ref="7cd1fb68ad3a990c6163e41439306cd2" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">SALOMEDS::Color VISU.Mesh.GetCellColor           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the color of mesh cells. 
-</div>
-</div><p>
-<a class="anchor" name="d00acdc4bbbcb15a9047629ff95d0f5e"></a><!-- doxytag: member="VISU::Mesh::SetNodeColor" ref="d00acdc4bbbcb15a9047629ff95d0f5e" args="(in SALOMEDS::Color theColor)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Mesh.SetNodeColor           </td>
-          <td>(</td>
-          <td class="paramtype">in SALOMEDS::Color&nbsp;</td>
-          <td class="paramname"> <em>theColor</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the color of mesh nodes. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theColor</em>&nbsp;</td><td>The color of the nodes. This parameter is taken from <em>Color</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="cf933e539fb7e3a3e544fad8c6bb1446"></a><!-- doxytag: member="VISU::Mesh::GetNodeColor" ref="cf933e539fb7e3a3e544fad8c6bb1446" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">SALOMEDS::Color VISU.Mesh.GetNodeColor           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the color of mesh nodes. 
-</div>
-</div><p>
-<a class="anchor" name="099e0c5c12343ecef6c53a99aa49a29b"></a><!-- doxytag: member="VISU::Mesh::SetLinkColor" ref="099e0c5c12343ecef6c53a99aa49a29b" args="(in SALOMEDS::Color theColor)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Mesh.SetLinkColor           </td>
-          <td>(</td>
-          <td class="paramtype">in SALOMEDS::Color&nbsp;</td>
-          <td class="paramname"> <em>theColor</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the color of mesh links. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theColor</em>&nbsp;</td><td>The color of the links. This parameter is taken from <em>Color</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="659e1a3b6e17ccb78a4a04897c5b6643"></a><!-- doxytag: member="VISU::Mesh::GetLinkColor" ref="659e1a3b6e17ccb78a4a04897c5b6643" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">SALOMEDS::Color VISU.Mesh.GetLinkColor           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the color of mesh links. 
-</div>
-</div><p>
-<a class="anchor" name="d53d47a80d086867b78f2b87f51eb6f0"></a><!-- doxytag: member="VISU::Mesh::SetPresentationType" ref="d53d47a80d086867b78f2b87f51eb6f0" args="(in PresentationType theType)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Mesh.SetPresentationType           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb5">PresentationType</a>&nbsp;</td>
-          <td class="paramname"> <em>theType</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of representation of a mesh. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theType</em>&nbsp;</td><td>The of representation of a mesh. This parameter is taken from <em>PresentationType</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="076b35153202b948820538a2d00136e3"></a><!-- doxytag: member="VISU::Mesh::GetPresentationType" ref="076b35153202b948820538a2d00136e3" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb5">PresentationType</a> VISU.Mesh.GetPresentationType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of representation of the mesh. <dl compact><dt><b>Returns:</b></dt><dd>The type of representation of the mesh. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="347812588c93643946de30dfc62cf765"></a><!-- doxytag: member="VISU::Mesh::SetOffset" ref="347812588c93643946de30dfc62cf765" args="(in float theDx, in float theDy, in float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.SetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Move the 3D presentation according to the given offset parameters 
-</div>
-</div><p>
-<a class="anchor" name="fec212476adf7396e8672ae1c3e7fb78"></a><!-- doxytag: member="VISU::Mesh::GetOffset" ref="fec212476adf7396e8672ae1c3e7fb78" args="(out float theDx, out float theDy, out float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.GetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets offset parameters for the 3D presentation 
-</div>
-</div><p>
-<a class="anchor" name="b02c2fa9085433d4f3e50bf052471139"></a><!-- doxytag: member="VISU::Mesh::GetMemorySize" ref="b02c2fa9085433d4f3e50bf052471139" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">float VISU.Prs3d.GetMemorySize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets memory size actually used by the presentation (Mb). 
-</div>
-</div><p>
-<a class="anchor" name="7d053f4324b26edd325024cd45424f13"></a><!-- doxytag: member="VISU::Mesh::RemoveFromStudy" ref="7d053f4324b26edd325024cd45424f13" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.RemovableObject.RemoveFromStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove object from study. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::Mesh::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::Mesh::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:30:53 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Mesh__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Mesh__inherit__graph.jpg
deleted file mode 100644 (file)
index 57324c0..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Mesh__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Plot3D.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Plot3D.html
deleted file mode 100644 (file)
index 815db0f..0000000
+++ /dev/null
@@ -1,1235 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1Plot3D.html">Plot3D</a></div>
-<h1>VISU.Plot3D Interface Reference</h1><!-- doxytag: class="VISU::Plot3D" --><!-- doxytag: inherits="VISU::ScalarMap" --><a class="el" href="interfaceVISU_1_1Plot3D.html">Plot3D</a> interface.  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.Plot3D:<p><center><img src="interfaceVISU_1_1Plot3D__inherit__graph.jpg" border="0" usemap="#VISU_8Plot3D__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8Plot3D__inherit__map">
-<area href="interfaceVISU_1_1ScalarMap.html" shape="rect" coords="113,382,238,406" alt="">
-<area href="interfaceVISU_1_1ColoredPrs3d.html" shape="rect" coords="104,308,248,332" alt="">
-<area href="interfaceVISU_1_1Prs3d.html" shape="rect" coords="129,233,222,257" alt="">
-<area href="interfaceVISU_1_1PrsObject.html" shape="rect" coords="34,158,154,182" alt="">
-<area href="interfaceVISU_1_1RemovableObject.html" shape="rect" coords="8,84,181,108" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="50,9,138,33" alt="">
-<area href="classSALOME_1_1GenericObj.html" shape="rect" coords="178,158,336,182" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713a9769130152073159a033024673d2f07">XY</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a571389be54aaee88630bcf5eafdce3f214f9">YZ</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713c39c82b8b0eda87e36fe8a8cabed473d">ZX</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713">Orientation</a> { <a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713a9769130152073159a033024673d2f07">XY</a>, 
-<a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a571389be54aaee88630bcf5eafdce3f214f9">YZ</a>, 
-<a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713c39c82b8b0eda87e36fe8a8cabed473d">ZX</a>
- }</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72">HORIZONTAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d">VERTICAL</a></td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Plot3D.html#4dd7e0347731c18b05c7e16c0c56c175">SetOrientation</a> (in <a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713">Orientation</a> theOrientation, in double theXAngle, in double theYAngle)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713">Orientation</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Plot3D.html#3c508e060e410e96273cbe00e54cea6b">GetOrientationType</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Plot3D.html#cc82fe20613e57b7ee839aa210acff49">GetRotateX</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Plot3D.html#279d139193bfe33b6d8f979f08189a09">GetRotateY</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Plot3D.html#8f92f8cd77cdb8bc10ddb78e9667a629">SetPlanePosition</a> (in double thePlanePosition, in boolean theIsRelative)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Plot3D.html#145e0a32b9c0bbc2e67a52016e707107">GetPlanePosition</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Plot3D.html#7c4dd94d8bce9ef1584abd483e0d3144">IsPositionRelative</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Plot3D.html#573eeb677609a0556d0ac87a5fcd25a2">SetScaleFactor</a> (in double theScaleFactor)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Plot3D.html#55ccd85beb28254f925d1f328f8d990c">GetScaleFactor</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Plot3D.html#858f0838b762377c01f393d379c4efdd">SetContourPrs</a> (in boolean theIsContourPrs)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Plot3D.html#61d798e4c78d9f2aafc8db8f24a1d47d">GetIsContourPrs</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Plot3D.html#fcdca5a91d414929b57003936f95bac9">SetNbOfContours</a> (in long theNb)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Plot3D.html#0f5a1b8fe1fd0e00946676a72241bccc">GetNbOfContours</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#533517f061d61d34128a7ebd40ec3df2">SetScaling</a> (in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> theScaling)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#af368a29e0046f847a2af205e7040c23">GetScaling</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#76016f8035d5fb342c64b13ca2e30a66">SetRange</a> (in double theMin, in double theMax)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#39afc84381d63d9d8f77a37b86e36e5e">SetSourceRange</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#04340c7d752c439d0715da0c84a3a9c2">AddMeshOnGroup</a> (in string theGroupName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#11ff37051db7278522d4f55a104ad1de">RemoveAllGeom</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#0cb01513d53cac1cf26699344580962a">SetScalarMode</a> (in long theScalarMode)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#bd7047f0543f356e7e0853285679c8a0">GetScalarMode</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#df97f8522a471c2e90470584cf7c92d9">GetMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#294cd1fcd6a6c21d76a6d03dc28b5a85">GetMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ff19e0cdd15257ff97b65daf0fae8d57">GetSourceMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#c559644dd49a59f28a7ae5047da2b01b">GetSourceMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e0604356d4ef90ad08cf001f109e1153">IsRangeFixed</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e5d7bfff180529eedad1a140e5a449c3">SetPosition</a> (in double X, in double Y)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Position of the scalar bar.  <a href="#e5d7bfff180529eedad1a140e5a449c3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ddd48392a778ada1e0153ddcc781edbc">GetPosX</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#a20c6859e00c881a7db6fa3259a33e51">GetPosY</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e9331edc9bb097dd99556ee27735710c">SetSize</a> (in double theWidth, in double theHeight)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Size of this presentable object.  <a href="#e9331edc9bb097dd99556ee27735710c"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#fb5593e03da36959bcd7ac2e25c387ef">GetWidth</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#75cb62b325060b5d268159e53e7a9de4">GetHeight</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#caf0e43c7f94f9c3c2a2482a1ab0db06">SetNbColors</a> (in long theNbColors)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#2164a8ce3d888c7ac6b3644c0b7347c2">GetNbColors</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#21dd013631e20ce6c72368e7ac568802">SetLabels</a> (in long theNbLabels)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#085c23900301c3a4eb274584ee7d8ca6">GetLabels</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#449207525dc96443b81f42cef38047dd">SetTitle</a> (in string theName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#3618c82757da8f8471dd20ab13cbc27b">GetTitle</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#72fe2019f5aa9bb1c5e19b67a51d7f71">SetBarOrientation</a> (in <a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713">Orientation</a> theOrientation)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713">Orientation</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#8422578b257adc48e4c9e50d697e0364">GetBarOrientation</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#347812588c93643946de30dfc62cf765">SetOffset</a> (in float theDx, in float theDy, in float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#fec212476adf7396e8672ae1c3e7fb78">GetOffset</a> (out float theDx, out float theDy, out float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#b02c2fa9085433d4f3e50bf052471139">GetMemorySize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html#7d053f4324b26edd325024cd45424f13">RemoveFromStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-Presentation parameters of <a class="el" href="interfaceVISU_1_1Plot3D.html">Plot3D</a> presentation. This type of presentation consists of deforming initial planar mesh according to values assigned to the mesh elements. If mesh not planar but volumic one, it is possible to generate intermediate planar mesh. 
-<p>
-<hr><h2>Member Enumeration Documentation</h2>
-<a class="anchor" name="7fd6d4048589d7e44364c1d3070a5713"></a><!-- doxytag: member="VISU::Plot3D::Orientation" ref="7fd6d4048589d7e44364c1d3070a5713" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713">VISU::Plot3D::Orientation</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-This enumeration contains a set of elements defining the type of orientation in 3D space of the cutting plane. <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="7fd6d4048589d7e44364c1d3070a5713a9769130152073159a033024673d2f07"></a><!-- doxytag: member="XY" ref="7fd6d4048589d7e44364c1d3070a5713a9769130152073159a033024673d2f07" args="" -->XY</em>&nbsp;</td><td>
-The object is located in the plane formed by X and Y axis. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="7fd6d4048589d7e44364c1d3070a571389be54aaee88630bcf5eafdce3f214f9"></a><!-- doxytag: member="YZ" ref="7fd6d4048589d7e44364c1d3070a571389be54aaee88630bcf5eafdce3f214f9" args="" -->YZ</em>&nbsp;</td><td>
-The object is located in the plane formed by Y and Z axis. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="7fd6d4048589d7e44364c1d3070a5713c39c82b8b0eda87e36fe8a8cabed473d"></a><!-- doxytag: member="ZX" ref="7fd6d4048589d7e44364c1d3070a5713c39c82b8b0eda87e36fe8a8cabed473d" args="" -->ZX</em>&nbsp;</td><td>
-</td></tr>
-</table>
-</dl>
-
-<p>
-Implements <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">VISU.ColoredPrs3d</a>.
-</div>
-</div><p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="4dd7e0347731c18b05c7e16c0c56c175"></a><!-- doxytag: member="VISU::Plot3D::SetOrientation" ref="4dd7e0347731c18b05c7e16c0c56c175" args="(in Orientation theOrientation, in double theXAngle, in double theYAngle)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Plot3D.SetOrientation           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713">Orientation</a>&nbsp;</td>
-          <td class="paramname"> <em>theOrientation</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theXAngle</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theYAngle</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the orientation in 3D space of cutting plane for the presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theOrientation</em>&nbsp;</td><td>This parameter defines the type of orientation of cutting plane in 3D space. It is taken from the <em>Orientation</em> enumeration. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theXAngle</em>&nbsp;</td><td>The angle of rotation of the cutting plane around the first axis of the chosen orientation. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theXAngle</em>&nbsp;</td><td>The angle of rotation of the cutting plane around the second axis of the chosen orientation. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="3c508e060e410e96273cbe00e54cea6b"></a><!-- doxytag: member="VISU::Plot3D::GetOrientationType" ref="3c508e060e410e96273cbe00e54cea6b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713">Orientation</a> VISU.Plot3D.GetOrientationType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of orientation in 3D space of cutting plane. 
-</div>
-</div><p>
-<a class="anchor" name="cc82fe20613e57b7ee839aa210acff49"></a><!-- doxytag: member="VISU::Plot3D::GetRotateX" ref="cc82fe20613e57b7ee839aa210acff49" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.Plot3D.GetRotateX           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets rotation angle of the cutting plane around the first axis of the chosen orientation. 
-</div>
-</div><p>
-<a class="anchor" name="279d139193bfe33b6d8f979f08189a09"></a><!-- doxytag: member="VISU::Plot3D::GetRotateY" ref="279d139193bfe33b6d8f979f08189a09" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.Plot3D.GetRotateY           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets rotation angle of the cutting plane around the second axis of the chosen orientation. 
-</div>
-</div><p>
-<a class="anchor" name="8f92f8cd77cdb8bc10ddb78e9667a629"></a><!-- doxytag: member="VISU::Plot3D::SetPlanePosition" ref="8f92f8cd77cdb8bc10ddb78e9667a629" args="(in double thePlanePosition, in boolean theIsRelative)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Plot3D.SetPlanePosition           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>thePlanePosition</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>theIsRelative</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the position of a cutting plane. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePlanePosition</em>&nbsp;</td><td>The position of the cutting plane. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theIsRelative</em>&nbsp;</td><td>Define, whether the input position is relative. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="145e0a32b9c0bbc2e67a52016e707107"></a><!-- doxytag: member="VISU::Plot3D::GetPlanePosition" ref="145e0a32b9c0bbc2e67a52016e707107" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.Plot3D.GetPlanePosition           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the position of the cutting plane 
-</div>
-</div><p>
-<a class="anchor" name="7c4dd94d8bce9ef1584abd483e0d3144"></a><!-- doxytag: member="VISU::Plot3D::IsPositionRelative" ref="7c4dd94d8bce9ef1584abd483e0d3144" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.Plot3D.IsPositionRelative           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns true if a position of cutting plane is relative 
-</div>
-</div><p>
-<a class="anchor" name="573eeb677609a0556d0ac87a5fcd25a2"></a><!-- doxytag: member="VISU::Plot3D::SetScaleFactor" ref="573eeb677609a0556d0ac87a5fcd25a2" args="(in double theScaleFactor)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Plot3D.SetScaleFactor           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theScaleFactor</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the scale factor for scalar values (how much corresponding mesh elements should be translated). <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theScaleFactor</em>&nbsp;</td><td>The scaling factor. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="55ccd85beb28254f925d1f328f8d990c"></a><!-- doxytag: member="VISU::Plot3D::GetScaleFactor" ref="55ccd85beb28254f925d1f328f8d990c" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.Plot3D.GetScaleFactor           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the scale factor for scalar values. (how much corresponding mesh elements is translated) 
-</div>
-</div><p>
-<a class="anchor" name="858f0838b762377c01f393d379c4efdd"></a><!-- doxytag: member="VISU::Plot3D::SetContourPrs" ref="858f0838b762377c01f393d379c4efdd" args="(in boolean theIsContourPrs)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Plot3D.SetContourPrs           </td>
-          <td>(</td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>theIsContourPrs</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets presentation type: contour or surface. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theIsContourPrs</em>&nbsp;</td><td>Define, whether presentation type is contour. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="61d798e4c78d9f2aafc8db8f24a1d47d"></a><!-- doxytag: member="VISU::Plot3D::GetIsContourPrs" ref="61d798e4c78d9f2aafc8db8f24a1d47d" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.Plot3D.GetIsContourPrs           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns true if presentation type is contour. 
-</div>
-</div><p>
-<a class="anchor" name="fcdca5a91d414929b57003936f95bac9"></a><!-- doxytag: member="VISU::Plot3D::SetNbOfContours" ref="fcdca5a91d414929b57003936f95bac9" args="(in long theNb)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Plot3D.SetNbOfContours           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNb</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of contours. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNb</em>&nbsp;</td><td>The number of contours. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="0f5a1b8fe1fd0e00946676a72241bccc"></a><!-- doxytag: member="VISU::Plot3D::GetNbOfContours" ref="0f5a1b8fe1fd0e00946676a72241bccc" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.Plot3D.GetNbOfContours           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of contours. 
-</div>
-</div><p>
-<a class="anchor" name="533517f061d61d34128a7ebd40ec3df2"></a><!-- doxytag: member="VISU::Plot3D::SetScaling" ref="533517f061d61d34128a7ebd40ec3df2" args="(in Scaling theScaling)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetScaling           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td>
-          <td class="paramname"> <em>theScaling</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of scaling of the values reflected by the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theScaling</em>&nbsp;</td><td>The value of this parameter is taken from the <em>Scaling</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="af368a29e0046f847a2af205e7040c23"></a><!-- doxytag: member="VISU::Plot3D::GetScaling" ref="af368a29e0046f847a2af205e7040c23" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> VISU.ScalarMap.GetScaling           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of scaling of the values reflected by this presentation. 
-</div>
-</div><p>
-<a class="anchor" name="76016f8035d5fb342c64b13ca2e30a66"></a><!-- doxytag: member="VISU::Plot3D::SetRange" ref="76016f8035d5fb342c64b13ca2e30a66" args="(in double theMin, in double theMax)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetRange           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theMin</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theMax</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets scalar range - min and max boundaries of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theMin</em>&nbsp;</td><td>Min boundary of the scalar bar. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMax</em>&nbsp;</td><td>Max boundary of the scalar bar. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="39afc84381d63d9d8f77a37b86e36e5e"></a><!-- doxytag: member="VISU::Plot3D::SetSourceRange" ref="39afc84381d63d9d8f77a37b86e36e5e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetSourceRange           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets scalar range that corresponds to the source data. 
-</div>
-</div><p>
-<a class="anchor" name="04340c7d752c439d0715da0c84a3a9c2"></a><!-- doxytag: member="VISU::Plot3D::AddMeshOnGroup" ref="04340c7d752c439d0715da0c84a3a9c2" args="(in string theGroupName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.AddMeshOnGroup           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theGroupName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Add group as geometry of presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>- mesh name </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theGroupName</em>&nbsp;</td><td>- group name </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="11ff37051db7278522d4f55a104ad1de"></a><!-- doxytag: member="VISU::Plot3D::RemoveAllGeom" ref="11ff37051db7278522d4f55a104ad1de" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.RemoveAllGeom           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-PrsMerger method: Remove all groups.(The scalar map will be placed on all mesh). 
-</div>
-</div><p>
-<a class="anchor" name="0cb01513d53cac1cf26699344580962a"></a><!-- doxytag: member="VISU::Plot3D::SetScalarMode" ref="0cb01513d53cac1cf26699344580962a" args="(in long theScalarMode)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetScalarMode           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theScalarMode</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="bd7047f0543f356e7e0853285679c8a0"></a><!-- doxytag: member="VISU::Plot3D::GetScalarMode" ref="bd7047f0543f356e7e0853285679c8a0" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetScalarMode           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="df97f8522a471c2e90470584cf7c92d9"></a><!-- doxytag: member="VISU::Plot3D::GetMin" ref="df97f8522a471c2e90470584cf7c92d9" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="294cd1fcd6a6c21d76a6d03dc28b5a85"></a><!-- doxytag: member="VISU::Plot3D::GetMax" ref="294cd1fcd6a6c21d76a6d03dc28b5a85" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="ff19e0cdd15257ff97b65daf0fae8d57"></a><!-- doxytag: member="VISU::Plot3D::GetSourceMin" ref="ff19e0cdd15257ff97b65daf0fae8d57" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="c559644dd49a59f28a7ae5047da2b01b"></a><!-- doxytag: member="VISU::Plot3D::GetSourceMax" ref="c559644dd49a59f28a7ae5047da2b01b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="e0604356d4ef90ad08cf001f109e1153"></a><!-- doxytag: member="VISU::Plot3D::IsRangeFixed" ref="e0604356d4ef90ad08cf001f109e1153" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.ColoredPrs3d.IsRangeFixed           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Defines whether the scalar range corresponds to the source data or not. 
-</div>
-</div><p>
-<a class="anchor" name="e5d7bfff180529eedad1a140e5a449c3"></a><!-- doxytag: member="VISU::Plot3D::SetPosition" ref="e5d7bfff180529eedad1a140e5a449c3" args="(in double X, in double Y)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetPosition           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>X</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>Y</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the position of the scalar bar origin on the screen. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>X</em>&nbsp;</td><td>Horizontal position. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>Y</em>&nbsp;</td><td>Vertical position. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="ddd48392a778ada1e0153ddcc781edbc"></a><!-- doxytag: member="VISU::Plot3D::GetPosX" ref="ddd48392a778ada1e0153ddcc781edbc" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosX           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets horizontal position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="a20c6859e00c881a7db6fa3259a33e51"></a><!-- doxytag: member="VISU::Plot3D::GetPosY" ref="a20c6859e00c881a7db6fa3259a33e51" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosY           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets vertical position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="e9331edc9bb097dd99556ee27735710c"></a><!-- doxytag: member="VISU::Plot3D::SetSize" ref="e9331edc9bb097dd99556ee27735710c" args="(in double theWidth, in double theHeight)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetSize           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theWidth</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theHeight</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the size of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theWidth</em>&nbsp;</td><td>Width of this presentable object. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theHeight</em>&nbsp;</td><td>Height of this presentable object. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="fb5593e03da36959bcd7ac2e25c387ef"></a><!-- doxytag: member="VISU::Plot3D::GetWidth" ref="fb5593e03da36959bcd7ac2e25c387ef" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetWidth           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the width of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the width of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="75cb62b325060b5d268159e53e7a9de4"></a><!-- doxytag: member="VISU::Plot3D::GetHeight" ref="75cb62b325060b5d268159e53e7a9de4" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetHeight           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the height of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the height of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="caf0e43c7f94f9c3c2a2482a1ab0db06"></a><!-- doxytag: member="VISU::Plot3D::SetNbColors" ref="caf0e43c7f94f9c3c2a2482a1ab0db06" args="(in long theNbColors)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetNbColors           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbColors</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of colors which will be used for presentation of this presentable object. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbColors</em>&nbsp;</td><td>A long value defining the number of colors. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="2164a8ce3d888c7ac6b3644c0b7347c2"></a><!-- doxytag: member="VISU::Plot3D::GetNbColors" ref="2164a8ce3d888c7ac6b3644c0b7347c2" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetNbColors           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of colors which will be used for visualization of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of colors which will be used for visualization of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="21dd013631e20ce6c72368e7ac568802"></a><!-- doxytag: member="VISU::Plot3D::SetLabels" ref="21dd013631e20ce6c72368e7ac568802" args="(in long theNbLabels)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetLabels           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbLabels</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbLabels</em>&nbsp;</td><td>A long value defining the number of labels. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="085c23900301c3a4eb274584ee7d8ca6"></a><!-- doxytag: member="VISU::Plot3D::GetLabels" ref="085c23900301c3a4eb274584ee7d8ca6" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetLabels           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of labels which will be used for indication of color gradation of the scalar bar. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="449207525dc96443b81f42cef38047dd"></a><!-- doxytag: member="VISU::Plot3D::SetTitle" ref="449207525dc96443b81f42cef38047dd" args="(in string theName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetTitle           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the title of the scalar bar. By default - the name of the selected result is used. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theName</em>&nbsp;</td><td>String parameter defining the name of the scalar bar. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="3618c82757da8f8471dd20ab13cbc27b"></a><!-- doxytag: member="VISU::Plot3D::GetTitle" ref="3618c82757da8f8471dd20ab13cbc27b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.ColoredPrs3d.GetTitle           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the title of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="72fe2019f5aa9bb1c5e19b67a51d7f71"></a><!-- doxytag: member="VISU::Plot3D::SetBarOrientation" ref="72fe2019f5aa9bb1c5e19b67a51d7f71" args="(in Orientation theOrientation)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a>&nbsp;</td>
-          <td class="paramname"> <em>theOrientation</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of orientation of the scalar bar (to provide backward compatibility). <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theOrientation</em>&nbsp;</td><td>This parameter defines the orientation of the scalar bar. It is taken from the <em>Orientaton</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8422578b257adc48e4c9e50d697e0364"></a><!-- doxytag: member="VISU::Plot3D::GetBarOrientation" ref="8422578b257adc48e4c9e50d697e0364" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713">Orientation</a> VISU.ColoredPrs3d.GetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of orientation of the scalar bar (to provide backward compatibility). 
-</div>
-</div><p>
-<a class="anchor" name="347812588c93643946de30dfc62cf765"></a><!-- doxytag: member="VISU::Plot3D::SetOffset" ref="347812588c93643946de30dfc62cf765" args="(in float theDx, in float theDy, in float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.SetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Move the 3D presentation according to the given offset parameters 
-</div>
-</div><p>
-<a class="anchor" name="fec212476adf7396e8672ae1c3e7fb78"></a><!-- doxytag: member="VISU::Plot3D::GetOffset" ref="fec212476adf7396e8672ae1c3e7fb78" args="(out float theDx, out float theDy, out float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.GetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets offset parameters for the 3D presentation 
-</div>
-</div><p>
-<a class="anchor" name="b02c2fa9085433d4f3e50bf052471139"></a><!-- doxytag: member="VISU::Plot3D::GetMemorySize" ref="b02c2fa9085433d4f3e50bf052471139" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">float VISU.Prs3d.GetMemorySize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets memory size actually used by the presentation (Mb). 
-</div>
-</div><p>
-<a class="anchor" name="7d053f4324b26edd325024cd45424f13"></a><!-- doxytag: member="VISU::Plot3D::RemoveFromStudy" ref="7d053f4324b26edd325024cd45424f13" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.RemovableObject.RemoveFromStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove object from study. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::Plot3D::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::Plot3D::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:31:06 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Plot3D__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Plot3D__inherit__graph.jpg
deleted file mode 100644 (file)
index 9197fe3..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Plot3D__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Prs3d.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Prs3d.html
deleted file mode 100644 (file)
index 896447a..0000000
+++ /dev/null
@@ -1,211 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1Prs3d.html">Prs3d</a></div>
-<h1>VISU.Prs3d Interface Reference</h1><!-- doxytag: class="VISU::Prs3d" --><!-- doxytag: inherits="VISU::PrsObject,SALOME::GenericObj" -->3D presentation interface  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.Prs3d:<p><center><img src="interfaceVISU_1_1Prs3d__inherit__graph.jpg" border="0" usemap="#VISU_8Prs3d__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8Prs3d__inherit__map">
-<area href="interfaceVISU_1_1ColoredPrs3d.html" shape="rect" coords="310,307,454,331" alt="">
-<area href="interfaceVISU_1_1Mesh.html" shape="rect" coords="478,307,569,331" alt="">
-<area href="interfaceVISU_1_1PrsObject.html" shape="rect" coords="311,158,431,182" alt="">
-<area href="interfaceVISU_1_1RemovableObject.html" shape="rect" coords="285,83,458,107" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="327,9,415,33" alt="">
-<area href="classSALOME_1_1GenericObj.html" shape="rect" coords="455,158,613,182" alt="">
-<area href="interfaceVISU_1_1GaussPoints.html" shape="rect" coords="237,382,373,406" alt="">
-<area href="interfaceVISU_1_1ScalarMap.html" shape="rect" coords="397,382,522,406" alt="">
-<area href="interfaceVISU_1_1CutLines.html" shape="rect" coords="7,457,122,481" alt="">
-<area href="interfaceVISU_1_1CutPlanes.html" shape="rect" coords="146,457,269,481" alt="">
-<area href="interfaceVISU_1_1DeformedShape.html" shape="rect" coords="293,457,455,481" alt="">
-<area href="interfaceVISU_1_1IsoSurfaces.html" shape="rect" coords="479,457,613,481" alt="">
-<area href="interfaceVISU_1_1Plot3D.html" shape="rect" coords="637,457,738,481" alt="">
-<area href="interfaceVISU_1_1ScalarMapOnDeformedShape.html" shape="rect" coords="762,457,1013,481" alt="">
-<area href="interfaceVISU_1_1StreamLines.html" shape="rect" coords="231,531,370,555" alt="">
-<area href="interfaceVISU_1_1Vectors.html" shape="rect" coords="394,531,501,555" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#347812588c93643946de30dfc62cf765">SetOffset</a> (in float theDx, in float theDy, in float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#fec212476adf7396e8672ae1c3e7fb78">GetOffset</a> (out float theDx, out float theDy, out float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#b02c2fa9085433d4f3e50bf052471139">GetMemorySize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html#7d053f4324b26edd325024cd45424f13">RemoveFromStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-This is a root class for all 3D presentations, which can be displayed in VISU module. 
-<p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="347812588c93643946de30dfc62cf765"></a><!-- doxytag: member="VISU::Prs3d::SetOffset" ref="347812588c93643946de30dfc62cf765" args="(in float theDx, in float theDy, in float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.SetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Move the 3D presentation according to the given offset parameters 
-</div>
-</div><p>
-<a class="anchor" name="fec212476adf7396e8672ae1c3e7fb78"></a><!-- doxytag: member="VISU::Prs3d::GetOffset" ref="fec212476adf7396e8672ae1c3e7fb78" args="(out float theDx, out float theDy, out float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.GetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets offset parameters for the 3D presentation 
-</div>
-</div><p>
-<a class="anchor" name="b02c2fa9085433d4f3e50bf052471139"></a><!-- doxytag: member="VISU::Prs3d::GetMemorySize" ref="b02c2fa9085433d4f3e50bf052471139" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">float VISU.Prs3d.GetMemorySize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets memory size actually used by the presentation (Mb). 
-</div>
-</div><p>
-<a class="anchor" name="7d053f4324b26edd325024cd45424f13"></a><!-- doxytag: member="VISU::Prs3d::RemoveFromStudy" ref="7d053f4324b26edd325024cd45424f13" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.RemovableObject.RemoveFromStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove object from study. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::Prs3d::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::Prs3d::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:30:51 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Prs3d__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Prs3d__inherit__graph.jpg
deleted file mode 100644 (file)
index b2adc95..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Prs3d__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1PrsObject.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1PrsObject.html
deleted file mode 100644 (file)
index eae17a1..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a></div>
-<h1>VISU.PrsObject Interface Reference</h1><!-- doxytag: class="VISU::PrsObject" --><!-- doxytag: inherits="VISU::RemovableObject" -->Presentable object interface.  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.PrsObject:<p><center><img src="interfaceVISU_1_1PrsObject__inherit__graph.jpg" border="0" usemap="#VISU_8PrsObject__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8PrsObject__inherit__map">
-<area href="interfaceVISU_1_1ColoredPrs3dHolder.html" shape="rect" coords="7,233,194,257" alt="">
-<area href="interfaceVISU_1_1Container.html" shape="rect" coords="218,233,341,257" alt="">
-<area href="interfaceVISU_1_1Curve.html" shape="rect" coords="365,233,461,257" alt="">
-<area href="interfaceVISU_1_1Prs3d.html" shape="rect" coords="485,233,578,257" alt="">
-<area href="interfaceVISU_1_1Table.html" shape="rect" coords="602,233,693,257" alt="">
-<area href="interfaceVISU_1_1RemovableObject.html" shape="rect" coords="326,84,499,108" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="369,9,457,33" alt="">
-<area href="interfaceVISU_1_1ColoredPrs3d.html" shape="rect" coords="389,308,533,332" alt="">
-<area href="interfaceVISU_1_1Mesh.html" shape="rect" coords="557,308,647,332" alt="">
-<area href="interfaceVISU_1_1GaussPoints.html" shape="rect" coords="315,382,451,406" alt="">
-<area href="interfaceVISU_1_1ScalarMap.html" shape="rect" coords="475,382,601,406" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html#7d053f4324b26edd325024cd45424f13">RemoveFromStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-Presentable object interface is the root class of all presentable objects. 
-<p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="7d053f4324b26edd325024cd45424f13"></a><!-- doxytag: member="VISU::PrsObject::RemoveFromStudy" ref="7d053f4324b26edd325024cd45424f13" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.RemovableObject.RemoveFromStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove object from study. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::PrsObject::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::PrsObject::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:30:46 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1PrsObject__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1PrsObject__inherit__graph.jpg
deleted file mode 100644 (file)
index cc3fcc6..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1PrsObject__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1RemovableObject.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1RemovableObject.html
deleted file mode 100644 (file)
index 7242d51..0000000
+++ /dev/null
@@ -1,113 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1RemovableObject.html">RemovableObject</a></div>
-<h1>VISU.RemovableObject Interface Reference</h1><!-- doxytag: class="VISU::RemovableObject" --><!-- doxytag: inherits="VISU::Base" -->Removable object interface.  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.RemovableObject:<p><center><img src="interfaceVISU_1_1RemovableObject__inherit__graph.jpg" border="0" usemap="#VISU_8RemovableObject__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8RemovableObject__inherit__map">
-<area href="interfaceVISU_1_1ColoredPrs3dCache.html" shape="rect" coords="145,158,329,182" alt="">
-<area href="interfaceVISU_1_1PrsObject.html" shape="rect" coords="353,158,473,182" alt="">
-<area href="interfaceVISU_1_1Result.html" shape="rect" coords="497,158,595,182" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="369,9,457,33" alt="">
-<area href="interfaceVISU_1_1ColoredPrs3dHolder.html" shape="rect" coords="7,233,194,257" alt="">
-<area href="interfaceVISU_1_1Container.html" shape="rect" coords="218,233,341,257" alt="">
-<area href="interfaceVISU_1_1Curve.html" shape="rect" coords="365,233,461,257" alt="">
-<area href="interfaceVISU_1_1Prs3d.html" shape="rect" coords="485,233,578,257" alt="">
-<area href="interfaceVISU_1_1Table.html" shape="rect" coords="602,233,693,257" alt="">
-<area href="interfaceVISU_1_1ColoredPrs3d.html" shape="rect" coords="389,308,533,332" alt="">
-<area href="interfaceVISU_1_1Mesh.html" shape="rect" coords="557,308,647,332" alt="">
-<area href="interfaceVISU_1_1GaussPoints.html" shape="rect" coords="315,382,451,406" alt="">
-<area href="interfaceVISU_1_1ScalarMap.html" shape="rect" coords="475,382,601,406" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html#7d053f4324b26edd325024cd45424f13">RemoveFromStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-Removable object interface is the root class of all removable objects. 
-<p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="7d053f4324b26edd325024cd45424f13"></a><!-- doxytag: member="VISU::RemovableObject::RemoveFromStudy" ref="7d053f4324b26edd325024cd45424f13" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.RemovableObject.RemoveFromStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove object from study. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::RemovableObject::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::RemovableObject::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:30:45 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1RemovableObject__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1RemovableObject__inherit__graph.jpg
deleted file mode 100644 (file)
index 9da2b76..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1RemovableObject__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Result.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Result.html
deleted file mode 100644 (file)
index ab19f34..0000000
+++ /dev/null
@@ -1,313 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1Result.html">Result</a></div>
-<h1>VISU.Result Interface Reference</h1><!-- doxytag: class="VISU::Result" --><!-- doxytag: inherits="VISU::RemovableObject,SALOME::GenericObj" -->Interface Result.  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.Result:<p><center><img src="interfaceVISU_1_1Result__inherit__graph.jpg" border="0" usemap="#VISU_8Result__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8Result__inherit__map">
-<area href="interfaceVISU_1_1RemovableObject.html" shape="rect" coords="8,84,181,108" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="50,9,138,33" alt="">
-<area href="classSALOME_1_1GenericObj.html" shape="rect" coords="205,84,362,108" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Result.html#a6260841efa4694504f6e21590a4c50a">BuildAll</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Result.html#7a46d5659c95adae95b4329916af1fec">Build</a> (in boolean theIsBuildAll, in boolean theIsAtOnce)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Result.html#d1ef69caf6a76c8ed0a8297f436ffbd4">IsDone</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Result.html#b412602578606b93a81b8c6359996190">IsEntitiesDone</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Result.html#5e1c8ee717350540d98cd3db0e5cc2a3">SetBuildFields</a> (in boolean theIsBuildFields, in boolean theIsCalculateMinMax)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Result.html#59a809f9bc88f96c8df98a0e95dbbbdf">IsFieldsDone</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Result.html#468d7606f2efde5d765fb33242f34373">SetBuildGroups</a> (in boolean theIsBuildGroups)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Result.html#02fa556cedd2bb0d86089e6811ab6609">IsGroupsDone</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Result.html#ce7b1e63efe426c4fb8c357524eae854">IsMinMaxDone</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html#7d053f4324b26edd325024cd45424f13">RemoveFromStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-This interface serves for inner representation of data generated in other sources (MED object or file). This data is needed for further construction of graphical presentations. 
-<p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="a6260841efa4694504f6e21590a4c50a"></a><!-- doxytag: member="VISU::Result::BuildAll" ref="a6260841efa4694504f6e21590a4c50a" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.Result.BuildAll           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Reads all data from the corresponding sources. By default the data is loaded on demand. 
-</div>
-</div><p>
-<a class="anchor" name="7a46d5659c95adae95b4329916af1fec"></a><!-- doxytag: member="VISU::Result::Build" ref="7a46d5659c95adae95b4329916af1fec" args="(in boolean theIsBuildAll, in boolean theIsAtOnce)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.Result.Build           </td>
-          <td>(</td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>theIsBuildAll</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>theIsAtOnce</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Start to parse the source MED file and publish all its entities into the study 
-</div>
-</div><p>
-<a class="anchor" name="d1ef69caf6a76c8ed0a8297f436ffbd4"></a><!-- doxytag: member="VISU::Result::IsDone" ref="d1ef69caf6a76c8ed0a8297f436ffbd4" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.Result.IsDone           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Allow to check is all requested MED entites already loaded or not 
-</div>
-</div><p>
-<a class="anchor" name="b412602578606b93a81b8c6359996190"></a><!-- doxytag: member="VISU::Result::IsEntitiesDone" ref="b412602578606b93a81b8c6359996190" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.Result.IsEntitiesDone           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Allow to check is corresponding MED entites already loaded or not 
-</div>
-</div><p>
-<a class="anchor" name="5e1c8ee717350540d98cd3db0e5cc2a3"></a><!-- doxytag: member="VISU::Result::SetBuildFields" ref="5e1c8ee717350540d98cd3db0e5cc2a3" args="(in boolean theIsBuildFields, in boolean theIsCalculateMinMax)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Result.SetBuildFields           </td>
-          <td>(</td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>theIsBuildFields</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>theIsCalculateMinMax</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Choose to parse MED fields and perform global min / max on the MED timestamps. 
-</div>
-</div><p>
-<a class="anchor" name="59a809f9bc88f96c8df98a0e95dbbbdf"></a><!-- doxytag: member="VISU::Result::IsFieldsDone" ref="59a809f9bc88f96c8df98a0e95dbbbdf" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.Result.IsFieldsDone           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Allow to check is corresponding MED fields already loaded or not 
-</div>
-</div><p>
-<a class="anchor" name="468d7606f2efde5d765fb33242f34373"></a><!-- doxytag: member="VISU::Result::SetBuildGroups" ref="468d7606f2efde5d765fb33242f34373" args="(in boolean theIsBuildGroups)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Result.SetBuildGroups           </td>
-          <td>(</td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>theIsBuildGroups</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Choose to parse MED groups. 
-</div>
-</div><p>
-<a class="anchor" name="02fa556cedd2bb0d86089e6811ab6609"></a><!-- doxytag: member="VISU::Result::IsGroupsDone" ref="02fa556cedd2bb0d86089e6811ab6609" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.Result.IsGroupsDone           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Allow to check is corresponding MED groups and families already loaded or not 
-</div>
-</div><p>
-<a class="anchor" name="ce7b1e63efe426c4fb8c357524eae854"></a><!-- doxytag: member="VISU::Result::IsMinMaxDone" ref="ce7b1e63efe426c4fb8c357524eae854" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.Result.IsMinMaxDone           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Allow to check is min / max calculation over field's components already perfrormed or not 
-</div>
-</div><p>
-<a class="anchor" name="7d053f4324b26edd325024cd45424f13"></a><!-- doxytag: member="VISU::Result::RemoveFromStudy" ref="7d053f4324b26edd325024cd45424f13" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.RemovableObject.RemoveFromStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove object from study. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::Result::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::Result::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:31:15 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Result__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Result__inherit__graph.jpg
deleted file mode 100644 (file)
index 00ee18d..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Result__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ScalarMap.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ScalarMap.html
deleted file mode 100644 (file)
index 75bc2bb..0000000
+++ /dev/null
@@ -1,903 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a></div>
-<h1>VISU.ScalarMap Interface Reference</h1><!-- doxytag: class="VISU::ScalarMap" --><!-- doxytag: inherits="VISU::ColoredPrs3d" -->Interface of the Scalar Map.  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.ScalarMap:<p><center><img src="interfaceVISU_1_1ScalarMap__inherit__graph.jpg" border="0" usemap="#VISU_8ScalarMap__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8ScalarMap__inherit__map">
-<area href="interfaceVISU_1_1CutLines.html" shape="rect" coords="7,457,122,481" alt="">
-<area href="interfaceVISU_1_1CutPlanes.html" shape="rect" coords="146,457,269,481" alt="">
-<area href="interfaceVISU_1_1DeformedShape.html" shape="rect" coords="293,457,455,481" alt="">
-<area href="interfaceVISU_1_1IsoSurfaces.html" shape="rect" coords="479,457,613,481" alt="">
-<area href="interfaceVISU_1_1Plot3D.html" shape="rect" coords="637,457,738,481" alt="">
-<area href="interfaceVISU_1_1ScalarMapOnDeformedShape.html" shape="rect" coords="762,457,1013,481" alt="">
-<area href="interfaceVISU_1_1ColoredPrs3d.html" shape="rect" coords="387,307,531,331" alt="">
-<area href="interfaceVISU_1_1Prs3d.html" shape="rect" coords="413,233,506,257" alt="">
-<area href="interfaceVISU_1_1PrsObject.html" shape="rect" coords="318,158,438,182" alt="">
-<area href="interfaceVISU_1_1RemovableObject.html" shape="rect" coords="291,83,465,107" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="334,9,422,33" alt="">
-<area href="classSALOME_1_1GenericObj.html" shape="rect" coords="462,158,619,182" alt="">
-<area href="interfaceVISU_1_1StreamLines.html" shape="rect" coords="231,531,370,555" alt="">
-<area href="interfaceVISU_1_1Vectors.html" shape="rect" coords="394,531,501,555" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72">HORIZONTAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d">VERTICAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> { <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72">HORIZONTAL</a>, 
-<a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d">VERTICAL</a>
- }</td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#533517f061d61d34128a7ebd40ec3df2">SetScaling</a> (in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> theScaling)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#af368a29e0046f847a2af205e7040c23">GetScaling</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#76016f8035d5fb342c64b13ca2e30a66">SetRange</a> (in double theMin, in double theMax)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#39afc84381d63d9d8f77a37b86e36e5e">SetSourceRange</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#04340c7d752c439d0715da0c84a3a9c2">AddMeshOnGroup</a> (in string theGroupName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#11ff37051db7278522d4f55a104ad1de">RemoveAllGeom</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#0cb01513d53cac1cf26699344580962a">SetScalarMode</a> (in long theScalarMode)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#bd7047f0543f356e7e0853285679c8a0">GetScalarMode</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#df97f8522a471c2e90470584cf7c92d9">GetMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#294cd1fcd6a6c21d76a6d03dc28b5a85">GetMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ff19e0cdd15257ff97b65daf0fae8d57">GetSourceMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#c559644dd49a59f28a7ae5047da2b01b">GetSourceMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e0604356d4ef90ad08cf001f109e1153">IsRangeFixed</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e5d7bfff180529eedad1a140e5a449c3">SetPosition</a> (in double X, in double Y)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Position of the scalar bar.  <a href="#e5d7bfff180529eedad1a140e5a449c3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ddd48392a778ada1e0153ddcc781edbc">GetPosX</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#a20c6859e00c881a7db6fa3259a33e51">GetPosY</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e9331edc9bb097dd99556ee27735710c">SetSize</a> (in double theWidth, in double theHeight)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Size of this presentable object.  <a href="#e9331edc9bb097dd99556ee27735710c"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#fb5593e03da36959bcd7ac2e25c387ef">GetWidth</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#75cb62b325060b5d268159e53e7a9de4">GetHeight</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#caf0e43c7f94f9c3c2a2482a1ab0db06">SetNbColors</a> (in long theNbColors)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#2164a8ce3d888c7ac6b3644c0b7347c2">GetNbColors</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#21dd013631e20ce6c72368e7ac568802">SetLabels</a> (in long theNbLabels)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#085c23900301c3a4eb274584ee7d8ca6">GetLabels</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#449207525dc96443b81f42cef38047dd">SetTitle</a> (in string theName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#3618c82757da8f8471dd20ab13cbc27b">GetTitle</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#72fe2019f5aa9bb1c5e19b67a51d7f71">SetBarOrientation</a> (in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> theOrientation)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#8422578b257adc48e4c9e50d697e0364">GetBarOrientation</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#347812588c93643946de30dfc62cf765">SetOffset</a> (in float theDx, in float theDy, in float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#fec212476adf7396e8672ae1c3e7fb78">GetOffset</a> (out float theDx, out float theDy, out float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#b02c2fa9085433d4f3e50bf052471139">GetMemorySize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html#7d053f4324b26edd325024cd45424f13">RemoveFromStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-This interface is responsable for coloring of 3D field presentations according the scalar values applied to different cells. As well it contains presentation parameters of the scalar bar. The scalar bar is displayed along with each colored field presentation and serves for consulting the correspondance between colors and data values. 
-<p>
-<hr><h2>Member Enumeration Documentation</h2>
-<a class="anchor" name="12f791060a4820aca541565c57ce715c"></a><!-- doxytag: member="VISU::ScalarMap::Orientation" ref="12f791060a4820aca541565c57ce715c" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">VISU::ColoredPrs3d::Orientation</a><code> [inherited]</code>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Orientation of the scalar bar (to provide backward compatibility). <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72"></a><!-- doxytag: member="HORIZONTAL" ref="12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72" args="" -->HORIZONTAL</em>&nbsp;</td><td>
-Horizontal orientation of the scalar bar. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d"></a><!-- doxytag: member="VERTICAL" ref="12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d" args="" -->VERTICAL</em>&nbsp;</td><td>
-Vertical orientation of the scalar bar. </td></tr>
-</table>
-</dl>
-
-<p>
-Implemented in <a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713">VISU.Plot3D</a>, and <a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">VISU.CutPlanes</a>.
-</div>
-</div><p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="533517f061d61d34128a7ebd40ec3df2"></a><!-- doxytag: member="VISU::ScalarMap::SetScaling" ref="533517f061d61d34128a7ebd40ec3df2" args="(in Scaling theScaling)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetScaling           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td>
-          <td class="paramname"> <em>theScaling</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of scaling of the values reflected by the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theScaling</em>&nbsp;</td><td>The value of this parameter is taken from the <em>Scaling</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="af368a29e0046f847a2af205e7040c23"></a><!-- doxytag: member="VISU::ScalarMap::GetScaling" ref="af368a29e0046f847a2af205e7040c23" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> VISU.ScalarMap.GetScaling           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of scaling of the values reflected by this presentation. 
-</div>
-</div><p>
-<a class="anchor" name="76016f8035d5fb342c64b13ca2e30a66"></a><!-- doxytag: member="VISU::ScalarMap::SetRange" ref="76016f8035d5fb342c64b13ca2e30a66" args="(in double theMin, in double theMax)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetRange           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theMin</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theMax</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets scalar range - min and max boundaries of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theMin</em>&nbsp;</td><td>Min boundary of the scalar bar. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMax</em>&nbsp;</td><td>Max boundary of the scalar bar. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="39afc84381d63d9d8f77a37b86e36e5e"></a><!-- doxytag: member="VISU::ScalarMap::SetSourceRange" ref="39afc84381d63d9d8f77a37b86e36e5e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetSourceRange           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets scalar range that corresponds to the source data. 
-</div>
-</div><p>
-<a class="anchor" name="04340c7d752c439d0715da0c84a3a9c2"></a><!-- doxytag: member="VISU::ScalarMap::AddMeshOnGroup" ref="04340c7d752c439d0715da0c84a3a9c2" args="(in string theGroupName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.AddMeshOnGroup           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theGroupName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Add group as geometry of presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>- mesh name </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theGroupName</em>&nbsp;</td><td>- group name </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="11ff37051db7278522d4f55a104ad1de"></a><!-- doxytag: member="VISU::ScalarMap::RemoveAllGeom" ref="11ff37051db7278522d4f55a104ad1de" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.RemoveAllGeom           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-PrsMerger method: Remove all groups.(The scalar map will be placed on all mesh). 
-</div>
-</div><p>
-<a class="anchor" name="0cb01513d53cac1cf26699344580962a"></a><!-- doxytag: member="VISU::ScalarMap::SetScalarMode" ref="0cb01513d53cac1cf26699344580962a" args="(in long theScalarMode)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetScalarMode           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theScalarMode</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="bd7047f0543f356e7e0853285679c8a0"></a><!-- doxytag: member="VISU::ScalarMap::GetScalarMode" ref="bd7047f0543f356e7e0853285679c8a0" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetScalarMode           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="df97f8522a471c2e90470584cf7c92d9"></a><!-- doxytag: member="VISU::ScalarMap::GetMin" ref="df97f8522a471c2e90470584cf7c92d9" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="294cd1fcd6a6c21d76a6d03dc28b5a85"></a><!-- doxytag: member="VISU::ScalarMap::GetMax" ref="294cd1fcd6a6c21d76a6d03dc28b5a85" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="ff19e0cdd15257ff97b65daf0fae8d57"></a><!-- doxytag: member="VISU::ScalarMap::GetSourceMin" ref="ff19e0cdd15257ff97b65daf0fae8d57" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="c559644dd49a59f28a7ae5047da2b01b"></a><!-- doxytag: member="VISU::ScalarMap::GetSourceMax" ref="c559644dd49a59f28a7ae5047da2b01b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="e0604356d4ef90ad08cf001f109e1153"></a><!-- doxytag: member="VISU::ScalarMap::IsRangeFixed" ref="e0604356d4ef90ad08cf001f109e1153" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.ColoredPrs3d.IsRangeFixed           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Defines whether the scalar range corresponds to the source data or not. 
-</div>
-</div><p>
-<a class="anchor" name="e5d7bfff180529eedad1a140e5a449c3"></a><!-- doxytag: member="VISU::ScalarMap::SetPosition" ref="e5d7bfff180529eedad1a140e5a449c3" args="(in double X, in double Y)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetPosition           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>X</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>Y</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the position of the scalar bar origin on the screen. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>X</em>&nbsp;</td><td>Horizontal position. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>Y</em>&nbsp;</td><td>Vertical position. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="ddd48392a778ada1e0153ddcc781edbc"></a><!-- doxytag: member="VISU::ScalarMap::GetPosX" ref="ddd48392a778ada1e0153ddcc781edbc" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosX           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets horizontal position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="a20c6859e00c881a7db6fa3259a33e51"></a><!-- doxytag: member="VISU::ScalarMap::GetPosY" ref="a20c6859e00c881a7db6fa3259a33e51" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosY           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets vertical position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="e9331edc9bb097dd99556ee27735710c"></a><!-- doxytag: member="VISU::ScalarMap::SetSize" ref="e9331edc9bb097dd99556ee27735710c" args="(in double theWidth, in double theHeight)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetSize           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theWidth</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theHeight</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the size of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theWidth</em>&nbsp;</td><td>Width of this presentable object. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theHeight</em>&nbsp;</td><td>Height of this presentable object. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="fb5593e03da36959bcd7ac2e25c387ef"></a><!-- doxytag: member="VISU::ScalarMap::GetWidth" ref="fb5593e03da36959bcd7ac2e25c387ef" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetWidth           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the width of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the width of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="75cb62b325060b5d268159e53e7a9de4"></a><!-- doxytag: member="VISU::ScalarMap::GetHeight" ref="75cb62b325060b5d268159e53e7a9de4" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetHeight           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the height of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the height of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="caf0e43c7f94f9c3c2a2482a1ab0db06"></a><!-- doxytag: member="VISU::ScalarMap::SetNbColors" ref="caf0e43c7f94f9c3c2a2482a1ab0db06" args="(in long theNbColors)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetNbColors           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbColors</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of colors which will be used for presentation of this presentable object. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbColors</em>&nbsp;</td><td>A long value defining the number of colors. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="2164a8ce3d888c7ac6b3644c0b7347c2"></a><!-- doxytag: member="VISU::ScalarMap::GetNbColors" ref="2164a8ce3d888c7ac6b3644c0b7347c2" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetNbColors           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of colors which will be used for visualization of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of colors which will be used for visualization of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="21dd013631e20ce6c72368e7ac568802"></a><!-- doxytag: member="VISU::ScalarMap::SetLabels" ref="21dd013631e20ce6c72368e7ac568802" args="(in long theNbLabels)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetLabels           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbLabels</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbLabels</em>&nbsp;</td><td>A long value defining the number of labels. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="085c23900301c3a4eb274584ee7d8ca6"></a><!-- doxytag: member="VISU::ScalarMap::GetLabels" ref="085c23900301c3a4eb274584ee7d8ca6" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetLabels           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of labels which will be used for indication of color gradation of the scalar bar. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="449207525dc96443b81f42cef38047dd"></a><!-- doxytag: member="VISU::ScalarMap::SetTitle" ref="449207525dc96443b81f42cef38047dd" args="(in string theName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetTitle           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the title of the scalar bar. By default - the name of the selected result is used. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theName</em>&nbsp;</td><td>String parameter defining the name of the scalar bar. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="3618c82757da8f8471dd20ab13cbc27b"></a><!-- doxytag: member="VISU::ScalarMap::GetTitle" ref="3618c82757da8f8471dd20ab13cbc27b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.ColoredPrs3d.GetTitle           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the title of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="72fe2019f5aa9bb1c5e19b67a51d7f71"></a><!-- doxytag: member="VISU::ScalarMap::SetBarOrientation" ref="72fe2019f5aa9bb1c5e19b67a51d7f71" args="(in Orientation theOrientation)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a>&nbsp;</td>
-          <td class="paramname"> <em>theOrientation</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of orientation of the scalar bar (to provide backward compatibility). <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theOrientation</em>&nbsp;</td><td>This parameter defines the orientation of the scalar bar. It is taken from the <em>Orientaton</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8422578b257adc48e4c9e50d697e0364"></a><!-- doxytag: member="VISU::ScalarMap::GetBarOrientation" ref="8422578b257adc48e4c9e50d697e0364" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> VISU.ColoredPrs3d.GetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of orientation of the scalar bar (to provide backward compatibility). 
-</div>
-</div><p>
-<a class="anchor" name="347812588c93643946de30dfc62cf765"></a><!-- doxytag: member="VISU::ScalarMap::SetOffset" ref="347812588c93643946de30dfc62cf765" args="(in float theDx, in float theDy, in float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.SetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Move the 3D presentation according to the given offset parameters 
-</div>
-</div><p>
-<a class="anchor" name="fec212476adf7396e8672ae1c3e7fb78"></a><!-- doxytag: member="VISU::ScalarMap::GetOffset" ref="fec212476adf7396e8672ae1c3e7fb78" args="(out float theDx, out float theDy, out float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.GetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets offset parameters for the 3D presentation 
-</div>
-</div><p>
-<a class="anchor" name="b02c2fa9085433d4f3e50bf052471139"></a><!-- doxytag: member="VISU::ScalarMap::GetMemorySize" ref="b02c2fa9085433d4f3e50bf052471139" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">float VISU.Prs3d.GetMemorySize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets memory size actually used by the presentation (Mb). 
-</div>
-</div><p>
-<a class="anchor" name="7d053f4324b26edd325024cd45424f13"></a><!-- doxytag: member="VISU::ScalarMap::RemoveFromStudy" ref="7d053f4324b26edd325024cd45424f13" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.RemovableObject.RemoveFromStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove object from study. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::ScalarMap::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::ScalarMap::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:30:59 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ScalarMapOnDeformedShape.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ScalarMapOnDeformedShape.html
deleted file mode 100644 (file)
index 878345b..0000000
+++ /dev/null
@@ -1,1051 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1ScalarMapOnDeformedShape.html">ScalarMapOnDeformedShape</a></div>
-<h1>VISU.ScalarMapOnDeformedShape Interface Reference</h1><!-- doxytag: class="VISU::ScalarMapOnDeformedShape" --><!-- doxytag: inherits="VISU::ScalarMap" -->Scalar Map on Deformed shape presentation interface.  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.ScalarMapOnDeformedShape:<p><center><img src="interfaceVISU_1_1ScalarMapOnDeformedShape__inherit__graph.jpg" border="0" usemap="#VISU_8ScalarMapOnDeformedShape__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8ScalarMapOnDeformedShape__inherit__map">
-<area href="interfaceVISU_1_1ScalarMap.html" shape="rect" coords="113,382,238,406" alt="">
-<area href="interfaceVISU_1_1ColoredPrs3d.html" shape="rect" coords="104,308,248,332" alt="">
-<area href="interfaceVISU_1_1Prs3d.html" shape="rect" coords="129,233,222,257" alt="">
-<area href="interfaceVISU_1_1PrsObject.html" shape="rect" coords="34,158,154,182" alt="">
-<area href="interfaceVISU_1_1RemovableObject.html" shape="rect" coords="8,84,181,108" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="50,9,138,33" alt="">
-<area href="classSALOME_1_1GenericObj.html" shape="rect" coords="178,158,336,182" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72">HORIZONTAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d">VERTICAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> { <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72">HORIZONTAL</a>, 
-<a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d">VERTICAL</a>
- }</td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMapOnDeformedShape.html#3a92dc88ab0024ceda9c76d5e54d5384">SetScale</a> (in double theScale)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMapOnDeformedShape.html#2de96e908a06e0c37a60722990b0b893">GetScale</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMapOnDeformedShape.html#9ed80dd79213a687e791ed62103fc830">SetScalarField</a> (in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a> theEntity, in string theFieldName, in long theTimeStampNumber)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMapOnDeformedShape.html#55450f4cc1b98c3cdcbba2faf834f3f4">GetScalarEntity</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMapOnDeformedShape.html#044d3f728b6ea073c5db52a43fe36949">GetScalarFieldName</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMapOnDeformedShape.html#49b0bf8b06aa03bea50d2f81ef1ea0fa">GetScalarTimeStampNumber</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#533517f061d61d34128a7ebd40ec3df2">SetScaling</a> (in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> theScaling)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#af368a29e0046f847a2af205e7040c23">GetScaling</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#76016f8035d5fb342c64b13ca2e30a66">SetRange</a> (in double theMin, in double theMax)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#39afc84381d63d9d8f77a37b86e36e5e">SetSourceRange</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#04340c7d752c439d0715da0c84a3a9c2">AddMeshOnGroup</a> (in string theGroupName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#11ff37051db7278522d4f55a104ad1de">RemoveAllGeom</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#0cb01513d53cac1cf26699344580962a">SetScalarMode</a> (in long theScalarMode)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#bd7047f0543f356e7e0853285679c8a0">GetScalarMode</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#df97f8522a471c2e90470584cf7c92d9">GetMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#294cd1fcd6a6c21d76a6d03dc28b5a85">GetMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ff19e0cdd15257ff97b65daf0fae8d57">GetSourceMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#c559644dd49a59f28a7ae5047da2b01b">GetSourceMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e0604356d4ef90ad08cf001f109e1153">IsRangeFixed</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e5d7bfff180529eedad1a140e5a449c3">SetPosition</a> (in double X, in double Y)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Position of the scalar bar.  <a href="#e5d7bfff180529eedad1a140e5a449c3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ddd48392a778ada1e0153ddcc781edbc">GetPosX</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#a20c6859e00c881a7db6fa3259a33e51">GetPosY</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e9331edc9bb097dd99556ee27735710c">SetSize</a> (in double theWidth, in double theHeight)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Size of this presentable object.  <a href="#e9331edc9bb097dd99556ee27735710c"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#fb5593e03da36959bcd7ac2e25c387ef">GetWidth</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#75cb62b325060b5d268159e53e7a9de4">GetHeight</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#caf0e43c7f94f9c3c2a2482a1ab0db06">SetNbColors</a> (in long theNbColors)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#2164a8ce3d888c7ac6b3644c0b7347c2">GetNbColors</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#21dd013631e20ce6c72368e7ac568802">SetLabels</a> (in long theNbLabels)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#085c23900301c3a4eb274584ee7d8ca6">GetLabels</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#449207525dc96443b81f42cef38047dd">SetTitle</a> (in string theName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#3618c82757da8f8471dd20ab13cbc27b">GetTitle</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#72fe2019f5aa9bb1c5e19b67a51d7f71">SetBarOrientation</a> (in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> theOrientation)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#8422578b257adc48e4c9e50d697e0364">GetBarOrientation</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#347812588c93643946de30dfc62cf765">SetOffset</a> (in float theDx, in float theDy, in float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#fec212476adf7396e8672ae1c3e7fb78">GetOffset</a> (out float theDx, out float theDy, out float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#b02c2fa9085433d4f3e50bf052471139">GetMemorySize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html#7d053f4324b26edd325024cd45424f13">RemoveFromStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-Presentation parameters of the scalar map on deformed shape presentation. 
-<p>
-<hr><h2>Member Enumeration Documentation</h2>
-<a class="anchor" name="12f791060a4820aca541565c57ce715c"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::Orientation" ref="12f791060a4820aca541565c57ce715c" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">VISU::ColoredPrs3d::Orientation</a><code> [inherited]</code>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Orientation of the scalar bar (to provide backward compatibility). <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72"></a><!-- doxytag: member="HORIZONTAL" ref="12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72" args="" -->HORIZONTAL</em>&nbsp;</td><td>
-Horizontal orientation of the scalar bar. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d"></a><!-- doxytag: member="VERTICAL" ref="12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d" args="" -->VERTICAL</em>&nbsp;</td><td>
-Vertical orientation of the scalar bar. </td></tr>
-</table>
-</dl>
-
-<p>
-Implemented in <a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713">VISU.Plot3D</a>, and <a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">VISU.CutPlanes</a>.
-</div>
-</div><p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="3a92dc88ab0024ceda9c76d5e54d5384"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::SetScale" ref="3a92dc88ab0024ceda9c76d5e54d5384" args="(in double theScale)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMapOnDeformedShape.SetScale           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theScale</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the scale of the presentatable object. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theScale</em>&nbsp;</td><td>Double value defining the scale of this presentable object. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="2de96e908a06e0c37a60722990b0b893"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetScale" ref="2de96e908a06e0c37a60722990b0b893" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ScalarMapOnDeformedShape.GetScale           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the scale of the presentatable object. 
-</div>
-</div><p>
-<a class="anchor" name="9ed80dd79213a687e791ed62103fc830"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::SetScalarField" ref="9ed80dd79213a687e791ed62103fc830" args="(in Entity theEntity, in string theFieldName, in long theTimeStampNumber)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMapOnDeformedShape.SetScalarField           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a>&nbsp;</td>
-          <td class="paramname"> <em>theEntity</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFieldName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theTimeStampNumber</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the scalar field <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theEntity</em>&nbsp;</td><td>- entity of scalar field </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theFieldName</em>&nbsp;</td><td>- the name of scalar field </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theTimeStampNumber</em>&nbsp;</td><td>- the timestamp number for the scalar field </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="55450f4cc1b98c3cdcbba2faf834f3f4"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetScalarEntity" ref="55450f4cc1b98c3cdcbba2faf834f3f4" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a> VISU.ScalarMapOnDeformedShape.GetScalarEntity           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Get scalar entity 
-</div>
-</div><p>
-<a class="anchor" name="044d3f728b6ea073c5db52a43fe36949"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetScalarFieldName" ref="044d3f728b6ea073c5db52a43fe36949" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.ScalarMapOnDeformedShape.GetScalarFieldName           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Get scalar field name 
-</div>
-</div><p>
-<a class="anchor" name="49b0bf8b06aa03bea50d2f81ef1ea0fa"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetScalarTimeStampNumber" ref="49b0bf8b06aa03bea50d2f81ef1ea0fa" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ScalarMapOnDeformedShape.GetScalarTimeStampNumber           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Get timestamp number for the scalar field 
-</div>
-</div><p>
-<a class="anchor" name="533517f061d61d34128a7ebd40ec3df2"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::SetScaling" ref="533517f061d61d34128a7ebd40ec3df2" args="(in Scaling theScaling)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetScaling           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td>
-          <td class="paramname"> <em>theScaling</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of scaling of the values reflected by the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theScaling</em>&nbsp;</td><td>The value of this parameter is taken from the <em>Scaling</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="af368a29e0046f847a2af205e7040c23"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetScaling" ref="af368a29e0046f847a2af205e7040c23" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> VISU.ScalarMap.GetScaling           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of scaling of the values reflected by this presentation. 
-</div>
-</div><p>
-<a class="anchor" name="76016f8035d5fb342c64b13ca2e30a66"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::SetRange" ref="76016f8035d5fb342c64b13ca2e30a66" args="(in double theMin, in double theMax)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetRange           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theMin</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theMax</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets scalar range - min and max boundaries of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theMin</em>&nbsp;</td><td>Min boundary of the scalar bar. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMax</em>&nbsp;</td><td>Max boundary of the scalar bar. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="39afc84381d63d9d8f77a37b86e36e5e"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::SetSourceRange" ref="39afc84381d63d9d8f77a37b86e36e5e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetSourceRange           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets scalar range that corresponds to the source data. 
-</div>
-</div><p>
-<a class="anchor" name="04340c7d752c439d0715da0c84a3a9c2"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::AddMeshOnGroup" ref="04340c7d752c439d0715da0c84a3a9c2" args="(in string theGroupName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.AddMeshOnGroup           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theGroupName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Add group as geometry of presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>- mesh name </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theGroupName</em>&nbsp;</td><td>- group name </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="11ff37051db7278522d4f55a104ad1de"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::RemoveAllGeom" ref="11ff37051db7278522d4f55a104ad1de" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.RemoveAllGeom           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-PrsMerger method: Remove all groups.(The scalar map will be placed on all mesh). 
-</div>
-</div><p>
-<a class="anchor" name="0cb01513d53cac1cf26699344580962a"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::SetScalarMode" ref="0cb01513d53cac1cf26699344580962a" args="(in long theScalarMode)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetScalarMode           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theScalarMode</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="bd7047f0543f356e7e0853285679c8a0"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetScalarMode" ref="bd7047f0543f356e7e0853285679c8a0" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetScalarMode           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="df97f8522a471c2e90470584cf7c92d9"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetMin" ref="df97f8522a471c2e90470584cf7c92d9" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="294cd1fcd6a6c21d76a6d03dc28b5a85"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetMax" ref="294cd1fcd6a6c21d76a6d03dc28b5a85" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="ff19e0cdd15257ff97b65daf0fae8d57"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetSourceMin" ref="ff19e0cdd15257ff97b65daf0fae8d57" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="c559644dd49a59f28a7ae5047da2b01b"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetSourceMax" ref="c559644dd49a59f28a7ae5047da2b01b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="e0604356d4ef90ad08cf001f109e1153"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::IsRangeFixed" ref="e0604356d4ef90ad08cf001f109e1153" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.ColoredPrs3d.IsRangeFixed           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Defines whether the scalar range corresponds to the source data or not. 
-</div>
-</div><p>
-<a class="anchor" name="e5d7bfff180529eedad1a140e5a449c3"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::SetPosition" ref="e5d7bfff180529eedad1a140e5a449c3" args="(in double X, in double Y)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetPosition           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>X</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>Y</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the position of the scalar bar origin on the screen. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>X</em>&nbsp;</td><td>Horizontal position. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>Y</em>&nbsp;</td><td>Vertical position. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="ddd48392a778ada1e0153ddcc781edbc"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetPosX" ref="ddd48392a778ada1e0153ddcc781edbc" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosX           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets horizontal position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="a20c6859e00c881a7db6fa3259a33e51"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetPosY" ref="a20c6859e00c881a7db6fa3259a33e51" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosY           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets vertical position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="e9331edc9bb097dd99556ee27735710c"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::SetSize" ref="e9331edc9bb097dd99556ee27735710c" args="(in double theWidth, in double theHeight)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetSize           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theWidth</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theHeight</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the size of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theWidth</em>&nbsp;</td><td>Width of this presentable object. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theHeight</em>&nbsp;</td><td>Height of this presentable object. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="fb5593e03da36959bcd7ac2e25c387ef"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetWidth" ref="fb5593e03da36959bcd7ac2e25c387ef" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetWidth           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the width of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the width of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="75cb62b325060b5d268159e53e7a9de4"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetHeight" ref="75cb62b325060b5d268159e53e7a9de4" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetHeight           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the height of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the height of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="caf0e43c7f94f9c3c2a2482a1ab0db06"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::SetNbColors" ref="caf0e43c7f94f9c3c2a2482a1ab0db06" args="(in long theNbColors)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetNbColors           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbColors</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of colors which will be used for presentation of this presentable object. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbColors</em>&nbsp;</td><td>A long value defining the number of colors. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="2164a8ce3d888c7ac6b3644c0b7347c2"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetNbColors" ref="2164a8ce3d888c7ac6b3644c0b7347c2" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetNbColors           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of colors which will be used for visualization of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of colors which will be used for visualization of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="21dd013631e20ce6c72368e7ac568802"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::SetLabels" ref="21dd013631e20ce6c72368e7ac568802" args="(in long theNbLabels)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetLabels           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbLabels</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbLabels</em>&nbsp;</td><td>A long value defining the number of labels. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="085c23900301c3a4eb274584ee7d8ca6"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetLabels" ref="085c23900301c3a4eb274584ee7d8ca6" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetLabels           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of labels which will be used for indication of color gradation of the scalar bar. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="449207525dc96443b81f42cef38047dd"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::SetTitle" ref="449207525dc96443b81f42cef38047dd" args="(in string theName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetTitle           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the title of the scalar bar. By default - the name of the selected result is used. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theName</em>&nbsp;</td><td>String parameter defining the name of the scalar bar. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="3618c82757da8f8471dd20ab13cbc27b"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetTitle" ref="3618c82757da8f8471dd20ab13cbc27b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.ColoredPrs3d.GetTitle           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the title of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="72fe2019f5aa9bb1c5e19b67a51d7f71"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::SetBarOrientation" ref="72fe2019f5aa9bb1c5e19b67a51d7f71" args="(in Orientation theOrientation)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a>&nbsp;</td>
-          <td class="paramname"> <em>theOrientation</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of orientation of the scalar bar (to provide backward compatibility). <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theOrientation</em>&nbsp;</td><td>This parameter defines the orientation of the scalar bar. It is taken from the <em>Orientaton</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8422578b257adc48e4c9e50d697e0364"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetBarOrientation" ref="8422578b257adc48e4c9e50d697e0364" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> VISU.ColoredPrs3d.GetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of orientation of the scalar bar (to provide backward compatibility). 
-</div>
-</div><p>
-<a class="anchor" name="347812588c93643946de30dfc62cf765"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::SetOffset" ref="347812588c93643946de30dfc62cf765" args="(in float theDx, in float theDy, in float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.SetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Move the 3D presentation according to the given offset parameters 
-</div>
-</div><p>
-<a class="anchor" name="fec212476adf7396e8672ae1c3e7fb78"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetOffset" ref="fec212476adf7396e8672ae1c3e7fb78" args="(out float theDx, out float theDy, out float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.GetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets offset parameters for the 3D presentation 
-</div>
-</div><p>
-<a class="anchor" name="b02c2fa9085433d4f3e50bf052471139"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetMemorySize" ref="b02c2fa9085433d4f3e50bf052471139" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">float VISU.Prs3d.GetMemorySize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets memory size actually used by the presentation (Mb). 
-</div>
-</div><p>
-<a class="anchor" name="7d053f4324b26edd325024cd45424f13"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::RemoveFromStudy" ref="7d053f4324b26edd325024cd45424f13" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.RemovableObject.RemoveFromStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove object from study. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::ScalarMapOnDeformedShape::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:31:04 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ScalarMapOnDeformedShape__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ScalarMapOnDeformedShape__inherit__graph.jpg
deleted file mode 100644 (file)
index 0418834..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ScalarMapOnDeformedShape__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ScalarMap__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ScalarMap__inherit__graph.jpg
deleted file mode 100644 (file)
index 50edc96..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ScalarMap__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1StreamLines.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1StreamLines.html
deleted file mode 100644 (file)
index 250964c..0000000
+++ /dev/null
@@ -1,1276 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1StreamLines.html">StreamLines</a></div>
-<h1>VISU.StreamLines Interface Reference</h1><!-- doxytag: class="VISU::StreamLines" --><!-- doxytag: inherits="VISU::DeformedShape" -->Interface of the stream lines representation.  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.StreamLines:<p><center><img src="interfaceVISU_1_1StreamLines__inherit__graph.jpg" border="0" usemap="#VISU_8StreamLines__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8StreamLines__inherit__map">
-<area href="interfaceVISU_1_1DeformedShape.html" shape="rect" coords="94,457,257,481" alt="">
-<area href="interfaceVISU_1_1ScalarMap.html" shape="rect" coords="113,382,238,406" alt="">
-<area href="interfaceVISU_1_1ColoredPrs3d.html" shape="rect" coords="104,307,248,331" alt="">
-<area href="interfaceVISU_1_1Prs3d.html" shape="rect" coords="129,233,222,257" alt="">
-<area href="interfaceVISU_1_1PrsObject.html" shape="rect" coords="34,158,154,182" alt="">
-<area href="interfaceVISU_1_1RemovableObject.html" shape="rect" coords="8,83,181,107" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="50,9,138,33" alt="">
-<area href="classSALOME_1_1GenericObj.html" shape="rect" coords="178,158,336,182" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1StreamLines.html#eb5ea61e5926af11505a39b184fda838834898b35e8f29567952756e483cbe9b">FORWARD</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1StreamLines.html#eb5ea61e5926af11505a39b184fda838d90541af1c00da70065a1c52b6fc14e3">BACKWARD</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1StreamLines.html#eb5ea61e5926af11505a39b184fda838366218cc79d597cf5cfe8cf56e71f845">BOTH</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1StreamLines.html#eb5ea61e5926af11505a39b184fda838">Direction</a> { <a class="el" href="interfaceVISU_1_1StreamLines.html#eb5ea61e5926af11505a39b184fda838834898b35e8f29567952756e483cbe9b">FORWARD</a>, 
-<a class="el" href="interfaceVISU_1_1StreamLines.html#eb5ea61e5926af11505a39b184fda838d90541af1c00da70065a1c52b6fc14e3">BACKWARD</a>, 
-<a class="el" href="interfaceVISU_1_1StreamLines.html#eb5ea61e5926af11505a39b184fda838366218cc79d597cf5cfe8cf56e71f845">BOTH</a>
- }</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72">HORIZONTAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d">VERTICAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> { <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72">HORIZONTAL</a>, 
-<a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d">VERTICAL</a>
- }</td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1StreamLines.html#b521f0fe19c7043743b57981e7982396">SetParams</a> (in double theIntStep, in double thePropogationTime, in double theStepLength, in <a class="el" href="interfaceVISU_1_1Prs3d.html">Prs3d</a> thePrs3d, in double thePercents, in <a class="el" href="interfaceVISU_1_1StreamLines.html#eb5ea61e5926af11505a39b184fda838">Direction</a> theDirection)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1StreamLines.html#23ce8756ecae51887ccb67664734bfa2">GetIntegrationStep</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1StreamLines.html#948ee8d107d0eebd4b000b55b6551549">GetPropagationTime</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1StreamLines.html#f362dc82d018b101169a2c8f0a1660cc">GetStepLength</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Prs3d.html">Prs3d</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1StreamLines.html#dbdd06ad2501a1baca93cd46e8444d96">GetSource</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1StreamLines.html#55506f23b9d8e9429454eb893605e0ad">GetUsedPoints</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1StreamLines.html#eb5ea61e5926af11505a39b184fda838">Direction</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1StreamLines.html#698159573cf111963a0b52369bbf24e0">GetDirection</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1DeformedShape.html#8fec704a5438549c0f2cd7a94260c1ed">SetScale</a> (in double theScale)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1DeformedShape.html#11175320f4447acfcf1015573cadc053">GetScale</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1DeformedShape.html#070cfdada47826feb248b649183e4c75">IsColored</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1DeformedShape.html#6f4d04a7028c9f2e1f166c8cb8b4f428">ShowColored</a> (in boolean theColored)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">SALOMEDS::Color&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1DeformedShape.html#1ade0c34dd1c21936f0f518d7082eb34">GetColor</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1DeformedShape.html#461232d5358160cb1183a08d85ce1572">SetColor</a> (in SALOMEDS::Color theColor)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#533517f061d61d34128a7ebd40ec3df2">SetScaling</a> (in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> theScaling)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#af368a29e0046f847a2af205e7040c23">GetScaling</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#76016f8035d5fb342c64b13ca2e30a66">SetRange</a> (in double theMin, in double theMax)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#39afc84381d63d9d8f77a37b86e36e5e">SetSourceRange</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#04340c7d752c439d0715da0c84a3a9c2">AddMeshOnGroup</a> (in string theGroupName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#11ff37051db7278522d4f55a104ad1de">RemoveAllGeom</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#0cb01513d53cac1cf26699344580962a">SetScalarMode</a> (in long theScalarMode)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#bd7047f0543f356e7e0853285679c8a0">GetScalarMode</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#df97f8522a471c2e90470584cf7c92d9">GetMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#294cd1fcd6a6c21d76a6d03dc28b5a85">GetMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ff19e0cdd15257ff97b65daf0fae8d57">GetSourceMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#c559644dd49a59f28a7ae5047da2b01b">GetSourceMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e0604356d4ef90ad08cf001f109e1153">IsRangeFixed</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e5d7bfff180529eedad1a140e5a449c3">SetPosition</a> (in double X, in double Y)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Position of the scalar bar.  <a href="#e5d7bfff180529eedad1a140e5a449c3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ddd48392a778ada1e0153ddcc781edbc">GetPosX</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#a20c6859e00c881a7db6fa3259a33e51">GetPosY</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e9331edc9bb097dd99556ee27735710c">SetSize</a> (in double theWidth, in double theHeight)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Size of this presentable object.  <a href="#e9331edc9bb097dd99556ee27735710c"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#fb5593e03da36959bcd7ac2e25c387ef">GetWidth</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#75cb62b325060b5d268159e53e7a9de4">GetHeight</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#caf0e43c7f94f9c3c2a2482a1ab0db06">SetNbColors</a> (in long theNbColors)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#2164a8ce3d888c7ac6b3644c0b7347c2">GetNbColors</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#21dd013631e20ce6c72368e7ac568802">SetLabels</a> (in long theNbLabels)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#085c23900301c3a4eb274584ee7d8ca6">GetLabels</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#449207525dc96443b81f42cef38047dd">SetTitle</a> (in string theName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#3618c82757da8f8471dd20ab13cbc27b">GetTitle</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#72fe2019f5aa9bb1c5e19b67a51d7f71">SetBarOrientation</a> (in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> theOrientation)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#8422578b257adc48e4c9e50d697e0364">GetBarOrientation</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#347812588c93643946de30dfc62cf765">SetOffset</a> (in float theDx, in float theDy, in float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#fec212476adf7396e8672ae1c3e7fb78">GetOffset</a> (out float theDx, out float theDy, out float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#b02c2fa9085433d4f3e50bf052471139">GetMemorySize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html#7d053f4324b26edd325024cd45424f13">RemoveFromStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-This interface contains presentation parameters of stream lines presentations. <br>
-Stream lines is a type of presentation transforming into lines the cells with vectors having most similar direction. A stream line can be thought of as the path that a massless particle takes in a vector field. Streamlines are used to convey the structure of a vector field. Usually streamlines are created to explore the most interesting features in the field. 
-<p>
-<hr><h2>Member Enumeration Documentation</h2>
-<a class="anchor" name="eb5ea61e5926af11505a39b184fda838"></a><!-- doxytag: member="VISU::StreamLines::Direction" ref="eb5ea61e5926af11505a39b184fda838" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1StreamLines.html#eb5ea61e5926af11505a39b184fda838">VISU::StreamLines::Direction</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-This enumerations contains a set of elements necessary for definition of direction of the stream lines. <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="eb5ea61e5926af11505a39b184fda838834898b35e8f29567952756e483cbe9b"></a><!-- doxytag: member="FORWARD" ref="eb5ea61e5926af11505a39b184fda838834898b35e8f29567952756e483cbe9b" args="" -->FORWARD</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="eb5ea61e5926af11505a39b184fda838d90541af1c00da70065a1c52b6fc14e3"></a><!-- doxytag: member="BACKWARD" ref="eb5ea61e5926af11505a39b184fda838d90541af1c00da70065a1c52b6fc14e3" args="" -->BACKWARD</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="eb5ea61e5926af11505a39b184fda838366218cc79d597cf5cfe8cf56e71f845"></a><!-- doxytag: member="BOTH" ref="eb5ea61e5926af11505a39b184fda838366218cc79d597cf5cfe8cf56e71f845" args="" -->BOTH</em>&nbsp;</td><td>
-</td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="12f791060a4820aca541565c57ce715c"></a><!-- doxytag: member="VISU::StreamLines::Orientation" ref="12f791060a4820aca541565c57ce715c" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">VISU::ColoredPrs3d::Orientation</a><code> [inherited]</code>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Orientation of the scalar bar (to provide backward compatibility). <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72"></a><!-- doxytag: member="HORIZONTAL" ref="12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72" args="" -->HORIZONTAL</em>&nbsp;</td><td>
-Horizontal orientation of the scalar bar. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d"></a><!-- doxytag: member="VERTICAL" ref="12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d" args="" -->VERTICAL</em>&nbsp;</td><td>
-Vertical orientation of the scalar bar. </td></tr>
-</table>
-</dl>
-
-<p>
-Implemented in <a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713">VISU.Plot3D</a>, and <a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">VISU.CutPlanes</a>.
-</div>
-</div><p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="b521f0fe19c7043743b57981e7982396"></a><!-- doxytag: member="VISU::StreamLines::SetParams" ref="b521f0fe19c7043743b57981e7982396" args="(in double theIntStep, in double thePropogationTime, in double theStepLength, in Prs3d thePrs3d, in double thePercents, in Direction theDirection)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.StreamLines.SetParams           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theIntStep</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>thePropogationTime</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theStepLength</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Prs3d.html">Prs3d</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrs3d</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>thePercents</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1StreamLines.html#eb5ea61e5926af11505a39b184fda838">Direction</a>&nbsp;</td>
-          <td class="paramname"> <em>theDirection</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the parameters of the stream lines presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theIntStep</em>&nbsp;</td><td>Inegration step is a parameter of smoothness of the stream lines. This parameter defines the accuracy of construction of the streamlines. A smaller value of this parameter allows to construct smoother streamlines (at the cost of more computation time). </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>thePropogationTime</em>&nbsp;</td><td>This parameter controls the maximum length of the stream line (measured in units of time). </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theStepLength</em>&nbsp;</td><td>This parameter defines the size of the output line segments that make up the streamline (which is represented as a polyline). </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>thePrs3d</em>&nbsp;</td><td>The source presentation. The points of the field located on this source presentation will serve as starting points for generation of stream lines. </td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Note:</b></dt><dd>If this parameter is not defined, your stream lines presentation will be generated on all points of the field. </dd></dl>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePercents</em>&nbsp;</td><td>This parameter defines the quantity of points of the field (from 0 to 100%) which will be used as starting points for construction of the stream lines. Thus, the value of this parameter can vary from 0 to 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theDirection</em>&nbsp;</td><td>Direction of the stream lines (Forward, Backward or Both). </td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>True if all parameters are properly set. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="23ce8756ecae51887ccb67664734bfa2"></a><!-- doxytag: member="VISU::StreamLines::GetIntegrationStep" ref="23ce8756ecae51887ccb67664734bfa2" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.StreamLines.GetIntegrationStep           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the value of integration step of the stream lines presentation. 
-</div>
-</div><p>
-<a class="anchor" name="948ee8d107d0eebd4b000b55b6551549"></a><!-- doxytag: member="VISU::StreamLines::GetPropagationTime" ref="948ee8d107d0eebd4b000b55b6551549" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.StreamLines.GetPropagationTime           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the value of propagation time of the stream lines presentation. 
-</div>
-</div><p>
-<a class="anchor" name="f362dc82d018b101169a2c8f0a1660cc"></a><!-- doxytag: member="VISU::StreamLines::GetStepLength" ref="f362dc82d018b101169a2c8f0a1660cc" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.StreamLines.GetStepLength           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the value of step length of the stream lines presentation. 
-</div>
-</div><p>
-<a class="anchor" name="dbdd06ad2501a1baca93cd46e8444d96"></a><!-- doxytag: member="VISU::StreamLines::GetSource" ref="dbdd06ad2501a1baca93cd46e8444d96" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Prs3d.html">Prs3d</a> VISU.StreamLines.GetSource           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the source presentation used for generation of the stream lines. 
-</div>
-</div><p>
-<a class="anchor" name="55506f23b9d8e9429454eb893605e0ad"></a><!-- doxytag: member="VISU::StreamLines::GetUsedPoints" ref="55506f23b9d8e9429454eb893605e0ad" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.StreamLines.GetUsedPoints           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the quantity of points of the field used as starting points for generation of the stream lines presentation. 
-</div>
-</div><p>
-<a class="anchor" name="698159573cf111963a0b52369bbf24e0"></a><!-- doxytag: member="VISU::StreamLines::GetDirection" ref="698159573cf111963a0b52369bbf24e0" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1StreamLines.html#eb5ea61e5926af11505a39b184fda838">Direction</a> VISU.StreamLines.GetDirection           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the direction of the stream lines. 
-</div>
-</div><p>
-<a class="anchor" name="8fec704a5438549c0f2cd7a94260c1ed"></a><!-- doxytag: member="VISU::StreamLines::SetScale" ref="8fec704a5438549c0f2cd7a94260c1ed" args="(in double theScale)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.DeformedShape.SetScale           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theScale</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the scale of the presentatable object. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theScale</em>&nbsp;</td><td>Double value defining the scale of this presentable object. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="11175320f4447acfcf1015573cadc053"></a><!-- doxytag: member="VISU::StreamLines::GetScale" ref="11175320f4447acfcf1015573cadc053" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.DeformedShape.GetScale           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the scale of the presentatable object. 
-</div>
-</div><p>
-<a class="anchor" name="070cfdada47826feb248b649183e4c75"></a><!-- doxytag: member="VISU::StreamLines::IsColored" ref="070cfdada47826feb248b649183e4c75" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.DeformedShape.IsColored           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-This boolean method returns True if this deformed shape presentation is colored. 
-</div>
-</div><p>
-<a class="anchor" name="6f4d04a7028c9f2e1f166c8cb8b4f428"></a><!-- doxytag: member="VISU::StreamLines::ShowColored" ref="6f4d04a7028c9f2e1f166c8cb8b4f428" args="(in boolean theColored)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.DeformedShape.ShowColored           </td>
-          <td>(</td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>theColored</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Shows this presentation in colored mode. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theColored</em>&nbsp;</td><td>If this boolean parameter is True this presentable object will be shown in colored mode. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="1ade0c34dd1c21936f0f518d7082eb34"></a><!-- doxytag: member="VISU::StreamLines::GetColor" ref="1ade0c34dd1c21936f0f518d7082eb34" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">SALOMEDS::Color VISU.DeformedShape.GetColor           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the color of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>The color of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="461232d5358160cb1183a08d85ce1572"></a><!-- doxytag: member="VISU::StreamLines::SetColor" ref="461232d5358160cb1183a08d85ce1572" args="(in SALOMEDS::Color theColor)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.DeformedShape.SetColor           </td>
-          <td>(</td>
-          <td class="paramtype">in SALOMEDS::Color&nbsp;</td>
-          <td class="paramname"> <em>theColor</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the color of this presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theColor</em>&nbsp;</td><td>The color of this presentation. This parameter is taken from the <em>Color</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="533517f061d61d34128a7ebd40ec3df2"></a><!-- doxytag: member="VISU::StreamLines::SetScaling" ref="533517f061d61d34128a7ebd40ec3df2" args="(in Scaling theScaling)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetScaling           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td>
-          <td class="paramname"> <em>theScaling</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of scaling of the values reflected by the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theScaling</em>&nbsp;</td><td>The value of this parameter is taken from the <em>Scaling</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="af368a29e0046f847a2af205e7040c23"></a><!-- doxytag: member="VISU::StreamLines::GetScaling" ref="af368a29e0046f847a2af205e7040c23" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> VISU.ScalarMap.GetScaling           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of scaling of the values reflected by this presentation. 
-</div>
-</div><p>
-<a class="anchor" name="76016f8035d5fb342c64b13ca2e30a66"></a><!-- doxytag: member="VISU::StreamLines::SetRange" ref="76016f8035d5fb342c64b13ca2e30a66" args="(in double theMin, in double theMax)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetRange           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theMin</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theMax</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets scalar range - min and max boundaries of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theMin</em>&nbsp;</td><td>Min boundary of the scalar bar. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMax</em>&nbsp;</td><td>Max boundary of the scalar bar. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="39afc84381d63d9d8f77a37b86e36e5e"></a><!-- doxytag: member="VISU::StreamLines::SetSourceRange" ref="39afc84381d63d9d8f77a37b86e36e5e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetSourceRange           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets scalar range that corresponds to the source data. 
-</div>
-</div><p>
-<a class="anchor" name="04340c7d752c439d0715da0c84a3a9c2"></a><!-- doxytag: member="VISU::StreamLines::AddMeshOnGroup" ref="04340c7d752c439d0715da0c84a3a9c2" args="(in string theGroupName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.AddMeshOnGroup           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theGroupName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Add group as geometry of presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>- mesh name </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theGroupName</em>&nbsp;</td><td>- group name </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="11ff37051db7278522d4f55a104ad1de"></a><!-- doxytag: member="VISU::StreamLines::RemoveAllGeom" ref="11ff37051db7278522d4f55a104ad1de" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.RemoveAllGeom           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-PrsMerger method: Remove all groups.(The scalar map will be placed on all mesh). 
-</div>
-</div><p>
-<a class="anchor" name="0cb01513d53cac1cf26699344580962a"></a><!-- doxytag: member="VISU::StreamLines::SetScalarMode" ref="0cb01513d53cac1cf26699344580962a" args="(in long theScalarMode)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetScalarMode           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theScalarMode</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="bd7047f0543f356e7e0853285679c8a0"></a><!-- doxytag: member="VISU::StreamLines::GetScalarMode" ref="bd7047f0543f356e7e0853285679c8a0" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetScalarMode           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="df97f8522a471c2e90470584cf7c92d9"></a><!-- doxytag: member="VISU::StreamLines::GetMin" ref="df97f8522a471c2e90470584cf7c92d9" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="294cd1fcd6a6c21d76a6d03dc28b5a85"></a><!-- doxytag: member="VISU::StreamLines::GetMax" ref="294cd1fcd6a6c21d76a6d03dc28b5a85" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="ff19e0cdd15257ff97b65daf0fae8d57"></a><!-- doxytag: member="VISU::StreamLines::GetSourceMin" ref="ff19e0cdd15257ff97b65daf0fae8d57" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="c559644dd49a59f28a7ae5047da2b01b"></a><!-- doxytag: member="VISU::StreamLines::GetSourceMax" ref="c559644dd49a59f28a7ae5047da2b01b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="e0604356d4ef90ad08cf001f109e1153"></a><!-- doxytag: member="VISU::StreamLines::IsRangeFixed" ref="e0604356d4ef90ad08cf001f109e1153" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.ColoredPrs3d.IsRangeFixed           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Defines whether the scalar range corresponds to the source data or not. 
-</div>
-</div><p>
-<a class="anchor" name="e5d7bfff180529eedad1a140e5a449c3"></a><!-- doxytag: member="VISU::StreamLines::SetPosition" ref="e5d7bfff180529eedad1a140e5a449c3" args="(in double X, in double Y)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetPosition           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>X</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>Y</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the position of the scalar bar origin on the screen. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>X</em>&nbsp;</td><td>Horizontal position. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>Y</em>&nbsp;</td><td>Vertical position. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="ddd48392a778ada1e0153ddcc781edbc"></a><!-- doxytag: member="VISU::StreamLines::GetPosX" ref="ddd48392a778ada1e0153ddcc781edbc" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosX           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets horizontal position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="a20c6859e00c881a7db6fa3259a33e51"></a><!-- doxytag: member="VISU::StreamLines::GetPosY" ref="a20c6859e00c881a7db6fa3259a33e51" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosY           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets vertical position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="e9331edc9bb097dd99556ee27735710c"></a><!-- doxytag: member="VISU::StreamLines::SetSize" ref="e9331edc9bb097dd99556ee27735710c" args="(in double theWidth, in double theHeight)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetSize           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theWidth</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theHeight</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the size of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theWidth</em>&nbsp;</td><td>Width of this presentable object. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theHeight</em>&nbsp;</td><td>Height of this presentable object. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="fb5593e03da36959bcd7ac2e25c387ef"></a><!-- doxytag: member="VISU::StreamLines::GetWidth" ref="fb5593e03da36959bcd7ac2e25c387ef" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetWidth           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the width of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the width of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="75cb62b325060b5d268159e53e7a9de4"></a><!-- doxytag: member="VISU::StreamLines::GetHeight" ref="75cb62b325060b5d268159e53e7a9de4" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetHeight           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the height of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the height of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="caf0e43c7f94f9c3c2a2482a1ab0db06"></a><!-- doxytag: member="VISU::StreamLines::SetNbColors" ref="caf0e43c7f94f9c3c2a2482a1ab0db06" args="(in long theNbColors)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetNbColors           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbColors</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of colors which will be used for presentation of this presentable object. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbColors</em>&nbsp;</td><td>A long value defining the number of colors. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="2164a8ce3d888c7ac6b3644c0b7347c2"></a><!-- doxytag: member="VISU::StreamLines::GetNbColors" ref="2164a8ce3d888c7ac6b3644c0b7347c2" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetNbColors           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of colors which will be used for visualization of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of colors which will be used for visualization of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="21dd013631e20ce6c72368e7ac568802"></a><!-- doxytag: member="VISU::StreamLines::SetLabels" ref="21dd013631e20ce6c72368e7ac568802" args="(in long theNbLabels)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetLabels           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbLabels</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbLabels</em>&nbsp;</td><td>A long value defining the number of labels. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="085c23900301c3a4eb274584ee7d8ca6"></a><!-- doxytag: member="VISU::StreamLines::GetLabels" ref="085c23900301c3a4eb274584ee7d8ca6" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetLabels           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of labels which will be used for indication of color gradation of the scalar bar. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="449207525dc96443b81f42cef38047dd"></a><!-- doxytag: member="VISU::StreamLines::SetTitle" ref="449207525dc96443b81f42cef38047dd" args="(in string theName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetTitle           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the title of the scalar bar. By default - the name of the selected result is used. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theName</em>&nbsp;</td><td>String parameter defining the name of the scalar bar. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="3618c82757da8f8471dd20ab13cbc27b"></a><!-- doxytag: member="VISU::StreamLines::GetTitle" ref="3618c82757da8f8471dd20ab13cbc27b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.ColoredPrs3d.GetTitle           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the title of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="72fe2019f5aa9bb1c5e19b67a51d7f71"></a><!-- doxytag: member="VISU::StreamLines::SetBarOrientation" ref="72fe2019f5aa9bb1c5e19b67a51d7f71" args="(in Orientation theOrientation)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a>&nbsp;</td>
-          <td class="paramname"> <em>theOrientation</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of orientation of the scalar bar (to provide backward compatibility). <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theOrientation</em>&nbsp;</td><td>This parameter defines the orientation of the scalar bar. It is taken from the <em>Orientaton</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8422578b257adc48e4c9e50d697e0364"></a><!-- doxytag: member="VISU::StreamLines::GetBarOrientation" ref="8422578b257adc48e4c9e50d697e0364" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> VISU.ColoredPrs3d.GetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of orientation of the scalar bar (to provide backward compatibility). 
-</div>
-</div><p>
-<a class="anchor" name="347812588c93643946de30dfc62cf765"></a><!-- doxytag: member="VISU::StreamLines::SetOffset" ref="347812588c93643946de30dfc62cf765" args="(in float theDx, in float theDy, in float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.SetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Move the 3D presentation according to the given offset parameters 
-</div>
-</div><p>
-<a class="anchor" name="fec212476adf7396e8672ae1c3e7fb78"></a><!-- doxytag: member="VISU::StreamLines::GetOffset" ref="fec212476adf7396e8672ae1c3e7fb78" args="(out float theDx, out float theDy, out float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.GetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets offset parameters for the 3D presentation 
-</div>
-</div><p>
-<a class="anchor" name="b02c2fa9085433d4f3e50bf052471139"></a><!-- doxytag: member="VISU::StreamLines::GetMemorySize" ref="b02c2fa9085433d4f3e50bf052471139" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">float VISU.Prs3d.GetMemorySize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets memory size actually used by the presentation (Mb). 
-</div>
-</div><p>
-<a class="anchor" name="7d053f4324b26edd325024cd45424f13"></a><!-- doxytag: member="VISU::StreamLines::RemoveFromStudy" ref="7d053f4324b26edd325024cd45424f13" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.RemovableObject.RemoveFromStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove object from study. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::StreamLines::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::StreamLines::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:31:10 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1StreamLines__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1StreamLines__inherit__graph.jpg
deleted file mode 100644 (file)
index 9d1b480..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1StreamLines__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Table.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Table.html
deleted file mode 100644 (file)
index 5077e25..0000000
+++ /dev/null
@@ -1,278 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1Table.html">Table</a></div>
-<h1>VISU.Table Interface Reference</h1><!-- doxytag: class="VISU::Table" --><!-- doxytag: inherits="VISU::PrsObject" -->Table representation interface  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.Table:<p><center><img src="interfaceVISU_1_1Table__inherit__graph.jpg" border="0" usemap="#VISU_8Table__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8Table__inherit__map">
-<area href="interfaceVISU_1_1PrsObject.html" shape="rect" coords="34,158,154,182" alt="">
-<area href="interfaceVISU_1_1RemovableObject.html" shape="rect" coords="7,84,181,108" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="50,9,138,33" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Table.html#5d1ad9cbca7f19e83e18e3ba4189a3c8f3ff23af249c3189a77065a21a3843b9">HORIZONTAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Table.html#5d1ad9cbca7f19e83e18e3ba4189a3c8b9a6f8cd46d5e7c5f93e384e7654ef83">VERTIACAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Table.html#5d1ad9cbca7f19e83e18e3ba4189a3c8">Orientation</a> { <a class="el" href="interfaceVISU_1_1Table.html#5d1ad9cbca7f19e83e18e3ba4189a3c8f3ff23af249c3189a77065a21a3843b9">HORIZONTAL</a>, 
-<a class="el" href="interfaceVISU_1_1Table.html#5d1ad9cbca7f19e83e18e3ba4189a3c8b9a6f8cd46d5e7c5f93e384e7654ef83">VERTIACAL</a>
- }</td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Table.html#dbdd568ec9c6bd3891fc08121dd595dc">SetTitle</a> (in string theTitle)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Table.html#55050c9692b58a27bc064d4538537c05">GetTitle</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Table.html#3a81ffdc49eaeb8727fbbb775cb5c736">SetOrientation</a> (in <a class="el" href="interfaceVISU_1_1Table.html#5d1ad9cbca7f19e83e18e3ba4189a3c8">Orientation</a> theOrientation)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Table.html#5d1ad9cbca7f19e83e18e3ba4189a3c8">Orientation</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Table.html#2120cf9d13b881a96eb29b5adb3938ae">GetOrientation</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Table.html#84931397c1a308ad3e9d419afaf21bbe">GetNbRows</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Table.html#7ebcd4cdd52120527ab25dfa0e8d3838">GetNbColumns</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html#7d053f4324b26edd325024cd45424f13">RemoveFromStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-Presentation parameters of the Table view. 
-<p>
-<hr><h2>Member Enumeration Documentation</h2>
-<a class="anchor" name="5d1ad9cbca7f19e83e18e3ba4189a3c8"></a><!-- doxytag: member="VISU::Table::Orientation" ref="5d1ad9cbca7f19e83e18e3ba4189a3c8" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1Table.html#5d1ad9cbca7f19e83e18e3ba4189a3c8">VISU::Table::Orientation</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-This enumeration contains a set of elements defining the orientation of the table. <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="5d1ad9cbca7f19e83e18e3ba4189a3c8f3ff23af249c3189a77065a21a3843b9"></a><!-- doxytag: member="HORIZONTAL" ref="5d1ad9cbca7f19e83e18e3ba4189a3c8f3ff23af249c3189a77065a21a3843b9" args="" -->HORIZONTAL</em>&nbsp;</td><td>
-Horizontal orientation of the table. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="5d1ad9cbca7f19e83e18e3ba4189a3c8b9a6f8cd46d5e7c5f93e384e7654ef83"></a><!-- doxytag: member="VERTIACAL" ref="5d1ad9cbca7f19e83e18e3ba4189a3c8b9a6f8cd46d5e7c5f93e384e7654ef83" args="" -->VERTIACAL</em>&nbsp;</td><td>
-Vertical orientation of the table. </td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="dbdd568ec9c6bd3891fc08121dd595dc"></a><!-- doxytag: member="VISU::Table::SetTitle" ref="dbdd568ec9c6bd3891fc08121dd595dc" args="(in string theTitle)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Table.SetTitle           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theTitle</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the title of the table. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theTitle</em>&nbsp;</td><td>String parameter defining the title of this table. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="55050c9692b58a27bc064d4538537c05"></a><!-- doxytag: member="VISU::Table::GetTitle" ref="55050c9692b58a27bc064d4538537c05" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.Table.GetTitle           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the title of the table. <dl compact><dt><b>Returns:</b></dt><dd>A string value containing the title of the table. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="3a81ffdc49eaeb8727fbbb775cb5c736"></a><!-- doxytag: member="VISU::Table::SetOrientation" ref="3a81ffdc49eaeb8727fbbb775cb5c736" args="(in Orientation theOrientation)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Table.SetOrientation           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Table.html#5d1ad9cbca7f19e83e18e3ba4189a3c8">Orientation</a>&nbsp;</td>
-          <td class="paramname"> <em>theOrientation</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets orientation of the table. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theOrientation</em>&nbsp;</td><td>This input parameter defines the orientation of the table. It is taken from the <em>Orientation</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="2120cf9d13b881a96eb29b5adb3938ae"></a><!-- doxytag: member="VISU::Table::GetOrientation" ref="2120cf9d13b881a96eb29b5adb3938ae" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Table.html#5d1ad9cbca7f19e83e18e3ba4189a3c8">Orientation</a> VISU.Table.GetOrientation           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets orientation of the table. <dl compact><dt><b>Returns:</b></dt><dd>Orientation of the table. The returned value will correspond to one of the elements the <em>Orientation</em> enumeration. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="84931397c1a308ad3e9d419afaf21bbe"></a><!-- doxytag: member="VISU::Table::GetNbRows" ref="84931397c1a308ad3e9d419afaf21bbe" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.Table.GetNbRows           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of rows of the table. <dl compact><dt><b>Returns:</b></dt><dd>Long value corresponding to the number of rows of the table </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="7ebcd4cdd52120527ab25dfa0e8d3838"></a><!-- doxytag: member="VISU::Table::GetNbColumns" ref="7ebcd4cdd52120527ab25dfa0e8d3838" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.Table.GetNbColumns           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of columns of the table. <dl compact><dt><b>Returns:</b></dt><dd>Long value corresponding to the number of columns of the table </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="7d053f4324b26edd325024cd45424f13"></a><!-- doxytag: member="VISU::Table::RemoveFromStudy" ref="7d053f4324b26edd325024cd45424f13" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.RemovableObject.RemoveFromStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove object from study. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::Table::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::Table::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:30:48 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1TableView.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1TableView.html
deleted file mode 100644 (file)
index 6e183f1..0000000
+++ /dev/null
@@ -1,1075 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1TableView.html">TableView</a></div>
-<h1>VISU.TableView Interface Reference</h1><!-- doxytag: class="VISU::TableView" --><!-- doxytag: inherits="VISU::View" -->Interface of the <a class="el" href="interfaceVISU_1_1Table.html">Table</a> view.  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.TableView:<p><center><img src="interfaceVISU_1_1TableView__inherit__graph.jpg" border="0" usemap="#VISU_8TableView__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8TableView__inherit__map">
-<area href="interfaceVISU_1_1View.html" shape="rect" coords="25,84,113,108" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="25,9,113,33" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce2131f7dc0fbe16bf5950fa21dfe7bec8f1f">OBJECTBROWSER</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213e07a7b41660016da6e4790a61e40e70b">VIEWER</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce21396ab6335f0ee2092ee104ffad56775b4">PYTHON</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213a84ae45219effaca695aa571bf695fc4">MESSAGES</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be01545fe0740c7cad5e89fedcad2b26806749">TOP</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be015493a1dab2e71eac6a554710428eae5065">CENTER</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be01544f8fb8916808919e85dbad251c346f22">BOTTOM</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154890e1c4cdf828c641a0d36f8b5587edc">RIGHT</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be015436e2382243a4b7d321dd80242e0b2b47">LEFT</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">ViewRepresentation</a> { <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce2131f7dc0fbe16bf5950fa21dfe7bec8f1f">OBJECTBROWSER</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213e07a7b41660016da6e4790a61e40e70b">VIEWER</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce21396ab6335f0ee2092ee104ffad56775b4">PYTHON</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213a84ae45219effaca695aa571bf695fc4">MESSAGES</a>
- }</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">ViewRepresentation enumeration  <a href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">ViewPosition</a> { <br>
-&nbsp;&nbsp;<a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be01545fe0740c7cad5e89fedcad2b26806749">TOP</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be015493a1dab2e71eac6a554710428eae5065">CENTER</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be01544f8fb8916808919e85dbad251c346f22">BOTTOM</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154890e1c4cdf828c641a0d36f8b5587edc">RIGHT</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be015436e2382243a4b7d321dd80242e0b2b47">LEFT</a>
-<br>
- }</td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#d4c3991dc0e4f751e23b17261d52178d">ShowPart</a> (in <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">ViewRepresentation</a> ViewRepr, in boolean state)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#2d790758989030510272a71fc5c26ecb">IsPartShown</a> (in <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">ViewRepresentation</a> ViewRepr)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#454584a30406826c35f2dcc88ed5e285">SplitRight</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Split workarea of this view.  <a href="#454584a30406826c35f2dcc88ed5e285"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#06c29b07b09c2e669fa5d37adbad5c89">SplitLeft</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Split workarea of this view.  <a href="#06c29b07b09c2e669fa5d37adbad5c89"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#fab9ec5d12c93924e3fd6600d460738e">SplitBottom</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Split workarea of this view.  <a href="#fab9ec5d12c93924e3fd6600d460738e"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#e399ee4c9665a7b496371f938d3e7fd3">SplitTop</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Split workarea of this view.  <a href="#e399ee4c9665a7b496371f938d3e7fd3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#c7cb8f7af67a6fc161ce1e1266cf6078">OnTop</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#d24a4fd9604a6b2da4d9f265b87b73e7">Attract</a> (in <a class="el" href="interfaceVISU_1_1View.html">View</a> theView)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#81523793df94f223086e2dfb7a9bde44">AttractAll</a> (in <a class="el" href="interfaceVISU_1_1View.html">View</a> theView)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#c51e42d9554731639821248cf5c51789">SetRelativePositionInSplitter</a> (in double thePosition)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#094aac0197dd3a66e8482ac9067c1200">SetRelativeSizeInSplitter</a> (in double theSize)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#5a6f6a0f2853ec6dbce40f8a0f058e67">SetRelativePositionX</a> (in double thePosition)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#d538c2c385e0542b0a04d1161833c9a7">SetRelativePositionY</a> (in double thePosition)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#1a82e7fd3d5b3c79690bfb17eeb19e8c">SetRelativeSizeX</a> (in double theSize)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#773d3140097f5d20568bb5bf7a244962">SetRelativeSizeY</a> (in double theSize)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#cd6524625b6ca8e3c49022459f106bed">SetViewWidth</a> (in long Width)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#b07ab6237cfdd70884a038af48fd7e72">SetViewHeight</a> (in long Height)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#904d6945f16117519d74dda54cf0aef0">GetViewWidth</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#56f2a1d86c80ebc81f9a0db71e25d3df">GetViewHeight</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#68a47a614cafe868ab89fad6ce117860">SetViewPositionHorizontal</a> (in <a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">ViewPosition</a> ViewPosHor)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#8df1d9425b90f9dd21c36acc3f9c444b">SetViewPositionVertical</a> (in <a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">ViewPosition</a> ViewPosVer)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#9357df128dabcd74c4d54ad04eda0d49">SetRelativePosition</a> (in double x, in double y)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#c2049cff1e9ee54312bd267154d9b69a">SetRelativeSize</a> (in double x, in double y)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#f52e1696f127af6ddffb7cb012411a26">Minimize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#71b5b17b0376653363709077e1597616">Restore</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#91cde31fe400a5f82c8bdbe7db3b5ef7">Maximize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#4071ba1dd44364ae0d8cc337a7544921">SetTitle</a> (in string theTitle)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#6930e36faf0c5628d5b5ad9dc20148d5">GetTitle</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#ff8571273f82a27f46d43ea0419bafb1">SetBackground</a> (in SALOMEDS::Color theColor)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">SALOMEDS::Color&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a58313a02ba9c2a872740392197c78e2">GetBackground</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#d9e3dfc74c7239ac9694fc41e8dfb95e">EraseAll</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#db66b95801ce72fc207dbae4e9ada32c">DisplayAll</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#c7f48239fd32867a22fa772fe258de3e">Erase</a> (in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a> thePrsObj)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61228d03b32683bded67da12990210b6">Display</a> (in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a> thePrsObj)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#14985b21e1c7b6afdddafa2f4d6f93b4">DisplayOnly</a> (in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a> thePrsObj)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#8090c783e2014156227700b014ad8c29">Update</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#be39869fe3484a4e2de0626254d9eeae">SavePicture</a> (in string theFileName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-This interface is used for creation of a view necessary for presentation of a table. 
-<p>
-<hr><h2>Member Enumeration Documentation</h2>
-<a class="anchor" name="a666392d875e267305ad2694ce3ce213"></a><!-- doxytag: member="VISU::TableView::ViewRepresentation" ref="a666392d875e267305ad2694ce3ce213" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">VISU::View::ViewRepresentation</a><code> [inherited]</code>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-displaying part ("ALL" isn't setable) <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="a666392d875e267305ad2694ce3ce2131f7dc0fbe16bf5950fa21dfe7bec8f1f"></a><!-- doxytag: member="OBJECTBROWSER" ref="a666392d875e267305ad2694ce3ce2131f7dc0fbe16bf5950fa21dfe7bec8f1f" args="" -->OBJECTBROWSER</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="a666392d875e267305ad2694ce3ce213e07a7b41660016da6e4790a61e40e70b"></a><!-- doxytag: member="VIEWER" ref="a666392d875e267305ad2694ce3ce213e07a7b41660016da6e4790a61e40e70b" args="" -->VIEWER</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="a666392d875e267305ad2694ce3ce21396ab6335f0ee2092ee104ffad56775b4"></a><!-- doxytag: member="PYTHON" ref="a666392d875e267305ad2694ce3ce21396ab6335f0ee2092ee104ffad56775b4" args="" -->PYTHON</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="a666392d875e267305ad2694ce3ce213a84ae45219effaca695aa571bf695fc4"></a><!-- doxytag: member="MESSAGES" ref="a666392d875e267305ad2694ce3ce213a84ae45219effaca695aa571bf695fc4" args="" -->MESSAGES</em>&nbsp;</td><td>
-</td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="61d3152c0ff5d024f84b2fe149be0154"></a><!-- doxytag: member="VISU::TableView::ViewPosition" ref="61d3152c0ff5d024f84b2fe149be0154" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">VISU::View::ViewPosition</a><code> [inherited]</code>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-<dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="61d3152c0ff5d024f84b2fe149be01545fe0740c7cad5e89fedcad2b26806749"></a><!-- doxytag: member="TOP" ref="61d3152c0ff5d024f84b2fe149be01545fe0740c7cad5e89fedcad2b26806749" args="" -->TOP</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="61d3152c0ff5d024f84b2fe149be015493a1dab2e71eac6a554710428eae5065"></a><!-- doxytag: member="CENTER" ref="61d3152c0ff5d024f84b2fe149be015493a1dab2e71eac6a554710428eae5065" args="" -->CENTER</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="61d3152c0ff5d024f84b2fe149be01544f8fb8916808919e85dbad251c346f22"></a><!-- doxytag: member="BOTTOM" ref="61d3152c0ff5d024f84b2fe149be01544f8fb8916808919e85dbad251c346f22" args="" -->BOTTOM</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="61d3152c0ff5d024f84b2fe149be0154890e1c4cdf828c641a0d36f8b5587edc"></a><!-- doxytag: member="RIGHT" ref="61d3152c0ff5d024f84b2fe149be0154890e1c4cdf828c641a0d36f8b5587edc" args="" -->RIGHT</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="61d3152c0ff5d024f84b2fe149be015436e2382243a4b7d321dd80242e0b2b47"></a><!-- doxytag: member="LEFT" ref="61d3152c0ff5d024f84b2fe149be015436e2382243a4b7d321dd80242e0b2b47" args="" -->LEFT</em>&nbsp;</td><td>
-</td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="d4c3991dc0e4f751e23b17261d52178d"></a><!-- doxytag: member="VISU::TableView::ShowPart" ref="d4c3991dc0e4f751e23b17261d52178d" args="(in ViewRepresentation ViewRepr, in boolean state)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.ShowPart           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">ViewRepresentation</a>&nbsp;</td>
-          <td class="paramname"> <em>ViewRepr</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>state</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="2d790758989030510272a71fc5c26ecb"></a><!-- doxytag: member="VISU::TableView::IsPartShown" ref="2d790758989030510272a71fc5c26ecb" args="(in ViewRepresentation ViewRepr)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.View.IsPartShown           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">ViewRepresentation</a>&nbsp;</td>
-          <td class="paramname"> <em>ViewRepr</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="454584a30406826c35f2dcc88ed5e285"></a><!-- doxytag: member="VISU::TableView::SplitRight" ref="454584a30406826c35f2dcc88ed5e285" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SplitRight           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Horizontally split workarea of this view. This view is moved in a new right area. 
-</div>
-</div><p>
-<a class="anchor" name="06c29b07b09c2e669fa5d37adbad5c89"></a><!-- doxytag: member="VISU::TableView::SplitLeft" ref="06c29b07b09c2e669fa5d37adbad5c89" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SplitLeft           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Horizontally split workarea of this view. This view stays in an old left area, others are moved in a new right area. 
-</div>
-</div><p>
-<a class="anchor" name="fab9ec5d12c93924e3fd6600d460738e"></a><!-- doxytag: member="VISU::TableView::SplitBottom" ref="fab9ec5d12c93924e3fd6600d460738e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SplitBottom           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Vertically split workarea of this view. This view is moved in a new bottom area. 
-</div>
-</div><p>
-<a class="anchor" name="e399ee4c9665a7b496371f938d3e7fd3"></a><!-- doxytag: member="VISU::TableView::SplitTop" ref="e399ee4c9665a7b496371f938d3e7fd3" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SplitTop           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Vertically split workarea of this view. This view stays in an old top area, others are moved in a new bottom area. 
-</div>
-</div><p>
-<a class="anchor" name="c7cb8f7af67a6fc161ce1e1266cf6078"></a><!-- doxytag: member="VISU::TableView::OnTop" ref="c7cb8f7af67a6fc161ce1e1266cf6078" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.OnTop           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Put this view window on top of its work area. 
-</div>
-</div><p>
-<a class="anchor" name="d24a4fd9604a6b2da4d9f265b87b73e7"></a><!-- doxytag: member="VISU::TableView::Attract" ref="d24a4fd9604a6b2da4d9f265b87b73e7" args="(in View theView)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Attract           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html">View</a>&nbsp;</td>
-          <td class="paramname"> <em>theView</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Put <em>theView</em> in workarea of this view right after it. If <em>theView</em> was alone in its workarea, workarea of <em>theView</em> will be destroyed. If <em>theView</em> was in the same workarea with this view, simple reordering will take place. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theView</em>&nbsp;</td><td>A view window to be attracted to this one. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="81523793df94f223086e2dfb7a9bde44"></a><!-- doxytag: member="VISU::TableView::AttractAll" ref="81523793df94f223086e2dfb7a9bde44" args="(in View theView)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.AttractAll           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html">View</a>&nbsp;</td>
-          <td class="paramname"> <em>theView</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Put all the view windows from workarea of <em>theView</em> in workarea of this view right after it. Workarea of <em>theView</em> will be destroyed. If <em>theView</em> was in the same workarea with this view, simple reordering will take place. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theView</em>&nbsp;</td><td>A view window to be attracted to this one together with all its workarea. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="c51e42d9554731639821248cf5c51789"></a><!-- doxytag: member="VISU::TableView::SetRelativePositionInSplitter" ref="c51e42d9554731639821248cf5c51789" args="(in double thePosition)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativePositionInSplitter           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>thePosition</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set position of this view window relatively its splitter. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePosition</em>&nbsp;</td><td>Desired position of this view window relatively its splitter. Meaningfull values lays in range [0..1].</td></tr>
-  </table>
-</dl>
-Direction of positioning is defined by the splitter orientation. 
-</div>
-</div><p>
-<a class="anchor" name="094aac0197dd3a66e8482ac9067c1200"></a><!-- doxytag: member="VISU::TableView::SetRelativeSizeInSplitter" ref="094aac0197dd3a66e8482ac9067c1200" args="(in double theSize)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativeSizeInSplitter           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theSize</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set size of this view window relatively its splitter. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theSize</em>&nbsp;</td><td>Desired size of this view window relatively its splitter. Meaningfull values lays in range [0..1].</td></tr>
-  </table>
-</dl>
-Direction of resizing is defined by the splitter orientation. 
-</div>
-</div><p>
-<a class="anchor" name="5a6f6a0f2853ec6dbce40f8a0f058e67"></a><!-- doxytag: member="VISU::TableView::SetRelativePositionX" ref="5a6f6a0f2853ec6dbce40f8a0f058e67" args="(in double thePosition)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativePositionX           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>thePosition</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set horizontal position of this view window relatively its workstack. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePosition</em>&nbsp;</td><td>Desired horizontal position of this view window relatively its workstack. Meaningfull values lays in range [0..1]. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="d538c2c385e0542b0a04d1161833c9a7"></a><!-- doxytag: member="VISU::TableView::SetRelativePositionY" ref="d538c2c385e0542b0a04d1161833c9a7" args="(in double thePosition)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativePositionY           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>thePosition</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set vertical position of this view window relatively its workstack. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePosition</em>&nbsp;</td><td>Desired vertical position of this view window relatively its workstack. Meaningfull values lays in range [0..1]. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="1a82e7fd3d5b3c79690bfb17eeb19e8c"></a><!-- doxytag: member="VISU::TableView::SetRelativeSizeX" ref="1a82e7fd3d5b3c79690bfb17eeb19e8c" args="(in double theSize)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativeSizeX           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theSize</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set horizontal size of this view window relatively its workstack. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theSize</em>&nbsp;</td><td>Desired horizontal size of this view window relatively its workstack. Meaningfull values lays in range [0..1]. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="773d3140097f5d20568bb5bf7a244962"></a><!-- doxytag: member="VISU::TableView::SetRelativeSizeY" ref="773d3140097f5d20568bb5bf7a244962" args="(in double theSize)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativeSizeY           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theSize</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set vertical size of this view window relatively its workstack. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theSize</em>&nbsp;</td><td>Desired vertical size of this view window relatively its workstack. Meaningfull values lays in range [0..1]. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="cd6524625b6ca8e3c49022459f106bed"></a><!-- doxytag: member="VISU::TableView::SetViewWidth" ref="cd6524625b6ca8e3c49022459f106bed" args="(in long Width)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetViewWidth           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>Width</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Old methods for view parameters management, they don't work now 
-</div>
-</div><p>
-<a class="anchor" name="b07ab6237cfdd70884a038af48fd7e72"></a><!-- doxytag: member="VISU::TableView::SetViewHeight" ref="b07ab6237cfdd70884a038af48fd7e72" args="(in long Height)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetViewHeight           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>Height</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="904d6945f16117519d74dda54cf0aef0"></a><!-- doxytag: member="VISU::TableView::GetViewWidth" ref="904d6945f16117519d74dda54cf0aef0" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.View.GetViewWidth           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="56f2a1d86c80ebc81f9a0db71e25d3df"></a><!-- doxytag: member="VISU::TableView::GetViewHeight" ref="56f2a1d86c80ebc81f9a0db71e25d3df" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.View.GetViewHeight           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="68a47a614cafe868ab89fad6ce117860"></a><!-- doxytag: member="VISU::TableView::SetViewPositionHorizontal" ref="68a47a614cafe868ab89fad6ce117860" args="(in ViewPosition ViewPosHor)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetViewPositionHorizontal           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">ViewPosition</a>&nbsp;</td>
-          <td class="paramname"> <em>ViewPosHor</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="8df1d9425b90f9dd21c36acc3f9c444b"></a><!-- doxytag: member="VISU::TableView::SetViewPositionVertical" ref="8df1d9425b90f9dd21c36acc3f9c444b" args="(in ViewPosition ViewPosVer)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetViewPositionVertical           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">ViewPosition</a>&nbsp;</td>
-          <td class="paramname"> <em>ViewPosVer</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="9357df128dabcd74c4d54ad04eda0d49"></a><!-- doxytag: member="VISU::TableView::SetRelativePosition" ref="9357df128dabcd74c4d54ad04eda0d49" args="(in double x, in double y)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativePosition           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="c2049cff1e9ee54312bd267154d9b69a"></a><!-- doxytag: member="VISU::TableView::SetRelativeSize" ref="c2049cff1e9ee54312bd267154d9b69a" args="(in double x, in double y)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativeSize           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="f52e1696f127af6ddffb7cb012411a26"></a><!-- doxytag: member="VISU::TableView::Minimize" ref="f52e1696f127af6ddffb7cb012411a26" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Minimize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="71b5b17b0376653363709077e1597616"></a><!-- doxytag: member="VISU::TableView::Restore" ref="71b5b17b0376653363709077e1597616" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Restore           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="91cde31fe400a5f82c8bdbe7db3b5ef7"></a><!-- doxytag: member="VISU::TableView::Maximize" ref="91cde31fe400a5f82c8bdbe7db3b5ef7" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Maximize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="4071ba1dd44364ae0d8cc337a7544921"></a><!-- doxytag: member="VISU::TableView::SetTitle" ref="4071ba1dd44364ae0d8cc337a7544921" args="(in string theTitle)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetTitle           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theTitle</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the title of the View frame. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theTitle</em>&nbsp;</td><td>String parameter defining the title of the View frame. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="6930e36faf0c5628d5b5ad9dc20148d5"></a><!-- doxytag: member="VISU::TableView::GetTitle" ref="6930e36faf0c5628d5b5ad9dc20148d5" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.View.GetTitle           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the title of the View frame. 
-</div>
-</div><p>
-<a class="anchor" name="ff8571273f82a27f46d43ea0419bafb1"></a><!-- doxytag: member="VISU::TableView::SetBackground" ref="ff8571273f82a27f46d43ea0419bafb1" args="(in SALOMEDS::Color theColor)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetBackground           </td>
-          <td>(</td>
-          <td class="paramtype">in SALOMEDS::Color&nbsp;</td>
-          <td class="paramname"> <em>theColor</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets background color of the View frame. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theColor</em>&nbsp;</td><td>Background color defined in <em>SALOMEDS.Color</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="a58313a02ba9c2a872740392197c78e2"></a><!-- doxytag: member="VISU::TableView::GetBackground" ref="a58313a02ba9c2a872740392197c78e2" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">SALOMEDS::Color VISU.View.GetBackground           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets background color of the View frame. 
-</div>
-</div><p>
-<a class="anchor" name="d9e3dfc74c7239ac9694fc41e8dfb95e"></a><!-- doxytag: member="VISU::TableView::EraseAll" ref="d9e3dfc74c7239ac9694fc41e8dfb95e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.EraseAll           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Removes all presentations (presentable objects) from the view. 
-</div>
-</div><p>
-<a class="anchor" name="db66b95801ce72fc207dbae4e9ada32c"></a><!-- doxytag: member="VISU::TableView::DisplayAll" ref="db66b95801ce72fc207dbae4e9ada32c" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.DisplayAll           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Displays all presentations (presentable objects) in the view. 
-</div>
-</div><p>
-<a class="anchor" name="c7f48239fd32867a22fa772fe258de3e"></a><!-- doxytag: member="VISU::TableView::Erase" ref="c7f48239fd32867a22fa772fe258de3e" args="(in PrsObject thePrsObj)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Erase           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrsObj</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Removes a definite presentation (presentable object) from the view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrsObj</em>&nbsp;</td><td>The presentation (presentable object) which should be deleted. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="61228d03b32683bded67da12990210b6"></a><!-- doxytag: member="VISU::TableView::Display" ref="61228d03b32683bded67da12990210b6" args="(in PrsObject thePrsObj)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Display           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrsObj</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Displays a definite presentation (presentable object) in the view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrsObj</em>&nbsp;</td><td>The presentation (presentable object) which should be displayed. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="14985b21e1c7b6afdddafa2f4d6f93b4"></a><!-- doxytag: member="VISU::TableView::DisplayOnly" ref="14985b21e1c7b6afdddafa2f4d6f93b4" args="(in PrsObject thePrsObj)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.DisplayOnly           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrsObj</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Allows to display only a definite presentation (presentable object) in the view. All other presentations are removed from the view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrsObj</em>&nbsp;</td><td>The presentation (presentable object) which should be displayed. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8090c783e2014156227700b014ad8c29"></a><!-- doxytag: member="VISU::TableView::Update" ref="8090c783e2014156227700b014ad8c29" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Update           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Updates the view. 
-</div>
-</div><p>
-<a class="anchor" name="be39869fe3484a4e2de0626254d9eeae"></a><!-- doxytag: member="VISU::TableView::SavePicture" ref="be39869fe3484a4e2de0626254d9eeae" args="(in string theFileName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.View.SavePicture           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFileName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Saves the view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theFileName</em>&nbsp;</td><td>The name of the file where the view will be saved. </td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>True, if the view have been saved successfully. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::TableView::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::TableView::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:31:19 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1TableView__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1TableView__inherit__graph.jpg
deleted file mode 100644 (file)
index d7b2a07..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1TableView__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Table__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Table__inherit__graph.jpg
deleted file mode 100644 (file)
index 9e34976..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Table__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1VISU__Gen.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1VISU__Gen.html
deleted file mode 100644 (file)
index 704c79d..0000000
+++ /dev/null
@@ -1,1422 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1VISU__Gen.html">VISU_Gen</a></div>
-<h1>VISU.VISU_Gen Interface Reference</h1><!-- doxytag: class="VISU::VISU_Gen" --><!-- doxytag: inherits="Engines::Component,SALOMEDS::Driver,VISU::Base" -->VISU_Gen interface  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.VISU_Gen:<p><center><img src="interfaceVISU_1_1VISU__Gen__inherit__graph.jpg" border="0" usemap="#VISU_8VISU__Gen__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8VISU__Gen__inherit__map">
-<area href="classEngines_1_1Component.html" shape="rect" coords="7,9,165,33" alt="">
-<area href="classSALOMEDS_1_1Driver.html" shape="rect" coords="189,9,333,33" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="357,9,445,33" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#984f8f82f50a4d1be619a9031e065b81">SetCurrentStudy</a> (in SALOMEDS::Study theStudy)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">SALOMEDS::Study&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#90a631650eedf6c3c284f5d75e658e1b">GetCurrentStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1ViewManager.html">ViewManager</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#fcf28fa5072db6f25760d0c5aca2964c">GetViewManager</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">SALOMEDS::SObject&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#ed3c4457793681ec5cea4e5433afd1df">ImportTables</a> (in string theFileName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#95269332dfe8d0811a98b3094ce6f187">ExportTableToFile</a> (in SALOMEDS::SObject theTable, in string theFileName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#a4f9053c69ef68e0cc0ada566d2787cf">ImportFile</a> (in string theFileName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#121b80c429ced4e7a2167b2f30a7e308">CreateResult</a> (in string theFileName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#17ee46d629ee9f2ebcd03fbfb3ab211d">CopyAndImportFile</a> (in string theFileName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#1b09ed15c99d14f66b14118105dab9be">ImportMed</a> (in SALOMEDS::SObject theMedSObject)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#dfc5ca1aea0579a06db3f9ad7588226d">ImportMedField</a> (in SALOME_MED::FIELD theField)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#5258d04fb58d73712290371f558c4e5b">RenameEntityInStudy</a> (in <a class="el" href="interfaceVISU_1_1Result.html">Result</a> theResult, in string theMeshName, in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a> theEntity, in string theNewName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#f13538f4b170c9a4ad5555231077d87d">RenameFamilyInStudy</a> (in <a class="el" href="interfaceVISU_1_1Result.html">Result</a> theResult, in string theMeshName, in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a> theEntity, in string theSubMeshName, in string theNewName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#766e18488fac1f6ef33cbd405fca1b57">RenameGroupInStudy</a> (in <a class="el" href="interfaceVISU_1_1Result.html">Result</a> theResult, in string theMeshName, in string theSubMeshName, in string theNewName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Mesh.html">Mesh</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#cae7773fab66421c7fb42050979a20f1">MeshOnEntity</a> (in <a class="el" href="interfaceVISU_1_1Result.html">Result</a> theResult, in string theMeshName, in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a> theEntity)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Mesh.html">Mesh</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#f6a6b53411a2b56e27ad86b11fb93eee">FamilyMeshOnEntity</a> (in <a class="el" href="interfaceVISU_1_1Result.html">Result</a> theResult, in string theMeshName, in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a> theEntity, in string theFamilyName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Mesh.html">Mesh</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#b9aa8d01939b1241a22102301d28134c">GroupMesh</a> (in <a class="el" href="interfaceVISU_1_1Result.html">Result</a> theResult, in string theMeshName, in string theGroupName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#8f79d9ff1ecc204201aed871c58ef81b">ScalarMapOnField</a> (in <a class="el" href="interfaceVISU_1_1Result.html">Result</a> theResult, in string theMeshName, in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a> theEntity, in string theFieldName, in long theIteration)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1GaussPoints.html">GaussPoints</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#7196a83f8fc93fc53da48196953d24be">GaussPointsOnField</a> (in <a class="el" href="interfaceVISU_1_1Result.html">Result</a> theResult, in string theMeshName, in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a> theEntity, in string theFieldName, in long theIteration)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1DeformedShape.html">DeformedShape</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#1b50163dc1f2529cb11c731d6732e43f">DeformedShapeOnField</a> (in <a class="el" href="interfaceVISU_1_1Result.html">Result</a> theResult, in string theMeshName, in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a> theEntity, in string theFieldName, in long theIteration)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1ScalarMapOnDeformedShape.html">ScalarMapOnDeformedShape</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#6286237df88dc9fe0e7baa3a637e84f8">ScalarMapOnDeformedShapeOnField</a> (in <a class="el" href="interfaceVISU_1_1Result.html">Result</a> theResult, in string theMeshName, in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a> theEntity, in string theFieldName, in long theIteration)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Vectors.html">Vectors</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#d2908ceb80695206c3bbe170edc3cc50">VectorsOnField</a> (in <a class="el" href="interfaceVISU_1_1Result.html">Result</a> theResult, in string theMeshName, in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a> theEntity, in string theFieldName, in long theIteration)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1IsoSurfaces.html">IsoSurfaces</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#88f4fabb19c121303c0f201439007839">IsoSurfacesOnField</a> (in <a class="el" href="interfaceVISU_1_1Result.html">Result</a> theResult, in string theMeshName, in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a> theEntity, in string theFieldName, in long theIteration)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1StreamLines.html">StreamLines</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#79262f21cc6b9e97632fbbc7628aa7f3">StreamLinesOnField</a> (in <a class="el" href="interfaceVISU_1_1Result.html">Result</a> theResult, in string theMeshName, in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a> theEntity, in string theFieldName, in long theIteration)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1CutPlanes.html">CutPlanes</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#ab25662d9cb62e70c380712aec19db0f">CutPlanesOnField</a> (in <a class="el" href="interfaceVISU_1_1Result.html">Result</a> theResult, in string theMeshName, in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a> theEntity, in string theFieldName, in long theIteration)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1CutLines.html">CutLines</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#9e4535d0c326ae75be191b9ea3be5ea0">CutLinesOnField</a> (in <a class="el" href="interfaceVISU_1_1Result.html">Result</a> theResult, in string theMeshName, in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a> theEntity, in string theFieldName, in long theIteration)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Plot3D.html">Plot3D</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#6b6f6aa78e578c60117898db2cbc07be">Plot3DOnField</a> (in <a class="el" href="interfaceVISU_1_1Result.html">Result</a> theResult, in string theMeshName, in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a> theEntity, in string theFieldName, in long theIteration)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Table.html">Table</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#8a1299ac9301ac5a338736bcd020f168">CreateTable</a> (in string theTableEntry)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Curve.html">Curve</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#a1924dd92ac6ef44cb2faa9dd7a87a77">CreateCurve</a> (in <a class="el" href="interfaceVISU_1_1Table.html">Table</a> theTable, in long theHRow, in long theVRow)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Curve.html">Curve</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#6776e9ece3746987ce649e597163336b">CreateCurveWithZ</a> (in <a class="el" href="interfaceVISU_1_1Table.html">Table</a> theTable, in long theHRow, in long theVRow, in long theZRow)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Container.html">Container</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#b3ef998e05306054d00a06f75b235681">CreateContainer</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Animation.html">Animation</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#41725f3a95159163abca617e4abd2932">CreateAnimation</a> (in <a class="el" href="interfaceVISU_1_1View3D.html">View3D</a> theView3d)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#c3c2184f2feb718c1381c6da9da756a6">DeleteResult</a> (in <a class="el" href="interfaceVISU_1_1Result.html">Result</a> theResult)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#e67ab292783785bbe957b56e4db570fa">DeletePrs3d</a> (in <a class="el" href="interfaceVISU_1_1Prs3d.html">Prs3d</a> thePrs3d)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html">ColoredPrs3dCache</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html#f9dcddd34851451845cf2ef97b3e418b">GetColoredPrs3dCache</a> (in SALOMEDS::Study theStudy)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-This is the main interface of VISU component. It is necessary for creation of post-processing presentations from given Result and Table object reference, using the views provided by ViewManager. 
-<p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="984f8f82f50a4d1be619a9031e065b81"></a><!-- doxytag: member="VISU::VISU_Gen::SetCurrentStudy" ref="984f8f82f50a4d1be619a9031e065b81" args="(in SALOMEDS::Study theStudy)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.VISU_Gen.SetCurrentStudy           </td>
-          <td>(</td>
-          <td class="paramtype">in SALOMEDS::Study&nbsp;</td>
-          <td class="paramname"> <em>theStudy</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets a definite study to be current. 
-</div>
-</div><p>
-<a class="anchor" name="90a631650eedf6c3c284f5d75e658e1b"></a><!-- doxytag: member="VISU::VISU_Gen::GetCurrentStudy" ref="90a631650eedf6c3c284f5d75e658e1b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">SALOMEDS::Study VISU.VISU_Gen.GetCurrentStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the current study. 
-</div>
-</div><p>
-<a class="anchor" name="fcf28fa5072db6f25760d0c5aca2964c"></a><!-- doxytag: member="VISU::VISU_Gen::GetViewManager" ref="fcf28fa5072db6f25760d0c5aca2964c" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1ViewManager.html">ViewManager</a> VISU.VISU_Gen.GetViewManager           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the View Manager which is used for creation of post-processing presentations. 
-</div>
-</div><p>
-<a class="anchor" name="ed3c4457793681ec5cea4e5433afd1df"></a><!-- doxytag: member="VISU::VISU_Gen::ImportTables" ref="ed3c4457793681ec5cea4e5433afd1df" args="(in string theFileName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">SALOMEDS::SObject VISU.VISU_Gen.ImportTables           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFileName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Imports tables from a file and create TableAttribute in Sudy 
-</div>
-</div><p>
-<a class="anchor" name="95269332dfe8d0811a98b3094ce6f187"></a><!-- doxytag: member="VISU::VISU_Gen::ExportTableToFile" ref="95269332dfe8d0811a98b3094ce6f187" args="(in SALOMEDS::SObject theTable, in string theFileName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.VISU_Gen.ExportTableToFile           </td>
-          <td>(</td>
-          <td class="paramtype">in SALOMEDS::SObject&nbsp;</td>
-          <td class="paramname"> <em>theTable</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFileName</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Export table to a file 
-</div>
-</div><p>
-<a class="anchor" name="a4f9053c69ef68e0cc0ada566d2787cf"></a><!-- doxytag: member="VISU::VISU_Gen::ImportFile" ref="a4f9053c69ef68e0cc0ada566d2787cf" args="(in string theFileName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Result.html">Result</a> VISU.VISU_Gen.ImportFile           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFileName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Imports data from a file. The access to this file will be conserved outside of the application. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theFileName</em>&nbsp;</td><td>String parameter defining the name of the file from which the data will be imported. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="121b80c429ced4e7a2167b2f30a7e308"></a><!-- doxytag: member="VISU::VISU_Gen::CreateResult" ref="121b80c429ced4e7a2167b2f30a7e308" args="(in string theFileName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Result.html">Result</a> VISU.VISU_Gen.CreateResult           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFileName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Create result and initialize its with the file. The access to this file will be conserved outside of the application. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theFileName</em>&nbsp;</td><td>String parameter defining the name of the file from which the data will be imported. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="17ee46d629ee9f2ebcd03fbfb3ab211d"></a><!-- doxytag: member="VISU::VISU_Gen::CopyAndImportFile" ref="17ee46d629ee9f2ebcd03fbfb3ab211d" args="(in string theFileName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Result.html">Result</a> VISU.VISU_Gen.CopyAndImportFile           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFileName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Imports data from a file. The access to this file will closed. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theFileName</em>&nbsp;</td><td>String parameter defining the name of the file from which the data will be imported. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="1b09ed15c99d14f66b14118105dab9be"></a><!-- doxytag: member="VISU::VISU_Gen::ImportMed" ref="1b09ed15c99d14f66b14118105dab9be" args="(in SALOMEDS::SObject theMedSObject)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Result.html">Result</a> VISU.VISU_Gen.ImportMed           </td>
-          <td>(</td>
-          <td class="paramtype">in SALOMEDS::SObject&nbsp;</td>
-          <td class="paramname"> <em>theMedSObject</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Imports data from a MED object. 
-</div>
-</div><p>
-<a class="anchor" name="dfc5ca1aea0579a06db3f9ad7588226d"></a><!-- doxytag: member="VISU::VISU_Gen::ImportMedField" ref="dfc5ca1aea0579a06db3f9ad7588226d" args="(in SALOME_MED::FIELD theField)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Result.html">Result</a> VISU.VISU_Gen.ImportMedField           </td>
-          <td>(</td>
-          <td class="paramtype">in SALOME_MED::FIELD&nbsp;</td>
-          <td class="paramname"> <em>theField</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Imports data from a MED field. 
-</div>
-</div><p>
-<a class="anchor" name="5258d04fb58d73712290371f558c4e5b"></a><!-- doxytag: member="VISU::VISU_Gen::RenameEntityInStudy" ref="5258d04fb58d73712290371f558c4e5b" args="(in Result theResult, in string theMeshName, in Entity theEntity, in string theNewName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.VISU_Gen.RenameEntityInStudy           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-          <td class="paramname"> <em>theResult</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theMeshName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a>&nbsp;</td>
-          <td class="paramname"> <em>theEntity</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theNewName</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Rename a study object, representing a mesh, specified by given values. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theResult</em>&nbsp;</td><td>Data generated in other sources (MED object or file). </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>One of the meshes presented in MED file. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theEntity</em>&nbsp;</td><td>Type of entity where the field is defined. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theSubMeshName</em>&nbsp;</td><td>Name of sub-mesh (group or family). </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theNewName</em>&nbsp;</td><td>Name to be given to the study object. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="f13538f4b170c9a4ad5555231077d87d"></a><!-- doxytag: member="VISU::VISU_Gen::RenameFamilyInStudy" ref="f13538f4b170c9a4ad5555231077d87d" args="(in Result theResult, in string theMeshName, in Entity theEntity, in string theSubMeshName, in string theNewName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.VISU_Gen.RenameFamilyInStudy           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-          <td class="paramname"> <em>theResult</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theMeshName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a>&nbsp;</td>
-          <td class="paramname"> <em>theEntity</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theSubMeshName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theNewName</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="766e18488fac1f6ef33cbd405fca1b57"></a><!-- doxytag: member="VISU::VISU_Gen::RenameGroupInStudy" ref="766e18488fac1f6ef33cbd405fca1b57" args="(in Result theResult, in string theMeshName, in string theSubMeshName, in string theNewName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.VISU_Gen.RenameGroupInStudy           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-          <td class="paramname"> <em>theResult</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theMeshName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theSubMeshName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theNewName</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="cae7773fab66421c7fb42050979a20f1"></a><!-- doxytag: member="VISU::VISU_Gen::MeshOnEntity" ref="cae7773fab66421c7fb42050979a20f1" args="(in Result theResult, in string theMeshName, in Entity theEntity)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Mesh.html">Mesh</a> VISU.VISU_Gen.MeshOnEntity           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-          <td class="paramname"> <em>theResult</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theMeshName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a>&nbsp;</td>
-          <td class="paramname"> <em>theEntity</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Creates a mesh on the basis of the data generated in other sources (MED object or file). <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theResult</em>&nbsp;</td><td>Data generated in other sources. (MED object or file) </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>One of the meshes presented in MED file </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theEntity</em>&nbsp;</td><td>Type of entity where the field is defined </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="f6a6b53411a2b56e27ad86b11fb93eee"></a><!-- doxytag: member="VISU::VISU_Gen::FamilyMeshOnEntity" ref="f6a6b53411a2b56e27ad86b11fb93eee" args="(in Result theResult, in string theMeshName, in Entity theEntity, in string theFamilyName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Mesh.html">Mesh</a> VISU.VISU_Gen.FamilyMeshOnEntity           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-          <td class="paramname"> <em>theResult</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theMeshName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a>&nbsp;</td>
-          <td class="paramname"> <em>theEntity</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFamilyName</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Creates on the basis of a family a mesh which will be composed of geometrical elements, corresponding to the type of cells (node, edge, face or cell) of this family. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theResult</em>&nbsp;</td><td>Data generated in other sources. (MED object or file) </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>One of the meshes presented in MED file </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theEntity</em>&nbsp;</td><td>Type of entity where the field is defined. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="b9aa8d01939b1241a22102301d28134c"></a><!-- doxytag: member="VISU::VISU_Gen::GroupMesh" ref="b9aa8d01939b1241a22102301d28134c" args="(in Result theResult, in string theMeshName, in string theGroupName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Mesh.html">Mesh</a> VISU.VISU_Gen.GroupMesh           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-          <td class="paramname"> <em>theResult</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theMeshName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theGroupName</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Creates a mesh on the basis of a group of families. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theResult</em>&nbsp;</td><td>Data generated in other sources. (MED object or file) </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>One of the meshes presented in MED file </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theGroupName</em>&nbsp;</td><td>Name of the group. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8f79d9ff1ecc204201aed871c58ef81b"></a><!-- doxytag: member="VISU::VISU_Gen::ScalarMapOnField" ref="8f79d9ff1ecc204201aed871c58ef81b" args="(in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in long theIteration)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a> VISU.VISU_Gen.ScalarMapOnField           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-          <td class="paramname"> <em>theResult</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theMeshName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a>&nbsp;</td>
-          <td class="paramname"> <em>theEntity</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFieldName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theIteration</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Creates a scalar map presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theResult</em>&nbsp;</td><td>Data generated in other sources. (MED object or file) </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>One of the meshes presented in MED file </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theEntity</em>&nbsp;</td><td>Type of entity where the field is defined </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theFieldName</em>&nbsp;</td><td>Group of data attributed to the MESH. The data can be scalar or vector. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theIteration</em>&nbsp;</td><td>Number of iteration on the field </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="7196a83f8fc93fc53da48196953d24be"></a><!-- doxytag: member="VISU::VISU_Gen::GaussPointsOnField" ref="7196a83f8fc93fc53da48196953d24be" args="(in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in long theIteration)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1GaussPoints.html">GaussPoints</a> VISU.VISU_Gen.GaussPointsOnField           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-          <td class="paramname"> <em>theResult</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theMeshName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a>&nbsp;</td>
-          <td class="paramname"> <em>theEntity</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFieldName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theIteration</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Creates a Gauss Points presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theResult</em>&nbsp;</td><td>Data generated in other sources. (MED object or file) </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>One of the meshes presented in MED file </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theEntity</em>&nbsp;</td><td>Type of entity where the field is defined </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theFieldName</em>&nbsp;</td><td>Group of data attributed to the MESH. The data can be scalar or vector. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theIteration</em>&nbsp;</td><td>Number of iteration on the field </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="1b50163dc1f2529cb11c731d6732e43f"></a><!-- doxytag: member="VISU::VISU_Gen::DeformedShapeOnField" ref="1b50163dc1f2529cb11c731d6732e43f" args="(in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in long theIteration)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1DeformedShape.html">DeformedShape</a> VISU.VISU_Gen.DeformedShapeOnField           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-          <td class="paramname"> <em>theResult</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theMeshName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a>&nbsp;</td>
-          <td class="paramname"> <em>theEntity</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFieldName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theIteration</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Creates a deformed shape presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theResult</em>&nbsp;</td><td>Data generated in other sources. (MED object or file) </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>One of the meshes presented in MED file </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theEntity</em>&nbsp;</td><td>Type of entity where the field is defined </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theFieldName</em>&nbsp;</td><td>Group of data attributed to the MESH. The data can be scalar or vector. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theIteration</em>&nbsp;</td><td>Number of iteration on the field </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="6286237df88dc9fe0e7baa3a637e84f8"></a><!-- doxytag: member="VISU::VISU_Gen::ScalarMapOnDeformedShapeOnField" ref="6286237df88dc9fe0e7baa3a637e84f8" args="(in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in long theIteration)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1ScalarMapOnDeformedShape.html">ScalarMapOnDeformedShape</a> VISU.VISU_Gen.ScalarMapOnDeformedShapeOnField           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-          <td class="paramname"> <em>theResult</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theMeshName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a>&nbsp;</td>
-          <td class="paramname"> <em>theEntity</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFieldName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theIteration</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Creates a deformed shape presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theResult</em>&nbsp;</td><td>Data generated in other sources. (MED object or file) </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>One of the meshes presented in MED file </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theEntity</em>&nbsp;</td><td>Type of entity where the field is defined </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theFieldName</em>&nbsp;</td><td>Group of data attributed to the MESH. The data can be scalar or vector. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theIteration</em>&nbsp;</td><td>Number of iteration on the field </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="d2908ceb80695206c3bbe170edc3cc50"></a><!-- doxytag: member="VISU::VISU_Gen::VectorsOnField" ref="d2908ceb80695206c3bbe170edc3cc50" args="(in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in long theIteration)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Vectors.html">Vectors</a> VISU.VISU_Gen.VectorsOnField           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-          <td class="paramname"> <em>theResult</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theMeshName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a>&nbsp;</td>
-          <td class="paramname"> <em>theEntity</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFieldName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theIteration</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Creates a vector presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theResult</em>&nbsp;</td><td>Data generated in other sources. (MED object or file) </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>One of the meshes presented in MED file </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theEntity</em>&nbsp;</td><td>Type of entity where the field is defined </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theFieldName</em>&nbsp;</td><td>Group of data attributed to the MESH. The data can be scalar or vector. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theIteration</em>&nbsp;</td><td>Number of iteration on the field </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="88f4fabb19c121303c0f201439007839"></a><!-- doxytag: member="VISU::VISU_Gen::IsoSurfacesOnField" ref="88f4fabb19c121303c0f201439007839" args="(in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in long theIteration)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1IsoSurfaces.html">IsoSurfaces</a> VISU.VISU_Gen.IsoSurfacesOnField           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-          <td class="paramname"> <em>theResult</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theMeshName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a>&nbsp;</td>
-          <td class="paramname"> <em>theEntity</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFieldName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theIteration</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Creates an iso surface presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theResult</em>&nbsp;</td><td>Data generated in other sources. (MED object or file) </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>One of the meshes presented in MED file </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theEntity</em>&nbsp;</td><td>Type of entity where the field is defined </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theFieldName</em>&nbsp;</td><td>Group of data attributed to the MESH. The data can be scalar or vector. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theIteration</em>&nbsp;</td><td>Number of iteration on the field </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="79262f21cc6b9e97632fbbc7628aa7f3"></a><!-- doxytag: member="VISU::VISU_Gen::StreamLinesOnField" ref="79262f21cc6b9e97632fbbc7628aa7f3" args="(in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in long theIteration)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1StreamLines.html">StreamLines</a> VISU.VISU_Gen.StreamLinesOnField           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-          <td class="paramname"> <em>theResult</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theMeshName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a>&nbsp;</td>
-          <td class="paramname"> <em>theEntity</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFieldName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theIteration</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Creates an stream lines presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theResult</em>&nbsp;</td><td>Data generated in other sources. (MED object or file) </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>One of the meshes presented in MED file </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theEntity</em>&nbsp;</td><td>Type of entity where the field is defined </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theFieldName</em>&nbsp;</td><td>Group of data attributed to the MESH. The data can be scalar or vector. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theIteration</em>&nbsp;</td><td>Number of iteration on the field </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="ab25662d9cb62e70c380712aec19db0f"></a><!-- doxytag: member="VISU::VISU_Gen::CutPlanesOnField" ref="ab25662d9cb62e70c380712aec19db0f" args="(in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in long theIteration)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1CutPlanes.html">CutPlanes</a> VISU.VISU_Gen.CutPlanesOnField           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-          <td class="paramname"> <em>theResult</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theMeshName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a>&nbsp;</td>
-          <td class="paramname"> <em>theEntity</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFieldName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theIteration</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Creates a presentation of cut planes. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theResult</em>&nbsp;</td><td>Data generated in other sources. (MED object or file) </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>One of the meshes presented in MED file </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theEntity</em>&nbsp;</td><td>Type of entity where the field is defined </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theFieldName</em>&nbsp;</td><td>Group of data attributed to the MESH. The data can be scalar or vector. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theIteration</em>&nbsp;</td><td>Number of iteration on the field </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="9e4535d0c326ae75be191b9ea3be5ea0"></a><!-- doxytag: member="VISU::VISU_Gen::CutLinesOnField" ref="9e4535d0c326ae75be191b9ea3be5ea0" args="(in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in long theIteration)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1CutLines.html">CutLines</a> VISU.VISU_Gen.CutLinesOnField           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-          <td class="paramname"> <em>theResult</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theMeshName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a>&nbsp;</td>
-          <td class="paramname"> <em>theEntity</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFieldName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theIteration</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Creates a presentation of cut lines. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theResult</em>&nbsp;</td><td>Data generated in other sources. (MED object or file) </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>One of the meshes presented in MED file </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theEntity</em>&nbsp;</td><td>Type of entity where the field is defined </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theFieldName</em>&nbsp;</td><td>Group of data attributed to the MESH. The data can be scalar or vector. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theIteration</em>&nbsp;</td><td>Number of iteration on the field </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="6b6f6aa78e578c60117898db2cbc07be"></a><!-- doxytag: member="VISU::VISU_Gen::Plot3DOnField" ref="6b6f6aa78e578c60117898db2cbc07be" args="(in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in long theIteration)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Plot3D.html">Plot3D</a> VISU.VISU_Gen.Plot3DOnField           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-          <td class="paramname"> <em>theResult</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theMeshName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a>&nbsp;</td>
-          <td class="paramname"> <em>theEntity</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFieldName</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theIteration</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Creates a <a class="el" href="interfaceVISU_1_1Plot3D.html">Plot3D</a> presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theResult</em>&nbsp;</td><td>Data generated in other sources. (MED object or file) </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>One of the meshes presented in MED file </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theEntity</em>&nbsp;</td><td>Type of entity where the field is defined </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theFieldName</em>&nbsp;</td><td>Group of data attributed to the MESH. The data can be scalar or vector. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theIteration</em>&nbsp;</td><td>Number of iteration on the field </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8a1299ac9301ac5a338736bcd020f168"></a><!-- doxytag: member="VISU::VISU_Gen::CreateTable" ref="8a1299ac9301ac5a338736bcd020f168" args="(in string theTableEntry)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Table.html">Table</a> VISU.VISU_Gen.CreateTable           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theTableEntry</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Creates a table presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theTableEntry</em>&nbsp;</td><td>The entry of the table which will be displayed. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="a1924dd92ac6ef44cb2faa9dd7a87a77"></a><!-- doxytag: member="VISU::VISU_Gen::CreateCurve" ref="a1924dd92ac6ef44cb2faa9dd7a87a77" args="(in Table theTable, in long theHRow, in long theVRow)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Curve.html">Curve</a> VISU.VISU_Gen.CreateCurve           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Table.html">Table</a>&nbsp;</td>
-          <td class="paramname"> <em>theTable</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theHRow</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theVRow</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Creates a curve on the basis of points, whose values are taken from the table. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theTable</em>&nbsp;</td><td><a class="el" href="interfaceVISU_1_1Table.html">Table</a> containing the data for construction of curves. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>HRow</em>&nbsp;</td><td>Index of the row in the table: abscissa of the point. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>VRow</em>&nbsp;</td><td>Index of the row in the table: ordinate of the point. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="6776e9ece3746987ce649e597163336b"></a><!-- doxytag: member="VISU::VISU_Gen::CreateCurveWithZ" ref="6776e9ece3746987ce649e597163336b" args="(in Table theTable, in long theHRow, in long theVRow, in long theZRow)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Curve.html">Curve</a> VISU.VISU_Gen.CreateCurveWithZ           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Table.html">Table</a>&nbsp;</td>
-          <td class="paramname"> <em>theTable</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theHRow</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theVRow</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theZRow</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Creates a curve on the basis of points, whose values are taken from the table. Each point has also assigned value, that will be shown as tooltip in Plot2d <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theTable</em>&nbsp;</td><td><a class="el" href="interfaceVISU_1_1Table.html">Table</a> containing the data for construction of curves. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>HRow</em>&nbsp;</td><td>Index of the row in the table: abscissa of the point. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>VRow</em>&nbsp;</td><td>Index of the row in the table: ordinate of the point. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>ZRow</em>&nbsp;</td><td>Index of the row in the table: assigned value (so-called as Z). </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="b3ef998e05306054d00a06f75b235681"></a><!-- doxytag: member="VISU::VISU_Gen::CreateContainer" ref="b3ef998e05306054d00a06f75b235681" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Container.html">Container</a> VISU.VISU_Gen.CreateContainer           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Creates a presentation form containing an array of references to the curves. 
-</div>
-</div><p>
-<a class="anchor" name="41725f3a95159163abca617e4abd2932"></a><!-- doxytag: member="VISU::VISU_Gen::CreateAnimation" ref="41725f3a95159163abca617e4abd2932" args="(in View3D theView3d)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Animation.html">Animation</a> VISU.VISU_Gen.CreateAnimation           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View3D.html">View3D</a>&nbsp;</td>
-          <td class="paramname"> <em>theView3d</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Creates an animation in the 3D view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theView3d</em>&nbsp;</td><td>The 3D view, where the animation will be rendered. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="c3c2184f2feb718c1381c6da9da756a6"></a><!-- doxytag: member="VISU::VISU_Gen::DeleteResult" ref="c3c2184f2feb718c1381c6da9da756a6" args="(in Result theResult)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.VISU_Gen.DeleteResult           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-          <td class="paramname"> <em>theResult</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="e67ab292783785bbe957b56e4db570fa"></a><!-- doxytag: member="VISU::VISU_Gen::DeletePrs3d" ref="e67ab292783785bbe957b56e4db570fa" args="(in Prs3d thePrs3d)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.VISU_Gen.DeletePrs3d           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Prs3d.html">Prs3d</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrs3d</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="f9dcddd34851451845cf2ef97b3e418b"></a><!-- doxytag: member="VISU::VISU_Gen::GetColoredPrs3dCache" ref="f9dcddd34851451845cf2ef97b3e418b" args="(in SALOMEDS::Study theStudy)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html">ColoredPrs3dCache</a> VISU.VISU_Gen.GetColoredPrs3dCache           </td>
-          <td>(</td>
-          <td class="paramtype">in SALOMEDS::Study&nbsp;</td>
-          <td class="paramname"> <em>theStudy</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Get or create ColoredPrs3dCache object. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::VISU_Gen::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::VISU_Gen::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:31:16 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1VISU__Gen__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1VISU__Gen__inherit__graph.jpg
deleted file mode 100644 (file)
index f07bf4d..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1VISU__Gen__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Vectors.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Vectors.html
deleted file mode 100644 (file)
index 6d1d99e..0000000
+++ /dev/null
@@ -1,1263 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1Vectors.html">Vectors</a></div>
-<h1>VISU.Vectors Interface Reference</h1><!-- doxytag: class="VISU::Vectors" --><!-- doxytag: inherits="VISU::DeformedShape" -->Interface of the vector presentation.  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.Vectors:<p><center><img src="interfaceVISU_1_1Vectors__inherit__graph.jpg" border="0" usemap="#VISU_8Vectors__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8Vectors__inherit__map">
-<area href="interfaceVISU_1_1DeformedShape.html" shape="rect" coords="94,457,257,481" alt="">
-<area href="interfaceVISU_1_1ScalarMap.html" shape="rect" coords="113,382,238,406" alt="">
-<area href="interfaceVISU_1_1ColoredPrs3d.html" shape="rect" coords="104,307,248,331" alt="">
-<area href="interfaceVISU_1_1Prs3d.html" shape="rect" coords="129,233,222,257" alt="">
-<area href="interfaceVISU_1_1PrsObject.html" shape="rect" coords="34,158,154,182" alt="">
-<area href="interfaceVISU_1_1RemovableObject.html" shape="rect" coords="8,83,181,107" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="50,9,138,33" alt="">
-<area href="classSALOME_1_1GenericObj.html" shape="rect" coords="178,158,336,182" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Vectors.html#74c5377f425624e39a1aeea1443456796f5cb7ce2dceb9080deb1990c4033fc9">ARROW</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Vectors.html#74c5377f425624e39a1aeea144345679b029286268b8e0ad47f1f9ad015ef850">CONE2</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Vectors.html#74c5377f425624e39a1aeea1443456790aa230f3d61f4d912ce9c3d213eb30b7">CONE6</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Vectors.html#74c5377f425624e39a1aeea1443456793cf6e2462accc3156c5c140c030c41cf">NONE</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Vectors.html#e2020ba1d45609ccd95a7716d479ae647cb7b56e08b85089b8e063389f3e0fc8">CENTER</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Vectors.html#e2020ba1d45609ccd95a7716d479ae64f57415067985a0053b03d097d94384e9">TAIL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Vectors.html#e2020ba1d45609ccd95a7716d479ae64ba2c63eef7af3a929f80c8155e7dc47e">HEAD</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Vectors.html#74c5377f425624e39a1aeea144345679">GlyphType</a> { <a class="el" href="interfaceVISU_1_1Vectors.html#74c5377f425624e39a1aeea1443456796f5cb7ce2dceb9080deb1990c4033fc9">ARROW</a>, 
-<a class="el" href="interfaceVISU_1_1Vectors.html#74c5377f425624e39a1aeea144345679b029286268b8e0ad47f1f9ad015ef850">CONE2</a>, 
-<a class="el" href="interfaceVISU_1_1Vectors.html#74c5377f425624e39a1aeea1443456790aa230f3d61f4d912ce9c3d213eb30b7">CONE6</a>, 
-<a class="el" href="interfaceVISU_1_1Vectors.html#74c5377f425624e39a1aeea1443456793cf6e2462accc3156c5c140c030c41cf">NONE</a>
- }</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Vectors.html#e2020ba1d45609ccd95a7716d479ae64">GlyphPos</a> { <a class="el" href="interfaceVISU_1_1Vectors.html#e2020ba1d45609ccd95a7716d479ae647cb7b56e08b85089b8e063389f3e0fc8">CENTER</a>, 
-<a class="el" href="interfaceVISU_1_1Vectors.html#e2020ba1d45609ccd95a7716d479ae64f57415067985a0053b03d097d94384e9">TAIL</a>, 
-<a class="el" href="interfaceVISU_1_1Vectors.html#e2020ba1d45609ccd95a7716d479ae64ba2c63eef7af3a929f80c8155e7dc47e">HEAD</a>
- }</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72">HORIZONTAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d">VERTICAL</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> { <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72">HORIZONTAL</a>, 
-<a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d">VERTICAL</a>
- }</td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Vectors.html#af6e00d398bff4004d85ba02f9a72e36">SetLineWidth</a> (in double theWidth)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Vectors.html#a9058898dbbf44258cb3df1a8b6682c5">GetLineWidth</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Vectors.html#d9362760657719683a5c01cde242944b">SetGlyphType</a> (in <a class="el" href="interfaceVISU_1_1Vectors.html#74c5377f425624e39a1aeea144345679">GlyphType</a> theType)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Vectors.html#74c5377f425624e39a1aeea144345679">GlyphType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Vectors.html#d656fd26dc0fbd17cdeeecb0e118508e">GetGlyphType</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Vectors.html#25566609b717134d450c602e1eb132e7">SetGlyphPos</a> (in <a class="el" href="interfaceVISU_1_1Vectors.html#e2020ba1d45609ccd95a7716d479ae64">GlyphPos</a> thePos)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1Vectors.html#e2020ba1d45609ccd95a7716d479ae64">GlyphPos</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Vectors.html#16a9ba8bdebe6f621dc2923c413b83bf">GetGlyphPos</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1DeformedShape.html#8fec704a5438549c0f2cd7a94260c1ed">SetScale</a> (in double theScale)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1DeformedShape.html#11175320f4447acfcf1015573cadc053">GetScale</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1DeformedShape.html#070cfdada47826feb248b649183e4c75">IsColored</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1DeformedShape.html#6f4d04a7028c9f2e1f166c8cb8b4f428">ShowColored</a> (in boolean theColored)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">SALOMEDS::Color&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1DeformedShape.html#1ade0c34dd1c21936f0f518d7082eb34">GetColor</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1DeformedShape.html#461232d5358160cb1183a08d85ce1572">SetColor</a> (in SALOMEDS::Color theColor)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#533517f061d61d34128a7ebd40ec3df2">SetScaling</a> (in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> theScaling)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#af368a29e0046f847a2af205e7040c23">GetScaling</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#76016f8035d5fb342c64b13ca2e30a66">SetRange</a> (in double theMin, in double theMax)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#39afc84381d63d9d8f77a37b86e36e5e">SetSourceRange</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#04340c7d752c439d0715da0c84a3a9c2">AddMeshOnGroup</a> (in string theGroupName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html#11ff37051db7278522d4f55a104ad1de">RemoveAllGeom</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#0cb01513d53cac1cf26699344580962a">SetScalarMode</a> (in long theScalarMode)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#bd7047f0543f356e7e0853285679c8a0">GetScalarMode</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#df97f8522a471c2e90470584cf7c92d9">GetMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#294cd1fcd6a6c21d76a6d03dc28b5a85">GetMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ff19e0cdd15257ff97b65daf0fae8d57">GetSourceMin</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#c559644dd49a59f28a7ae5047da2b01b">GetSourceMax</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e0604356d4ef90ad08cf001f109e1153">IsRangeFixed</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e5d7bfff180529eedad1a140e5a449c3">SetPosition</a> (in double X, in double Y)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Position of the scalar bar.  <a href="#e5d7bfff180529eedad1a140e5a449c3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#ddd48392a778ada1e0153ddcc781edbc">GetPosX</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#a20c6859e00c881a7db6fa3259a33e51">GetPosY</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#e9331edc9bb097dd99556ee27735710c">SetSize</a> (in double theWidth, in double theHeight)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Size of this presentable object.  <a href="#e9331edc9bb097dd99556ee27735710c"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#fb5593e03da36959bcd7ac2e25c387ef">GetWidth</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#75cb62b325060b5d268159e53e7a9de4">GetHeight</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#caf0e43c7f94f9c3c2a2482a1ab0db06">SetNbColors</a> (in long theNbColors)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#2164a8ce3d888c7ac6b3644c0b7347c2">GetNbColors</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#21dd013631e20ce6c72368e7ac568802">SetLabels</a> (in long theNbLabels)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#085c23900301c3a4eb274584ee7d8ca6">GetLabels</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#449207525dc96443b81f42cef38047dd">SetTitle</a> (in string theName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#3618c82757da8f8471dd20ab13cbc27b">GetTitle</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#72fe2019f5aa9bb1c5e19b67a51d7f71">SetBarOrientation</a> (in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> theOrientation)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#8422578b257adc48e4c9e50d697e0364">GetBarOrientation</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#347812588c93643946de30dfc62cf765">SetOffset</a> (in float theDx, in float theDy, in float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#fec212476adf7396e8672ae1c3e7fb78">GetOffset</a> (out float theDx, out float theDy, out float theDz)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html#b02c2fa9085433d4f3e50bf052471139">GetMemorySize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html#7d053f4324b26edd325024cd45424f13">RemoveFromStudy</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-This interface contains presentation parameters of vector presentations. 
-<p>
-<hr><h2>Member Enumeration Documentation</h2>
-<a class="anchor" name="74c5377f425624e39a1aeea144345679"></a><!-- doxytag: member="VISU::Vectors::GlyphType" ref="74c5377f425624e39a1aeea144345679" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1Vectors.html#74c5377f425624e39a1aeea144345679">VISU::Vectors::GlyphType</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-This enumeration contains a set of elements defining the type of representation of the vector head. <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="74c5377f425624e39a1aeea1443456796f5cb7ce2dceb9080deb1990c4033fc9"></a><!-- doxytag: member="ARROW" ref="74c5377f425624e39a1aeea1443456796f5cb7ce2dceb9080deb1990c4033fc9" args="" -->ARROW</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="74c5377f425624e39a1aeea144345679b029286268b8e0ad47f1f9ad015ef850"></a><!-- doxytag: member="CONE2" ref="74c5377f425624e39a1aeea144345679b029286268b8e0ad47f1f9ad015ef850" args="" -->CONE2</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="74c5377f425624e39a1aeea1443456790aa230f3d61f4d912ce9c3d213eb30b7"></a><!-- doxytag: member="CONE6" ref="74c5377f425624e39a1aeea1443456790aa230f3d61f4d912ce9c3d213eb30b7" args="" -->CONE6</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="74c5377f425624e39a1aeea1443456793cf6e2462accc3156c5c140c030c41cf"></a><!-- doxytag: member="NONE" ref="74c5377f425624e39a1aeea1443456793cf6e2462accc3156c5c140c030c41cf" args="" -->NONE</em>&nbsp;</td><td>
-</td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="e2020ba1d45609ccd95a7716d479ae64"></a><!-- doxytag: member="VISU::Vectors::GlyphPos" ref="e2020ba1d45609ccd95a7716d479ae64" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1Vectors.html#e2020ba1d45609ccd95a7716d479ae64">VISU::Vectors::GlyphPos</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-This enumeration contains a set of elements defining the position of the vector head. <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="e2020ba1d45609ccd95a7716d479ae647cb7b56e08b85089b8e063389f3e0fc8"></a><!-- doxytag: member="CENTER" ref="e2020ba1d45609ccd95a7716d479ae647cb7b56e08b85089b8e063389f3e0fc8" args="" -->CENTER</em>&nbsp;</td><td>
-In the center of the vector. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="e2020ba1d45609ccd95a7716d479ae64f57415067985a0053b03d097d94384e9"></a><!-- doxytag: member="TAIL" ref="e2020ba1d45609ccd95a7716d479ae64f57415067985a0053b03d097d94384e9" args="" -->TAIL</em>&nbsp;</td><td>
-In the tail of the vector. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="e2020ba1d45609ccd95a7716d479ae64ba2c63eef7af3a929f80c8155e7dc47e"></a><!-- doxytag: member="HEAD" ref="e2020ba1d45609ccd95a7716d479ae64ba2c63eef7af3a929f80c8155e7dc47e" args="" -->HEAD</em>&nbsp;</td><td>
-In the head of the vector. </td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="12f791060a4820aca541565c57ce715c"></a><!-- doxytag: member="VISU::Vectors::Orientation" ref="12f791060a4820aca541565c57ce715c" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">VISU::ColoredPrs3d::Orientation</a><code> [inherited]</code>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Orientation of the scalar bar (to provide backward compatibility). <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72"></a><!-- doxytag: member="HORIZONTAL" ref="12f791060a4820aca541565c57ce715c4a9a857d0c95384e2acef9c8e76cfe72" args="" -->HORIZONTAL</em>&nbsp;</td><td>
-Horizontal orientation of the scalar bar. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d"></a><!-- doxytag: member="VERTICAL" ref="12f791060a4820aca541565c57ce715cc07ed3c4c4497b33732952b64482971d" args="" -->VERTICAL</em>&nbsp;</td><td>
-Vertical orientation of the scalar bar. </td></tr>
-</table>
-</dl>
-
-<p>
-Implemented in <a class="el" href="interfaceVISU_1_1Plot3D.html#7fd6d4048589d7e44364c1d3070a5713">VISU.Plot3D</a>, and <a class="el" href="interfaceVISU_1_1CutPlanes.html#e6323ddacff1f78376488b92a5cdd3d8">VISU.CutPlanes</a>.
-</div>
-</div><p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="af6e00d398bff4004d85ba02f9a72e36"></a><!-- doxytag: member="VISU::Vectors::SetLineWidth" ref="af6e00d398bff4004d85ba02f9a72e36" args="(in double theWidth)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Vectors.SetLineWidth           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theWidth</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the width of the lines of the vectors. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theWidth</em>&nbsp;</td><td>A double value defining the width of the lines of the vectors. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="a9058898dbbf44258cb3df1a8b6682c5"></a><!-- doxytag: member="VISU::Vectors::GetLineWidth" ref="a9058898dbbf44258cb3df1a8b6682c5" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.Vectors.GetLineWidth           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the width of the lines of the vectors. 
-</div>
-</div><p>
-<a class="anchor" name="d9362760657719683a5c01cde242944b"></a><!-- doxytag: member="VISU::Vectors::SetGlyphType" ref="d9362760657719683a5c01cde242944b" args="(in GlyphType theType)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Vectors.SetGlyphType           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Vectors.html#74c5377f425624e39a1aeea144345679">GlyphType</a>&nbsp;</td>
-          <td class="paramname"> <em>theType</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of representation of the vector head. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theType</em>&nbsp;</td><td>This parameter defines the type of representation of the vector head. This value is taken from the <em>GlyphType</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="d656fd26dc0fbd17cdeeecb0e118508e"></a><!-- doxytag: member="VISU::Vectors::GetGlyphType" ref="d656fd26dc0fbd17cdeeecb0e118508e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Vectors.html#74c5377f425624e39a1aeea144345679">GlyphType</a> VISU.Vectors.GetGlyphType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of representation of the vector head. 
-</div>
-</div><p>
-<a class="anchor" name="25566609b717134d450c602e1eb132e7"></a><!-- doxytag: member="VISU::Vectors::SetGlyphPos" ref="25566609b717134d450c602e1eb132e7" args="(in GlyphPos thePos)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Vectors.SetGlyphPos           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Vectors.html#e2020ba1d45609ccd95a7716d479ae64">GlyphPos</a>&nbsp;</td>
-          <td class="paramname"> <em>thePos</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the position of the vector head. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePos</em>&nbsp;</td><td>This parameter defines the position of the vector head. This value is taken from the <em>GlyphPos</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="16a9ba8bdebe6f621dc2923c413b83bf"></a><!-- doxytag: member="VISU::Vectors::GetGlyphPos" ref="16a9ba8bdebe6f621dc2923c413b83bf" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1Vectors.html#e2020ba1d45609ccd95a7716d479ae64">GlyphPos</a> VISU.Vectors.GetGlyphPos           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the position of the vector head. 
-</div>
-</div><p>
-<a class="anchor" name="8fec704a5438549c0f2cd7a94260c1ed"></a><!-- doxytag: member="VISU::Vectors::SetScale" ref="8fec704a5438549c0f2cd7a94260c1ed" args="(in double theScale)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.DeformedShape.SetScale           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theScale</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the scale of the presentatable object. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theScale</em>&nbsp;</td><td>Double value defining the scale of this presentable object. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="11175320f4447acfcf1015573cadc053"></a><!-- doxytag: member="VISU::Vectors::GetScale" ref="11175320f4447acfcf1015573cadc053" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.DeformedShape.GetScale           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the scale of the presentatable object. 
-</div>
-</div><p>
-<a class="anchor" name="070cfdada47826feb248b649183e4c75"></a><!-- doxytag: member="VISU::Vectors::IsColored" ref="070cfdada47826feb248b649183e4c75" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.DeformedShape.IsColored           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-This boolean method returns True if this deformed shape presentation is colored. 
-</div>
-</div><p>
-<a class="anchor" name="6f4d04a7028c9f2e1f166c8cb8b4f428"></a><!-- doxytag: member="VISU::Vectors::ShowColored" ref="6f4d04a7028c9f2e1f166c8cb8b4f428" args="(in boolean theColored)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.DeformedShape.ShowColored           </td>
-          <td>(</td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>theColored</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Shows this presentation in colored mode. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theColored</em>&nbsp;</td><td>If this boolean parameter is True this presentable object will be shown in colored mode. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="1ade0c34dd1c21936f0f518d7082eb34"></a><!-- doxytag: member="VISU::Vectors::GetColor" ref="1ade0c34dd1c21936f0f518d7082eb34" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">SALOMEDS::Color VISU.DeformedShape.GetColor           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the color of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>The color of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="461232d5358160cb1183a08d85ce1572"></a><!-- doxytag: member="VISU::Vectors::SetColor" ref="461232d5358160cb1183a08d85ce1572" args="(in SALOMEDS::Color theColor)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.DeformedShape.SetColor           </td>
-          <td>(</td>
-          <td class="paramtype">in SALOMEDS::Color&nbsp;</td>
-          <td class="paramname"> <em>theColor</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the color of this presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theColor</em>&nbsp;</td><td>The color of this presentation. This parameter is taken from the <em>Color</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="533517f061d61d34128a7ebd40ec3df2"></a><!-- doxytag: member="VISU::Vectors::SetScaling" ref="533517f061d61d34128a7ebd40ec3df2" args="(in Scaling theScaling)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetScaling           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td>
-          <td class="paramname"> <em>theScaling</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of scaling of the values reflected by the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theScaling</em>&nbsp;</td><td>The value of this parameter is taken from the <em>Scaling</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="af368a29e0046f847a2af205e7040c23"></a><!-- doxytag: member="VISU::Vectors::GetScaling" ref="af368a29e0046f847a2af205e7040c23" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> VISU.ScalarMap.GetScaling           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of scaling of the values reflected by this presentation. 
-</div>
-</div><p>
-<a class="anchor" name="76016f8035d5fb342c64b13ca2e30a66"></a><!-- doxytag: member="VISU::Vectors::SetRange" ref="76016f8035d5fb342c64b13ca2e30a66" args="(in double theMin, in double theMax)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetRange           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theMin</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theMax</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets scalar range - min and max boundaries of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theMin</em>&nbsp;</td><td>Min boundary of the scalar bar. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theMax</em>&nbsp;</td><td>Max boundary of the scalar bar. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="39afc84381d63d9d8f77a37b86e36e5e"></a><!-- doxytag: member="VISU::Vectors::SetSourceRange" ref="39afc84381d63d9d8f77a37b86e36e5e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.SetSourceRange           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets scalar range that corresponds to the source data. 
-</div>
-</div><p>
-<a class="anchor" name="04340c7d752c439d0715da0c84a3a9c2"></a><!-- doxytag: member="VISU::Vectors::AddMeshOnGroup" ref="04340c7d752c439d0715da0c84a3a9c2" args="(in string theGroupName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.AddMeshOnGroup           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theGroupName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Add group as geometry of presentation. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theMeshName</em>&nbsp;</td><td>- mesh name </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theGroupName</em>&nbsp;</td><td>- group name </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="11ff37051db7278522d4f55a104ad1de"></a><!-- doxytag: member="VISU::Vectors::RemoveAllGeom" ref="11ff37051db7278522d4f55a104ad1de" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ScalarMap.RemoveAllGeom           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-PrsMerger method: Remove all groups.(The scalar map will be placed on all mesh). 
-</div>
-</div><p>
-<a class="anchor" name="0cb01513d53cac1cf26699344580962a"></a><!-- doxytag: member="VISU::Vectors::SetScalarMode" ref="0cb01513d53cac1cf26699344580962a" args="(in long theScalarMode)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetScalarMode           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theScalarMode</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="bd7047f0543f356e7e0853285679c8a0"></a><!-- doxytag: member="VISU::Vectors::GetScalarMode" ref="bd7047f0543f356e7e0853285679c8a0" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetScalarMode           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the method of coloring of the elements composing a 3D presentation. 
-</div>
-</div><p>
-<a class="anchor" name="df97f8522a471c2e90470584cf7c92d9"></a><!-- doxytag: member="VISU::Vectors::GetMin" ref="df97f8522a471c2e90470584cf7c92d9" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="294cd1fcd6a6c21d76a6d03dc28b5a85"></a><!-- doxytag: member="VISU::Vectors::GetMax" ref="294cd1fcd6a6c21d76a6d03dc28b5a85" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="ff19e0cdd15257ff97b65daf0fae8d57"></a><!-- doxytag: member="VISU::Vectors::GetSourceMin" ref="ff19e0cdd15257ff97b65daf0fae8d57" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMin           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the min boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="c559644dd49a59f28a7ae5047da2b01b"></a><!-- doxytag: member="VISU::Vectors::GetSourceMax" ref="c559644dd49a59f28a7ae5047da2b01b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetSourceMax           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the max boundary of the scalar bar from source data. 
-</div>
-</div><p>
-<a class="anchor" name="e0604356d4ef90ad08cf001f109e1153"></a><!-- doxytag: member="VISU::Vectors::IsRangeFixed" ref="e0604356d4ef90ad08cf001f109e1153" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.ColoredPrs3d.IsRangeFixed           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Defines whether the scalar range corresponds to the source data or not. 
-</div>
-</div><p>
-<a class="anchor" name="e5d7bfff180529eedad1a140e5a449c3"></a><!-- doxytag: member="VISU::Vectors::SetPosition" ref="e5d7bfff180529eedad1a140e5a449c3" args="(in double X, in double Y)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetPosition           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>X</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>Y</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the position of the scalar bar origin on the screen. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>X</em>&nbsp;</td><td>Horizontal position. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>Y</em>&nbsp;</td><td>Vertical position. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="ddd48392a778ada1e0153ddcc781edbc"></a><!-- doxytag: member="VISU::Vectors::GetPosX" ref="ddd48392a778ada1e0153ddcc781edbc" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosX           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets horizontal position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="a20c6859e00c881a7db6fa3259a33e51"></a><!-- doxytag: member="VISU::Vectors::GetPosY" ref="a20c6859e00c881a7db6fa3259a33e51" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetPosY           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets vertical position of the scalar bar origin. 
-</div>
-</div><p>
-<a class="anchor" name="e9331edc9bb097dd99556ee27735710c"></a><!-- doxytag: member="VISU::Vectors::SetSize" ref="e9331edc9bb097dd99556ee27735710c" args="(in double theWidth, in double theHeight)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetSize           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theWidth</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theHeight</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the size of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theWidth</em>&nbsp;</td><td>Width of this presentable object. The value can be between 0 and 1. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theHeight</em>&nbsp;</td><td>Height of this presentable object. The value can be between 0 and 1. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="fb5593e03da36959bcd7ac2e25c387ef"></a><!-- doxytag: member="VISU::Vectors::GetWidth" ref="fb5593e03da36959bcd7ac2e25c387ef" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetWidth           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the width of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the width of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="75cb62b325060b5d268159e53e7a9de4"></a><!-- doxytag: member="VISU::Vectors::GetHeight" ref="75cb62b325060b5d268159e53e7a9de4" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.ColoredPrs3d.GetHeight           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the height of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A double value corresponding to the height of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="caf0e43c7f94f9c3c2a2482a1ab0db06"></a><!-- doxytag: member="VISU::Vectors::SetNbColors" ref="caf0e43c7f94f9c3c2a2482a1ab0db06" args="(in long theNbColors)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetNbColors           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbColors</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of colors which will be used for presentation of this presentable object. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbColors</em>&nbsp;</td><td>A long value defining the number of colors. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="2164a8ce3d888c7ac6b3644c0b7347c2"></a><!-- doxytag: member="VISU::Vectors::GetNbColors" ref="2164a8ce3d888c7ac6b3644c0b7347c2" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetNbColors           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of colors which will be used for visualization of this presentable object. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of colors which will be used for visualization of this presentable object. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="21dd013631e20ce6c72368e7ac568802"></a><!-- doxytag: member="VISU::Vectors::SetLabels" ref="21dd013631e20ce6c72368e7ac568802" args="(in long theNbLabels)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetLabels           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNbLabels</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theNbLabels</em>&nbsp;</td><td>A long value defining the number of labels. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="085c23900301c3a4eb274584ee7d8ca6"></a><!-- doxytag: member="VISU::Vectors::GetLabels" ref="085c23900301c3a4eb274584ee7d8ca6" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.ColoredPrs3d.GetLabels           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the number of labels which will be used for indication of color gradation of the scalar bar. <dl compact><dt><b>Returns:</b></dt><dd>A long value corresponding to the number of labels which will be used for indication of color gradation of the scalar bar. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="449207525dc96443b81f42cef38047dd"></a><!-- doxytag: member="VISU::Vectors::SetTitle" ref="449207525dc96443b81f42cef38047dd" args="(in string theName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetTitle           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the title of the scalar bar. By default - the name of the selected result is used. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theName</em>&nbsp;</td><td>String parameter defining the name of the scalar bar. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="3618c82757da8f8471dd20ab13cbc27b"></a><!-- doxytag: member="VISU::Vectors::GetTitle" ref="3618c82757da8f8471dd20ab13cbc27b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.ColoredPrs3d.GetTitle           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the title of the scalar bar. 
-</div>
-</div><p>
-<a class="anchor" name="72fe2019f5aa9bb1c5e19b67a51d7f71"></a><!-- doxytag: member="VISU::Vectors::SetBarOrientation" ref="72fe2019f5aa9bb1c5e19b67a51d7f71" args="(in Orientation theOrientation)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ColoredPrs3d.SetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a>&nbsp;</td>
-          <td class="paramname"> <em>theOrientation</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of orientation of the scalar bar (to provide backward compatibility). <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theOrientation</em>&nbsp;</td><td>This parameter defines the orientation of the scalar bar. It is taken from the <em>Orientaton</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8422578b257adc48e4c9e50d697e0364"></a><!-- doxytag: member="VISU::Vectors::GetBarOrientation" ref="8422578b257adc48e4c9e50d697e0364" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html#12f791060a4820aca541565c57ce715c">Orientation</a> VISU.ColoredPrs3d.GetBarOrientation           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of orientation of the scalar bar (to provide backward compatibility). 
-</div>
-</div><p>
-<a class="anchor" name="347812588c93643946de30dfc62cf765"></a><!-- doxytag: member="VISU::Vectors::SetOffset" ref="347812588c93643946de30dfc62cf765" args="(in float theDx, in float theDy, in float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.SetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Move the 3D presentation according to the given offset parameters 
-</div>
-</div><p>
-<a class="anchor" name="fec212476adf7396e8672ae1c3e7fb78"></a><!-- doxytag: member="VISU::Vectors::GetOffset" ref="fec212476adf7396e8672ae1c3e7fb78" args="(out float theDx, out float theDy, out float theDz)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.Prs3d.GetOffset           </td>
-          <td>(</td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDx</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDy</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out float&nbsp;</td>
-          <td class="paramname"> <em>theDz</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets offset parameters for the 3D presentation 
-</div>
-</div><p>
-<a class="anchor" name="b02c2fa9085433d4f3e50bf052471139"></a><!-- doxytag: member="VISU::Vectors::GetMemorySize" ref="b02c2fa9085433d4f3e50bf052471139" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">float VISU.Prs3d.GetMemorySize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets memory size actually used by the presentation (Mb). 
-</div>
-</div><p>
-<a class="anchor" name="7d053f4324b26edd325024cd45424f13"></a><!-- doxytag: member="VISU::Vectors::RemoveFromStudy" ref="7d053f4324b26edd325024cd45424f13" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.RemovableObject.RemoveFromStudy           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Remove object from study. 
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::Vectors::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::Vectors::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:31:13 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Vectors__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Vectors__inherit__graph.jpg
deleted file mode 100644 (file)
index 5341b71..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1Vectors__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1View.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1View.html
deleted file mode 100644 (file)
index 22bf972..0000000
+++ /dev/null
@@ -1,1077 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1View.html">View</a></div>
-<h1>VISU.View Interface Reference</h1><!-- doxytag: class="VISU::View" --><!-- doxytag: inherits="VISU::Base" -->View interface  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.View:<p><center><img src="interfaceVISU_1_1View__inherit__graph.jpg" border="0" usemap="#VISU_8View__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8View__inherit__map">
-<area href="interfaceVISU_1_1TableView.html" shape="rect" coords="8,158,130,182" alt="">
-<area href="interfaceVISU_1_1View3D.html" shape="rect" coords="154,158,261,182" alt="">
-<area href="interfaceVISU_1_1XYPlot.html" shape="rect" coords="285,158,384,182" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="164,9,252,33" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce2131f7dc0fbe16bf5950fa21dfe7bec8f1f">OBJECTBROWSER</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213e07a7b41660016da6e4790a61e40e70b">VIEWER</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce21396ab6335f0ee2092ee104ffad56775b4">PYTHON</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213a84ae45219effaca695aa571bf695fc4">MESSAGES</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be01545fe0740c7cad5e89fedcad2b26806749">TOP</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be015493a1dab2e71eac6a554710428eae5065">CENTER</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be01544f8fb8916808919e85dbad251c346f22">BOTTOM</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154890e1c4cdf828c641a0d36f8b5587edc">RIGHT</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be015436e2382243a4b7d321dd80242e0b2b47">LEFT</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">ViewRepresentation</a> { <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce2131f7dc0fbe16bf5950fa21dfe7bec8f1f">OBJECTBROWSER</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213e07a7b41660016da6e4790a61e40e70b">VIEWER</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce21396ab6335f0ee2092ee104ffad56775b4">PYTHON</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213a84ae45219effaca695aa571bf695fc4">MESSAGES</a>
- }</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">ViewRepresentation enumeration  <a href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">ViewPosition</a> { <br>
-&nbsp;&nbsp;<a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be01545fe0740c7cad5e89fedcad2b26806749">TOP</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be015493a1dab2e71eac6a554710428eae5065">CENTER</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be01544f8fb8916808919e85dbad251c346f22">BOTTOM</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154890e1c4cdf828c641a0d36f8b5587edc">RIGHT</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be015436e2382243a4b7d321dd80242e0b2b47">LEFT</a>
-<br>
- }</td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#d4c3991dc0e4f751e23b17261d52178d">ShowPart</a> (in <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">ViewRepresentation</a> ViewRepr, in boolean state)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#2d790758989030510272a71fc5c26ecb">IsPartShown</a> (in <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">ViewRepresentation</a> ViewRepr)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#454584a30406826c35f2dcc88ed5e285">SplitRight</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Split workarea of this view.  <a href="#454584a30406826c35f2dcc88ed5e285"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#06c29b07b09c2e669fa5d37adbad5c89">SplitLeft</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Split workarea of this view.  <a href="#06c29b07b09c2e669fa5d37adbad5c89"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#fab9ec5d12c93924e3fd6600d460738e">SplitBottom</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Split workarea of this view.  <a href="#fab9ec5d12c93924e3fd6600d460738e"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#e399ee4c9665a7b496371f938d3e7fd3">SplitTop</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Split workarea of this view.  <a href="#e399ee4c9665a7b496371f938d3e7fd3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#c7cb8f7af67a6fc161ce1e1266cf6078">OnTop</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#d24a4fd9604a6b2da4d9f265b87b73e7">Attract</a> (in <a class="el" href="interfaceVISU_1_1View.html">View</a> theView)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#81523793df94f223086e2dfb7a9bde44">AttractAll</a> (in <a class="el" href="interfaceVISU_1_1View.html">View</a> theView)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#c51e42d9554731639821248cf5c51789">SetRelativePositionInSplitter</a> (in double thePosition)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#094aac0197dd3a66e8482ac9067c1200">SetRelativeSizeInSplitter</a> (in double theSize)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#5a6f6a0f2853ec6dbce40f8a0f058e67">SetRelativePositionX</a> (in double thePosition)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#d538c2c385e0542b0a04d1161833c9a7">SetRelativePositionY</a> (in double thePosition)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#1a82e7fd3d5b3c79690bfb17eeb19e8c">SetRelativeSizeX</a> (in double theSize)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#773d3140097f5d20568bb5bf7a244962">SetRelativeSizeY</a> (in double theSize)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#cd6524625b6ca8e3c49022459f106bed">SetViewWidth</a> (in long Width)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#b07ab6237cfdd70884a038af48fd7e72">SetViewHeight</a> (in long Height)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#904d6945f16117519d74dda54cf0aef0">GetViewWidth</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#56f2a1d86c80ebc81f9a0db71e25d3df">GetViewHeight</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#68a47a614cafe868ab89fad6ce117860">SetViewPositionHorizontal</a> (in <a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">ViewPosition</a> ViewPosHor)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#8df1d9425b90f9dd21c36acc3f9c444b">SetViewPositionVertical</a> (in <a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">ViewPosition</a> ViewPosVer)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#9357df128dabcd74c4d54ad04eda0d49">SetRelativePosition</a> (in double x, in double y)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#c2049cff1e9ee54312bd267154d9b69a">SetRelativeSize</a> (in double x, in double y)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#f52e1696f127af6ddffb7cb012411a26">Minimize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#71b5b17b0376653363709077e1597616">Restore</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#91cde31fe400a5f82c8bdbe7db3b5ef7">Maximize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#4071ba1dd44364ae0d8cc337a7544921">SetTitle</a> (in string theTitle)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#6930e36faf0c5628d5b5ad9dc20148d5">GetTitle</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#ff8571273f82a27f46d43ea0419bafb1">SetBackground</a> (in SALOMEDS::Color theColor)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">SALOMEDS::Color&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a58313a02ba9c2a872740392197c78e2">GetBackground</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#d9e3dfc74c7239ac9694fc41e8dfb95e">EraseAll</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#db66b95801ce72fc207dbae4e9ada32c">DisplayAll</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#c7f48239fd32867a22fa772fe258de3e">Erase</a> (in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a> thePrsObj)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61228d03b32683bded67da12990210b6">Display</a> (in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a> thePrsObj)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#14985b21e1c7b6afdddafa2f4d6f93b4">DisplayOnly</a> (in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a> thePrsObj)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#8090c783e2014156227700b014ad8c29">Update</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#be39869fe3484a4e2de0626254d9eeae">SavePicture</a> (in string theFileName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-Contains a set of methods used by the View frame, which can be one of the following types: 3d, <a class="el" href="interfaceVISU_1_1Table.html">Table</a>, XY plot. View interface is a base for all types of view interfaces. 
-<p>
-<hr><h2>Member Enumeration Documentation</h2>
-<a class="anchor" name="a666392d875e267305ad2694ce3ce213"></a><!-- doxytag: member="VISU::View::ViewRepresentation" ref="a666392d875e267305ad2694ce3ce213" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">VISU::View::ViewRepresentation</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-displaying part ("ALL" isn't setable) <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="a666392d875e267305ad2694ce3ce2131f7dc0fbe16bf5950fa21dfe7bec8f1f"></a><!-- doxytag: member="OBJECTBROWSER" ref="a666392d875e267305ad2694ce3ce2131f7dc0fbe16bf5950fa21dfe7bec8f1f" args="" -->OBJECTBROWSER</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="a666392d875e267305ad2694ce3ce213e07a7b41660016da6e4790a61e40e70b"></a><!-- doxytag: member="VIEWER" ref="a666392d875e267305ad2694ce3ce213e07a7b41660016da6e4790a61e40e70b" args="" -->VIEWER</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="a666392d875e267305ad2694ce3ce21396ab6335f0ee2092ee104ffad56775b4"></a><!-- doxytag: member="PYTHON" ref="a666392d875e267305ad2694ce3ce21396ab6335f0ee2092ee104ffad56775b4" args="" -->PYTHON</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="a666392d875e267305ad2694ce3ce213a84ae45219effaca695aa571bf695fc4"></a><!-- doxytag: member="MESSAGES" ref="a666392d875e267305ad2694ce3ce213a84ae45219effaca695aa571bf695fc4" args="" -->MESSAGES</em>&nbsp;</td><td>
-</td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="61d3152c0ff5d024f84b2fe149be0154"></a><!-- doxytag: member="VISU::View::ViewPosition" ref="61d3152c0ff5d024f84b2fe149be0154" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">VISU::View::ViewPosition</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-<dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="61d3152c0ff5d024f84b2fe149be01545fe0740c7cad5e89fedcad2b26806749"></a><!-- doxytag: member="TOP" ref="61d3152c0ff5d024f84b2fe149be01545fe0740c7cad5e89fedcad2b26806749" args="" -->TOP</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="61d3152c0ff5d024f84b2fe149be015493a1dab2e71eac6a554710428eae5065"></a><!-- doxytag: member="CENTER" ref="61d3152c0ff5d024f84b2fe149be015493a1dab2e71eac6a554710428eae5065" args="" -->CENTER</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="61d3152c0ff5d024f84b2fe149be01544f8fb8916808919e85dbad251c346f22"></a><!-- doxytag: member="BOTTOM" ref="61d3152c0ff5d024f84b2fe149be01544f8fb8916808919e85dbad251c346f22" args="" -->BOTTOM</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="61d3152c0ff5d024f84b2fe149be0154890e1c4cdf828c641a0d36f8b5587edc"></a><!-- doxytag: member="RIGHT" ref="61d3152c0ff5d024f84b2fe149be0154890e1c4cdf828c641a0d36f8b5587edc" args="" -->RIGHT</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="61d3152c0ff5d024f84b2fe149be015436e2382243a4b7d321dd80242e0b2b47"></a><!-- doxytag: member="LEFT" ref="61d3152c0ff5d024f84b2fe149be015436e2382243a4b7d321dd80242e0b2b47" args="" -->LEFT</em>&nbsp;</td><td>
-</td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="d4c3991dc0e4f751e23b17261d52178d"></a><!-- doxytag: member="VISU::View::ShowPart" ref="d4c3991dc0e4f751e23b17261d52178d" args="(in ViewRepresentation ViewRepr, in boolean state)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.ShowPart           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">ViewRepresentation</a>&nbsp;</td>
-          <td class="paramname"> <em>ViewRepr</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>state</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="2d790758989030510272a71fc5c26ecb"></a><!-- doxytag: member="VISU::View::IsPartShown" ref="2d790758989030510272a71fc5c26ecb" args="(in ViewRepresentation ViewRepr)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.View.IsPartShown           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">ViewRepresentation</a>&nbsp;</td>
-          <td class="paramname"> <em>ViewRepr</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="454584a30406826c35f2dcc88ed5e285"></a><!-- doxytag: member="VISU::View::SplitRight" ref="454584a30406826c35f2dcc88ed5e285" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SplitRight           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Horizontally split workarea of this view. This view is moved in a new right area. 
-</div>
-</div><p>
-<a class="anchor" name="06c29b07b09c2e669fa5d37adbad5c89"></a><!-- doxytag: member="VISU::View::SplitLeft" ref="06c29b07b09c2e669fa5d37adbad5c89" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SplitLeft           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Horizontally split workarea of this view. This view stays in an old left area, others are moved in a new right area. 
-</div>
-</div><p>
-<a class="anchor" name="fab9ec5d12c93924e3fd6600d460738e"></a><!-- doxytag: member="VISU::View::SplitBottom" ref="fab9ec5d12c93924e3fd6600d460738e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SplitBottom           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Vertically split workarea of this view. This view is moved in a new bottom area. 
-</div>
-</div><p>
-<a class="anchor" name="e399ee4c9665a7b496371f938d3e7fd3"></a><!-- doxytag: member="VISU::View::SplitTop" ref="e399ee4c9665a7b496371f938d3e7fd3" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SplitTop           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Vertically split workarea of this view. This view stays in an old top area, others are moved in a new bottom area. 
-</div>
-</div><p>
-<a class="anchor" name="c7cb8f7af67a6fc161ce1e1266cf6078"></a><!-- doxytag: member="VISU::View::OnTop" ref="c7cb8f7af67a6fc161ce1e1266cf6078" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.OnTop           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Put this view window on top of its work area. 
-</div>
-</div><p>
-<a class="anchor" name="d24a4fd9604a6b2da4d9f265b87b73e7"></a><!-- doxytag: member="VISU::View::Attract" ref="d24a4fd9604a6b2da4d9f265b87b73e7" args="(in View theView)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Attract           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html">View</a>&nbsp;</td>
-          <td class="paramname"> <em>theView</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Put <em>theView</em> in workarea of this view right after it. If <em>theView</em> was alone in its workarea, workarea of <em>theView</em> will be destroyed. If <em>theView</em> was in the same workarea with this view, simple reordering will take place. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theView</em>&nbsp;</td><td>A view window to be attracted to this one. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="81523793df94f223086e2dfb7a9bde44"></a><!-- doxytag: member="VISU::View::AttractAll" ref="81523793df94f223086e2dfb7a9bde44" args="(in View theView)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.AttractAll           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html">View</a>&nbsp;</td>
-          <td class="paramname"> <em>theView</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Put all the view windows from workarea of <em>theView</em> in workarea of this view right after it. Workarea of <em>theView</em> will be destroyed. If <em>theView</em> was in the same workarea with this view, simple reordering will take place. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theView</em>&nbsp;</td><td>A view window to be attracted to this one together with all its workarea. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="c51e42d9554731639821248cf5c51789"></a><!-- doxytag: member="VISU::View::SetRelativePositionInSplitter" ref="c51e42d9554731639821248cf5c51789" args="(in double thePosition)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativePositionInSplitter           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>thePosition</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set position of this view window relatively its splitter. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePosition</em>&nbsp;</td><td>Desired position of this view window relatively its splitter. Meaningfull values lays in range [0..1].</td></tr>
-  </table>
-</dl>
-Direction of positioning is defined by the splitter orientation. 
-</div>
-</div><p>
-<a class="anchor" name="094aac0197dd3a66e8482ac9067c1200"></a><!-- doxytag: member="VISU::View::SetRelativeSizeInSplitter" ref="094aac0197dd3a66e8482ac9067c1200" args="(in double theSize)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativeSizeInSplitter           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theSize</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set size of this view window relatively its splitter. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theSize</em>&nbsp;</td><td>Desired size of this view window relatively its splitter. Meaningfull values lays in range [0..1].</td></tr>
-  </table>
-</dl>
-Direction of resizing is defined by the splitter orientation. 
-</div>
-</div><p>
-<a class="anchor" name="5a6f6a0f2853ec6dbce40f8a0f058e67"></a><!-- doxytag: member="VISU::View::SetRelativePositionX" ref="5a6f6a0f2853ec6dbce40f8a0f058e67" args="(in double thePosition)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativePositionX           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>thePosition</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set horizontal position of this view window relatively its workstack. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePosition</em>&nbsp;</td><td>Desired horizontal position of this view window relatively its workstack. Meaningfull values lays in range [0..1]. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="d538c2c385e0542b0a04d1161833c9a7"></a><!-- doxytag: member="VISU::View::SetRelativePositionY" ref="d538c2c385e0542b0a04d1161833c9a7" args="(in double thePosition)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativePositionY           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>thePosition</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set vertical position of this view window relatively its workstack. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePosition</em>&nbsp;</td><td>Desired vertical position of this view window relatively its workstack. Meaningfull values lays in range [0..1]. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="1a82e7fd3d5b3c79690bfb17eeb19e8c"></a><!-- doxytag: member="VISU::View::SetRelativeSizeX" ref="1a82e7fd3d5b3c79690bfb17eeb19e8c" args="(in double theSize)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativeSizeX           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theSize</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set horizontal size of this view window relatively its workstack. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theSize</em>&nbsp;</td><td>Desired horizontal size of this view window relatively its workstack. Meaningfull values lays in range [0..1]. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="773d3140097f5d20568bb5bf7a244962"></a><!-- doxytag: member="VISU::View::SetRelativeSizeY" ref="773d3140097f5d20568bb5bf7a244962" args="(in double theSize)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativeSizeY           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theSize</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set vertical size of this view window relatively its workstack. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theSize</em>&nbsp;</td><td>Desired vertical size of this view window relatively its workstack. Meaningfull values lays in range [0..1]. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="cd6524625b6ca8e3c49022459f106bed"></a><!-- doxytag: member="VISU::View::SetViewWidth" ref="cd6524625b6ca8e3c49022459f106bed" args="(in long Width)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetViewWidth           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>Width</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Old methods for view parameters management, they don't work now 
-</div>
-</div><p>
-<a class="anchor" name="b07ab6237cfdd70884a038af48fd7e72"></a><!-- doxytag: member="VISU::View::SetViewHeight" ref="b07ab6237cfdd70884a038af48fd7e72" args="(in long Height)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetViewHeight           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>Height</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="904d6945f16117519d74dda54cf0aef0"></a><!-- doxytag: member="VISU::View::GetViewWidth" ref="904d6945f16117519d74dda54cf0aef0" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.View.GetViewWidth           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="56f2a1d86c80ebc81f9a0db71e25d3df"></a><!-- doxytag: member="VISU::View::GetViewHeight" ref="56f2a1d86c80ebc81f9a0db71e25d3df" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.View.GetViewHeight           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="68a47a614cafe868ab89fad6ce117860"></a><!-- doxytag: member="VISU::View::SetViewPositionHorizontal" ref="68a47a614cafe868ab89fad6ce117860" args="(in ViewPosition ViewPosHor)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetViewPositionHorizontal           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">ViewPosition</a>&nbsp;</td>
-          <td class="paramname"> <em>ViewPosHor</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="8df1d9425b90f9dd21c36acc3f9c444b"></a><!-- doxytag: member="VISU::View::SetViewPositionVertical" ref="8df1d9425b90f9dd21c36acc3f9c444b" args="(in ViewPosition ViewPosVer)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetViewPositionVertical           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">ViewPosition</a>&nbsp;</td>
-          <td class="paramname"> <em>ViewPosVer</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="9357df128dabcd74c4d54ad04eda0d49"></a><!-- doxytag: member="VISU::View::SetRelativePosition" ref="9357df128dabcd74c4d54ad04eda0d49" args="(in double x, in double y)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativePosition           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="c2049cff1e9ee54312bd267154d9b69a"></a><!-- doxytag: member="VISU::View::SetRelativeSize" ref="c2049cff1e9ee54312bd267154d9b69a" args="(in double x, in double y)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativeSize           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="f52e1696f127af6ddffb7cb012411a26"></a><!-- doxytag: member="VISU::View::Minimize" ref="f52e1696f127af6ddffb7cb012411a26" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Minimize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="71b5b17b0376653363709077e1597616"></a><!-- doxytag: member="VISU::View::Restore" ref="71b5b17b0376653363709077e1597616" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Restore           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="91cde31fe400a5f82c8bdbe7db3b5ef7"></a><!-- doxytag: member="VISU::View::Maximize" ref="91cde31fe400a5f82c8bdbe7db3b5ef7" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Maximize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="4071ba1dd44364ae0d8cc337a7544921"></a><!-- doxytag: member="VISU::View::SetTitle" ref="4071ba1dd44364ae0d8cc337a7544921" args="(in string theTitle)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetTitle           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theTitle</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the title of the View frame. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theTitle</em>&nbsp;</td><td>String parameter defining the title of the View frame. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="6930e36faf0c5628d5b5ad9dc20148d5"></a><!-- doxytag: member="VISU::View::GetTitle" ref="6930e36faf0c5628d5b5ad9dc20148d5" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.View.GetTitle           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the title of the View frame. 
-</div>
-</div><p>
-<a class="anchor" name="ff8571273f82a27f46d43ea0419bafb1"></a><!-- doxytag: member="VISU::View::SetBackground" ref="ff8571273f82a27f46d43ea0419bafb1" args="(in SALOMEDS::Color theColor)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetBackground           </td>
-          <td>(</td>
-          <td class="paramtype">in SALOMEDS::Color&nbsp;</td>
-          <td class="paramname"> <em>theColor</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets background color of the View frame. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theColor</em>&nbsp;</td><td>Background color defined in <em>SALOMEDS.Color</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="a58313a02ba9c2a872740392197c78e2"></a><!-- doxytag: member="VISU::View::GetBackground" ref="a58313a02ba9c2a872740392197c78e2" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">SALOMEDS::Color VISU.View.GetBackground           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets background color of the View frame. 
-</div>
-</div><p>
-<a class="anchor" name="d9e3dfc74c7239ac9694fc41e8dfb95e"></a><!-- doxytag: member="VISU::View::EraseAll" ref="d9e3dfc74c7239ac9694fc41e8dfb95e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.EraseAll           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Removes all presentations (presentable objects) from the view. 
-</div>
-</div><p>
-<a class="anchor" name="db66b95801ce72fc207dbae4e9ada32c"></a><!-- doxytag: member="VISU::View::DisplayAll" ref="db66b95801ce72fc207dbae4e9ada32c" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.DisplayAll           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Displays all presentations (presentable objects) in the view. 
-</div>
-</div><p>
-<a class="anchor" name="c7f48239fd32867a22fa772fe258de3e"></a><!-- doxytag: member="VISU::View::Erase" ref="c7f48239fd32867a22fa772fe258de3e" args="(in PrsObject thePrsObj)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Erase           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrsObj</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Removes a definite presentation (presentable object) from the view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrsObj</em>&nbsp;</td><td>The presentation (presentable object) which should be deleted. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="61228d03b32683bded67da12990210b6"></a><!-- doxytag: member="VISU::View::Display" ref="61228d03b32683bded67da12990210b6" args="(in PrsObject thePrsObj)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Display           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrsObj</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Displays a definite presentation (presentable object) in the view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrsObj</em>&nbsp;</td><td>The presentation (presentable object) which should be displayed. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="14985b21e1c7b6afdddafa2f4d6f93b4"></a><!-- doxytag: member="VISU::View::DisplayOnly" ref="14985b21e1c7b6afdddafa2f4d6f93b4" args="(in PrsObject thePrsObj)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.DisplayOnly           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrsObj</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Allows to display only a definite presentation (presentable object) in the view. All other presentations are removed from the view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrsObj</em>&nbsp;</td><td>The presentation (presentable object) which should be displayed. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8090c783e2014156227700b014ad8c29"></a><!-- doxytag: member="VISU::View::Update" ref="8090c783e2014156227700b014ad8c29" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Update           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Updates the view. 
-</div>
-</div><p>
-<a class="anchor" name="be39869fe3484a4e2de0626254d9eeae"></a><!-- doxytag: member="VISU::View::SavePicture" ref="be39869fe3484a4e2de0626254d9eeae" args="(in string theFileName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.View.SavePicture           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFileName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Saves the view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theFileName</em>&nbsp;</td><td>The name of the file where the view will be saved. </td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>True, if the view have been saved successfully. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::View::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::View::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:31:17 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1View3D.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1View3D.html
deleted file mode 100644 (file)
index 6b98047..0000000
+++ /dev/null
@@ -1,1834 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1View3D.html">View3D</a></div>
-<h1>VISU.View3D Interface Reference</h1><!-- doxytag: class="VISU::View3D" --><!-- doxytag: inherits="VISU::View" -->3D view interface  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.View3D:<p><center><img src="interfaceVISU_1_1View3D__inherit__graph.jpg" border="0" usemap="#VISU_8View3D__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8View3D__inherit__map">
-<area href="interfaceVISU_1_1View.html" shape="rect" coords="17,84,105,108" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="17,9,105,33" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#b951c5e29bd2ae1745a4e88121002a58">XYZ</a> [3]</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#ffedf280b5a0a26b301dc5f14e0f119aa26e66a67998d291466e974d8d2f2de8">FRONT</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#ffedf280b5a0a26b301dc5f14e0f119abec0b47578b1a58f0dc2d02e07e7b93a">BACK</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#ffedf280b5a0a26b301dc5f14e0f119af37e817467d69110561c7a2c235f81b5">LEFT</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#ffedf280b5a0a26b301dc5f14e0f119a1ff00567d8034aed01cf9c093e9fc3b5">RIGHT</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#ffedf280b5a0a26b301dc5f14e0f119a512a49547c6e9a63d4462f234fa85662">TOP</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#ffedf280b5a0a26b301dc5f14e0f119abe5696e7ab32eb508bbd4e3625202976">BOTTOM</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#3dddbf28d4d95b783001c56d14b23acf518fa2cab3137db37ffe16a994fe1bae">XAxis</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#3dddbf28d4d95b783001c56d14b23acf037b710f024880bd2b01bbec1b6098a4">YAxis</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#3dddbf28d4d95b783001c56d14b23acf0f0f03a009799ae7f048b035c7608ccb">ZAxis</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#ffedf280b5a0a26b301dc5f14e0f119a">ViewType</a> { <br>
-&nbsp;&nbsp;<a class="el" href="interfaceVISU_1_1View3D.html#ffedf280b5a0a26b301dc5f14e0f119aa26e66a67998d291466e974d8d2f2de8">FRONT</a>, 
-<a class="el" href="interfaceVISU_1_1View3D.html#ffedf280b5a0a26b301dc5f14e0f119abec0b47578b1a58f0dc2d02e07e7b93a">BACK</a>, 
-<a class="el" href="interfaceVISU_1_1View3D.html#ffedf280b5a0a26b301dc5f14e0f119af37e817467d69110561c7a2c235f81b5">LEFT</a>, 
-<a class="el" href="interfaceVISU_1_1View3D.html#ffedf280b5a0a26b301dc5f14e0f119a1ff00567d8034aed01cf9c093e9fc3b5">RIGHT</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="interfaceVISU_1_1View3D.html#ffedf280b5a0a26b301dc5f14e0f119a512a49547c6e9a63d4462f234fa85662">TOP</a>, 
-<a class="el" href="interfaceVISU_1_1View3D.html#ffedf280b5a0a26b301dc5f14e0f119abe5696e7ab32eb508bbd4e3625202976">BOTTOM</a>
-<br>
- }</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#3dddbf28d4d95b783001c56d14b23acf">Axis</a> { <a class="el" href="interfaceVISU_1_1View3D.html#3dddbf28d4d95b783001c56d14b23acf518fa2cab3137db37ffe16a994fe1bae">XAxis</a>, 
-<a class="el" href="interfaceVISU_1_1View3D.html#3dddbf28d4d95b783001c56d14b23acf037b710f024880bd2b01bbec1b6098a4">YAxis</a>, 
-<a class="el" href="interfaceVISU_1_1View3D.html#3dddbf28d4d95b783001c56d14b23acf0f0f03a009799ae7f048b035c7608ccb">ZAxis</a>
- }</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce2131f7dc0fbe16bf5950fa21dfe7bec8f1f">OBJECTBROWSER</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213e07a7b41660016da6e4790a61e40e70b">VIEWER</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce21396ab6335f0ee2092ee104ffad56775b4">PYTHON</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213a84ae45219effaca695aa571bf695fc4">MESSAGES</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be015493a1dab2e71eac6a554710428eae5065">CENTER</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">ViewRepresentation</a> { <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce2131f7dc0fbe16bf5950fa21dfe7bec8f1f">OBJECTBROWSER</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213e07a7b41660016da6e4790a61e40e70b">VIEWER</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce21396ab6335f0ee2092ee104ffad56775b4">PYTHON</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213a84ae45219effaca695aa571bf695fc4">MESSAGES</a>
- }</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">ViewRepresentation enumeration  <a href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">ViewPosition</a> { <br>
-&nbsp;&nbsp;<a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be01545fe0740c7cad5e89fedcad2b26806749">TOP</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be015493a1dab2e71eac6a554710428eae5065">CENTER</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be01544f8fb8916808919e85dbad251c346f22">BOTTOM</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154890e1c4cdf828c641a0d36f8b5587edc">RIGHT</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be015436e2382243a4b7d321dd80242e0b2b47">LEFT</a>
-<br>
- }</td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#13338e8e67bd1e871b67a0008affa118">FitAll</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#71b74039635666f30ebdf658be995c91">SetView</a> (in <a class="el" href="interfaceVISU_1_1View3D.html#ffedf280b5a0a26b301dc5f14e0f119a">ViewType</a> theType)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#0638811e5b423a9afea74acf2cb06b90">SetPointOfView</a> (in <a class="el" href="interfaceVISU_1_1View3D.html#b951c5e29bd2ae1745a4e88121002a58">XYZ</a> theCoord)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1View3D.html#b951c5e29bd2ae1745a4e88121002a58">XYZ</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#c2eb412ead681eb70516299636046616">GetPointOfView</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#1543388c939121da8715691448e08c69">SetViewUp</a> (in <a class="el" href="interfaceVISU_1_1View3D.html#b951c5e29bd2ae1745a4e88121002a58">XYZ</a> theDir)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1View3D.html#b951c5e29bd2ae1745a4e88121002a58">XYZ</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#a913d03c11473ec3530923ce4f841067">GetViewUp</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#60080fba4d074a1c157a3f1c70f6f5f8">SetFocalPoint</a> (in <a class="el" href="interfaceVISU_1_1View3D.html#b951c5e29bd2ae1745a4e88121002a58">XYZ</a> theDir)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1View3D.html#b951c5e29bd2ae1745a4e88121002a58">XYZ</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#9265e9e32b564c861d132e3956ffd4ac">GetFocalPoint</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#790ac717f8ccf7b95112eefebc479c96">SetParallelScale</a> (in double theScale)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#0c7579a11d2d9866d9d9721f4e210d40">GetParallelScale</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#ff0fc35115bb11863cf93193451609c8">ScaleView</a> (in <a class="el" href="interfaceVISU_1_1View3D.html#3dddbf28d4d95b783001c56d14b23acf">Axis</a> theAxis, in double theParam)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#6540a53186c8eac9ca06469ac7e3b181">RemoveScale</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#cad7821f1417189d0c3d245d82eab999">SaveViewParams</a> (in string theName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#4ee94e7bd4de932b7810bd89c394c93f">RestoreViewParams</a> (in string theName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb5">PresentationType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#abef932a831a836e60f073d1748570fb">GetPresentationType</a> (in <a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a> thePrs)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#a4e29356ffe18b343c28da991aa69400">SetPresentationType</a> (in <a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a> thePrs, in <a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb5">PresentationType</a> thePrsType)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#8d4d5954f6c5c575fa2b33a8b7a46d53">IsShrinked</a> (in <a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a> thePrs)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#23435fe4098e90082b855a928dc0b8b7">SetShrinked</a> (in <a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a> thePrs, in boolean isShrinked)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#801211b638af1f926db1158454f95ca0">IsShaded</a> (in <a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a> thePrs)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#d0bc2dad9293c2bdd9581e9c7cce5489">SetShaded</a> (in <a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a> thePrs, in boolean isShaded)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#2ae36bceceba5d6ffd1f05ebd3dc88ac">GetOpacity</a> (in <a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a> thePrs)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#1b4babd599db9ce66ce9fd15a73fdb4a">SetOpacity</a> (in <a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a> thePrs, in double theOpacity)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#7d4d907eb1ad05cdd255f6c61f747902">GetLineWidth</a> (in <a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a> thePrs)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html#fdc78b3c94419a345e7d1056fd65fb88">SetLineWidth</a> (in <a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a> thePrs, in double theLineWidth)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#d4c3991dc0e4f751e23b17261d52178d">ShowPart</a> (in <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">ViewRepresentation</a> ViewRepr, in boolean state)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#2d790758989030510272a71fc5c26ecb">IsPartShown</a> (in <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">ViewRepresentation</a> ViewRepr)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#454584a30406826c35f2dcc88ed5e285">SplitRight</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Split workarea of this view.  <a href="#454584a30406826c35f2dcc88ed5e285"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#06c29b07b09c2e669fa5d37adbad5c89">SplitLeft</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Split workarea of this view.  <a href="#06c29b07b09c2e669fa5d37adbad5c89"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#fab9ec5d12c93924e3fd6600d460738e">SplitBottom</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Split workarea of this view.  <a href="#fab9ec5d12c93924e3fd6600d460738e"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#e399ee4c9665a7b496371f938d3e7fd3">SplitTop</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Split workarea of this view.  <a href="#e399ee4c9665a7b496371f938d3e7fd3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#c7cb8f7af67a6fc161ce1e1266cf6078">OnTop</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#d24a4fd9604a6b2da4d9f265b87b73e7">Attract</a> (in <a class="el" href="interfaceVISU_1_1View.html">View</a> theView)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#81523793df94f223086e2dfb7a9bde44">AttractAll</a> (in <a class="el" href="interfaceVISU_1_1View.html">View</a> theView)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#c51e42d9554731639821248cf5c51789">SetRelativePositionInSplitter</a> (in double thePosition)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#094aac0197dd3a66e8482ac9067c1200">SetRelativeSizeInSplitter</a> (in double theSize)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#5a6f6a0f2853ec6dbce40f8a0f058e67">SetRelativePositionX</a> (in double thePosition)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#d538c2c385e0542b0a04d1161833c9a7">SetRelativePositionY</a> (in double thePosition)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#1a82e7fd3d5b3c79690bfb17eeb19e8c">SetRelativeSizeX</a> (in double theSize)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#773d3140097f5d20568bb5bf7a244962">SetRelativeSizeY</a> (in double theSize)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#cd6524625b6ca8e3c49022459f106bed">SetViewWidth</a> (in long Width)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#b07ab6237cfdd70884a038af48fd7e72">SetViewHeight</a> (in long Height)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#904d6945f16117519d74dda54cf0aef0">GetViewWidth</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#56f2a1d86c80ebc81f9a0db71e25d3df">GetViewHeight</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#68a47a614cafe868ab89fad6ce117860">SetViewPositionHorizontal</a> (in <a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">ViewPosition</a> ViewPosHor)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#8df1d9425b90f9dd21c36acc3f9c444b">SetViewPositionVertical</a> (in <a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">ViewPosition</a> ViewPosVer)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#9357df128dabcd74c4d54ad04eda0d49">SetRelativePosition</a> (in double x, in double y)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#c2049cff1e9ee54312bd267154d9b69a">SetRelativeSize</a> (in double x, in double y)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#f52e1696f127af6ddffb7cb012411a26">Minimize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#71b5b17b0376653363709077e1597616">Restore</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#91cde31fe400a5f82c8bdbe7db3b5ef7">Maximize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#4071ba1dd44364ae0d8cc337a7544921">SetTitle</a> (in string theTitle)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#6930e36faf0c5628d5b5ad9dc20148d5">GetTitle</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#ff8571273f82a27f46d43ea0419bafb1">SetBackground</a> (in SALOMEDS::Color theColor)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">SALOMEDS::Color&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a58313a02ba9c2a872740392197c78e2">GetBackground</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#d9e3dfc74c7239ac9694fc41e8dfb95e">EraseAll</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#db66b95801ce72fc207dbae4e9ada32c">DisplayAll</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#c7f48239fd32867a22fa772fe258de3e">Erase</a> (in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a> thePrsObj)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61228d03b32683bded67da12990210b6">Display</a> (in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a> thePrsObj)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#14985b21e1c7b6afdddafa2f4d6f93b4">DisplayOnly</a> (in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a> thePrsObj)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#8090c783e2014156227700b014ad8c29">Update</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#be39869fe3484a4e2de0626254d9eeae">SavePicture</a> (in string theFileName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-This interface contains a set of methods necessary for representation of objects in 3D space. 
-<p>
-<hr><h2>Member Typedef Documentation</h2>
-<a class="anchor" name="b951c5e29bd2ae1745a4e88121002a58"></a><!-- doxytag: member="VISU::View3D::XYZ" ref="b951c5e29bd2ae1745a4e88121002a58" args="[3]" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef double <a class="el" href="interfaceVISU_1_1View3D.html#b951c5e29bd2ae1745a4e88121002a58">VISU.View3D.XYZ</a>[3]          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Data type defining coordinates in 3D space. 
-</div>
-</div><p>
-<hr><h2>Member Enumeration Documentation</h2>
-<a class="anchor" name="ffedf280b5a0a26b301dc5f14e0f119a"></a><!-- doxytag: member="VISU::View3D::ViewType" ref="ffedf280b5a0a26b301dc5f14e0f119a" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1View3D.html#ffedf280b5a0a26b301dc5f14e0f119a">VISU::View3D::ViewType</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-This enumeration contains a set of elements determining a predefined point of view (position of the camera in 3D space relative to the presentable object). <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="ffedf280b5a0a26b301dc5f14e0f119aa26e66a67998d291466e974d8d2f2de8"></a><!-- doxytag: member="FRONT" ref="ffedf280b5a0a26b301dc5f14e0f119aa26e66a67998d291466e974d8d2f2de8" args="" -->FRONT</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="ffedf280b5a0a26b301dc5f14e0f119abec0b47578b1a58f0dc2d02e07e7b93a"></a><!-- doxytag: member="BACK" ref="ffedf280b5a0a26b301dc5f14e0f119abec0b47578b1a58f0dc2d02e07e7b93a" args="" -->BACK</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="ffedf280b5a0a26b301dc5f14e0f119af37e817467d69110561c7a2c235f81b5"></a><!-- doxytag: member="LEFT" ref="ffedf280b5a0a26b301dc5f14e0f119af37e817467d69110561c7a2c235f81b5" args="" -->LEFT</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="ffedf280b5a0a26b301dc5f14e0f119a1ff00567d8034aed01cf9c093e9fc3b5"></a><!-- doxytag: member="RIGHT" ref="ffedf280b5a0a26b301dc5f14e0f119a1ff00567d8034aed01cf9c093e9fc3b5" args="" -->RIGHT</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="ffedf280b5a0a26b301dc5f14e0f119a512a49547c6e9a63d4462f234fa85662"></a><!-- doxytag: member="TOP" ref="ffedf280b5a0a26b301dc5f14e0f119a512a49547c6e9a63d4462f234fa85662" args="" -->TOP</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="ffedf280b5a0a26b301dc5f14e0f119abe5696e7ab32eb508bbd4e3625202976"></a><!-- doxytag: member="BOTTOM" ref="ffedf280b5a0a26b301dc5f14e0f119abe5696e7ab32eb508bbd4e3625202976" args="" -->BOTTOM</em>&nbsp;</td><td>
-</td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="3dddbf28d4d95b783001c56d14b23acf"></a><!-- doxytag: member="VISU::View3D::Axis" ref="3dddbf28d4d95b783001c56d14b23acf" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1View3D.html#3dddbf28d4d95b783001c56d14b23acf">VISU::View3D::Axis</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-This enumeration contains a set of elements determining the axis <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="3dddbf28d4d95b783001c56d14b23acf518fa2cab3137db37ffe16a994fe1bae"></a><!-- doxytag: member="XAxis" ref="3dddbf28d4d95b783001c56d14b23acf518fa2cab3137db37ffe16a994fe1bae" args="" -->XAxis</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="3dddbf28d4d95b783001c56d14b23acf037b710f024880bd2b01bbec1b6098a4"></a><!-- doxytag: member="YAxis" ref="3dddbf28d4d95b783001c56d14b23acf037b710f024880bd2b01bbec1b6098a4" args="" -->YAxis</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="3dddbf28d4d95b783001c56d14b23acf0f0f03a009799ae7f048b035c7608ccb"></a><!-- doxytag: member="ZAxis" ref="3dddbf28d4d95b783001c56d14b23acf0f0f03a009799ae7f048b035c7608ccb" args="" -->ZAxis</em>&nbsp;</td><td>
-</td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="a666392d875e267305ad2694ce3ce213"></a><!-- doxytag: member="VISU::View3D::ViewRepresentation" ref="a666392d875e267305ad2694ce3ce213" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">VISU::View::ViewRepresentation</a><code> [inherited]</code>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-displaying part ("ALL" isn't setable) <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="a666392d875e267305ad2694ce3ce2131f7dc0fbe16bf5950fa21dfe7bec8f1f"></a><!-- doxytag: member="OBJECTBROWSER" ref="a666392d875e267305ad2694ce3ce2131f7dc0fbe16bf5950fa21dfe7bec8f1f" args="" -->OBJECTBROWSER</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="a666392d875e267305ad2694ce3ce213e07a7b41660016da6e4790a61e40e70b"></a><!-- doxytag: member="VIEWER" ref="a666392d875e267305ad2694ce3ce213e07a7b41660016da6e4790a61e40e70b" args="" -->VIEWER</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="a666392d875e267305ad2694ce3ce21396ab6335f0ee2092ee104ffad56775b4"></a><!-- doxytag: member="PYTHON" ref="a666392d875e267305ad2694ce3ce21396ab6335f0ee2092ee104ffad56775b4" args="" -->PYTHON</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="a666392d875e267305ad2694ce3ce213a84ae45219effaca695aa571bf695fc4"></a><!-- doxytag: member="MESSAGES" ref="a666392d875e267305ad2694ce3ce213a84ae45219effaca695aa571bf695fc4" args="" -->MESSAGES</em>&nbsp;</td><td>
-</td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="61d3152c0ff5d024f84b2fe149be0154"></a><!-- doxytag: member="VISU::View3D::ViewPosition" ref="61d3152c0ff5d024f84b2fe149be0154" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">VISU::View::ViewPosition</a><code> [inherited]</code>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-<dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="61d3152c0ff5d024f84b2fe149be01545fe0740c7cad5e89fedcad2b26806749"></a><!-- doxytag: member="TOP" ref="61d3152c0ff5d024f84b2fe149be01545fe0740c7cad5e89fedcad2b26806749" args="" -->TOP</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="61d3152c0ff5d024f84b2fe149be015493a1dab2e71eac6a554710428eae5065"></a><!-- doxytag: member="CENTER" ref="61d3152c0ff5d024f84b2fe149be015493a1dab2e71eac6a554710428eae5065" args="" -->CENTER</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="61d3152c0ff5d024f84b2fe149be01544f8fb8916808919e85dbad251c346f22"></a><!-- doxytag: member="BOTTOM" ref="61d3152c0ff5d024f84b2fe149be01544f8fb8916808919e85dbad251c346f22" args="" -->BOTTOM</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="61d3152c0ff5d024f84b2fe149be0154890e1c4cdf828c641a0d36f8b5587edc"></a><!-- doxytag: member="RIGHT" ref="61d3152c0ff5d024f84b2fe149be0154890e1c4cdf828c641a0d36f8b5587edc" args="" -->RIGHT</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="61d3152c0ff5d024f84b2fe149be015436e2382243a4b7d321dd80242e0b2b47"></a><!-- doxytag: member="LEFT" ref="61d3152c0ff5d024f84b2fe149be015436e2382243a4b7d321dd80242e0b2b47" args="" -->LEFT</em>&nbsp;</td><td>
-</td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="13338e8e67bd1e871b67a0008affa118"></a><!-- doxytag: member="VISU::View3D::FitAll" ref="13338e8e67bd1e871b67a0008affa118" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View3D.FitAll           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Makes all presentations, which are currently present in the view, completely visible. 
-</div>
-</div><p>
-<a class="anchor" name="71b74039635666f30ebdf658be995c91"></a><!-- doxytag: member="VISU::View3D::SetView" ref="71b74039635666f30ebdf658be995c91" args="(in ViewType theType)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View3D.SetView           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View3D.html#ffedf280b5a0a26b301dc5f14e0f119a">ViewType</a>&nbsp;</td>
-          <td class="paramname"> <em>theType</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets a predefined point of view (FRONT, BACK, LEFT, RIGHT, TOP, BOTTOM). (In other words it means a predefined position of the camera in 3D space with respect to the object which is represented.) 
-</div>
-</div><p>
-<a class="anchor" name="0638811e5b423a9afea74acf2cb06b90"></a><!-- doxytag: member="VISU::View3D::SetPointOfView" ref="0638811e5b423a9afea74acf2cb06b90" args="(in XYZ theCoord)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View3D.SetPointOfView           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View3D.html#b951c5e29bd2ae1745a4e88121002a58">XYZ</a>&nbsp;</td>
-          <td class="paramname"> <em>theCoord</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the position of the camera in 3D space. This point is used as the first point of the vector defining the view direction of the camera. 
-</div>
-</div><p>
-<a class="anchor" name="c2eb412ead681eb70516299636046616"></a><!-- doxytag: member="VISU::View3D::GetPointOfView" ref="c2eb412ead681eb70516299636046616" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1View3D.html#b951c5e29bd2ae1745a4e88121002a58">XYZ</a> VISU.View3D.GetPointOfView           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the position of the camera in 3D space. This point is used as the first point of the vector defining the view direction of the camera. 
-</div>
-</div><p>
-<a class="anchor" name="1543388c939121da8715691448e08c69"></a><!-- doxytag: member="VISU::View3D::SetViewUp" ref="1543388c939121da8715691448e08c69" args="(in XYZ theDir)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View3D.SetViewUp           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View3D.html#b951c5e29bd2ae1745a4e88121002a58">XYZ</a>&nbsp;</td>
-          <td class="paramname"> <em>theDir</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the vertical line of the camera in 3D space. 
-</div>
-</div><p>
-<a class="anchor" name="a913d03c11473ec3530923ce4f841067"></a><!-- doxytag: member="VISU::View3D::GetViewUp" ref="a913d03c11473ec3530923ce4f841067" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1View3D.html#b951c5e29bd2ae1745a4e88121002a58">XYZ</a> VISU.View3D.GetViewUp           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the vertical line of the camera in 3D space. 
-</div>
-</div><p>
-<a class="anchor" name="60080fba4d074a1c157a3f1c70f6f5f8"></a><!-- doxytag: member="VISU::View3D::SetFocalPoint" ref="60080fba4d074a1c157a3f1c70f6f5f8" args="(in XYZ theDir)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View3D.SetFocalPoint           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View3D.html#b951c5e29bd2ae1745a4e88121002a58">XYZ</a>&nbsp;</td>
-          <td class="paramname"> <em>theDir</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the point of sight of the camera. This point is used as the second point of the vector defining the view direction of the camera. 
-</div>
-</div><p>
-<a class="anchor" name="9265e9e32b564c861d132e3956ffd4ac"></a><!-- doxytag: member="VISU::View3D::GetFocalPoint" ref="9265e9e32b564c861d132e3956ffd4ac" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1View3D.html#b951c5e29bd2ae1745a4e88121002a58">XYZ</a> VISU.View3D.GetFocalPoint           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the point of sight of the camera. This point is used as the second point of the vector defining the view direction of the camera. 
-</div>
-</div><p>
-<a class="anchor" name="790ac717f8ccf7b95112eefebc479c96"></a><!-- doxytag: member="VISU::View3D::SetParallelScale" ref="790ac717f8ccf7b95112eefebc479c96" args="(in double theScale)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View3D.SetParallelScale           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theScale</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Zooming of the presentable object. Sets the scale. 
-</div>
-</div><p>
-<a class="anchor" name="0c7579a11d2d9866d9d9721f4e210d40"></a><!-- doxytag: member="VISU::View3D::GetParallelScale" ref="0c7579a11d2d9866d9d9721f4e210d40" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.View3D.GetParallelScale           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Zooming of the presentable object. Gets the scale. 
-</div>
-</div><p>
-<a class="anchor" name="ff0fc35115bb11863cf93193451609c8"></a><!-- doxytag: member="VISU::View3D::ScaleView" ref="ff0fc35115bb11863cf93193451609c8" args="(in Axis theAxis, in double theParam)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View3D.ScaleView           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View3D.html#3dddbf28d4d95b783001c56d14b23acf">Axis</a>&nbsp;</td>
-          <td class="paramname"> <em>theAxis</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theParam</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Scaling of the view along a definite axis. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theAxis</em>&nbsp;</td><td>The axis of the scaling </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theParam</em>&nbsp;</td><td>The coefficient of the scaling </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="6540a53186c8eac9ca06469ac7e3b181"></a><!-- doxytag: member="VISU::View3D::RemoveScale" ref="6540a53186c8eac9ca06469ac7e3b181" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View3D.RemoveScale           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Removes the scaling of the view. 
-</div>
-</div><p>
-<a class="anchor" name="cad7821f1417189d0c3d245d82eab999"></a><!-- doxytag: member="VISU::View3D::SaveViewParams" ref="cad7821f1417189d0c3d245d82eab999" args="(in string theName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.View3D.SaveViewParams           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Saves view parameters. <dl compact><dt><b>Returns:</b></dt><dd>True if the view parameters have been created, False if the parameters have been modified. </dd></dl>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theName</em>&nbsp;</td><td>The name under which the view parameters will be saved. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="4ee94e7bd4de932b7810bd89c394c93f"></a><!-- doxytag: member="VISU::View3D::RestoreViewParams" ref="4ee94e7bd4de932b7810bd89c394c93f" args="(in string theName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.View3D.RestoreViewParams           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Restores view parameters. <dl compact><dt><b>Returns:</b></dt><dd>True if the view parameters have been found and applied to the view, False if the parameters with this name don't exist. </dd></dl>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theName</em>&nbsp;</td><td>The name of the view parameters which will be restored. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="abef932a831a836e60f073d1748570fb"></a><!-- doxytag: member="VISU::View3D::GetPresentationType" ref="abef932a831a836e60f073d1748570fb" args="(in ScalarMap thePrs)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb5">PresentationType</a> VISU.View3D.GetPresentationType           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrs</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Get representation type of the given presentation in this view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrs</em>&nbsp;</td><td>Object to get a representation type of. </td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd><em>PresentationType</em> Representation type of object in this view. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="a4e29356ffe18b343c28da991aa69400"></a><!-- doxytag: member="VISU::View3D::SetPresentationType" ref="a4e29356ffe18b343c28da991aa69400" args="(in ScalarMap thePrs, in PresentationType thePrsType)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.View3D.SetPresentationType           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrs</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb5">PresentationType</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrsType</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set representation type of the given presentation in this view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrs</em>&nbsp;</td><td>Object to set a representation type of. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>thePrsType</em>&nbsp;</td><td>Representation type to be set to the given object. </td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>Empty string in case of success, error description in case of failure. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8d4d5954f6c5c575fa2b33a8b7a46d53"></a><!-- doxytag: member="VISU::View3D::IsShrinked" ref="8d4d5954f6c5c575fa2b33a8b7a46d53" args="(in ScalarMap thePrs)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.View3D.IsShrinked           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrs</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Get shrink state of the given presentation in this view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrs</em>&nbsp;</td><td>Object to get a shrink state of. </td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>TRUE if <em>thePrs</em> is shrinked in this view, FALSE overwise. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="23435fe4098e90082b855a928dc0b8b7"></a><!-- doxytag: member="VISU::View3D::SetShrinked" ref="23435fe4098e90082b855a928dc0b8b7" args="(in ScalarMap thePrs, in boolean isShrinked)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.View3D.SetShrinked           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrs</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>isShrinked</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Make the given presentation shrinked or not shrinked in this view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrs</em>&nbsp;</td><td>Object to change a shrink state of. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>isShrinked</em>&nbsp;</td><td>Pass TRUE to make <em>thePrs</em> shrinked, FALSE overwise. </td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>Empty string in case of success, error description in case of failure. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="801211b638af1f926db1158454f95ca0"></a><!-- doxytag: member="VISU::View3D::IsShaded" ref="801211b638af1f926db1158454f95ca0" args="(in ScalarMap thePrs)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.View3D.IsShaded           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrs</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Get shading state of the given presentation in this view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrs</em>&nbsp;</td><td>Object to get a shading state of. </td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>TRUE if <em>thePrs</em> is shaded in this view, FALSE overwise. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="d0bc2dad9293c2bdd9581e9c7cce5489"></a><!-- doxytag: member="VISU::View3D::SetShaded" ref="d0bc2dad9293c2bdd9581e9c7cce5489" args="(in ScalarMap thePrs, in boolean isShaded)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.View3D.SetShaded           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrs</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>isShaded</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Make the given presentation shaded or not shaded in this view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrs</em>&nbsp;</td><td>Object to set a shading state of. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>isShaded</em>&nbsp;</td><td>Pass TRUE to make <em>thePrs</em> shaded, FALSE overwise. </td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>Empty string in case of success, error description in case of failure. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="2ae36bceceba5d6ffd1f05ebd3dc88ac"></a><!-- doxytag: member="VISU::View3D::GetOpacity" ref="2ae36bceceba5d6ffd1f05ebd3dc88ac" args="(in ScalarMap thePrs)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.View3D.GetOpacity           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrs</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Get opacity of the given presentation in this view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrs</em>&nbsp;</td><td>Object to get an opacity of. </td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>Opacity value in range [0, 1], 0 - transparent, 1 - opaque. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="1b4babd599db9ce66ce9fd15a73fdb4a"></a><!-- doxytag: member="VISU::View3D::SetOpacity" ref="1b4babd599db9ce66ce9fd15a73fdb4a" args="(in ScalarMap thePrs, in double theOpacity)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.View3D.SetOpacity           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrs</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theOpacity</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set opacity of the given presentation in this view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrs</em>&nbsp;</td><td>Object to set an opacity of. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theOpacity</em>&nbsp;</td><td>Opacity value [0, 1]. 0 - transparent, 1 - opaque. </td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>Empty string in case of success, error description in case of failure. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="7d4d907eb1ad05cdd255f6c61f747902"></a><!-- doxytag: member="VISU::View3D::GetLineWidth" ref="7d4d907eb1ad05cdd255f6c61f747902" args="(in ScalarMap thePrs)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">double VISU.View3D.GetLineWidth           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrs</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Get line width of the given presentation in this view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrs</em>&nbsp;</td><td>Object to get a line width of. </td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>Line width of <em>thePrs</em> in this view. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="fdc78b3c94419a345e7d1056fd65fb88"></a><!-- doxytag: member="VISU::View3D::SetLineWidth" ref="fdc78b3c94419a345e7d1056fd65fb88" args="(in ScalarMap thePrs, in double theLineWidth)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.View3D.SetLineWidth           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrs</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theLineWidth</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set line width of the given presentation in this view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrs</em>&nbsp;</td><td>Object to set a line width of. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>theLineWidth</em>&nbsp;</td><td>Line width value. Recommended values are in range [1, 10]. </td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>Empty string in case of success, error description in case of failure. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="d4c3991dc0e4f751e23b17261d52178d"></a><!-- doxytag: member="VISU::View3D::ShowPart" ref="d4c3991dc0e4f751e23b17261d52178d" args="(in ViewRepresentation ViewRepr, in boolean state)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.ShowPart           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">ViewRepresentation</a>&nbsp;</td>
-          <td class="paramname"> <em>ViewRepr</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>state</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="2d790758989030510272a71fc5c26ecb"></a><!-- doxytag: member="VISU::View3D::IsPartShown" ref="2d790758989030510272a71fc5c26ecb" args="(in ViewRepresentation ViewRepr)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.View.IsPartShown           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">ViewRepresentation</a>&nbsp;</td>
-          <td class="paramname"> <em>ViewRepr</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="454584a30406826c35f2dcc88ed5e285"></a><!-- doxytag: member="VISU::View3D::SplitRight" ref="454584a30406826c35f2dcc88ed5e285" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SplitRight           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Horizontally split workarea of this view. This view is moved in a new right area. 
-</div>
-</div><p>
-<a class="anchor" name="06c29b07b09c2e669fa5d37adbad5c89"></a><!-- doxytag: member="VISU::View3D::SplitLeft" ref="06c29b07b09c2e669fa5d37adbad5c89" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SplitLeft           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Horizontally split workarea of this view. This view stays in an old left area, others are moved in a new right area. 
-</div>
-</div><p>
-<a class="anchor" name="fab9ec5d12c93924e3fd6600d460738e"></a><!-- doxytag: member="VISU::View3D::SplitBottom" ref="fab9ec5d12c93924e3fd6600d460738e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SplitBottom           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Vertically split workarea of this view. This view is moved in a new bottom area. 
-</div>
-</div><p>
-<a class="anchor" name="e399ee4c9665a7b496371f938d3e7fd3"></a><!-- doxytag: member="VISU::View3D::SplitTop" ref="e399ee4c9665a7b496371f938d3e7fd3" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SplitTop           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Vertically split workarea of this view. This view stays in an old top area, others are moved in a new bottom area. 
-</div>
-</div><p>
-<a class="anchor" name="c7cb8f7af67a6fc161ce1e1266cf6078"></a><!-- doxytag: member="VISU::View3D::OnTop" ref="c7cb8f7af67a6fc161ce1e1266cf6078" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.OnTop           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Put this view window on top of its work area. 
-</div>
-</div><p>
-<a class="anchor" name="d24a4fd9604a6b2da4d9f265b87b73e7"></a><!-- doxytag: member="VISU::View3D::Attract" ref="d24a4fd9604a6b2da4d9f265b87b73e7" args="(in View theView)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Attract           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html">View</a>&nbsp;</td>
-          <td class="paramname"> <em>theView</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Put <em>theView</em> in workarea of this view right after it. If <em>theView</em> was alone in its workarea, workarea of <em>theView</em> will be destroyed. If <em>theView</em> was in the same workarea with this view, simple reordering will take place. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theView</em>&nbsp;</td><td>A view window to be attracted to this one. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="81523793df94f223086e2dfb7a9bde44"></a><!-- doxytag: member="VISU::View3D::AttractAll" ref="81523793df94f223086e2dfb7a9bde44" args="(in View theView)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.AttractAll           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html">View</a>&nbsp;</td>
-          <td class="paramname"> <em>theView</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Put all the view windows from workarea of <em>theView</em> in workarea of this view right after it. Workarea of <em>theView</em> will be destroyed. If <em>theView</em> was in the same workarea with this view, simple reordering will take place. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theView</em>&nbsp;</td><td>A view window to be attracted to this one together with all its workarea. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="c51e42d9554731639821248cf5c51789"></a><!-- doxytag: member="VISU::View3D::SetRelativePositionInSplitter" ref="c51e42d9554731639821248cf5c51789" args="(in double thePosition)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativePositionInSplitter           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>thePosition</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set position of this view window relatively its splitter. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePosition</em>&nbsp;</td><td>Desired position of this view window relatively its splitter. Meaningfull values lays in range [0..1].</td></tr>
-  </table>
-</dl>
-Direction of positioning is defined by the splitter orientation. 
-</div>
-</div><p>
-<a class="anchor" name="094aac0197dd3a66e8482ac9067c1200"></a><!-- doxytag: member="VISU::View3D::SetRelativeSizeInSplitter" ref="094aac0197dd3a66e8482ac9067c1200" args="(in double theSize)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativeSizeInSplitter           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theSize</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set size of this view window relatively its splitter. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theSize</em>&nbsp;</td><td>Desired size of this view window relatively its splitter. Meaningfull values lays in range [0..1].</td></tr>
-  </table>
-</dl>
-Direction of resizing is defined by the splitter orientation. 
-</div>
-</div><p>
-<a class="anchor" name="5a6f6a0f2853ec6dbce40f8a0f058e67"></a><!-- doxytag: member="VISU::View3D::SetRelativePositionX" ref="5a6f6a0f2853ec6dbce40f8a0f058e67" args="(in double thePosition)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativePositionX           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>thePosition</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set horizontal position of this view window relatively its workstack. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePosition</em>&nbsp;</td><td>Desired horizontal position of this view window relatively its workstack. Meaningfull values lays in range [0..1]. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="d538c2c385e0542b0a04d1161833c9a7"></a><!-- doxytag: member="VISU::View3D::SetRelativePositionY" ref="d538c2c385e0542b0a04d1161833c9a7" args="(in double thePosition)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativePositionY           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>thePosition</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set vertical position of this view window relatively its workstack. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePosition</em>&nbsp;</td><td>Desired vertical position of this view window relatively its workstack. Meaningfull values lays in range [0..1]. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="1a82e7fd3d5b3c79690bfb17eeb19e8c"></a><!-- doxytag: member="VISU::View3D::SetRelativeSizeX" ref="1a82e7fd3d5b3c79690bfb17eeb19e8c" args="(in double theSize)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativeSizeX           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theSize</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set horizontal size of this view window relatively its workstack. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theSize</em>&nbsp;</td><td>Desired horizontal size of this view window relatively its workstack. Meaningfull values lays in range [0..1]. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="773d3140097f5d20568bb5bf7a244962"></a><!-- doxytag: member="VISU::View3D::SetRelativeSizeY" ref="773d3140097f5d20568bb5bf7a244962" args="(in double theSize)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativeSizeY           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theSize</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set vertical size of this view window relatively its workstack. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theSize</em>&nbsp;</td><td>Desired vertical size of this view window relatively its workstack. Meaningfull values lays in range [0..1]. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="cd6524625b6ca8e3c49022459f106bed"></a><!-- doxytag: member="VISU::View3D::SetViewWidth" ref="cd6524625b6ca8e3c49022459f106bed" args="(in long Width)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetViewWidth           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>Width</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Old methods for view parameters management, they don't work now 
-</div>
-</div><p>
-<a class="anchor" name="b07ab6237cfdd70884a038af48fd7e72"></a><!-- doxytag: member="VISU::View3D::SetViewHeight" ref="b07ab6237cfdd70884a038af48fd7e72" args="(in long Height)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetViewHeight           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>Height</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="904d6945f16117519d74dda54cf0aef0"></a><!-- doxytag: member="VISU::View3D::GetViewWidth" ref="904d6945f16117519d74dda54cf0aef0" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.View.GetViewWidth           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="56f2a1d86c80ebc81f9a0db71e25d3df"></a><!-- doxytag: member="VISU::View3D::GetViewHeight" ref="56f2a1d86c80ebc81f9a0db71e25d3df" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.View.GetViewHeight           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="68a47a614cafe868ab89fad6ce117860"></a><!-- doxytag: member="VISU::View3D::SetViewPositionHorizontal" ref="68a47a614cafe868ab89fad6ce117860" args="(in ViewPosition ViewPosHor)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetViewPositionHorizontal           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">ViewPosition</a>&nbsp;</td>
-          <td class="paramname"> <em>ViewPosHor</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="8df1d9425b90f9dd21c36acc3f9c444b"></a><!-- doxytag: member="VISU::View3D::SetViewPositionVertical" ref="8df1d9425b90f9dd21c36acc3f9c444b" args="(in ViewPosition ViewPosVer)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetViewPositionVertical           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">ViewPosition</a>&nbsp;</td>
-          <td class="paramname"> <em>ViewPosVer</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="9357df128dabcd74c4d54ad04eda0d49"></a><!-- doxytag: member="VISU::View3D::SetRelativePosition" ref="9357df128dabcd74c4d54ad04eda0d49" args="(in double x, in double y)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativePosition           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="c2049cff1e9ee54312bd267154d9b69a"></a><!-- doxytag: member="VISU::View3D::SetRelativeSize" ref="c2049cff1e9ee54312bd267154d9b69a" args="(in double x, in double y)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativeSize           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="f52e1696f127af6ddffb7cb012411a26"></a><!-- doxytag: member="VISU::View3D::Minimize" ref="f52e1696f127af6ddffb7cb012411a26" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Minimize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="71b5b17b0376653363709077e1597616"></a><!-- doxytag: member="VISU::View3D::Restore" ref="71b5b17b0376653363709077e1597616" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Restore           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="91cde31fe400a5f82c8bdbe7db3b5ef7"></a><!-- doxytag: member="VISU::View3D::Maximize" ref="91cde31fe400a5f82c8bdbe7db3b5ef7" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Maximize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="4071ba1dd44364ae0d8cc337a7544921"></a><!-- doxytag: member="VISU::View3D::SetTitle" ref="4071ba1dd44364ae0d8cc337a7544921" args="(in string theTitle)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetTitle           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theTitle</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the title of the View frame. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theTitle</em>&nbsp;</td><td>String parameter defining the title of the View frame. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="6930e36faf0c5628d5b5ad9dc20148d5"></a><!-- doxytag: member="VISU::View3D::GetTitle" ref="6930e36faf0c5628d5b5ad9dc20148d5" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.View.GetTitle           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the title of the View frame. 
-</div>
-</div><p>
-<a class="anchor" name="ff8571273f82a27f46d43ea0419bafb1"></a><!-- doxytag: member="VISU::View3D::SetBackground" ref="ff8571273f82a27f46d43ea0419bafb1" args="(in SALOMEDS::Color theColor)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetBackground           </td>
-          <td>(</td>
-          <td class="paramtype">in SALOMEDS::Color&nbsp;</td>
-          <td class="paramname"> <em>theColor</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets background color of the View frame. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theColor</em>&nbsp;</td><td>Background color defined in <em>SALOMEDS.Color</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="a58313a02ba9c2a872740392197c78e2"></a><!-- doxytag: member="VISU::View3D::GetBackground" ref="a58313a02ba9c2a872740392197c78e2" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">SALOMEDS::Color VISU.View.GetBackground           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets background color of the View frame. 
-</div>
-</div><p>
-<a class="anchor" name="d9e3dfc74c7239ac9694fc41e8dfb95e"></a><!-- doxytag: member="VISU::View3D::EraseAll" ref="d9e3dfc74c7239ac9694fc41e8dfb95e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.EraseAll           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Removes all presentations (presentable objects) from the view. 
-</div>
-</div><p>
-<a class="anchor" name="db66b95801ce72fc207dbae4e9ada32c"></a><!-- doxytag: member="VISU::View3D::DisplayAll" ref="db66b95801ce72fc207dbae4e9ada32c" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.DisplayAll           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Displays all presentations (presentable objects) in the view. 
-</div>
-</div><p>
-<a class="anchor" name="c7f48239fd32867a22fa772fe258de3e"></a><!-- doxytag: member="VISU::View3D::Erase" ref="c7f48239fd32867a22fa772fe258de3e" args="(in PrsObject thePrsObj)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Erase           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrsObj</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Removes a definite presentation (presentable object) from the view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrsObj</em>&nbsp;</td><td>The presentation (presentable object) which should be deleted. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="61228d03b32683bded67da12990210b6"></a><!-- doxytag: member="VISU::View3D::Display" ref="61228d03b32683bded67da12990210b6" args="(in PrsObject thePrsObj)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Display           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrsObj</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Displays a definite presentation (presentable object) in the view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrsObj</em>&nbsp;</td><td>The presentation (presentable object) which should be displayed. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="14985b21e1c7b6afdddafa2f4d6f93b4"></a><!-- doxytag: member="VISU::View3D::DisplayOnly" ref="14985b21e1c7b6afdddafa2f4d6f93b4" args="(in PrsObject thePrsObj)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.DisplayOnly           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrsObj</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Allows to display only a definite presentation (presentable object) in the view. All other presentations are removed from the view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrsObj</em>&nbsp;</td><td>The presentation (presentable object) which should be displayed. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8090c783e2014156227700b014ad8c29"></a><!-- doxytag: member="VISU::View3D::Update" ref="8090c783e2014156227700b014ad8c29" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Update           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Updates the view. 
-</div>
-</div><p>
-<a class="anchor" name="be39869fe3484a4e2de0626254d9eeae"></a><!-- doxytag: member="VISU::View3D::SavePicture" ref="be39869fe3484a4e2de0626254d9eeae" args="(in string theFileName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.View.SavePicture           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFileName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Saves the view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theFileName</em>&nbsp;</td><td>The name of the file where the view will be saved. </td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>True, if the view have been saved successfully. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::View3D::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::View3D::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:31:18 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1View3D__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1View3D__inherit__graph.jpg
deleted file mode 100644 (file)
index ddfcb30..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1View3D__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ViewManager.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ViewManager.html
deleted file mode 100644 (file)
index b7d573f..0000000
+++ /dev/null
@@ -1,198 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1ViewManager.html">ViewManager</a></div>
-<h1>VISU.ViewManager Interface Reference</h1><!-- doxytag: class="VISU::ViewManager" --><!-- doxytag: inherits="VISU::Base" -->Interface of the ViewManager.  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.ViewManager:<p><center><img src="interfaceVISU_1_1ViewManager__inherit__graph.jpg" border="0" usemap="#VISU_8ViewManager__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8ViewManager__inherit__map">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="37,9,125,33" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1View.html">View</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ViewManager.html#29565d6109c406e1788fe38f3cb0b86b">GetCurrentView</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Getting an active View Frame.  <a href="#29565d6109c406e1788fe38f3cb0b86b"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1View3D.html">View3D</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ViewManager.html#ac015d77e09c9fc2bc2140e84f393df4">Create3DView</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creation of a 3d View.  <a href="#ac015d77e09c9fc2bc2140e84f393df4"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1TableView.html">TableView</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ViewManager.html#5cace760be5e742862542f282bf45e92">CreateTableView</a> (in <a class="el" href="interfaceVISU_1_1Table.html">Table</a> theTable)</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creation of a <a class="el" href="interfaceVISU_1_1Table.html">Table</a> View.  <a href="#5cace760be5e742862542f282bf45e92"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1XYPlot.html">XYPlot</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ViewManager.html#38de690b7afce51ebe7c51e44324634d">CreateXYPlot</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creation of a 2D plot View.  <a href="#38de690b7afce51ebe7c51e44324634d"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ViewManager.html#59c0b7dae7ded4c071bee9aad5c467a2">Destroy</a> (in <a class="el" href="interfaceVISU_1_1View.html">View</a> theView)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-The <a class="el" href="interfaceVISU_1_1ViewManager.html">ViewManager</a> is necessary for work with view windows (creation and deletion). 
-<p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="29565d6109c406e1788fe38f3cb0b86b"></a><!-- doxytag: member="VISU::ViewManager::GetCurrentView" ref="29565d6109c406e1788fe38f3cb0b86b" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1View.html">View</a> VISU.ViewManager.GetCurrentView           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns an object reference to the active View Frame. Type of the View must be checked. <dl compact><dt><b>Note:</b></dt><dd><br>
-Returns nil if there are no views currently opened. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="ac015d77e09c9fc2bc2140e84f393df4"></a><!-- doxytag: member="VISU::ViewManager::Create3DView" ref="ac015d77e09c9fc2bc2140e84f393df4" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1View3D.html">View3D</a> VISU.ViewManager.Create3DView           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns an object reference to the newly created 3D View. 
-</div>
-</div><p>
-<a class="anchor" name="5cace760be5e742862542f282bf45e92"></a><!-- doxytag: member="VISU::ViewManager::CreateTableView" ref="5cace760be5e742862542f282bf45e92" args="(in Table theTable)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1TableView.html">TableView</a> VISU.ViewManager.CreateTableView           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1Table.html">Table</a>&nbsp;</td>
-          <td class="paramname"> <em>theTable</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns an object reference to the newly created <a class="el" href="interfaceVISU_1_1Table.html">Table</a> View. 
-</div>
-</div><p>
-<a class="anchor" name="38de690b7afce51ebe7c51e44324634d"></a><!-- doxytag: member="VISU::ViewManager::CreateXYPlot" ref="38de690b7afce51ebe7c51e44324634d" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1XYPlot.html">XYPlot</a> VISU.ViewManager.CreateXYPlot           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns an object reference to the newly created 2D plot View. 
-</div>
-</div><p>
-<a class="anchor" name="59c0b7dae7ded4c071bee9aad5c467a2"></a><!-- doxytag: member="VISU::ViewManager::Destroy" ref="59c0b7dae7ded4c071bee9aad5c467a2" args="(in View theView)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.ViewManager.Destroy           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html">View</a>&nbsp;</td>
-          <td class="paramname"> <em>theView</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Deletes a definite view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theView</em>&nbsp;</td><td>The view which should be deleted. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::ViewManager::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::ViewManager::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:31:21 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ViewManager__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ViewManager__inherit__graph.jpg
deleted file mode 100644 (file)
index e02fe03..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1ViewManager__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1View__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1View__inherit__graph.jpg
deleted file mode 100644 (file)
index 6f161cf..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1View__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1XYPlot.html b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1XYPlot.html
deleted file mode 100644 (file)
index 9c519f2..0000000
+++ /dev/null
@@ -1,1724 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<div class="nav">
-<a class="el" href="namespaceVISU.html">VISU</a>.<a class="el" href="interfaceVISU_1_1XYPlot.html">XYPlot</a></div>
-<h1>VISU.XYPlot Interface Reference</h1><!-- doxytag: class="VISU::XYPlot" --><!-- doxytag: inherits="VISU::View" -->Interface of the 2D plot view.  
-<a href="#_details">More...</a>
-<p>
-<code>import &quot;VISU_Gen.idl&quot;;</code>
-<p>
-Inheritance diagram for VISU.XYPlot:<p><center><img src="interfaceVISU_1_1XYPlot__inherit__graph.jpg" border="0" usemap="#VISU_8XYPlot__inherit__map" alt="Inheritance graph"></center>
-<map name="VISU_8XYPlot__inherit__map">
-<area href="interfaceVISU_1_1View.html" shape="rect" coords="13,84,101,108" alt="">
-<area href="interfaceVISU_1_1Base.html" shape="rect" coords="13,9,101,33" alt="">
-</map>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#2161d2d79a23cabdea574a397a32a6909bc88bc808bfdcfc787563554c947094">POINTS</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#2161d2d79a23cabdea574a397a32a690f4f1d8c1a5d672e69aee003ceee7f580">MULTYLINE</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#2161d2d79a23cabdea574a397a32a690091400021308c6c3baf779efd71b42ac">SPLINE</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#2161d2d79a23cabdea574a397a32a690">CurveType</a> { <a class="el" href="interfaceVISU_1_1XYPlot.html#2161d2d79a23cabdea574a397a32a6909bc88bc808bfdcfc787563554c947094">POINTS</a>, 
-<a class="el" href="interfaceVISU_1_1XYPlot.html#2161d2d79a23cabdea574a397a32a690f4f1d8c1a5d672e69aee003ceee7f580">MULTYLINE</a>, 
-<a class="el" href="interfaceVISU_1_1XYPlot.html#2161d2d79a23cabdea574a397a32a690091400021308c6c3baf779efd71b42ac">SPLINE</a>
- }</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce2131f7dc0fbe16bf5950fa21dfe7bec8f1f">OBJECTBROWSER</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213e07a7b41660016da6e4790a61e40e70b">VIEWER</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce21396ab6335f0ee2092ee104ffad56775b4">PYTHON</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213a84ae45219effaca695aa571bf695fc4">MESSAGES</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be01545fe0740c7cad5e89fedcad2b26806749">TOP</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be015493a1dab2e71eac6a554710428eae5065">CENTER</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be01544f8fb8916808919e85dbad251c346f22">BOTTOM</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154890e1c4cdf828c641a0d36f8b5587edc">RIGHT</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be015436e2382243a4b7d321dd80242e0b2b47">LEFT</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">ViewRepresentation</a> { <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce2131f7dc0fbe16bf5950fa21dfe7bec8f1f">OBJECTBROWSER</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213e07a7b41660016da6e4790a61e40e70b">VIEWER</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce21396ab6335f0ee2092ee104ffad56775b4">PYTHON</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213a84ae45219effaca695aa571bf695fc4">MESSAGES</a>
- }</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">ViewRepresentation enumeration  <a href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">ViewPosition</a> { <br>
-&nbsp;&nbsp;<a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be01545fe0740c7cad5e89fedcad2b26806749">TOP</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be015493a1dab2e71eac6a554710428eae5065">CENTER</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be01544f8fb8916808919e85dbad251c346f22">BOTTOM</a>, 
-<a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154890e1c4cdf828c641a0d36f8b5587edc">RIGHT</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be015436e2382243a4b7d321dd80242e0b2b47">LEFT</a>
-<br>
- }</td></tr>
-
-<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#c207e0cda2c7a45361ffcdb4883c5fe0">SetSubTitle</a> (in string theTitle)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#8535c69832faef5c3f30005dc8c57637">GetSubTitle</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#65add8563ccdf427cd30e670a7e5e667">SetCurveType</a> (in <a class="el" href="interfaceVISU_1_1XYPlot.html#2161d2d79a23cabdea574a397a32a690">CurveType</a> theType)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="interfaceVISU_1_1XYPlot.html#2161d2d79a23cabdea574a397a32a690">CurveType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#770b8b3b101d76186592480bd16403b5">GetCurveType</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#d1600e7f10b8ba468e10a858ef73531e">SetMarkerSize</a> (in long theSize)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#4fc927cf7151d644df584a1dac9f9a2e">GetMarkerSize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#803ee60461d18b203ba6d9a45dadb0a4">EnableXGrid</a> (in boolean theMajor, in long theNumMajor, in boolean theMinor, in long theNumMinor)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#ad67f3f1b7e6717e5de9b62550acb296">EnableYGrid</a> (in boolean theMajor, in long theNumMajor, in boolean theMinor, in long theNumMinor)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#5c9e21ce8fb6bc4d439ec658460b5dd1">SetHorScaling</a> (in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> theScaling)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#79638dd4367d5149a4279a89b02b64de">GetHorScaling</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#c612aebbc244b6f651a1979ea23682ac">SetVerScaling</a> (in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> theScaling)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#23b18561103b7b5720c0655ae7dccbd0">GetVerScaling</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#fa3e6f676c843e93b44a751033b36810">SetXTitle</a> (in string theTitle)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#e89eb7a11cfcf2b20e805561fac88faf">GetXTitle</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#9ccb79c35cbfc3a26fbe5b9c8b06d294">SetYTitle</a> (in string theTitle)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#785caae48e8569f83b675c992149a4c0">GetYTitle</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#9acd45dd44f8e4392c0578b690c6ba91">ShowLegend</a> (in boolean theShowing)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#eed272b9b359ec36b2f9dd1987bb1e55">FitAll</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#09f1401758fa43613fcd2fc97e21051c">FitXRange</a> (in double xMin, in double xMax)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#e329f30145ad146c3e442cfcac0a364a">FitYRange</a> (in double yMin, in double yMax)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#efe478a701ae92c1387e8f9e802ce283">FitRange</a> (in double xMin, in double xMax, in double yMin, in double yMax)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html#1fecba2321256601f502f404133aec4b">GetFitRanges</a> (out double xMin, out double xMax, out double yMin, out double yMax)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#d4c3991dc0e4f751e23b17261d52178d">ShowPart</a> (in <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">ViewRepresentation</a> ViewRepr, in boolean state)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#2d790758989030510272a71fc5c26ecb">IsPartShown</a> (in <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">ViewRepresentation</a> ViewRepr)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#454584a30406826c35f2dcc88ed5e285">SplitRight</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Split workarea of this view.  <a href="#454584a30406826c35f2dcc88ed5e285"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#06c29b07b09c2e669fa5d37adbad5c89">SplitLeft</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Split workarea of this view.  <a href="#06c29b07b09c2e669fa5d37adbad5c89"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#fab9ec5d12c93924e3fd6600d460738e">SplitBottom</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Split workarea of this view.  <a href="#fab9ec5d12c93924e3fd6600d460738e"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#e399ee4c9665a7b496371f938d3e7fd3">SplitTop</a> ()</td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Split workarea of this view.  <a href="#e399ee4c9665a7b496371f938d3e7fd3"></a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#c7cb8f7af67a6fc161ce1e1266cf6078">OnTop</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#d24a4fd9604a6b2da4d9f265b87b73e7">Attract</a> (in <a class="el" href="interfaceVISU_1_1View.html">View</a> theView)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#81523793df94f223086e2dfb7a9bde44">AttractAll</a> (in <a class="el" href="interfaceVISU_1_1View.html">View</a> theView)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#c51e42d9554731639821248cf5c51789">SetRelativePositionInSplitter</a> (in double thePosition)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#094aac0197dd3a66e8482ac9067c1200">SetRelativeSizeInSplitter</a> (in double theSize)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#5a6f6a0f2853ec6dbce40f8a0f058e67">SetRelativePositionX</a> (in double thePosition)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#d538c2c385e0542b0a04d1161833c9a7">SetRelativePositionY</a> (in double thePosition)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#1a82e7fd3d5b3c79690bfb17eeb19e8c">SetRelativeSizeX</a> (in double theSize)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#773d3140097f5d20568bb5bf7a244962">SetRelativeSizeY</a> (in double theSize)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#cd6524625b6ca8e3c49022459f106bed">SetViewWidth</a> (in long Width)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#b07ab6237cfdd70884a038af48fd7e72">SetViewHeight</a> (in long Height)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#904d6945f16117519d74dda54cf0aef0">GetViewWidth</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#56f2a1d86c80ebc81f9a0db71e25d3df">GetViewHeight</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#68a47a614cafe868ab89fad6ce117860">SetViewPositionHorizontal</a> (in <a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">ViewPosition</a> ViewPosHor)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#8df1d9425b90f9dd21c36acc3f9c444b">SetViewPositionVertical</a> (in <a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">ViewPosition</a> ViewPosVer)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#9357df128dabcd74c4d54ad04eda0d49">SetRelativePosition</a> (in double x, in double y)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#c2049cff1e9ee54312bd267154d9b69a">SetRelativeSize</a> (in double x, in double y)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#f52e1696f127af6ddffb7cb012411a26">Minimize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#71b5b17b0376653363709077e1597616">Restore</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#91cde31fe400a5f82c8bdbe7db3b5ef7">Maximize</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#4071ba1dd44364ae0d8cc337a7544921">SetTitle</a> (in string theTitle)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#6930e36faf0c5628d5b5ad9dc20148d5">GetTitle</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#ff8571273f82a27f46d43ea0419bafb1">SetBackground</a> (in SALOMEDS::Color theColor)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">SALOMEDS::Color&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#a58313a02ba9c2a872740392197c78e2">GetBackground</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#d9e3dfc74c7239ac9694fc41e8dfb95e">EraseAll</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#db66b95801ce72fc207dbae4e9ada32c">DisplayAll</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#c7f48239fd32867a22fa772fe258de3e">Erase</a> (in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a> thePrsObj)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#61228d03b32683bded67da12990210b6">Display</a> (in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a> thePrsObj)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#14985b21e1c7b6afdddafa2f4d6f93b4">DisplayOnly</a> (in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a> thePrsObj)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#8090c783e2014156227700b014ad8c29">Update</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">boolean&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html#be39869fe3484a4e2de0626254d9eeae">SavePicture</a> (in string theFileName)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#5da28cc23f3657dd24a3b8598319c522">GetID</a> ()</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html#6f62d77b0451737114b5a10bf23be21e">GetType</a> ()</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-This interface is used for creation of a view necessary for presentation of a XY plot generated on the basis of one or several curve lines. 
-<p>
-<hr><h2>Member Enumeration Documentation</h2>
-<a class="anchor" name="2161d2d79a23cabdea574a397a32a690"></a><!-- doxytag: member="VISU::XYPlot::CurveType" ref="2161d2d79a23cabdea574a397a32a690" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1XYPlot.html#2161d2d79a23cabdea574a397a32a690">VISU::XYPlot::CurveType</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-This enumeration contains a set of elements determining the type of the curve lines, which will be displayed in your XY plot. <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="2161d2d79a23cabdea574a397a32a6909bc88bc808bfdcfc787563554c947094"></a><!-- doxytag: member="POINTS" ref="2161d2d79a23cabdea574a397a32a6909bc88bc808bfdcfc787563554c947094" args="" -->POINTS</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="2161d2d79a23cabdea574a397a32a690f4f1d8c1a5d672e69aee003ceee7f580"></a><!-- doxytag: member="MULTYLINE" ref="2161d2d79a23cabdea574a397a32a690f4f1d8c1a5d672e69aee003ceee7f580" args="" -->MULTYLINE</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="2161d2d79a23cabdea574a397a32a690091400021308c6c3baf779efd71b42ac"></a><!-- doxytag: member="SPLINE" ref="2161d2d79a23cabdea574a397a32a690091400021308c6c3baf779efd71b42ac" args="" -->SPLINE</em>&nbsp;</td><td>
-</td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="a666392d875e267305ad2694ce3ce213"></a><!-- doxytag: member="VISU::XYPlot::ViewRepresentation" ref="a666392d875e267305ad2694ce3ce213" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">VISU::View::ViewRepresentation</a><code> [inherited]</code>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-displaying part ("ALL" isn't setable) <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="a666392d875e267305ad2694ce3ce2131f7dc0fbe16bf5950fa21dfe7bec8f1f"></a><!-- doxytag: member="OBJECTBROWSER" ref="a666392d875e267305ad2694ce3ce2131f7dc0fbe16bf5950fa21dfe7bec8f1f" args="" -->OBJECTBROWSER</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="a666392d875e267305ad2694ce3ce213e07a7b41660016da6e4790a61e40e70b"></a><!-- doxytag: member="VIEWER" ref="a666392d875e267305ad2694ce3ce213e07a7b41660016da6e4790a61e40e70b" args="" -->VIEWER</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="a666392d875e267305ad2694ce3ce21396ab6335f0ee2092ee104ffad56775b4"></a><!-- doxytag: member="PYTHON" ref="a666392d875e267305ad2694ce3ce21396ab6335f0ee2092ee104ffad56775b4" args="" -->PYTHON</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="a666392d875e267305ad2694ce3ce213a84ae45219effaca695aa571bf695fc4"></a><!-- doxytag: member="MESSAGES" ref="a666392d875e267305ad2694ce3ce213a84ae45219effaca695aa571bf695fc4" args="" -->MESSAGES</em>&nbsp;</td><td>
-</td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="61d3152c0ff5d024f84b2fe149be0154"></a><!-- doxytag: member="VISU::XYPlot::ViewPosition" ref="61d3152c0ff5d024f84b2fe149be0154" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">VISU::View::ViewPosition</a><code> [inherited]</code>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-<dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="61d3152c0ff5d024f84b2fe149be01545fe0740c7cad5e89fedcad2b26806749"></a><!-- doxytag: member="TOP" ref="61d3152c0ff5d024f84b2fe149be01545fe0740c7cad5e89fedcad2b26806749" args="" -->TOP</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="61d3152c0ff5d024f84b2fe149be015493a1dab2e71eac6a554710428eae5065"></a><!-- doxytag: member="CENTER" ref="61d3152c0ff5d024f84b2fe149be015493a1dab2e71eac6a554710428eae5065" args="" -->CENTER</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="61d3152c0ff5d024f84b2fe149be01544f8fb8916808919e85dbad251c346f22"></a><!-- doxytag: member="BOTTOM" ref="61d3152c0ff5d024f84b2fe149be01544f8fb8916808919e85dbad251c346f22" args="" -->BOTTOM</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="61d3152c0ff5d024f84b2fe149be0154890e1c4cdf828c641a0d36f8b5587edc"></a><!-- doxytag: member="RIGHT" ref="61d3152c0ff5d024f84b2fe149be0154890e1c4cdf828c641a0d36f8b5587edc" args="" -->RIGHT</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="61d3152c0ff5d024f84b2fe149be015436e2382243a4b7d321dd80242e0b2b47"></a><!-- doxytag: member="LEFT" ref="61d3152c0ff5d024f84b2fe149be015436e2382243a4b7d321dd80242e0b2b47" args="" -->LEFT</em>&nbsp;</td><td>
-</td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<hr><h2>Member Function Documentation</h2>
-<a class="anchor" name="c207e0cda2c7a45361ffcdb4883c5fe0"></a><!-- doxytag: member="VISU::XYPlot::SetSubTitle" ref="c207e0cda2c7a45361ffcdb4883c5fe0" args="(in string theTitle)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.XYPlot.SetSubTitle           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theTitle</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the title of the XY plot <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theTitle</em>&nbsp;</td><td>The title of the XY plot </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8535c69832faef5c3f30005dc8c57637"></a><!-- doxytag: member="VISU::XYPlot::GetSubTitle" ref="8535c69832faef5c3f30005dc8c57637" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.XYPlot.GetSubTitle           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the title of the XY plot 
-</div>
-</div><p>
-<a class="anchor" name="65add8563ccdf427cd30e670a7e5e667"></a><!-- doxytag: member="VISU::XYPlot::SetCurveType" ref="65add8563ccdf427cd30e670a7e5e667" args="(in CurveType theType)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.XYPlot.SetCurveType           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1XYPlot.html#2161d2d79a23cabdea574a397a32a690">CurveType</a>&nbsp;</td>
-          <td class="paramname"> <em>theType</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the type of the curve lines. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theType</em>&nbsp;</td><td>The type of the curve lines taken from <em>CurveType</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="770b8b3b101d76186592480bd16403b5"></a><!-- doxytag: member="VISU::XYPlot::GetCurveType" ref="770b8b3b101d76186592480bd16403b5" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="interfaceVISU_1_1XYPlot.html#2161d2d79a23cabdea574a397a32a690">CurveType</a> VISU.XYPlot.GetCurveType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type of the curve lines. 
-</div>
-</div><p>
-<a class="anchor" name="d1600e7f10b8ba468e10a858ef73531e"></a><!-- doxytag: member="VISU::XYPlot::SetMarkerSize" ref="d1600e7f10b8ba468e10a858ef73531e" args="(in long theSize)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.XYPlot.SetMarkerSize           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theSize</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the size of the markers (data points) with help of which the curve is constructed on the graphics. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theSize</em>&nbsp;</td><td>Long value defining the size of the markers. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="4fc927cf7151d644df584a1dac9f9a2e"></a><!-- doxytag: member="VISU::XYPlot::GetMarkerSize" ref="4fc927cf7151d644df584a1dac9f9a2e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.XYPlot.GetMarkerSize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the size of the markers (data points) with help of which the curve is constructed on the graphics. 
-</div>
-</div><p>
-<a class="anchor" name="803ee60461d18b203ba6d9a45dadb0a4"></a><!-- doxytag: member="VISU::XYPlot::EnableXGrid" ref="803ee60461d18b203ba6d9a45dadb0a4" args="(in boolean theMajor, in long theNumMajor, in boolean theMinor, in long theNumMinor)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.XYPlot.EnableXGrid           </td>
-          <td>(</td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>theMajor</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNumMajor</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>theMinor</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNumMinor</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Enable/disables X-axis grid of the 2D plot. 
-</div>
-</div><p>
-<a class="anchor" name="ad67f3f1b7e6717e5de9b62550acb296"></a><!-- doxytag: member="VISU::XYPlot::EnableYGrid" ref="ad67f3f1b7e6717e5de9b62550acb296" args="(in boolean theMajor, in long theNumMajor, in boolean theMinor, in long theNumMinor)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.XYPlot.EnableYGrid           </td>
-          <td>(</td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>theMajor</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNumMajor</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>theMinor</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>theNumMinor</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Enable/disables Y-axis grid of the 2D plot. 
-</div>
-</div><p>
-<a class="anchor" name="5c9e21ce8fb6bc4d439ec658460b5dd1"></a><!-- doxytag: member="VISU::XYPlot::SetHorScaling" ref="5c9e21ce8fb6bc4d439ec658460b5dd1" args="(in Scaling theScaling)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.XYPlot.SetHorScaling           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td>
-          <td class="paramname"> <em>theScaling</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets horizontal scaling of the 2D plot. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theScaling</em>&nbsp;</td><td>Type of scaling taken from <em>Scaling</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="79638dd4367d5149a4279a89b02b64de"></a><!-- doxytag: member="VISU::XYPlot::GetHorScaling" ref="79638dd4367d5149a4279a89b02b64de" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> VISU.XYPlot.GetHorScaling           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type horizontal scaling of the 2D plot. 
-</div>
-</div><p>
-<a class="anchor" name="c612aebbc244b6f651a1979ea23682ac"></a><!-- doxytag: member="VISU::XYPlot::SetVerScaling" ref="c612aebbc244b6f651a1979ea23682ac" args="(in Scaling theScaling)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.XYPlot.SetVerScaling           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a>&nbsp;</td>
-          <td class="paramname"> <em>theScaling</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets vertical scaling of the 2D plot. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theScaling</em>&nbsp;</td><td>Type of scaling taken from <em>Scaling</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="23b18561103b7b5720c0655ae7dccbd0"></a><!-- doxytag: member="VISU::XYPlot::GetVerScaling" ref="23b18561103b7b5720c0655ae7dccbd0" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> VISU.XYPlot.GetVerScaling           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the type vertical scaling of the 2D plot. 
-</div>
-</div><p>
-<a class="anchor" name="fa3e6f676c843e93b44a751033b36810"></a><!-- doxytag: member="VISU::XYPlot::SetXTitle" ref="fa3e6f676c843e93b44a751033b36810" args="(in string theTitle)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.XYPlot.SetXTitle           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theTitle</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the title of the X-axis of the plot. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theTitle</em>&nbsp;</td><td>String value defining the title of the X-axis of the plot. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="e89eb7a11cfcf2b20e805561fac88faf"></a><!-- doxytag: member="VISU::XYPlot::GetXTitle" ref="e89eb7a11cfcf2b20e805561fac88faf" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.XYPlot.GetXTitle           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the title of the X-axis of the plot. 
-</div>
-</div><p>
-<a class="anchor" name="9ccb79c35cbfc3a26fbe5b9c8b06d294"></a><!-- doxytag: member="VISU::XYPlot::SetYTitle" ref="9ccb79c35cbfc3a26fbe5b9c8b06d294" args="(in string theTitle)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.XYPlot.SetYTitle           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theTitle</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the title of the Y-axis of the plot. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theTitle</em>&nbsp;</td><td>String value defining the title of the X-axis of the plot. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="785caae48e8569f83b675c992149a4c0"></a><!-- doxytag: member="VISU::XYPlot::GetYTitle" ref="785caae48e8569f83b675c992149a4c0" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.XYPlot.GetYTitle           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the title of the Y-axis of the plot. 
-</div>
-</div><p>
-<a class="anchor" name="9acd45dd44f8e4392c0578b690c6ba91"></a><!-- doxytag: member="VISU::XYPlot::ShowLegend" ref="9acd45dd44f8e4392c0578b690c6ba91" args="(in boolean theShowing)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.XYPlot.ShowLegend           </td>
-          <td>(</td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>theShowing</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Shows/hides the legend (description) of the 2D plot. 
-</div>
-</div><p>
-<a class="anchor" name="eed272b9b359ec36b2f9dd1987bb1e55"></a><!-- doxytag: member="VISU::XYPlot::FitAll" ref="eed272b9b359ec36b2f9dd1987bb1e55" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.XYPlot.FitAll           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Shrinks and enlarges the 2D plot to fit the 2D viewer. 
-</div>
-</div><p>
-<a class="anchor" name="09f1401758fa43613fcd2fc97e21051c"></a><!-- doxytag: member="VISU::XYPlot::FitXRange" ref="09f1401758fa43613fcd2fc97e21051c" args="(in double xMin, in double xMax)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.XYPlot.FitXRange           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>xMin</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>xMax</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set range of the 2D plot to X axis of the 2D viewer. 
-</div>
-</div><p>
-<a class="anchor" name="e329f30145ad146c3e442cfcac0a364a"></a><!-- doxytag: member="VISU::XYPlot::FitYRange" ref="e329f30145ad146c3e442cfcac0a364a" args="(in double yMin, in double yMax)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.XYPlot.FitYRange           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>yMin</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>yMax</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set range of the 2D plot to Y axis of the 2D viewer. 
-</div>
-</div><p>
-<a class="anchor" name="efe478a701ae92c1387e8f9e802ce283"></a><!-- doxytag: member="VISU::XYPlot::FitRange" ref="efe478a701ae92c1387e8f9e802ce283" args="(in double xMin, in double xMax, in double yMin, in double yMax)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.XYPlot.FitRange           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>xMin</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>xMax</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>yMin</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>yMax</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set range of the 2D plot to XY axis of the 2D viewer. 
-</div>
-</div><p>
-<a class="anchor" name="1fecba2321256601f502f404133aec4b"></a><!-- doxytag: member="VISU::XYPlot::GetFitRanges" ref="1fecba2321256601f502f404133aec4b" args="(out double xMin, out double xMax, out double yMin, out double yMax)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.XYPlot.GetFitRanges           </td>
-          <td>(</td>
-          <td class="paramtype">out double&nbsp;</td>
-          <td class="paramname"> <em>xMin</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out double&nbsp;</td>
-          <td class="paramname"> <em>xMax</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out double&nbsp;</td>
-          <td class="paramname"> <em>yMin</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">out double&nbsp;</td>
-          <td class="paramname"> <em>yMax</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="d4c3991dc0e4f751e23b17261d52178d"></a><!-- doxytag: member="VISU::XYPlot::ShowPart" ref="d4c3991dc0e4f751e23b17261d52178d" args="(in ViewRepresentation ViewRepr, in boolean state)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.ShowPart           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">ViewRepresentation</a>&nbsp;</td>
-          <td class="paramname"> <em>ViewRepr</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in boolean&nbsp;</td>
-          <td class="paramname"> <em>state</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="2d790758989030510272a71fc5c26ecb"></a><!-- doxytag: member="VISU::XYPlot::IsPartShown" ref="2d790758989030510272a71fc5c26ecb" args="(in ViewRepresentation ViewRepr)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.View.IsPartShown           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html#a666392d875e267305ad2694ce3ce213">ViewRepresentation</a>&nbsp;</td>
-          <td class="paramname"> <em>ViewRepr</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="454584a30406826c35f2dcc88ed5e285"></a><!-- doxytag: member="VISU::XYPlot::SplitRight" ref="454584a30406826c35f2dcc88ed5e285" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SplitRight           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Horizontally split workarea of this view. This view is moved in a new right area. 
-</div>
-</div><p>
-<a class="anchor" name="06c29b07b09c2e669fa5d37adbad5c89"></a><!-- doxytag: member="VISU::XYPlot::SplitLeft" ref="06c29b07b09c2e669fa5d37adbad5c89" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SplitLeft           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Horizontally split workarea of this view. This view stays in an old left area, others are moved in a new right area. 
-</div>
-</div><p>
-<a class="anchor" name="fab9ec5d12c93924e3fd6600d460738e"></a><!-- doxytag: member="VISU::XYPlot::SplitBottom" ref="fab9ec5d12c93924e3fd6600d460738e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SplitBottom           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Vertically split workarea of this view. This view is moved in a new bottom area. 
-</div>
-</div><p>
-<a class="anchor" name="e399ee4c9665a7b496371f938d3e7fd3"></a><!-- doxytag: member="VISU::XYPlot::SplitTop" ref="e399ee4c9665a7b496371f938d3e7fd3" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SplitTop           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Vertically split workarea of this view. This view stays in an old top area, others are moved in a new bottom area. 
-</div>
-</div><p>
-<a class="anchor" name="c7cb8f7af67a6fc161ce1e1266cf6078"></a><!-- doxytag: member="VISU::XYPlot::OnTop" ref="c7cb8f7af67a6fc161ce1e1266cf6078" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.OnTop           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Put this view window on top of its work area. 
-</div>
-</div><p>
-<a class="anchor" name="d24a4fd9604a6b2da4d9f265b87b73e7"></a><!-- doxytag: member="VISU::XYPlot::Attract" ref="d24a4fd9604a6b2da4d9f265b87b73e7" args="(in View theView)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Attract           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html">View</a>&nbsp;</td>
-          <td class="paramname"> <em>theView</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Put <em>theView</em> in workarea of this view right after it. If <em>theView</em> was alone in its workarea, workarea of <em>theView</em> will be destroyed. If <em>theView</em> was in the same workarea with this view, simple reordering will take place. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theView</em>&nbsp;</td><td>A view window to be attracted to this one. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="81523793df94f223086e2dfb7a9bde44"></a><!-- doxytag: member="VISU::XYPlot::AttractAll" ref="81523793df94f223086e2dfb7a9bde44" args="(in View theView)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.AttractAll           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html">View</a>&nbsp;</td>
-          <td class="paramname"> <em>theView</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Put all the view windows from workarea of <em>theView</em> in workarea of this view right after it. Workarea of <em>theView</em> will be destroyed. If <em>theView</em> was in the same workarea with this view, simple reordering will take place. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theView</em>&nbsp;</td><td>A view window to be attracted to this one together with all its workarea. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="c51e42d9554731639821248cf5c51789"></a><!-- doxytag: member="VISU::XYPlot::SetRelativePositionInSplitter" ref="c51e42d9554731639821248cf5c51789" args="(in double thePosition)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativePositionInSplitter           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>thePosition</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set position of this view window relatively its splitter. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePosition</em>&nbsp;</td><td>Desired position of this view window relatively its splitter. Meaningfull values lays in range [0..1].</td></tr>
-  </table>
-</dl>
-Direction of positioning is defined by the splitter orientation. 
-</div>
-</div><p>
-<a class="anchor" name="094aac0197dd3a66e8482ac9067c1200"></a><!-- doxytag: member="VISU::XYPlot::SetRelativeSizeInSplitter" ref="094aac0197dd3a66e8482ac9067c1200" args="(in double theSize)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativeSizeInSplitter           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theSize</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set size of this view window relatively its splitter. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theSize</em>&nbsp;</td><td>Desired size of this view window relatively its splitter. Meaningfull values lays in range [0..1].</td></tr>
-  </table>
-</dl>
-Direction of resizing is defined by the splitter orientation. 
-</div>
-</div><p>
-<a class="anchor" name="5a6f6a0f2853ec6dbce40f8a0f058e67"></a><!-- doxytag: member="VISU::XYPlot::SetRelativePositionX" ref="5a6f6a0f2853ec6dbce40f8a0f058e67" args="(in double thePosition)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativePositionX           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>thePosition</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set horizontal position of this view window relatively its workstack. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePosition</em>&nbsp;</td><td>Desired horizontal position of this view window relatively its workstack. Meaningfull values lays in range [0..1]. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="d538c2c385e0542b0a04d1161833c9a7"></a><!-- doxytag: member="VISU::XYPlot::SetRelativePositionY" ref="d538c2c385e0542b0a04d1161833c9a7" args="(in double thePosition)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativePositionY           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>thePosition</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set vertical position of this view window relatively its workstack. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePosition</em>&nbsp;</td><td>Desired vertical position of this view window relatively its workstack. Meaningfull values lays in range [0..1]. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="1a82e7fd3d5b3c79690bfb17eeb19e8c"></a><!-- doxytag: member="VISU::XYPlot::SetRelativeSizeX" ref="1a82e7fd3d5b3c79690bfb17eeb19e8c" args="(in double theSize)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativeSizeX           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theSize</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set horizontal size of this view window relatively its workstack. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theSize</em>&nbsp;</td><td>Desired horizontal size of this view window relatively its workstack. Meaningfull values lays in range [0..1]. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="773d3140097f5d20568bb5bf7a244962"></a><!-- doxytag: member="VISU::XYPlot::SetRelativeSizeY" ref="773d3140097f5d20568bb5bf7a244962" args="(in double theSize)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativeSizeY           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>theSize</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set vertical size of this view window relatively its workstack. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theSize</em>&nbsp;</td><td>Desired vertical size of this view window relatively its workstack. Meaningfull values lays in range [0..1]. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="cd6524625b6ca8e3c49022459f106bed"></a><!-- doxytag: member="VISU::XYPlot::SetViewWidth" ref="cd6524625b6ca8e3c49022459f106bed" args="(in long Width)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetViewWidth           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>Width</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Old methods for view parameters management, they don't work now 
-</div>
-</div><p>
-<a class="anchor" name="b07ab6237cfdd70884a038af48fd7e72"></a><!-- doxytag: member="VISU::XYPlot::SetViewHeight" ref="b07ab6237cfdd70884a038af48fd7e72" args="(in long Height)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetViewHeight           </td>
-          <td>(</td>
-          <td class="paramtype">in long&nbsp;</td>
-          <td class="paramname"> <em>Height</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="904d6945f16117519d74dda54cf0aef0"></a><!-- doxytag: member="VISU::XYPlot::GetViewWidth" ref="904d6945f16117519d74dda54cf0aef0" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.View.GetViewWidth           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="56f2a1d86c80ebc81f9a0db71e25d3df"></a><!-- doxytag: member="VISU::XYPlot::GetViewHeight" ref="56f2a1d86c80ebc81f9a0db71e25d3df" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">long VISU.View.GetViewHeight           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="68a47a614cafe868ab89fad6ce117860"></a><!-- doxytag: member="VISU::XYPlot::SetViewPositionHorizontal" ref="68a47a614cafe868ab89fad6ce117860" args="(in ViewPosition ViewPosHor)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetViewPositionHorizontal           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">ViewPosition</a>&nbsp;</td>
-          <td class="paramname"> <em>ViewPosHor</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="8df1d9425b90f9dd21c36acc3f9c444b"></a><!-- doxytag: member="VISU::XYPlot::SetViewPositionVertical" ref="8df1d9425b90f9dd21c36acc3f9c444b" args="(in ViewPosition ViewPosVer)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetViewPositionVertical           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1View.html#61d3152c0ff5d024f84b2fe149be0154">ViewPosition</a>&nbsp;</td>
-          <td class="paramname"> <em>ViewPosVer</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="9357df128dabcd74c4d54ad04eda0d49"></a><!-- doxytag: member="VISU::XYPlot::SetRelativePosition" ref="9357df128dabcd74c4d54ad04eda0d49" args="(in double x, in double y)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativePosition           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="c2049cff1e9ee54312bd267154d9b69a"></a><!-- doxytag: member="VISU::XYPlot::SetRelativeSize" ref="c2049cff1e9ee54312bd267154d9b69a" args="(in double x, in double y)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetRelativeSize           </td>
-          <td>(</td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>x</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">in double&nbsp;</td>
-          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="f52e1696f127af6ddffb7cb012411a26"></a><!-- doxytag: member="VISU::XYPlot::Minimize" ref="f52e1696f127af6ddffb7cb012411a26" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Minimize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="71b5b17b0376653363709077e1597616"></a><!-- doxytag: member="VISU::XYPlot::Restore" ref="71b5b17b0376653363709077e1597616" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Restore           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="91cde31fe400a5f82c8bdbe7db3b5ef7"></a><!-- doxytag: member="VISU::XYPlot::Maximize" ref="91cde31fe400a5f82c8bdbe7db3b5ef7" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Maximize           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="4071ba1dd44364ae0d8cc337a7544921"></a><!-- doxytag: member="VISU::XYPlot::SetTitle" ref="4071ba1dd44364ae0d8cc337a7544921" args="(in string theTitle)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetTitle           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theTitle</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets the title of the View frame. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theTitle</em>&nbsp;</td><td>String parameter defining the title of the View frame. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="6930e36faf0c5628d5b5ad9dc20148d5"></a><!-- doxytag: member="VISU::XYPlot::GetTitle" ref="6930e36faf0c5628d5b5ad9dc20148d5" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">string VISU.View.GetTitle           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets the title of the View frame. 
-</div>
-</div><p>
-<a class="anchor" name="ff8571273f82a27f46d43ea0419bafb1"></a><!-- doxytag: member="VISU::XYPlot::SetBackground" ref="ff8571273f82a27f46d43ea0419bafb1" args="(in SALOMEDS::Color theColor)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.SetBackground           </td>
-          <td>(</td>
-          <td class="paramtype">in SALOMEDS::Color&nbsp;</td>
-          <td class="paramname"> <em>theColor</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Sets background color of the View frame. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theColor</em>&nbsp;</td><td>Background color defined in <em>SALOMEDS.Color</em> enumeration. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="a58313a02ba9c2a872740392197c78e2"></a><!-- doxytag: member="VISU::XYPlot::GetBackground" ref="a58313a02ba9c2a872740392197c78e2" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">SALOMEDS::Color VISU.View.GetBackground           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Gets background color of the View frame. 
-</div>
-</div><p>
-<a class="anchor" name="d9e3dfc74c7239ac9694fc41e8dfb95e"></a><!-- doxytag: member="VISU::XYPlot::EraseAll" ref="d9e3dfc74c7239ac9694fc41e8dfb95e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.EraseAll           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Removes all presentations (presentable objects) from the view. 
-</div>
-</div><p>
-<a class="anchor" name="db66b95801ce72fc207dbae4e9ada32c"></a><!-- doxytag: member="VISU::XYPlot::DisplayAll" ref="db66b95801ce72fc207dbae4e9ada32c" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.DisplayAll           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Displays all presentations (presentable objects) in the view. 
-</div>
-</div><p>
-<a class="anchor" name="c7f48239fd32867a22fa772fe258de3e"></a><!-- doxytag: member="VISU::XYPlot::Erase" ref="c7f48239fd32867a22fa772fe258de3e" args="(in PrsObject thePrsObj)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Erase           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrsObj</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Removes a definite presentation (presentable object) from the view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrsObj</em>&nbsp;</td><td>The presentation (presentable object) which should be deleted. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="61228d03b32683bded67da12990210b6"></a><!-- doxytag: member="VISU::XYPlot::Display" ref="61228d03b32683bded67da12990210b6" args="(in PrsObject thePrsObj)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Display           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrsObj</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Displays a definite presentation (presentable object) in the view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrsObj</em>&nbsp;</td><td>The presentation (presentable object) which should be displayed. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="14985b21e1c7b6afdddafa2f4d6f93b4"></a><!-- doxytag: member="VISU::XYPlot::DisplayOnly" ref="14985b21e1c7b6afdddafa2f4d6f93b4" args="(in PrsObject thePrsObj)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.DisplayOnly           </td>
-          <td>(</td>
-          <td class="paramtype">in <a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a>&nbsp;</td>
-          <td class="paramname"> <em>thePrsObj</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Allows to display only a definite presentation (presentable object) in the view. All other presentations are removed from the view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>thePrsObj</em>&nbsp;</td><td>The presentation (presentable object) which should be displayed. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8090c783e2014156227700b014ad8c29"></a><!-- doxytag: member="VISU::XYPlot::Update" ref="8090c783e2014156227700b014ad8c29" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void VISU.View.Update           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Updates the view. 
-</div>
-</div><p>
-<a class="anchor" name="be39869fe3484a4e2de0626254d9eeae"></a><!-- doxytag: member="VISU::XYPlot::SavePicture" ref="be39869fe3484a4e2de0626254d9eeae" args="(in string theFileName)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">boolean VISU.View.SavePicture           </td>
-          <td>(</td>
-          <td class="paramtype">in string&nbsp;</td>
-          <td class="paramname"> <em>theFileName</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Saves the view. <dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>theFileName</em>&nbsp;</td><td>The name of the file where the view will be saved. </td></tr>
-  </table>
-</dl>
-<dl compact><dt><b>Returns:</b></dt><dd>True, if the view have been saved successfully. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="5da28cc23f3657dd24a3b8598319c522"></a><!-- doxytag: member="VISU::XYPlot::GetID" ref="5da28cc23f3657dd24a3b8598319c522" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a> VISU.Base.GetID           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns ID of the object. 
-</div>
-</div><p>
-<a class="anchor" name="6f62d77b0451737114b5a10bf23be21e"></a><!-- doxytag: member="VISU::XYPlot::GetType" ref="6f62d77b0451737114b5a10bf23be21e" args="()" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> VISU.Base.GetType           </td>
-          <td>(</td>
-          <td class="paramname">          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"><code> [inherited]</code></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Returns the type of the presentable object 
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:31:21 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1XYPlot__inherit__graph.jpg b/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1XYPlot__inherit__graph.jpg
deleted file mode 100644 (file)
index ba97d42..0000000
Binary files a/doc/salome/gui/VISU/visugenidl_doc/interfaceVISU_1_1XYPlot__inherit__graph.jpg and /dev/null differ
diff --git a/doc/salome/gui/VISU/visugenidl_doc/namespaceVISU.html b/doc/salome/gui/VISU/visugenidl_doc/namespaceVISU.html
deleted file mode 100644 (file)
index 9543044..0000000
+++ /dev/null
@@ -1,380 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
-<!-- Generated by Doxygen 1.4.7 -->
-<h1>Package VISU</h1>
-<p>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Data Structures</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Base.html">Base</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1RemovableObject.html">RemovableObject</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Removable object interface.  <a href="interfaceVISU_1_1RemovableObject.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1PrsObject.html">PrsObject</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Presentable object interface.  <a href="interfaceVISU_1_1PrsObject.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Table.html">Table</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Table representation interface  <a href="interfaceVISU_1_1Table.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Curve.html">Curve</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Interface of curve representation.  <a href="interfaceVISU_1_1Curve.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Container.html">Container</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Container presentable object interface  <a href="interfaceVISU_1_1Container.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Prs3d.html">Prs3d</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">3D presentation interface  <a href="interfaceVISU_1_1Prs3d.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Mesh.html">Mesh</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Interface of the mesh.  <a href="interfaceVISU_1_1Mesh.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3d.html">ColoredPrs3d</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Basic Interface for the Colored 3D Presentations.  <a href="interfaceVISU_1_1ColoredPrs3d.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dHolder.html">ColoredPrs3dHolder</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">ColoredPrs3dHolder interface. Interface of 3d presentation's holder, which represents colored 3d presentations, created on fields. It is publishing in the object browser in a separate folder and can be controled by viewer's slider.  <a href="interfaceVISU_1_1ColoredPrs3dHolder.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ColoredPrs3dCache.html">ColoredPrs3dCache</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">ColoredPrs3dCache interface. This interface is responsible for memory management of 3d presentations. One cache corresponds to one study.  <a href="interfaceVISU_1_1ColoredPrs3dCache.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Interface of the Scalar Map.  <a href="interfaceVISU_1_1ScalarMap.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1GaussPoints.html">GaussPoints</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gauss Points presentation interface.  <a href="interfaceVISU_1_1GaussPoints.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1DeformedShape.html">DeformedShape</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deformed shape presentation interface.  <a href="interfaceVISU_1_1DeformedShape.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ScalarMapOnDeformedShape.html">ScalarMapOnDeformedShape</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Scalar Map on Deformed shape presentation interface.  <a href="interfaceVISU_1_1ScalarMapOnDeformedShape.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Plot3D.html">Plot3D</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="interfaceVISU_1_1Plot3D.html">Plot3D</a> interface.  <a href="interfaceVISU_1_1Plot3D.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutPlanes.html">CutPlanes</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cut planes interface.  <a href="interfaceVISU_1_1CutPlanes.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1CutLines.html">CutLines</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cut lines presentation.  <a href="interfaceVISU_1_1CutLines.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1StreamLines.html">StreamLines</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Interface of the stream lines representation.  <a href="interfaceVISU_1_1StreamLines.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1IsoSurfaces.html">IsoSurfaces</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Interface of the isometric surface presentation.  <a href="interfaceVISU_1_1IsoSurfaces.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Vectors.html">Vectors</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Interface of the vector presentation.  <a href="interfaceVISU_1_1Vectors.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Animation.html">Animation</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Animation class  <a href="interfaceVISU_1_1Animation.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1Result.html">Result</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Interface Result.  <a href="interfaceVISU_1_1Result.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1VISU__Gen.html">VISU_Gen</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">VISU_Gen interface  <a href="interfaceVISU_1_1VISU__Gen.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View.html">View</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">View interface  <a href="interfaceVISU_1_1View.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1View3D.html">View3D</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">3D view interface  <a href="interfaceVISU_1_1View3D.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1TableView.html">TableView</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Interface of the <a class="el" href="interfaceVISU_1_1Table.html">Table</a> view.  <a href="interfaceVISU_1_1TableView.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1XYPlot.html">XYPlot</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Interface of the 2D plot view.  <a href="interfaceVISU_1_1XYPlot.html#_details">More...</a><br></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">interface &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceVISU_1_1ViewManager.html">ViewManager</a></td></tr>
-
-<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Interface of the ViewManager.  <a href="interfaceVISU_1_1ViewManager.html#_details">More...</a><br></td></tr>
-<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">IdType</a></td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef sequence&lt; string &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceVISU.html#872f0083b78d222a7504d8df938d4ca2">string_array</a></td></tr>
-
-<tr><td colspan="2"><br><h2>Enumerations</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">Scaling</a> { <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a472467096027b4435ec88065499f1bd0443c1d0">LINEAR</a>, 
-<a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670b90da0ae947772de8ddb3d44e0438d65">LOGARITHMIC</a>
- }</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">Entity</a> { <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601ab5dfae0efc17a2cef0979bda81e020a">NODE</a>, 
-<a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f2760174b87bffbcbdd2583de4aa65047b8e15">EDGE</a>, 
-<a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f276014e272c8d19260215368ab32560ebb7e2">FACE</a>, 
-<a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f276014dd25122ffd8b57c789c56039b756737">CELL</a>
- }</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISUType</a> { <br>
-&nbsp;&nbsp;<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505f46f97ca11adf0444163a144cf29ab13">TNONE</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505c6d9b77cf674551b1cf2179ff42781f0">TCURVE</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505e079bcfbc71945ab03281cf510171d26">TTABLE</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505965ef5d3ad806032d110867995b06e90">TCONTAINER</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505661bdd7054541ec3684ef3d3fcc672a0">TMESH</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05050960e75e1598e360545b0183bfd9cb95">TSCALARMAP</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505c657580f92e263f74a98b54fe1706b7b">TISOSURFACES</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05059690f6678b90c5197640d9c72cdb01fd">TDEFORMEDSHAPE</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05056bf835dd96cc7162efab6f850cffcd95">TSCALARMAPONDEFORMEDSHAPE</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505ce563a71f490cf21887b6a85d1b81592">TGAUSSPOINTS</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05055b20108e5fd99c1c6957b13ae4c4e821">TPLOT3D</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b050534c331c752baaaccb976018ecf2e53bc">TCUTPLANES</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05059c6b6e8056dd1bd6fd0c4ea3328bcc17">TCUTLINES</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505911ef60269dcac4c732d790995896ed0">TVECTORS</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05052268a72efecbd9a06447b63e1c54b6f2">TSTREAMLINES</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b050504419b3b862ecbd3b02ccf23c3543335">TVISUGEN</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05050e959877d50f85d7ee40b0ef146bf0ce">TVIEWMANAGER</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05050acc53310e74049525934b8a2c1bf982">TRESULT</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05050ad90d55da57038b69a0f37bea9e93e3">TXYPLOT</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b050585ad2c2bc11c65cc83e7723aa3b9ca43">TTABLEVIEW</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b050589621dec5daff308a7875cd3f354b2e3">TVIEW3D</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05057fa257b6dd9bafe9fb6a872e7a574933">TGAUSSVIEW</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b050549b445831a583d858fc5d7b7fb77f360">TENTITY</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05059934d0c1500fbbaaae397336d01249c7">TFAMILY</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505561c80c0d2ae06bb4c99533fa6d818b1">TGROUP</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b050510be29a83a16fcc206a046eccc6fbda4">TFIELD</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505198236cbe5a729c333beae7c82cadead">TTIMESTAMP</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b050569ee0801ab47b8d250ed07abbf0c8dcf">TANIMATION</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505736525664cf44c8acfb0de4c9d337fc9">TCOLOREDPRS3DHOLDER</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05057e67f1255c6c45a829bf8b4d0a7c4d84">TCOLOREDPRS3DCACHE</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b05052b6c2d55d67d3cdaf2534657b41fac5d">TPART</a>, 
-<a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505c9355c9018e38c117367c28e91210a20">TALL</a>
-<br>
- }</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb5">PresentationType</a> { <br>
-&nbsp;&nbsp;<a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb5bd7d875fff4b7c862e404084bec135bc">POINT</a>, 
-<a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb5e4948f9c5e5153edffab72b435a472cd">WIREFRAME</a>, 
-<a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb5d446e93e36a0b982a923eaf4282a71d8">SHADED</a>, 
-<a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb5b618cd0ad95c1b5e6ffa80a8d4cf5624">INSIDEFRAME</a>, 
-<br>
-&nbsp;&nbsp;<a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb573fefa806279b7bb7c88811aa1a7a18a">SURFACEFRAME</a>, 
-<a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb57d62e1a9d8f0e0447539a7b3274d5aec">SHRINK</a>
-<br>
- }</td></tr>
-
-</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-The main package of interfaces of the post-processing module VISU. 
-<p>
-<hr><h2>Typedef Documentation</h2>
-<a class="anchor" name="c62012e4273b0b0806cf08bf92a788a7"></a><!-- doxytag: member="VISU::IdType" ref="c62012e4273b0b0806cf08bf92a788a7" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef string <a class="el" href="namespaceVISU.html#c62012e4273b0b0806cf08bf92a788a7">VISU.IdType</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<a class="anchor" name="872f0083b78d222a7504d8df938d4ca2"></a><!-- doxytag: member="VISU::string_array" ref="872f0083b78d222a7504d8df938d4ca2" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef sequence&lt;string&gt; <a class="el" href="namespaceVISU.html#872f0083b78d222a7504d8df938d4ca2">VISU.string_array</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-
-</div>
-</div><p>
-<hr><h2>Enumeration Type Documentation</h2>
-<a class="anchor" name="3cb1d6c603c44c6047d950e4a4724670"></a><!-- doxytag: member="VISU::Scaling" ref="3cb1d6c603c44c6047d950e4a4724670" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="namespaceVISU.html#3cb1d6c603c44c6047d950e4a4724670">VISU::Scaling</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-This enumeration contains a set of elements defining the type of the scaling, which can be applied on different presentations. <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="3cb1d6c603c44c6047d950e4a472467096027b4435ec88065499f1bd0443c1d0"></a><!-- doxytag: member="LINEAR" ref="3cb1d6c603c44c6047d950e4a472467096027b4435ec88065499f1bd0443c1d0" args="" -->LINEAR</em>&nbsp;</td><td>
-Linear type of scaling. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="3cb1d6c603c44c6047d950e4a4724670b90da0ae947772de8ddb3d44e0438d65"></a><!-- doxytag: member="LOGARITHMIC" ref="3cb1d6c603c44c6047d950e4a4724670b90da0ae947772de8ddb3d44e0438d65" args="" -->LOGARITHMIC</em>&nbsp;</td><td>
-Logarithmic type of scaling. </td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="f879abec9746ab653486a99809f27601"></a><!-- doxytag: member="VISU::Entity" ref="f879abec9746ab653486a99809f27601" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="namespaceVISU.html#f879abec9746ab653486a99809f27601">VISU::Entity</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-This enumeration contains a set of elements defining the type of the entity (topological units) constituting a mesh. <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="f879abec9746ab653486a99809f27601ab5dfae0efc17a2cef0979bda81e020a"></a><!-- doxytag: member="NODE" ref="f879abec9746ab653486a99809f27601ab5dfae0efc17a2cef0979bda81e020a" args="" -->NODE</em>&nbsp;</td><td>
-Node corresponds to a geometrical point. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="f879abec9746ab653486a99809f2760174b87bffbcbdd2583de4aa65047b8e15"></a><!-- doxytag: member="EDGE" ref="f879abec9746ab653486a99809f2760174b87bffbcbdd2583de4aa65047b8e15" args="" -->EDGE</em>&nbsp;</td><td>
-Edge corresponds to a geometrical line connecting two points. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="f879abec9746ab653486a99809f276014e272c8d19260215368ab32560ebb7e2"></a><!-- doxytag: member="FACE" ref="f879abec9746ab653486a99809f276014e272c8d19260215368ab32560ebb7e2" args="" -->FACE</em>&nbsp;</td><td>
-Face corresponds to a geometrical plane bounded by several lines. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="f879abec9746ab653486a99809f276014dd25122ffd8b57c789c56039b756737"></a><!-- doxytag: member="CELL" ref="f879abec9746ab653486a99809f276014dd25122ffd8b57c789c56039b756737" args="" -->CELL</em>&nbsp;</td><td>
-Cell is a volumic element of a mesh </td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b0505"></a><!-- doxytag: member="VISU::VISUType" ref="8c689d7b5f5d6abcd324e3eaab1b0505" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="namespaceVISU.html#8c689d7b5f5d6abcd324e3eaab1b0505">VISU::VISUType</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-This enumeration contains a set of elements defining the type of the VISU object. This enumeration is used for navigation between a set of VISU interfaces. <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b0505f46f97ca11adf0444163a144cf29ab13"></a><!-- doxytag: member="TNONE" ref="8c689d7b5f5d6abcd324e3eaab1b0505f46f97ca11adf0444163a144cf29ab13" args="" -->TNONE</em>&nbsp;</td><td>
-Not a VISU object </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b0505c6d9b77cf674551b1cf2179ff42781f0"></a><!-- doxytag: member="TCURVE" ref="8c689d7b5f5d6abcd324e3eaab1b0505c6d9b77cf674551b1cf2179ff42781f0" args="" -->TCURVE</em>&nbsp;</td><td>
-<a class="el" href="interfaceVISU_1_1Curve.html">Curve</a> line object for construction of 2D XY plots </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b0505e079bcfbc71945ab03281cf510171d26"></a><!-- doxytag: member="TTABLE" ref="8c689d7b5f5d6abcd324e3eaab1b0505e079bcfbc71945ab03281cf510171d26" args="" -->TTABLE</em>&nbsp;</td><td>
-<a class="el" href="interfaceVISU_1_1Table.html">Table</a> containing numerical data </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b0505965ef5d3ad806032d110867995b06e90"></a><!-- doxytag: member="TCONTAINER" ref="8c689d7b5f5d6abcd324e3eaab1b0505965ef5d3ad806032d110867995b06e90" args="" -->TCONTAINER</em>&nbsp;</td><td>
-<a class="el" href="interfaceVISU_1_1Container.html">Container</a> object used for storing a set of curve lines </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b0505661bdd7054541ec3684ef3d3fcc672a0"></a><!-- doxytag: member="TMESH" ref="8c689d7b5f5d6abcd324e3eaab1b0505661bdd7054541ec3684ef3d3fcc672a0" args="" -->TMESH</em>&nbsp;</td><td>
-Meshing object </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b05050960e75e1598e360545b0183bfd9cb95"></a><!-- doxytag: member="TSCALARMAP" ref="8c689d7b5f5d6abcd324e3eaab1b05050960e75e1598e360545b0183bfd9cb95" args="" -->TSCALARMAP</em>&nbsp;</td><td>
-Scalarmap 3D presentation object </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b0505c657580f92e263f74a98b54fe1706b7b"></a><!-- doxytag: member="TISOSURFACES" ref="8c689d7b5f5d6abcd324e3eaab1b0505c657580f92e263f74a98b54fe1706b7b" args="" -->TISOSURFACES</em>&nbsp;</td><td>
-Iso surface 3D presentation object </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b05059690f6678b90c5197640d9c72cdb01fd"></a><!-- doxytag: member="TDEFORMEDSHAPE" ref="8c689d7b5f5d6abcd324e3eaab1b05059690f6678b90c5197640d9c72cdb01fd" args="" -->TDEFORMEDSHAPE</em>&nbsp;</td><td>
-Deformed shape 3D presentation object </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b05056bf835dd96cc7162efab6f850cffcd95"></a><!-- doxytag: member="TSCALARMAPONDEFORMEDSHAPE" ref="8c689d7b5f5d6abcd324e3eaab1b05056bf835dd96cc7162efab6f850cffcd95" args="" -->TSCALARMAPONDEFORMEDSHAPE</em>&nbsp;</td><td>
-Scalar map on deformed shape 3D presentation object </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b0505ce563a71f490cf21887b6a85d1b81592"></a><!-- doxytag: member="TGAUSSPOINTS" ref="8c689d7b5f5d6abcd324e3eaab1b0505ce563a71f490cf21887b6a85d1b81592" args="" -->TGAUSSPOINTS</em>&nbsp;</td><td>
-Gauss Points 3D presentation object </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b05055b20108e5fd99c1c6957b13ae4c4e821"></a><!-- doxytag: member="TPLOT3D" ref="8c689d7b5f5d6abcd324e3eaab1b05055b20108e5fd99c1c6957b13ae4c4e821" args="" -->TPLOT3D</em>&nbsp;</td><td>
-<a class="el" href="interfaceVISU_1_1Plot3D.html">Plot3D</a> 3D presentation object </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b050534c331c752baaaccb976018ecf2e53bc"></a><!-- doxytag: member="TCUTPLANES" ref="8c689d7b5f5d6abcd324e3eaab1b050534c331c752baaaccb976018ecf2e53bc" args="" -->TCUTPLANES</em>&nbsp;</td><td>
-Cut planes 3D presentation object </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b05059c6b6e8056dd1bd6fd0c4ea3328bcc17"></a><!-- doxytag: member="TCUTLINES" ref="8c689d7b5f5d6abcd324e3eaab1b05059c6b6e8056dd1bd6fd0c4ea3328bcc17" args="" -->TCUTLINES</em>&nbsp;</td><td>
-Cut lines 3D presentation object </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b0505911ef60269dcac4c732d790995896ed0"></a><!-- doxytag: member="TVECTORS" ref="8c689d7b5f5d6abcd324e3eaab1b0505911ef60269dcac4c732d790995896ed0" args="" -->TVECTORS</em>&nbsp;</td><td>
-<a class="el" href="interfaceVISU_1_1Vectors.html">Vectors</a> 3D presentation object </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b05052268a72efecbd9a06447b63e1c54b6f2"></a><!-- doxytag: member="TSTREAMLINES" ref="8c689d7b5f5d6abcd324e3eaab1b05052268a72efecbd9a06447b63e1c54b6f2" args="" -->TSTREAMLINES</em>&nbsp;</td><td>
-Streamlines 3D presentation object </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b050504419b3b862ecbd3b02ccf23c3543335"></a><!-- doxytag: member="TVISUGEN" ref="8c689d7b5f5d6abcd324e3eaab1b050504419b3b862ecbd3b02ccf23c3543335" args="" -->TVISUGEN</em>&nbsp;</td><td>
-VISU generator used for performing operations with different VISU objects </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b05050e959877d50f85d7ee40b0ef146bf0ce"></a><!-- doxytag: member="TVIEWMANAGER" ref="8c689d7b5f5d6abcd324e3eaab1b05050e959877d50f85d7ee40b0ef146bf0ce" args="" -->TVIEWMANAGER</em>&nbsp;</td><td>
-<a class="el" href="interfaceVISU_1_1View.html">View</a> manager used for performing operations with different views </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b05050acc53310e74049525934b8a2c1bf982"></a><!-- doxytag: member="TRESULT" ref="8c689d7b5f5d6abcd324e3eaab1b05050acc53310e74049525934b8a2c1bf982" args="" -->TRESULT</em>&nbsp;</td><td>
-The data on which different presentations are based </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b05050ad90d55da57038b69a0f37bea9e93e3"></a><!-- doxytag: member="TXYPLOT" ref="8c689d7b5f5d6abcd324e3eaab1b05050ad90d55da57038b69a0f37bea9e93e3" args="" -->TXYPLOT</em>&nbsp;</td><td>
-2D XY plot consisting of one or several curve lines </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b050585ad2c2bc11c65cc83e7723aa3b9ca43"></a><!-- doxytag: member="TTABLEVIEW" ref="8c689d7b5f5d6abcd324e3eaab1b050585ad2c2bc11c65cc83e7723aa3b9ca43" args="" -->TTABLEVIEW</em>&nbsp;</td><td>
-<a class="el" href="interfaceVISU_1_1Table.html">Table</a> view is used for displaying data tables </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b050589621dec5daff308a7875cd3f354b2e3"></a><!-- doxytag: member="TVIEW3D" ref="8c689d7b5f5d6abcd324e3eaab1b050589621dec5daff308a7875cd3f354b2e3" args="" -->TVIEW3D</em>&nbsp;</td><td>
-3D view is used for displaying 3D graphical presentations </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b05057fa257b6dd9bafe9fb6a872e7a574933"></a><!-- doxytag: member="TGAUSSVIEW" ref="8c689d7b5f5d6abcd324e3eaab1b05057fa257b6dd9bafe9fb6a872e7a574933" args="" -->TGAUSSVIEW</em>&nbsp;</td><td>
-3D view is used for displaying Gauss Points graphical presentations </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b050549b445831a583d858fc5d7b7fb77f360"></a><!-- doxytag: member="TENTITY" ref="8c689d7b5f5d6abcd324e3eaab1b050549b445831a583d858fc5d7b7fb77f360" args="" -->TENTITY</em>&nbsp;</td><td>
-An element composing a mesh: node, edge, face or cell </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b05059934d0c1500fbbaaae397336d01249c7"></a><!-- doxytag: member="TFAMILY" ref="8c689d7b5f5d6abcd324e3eaab1b05059934d0c1500fbbaaae397336d01249c7" args="" -->TFAMILY</em>&nbsp;</td><td>
-The whole mesh can be divided into one or several submeshes, called families, which are defined by the user. Each family in its turn is composed of entities of a definite type. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b0505561c80c0d2ae06bb4c99533fa6d818b1"></a><!-- doxytag: member="TGROUP" ref="8c689d7b5f5d6abcd324e3eaab1b0505561c80c0d2ae06bb4c99533fa6d818b1" args="" -->TGROUP</em>&nbsp;</td><td>
-A group of families </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b050510be29a83a16fcc206a046eccc6fbda4"></a><!-- doxytag: member="TFIELD" ref="8c689d7b5f5d6abcd324e3eaab1b050510be29a83a16fcc206a046eccc6fbda4" args="" -->TFIELD</em>&nbsp;</td><td>
-Field represents the results of calculations (it can be scalar or vector values), grouped together under one physical concept. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b0505198236cbe5a729c333beae7c82cadead"></a><!-- doxytag: member="TTIMESTAMP" ref="8c689d7b5f5d6abcd324e3eaab1b0505198236cbe5a729c333beae7c82cadead" args="" -->TTIMESTAMP</em>&nbsp;</td><td>
-Time stamp represents a subfield: the results of calculations are taken in one definite moment. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b050569ee0801ab47b8d250ed07abbf0c8dcf"></a><!-- doxytag: member="TANIMATION" ref="8c689d7b5f5d6abcd324e3eaab1b050569ee0801ab47b8d250ed07abbf0c8dcf" args="" -->TANIMATION</em>&nbsp;</td><td>
-Represents <a class="el" href="interfaceVISU_1_1Animation.html">Animation</a> object. </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b0505736525664cf44c8acfb0de4c9d337fc9"></a><!-- doxytag: member="TCOLOREDPRS3DHOLDER" ref="8c689d7b5f5d6abcd324e3eaab1b0505736525664cf44c8acfb0de4c9d337fc9" args="" -->TCOLOREDPRS3DHOLDER</em>&nbsp;</td><td>
-Colored 3D presentation holder </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b05057e67f1255c6c45a829bf8b4d0a7c4d84"></a><!-- doxytag: member="TCOLOREDPRS3DCACHE" ref="8c689d7b5f5d6abcd324e3eaab1b05057e67f1255c6c45a829bf8b4d0a7c4d84" args="" -->TCOLOREDPRS3DCACHE</em>&nbsp;</td><td>
-Colored 3D presentation cache </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b05052b6c2d55d67d3cdaf2534657b41fac5d"></a><!-- doxytag: member="TPART" ref="8c689d7b5f5d6abcd324e3eaab1b05052b6c2d55d67d3cdaf2534657b41fac5d" args="" -->TPART</em>&nbsp;</td><td>
-MULTIPR: part of a mesh </td></tr>
-<tr><td valign="top"><em><a class="anchor" name="8c689d7b5f5d6abcd324e3eaab1b0505c9355c9018e38c117367c28e91210a20"></a><!-- doxytag: member="TALL" ref="8c689d7b5f5d6abcd324e3eaab1b0505c9355c9018e38c117367c28e91210a20" args="" -->TALL</em>&nbsp;</td><td>
-</td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-<a class="anchor" name="54667d768d173c252f14d1378b2aebb5"></a><!-- doxytag: member="VISU::PresentationType" ref="54667d768d173c252f14d1378b2aebb5" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">enum <a class="el" href="namespaceVISU.html#54667d768d173c252f14d1378b2aebb5">VISU::PresentationType</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-This enumeration contains a set of elements defining the type of presentation of the mesh. <dl compact><dt><b>Enumerator: </b></dt><dd>
-<table border="0" cellspacing="2" cellpadding="0">
-<tr><td valign="top"><em><a class="anchor" name="54667d768d173c252f14d1378b2aebb5bd7d875fff4b7c862e404084bec135bc"></a><!-- doxytag: member="POINT" ref="54667d768d173c252f14d1378b2aebb5bd7d875fff4b7c862e404084bec135bc" args="" -->POINT</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="54667d768d173c252f14d1378b2aebb5e4948f9c5e5153edffab72b435a472cd"></a><!-- doxytag: member="WIREFRAME" ref="54667d768d173c252f14d1378b2aebb5e4948f9c5e5153edffab72b435a472cd" args="" -->WIREFRAME</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="54667d768d173c252f14d1378b2aebb5d446e93e36a0b982a923eaf4282a71d8"></a><!-- doxytag: member="SHADED" ref="54667d768d173c252f14d1378b2aebb5d446e93e36a0b982a923eaf4282a71d8" args="" -->SHADED</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="54667d768d173c252f14d1378b2aebb5b618cd0ad95c1b5e6ffa80a8d4cf5624"></a><!-- doxytag: member="INSIDEFRAME" ref="54667d768d173c252f14d1378b2aebb5b618cd0ad95c1b5e6ffa80a8d4cf5624" args="" -->INSIDEFRAME</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="54667d768d173c252f14d1378b2aebb573fefa806279b7bb7c88811aa1a7a18a"></a><!-- doxytag: member="SURFACEFRAME" ref="54667d768d173c252f14d1378b2aebb573fefa806279b7bb7c88811aa1a7a18a" args="" -->SURFACEFRAME</em>&nbsp;</td><td>
-</td></tr>
-<tr><td valign="top"><em><a class="anchor" name="54667d768d173c252f14d1378b2aebb57d62e1a9d8f0e0447539a7b3274d5aec"></a><!-- doxytag: member="SHRINK" ref="54667d768d173c252f14d1378b2aebb57d62e1a9d8f0e0447539a7b3274d5aec" args="" -->SHRINK</em>&nbsp;</td><td>
-</td></tr>
-</table>
-</dl>
-
-</div>
-</div><p>
-</DIV>
-<DIV class="div-footer">
-Generated on Thu Jun 21 14:30:42 2007 for SALOME - VISU - v.4.0.0 by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> 1.4.7</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/gui/VISU/whdata/whftdata.js b/doc/salome/gui/VISU/whdata/whftdata.js
deleted file mode 100755 (executable)
index addf262..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-//     WebHelp 5.10.001
-var gTEA = new Array();
-function aTE(sTopicTitle, sTopicURL)
-{
-       var len = gTEA.length;
-       gTEA[len] = new topicEntry(sTopicTitle, sTopicURL);
-}
-
-function topicEntry(sTopicTitle, sTopicURL)
-{
-       this.sTopicTitle = sTopicTitle;
-       this.sTopicURL = sTopicURL;
-}
-
-function window_OnLoad()
-{
-       if (parent && parent != this) {
-               if (parent.putFtsTData) 
-               {
-                       parent.putFtsTData(gTEA);
-               }
-       }
-}
-
-window.onload = window_OnLoad;
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/whdata/whftdata0.htm b/doc/salome/gui/VISU/whdata/whftdata0.htm
deleted file mode 100755 (executable)
index eae6a62..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-<html>
-<head>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-</head>
-<body>
-<script language="javascript" src="whftdata.js"></script>
-<script language="javascript">
-<!--
-//-->
-</script>
-<script language="javascript">
-<!--
-aTE("Animation in Gauss Viewer","animation_in_gauss_viewer.htm");
-aTE("Clipping","clipping.htm");
-aTE("Creating tables","creating_tables.htm");
-aTE("About structure of MED object","files/about_structure_of_med_object.htm");
-aTE("About tables","files/about_tables.htm");
-aTE("Animating presentations","files/animating_presentations.htm");
-aTE("Setting presentation view parameters","files/changing_visualization_parameters_of_the_presenetation.htm");
-aTE("Creating curves","files/creating_curves.htm");
-aTE("Creating field presentations","files/creating_field_presentations.htm");
-aTE("Creating presentations","files/creating_presentations.htm");
-aTE("Creating XY plot","files/creating_xy_plot.htm");
-aTE("Cut Lines presentation","files/cut_lines_presentation.htm");
-aTE("Cut Planes presentation","files/cut_lines_resentation.htm");
-aTE("Deformed Shape presentation","files/deformed_shape_presentation.htm");
-aTE("Displaying/Hiding presentations","files/displaying_hiding_presentations.htm");
-aTE("Displaying tables","files/displaying_tables.htm");
-aTE("Getting elements attributes","files/getting_elements_attributes.htm");
-aTE("Getting started","files/getting_started.htm");
-aTE("Importing MED objects","files/importing_med_objects.htm");
-aTE("Importing tables","files/importing_tables.htm");
-aTE("Introduction","files/introduction.htm");
-aTE("Iso Surfaces presentation","files/iso_surfaces_presentation.htm");
-aTE("Running VISU","files/running_visu.htm");
-aTE("Scalar Map presentation","files/scalar_map_presentation.htm");
-aTE("Scaling presentations","files/scaling_presentations.htm");
-aTE("Setting properties of XY plots","files/setting_properties_of_xy_plots.htm");
-aTE("Stream Lines presentation","files/stream_lines_presentation.htm");
-aTE("Sweeping","files/sweeping.htm");
-aTE("Vectors presentation","files/vectors_presentation.htm");
-aTE("Gauss Points Presentation","gauss_points_presentation.htm");
-aTE("Gauss Viewer","gauss_viewer.htm");
-aTE("Navigation with keyboard and spacemouse","navigation_with_keyboard_and_spacemouse.htm");
-aTE("Picking","picking.htm");
-aTE("Plot2D Viewer","plot2d_viewer.htm");
-aTE("Plot 3D presentation","plot_3d_presentation.htm");
-aTE("Primitive Types","primitive_types.htm");
-aTE("Scalar Bar","scalar_bar.htm");
-aTE("Scalar Map on Deformed Shape presentation","scalar_map_on_deformed_shape_presentation.htm");
-aTE("Segmentation","segmentation.htm");
-aTE("Types of Gauss Points Presentations","types_of_gauss_points_presentations.htm");
-aTE("VTK 3D Viewer","vtk_3d_viewer.htm");
-
-//-->
-</script>
-</html>
diff --git a/doc/salome/gui/VISU/whdata/whfts.htm b/doc/salome/gui/VISU/whdata/whfts.htm
deleted file mode 100755 (executable)
index 15fe687..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-<html>
-<head>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-</head>
-<body>
-<script language="javascript" src="whfts.js"></script>
-<script language="javascript">
-<!--
-iWM("0","zx","whfwdata0.htm");
-
-iTM(0,40,"whftdata0.htm");
-
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/whdata/whfts.js b/doc/salome/gui/VISU/whdata/whfts.js
deleted file mode 100755 (executable)
index 54246f6..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-//     WebHelp 5.10.001
-var gaFileMapping = new Array();
-var gaFileTopicMapping = new Array();
-
-function fileMapping(sStartKey, sEndKey, sFileName)
-{
-       this.sStartKey = sStartKey;
-       this.sEndKey = sEndKey;
-       this.sFileName = sFileName;
-       this.aFtsKeys = null;
-}
-
-function fileTopicMapping(nIdBegin, nIdEnd, sFileName)
-{
-       this.nBegin = nIdBegin;
-       this.nEnd = nIdEnd;
-       this.sFileName = sFileName;
-       this.aTopics = null;
-}
-
-
-function iWM(sStartKey, sEndKey, sFileName)
-{
-       gaFileMapping[gaFileMapping.length] = new fileMapping(sStartKey, sEndKey, sFileName);   
-}
-
-function window_OnLoad()
-{
-       if (parent && parent != this && parent.ftsReady)
-       {
-               parent.ftsReady(gaFileMapping, gaFileTopicMapping);
-       }               
-}
-
-function iTM(nIdBegin, nIdEnd, sFileName)
-{
-       gaFileTopicMapping[gaFileTopicMapping.length] = new fileTopicMapping(nIdBegin, nIdEnd, sFileName);      
-}
-
-window.onload = window_OnLoad;
diff --git a/doc/salome/gui/VISU/whdata/whfwdata.js b/doc/salome/gui/VISU/whdata/whfwdata.js
deleted file mode 100755 (executable)
index 8340b59..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-//     WebHelp 5.10.001
-var gWEA = new Array();
-function aWE()
-{
-       var len = gWEA.length;
-       gWEA[len] = new ftsEntry(aWE.arguments);
-}
-
-function ftsEntry(fn_arguments) 
-{
-       if (fn_arguments.length && fn_arguments.length >= 1) 
-       {
-               this.sItemName = fn_arguments[0];
-               this.aTopics = null;
-               var nLen = fn_arguments.length;
-               if (nLen > 1) 
-               {
-                       this.aTopics = new Array();
-                       for (var i = 0; i < nLen - 1; i ++ )
-                       {
-                               this.aTopics[i] = fn_arguments[i + 1];
-                       }
-               }
-       }
-}
-
-function window_OnLoad()
-{
-       if (parent && parent != this) {
-               if (parent.putFtsWData) 
-               {
-                       parent.putFtsWData(gWEA);
-               }
-       }
-}
-
-window.onload = window_OnLoad;
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/whdata/whfwdata0.htm b/doc/salome/gui/VISU/whdata/whfwdata0.htm
deleted file mode 100755 (executable)
index 3307ee3..0000000
+++ /dev/null
@@ -1,902 +0,0 @@
-<html>
-<head>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-</head>
-<body>
-<script language="javascript" src="whfwdata.js"></script>
-<script language="javascript">
-<!--
-//-->
-</script>
-<script language="javascript">
-<!--
-aWE("0",5,0,1,11,32,34,35,38,6,26,39);
-aWE("001",32);
-aWE("01",39);
-aWE("1",4,5,0,7,2,10,11,15,14,19,31,32,34,33,35,6,27);
-aWE("10",31,32,39);
-aWE("100",0,32,6,26,39);
-aWE("10n",33);
-aWE("11",31);
-aWE("16",35);
-aWE("2",4,5,7,2,10,15,14,19,31,33,35,36,27,39);
-aWE("200",7,39);
-aWE("256",36);
-aWE("2d",7,11,17,34,33,25,39);
-aWE("3",4,5,7,10,19,24,27);
-aWE("33",39);
-aWE("3d",3,0,1,11,12,14,30,16,20,31,32,34,35,23,24,38,6,39,40);
-aWE("4",5,7,10,24);
-aWE("5",5,1,34,33);
-aWE("50",39);
-aWE("512",35);
-aWE("6",31,35);
-aWE("8",5,0,35);
-aWE("abl",18,33,40);
-aWE("abov",38);
-aWE("abscissa",36);
-aWE("absolut",11,39);
-aWE("acceptabl",27,39);
-aWE("acces",30,33,6,25,39,40);
-aWE("accessibl",14);
-aWE("accord",12,13,23,26,39,28);
-aWE("accordanc",3);
-aWE("accuracy",26);
-aWE("action",0,31,24);
-aWE("activ",32,34,36,39);
-aWE("activat",5,0,30,32,38);
-aWE("activity",0);
-aWE("actor",16,6);
-aWE("actual",38);
-aWE("ad",5,0);
-aWE("add",23);
-aWE("addition",0,32);
-aWE("additional",5,12,13,14,21,34,22,37,23,26,28);
-aWE("adjust",5,1,32,25);
-aWE("advanc",31,33);
-aWE("again",5);
-aWE("aimation",5);
-aWE("algorithm",11);
-aWE("allow",4,5,0,1,7,11,12,13,14,30,18,21,31,32,34,33,36,37,23,24,38,6,25,26,27,39,28,40);
-aWE("along",16,33,24,38,6);
-aWE("alpha",35);
-aWE("already",5,26);
-aWE("alternative",6);
-aWE("alway",0);
-aWE("analog",39);
-aWE("angl",1,11,12,34);
-aWE("animat",5,17);
-aWE("animation",5,0,6,27);
-aWE("anoth",5,12,26,27);
-aWE("any",3,4,0,7,30,16,18,31,35);
-aWE("ap",1,29,23,24);
-aWE("apex",32);
-aWE("api",0);
-aWE("appear",5,7,10,14,23,25);
-aWE("appli",3,8,2,11,12,13,16,21,34,35,37,23,26,27,39,28);
-aWE("application",18,22);
-aWE("area",33,26,40);
-aWE("around",11,12,32,34,38,40);
-aWE("arrang",6);
-aWE("array",11);
-aWE("arrow",28);
-aWE("ask",0);
-aWE("assign",7,30);
-aWE("associat",36,39);
-aWE("attribut",7,16,6);
-aWE("auto",1,7,6);
-aWE("automatical",1,7,11,14,30,18,38,27);
-aWE("availabl",0,30,16,31,6,40);
-aWE("averag",39);
-aWE("avi",5,0);
-aWE("avoid",6);
-aWE("ax",1,11,12,34,33,24,6,25,40);
-aWE("axi",7,11,12,31,34,33,38,6,40);
-aWE("back",5,10);
-aWE("background",30,33,6,25);
-aWE("backward",31,26);
-aWE("bar",5,11,12,13,29,21,32,34,36,37,23,38,6,26,39,28);
-aWE("bas",3,5,10,11,17,20,23,26,27);
-aWE("basi",3,4,7,11,21,33,23,26);
-aWE("basic",35,23,27);
-aWE("be",32);
-aWE("becom",18,32);
-aWE("befor",22);
-aWE("begin",5);
-aWE("belong",11,35,23);
-aWE("below",32,38);
-aWE("bet",0);
-aWE("bicolor",36,39);
-aWE("big",35,28);
-aWE("bin",5,0);
-aWE("black",32,36);
-aWE("blu",18,36);
-aWE("bmp",30,33,35,6,40);
-aWE("both",8,30,34,36,25,26,39);
-aWE("bottom",33,36,38);
-aWE("bound",26,40);
-aWE("boundari",38);
-aWE("boundary",3,32);
-aWE("box",5,0,7,10,11,12,13,14,16,18,19,34,33,23,24,38,26,39,28,40);
-aWE("brows",3,5,0,7,8,9,2,10,11,12,13,15,14,29,30,18,19,21,34,35,37,23,24,6,25,26,27,28);
-aWE("build",18,23);
-aWE("built",18,37,23);
-aWE("button",5,0,1,10,14,29,30,19,21,31,32,34,33,23,24,38,6,26,39,28,40);
-aWE("cal",33,38);
-aWE("calculation",3,35,23);
-aWE("camera",32,35);
-aWE("cancel",29,35,24);
-aWE("cannot",35);
-aWE("cas",5,30,32,23,39);
-aWE("caus",6);
-aWE("cel",3,4,8,2,11,12,13,16,21,34,37,23,26,27,39,28);
-aWE("cell",16);
-aWE("cent",33,28,40);
-aWE("center",32);
-aWE("centr",32);
-aWE("central",30,31);
-aWE("certain",6);
-aWE("chang",5,0,14,29,30,31,33,24,38,6,25,39,40);
-aWE("channel",35);
-aWE("characteristic",16,36,38);
-aWE("check",5,0,7,11,12,13,18,34,33,36,23,6,26,28,40);
-aWE("checkbox",34);
-aWE("checkmark",7);
-aWE("choic",1,14,29,18);
-aWE("choos",0,1,7,8,9,10,11,12,13,15,14,29,30,16,18,19,21,34,36,37,23,26,28,40);
-aWE("chosen",3,0,10,16,24,26);
-aWE("circl",7);
-aWE("clamp",35);
-aWE("clean",5);
-aWE("click",5,0,1,7,8,9,2,10,11,12,13,15,14,29,30,16,18,19,21,32,34,33,22,37,23,24,38,6,25,26,27,28,40);
-aWE("clip",0,1,38,6);
-aWE("clockwis",31);
-aWE("clon",33);
-aWE("clos",18,35);
-aWE("coincid",7);
-aWE("color",7,11,12,13,32,34,33,35,36,23,26,39,28,40);
-aWE("colour",18);
-aWE("column",4,7);
-aWE("combin",3,21,31);
-aWE("command",5,0,31,38);
-aWE("common",30,6);
-aWE("compar",37);
-aWE("comparison",5,27);
-aWE("compatibl",3);
-aWE("complet",18);
-aWE("complete",1);
-aWE("complicat",26);
-aWE("component",4,5,20,32,35,22,36,23);
-aWE("compos",3,5,2,10,27);
-aWE("comput",5,0,35,39);
-aWE("computation",26);
-aWE("con",28);
-aWE("concept",3);
-aWE("condition",3);
-aWE("configur",38);
-aWE("configuration",30,39);
-aWE("confirm",14,18,24);
-aWE("consider",36);
-aWE("consist",10,11,33,23);
-aWE("construct",3,7,11,21,33,23,26);
-aWE("construction",11,26);
-aWE("consum",26);
-aWE("contain",3,7,8,10,11,18,19,23);
-aWE("content",0,33,38,40);
-aWE("context",6);
-aWE("continu",0,35);
-aWE("contour",34);
-aWE("control",30,31,36,26,39);
-aWE("convey",26);
-aWE("coordinat",7,16,31,32,23,38,6,40);
-aWE("copi",0);
-aWE("copy",14,30,6);
-aWE("corn",32);
-aWE("correspond",3,7,13,32,34,35,36,39,28);
-aWE("correspondenc",3,23);
-aWE("corrupt",0);
-aWE("cost",26);
-aWE("counterclockwis",31);
-aWE("cours",35);
-aWE("creat",3,4,5,1,7,8,9,2,10,11,12,13,29,30,17,19,21,34,22,37,23,38,6,26,27,39,28);
-aWE("creation",10,11,14,22,23,27);
-aWE("cros",1,7,6);
-aWE("ctrl",14,30,31);
-aWE("current",7,30,31,32,35,36,25);
-aWE("cursor",32,35,38);
-aWE("curv",7,10,11,33,25);
-aWE("customiz",32);
-aWE("cut",4,2,11,12,34);
-aWE("cycl",5);
-aWE("dash",7);
-aWE("data",3,4,7,11,17,18,20,23);
-aWE("decimal",34);
-aWE("decreas",5,30,31,34);
-aWE("default",7,11,12,13,18,31,33,35,22,36,23,39,40);
-aWE("defin",3,0,1,7,11,12,13,21,31,32,34,33,35,36,37,23,38,25,26,27,39,28,40);
-aWE("definabl",38);
-aWE("definit",3,5,10,12,16);
-aWE("definition",34,35);
-aWE("deform",13,37,39);
-aWE("deformation",5);
-aWE("degre",1,11,12,31,34);
-aWE("delet",1,14);
-aWE("depend",5,31,35,38,39);
-aWE("depth",38);
-aWE("describ",4,30,6);
-aWE("description",31,33);
-aWE("design",36);
-aWE("desktop",22);
-aWE("destin",5,20,33);
-aWE("detail",30,6);
-aWE("develop",30);
-aWE("diagonal",7);
-aWE("dialog",5,0,7,10,11,14,29,16,18,19,35,36,23,24,38,39);
-aWE("diamond",7);
-aWE("different",3,5,30,36,38,39);
-aWE("dimension",36,23);
-aWE("direct",38);
-aWE("direction",30,31,38,26);
-aWE("directory",5);
-aWE("disabl",0,34,36,39);
-aWE("displacement",11,12);
-aWE("display",4,5,0,1,7,8,9,2,10,11,12,13,15,14,30,16,18,21,32,34,33,35,36,37,23,38,6,25,26,27,28,40);
-aWE("distanc",1,32,35,24,6,40);
-aWE("divid",3,31,39);
-aWE("division",33);
-aWE("do",31);
-aWE("documentation",30,6);
-aWE("doesn",33);
-aWE("dominant",31);
-aWE("don",33,35,40);
-aWE("dot",7);
-aWE("down",5,14,31);
-aWE("download",5,0);
-aWE("downward",7,40);
-aWE("drag",33,38,40);
-aWE("draw",33);
-aWE("drawn",33,40);
-aWE("dump",30,33,6,25,40);
-aWE("duplicat",14,33);
-aWE("dynamic",31);
-aWE("dynamical",32,39);
-aWE("e",35,36);
-aWE("edg",3,6);
-aWE("edit",10,11,12,14,30,38,6);
-aWE("editabl",39);
-aWE("edition",39);
-aWE("effect",39);
-aWE("eith",1);
-aWE("elaps",18);
-aWE("element",3,16,32,38,6);
-aWE("els",36);
-aWE("empty",4,7);
-aWE("end",5,32,35,38,27);
-aWE("ent",14,16,19,21,23);
-aWE("enter",11,12);
-aWE("entiti",3,18);
-aWE("entity",26);
-aWE("equal",21,35,23);
-aWE("eras",14,30,38,6,25);
-aWE("etc",30);
-aWE("even",7);
-aWE("every",3,5);
-aWE("everyth",18);
-aWE("exact",0,18);
-aWE("examin",16);
-aWE("exce",33);
-aWE("exceed",35);
-aWE("except",39,40);
-aWE("exist",14,34,6,39);
-aWE("exit",29,38);
-aWE("explor",26);
-aWE("export",5,0,30,19,33,6,40);
-aWE("expres",16);
-aWE("extend",40);
-aWE("extent",16);
-aWE("extremiti",1);
-aWE("fac",3,35);
-aWE("factor",13,34,35,37,39,28);
-aWE("fami",3,26);
-aWE("famili",3,18);
-aWE("fast",33);
-aWE("featur",36,24,26);
-aWE("field",3,5,8,11,12,13,14,29,16,17,18,20,21,34,37,23,24,6,26,27,28);
-aWE("fil",3,4,5,0,17,18,19,35,23,25);
-aWE("find",18);
-aWE("finish",0,11,12,13,18,21,34,37,23,26,28);
-aWE("first",5,32,38);
-aWE("fit",33,25,40);
-aWE("fix",32,39);
-aWE("focal",31,32);
-aWE("fold",3,19);
-aWE("folder",3);
-aWE("follow",3,5,0,1,7,8,10,14,30,16,19,31,32,33,22,23,6,25);
-aWE("font",36,23,40);
-aWE("form",2,16,20,33);
-aWE("format",30,33,6,40);
-aWE("formula",35);
-aWE("forth",39);
-aWE("forward",31,26);
-aWE("found",36);
-aWE("fp",0);
-aWE("fram",5,0,33,27,40);
-aWE("framework",21);
-aWE("fre",30);
-aWE("freedom",31);
-aWE("ful",18);
-aWE("function",38);
-aWE("functionaliti",30,40);
-aWE("functionality",4,0,7,34,33,38,40);
-aWE("g",35);
-aWE("gaus",0,29,30,31,32,35,36,38,39,40);
-aWE("general",3);
-aWE("generat",5,11,21,32,26,27);
-aWE("generation",5,26);
-aWE("geom",38);
-aWE("geometrical",3,18,35,39);
-aWE("geometry",39);
-aWE("get",5,16,32);
-aWE("giv",0,1,30,33,6,25,39);
-aWE("given",0,7,12,35,36);
-aWE("gl",35);
-aWE("global",33,36,40);
-aWE("glyph",28);
-aWE("graduat",40);
-aWE("graduation",23);
-aWE("graph",33,25);
-aWE("graphic",25);
-aWE("graphical",28);
-aWE("great",0,32,33,35,40);
-aWE("grey",36);
-aWE("grid",33);
-aWE("group",3,18,23,26);
-aWE("gui",30,6);
-aWE("h",7);
-aWE("half",39);
-aWE("halv",1,34);
-aWE("hardwar",26);
-aWE("hav",10,11,19,26);
-aWE("head",31,28);
-aWE("height",32,36,23);
-aWE("help",4);
-aWE("her",5,11,33,23,39);
-aWE("hid",1,14,30,32,6,25,40);
-aWE("hidden",14);
-aWE("high",35);
-aWE("highest",18);
-aWE("highlight",16,32);
-aWE("hold",14);
-aWE("horisontal",7);
-aWE("horizontal",1,33,36,23);
-aWE("how",17,18);
-aWE("http",5,0);
-aWE("i",16,36);
-aWE("icon",11,12,13,29,21,34,22,37,23,26,28);
-aWE("id",16,32);
-aWE("if",5,0,1,7,11,14,16,18,32,34,33,35,36,23,26,28,40);
-aWE("ijk",1);
-aWE("imag",0,30,33,6,40);
-aWE("immediate",1,11,12,13,14,16,18,21,34,37,23,26,39,28);
-aWE("import",4,7,9,17,18,19);
-aWE("impos",23);
-aWE("impossibl",6);
-aWE("inactiv",36,23);
-aWE("includ",3,0,20,26,39);
-aWE("increas",5,30,31,34);
-aWE("increment",31);
-aWE("independent",3,31);
-aWE("index",1,16);
-aWE("indicat",3,5,0,7,23);
-aWE("individual",32);
-aWE("info",16,6);
-aWE("information",3,16,32,33,35,6,39);
-aWE("initial",3,22,27);
-aWE("input",0);
-aWE("insid",11,38);
-aWE("insidefram",6);
-aWE("inspect",32,36,38);
-aWE("instal",5,0);
-aWE("install_root",5,0);
-aWE("instead",11);
-aWE("integration",26);
-aWE("intend",5);
-aWE("interaction",30,31);
-aWE("interest",26);
-aWE("interpolation",3);
-aWE("interval",0,11,33,35);
-aWE("introduc",31);
-aWE("introduction",20);
-aWE("invert",11);
-aWE("iso",21);
-aWE("isobaric",21);
-aWE("isometric",40);
-aWE("item",10,18,19);
-aWE("iteration",32);
-aWE("j",16);
-aWE("jpeg",30,33,6,40);
-aWE("jpeg2yuv",5,0);
-aWE("jpg",30,33,35,6,40);
-aWE("just",0);
-aWE("k",16);
-aWE("key",31,32,39);
-aWE("keyboard",30,31,32,39);
-aWE("kind",5);
-aWE("label",36,23,25,40);
-aWE("larg",23);
-aWE("largest",39);
-aWE("last",5);
-aWE("latest",0);
-aWE("latitud",35);
-aWE("launch",17,22);
-aWE("layout",30,16);
-aWE("learn",38);
-aWE("least",7);
-aWE("left",10,30,31,32,33,36,23,40);
-aWE("leftward",7);
-aWE("legend",33,25);
-aWE("length",11,26,39,40);
-aWE("les",0,23);
-aWE("level",35);
-aWE("lik",3,22);
-aWE("limit",35,36);
-aWE("lin",4,7,2,10,11,32,33,36,6,26,28);
-aWE("linear",33,36,25);
-aWE("list",3,5,1,10,23,26);
-aWE("ll",0,33,40);
-aWE("load",18);
-aWE("local",31,36);
-aWE("locat",8,11,12,19,32,34,36,38,6,26,39,40);
-aWE("location",5,0,35,38);
-aWE("lock",30,31,40);
-aWE("logarithmic",33,23,25);
-aWE("longitud",35);
-aWE("look",22);
-aWE("lookout",36);
-aWE("lot",26);
-aWE("low",0,38);
-aWE("lowest",18);
-aWE("ly",34,6);
-aWE("m",39);
-aWE("magnification",31,35,39);
-aWE("magnitud",13,26,28);
-aWE("main",3,5,8,10,11,12,13,14,29,16,19,21,34,33,35,37,23,38,26,28);
-aWE("major",33);
-aWE("mak",8,26);
-aWE("management",5);
-aWE("manipulat",30,31);
-aWE("manipulation",30,31);
-aWE("manipulator",31);
-aWE("manual",4,11,12,38,6,40);
-aWE("map",37,23);
-aWE("mark",7,11,33,40);
-aWE("marker",32,33,36);
-aWE("massles",26);
-aWE("matrix",35,36);
-aWE("max",18,36,39);
-aWE("maximal",23);
-aWE("maximum",21,33,35,36,26,39);
-aWE("mean",5,32,39);
-aWE("measur",35,26);
-aWE("memory",5);
-aWE("menu",5,1,7,8,9,2,10,11,12,13,15,14,29,30,16,18,19,21,34,33,35,22,37,23,38,6,25,26,27,39,28);
-aWE("merg",6);
-aWE("mesh",3,11,12,13,16,17,32,34,37,23,38,26,39,28);
-aWE("method",4);
-aWE("might",6);
-aWE("min",18,36,39);
-aWE("minimal",23);
-aWE("minimum",21,36,38,27,39);
-aWE("minor",33);
-aWE("mis",5,0);
-aWE("mix",37);
-aWE("mjpeg",5,0);
-aWE("mjpegtool",5,0);
-aWE("mod",0,1,30,31,32,33,36,23,6,28);
-aWE("model",31);
-aWE("modify",14,39);
-aWE("modul",3,5,30,17,20,33,35,22,23,38,6,40);
-aWE("modulu",36);
-aWE("moment",3);
-aWE("momentari",32);
-aWE("monitor",18);
-aWE("mous",14,30,31,32,33,38,6,40);
-aWE("mov",5,10,31,24,38);
-aWE("movement",31,32);
-aWE("multip",31,39);
-aWE("multipl",26);
-aWE("multipli",32,35,39);
-aWE("n",33,36,39);
-aWE("nam",0,10,14,16,19,32,33,40);
-aWE("natural",33);
-aWE("navigation",31);
-aWE("nb",36,23);
-aWE("nbrfac",35);
-aWE("ne",5,0,1);
-aWE("necessary",5,16,18,19);
-aWE("negativ",36,39);
-aWE("net",5,0);
-aWE("new",1,8,2,10,17,19,33,22,38,6);
-aWE("next",5,32);
-aWE("nod",3);
-aWE("non",7,26);
-aWE("normal",1);
-aWE("not",0,18,23);
-aWE("notify",35);
-aWE("now",1,29,32);
-aWE("nth",36);
-aWE("null",39);
-aWE("numb",5,12,16,21,32,34,33,35,36,23,26,27,39,40);
-aWE("number",32);
-aWE("numerical",33);
-aWE("object",3,5,1,7,8,9,2,10,11,12,13,15,14,29,30,16,18,19,21,31,34,33,37,23,24,6,25,26,27,28,40);
-aWE("observ",11,12);
-aWE("obtain",35);
-aWE("offset",40);
-aWE("often",3);
-aWE("ok",5,0,7,10,11,12,13,14,29,19,21,34,37,23,24,26,28);
-aWE("on",3,5,1,7,8,10,11,12,13,14,29,19,21,34,35,37,23,26,27,28);
-aWE("onc",7,18,32,38);
-aWE("oncel",3);
-aWE("onedg",3);
-aWE("onfac",3);
-aWE("onnod",3);
-aWE("opacity",6);
-aWE("opaqu",32,6);
-aWE("open",18,19,33,35);
-aWE("opengl",35);
-aWE("operation",5,11,14,30,18,31,33,35);
-aWE("opposit",1);
-aWE("optimiz",5);
-aWE("optimization",26);
-aWE("option",5,7,13,15,14,30,18,31,33,36,6,25,26,27,28);
-aWE("ordinary",37);
-aWE("ordinat",36);
-aWE("orient",1);
-aWE("orientat",40);
-aWE("orientation",1,11,12,34,36,23,38);
-aWE("origin",36,23,38,40);
-aWE("otherwis",18);
-aWE("out",33,23,40);
-aWE("output",26);
-aWE("outsid",38);
-aWE("overview",17);
-aWE("own",3,23);
-aWE("packag",5,0);
-aWE("pagedn",31);
-aWE("pageup",31);
-aWE("palet",36);
-aWE("pan",31,33,40);
-aWE("parallel",5);
-aWE("paramet",11,12,35,26);
-aWE("parameter",5,1,7,11,12,13,14,30,17,21,34,35,36,37,23,38,6,26,28,40);
-aWE("parent",32);
-aWE("pars",18);
-aWE("part",3,5,0,1,7,33,38,40);
-aWE("particl",26);
-aWE("particular",3,10,26);
-aWE("party",5,0);
-aWE("path",5,0,26);
-aWE("paus",0);
-aWE("per",0);
-aWE("perform",3,0,18,40);
-aWE("performanc",5);
-aWE("period",3,5);
-aWE("perpendicular",1);
-aWE("personal",14);
-aWE("physical",3);
-aWE("pick",30,32);
-aWE("pictur",5,35);
-aWE("pixel",35);
-aWE("plac",11,33,6,40);
-aWE("placement",36);
-aWE("plan",1,11,12,30,34,38,6);
-aWE("plat",34);
-aWE("platform",20,22);
-aWE("play",0);
-aWE("plot",7,10,11,17,20,34,33,25);
-aWE("plot2d",7,10);
-aWE("plot2dview",7);
-aWE("png",30,33,35,6,40);
-aWE("point",3,7,29,30,16,31,32,33,35,36,38,6,26,39,40);
-aWE("pointer",28);
-aWE("polylin",26);
-aWE("pop",5,7,8,9,2,10,11,12,13,15,14,29,21,34,37,23,6,26,27,28);
-aWE("position",1,11,12,30,32,34,33,39,28,40);
-aWE("positiv",36);
-aWE("posses",16,31);
-aWE("possibility",0,25);
-aWE("possibl",5,1,7,8,31,38,39);
-aWE("post",3,4,5,0,7,8,2,10,11,30,17,18,19,20,33,22,23,6,26,27,40);
-aWE("preferenc",18,31,32,35,22,23,6);
-aWE("pres",5,0,29,30,32,33,40);
-aWE("present",5,23);
-aWE("presentation",3,4,5,0,1,8,9,2,11,12,13,14,29,30,16,17,20,21,32,34,35,22,36,37,23,24,38,6,26,27,39,28,40);
-aWE("presum",36);
-aWE("preview",1,11,12,34);
-aWE("previou",5);
-aWE("previous",4,10,21,31,25);
-aWE("primitiv",29,35,38,39);
-aWE("pro",3,4,5,0,7,8,2,10,11,30,17,18,19,20,33,22,23,6,26,27,40);
-aWE("problem",6);
-aWE("procedur",11);
-aWE("proces",18,20,27,39);
-aWE("produc",0,20);
-aWE("product",5,0);
-aWE("progres",18,35);
-aWE("progression",36);
-aWE("progressiv",0);
-aWE("prompt",35);
-aWE("propagation",26);
-aWE("proper",5,0);
-aWE("properti",5,0,13,29,30,33,36,23,6,25,28,40);
-aWE("proportional",5);
-aWE("provid",20,31,6);
-aWE("pseudo",6,27);
-aWE("publish",5);
-aWE("pull",31);
-aWE("purpos",35,26);
-aWE("push",31);
-aWE("put",3);
-aWE("pyramid",32);
-aWE("python",4);
-aWE("quadrangl",3);
-aWE("quality",0);
-aWE("quit",10,29,24);
-aWE("radio",34,6,39);
-aWE("radiu",38);
-aWE("rainbow",36,39);
-aWE("rang",4,5,13,21,32,34,35,36,23,6,25,39,28);
-aWE("rarefi",4);
-aWE("rat",0,18);
-aWE("ratio",30,31,32,39);
-aWE("real",5,11,33,38,39);
-aWE("record",0,30);
-aWE("rectangl",7,18);
-aWE("red",36);
-aWE("redefin",40);
-aWE("referenc",4,10,39);
-aWE("refin",36);
-aWE("regard",27);
-aWE("regim",0);
-aWE("regular",11,36);
-aWE("relat",22);
-aWE("relativ",12,34,35,6);
-aWE("relevant",35,23);
-aWE("relief",34);
-aWE("remain",35);
-aWE("remot",33,40);
-aWE("remov",7);
-aWE("renam",14,30,6,25);
-aWE("rend",5,36);
-aWE("render",35,36,39);
-aWE("represent",3,4,7,34,33,23,6,25,26,28,40);
-aWE("representation",3,14,33,6,25);
-aWE("representativ",39);
-aWE("requir",5,0,7,8,15,16,26);
-aWE("reset",24,40);
-aWE("resiz",33,40);
-aWE("resolution",35);
-aWE("resourc",0,26);
-aWE("respectiv",18,39);
-aWE("respective",31,39);
-aWE("restor",6,40);
-aWE("result",3,11,32,34,35,36,38,39);
-aWE("return",5,30,6);
-aWE("reus",11);
-aWE("reveal",33);
-aWE("revers",1);
-aWE("right",5,7,8,9,2,10,11,12,13,15,14,29,30,18,19,21,31,34,33,36,37,23,24,6,25,26,27,28);
-aWE("rightward",7);
-aWE("rotat",1,30,31,38,40);
-aWE("rotation",1,11,12,30,31,34,40);
-aWE("row",4,7);
-aWE("run",5,0,22);
-aWE("s",3,32,23);
-aWE("salom",7,30,20,31,35,22,23,24);
-aWE("sam",5,7,11,14,30,31,23,38,6,39);
-aWE("sav",5,0,30,33,36,23,25);
-aWE("scal",13,34,33,36,37,23,24,6,25,39,28);
-aWE("scalar",3,5,8,2,11,12,13,29,16,21,32,34,35,36,37,23,38,6,26,39,28);
-aWE("scen",33,35,36,39,40);
-aWE("screen",31);
-aWE("script",4);
-aWE("se",3,4,5,0,8,11,13,18,21,34,33,35,22,37,38,6,26,28,40);
-aWE("search",18);
-aWE("second",0,36,38);
-aWE("secondary",38);
-aWE("section",1,6);
-aWE("seen",36);
-aWE("segment",3,26);
-aWE("segmentation",0,30,35,38);
-aWE("select",5,1,7,8,2,10,11,12,13,14,29,30,16,18,19,21,32,34,33,36,37,23,24,6,25,26,27,39,28,40);
-aWE("selectabl",5,1);
-aWE("selection",30,16,32,6);
-aWE("semi",32,38);
-aWE("sensitiv",6);
-aWE("separat",15,6);
-aWE("separate",33,6);
-aWE("serv",26);
-aWE("session",0,23);
-aWE("set",5,0,1,11,12,13,14,29,17,18,21,32,34,35,22,37,23,6,25,26,39,28,40);
-aWE("setting",0,30,18,33,25);
-aWE("setup",5);
-aWE("shad",35,6);
-aWE("shap",12,13,35,37,39);
-aWE("shift",13);
-aWE("should",3,5,0,1,7,11,12,16,18,34,22,6,27);
-aWE("show",5,1,11,12,15,18,32,33,36,38,25,39,40);
-aWE("shrink",6);
-aWE("sid",12,36);
-aWE("similar",38,26);
-aWE("simpl",35);
-aWE("simultaneous",5,11,12,36,6);
-aWE("siz",0,16,32,33,35,26,39);
-aWE("slow",32);
-aWE("smal",35,26);
-aWE("small",28,40);
-aWE("smallest",39);
-aWE("smooth",34,26);
-aWE("smoothnes",32,26);
-aWE("so",5,32,35,39);
-aWE("solid",7);
-aWE("solv",6);
-aWE("sometim",26);
-aWE("sourc",26);
-aWE("sourceforg",5,0);
-aWE("spac",11,12,16,34,36,39);
-aWE("spacemous",31);
-aWE("spe",5,31);
-aWE("special",4,30,32);
-aWE("specifi",5,0,33,24);
-aWE("specify",33,6,26);
-aWE("spent",18);
-aWE("spher",35,38);
-aWE("splin",33);
-aWE("split",1);
-aWE("sprit",32,35);
-aWE("stamp",3,5,0,8,11,12,13,14,29,30,18,21,34,36,37,23,6,26,28);
-aWE("standard",0,7,30,18,19,31,35,39);
-aWE("star",31);
-aWE("start",5,0,1,22,26,27);
-aWE("stat",27);
-aWE("step",5,11,18,32,34,26,27);
-aWE("stop",0);
-aWE("stor",3,30);
-aWE("stream",26);
-aWE("streamlin",26);
-aWE("strict",40);
-aWE("structur",3,1,7,11,16,18,26);
-aWE("study",5,7,10,11,17,22);
-aWE("styl",30,31);
-aWE("subfold",3,8,14,30,6);
-aWE("subfolder",3);
-aWE("submenu",8);
-aWE("submesh",3,8,9,16,17,20,24);
-aWE("substitut",0);
-aWE("successiv",5);
-aWE("suggest",35);
-aWE("superposition",6);
-aWE("support",31);
-aWE("surfac",12,21,34,6);
-aWE("suspend",0);
-aWE("sweep",5,17,18,6,27);
-aWE("switch",30,31,6);
-aWE("syntax",5,0);
-aWE("system",0,31,35,39);
-aWE("systematical",36);
-aWE("t",18,33,35,40);
-aWE("tab",4,11,12,13,19,21,34,37,23,38,26,28);
-aWE("tabl",3,4,7,2,11,15,16,17,19,20,33,25);
-aWE("tail",28);
-aWE("tak",26,27);
-aWE("taken",7,11,13,36);
-aWE("technical",35);
-aWE("tensor",35,36);
-aWE("text",36,23);
-aWE("textur",35);
-aWE("them",4,5,1,7,21,31,32,35,23,6,40);
-aWE("therefor",35);
-aWE("thick",6);
-aWE("thin",6);
-aWE("third",5,0);
-aWE("thought",35,26);
-aWE("thre",3,4,11,12,34,35,23,39);
-aWE("threshold",35);
-aWE("tick",40);
-aWE("tilt",31);
-aWE("tim",3,5,0,8,11,12,13,14,29,30,18,21,34,36,37,23,38,6,26,27,28);
-aWE("tip",7);
-aWE("titl",4,33,23);
-aWE("togeth",3);
-aWE("toggl",31);
-aWE("toleranc",32);
-aWE("tool",5,0,7);
-aWE("toolbar",8,11,12,13,14,29,30,21,31,32,34,33,22,37,23,38,26,28,40);
-aWE("top",32,33,38);
-aWE("total",35);
-aWE("touch",32);
-aWE("transform",26);
-aWE("transformation",23,27);
-aWE("translat",30,24,6);
-aWE("translation",30,31,38);
-aWE("transparency",32,35);
-aWE("transparent",32,38,6);
-aWE("tre",3);
-aWE("triangl",3,7,40);
-aWE("triangular",32);
-aWE("trigger",25);
-aWE("trihedron",40);
-aWE("truncat",1);
-aWE("twic",39);
-aWE("two",0,1,7,10,11,12,30,32,34,35,36,37,38);
-aWE("txt",4,19);
-aWE("typ",3,5,7,8,11,12,13,29,16,34,33,35,37,23,6,25,26,27,39,28);
-aWE("uncheck",18,40);
-aWE("uniqu",39);
-aWE("unit",4,7,26);
-aWE("unwant",1);
-aWE("up",5,7,8,9,2,10,11,12,13,15,14,29,21,31,34,35,36,37,23,38,6,26,27,28);
-aWE("updat",21,32,22,38,39);
-aWE("upward",7);
-aWE("us",3,5,0,1,7,10,11,13,29,30,16,31,32,35,36,23,38,26,27,39,28,40);
-aWE("usag",17);
-aWE("usual",26);
-aWE("utility",5,0);
-aWE("v",7,38);
-aWE("validat",5);
-aWE("valu",3,4,0,7,8,2,11,12,13,16,18,21,32,34,35,36,37,23,6,26,27,39,28);
-aWE("variabl",5,0,36,38);
-aWE("variou",20);
-aWE("vary",39);
-aWE("ve",0);
-aWE("vector",3,8,13,16,21,34,35,36,37,23,26,28);
-aWE("verbal",33);
-aWE("vertex",35);
-aWE("vertical",1,7,33,36,23);
-aWE("very",32,26);
-aWE("via",30,25,40);
-aWE("video",0);
-aWE("view",3,4,0,1,7,9,2,10,11,12,13,15,14,30,16,17,21,31,32,34,33,35,22,37,23,24,38,6,25,26,27,39,28,40);
-aWE("viewer",31);
-aWE("visibl",33,35,40);
-aWE("visualis",35);
-aWE("visualisation",29);
-aWE("visualiz",11,13,32,35,28);
-aWE("visualization",8,11,12,13,29,20,21,34,37,23,38,6,26,28,40);
-aWE("vtk",30,35,22,6,40);
-aWE("way",1,32,38);
-aWE("well",8,23);
-aWE("what",18);
-aWE("whatev",35);
-aWE("wheel",5);
-aWE("wheth",5,0);
-aWE("whil",5,34);
-aWE("whol",3,35,23);
-aWE("why",3);
-aWE("width",7,36,23,6,28);
-aWE("will",3,5,0,1,7,8,9,2,10,11,12,13,15,14,16,18,19,21,32,34,33,35,22,36,37,23,24,6,25,26,27,39,28);
-aWE("window",0,10,15,30,32,22,38);
-aWE("wir",6);
-aWE("wirefram",6);
-aWE("wish",33,6,40);
-aWE("within",32,35,36,6);
-aWE("without",4,30,31);
-aWE("work",5,0);
-aWE("would",0,35);
-aWE("written",36);
-aWE("x",1,7,31,33,35,36,23,24);
-aWE("xl",4,19);
-aWE("xy",10,11,12,20,34,33,25);
-aWE("y",1,7,31,33,36,23,24);
-aWE("your",5,0,1,7,2,10,11,12,13,15,14,29,18,19,21,34,33,37,23,24,25,26,28);
-aWE("yz",11,12,34);
-aWE("z",1,24);
-aWE("zoom",30,31,32,33,35,40);
-aWE("zx",11,12,34);
-
-//-->
-</script>
-</html>
diff --git a/doc/salome/gui/VISU/whdata/whgdata.js b/doc/salome/gui/VISU/whdata/whgdata.js
deleted file mode 100755 (executable)
index e38a107..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-//     WebHelp 5.10.001
-var gIEA = new Array();
-function aGE(sName, sDef)
-{
-       var len = gIEA.length;
-       gIEA[len] = new gloEntry(sName, sDef);
-}
-
-function gloEntry(sName, sDef) 
-{
-       this.sName = sName;
-       this.sDef = sDef;
-       this.nNKOff = 0;
-}
-
-function window_OnLoad()
-{
-       if (parent && parent != this) {
-               if (parent.putData) 
-               {
-                       parent.putData(gIEA);
-               }
-       }
-}
-
-window.onload = window_OnLoad;
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/whdata/whgdata0.htm b/doc/salome/gui/VISU/whdata/whgdata0.htm
deleted file mode 100755 (executable)
index 3865725..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-<html>
-<head>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-</head>
-<body>
-<script language="javascript" src="whgdata.js"></script>
-<script language="javascript">
-<!--
- aGE("Cell","Element of a mesh. Cells are determined by their connectivity. They can have 0,1,2 or 3 dimension.");
- aGE("Component","One integer or real value can correspond to each component of a field and to each entity of a mesh");
- aGE("Descendant connectivity","It is a description of the entities of the mesh with dimension N. This description is made by an ordered list of geometrical entities (nodes, edges, or faces) with dimension N-1.");
- aGE("Edge","An edge of a volumetric or surface mesh. It is composed of 2 or 3 nodes (2 vertex nodes and optionally one middle node).");
- aGE("Entity of a mesh","Geometrical component of the mesh: node, cell, face and edge. Faces and edges are only intermediate entities allowing to define the cells in descendant connectivity.");
- aGE("Equivalence","Equivalence represents a list of correspondance 2 by 2 of the entities of the same dimension.");
- aGE("Face","Face of a volumetrical cell (triangle, quadrangle).");
- aGE("Family","Entities of a mesh are described by a certain number   of characteristics (boundary conditions, groups membership). Families represent classes equivalent to these characteristics (two entities of a mesh can belong to the same family if they have the same characteristics). Every family is determined by a set of attributes and a list of groups membership.");
- aGE("Field","Field consists of one or several scalar components. One definite type is associated to the given field and the values corresponding to different components are all of the same type.");
- aGE("Field profile","Fields can be defined only on one part of the mesh. Profile   of the field or profile of the component of a field indicates which entities of the mesh contain values.");
- aGE("Group","Unordered set of entities of a mesh. One entity can belong to   several groups.");
- aGE("Mesh","Mesh is described by its geometry: list of nodes and list of cells which constitute this mesh. Supplementary information is added with the help of families (initial, boundary conditions).");
- aGE("Nodal connectivity","It is a description of an entity of the mesh by an ordered list of nodes constituting this entity.");
- aGE("Node","Node can be an isolated node of a mesh, a vertex or middle node of an edge. A node is associated to a point.");
- aGE("Point","Geometrical entity determined by its coordinates in the space.");
- aGE("Reference connectivity","For each type of entity of a mesh, reference connectivity define the topology of an entity.");
- aGE("Result","List of fields referring to one mesh.");
- aGE("Study","Study represents a chain of sequences of calculations.");
-
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/whdata/whglo.htm b/doc/salome/gui/VISU/whdata/whglo.htm
deleted file mode 100755 (executable)
index 9d7ac79..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<html>
-<head>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-</head>
-<body>
-<script language="javascript" src="whglo.js"></script>
-<script language="javascript">
-<!--
-iFM("Cell","Study","whgdata0.htm",18);
-
-//-->
-</script>
-</body>
-</html>
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/whdata/whglo.js b/doc/salome/gui/VISU/whdata/whglo.js
deleted file mode 100755 (executable)
index c34fb24..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-//     WebHelp 5.10.001
-var gaFileMapping = new Array();
-function fileMapping(sBK, sEK, sFileName, nNum)
-{
-       this.sBK = sBK;
-       this.sEK = sEK;
-       this.sFileName = sFileName;
-       this.aKs = null;
-       this.nNum = nNum;
-       this.oUsedItems = null;
-}
-
-
-function iFM(sBK, sEK, sFileName, nNum)
-{
-       var i = gaFileMapping.length;
-       gaFileMapping[i] = new fileMapping(sBK, sEK, sFileName, nNum);  
-       if (i == 0) {
-               gaFileMapping[i].nTotal = nNum;
-       }
-       else {
-               gaFileMapping[i].nTotal = nNum + gaFileMapping[i - 1].nTotal;
-       }
-}
-
-function window_OnLoad()
-{
-       if (parent && parent != this && parent.projReady)
-       {
-               parent.projReady(gaFileMapping);
-       }               
-}
-
-window.onload = window_OnLoad;
diff --git a/doc/salome/gui/VISU/whdata/whidata.js b/doc/salome/gui/VISU/whdata/whidata.js
deleted file mode 100755 (executable)
index a921847..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-//     WebHelp 5.10.001
-// const strings
-var gIEA = new Array();
-function aIE()
-{
-       var len = gIEA.length;
-       gIEA[len] = new indexEntry(aIE.arguments);
-}
-
-function topic(sName, sURL)
-{
-       this.sName = sName;
-       this.sURL = sURL;
-}
-
-function indexEntry(fn_arguments) 
-{
-       if (fn_arguments.length && fn_arguments.length >= 3) 
-       {
-               this.nType = fn_arguments[0];
-               this.nPKOff = 0;
-               this.nNKOff = fn_arguments[1];
-               this.sName = fn_arguments[2];
-               this.aTopics = null;
-               var nLen = fn_arguments.length;
-               if (Math.floor(nLen / 2) * 2 == nLen)
-               {
-                       this.sTarget = fn_arguments[3];
-                       if (nLen > 5)
-                       {
-                               this.aTopics = new Array();
-                               for (var i = 0; i < (nLen - 5)/2; i++)
-                               {
-                                       this.aTopics[i] = new topic(fn_arguments[i * 2 + 4], fn_arguments[i * 2 + 5]);
-                               }
-                       }
-
-               }
-               else 
-               {
-                       if (nLen > 4) 
-                       {
-                               this.aTopics = new Array();
-                               for (var i = 0; i < (nLen - 4)/2; i++)
-                               {
-                                       this.aTopics[i] = new topic(fn_arguments[i * 2 + 3], fn_arguments[i * 2 + 4]);
-                               }
-                       }
-               }
-       }
-}
-
-function getIndexTopicMappingList(nItemIndex)
-{
-       var sTopics = "";
-       if (gIEA.length > nItemIndex)
-       {
-               if (gIEA[nItemIndex].aTopics) 
-               {
-                       var i = 0;
-                       var nLen = gIEA[nItemIndex].aTopics.length;
-                       for (i = 0; i < nLen; i ++) 
-                       {
-                               sTopics += "," + gIEA[nItemIndex].aTopics[i];
-                       }
-               }
-       }
-       return sTopics;         
-}
-
-function window_OnLoad()
-{
-       if (parent && parent != this) {
-               if (parent.putData) 
-               {
-                       for (var i = 0; i < gIEA.length; i ++ )
-                       {
-                               if (gIEA[i].nNKOff != 0 && i + gIEA[i].nNKOff + 1 < gIEA.length)
-                               {
-                               
-                                       gIEA[i + gIEA[i].nNKOff + 1].nPKOff = gIEA[i].nNKOff;
-                               }
-                       }
-                       parent.putData(gIEA);
-               }
-       }
-}
-
-window.onload = window_OnLoad;
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/whdata/whidx.htm b/doc/salome/gui/VISU/whdata/whidx.htm
deleted file mode 100755 (executable)
index a049a96..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-<html>
-<head>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-</head>
-<body>
-<script language="javascript" src="whidx.js"></script>
-<script language="javascript">
-<!--
-
-//-->
-</script>
-</body>
-</html>
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/whdata/whidx.js b/doc/salome/gui/VISU/whdata/whidx.js
deleted file mode 100755 (executable)
index c34fb24..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-//     WebHelp 5.10.001
-var gaFileMapping = new Array();
-function fileMapping(sBK, sEK, sFileName, nNum)
-{
-       this.sBK = sBK;
-       this.sEK = sEK;
-       this.sFileName = sFileName;
-       this.aKs = null;
-       this.nNum = nNum;
-       this.oUsedItems = null;
-}
-
-
-function iFM(sBK, sEK, sFileName, nNum)
-{
-       var i = gaFileMapping.length;
-       gaFileMapping[i] = new fileMapping(sBK, sEK, sFileName, nNum);  
-       if (i == 0) {
-               gaFileMapping[i].nTotal = nNum;
-       }
-       else {
-               gaFileMapping[i].nTotal = nNum + gaFileMapping[i - 1].nTotal;
-       }
-}
-
-function window_OnLoad()
-{
-       if (parent && parent != this && parent.projReady)
-       {
-               parent.projReady(gaFileMapping);
-       }               
-}
-
-window.onload = window_OnLoad;
diff --git a/doc/salome/gui/VISU/whdata/whtdata.js b/doc/salome/gui/VISU/whdata/whtdata.js
deleted file mode 100755 (executable)
index 0558e19..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-//     WebHelp 5.10.001
-var gTEA = new Array();
-function aTE()
-{
-       gTEA[gTEA.length] = new tocEntry(aTE.arguments);
-}
-
-function tocEntry(fn_arguments) 
-{
-       if (fn_arguments.length < 3)    
-       {
-               alert ("data format wrong!!!");
-               return;
-       }
-       
-       this.nType = fn_arguments[0];
-       this.nContents = fn_arguments[1];
-       this.sItemName = fn_arguments[2];
-       
-       if (this.nType == 1 || this.nType == 2 || this.nType == 16)
-       {
-               if (fn_arguments.length > 3)
-               {
-                       this.sItemURL = fn_arguments[3];
-                       if (fn_arguments.length > 4)
-                       {
-                               this.sTarget = fn_arguments[4];
-                               if (fn_arguments.length > 5)
-                                       this.sIconRef = fn_arguments[5];
-                       }
-               }
-       }
-       if (this.nType == 4 || this.nType == 8)
-       {
-               if (fn_arguments.length > 3)
-               {
-                       this.sRefURL = fn_arguments[3];
-                       if (this.nType == 4)
-                       {
-                               if(this.sRefURL.lastIndexOf("/")!=this.sRefURL.length-1)
-                                       this.sRefURL+="/";
-                       }
-                       if (fn_arguments.length > 4)
-                       {
-                               this.sItemURL = fn_arguments[4];
-                               if (fn_arguments.length > 5)
-                               {
-                                       this.sTarget = fn_arguments[5];
-                                       if (fn_arguments.length > 6)
-                                               this.sIconRef = fn_arguments[6];
-                               }
-                       }
-               }
-       }
-}
-
-
-function window_OnLoad()
-{
-       if (parent && parent != this && parent.putData) {
-               parent.putData(gTEA);
-       }
-}
-window.onload = window_OnLoad;
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/whdata/whtdata0.htm b/doc/salome/gui/VISU/whdata/whtdata0.htm
deleted file mode 100755 (executable)
index fe3b5c7..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-<html>
-<head>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-</head>
-<body>
-<script language="javascript" src="whtdata.js"></script>
-<script language="javascript">
-<!--
- aTE(1,44,"Post-Pro module");
-   aTE(2,0,"Introduction to Post-Pro","files/introduction.htm");
-   aTE(2,0,"Running Post-Pro","files/running_visu.htm");
-   aTE(2,0,"Importing MED files","files/importing_med_objects.htm");
-   aTE(2,0,"Structure of MED objects","files/about_structure_of_med_object.htm");
-   aTE(1,29,"3D presentations");
-     aTE(2,0,"Presentation of a submesh","files/creating_presentations.htm");
-     aTE(1,21,"Field presentations");
-       aTE(2,0,"Creating field presentations","files/creating_field_presentations.htm");
-       aTE(2,0,"Scalar Map presentation","files/scalar_map_presentation.htm");
-       aTE(2,0,"Iso Surfaces presentation","files/iso_surfaces_presentation.htm");
-       aTE(2,0,"Cut Lines presentation","files/cut_lines_presentation.htm");
-       aTE(2,0,"Cut Planes presentation","files/cut_lines_resentation.htm");
-       aTE(2,0,"Deformed Shape presentation","files/deformed_shape_presentation.htm");
-       aTE(2,0,"Vectors Presentation","files/vectors_presentation.htm");
-       aTE(2,0,"Stream Lines presentation","files/stream_lines_presentation.htm");
-       aTE(2,0,"Scalar Map on Deformed Shape presentation","scalar_map_on_deformed_shape_presentation.htm");
-       aTE(2,0,"Plot 3D presentation","plot_3d_presentation.htm");
-       aTE(2,0,"Animating presentations","files/animating_presentations.htm");
-       aTE(1,9,"Gauss Points Presentations");
-         aTE(2,0,"Creating a Gauss Points Presentation","gauss_points_presentation.htm");
-         aTE(2,0,"Primitive Types","primitive_types.htm");
-         aTE(2,0,"Types of Gauss Points Presentations","types_of_gauss_points_presentations.htm");
-         aTE(2,0,"Scalar Bar","scalar_bar.htm");
-         aTE(2,0,"Gauss Viewer","gauss_viewer.htm");
-         aTE(2,0,"Navigation in the Gauss viewer","navigation_with_keyboard_and_spacemouse.htm");
-         aTE(2,0,"Picking","picking.htm");
-         aTE(2,0,"Segmentation","segmentation.htm");
-         aTE(2,0,"Recording in Gauss Viewer","animation_in_gauss_viewer.htm");
-     aTE(1,5,"Viewing 3D presentations");
-       aTE(2,0,"Viewing 3D Presentations","files/changing_visualization_parameters_of_the_presenetation.htm");
-       aTE(2,0,"Translate Presentation","files/scaling_presentations.htm");
-       aTE(2,0,"Clipping ","clipping.htm");
-       aTE(2,0,"Sweeping","files/sweeping.htm");
-       aTE(2,0,"Selection Info","files/getting_elements_attributes.htm");
-   aTE(1,4,"Table presentations");
-     aTE(2,0,"About tables","files/about_tables.htm");
-     aTE(2,0,"Importing/exporting tables","files/importing_tables.htm");
-     aTE(2,0,"Displaying tables","files/displaying_tables.htm");
-     aTE(2,0,"Creating tables from Cut Lines presentations","creating_tables.htm");
-   aTE(1,4,"XY plots");
-     aTE(2,0,"Creating curves","files/creating_curves.htm");
-     aTE(2,0,"Creating XY plots","files/creating_xy_plot.htm");
-     aTE(2,0,"Plot2D Viewer","plot2d_viewer.htm");
-     aTE(2,0,"Setting properties of XY plots","files/setting_properties_of_xy_plots.htm");
-aTE(2,0,"Access to Post-Pro module functionality from Python (using VISU_Gen.idl)","visugenidl_doc/VISU__Gen_8idl.html");
-//-->
-</script>
-</body>
-</html>
diff --git a/doc/salome/gui/VISU/whdata/whtoc.htm b/doc/salome/gui/VISU/whdata/whtoc.htm
deleted file mode 100755 (executable)
index 459c3e3..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<html>
-<head>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-</head>
-<body>
-<script language="javascript" src="whtoc.js"></script>
-<script language="javascript">
-<!--
-  setRoot("whtdata0.htm");
-
-//-->
-</script>
-</body>
-</html>
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/whdata/whtoc.js b/doc/salome/gui/VISU/whdata/whtoc.js
deleted file mode 100755 (executable)
index 62de5a1..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-//     WebHelp 5.10.001
-// const strings
-var gaProj = new Array();
-var gsRoot = "";
-
-function setRoot(sRoot)
-{
-       gsRoot = sRoot
-}
-
-function aPE(sProjPath, sRootPath)
-{
-       gaProj[gaProj.length] = new tocProjEntry(sProjPath, sRootPath);
-}
-
-function tocProjEntry(sProjPath, sRootPath) 
-{
-       if(sProjPath.lastIndexOf("/")!=sProjPath.length-1)
-               sProjPath+="/"; 
-       this.sPPath = sProjPath;
-       this.sRPath = sRootPath;
-}
-
-
-function window_OnLoad()
-{
-       if (parent && parent != this && parent.projReady) {
-               parent.projReady(gsRoot, gaProj);
-       }
-}
-window.onload = window_OnLoad;
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/whgdata/whexpbar.gif b/doc/salome/gui/VISU/whgdata/whexpbar.gif
deleted file mode 100755 (executable)
index e677dc6..0000000
Binary files a/doc/salome/gui/VISU/whgdata/whexpbar.gif and /dev/null differ
diff --git a/doc/salome/gui/VISU/whgdata/whlstf0.htm b/doc/salome/gui/VISU/whgdata/whlstf0.htm
deleted file mode 100755 (executable)
index 1d48422..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-<html>
-<head>
-<title>Search Words List</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-<p class="ftsbody" >
-
-
-<a name="bm_{"></a><a name="subkey_{{"></a><a href="../plot2d_viewer.htm"><b>10n</b></a> <br><nobr><a name="bms_{D"></a><a name="subkey_{D"></a>2d <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_curves.htm"><b>2</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>3</b></a> <a href="../files/getting_started.htm"><b>4</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>5</b></a> <a href="../plot_3d_presentation.htm"><b>6</b></a> <a href="../plot2d_viewer.htm"><b>7</b></a> </nobr><br><nobr>3d <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/cut_lines_resentation.htm"><b>2</b></a> <a href="../files/cut_lines_presentation.htm"><b>3</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>4</b></a> <a href="../files/about_structure_of_med_object.htm"><b>5</b></a> <a href="../clipping.htm"><b>6</b></a> <a href="../animation_in_gauss_viewer.htm"><b>7</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>8</b></a> <a href="../gauss_viewer.htm"><b>9</b></a> <a href="../files/scaling_presentations.htm"><b>10</b></a> <a href="../files/scalar_map_presentation.htm"><b>11</b></a> <a href="../files/introduction.htm"><b>12</b></a> <a href="../files/getting_elements_attributes.htm"><b>13</b></a> <a href="../vtk_3d_viewer.htm"><b>14</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>15</b></a> <a href="../segmentation.htm"><b>16</b></a> <a href="../primitive_types.htm"><b>17</b></a> <a href="../plot_3d_presentation.htm"><b>18</b></a> <a href="../picking.htm"><b>19</b></a> </nobr><br>
-<br><br>
-<nobr><a name="bm_A"></a><a name="subkey_AB"></a>able <a href="../files/importing_med_objects.htm"><b>1</b></a> <a href="../vtk_3d_viewer.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><a href="../segmentation.htm"><b>above</b></a> <br><a href="../scalar_bar.htm"><b>abscissa</b></a> <br><a href="../types_of_gauss_points_presentations.htm"><b>absolute</b></a> <br><nobr><a name="bms_AC"></a><a name="subkey_AC"></a>acceptable <a href="../files/sweeping.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> </nobr><br><nobr>access <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>3</b></a> <a href="../plot2d_viewer.htm"><b>4</b></a> </nobr><br><nobr>accessed <a href="../vtk_3d_viewer.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> </nobr><br><a href="../files/displaying_hiding_presentations.htm"><b>accessible</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>accordance</b></a> <br><nobr>according <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_resentation.htm"><b>2</b></a> <a href="../files/vectors_presentation.htm"><b>3</b></a> <a href="../files/stream_lines_presentation.htm"><b>4</b></a> <a href="../files/scalar_map_presentation.htm"><b>5</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>6</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>accuracy</b></a> <br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>action</b></a> <br><nobr>actions <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>2</b></a> <a href="../files/scaling_presentations.htm"><b>3</b></a> </nobr><br><nobr>activated <a href="../gauss_viewer.htm"><b>1</b></a> <a href="../segmentation.htm"><b>2</b></a> <a href="../picking.htm"><b>3</b></a> </nobr><br><a href="../gauss_viewer.htm"><b>activates</b></a> <br><nobr>active <a href="../types_of_gauss_points_presentations.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> <a href="../plot_3d_presentation.htm"><b>3</b></a> <a href="../picking.htm"><b>4</b></a> </nobr><br><a href="../animation_in_gauss_viewer.htm"><b>activity</b></a> <br><a href="../files/getting_elements_attributes.htm"><b>actor</b></a> <br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>actors</b></a> <br><a href="../segmentation.htm"><b>actually</b></a> <br><nobr><a name="bms_AD"></a><a name="subkey_AD"></a>addition <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><nobr>additional <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/deformed_shape_presentation.htm"><b>2</b></a> <a href="../files/cut_lines_resentation.htm"><b>3</b></a> <a href="../files/animating_presentations.htm"><b>4</b></a> <a href="../files/vectors_presentation.htm"><b>5</b></a> <a href="../files/stream_lines_presentation.htm"><b>6</b></a> <a href="../files/scalar_map_presentation.htm"><b>7</b></a> <a href="../files/running_visu.htm"><b>8</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>9</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>10</b></a> <a href="../plot_3d_presentation.htm"><b>11</b></a> </nobr><br><nobr>adjust <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>2</b></a> <a href="../picking.htm"><b>3</b></a> </nobr><br><a href="../files/animating_presentations.htm"><b>adjusted</b></a> <br><a href="../clipping.htm"><b>adjusting</b></a> <br><nobr>advanced <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../plot2d_viewer.htm"><b>2</b></a> </nobr><br><a name="bms_AG"></a><a name="subkey_AG"></a><a href="../files/animating_presentations.htm"><b>again</b></a> <br><a name="bms_AL"></a><a name="subkey_AL"></a><a href="../files/cut_lines_presentation.htm"><b>algorithm</b></a> <br><nobr>allow <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>3</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>4</b></a> <a href="../plot_3d_presentation.htm"><b>5</b></a> </nobr><br><nobr>allowing <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../animation_in_gauss_viewer.htm"><b>2</b></a> <a href="../files/sweeping.htm"><b>3</b></a> <a href="../files/stream_lines_presentation.htm"><b>4</b></a> <a href="../files/scaling_presentations.htm"><b>5</b></a> <a href="../files/scalar_map_presentation.htm"><b>6</b></a> <a href="../files/importing_med_objects.htm"><b>7</b></a> </nobr><br><nobr>allows <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/deformed_shape_presentation.htm"><b>2</b></a> <a href="../files/cut_lines_resentation.htm"><b>3</b></a> <a href="../files/cut_lines_presentation.htm"><b>4</b></a> <a href="../files/creating_curves.htm"><b>5</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>6</b></a> <a href="../files/animating_presentations.htm"><b>7</b></a> <a href="../files/about_tables.htm"><b>8</b></a> <a href="../clipping.htm"><b>9</b></a> <a href="../animation_in_gauss_viewer.htm"><b>10</b></a> <a href="../gauss_viewer.htm"><b>11</b></a> <a href="../files/vectors_presentation.htm"><b>12</b></a> <a href="../files/stream_lines_presentation.htm"><b>13</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>14</b></a> <a href="../files/scalar_map_presentation.htm"><b>15</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>16</b></a> <a href="../files/importing_med_objects.htm"><b>17</b></a> <a href="../vtk_3d_viewer.htm"><b>18</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>19</b></a> <a href="../segmentation.htm"><b>20</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>21</b></a> <a href="../scalar_bar.htm"><b>22</b></a> <a href="../plot_3d_presentation.htm"><b>23</b></a> <a href="../plot2d_viewer.htm"><b>24</b></a> <a href="../picking.htm"><b>25</b></a> </nobr><br><nobr>along <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../files/scaling_presentations.htm"><b>2</b></a> <a href="../files/getting_elements_attributes.htm"><b>3</b></a> <a href="../segmentation.htm"><b>4</b></a> <a href="../plot2d_viewer.htm"><b>5</b></a> </nobr><br><a href="../primitive_types.htm"><b>alpha</b></a> <br><nobr>already <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/stream_lines_presentation.htm"><b>2</b></a> </nobr><br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>alternatively</b></a> <br><a href="../animation_in_gauss_viewer.htm"><b>always</b></a> <br><a name="bms_AN"></a><a name="subkey_AN"></a><a href="../types_of_gauss_points_presentations.htm"><b>analog</b></a> <br><nobr>angle <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../clipping.htm"><b>3</b></a> <a href="../plot_3d_presentation.htm"><b>4</b></a> </nobr><br><a href="../files/getting_started.htm"><b>animate</b></a> <br><a href="../files/animating_presentations.htm"><b>animating</b></a> <br><nobr>animation <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../files/animating_presentations.htm"><b>2</b></a> <a href="../animation_in_gauss_viewer.htm"><b>3</b></a> <a href="../files/sweeping.htm"><b>4</b></a> </nobr><br><a href="../files/animating_presentations.htm"><b>animations</b></a> <br><nobr>another <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/animating_presentations.htm"><b>2</b></a> <a href="../files/sweeping.htm"><b>3</b></a> <a href="../files/stream_lines_presentation.htm"><b>4</b></a> </nobr><br><nobr>any <a href="../files/about_tables.htm"><b>1</b></a> <a href="../files/about_structure_of_med_object.htm"><b>2</b></a> <a href="../animation_in_gauss_viewer.htm"><b>3</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>4</b></a> <a href="../gauss_viewer.htm"><b>5</b></a> <a href="../files/importing_med_objects.htm"><b>6</b></a> <a href="../files/getting_elements_attributes.htm"><b>7</b></a> <a href="../primitive_types.htm"><b>8</b></a> </nobr><br><a name="bms_AP"></a><a name="subkey_AP"></a><a href="../picking.htm"><b>apexes</b></a> <br><a href="../animation_in_gauss_viewer.htm"><b>api</b></a> <br><nobr>appear <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../files/creating_curves.htm"><b>3</b></a> <a href="../files/animating_presentations.htm"><b>4</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>5</b></a> <a href="../files/scalar_map_presentation.htm"><b>6</b></a> </nobr><br><nobr>application <a href="../files/running_visu.htm"><b>1</b></a> <a href="../files/importing_med_objects.htm"><b>2</b></a> </nobr><br><nobr>applied <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_resentation.htm"><b>2</b></a> <a href="../files/cut_lines_presentation.htm"><b>3</b></a> <a href="../files/creating_field_presentations.htm"><b>4</b></a> <a href="../files/about_structure_of_med_object.htm"><b>5</b></a> <a href="../creating_tables.htm"><b>6</b></a> <a href="../files/vectors_presentation.htm"><b>7</b></a> <a href="../files/sweeping.htm"><b>8</b></a> <a href="../files/stream_lines_presentation.htm"><b>9</b></a> <a href="../files/scalar_map_presentation.htm"><b>10</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>11</b></a> <a href="../files/getting_elements_attributes.htm"><b>12</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>13</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>14</b></a> <a href="../plot_3d_presentation.htm"><b>15</b></a> </nobr><br><a href="../primitive_types.htm"><b>applies</b></a> <br><nobr>apply <a href="../clipping.htm"><b>1</b></a> <a href="../gauss_points_presentation.htm"><b>2</b></a> <a href="../files/scaling_presentations.htm"><b>3</b></a> <a href="../files/scalar_map_presentation.htm"><b>4</b></a> </nobr><br><nobr><a name="bms_AR"></a><a name="subkey_AR"></a>area <a href="../files/stream_lines_presentation.htm"><b>1</b></a> <a href="../vtk_3d_viewer.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><nobr>around <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../segmentation.htm"><b>3</b></a> <a href="../plot_3d_presentation.htm"><b>4</b></a> <a href="../picking.htm"><b>5</b></a> </nobr><br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>arrange</b></a> <br><a href="../files/cut_lines_presentation.htm"><b>array</b></a> <br><a href="../files/vectors_presentation.htm"><b>arrows</b></a> <br><a name="bms_AS"></a><a name="subkey_AS"></a><a href="../animation_in_gauss_viewer.htm"><b>asked</b></a> <br><a href="../files/creating_curves.htm"><b>assign</b></a> <br><a href="../gauss_viewer.htm"><b>assigned</b></a> <br><nobr>associated <a href="../types_of_gauss_points_presentations.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_AT"></a><a name="subkey_AT"></a>attributes <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> <a href="../files/getting_elements_attributes.htm"><b>3</b></a> </nobr><br><nobr><a name="bms_AU"></a><a name="subkey_AU"></a>auto <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> <a href="../clipping.htm"><b>3</b></a> </nobr><br><nobr>automatically <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/creating_curves.htm"><b>3</b></a> <a href="../clipping.htm"><b>4</b></a> <a href="../gauss_viewer.htm"><b>5</b></a> <a href="../files/sweeping.htm"><b>6</b></a> <a href="../files/importing_med_objects.htm"><b>7</b></a> <a href="../segmentation.htm"><b>8</b></a> </nobr><br><nobr><a name="bms_AV"></a><a name="subkey_AV"></a>available <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../animation_in_gauss_viewer.htm"><b>2</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>3</b></a> <a href="../gauss_viewer.htm"><b>4</b></a> <a href="../files/getting_elements_attributes.htm"><b>5</b></a> <a href="../vtk_3d_viewer.htm"><b>6</b></a> </nobr><br><a href="../types_of_gauss_points_presentations.htm"><b>average</b></a> <br><a href="../animation_in_gauss_viewer.htm"><b>avi</b></a> <br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>avoid</b></a> <br><nobr><a name="bms_AX"></a><a name="subkey_AX"></a>axes <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>3</b></a> <a href="../clipping.htm"><b>4</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>5</b></a> <a href="../files/scaling_presentations.htm"><b>6</b></a> <a href="../vtk_3d_viewer.htm"><b>7</b></a> <a href="../plot_3d_presentation.htm"><b>8</b></a> <a href="../plot2d_viewer.htm"><b>9</b></a> </nobr><br><nobr>axis <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/creating_curves.htm"><b>3</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>4</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>5</b></a> <a href="../vtk_3d_viewer.htm"><b>6</b></a> <a href="../segmentation.htm"><b>7</b></a> <a href="../plot_3d_presentation.htm"><b>8</b></a> <a href="../plot2d_viewer.htm"><b>9</b></a> </nobr><br>
-<br><br>
-<nobr><a name="bm_B"></a><a name="subkey_BA"></a>back <a href="../files/creating_xy_plot.htm"><b>1</b></a> <a href="../files/animating_presentations.htm"><b>2</b></a> </nobr><br><nobr>background <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>3</b></a> <a href="../plot2d_viewer.htm"><b>4</b></a> </nobr><br><nobr>backward <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../files/stream_lines_presentation.htm"><b>2</b></a> </nobr><br><nobr>bar <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_resentation.htm"><b>2</b></a> <a href="../files/cut_lines_presentation.htm"><b>3</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>4</b></a> <a href="../files/animating_presentations.htm"><b>5</b></a> <a href="../gauss_points_presentation.htm"><b>6</b></a> <a href="../files/vectors_presentation.htm"><b>7</b></a> <a href="../files/stream_lines_presentation.htm"><b>8</b></a> <a href="../files/scalar_map_presentation.htm"><b>9</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>10</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>11</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>12</b></a> <a href="../scalar_bar.htm"><b>13</b></a> <a href="../plot_3d_presentation.htm"><b>14</b></a> <a href="../picking.htm"><b>15</b></a> </nobr><br><nobr>bars <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../segmentation.htm"><b>2</b></a> <a href="../scalar_bar.htm"><b>3</b></a> </nobr><br><nobr>base <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/animating_presentations.htm"><b>2</b></a> <a href="../files/about_structure_of_med_object.htm"><b>3</b></a> <a href="../files/sweeping.htm"><b>4</b></a> </nobr><br><nobr>based <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../files/animating_presentations.htm"><b>3</b></a> <a href="../files/stream_lines_presentation.htm"><b>4</b></a> <a href="../files/scalar_map_presentation.htm"><b>5</b></a> <a href="../files/introduction.htm"><b>6</b></a> <a href="../files/getting_started.htm"><b>7</b></a> </nobr><br><nobr>basic <a href="../files/sweeping.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.htm"><b>2</b></a> <a href="../primitive_types.htm"><b>3</b></a> </nobr><br><a href="../files/about_structure_of_med_object.htm"><b>basing</b></a> <br><nobr>basis <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_curves.htm"><b>2</b></a> <a href="../files/about_tables.htm"><b>3</b></a> <a href="../files/about_structure_of_med_object.htm"><b>4</b></a> <a href="../files/stream_lines_presentation.htm"><b>5</b></a> <a href="../files/scalar_map_presentation.htm"><b>6</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>7</b></a> <a href="../plot2d_viewer.htm"><b>8</b></a> </nobr><br><a name="bms_BE"></a><a name="subkey_BE"></a><a href="../files/importing_med_objects.htm"><b>become</b></a> <br><a href="../picking.htm"><b>becomes</b></a> <br><a href="../files/running_visu.htm"><b>before</b></a> <br><a href="../files/animating_presentations.htm"><b>begin</b></a> <br><a href="../files/animating_presentations.htm"><b>beginning</b></a> <br><a href="../picking.htm"><b>being</b></a> <br><nobr>belonging <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.htm"><b>2</b></a> </nobr><br><a href="../primitive_types.htm"><b>belongs</b></a> <br><nobr>below <a href="../segmentation.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><a href="../animation_in_gauss_viewer.htm"><b>better</b></a> <br><nobr><a name="bms_BI"></a><a name="subkey_BI"></a>bicolor <a href="../types_of_gauss_points_presentations.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> </nobr><br><a href="../files/vectors_presentation.htm"><b>big</b></a> <br><a href="../primitive_types.htm"><b>bigger</b></a> <br><nobr><a name="bms_BL"></a><a name="subkey_BL"></a>black <a href="../scalar_bar.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><nobr>blue <a href="../files/importing_med_objects.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_BM"></a><a name="subkey_BM"></a>bmp <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../vtk_3d_viewer.htm"><b>3</b></a> <a href="../primitive_types.htm"><b>4</b></a> <a href="../plot2d_viewer.htm"><b>5</b></a> </nobr><br><nobr><a name="bms_BO"></a><a name="subkey_BO"></a>both <a href="../files/creating_field_presentations.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../files/stream_lines_presentation.htm"><b>3</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>4</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>5</b></a> <a href="../scalar_bar.htm"><b>6</b></a> <a href="../plot_3d_presentation.htm"><b>7</b></a> </nobr><br><nobr>bottom <a href="../segmentation.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>bound</b></a> <br><a href="../segmentation.htm"><b>boundaries</b></a> <br><nobr>boundary <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><nobr>box <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/deformed_shape_presentation.htm"><b>2</b></a> <a href="../files/cut_lines_resentation.htm"><b>3</b></a> <a href="../files/cut_lines_presentation.htm"><b>4</b></a> <a href="../files/creating_xy_plot.htm"><b>5</b></a> <a href="../files/creating_curves.htm"><b>6</b></a> <a href="../files/animating_presentations.htm"><b>7</b></a> <a href="../animation_in_gauss_viewer.htm"><b>8</b></a> <a href="../files/vectors_presentation.htm"><b>9</b></a> <a href="../files/stream_lines_presentation.htm"><b>10</b></a> <a href="../files/scaling_presentations.htm"><b>11</b></a> <a href="../files/scalar_map_presentation.htm"><b>12</b></a> <a href="../files/importing_tables.htm"><b>13</b></a> <a href="../files/importing_med_objects.htm"><b>14</b></a> <a href="../files/getting_elements_attributes.htm"><b>15</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>16</b></a> <a href="../segmentation.htm"><b>17</b></a> <a href="../plot_3d_presentation.htm"><b>18</b></a> <a href="../plot2d_viewer.htm"><b>19</b></a> </nobr><br><nobr>boxes <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/scalar_map_presentation.htm"><b>3</b></a> </nobr><br><br><br></p><p class="ftsbody" align="center"><a href="whlstf1.htm" target="_self" title="previous search group"><b>&gt;&gt;</b></a>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstf1.htm b/doc/salome/gui/VISU/whgdata/whlstf1.htm
deleted file mode 100755 (executable)
index 26a1ba2..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-<html>
-<head>
-<title>Search Words List</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-<p class="ftsbody" align="center"><a href="whlstf0.htm" target="_self" title="previous search group"><b>&lt;&lt;</b></a><br><br></p>
-<p class="ftsbody" >
-<nobr><a name="bms_BR"></a><a name="subkey_BR"></a>browse <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> </nobr><br><nobr>browser <a href="../files/displaying_tables.htm"><b>1</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>2</b></a> <a href="../files/deformed_shape_presentation.htm"><b>3</b></a> <a href="../files/cut_lines_resentation.htm"><b>4</b></a> <a href="../files/cut_lines_presentation.htm"><b>5</b></a> <a href="../files/creating_xy_plot.htm"><b>6</b></a> <a href="../files/creating_presentations.htm"><b>7</b></a> <a href="../files/creating_field_presentations.htm"><b>8</b></a> <a href="../files/creating_curves.htm"><b>9</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>10</b></a> <a href="../files/animating_presentations.htm"><b>11</b></a> <a href="../files/about_structure_of_med_object.htm"><b>12</b></a> <a href="../creating_tables.htm"><b>13</b></a> <a href="../gauss_viewer.htm"><b>14</b></a> <a href="../gauss_points_presentation.htm"><b>15</b></a> <a href="../files/vectors_presentation.htm"><b>16</b></a> <a href="../files/sweeping.htm"><b>17</b></a> <a href="../files/stream_lines_presentation.htm"><b>18</b></a> <a href="../files/scaling_presentations.htm"><b>19</b></a> <a href="../files/scalar_map_presentation.htm"><b>20</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>21</b></a> <a href="../files/importing_tables.htm"><b>22</b></a> <a href="../files/importing_med_objects.htm"><b>23</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>24</b></a> <a href="../plot_3d_presentation.htm"><b>25</b></a> </nobr><br><a name="bms_BU"></a><a name="subkey_BU"></a><a href="../files/importing_med_objects.htm"><b>build</b></a> <br><a href="../files/importing_med_objects.htm"><b>builds</b></a> <br><nobr>built <a href="../files/importing_med_objects.htm"><b>1</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>2</b></a> </nobr><br><nobr>button <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>3</b></a> <a href="../files/animating_presentations.htm"><b>4</b></a> <a href="../clipping.htm"><b>5</b></a> <a href="../animation_in_gauss_viewer.htm"><b>6</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>7</b></a> <a href="../gauss_viewer.htm"><b>8</b></a> <a href="../gauss_points_presentation.htm"><b>9</b></a> <a href="../files/vectors_presentation.htm"><b>10</b></a> <a href="../files/stream_lines_presentation.htm"><b>11</b></a> <a href="../files/scaling_presentations.htm"><b>12</b></a> <a href="../files/scalar_map_presentation.htm"><b>13</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>14</b></a> <a href="../files/importing_tables.htm"><b>15</b></a> <a href="../vtk_3d_viewer.htm"><b>16</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>17</b></a> <a href="../segmentation.htm"><b>18</b></a> <a href="../plot2d_viewer.htm"><b>19</b></a> <a href="../picking.htm"><b>20</b></a> </nobr><br><nobr>buttons <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../vtk_3d_viewer.htm"><b>3</b></a> <a href="../plot_3d_presentation.htm"><b>4</b></a> </nobr><br>
-<br><br>
-<a name="bm_C"></a><a name="subkey_CA"></a><a href="../files/scalar_map_presentation.htm"><b>calculation</b></a> <br><nobr>calculations <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> </nobr><br><a href="../segmentation.htm"><b>called</b></a> <br><a href="../plot2d_viewer.htm"><b>calls</b></a> <br><nobr>camera <a href="../primitive_types.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><nobr>cancel <a href="../gauss_points_presentation.htm"><b>1</b></a> <a href="../files/scaling_presentations.htm"><b>2</b></a> <a href="../primitive_types.htm"><b>3</b></a> </nobr><br><a href="../primitive_types.htm"><b>cannot</b></a> <br><nobr>case <a href="../gauss_viewer.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> <a href="../picking.htm"><b>3</b></a> </nobr><br><a href="../files/scalar_map_presentation.htm"><b>cases</b></a> <br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>cause</b></a> <br><a name="bms_CE"></a><a name="subkey_CE"></a><a href="../files/getting_elements_attributes.htm"><b>cell</b></a> <br><nobr>cells <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_resentation.htm"><b>2</b></a> <a href="../files/cut_lines_presentation.htm"><b>3</b></a> <a href="../files/creating_field_presentations.htm"><b>4</b></a> <a href="../files/about_tables.htm"><b>5</b></a> <a href="../files/about_structure_of_med_object.htm"><b>6</b></a> <a href="../creating_tables.htm"><b>7</b></a> <a href="../files/vectors_presentation.htm"><b>8</b></a> <a href="../files/sweeping.htm"><b>9</b></a> <a href="../files/stream_lines_presentation.htm"><b>10</b></a> <a href="../files/scalar_map_presentation.htm"><b>11</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>12</b></a> <a href="../files/getting_elements_attributes.htm"><b>13</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>14</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>15</b></a> <a href="../plot_3d_presentation.htm"><b>16</b></a> </nobr><br><nobr>center <a href="../files/vectors_presentation.htm"><b>1</b></a> <a href="../vtk_3d_viewer.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><a href="../picking.htm"><b>centered</b></a> <br><nobr>central <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> </nobr><br><a href="../picking.htm"><b>centred</b></a> <br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>certain</b></a> <br><nobr><a name="bms_CH"></a><a name="subkey_CH"></a>change <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> <a href="../animation_in_gauss_viewer.htm"><b>3</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>4</b></a> <a href="../gauss_viewer.htm"><b>5</b></a> <a href="../gauss_points_presentation.htm"><b>6</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>7</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>8</b></a> </nobr><br><a href="../segmentation.htm"><b>changed</b></a> <br><nobr>changes <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/scaling_presentations.htm"><b>2</b></a> <a href="../segmentation.htm"><b>3</b></a> <a href="../plot2d_viewer.htm"><b>4</b></a> </nobr><br><a href="../primitive_types.htm"><b>channel</b></a> <br><a href="../segmentation.htm"><b>characteristic</b></a> <br><nobr>characteristics <a href="../files/getting_elements_attributes.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> </nobr><br><nobr>check <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_resentation.htm"><b>2</b></a> <a href="../files/cut_lines_presentation.htm"><b>3</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>4</b></a> <a href="../files/animating_presentations.htm"><b>5</b></a> <a href="../files/vectors_presentation.htm"><b>6</b></a> <a href="../files/stream_lines_presentation.htm"><b>7</b></a> <a href="../files/scalar_map_presentation.htm"><b>8</b></a> <a href="../plot_3d_presentation.htm"><b>9</b></a> <a href="../plot2d_viewer.htm"><b>10</b></a> </nobr><br><a href="../plot_3d_presentation.htm"><b>checkbox</b></a> <br><nobr>checked <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../files/importing_med_objects.htm"><b>2</b></a> <a href="../vtk_3d_viewer.htm"><b>3</b></a> <a href="../scalar_bar.htm"><b>4</b></a> </nobr><br><a href="../files/creating_curves.htm"><b>checking</b></a> <br><a href="../files/creating_curves.htm"><b>checkmark</b></a> <br><nobr>choice <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../clipping.htm"><b>2</b></a> <a href="../files/importing_med_objects.htm"><b>3</b></a> </nobr><br><a href="../gauss_points_presentation.htm"><b>choices</b></a> <br><nobr>choose <a href="../files/displaying_tables.htm"><b>1</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>2</b></a> <a href="../files/deformed_shape_presentation.htm"><b>3</b></a> <a href="../files/cut_lines_resentation.htm"><b>4</b></a> <a href="../files/cut_lines_presentation.htm"><b>5</b></a> <a href="../files/creating_xy_plot.htm"><b>6</b></a> <a href="../files/creating_presentations.htm"><b>7</b></a> <a href="../files/creating_field_presentations.htm"><b>8</b></a> <a href="../files/creating_curves.htm"><b>9</b></a> <a href="../clipping.htm"><b>10</b></a> <a href="../animation_in_gauss_viewer.htm"><b>11</b></a> <a href="../gauss_viewer.htm"><b>12</b></a> <a href="../gauss_points_presentation.htm"><b>13</b></a> <a href="../files/vectors_presentation.htm"><b>14</b></a> <a href="../files/stream_lines_presentation.htm"><b>15</b></a> <a href="../files/scalar_map_presentation.htm"><b>16</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>17</b></a> <a href="../files/importing_tables.htm"><b>18</b></a> <a href="../files/importing_med_objects.htm"><b>19</b></a> <a href="../files/getting_elements_attributes.htm"><b>20</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>21</b></a> <a href="../scalar_bar.htm"><b>22</b></a> <a href="../plot_3d_presentation.htm"><b>23</b></a> </nobr><br><nobr>chosen <a href="../files/creating_xy_plot.htm"><b>1</b></a> <a href="../files/about_structure_of_med_object.htm"><b>2</b></a> <a href="../animation_in_gauss_viewer.htm"><b>3</b></a> <a href="../files/stream_lines_presentation.htm"><b>4</b></a> <a href="../files/scaling_presentations.htm"><b>5</b></a> <a href="../files/getting_elements_attributes.htm"><b>6</b></a> </nobr><br><a name="bms_CI"></a><a name="subkey_CI"></a><a href="../files/creating_curves.htm"><b>circle</b></a> <br><a name="bms_CL"></a><a name="subkey_CL"></a><a href="../primitive_types.htm"><b>clamp</b></a> <br><nobr>click <a href="../files/displaying_tables.htm"><b>1</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>2</b></a> <a href="../files/deformed_shape_presentation.htm"><b>3</b></a> <a href="../files/cut_lines_resentation.htm"><b>4</b></a> <a href="../files/cut_lines_presentation.htm"><b>5</b></a> <a href="../files/creating_xy_plot.htm"><b>6</b></a> <a href="../files/creating_presentations.htm"><b>7</b></a> <a href="../files/creating_field_presentations.htm"><b>8</b></a> <a href="../files/creating_curves.htm"><b>9</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>10</b></a> <a href="../files/animating_presentations.htm"><b>11</b></a> <a href="../creating_tables.htm"><b>12</b></a> <a href="../clipping.htm"><b>13</b></a> <a href="../animation_in_gauss_viewer.htm"><b>14</b></a> <a href="../gauss_viewer.htm"><b>15</b></a> <a href="../gauss_points_presentation.htm"><b>16</b></a> <a href="../files/vectors_presentation.htm"><b>17</b></a> <a href="../files/sweeping.htm"><b>18</b></a> <a href="../files/stream_lines_presentation.htm"><b>19</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>20</b></a> <a href="../files/scaling_presentations.htm"><b>21</b></a> <a href="../files/scalar_map_presentation.htm"><b>22</b></a> <a href="../files/running_visu.htm"><b>23</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>24</b></a> <a href="../files/importing_tables.htm"><b>25</b></a> <a href="../files/importing_med_objects.htm"><b>26</b></a> <a href="../files/getting_elements_attributes.htm"><b>27</b></a> <a href="../vtk_3d_viewer.htm"><b>28</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>29</b></a> <a href="../plot_3d_presentation.htm"><b>30</b></a> <a href="../plot2d_viewer.htm"><b>31</b></a> <a href="../picking.htm"><b>32</b></a> </nobr><br><nobr>clicking <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../segmentation.htm"><b>2</b></a> </nobr><br><a href="../animation_in_gauss_viewer.htm"><b>clip</b></a> <br><nobr>clipping <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../clipping.htm"><b>2</b></a> <a href="../segmentation.htm"><b>3</b></a> </nobr><br><a href="../animation_in_gauss_viewer.htm"><b>clips</b></a> <br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>clockwise</b></a> <br><a href="../plot2d_viewer.htm"><b>clone</b></a> <br><nobr>close <a href="../files/importing_med_objects.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> </nobr><br><a href="../files/importing_med_objects.htm"><b>closed</b></a> <br><nobr><a name="bms_CO"></a><a name="subkey_CO"></a>color <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/creating_curves.htm"><b>2</b></a> <a href="../files/vectors_presentation.htm"><b>3</b></a> <a href="../files/stream_lines_presentation.htm"><b>4</b></a> <a href="../files/scalar_map_presentation.htm"><b>5</b></a> <a href="../vtk_3d_viewer.htm"><b>6</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>7</b></a> <a href="../scalar_bar.htm"><b>8</b></a> <a href="../primitive_types.htm"><b>9</b></a> <a href="../plot2d_viewer.htm"><b>10</b></a> <a href="../picking.htm"><b>11</b></a> </nobr><br><nobr>colored <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/scalar_map_presentation.htm"><b>3</b></a> </nobr><br><nobr>coloring <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/vectors_presentation.htm"><b>2</b></a> <a href="../files/stream_lines_presentation.htm"><b>3</b></a> <a href="../files/scalar_map_presentation.htm"><b>4</b></a> <a href="../plot_3d_presentation.htm"><b>5</b></a> </nobr><br><nobr>colors <a href="../files/scalar_map_presentation.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> </nobr><br><a href="../files/importing_med_objects.htm"><b>coloured</b></a> <br><nobr>column <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../files/about_tables.htm"><b>2</b></a> </nobr><br><a href="../files/creating_curves.htm"><b>columns</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>combine</b></a> <br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>combined</b></a> <br><a href="../files/iso_surfaces_presentation.htm"><b>combines</b></a> <br><nobr>command <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../segmentation.htm"><b>2</b></a> </nobr><br><nobr>common <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> </nobr><br><a href="../scalar_map_on_deformed_shape_presentation.htm"><b>compare</b></a> <br><nobr>comparison <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/sweeping.htm"><b>2</b></a> </nobr><br><a href="../files/about_structure_of_med_object.htm"><b>compatible</b></a> <br><a href="../files/importing_med_objects.htm"><b>complete</b></a> <br><a href="../clipping.htm"><b>completely</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>complicated</b></a> <br><nobr>component <a href="../files/about_tables.htm"><b>1</b></a> <a href="../files/running_visu.htm"><b>2</b></a> <a href="../scalar_bar.htm"><b>3</b></a> <a href="../primitive_types.htm"><b>4</b></a> </nobr><br><nobr>components <a href="../files/scalar_map_presentation.htm"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> <a href="../picking.htm"><b>3</b></a> </nobr><br><a href="../files/creating_xy_plot.htm"><b>compose</b></a> <br><nobr>composed <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../creating_tables.htm"><b>2</b></a> <a href="../files/sweeping.htm"><b>3</b></a> </nobr><br><a href="../files/animating_presentations.htm"><b>composing</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>computation</b></a> <br><nobr>computed <a href="../types_of_gauss_points_presentations.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> </nobr><br><a href="../files/about_structure_of_med_object.htm"><b>concept</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>conditions</b></a> <br><a href="../files/vectors_presentation.htm"><b>cones</b></a> <br><nobr>configuration <a href="../gauss_viewer.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> </nobr><br><a href="../segmentation.htm"><b>configure</b></a> <br><nobr>confirm <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/scaling_presentations.htm"><b>2</b></a> <a href="../files/importing_med_objects.htm"><b>3</b></a> </nobr><br><a href="../scalar_bar.htm"><b>considered</b></a> <br><nobr>consist <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../plot2d_viewer.htm"><b>2</b></a> </nobr><br><a href="../files/creating_xy_plot.htm"><b>consisting</b></a> <br><nobr>consists <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.htm"><b>2</b></a> </nobr><br><nobr>construct <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../files/stream_lines_presentation.htm"><b>2</b></a> </nobr><br><nobr>constructed <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/about_structure_of_med_object.htm"><b>2</b></a> <a href="../files/scalar_map_presentation.htm"><b>3</b></a> <a href="../plot2d_viewer.htm"><b>4</b></a> </nobr><br><nobr>construction <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/stream_lines_presentation.htm"><b>2</b></a> </nobr><br><a href="../files/iso_surfaces_presentation.htm"><b>constructs</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>consuming</b></a> <br><nobr>contain <a href="../files/creating_field_presentations.htm"><b>1</b></a> <a href="../files/importing_tables.htm"><b>2</b></a> </nobr><br><a href="../files/creating_xy_plot.htm"><b>contained</b></a> <br><nobr>container <a href="../files/creating_xy_plot.htm"><b>1</b></a> <a href="../files/creating_curves.htm"><b>2</b></a> </nobr><br><nobr>containing <a href="../files/creating_field_presentations.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.htm"><b>2</b></a> <a href="../files/importing_tables.htm"><b>3</b></a> <a href="../files/importing_med_objects.htm"><b>4</b></a> </nobr><br><nobr>contains <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../files/about_structure_of_med_object.htm"><b>3</b></a> </nobr><br><a href="../segmentation.htm"><b>content</b></a> <br><nobr>contents <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../vtk_3d_viewer.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>context</b></a> <br><nobr>continue <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> </nobr><br><a href="../plot_3d_presentation.htm"><b>contour</b></a> <br><a href="../plot_3d_presentation.htm"><b>contours</b></a> <br><nobr>control <a href="../files/stream_lines_presentation.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> <a href="../scalar_bar.htm"><b>3</b></a> </nobr><br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>controller</b></a> <br><nobr>controls <a href="../gauss_viewer.htm"><b>1</b></a> <a href="../files/stream_lines_presentation.htm"><b>2</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>convey</b></a> <br><nobr>coordinate <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>2</b></a> <a href="../vtk_3d_viewer.htm"><b>3</b></a> </nobr><br><nobr>coordinates <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> <a href="../files/scalar_map_presentation.htm"><b>3</b></a> <a href="../files/getting_elements_attributes.htm"><b>4</b></a> <a href="../segmentation.htm"><b>5</b></a> <a href="../picking.htm"><b>6</b></a> </nobr><br><a href="../animation_in_gauss_viewer.htm"><b>copies</b></a> <br><nobr>copy <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> <a href="../gauss_viewer.htm"><b>3</b></a> </nobr><br><a href="../picking.htm"><b>corner</b></a> <br><nobr>correspond <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> <a href="../plot_3d_presentation.htm"><b>3</b></a> </nobr><br><nobr>correspondence <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.htm"><b>2</b></a> </nobr><br><nobr>corresponding <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/about_structure_of_med_object.htm"><b>2</b></a> <a href="../files/vectors_presentation.htm"><b>3</b></a> <a href="../picking.htm"><b>4</b></a> </nobr><br><nobr>corresponds <a href="../types_of_gauss_points_presentations.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> <a href="../primitive_types.htm"><b>3</b></a> <a href="../plot_3d_presentation.htm"><b>4</b></a> </nobr><br><a href="../animation_in_gauss_viewer.htm"><b>corrupt</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>cost</b></a> <br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>counterclockwise</b></a> <br><a href="../primitive_types.htm"><b>course</b></a> <br><br><br></p><p class="ftsbody" align="center"><a href="whlstf2.htm" target="_self" title="previous search group"><b>&gt;&gt;</b></a>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstf2.htm b/doc/salome/gui/VISU/whgdata/whlstf2.htm
deleted file mode 100755 (executable)
index 692e2e0..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words List</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-<p class="ftsbody" align="center"><a href="whlstf1.htm" target="_self" title="previous search group"><b>&lt;&lt;</b></a><br><br></p>
-<p class="ftsbody" >
-<nobr><a name="bms_CR"></a><a name="subkey_CR"></a>create <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_resentation.htm"><b>2</b></a> <a href="../files/cut_lines_presentation.htm"><b>3</b></a> <a href="../files/creating_xy_plot.htm"><b>4</b></a> <a href="../files/creating_presentations.htm"><b>5</b></a> <a href="../files/creating_field_presentations.htm"><b>6</b></a> <a href="../files/creating_curves.htm"><b>7</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>8</b></a> <a href="../creating_tables.htm"><b>9</b></a> <a href="../clipping.htm"><b>10</b></a> <a href="../gauss_viewer.htm"><b>11</b></a> <a href="../gauss_points_presentation.htm"><b>12</b></a> <a href="../files/vectors_presentation.htm"><b>13</b></a> <a href="../files/sweeping.htm"><b>14</b></a> <a href="../files/stream_lines_presentation.htm"><b>15</b></a> <a href="../files/scalar_map_presentation.htm"><b>16</b></a> <a href="../files/running_visu.htm"><b>17</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>18</b></a> <a href="../files/importing_tables.htm"><b>19</b></a> <a href="../files/getting_started.htm"><b>20</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>21</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>22</b></a> <a href="../plot_3d_presentation.htm"><b>23</b></a> </nobr><br><nobr>created <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../files/creating_curves.htm"><b>3</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>4</b></a> <a href="../files/animating_presentations.htm"><b>5</b></a> <a href="../files/about_tables.htm"><b>6</b></a> <a href="../files/about_structure_of_med_object.htm"><b>7</b></a> <a href="../creating_tables.htm"><b>8</b></a> <a href="../files/stream_lines_presentation.htm"><b>9</b></a> <a href="../files/scalar_map_presentation.htm"><b>10</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>11</b></a> <a href="../segmentation.htm"><b>12</b></a> </nobr><br><nobr>creating <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../files/creating_field_presentations.htm"><b>3</b></a> <a href="../files/creating_curves.htm"><b>4</b></a> <a href="../files/about_tables.htm"><b>5</b></a> <a href="../files/about_structure_of_med_object.htm"><b>6</b></a> <a href="../creating_tables.htm"><b>7</b></a> <a href="../gauss_points_presentation.htm"><b>8</b></a> <a href="../files/stream_lines_presentation.htm"><b>9</b></a> <a href="../files/scalar_map_presentation.htm"><b>10</b></a> </nobr><br><nobr>creation <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/creating_xy_plot.htm"><b>3</b></a> <a href="../files/sweeping.htm"><b>4</b></a> <a href="../files/scalar_map_presentation.htm"><b>5</b></a> <a href="../files/running_visu.htm"><b>6</b></a> </nobr><br><nobr>cross <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> <a href="../clipping.htm"><b>3</b></a> </nobr><br><nobr><a name="bms_CT"></a><a name="subkey_CT"></a>ctrl <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>2</b></a> <a href="../gauss_viewer.htm"><b>3</b></a> </nobr><br><nobr><a name="bms_CU"></a><a name="subkey_CU"></a>current <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>3</b></a> <a href="../scalar_bar.htm"><b>4</b></a> <a href="../primitive_types.htm"><b>5</b></a> <a href="../picking.htm"><b>6</b></a> </nobr><br><nobr>cursor <a href="../segmentation.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> <a href="../picking.htm"><b>3</b></a> </nobr><br><nobr>curve <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../files/creating_curves.htm"><b>3</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>4</b></a> <a href="../plot2d_viewer.htm"><b>5</b></a> </nobr><br><nobr>curves <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../files/creating_curves.htm"><b>3</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>4</b></a> </nobr><br><a href="../picking.htm"><b>customize</b></a> <br><nobr>cut <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/about_tables.htm"><b>3</b></a> <a href="../creating_tables.htm"><b>4</b></a> <a href="../plot_3d_presentation.htm"><b>5</b></a> </nobr><br><a href="../plot_3d_presentation.htm"><b>cutting</b></a> <br><a name="bms_CY"></a><a name="subkey_CY"></a><a href="../files/animating_presentations.htm"><b>cycled</b></a> <br>
-<br><br>
-<a name="bm_D"></a><a name="subkey_DA"></a><a href="../files/creating_curves.htm"><b>dash</b></a> <br><nobr>data <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_curves.htm"><b>2</b></a> <a href="../files/about_tables.htm"><b>3</b></a> <a href="../files/about_structure_of_med_object.htm"><b>4</b></a> <a href="../files/scalar_map_presentation.htm"><b>5</b></a> <a href="../files/introduction.htm"><b>6</b></a> <a href="../files/importing_med_objects.htm"><b>7</b></a> <a href="../files/getting_started.htm"><b>8</b></a> </nobr><br><a name="bms_DE"></a><a name="subkey_DE"></a><a href="../plot_3d_presentation.htm"><b>decimal</b></a> <br><nobr>decrease <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>2</b></a> <a href="../gauss_viewer.htm"><b>3</b></a> <a href="../plot_3d_presentation.htm"><b>4</b></a> </nobr><br><nobr>default <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_resentation.htm"><b>2</b></a> <a href="../files/cut_lines_presentation.htm"><b>3</b></a> <a href="../files/creating_curves.htm"><b>4</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>5</b></a> <a href="../files/scalar_map_presentation.htm"><b>6</b></a> <a href="../files/running_visu.htm"><b>7</b></a> <a href="../files/importing_med_objects.htm"><b>8</b></a> <a href="../vtk_3d_viewer.htm"><b>9</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>10</b></a> <a href="../scalar_bar.htm"><b>11</b></a> <a href="../primitive_types.htm"><b>12</b></a> <a href="../plot2d_viewer.htm"><b>13</b></a> </nobr><br><a href="../segmentation.htm"><b>definable</b></a> <br><nobr>define <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/creating_curves.htm"><b>3</b></a> <a href="../clipping.htm"><b>4</b></a> <a href="../animation_in_gauss_viewer.htm"><b>5</b></a> <a href="../files/vectors_presentation.htm"><b>6</b></a> <a href="../files/stream_lines_presentation.htm"><b>7</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>8</b></a> <a href="../files/scalar_map_presentation.htm"><b>9</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>10</b></a> <a href="../vtk_3d_viewer.htm"><b>11</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>12</b></a> <a href="../segmentation.htm"><b>13</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>14</b></a> <a href="../scalar_bar.htm"><b>15</b></a> <a href="../plot_3d_presentation.htm"><b>16</b></a> <a href="../plot2d_viewer.htm"><b>17</b></a> <a href="../picking.htm"><b>18</b></a> </nobr><br><nobr>defined <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/about_structure_of_med_object.htm"><b>2</b></a> <a href="../clipping.htm"><b>3</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>4</b></a> <a href="../files/vectors_presentation.htm"><b>5</b></a> <a href="../files/sweeping.htm"><b>6</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>7</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>8</b></a> <a href="../segmentation.htm"><b>9</b></a> <a href="../scalar_bar.htm"><b>10</b></a> <a href="../primitive_types.htm"><b>11</b></a> <a href="../plot2d_viewer.htm"><b>12</b></a> <a href="../picking.htm"><b>13</b></a> </nobr><br><nobr>defines <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/stream_lines_presentation.htm"><b>3</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>4</b></a> <a href="../segmentation.htm"><b>5</b></a> <a href="../scalar_bar.htm"><b>6</b></a> <a href="../primitive_types.htm"><b>7</b></a> <a href="../picking.htm"><b>8</b></a> </nobr><br><nobr>defining <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../clipping.htm"><b>2</b></a> <a href="../segmentation.htm"><b>3</b></a> <a href="../plot_3d_presentation.htm"><b>4</b></a> </nobr><br><nobr>definite <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../files/animating_presentations.htm"><b>3</b></a> <a href="../files/about_structure_of_med_object.htm"><b>4</b></a> <a href="../files/getting_elements_attributes.htm"><b>5</b></a> </nobr><br><a href="../plot_3d_presentation.htm"><b>definition</b></a> <br><a href="../primitive_types.htm"><b>definitions</b></a> <br><a href="../files/animating_presentations.htm"><b>deformation</b></a> <br><nobr>deformed <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>3</b></a> </nobr><br><nobr>degrees <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../clipping.htm"><b>3</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>4</b></a> <a href="../plot_3d_presentation.htm"><b>5</b></a> </nobr><br><nobr>delete <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../clipping.htm"><b>2</b></a> </nobr><br><a href="../primitive_types.htm"><b>depend</b></a> <br><nobr>depending <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> <a href="../segmentation.htm"><b>3</b></a> </nobr><br><nobr>depends <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> </nobr><br><a href="../segmentation.htm"><b>depth</b></a> <br><a href="../files/about_tables.htm"><b>described</b></a> <br><nobr>description <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../plot2d_viewer.htm"><b>2</b></a> </nobr><br><a href="../scalar_bar.htm"><b>design</b></a> <br><a href="../files/running_visu.htm"><b>desktop</b></a> <br><nobr>destined <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><a href="../gauss_viewer.htm"><b>developed</b></a> <br><a name="bms_DI"></a><a name="subkey_DI"></a><a href="../files/creating_curves.htm"><b>diagonal</b></a> <br><nobr>dialog <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/creating_xy_plot.htm"><b>3</b></a> <a href="../files/creating_curves.htm"><b>4</b></a> <a href="../files/animating_presentations.htm"><b>5</b></a> <a href="../animation_in_gauss_viewer.htm"><b>6</b></a> <a href="../gauss_points_presentation.htm"><b>7</b></a> <a href="../files/scaling_presentations.htm"><b>8</b></a> <a href="../files/scalar_map_presentation.htm"><b>9</b></a> <a href="../files/importing_tables.htm"><b>10</b></a> <a href="../files/importing_med_objects.htm"><b>11</b></a> <a href="../files/getting_elements_attributes.htm"><b>12</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>13</b></a> <a href="../segmentation.htm"><b>14</b></a> <a href="../scalar_bar.htm"><b>15</b></a> <a href="../primitive_types.htm"><b>16</b></a> </nobr><br><a href="../files/creating_curves.htm"><b>diamond</b></a> <br><nobr>different <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> <a href="../segmentation.htm"><b>3</b></a> <a href="../scalar_bar.htm"><b>4</b></a> </nobr><br><a href="../gauss_viewer.htm"><b>differently</b></a> <br><nobr>dimensions <a href="../files/scalar_map_presentation.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> </nobr><br><nobr>direction <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../files/stream_lines_presentation.htm"><b>3</b></a> <a href="../segmentation.htm"><b>4</b></a> </nobr><br><a href="../segmentation.htm"><b>directly</b></a> <br><a href="../files/animating_presentations.htm"><b>directory</b></a> <br><a href="../plot_3d_presentation.htm"><b>disable</b></a> <br><nobr>disabled <a href="../types_of_gauss_points_presentations.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> </nobr><br><nobr>displacement <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> </nobr><br><nobr>display <a href="../files/displaying_tables.htm"><b>1</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>2</b></a> <a href="../files/deformed_shape_presentation.htm"><b>3</b></a> <a href="../files/creating_xy_plot.htm"><b>4</b></a> <a href="../files/creating_curves.htm"><b>5</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>6</b></a> <a href="../files/about_tables.htm"><b>7</b></a> <a href="../gauss_viewer.htm"><b>8</b></a> <a href="../files/vectors_presentation.htm"><b>9</b></a> <a href="../files/sweeping.htm"><b>10</b></a> <a href="../files/stream_lines_presentation.htm"><b>11</b></a> <a href="../segmentation.htm"><b>12</b></a> <a href="../scalar_bar.htm"><b>13</b></a> <a href="../primitive_types.htm"><b>14</b></a> <a href="../picking.htm"><b>15</b></a> </nobr><br><nobr>displayed <a href="../files/displaying_tables.htm"><b>1</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>2</b></a> <a href="../files/deformed_shape_presentation.htm"><b>3</b></a> <a href="../files/cut_lines_resentation.htm"><b>4</b></a> <a href="../files/cut_lines_presentation.htm"><b>5</b></a> <a href="../files/creating_xy_plot.htm"><b>6</b></a> <a href="../files/creating_presentations.htm"><b>7</b></a> <a href="../files/creating_field_presentations.htm"><b>8</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>9</b></a> <a href="../creating_tables.htm"><b>10</b></a> <a href="../clipping.htm"><b>11</b></a> <a href="../animation_in_gauss_viewer.htm"><b>12</b></a> <a href="../files/vectors_presentation.htm"><b>13</b></a> <a href="../files/stream_lines_presentation.htm"><b>14</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>15</b></a> <a href="../files/scalar_map_presentation.htm"><b>16</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>17</b></a> <a href="../files/importing_med_objects.htm"><b>18</b></a> <a href="../files/getting_elements_attributes.htm"><b>19</b></a> <a href="../vtk_3d_viewer.htm"><b>20</b></a> <a href="../segmentation.htm"><b>21</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>22</b></a> <a href="../scalar_bar.htm"><b>23</b></a> <a href="../primitive_types.htm"><b>24</b></a> <a href="../plot_3d_presentation.htm"><b>25</b></a> <a href="../plot2d_viewer.htm"><b>26</b></a> <a href="../picking.htm"><b>27</b></a> </nobr><br><nobr>displaying <a href="../files/displaying_tables.htm"><b>1</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>2</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>3</b></a> <a href="../files/animating_presentations.htm"><b>4</b></a> <a href="../files/sweeping.htm"><b>5</b></a> <a href="../primitive_types.htm"><b>6</b></a> </nobr><br><nobr>displays <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>3</b></a> <a href="../clipping.htm"><b>4</b></a> <a href="../files/importing_med_objects.htm"><b>5</b></a> </nobr><br><nobr>distance <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../clipping.htm"><b>2</b></a> <a href="../files/scaling_presentations.htm"><b>3</b></a> <a href="../vtk_3d_viewer.htm"><b>4</b></a> <a href="../primitive_types.htm"><b>5</b></a> <a href="../picking.htm"><b>6</b></a> </nobr><br><nobr>divide <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> </nobr><br><nobr>divided <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> </nobr><br><a href="../plot2d_viewer.htm"><b>divisions</b></a> <br><a name="bms_DO"></a><a name="subkey_DO"></a><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>does</b></a> <br><a href="../plot2d_viewer.htm"><b>doesn</b></a> <br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>dominant</b></a> <br><nobr>don <a href="../vtk_3d_viewer.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><a href="../files/creating_curves.htm"><b>dot</b></a> <br><nobr>down <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/animating_presentations.htm"><b>2</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>3</b></a> </nobr><br><nobr>downward <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../vtk_3d_viewer.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_DR"></a><a name="subkey_DR"></a>drag <a href="../vtk_3d_viewer.htm"><b>1</b></a> <a href="../plot2d_viewer.htm"><b>2</b></a> </nobr><br><a href="../segmentation.htm"><b>dragging</b></a> <br><a href="../plot2d_viewer.htm"><b>draw</b></a> <br><nobr>drawn <a href="../vtk_3d_viewer.htm"><b>1</b></a> <a href="../plot2d_viewer.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_DU"></a><a name="subkey_DU"></a>dump <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>3</b></a> <a href="../vtk_3d_viewer.htm"><b>4</b></a> <a href="../plot2d_viewer.htm"><b>5</b></a> </nobr><br><a href="../plot2d_viewer.htm"><b>duplicate</b></a> <br><a href="../files/displaying_hiding_presentations.htm"><b>duplicated</b></a> <br><a name="bms_DY"></a><a name="subkey_DY"></a><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>dynamic</b></a> <br><nobr>dynamically <a href="../types_of_gauss_points_presentations.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br>
-<br><br>
-<nobr><a name="bm_E"></a><a name="subkey_E{"></a>e <a href="../scalar_bar.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_ED"></a><a name="subkey_ED"></a>edges <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../files/about_structure_of_med_object.htm"><b>2</b></a> </nobr><br><nobr>edit <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/cut_lines_resentation.htm"><b>2</b></a> <a href="../files/cut_lines_presentation.htm"><b>3</b></a> <a href="../files/creating_xy_plot.htm"><b>4</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>5</b></a> <a href="../gauss_viewer.htm"><b>6</b></a> <a href="../segmentation.htm"><b>7</b></a> </nobr><br><a href="../types_of_gauss_points_presentations.htm"><b>editable</b></a> <br><a href="../types_of_gauss_points_presentations.htm"><b>edition</b></a> <br><a name="bms_EF"></a><a name="subkey_EF"></a><a href="../types_of_gauss_points_presentations.htm"><b>effect</b></a> <br><a name="bms_EI"></a><a name="subkey_EI"></a><a href="../clipping.htm"><b>either</b></a> <br><a name="bms_EL"></a><a name="subkey_EL"></a><a href="../files/importing_med_objects.htm"><b>elapsed</b></a> <br><nobr>element <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../files/getting_elements_attributes.htm"><b>2</b></a> <a href="../picking.htm"><b>3</b></a> </nobr><br><nobr>elements <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../files/about_structure_of_med_object.htm"><b>2</b></a> <a href="../files/getting_elements_attributes.htm"><b>3</b></a> <a href="../segmentation.htm"><b>4</b></a> </nobr><br><a href="../scalar_bar.htm"><b>else</b></a> <br><a name="bms_EM"></a><a name="subkey_EM"></a><a href="../files/about_tables.htm"><b>empty</b></a> <br><nobr><a name="bms_EN"></a><a name="subkey_EN"></a>end <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/sweeping.htm"><b>2</b></a> <a href="../primitive_types.htm"><b>3</b></a> <a href="../picking.htm"><b>4</b></a> </nobr><br><a href="../segmentation.htm"><b>ended</b></a> <br><nobr>enter <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.htm"><b>2</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>3</b></a> <a href="../files/importing_tables.htm"><b>4</b></a> <a href="../files/getting_elements_attributes.htm"><b>5</b></a> </nobr><br><nobr>entered <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> </nobr><br><nobr>entities <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../files/importing_med_objects.htm"><b>2</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>entity</b></a> <br><br><br></p><p class="ftsbody" align="center"><a href="whlstf3.htm" target="_self" title="previous search group"><b>&gt;&gt;</b></a>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstf3.htm b/doc/salome/gui/VISU/whgdata/whlstf3.htm
deleted file mode 100755 (executable)
index 3378fe9..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-<html>
-<head>
-<title>Search Words List</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-<p class="ftsbody" align="center"><a href="whlstf2.htm" target="_self" title="previous search group"><b>&lt;&lt;</b></a><br><br></p>
-<p class="ftsbody" >
-<nobr><a name="bms_EQ"></a><a name="subkey_EQ"></a>equal <a href="../files/scalar_map_presentation.htm"><b>1</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>2</b></a> <a href="../primitive_types.htm"><b>3</b></a> </nobr><br><nobr><a name="bms_ER"></a><a name="subkey_ER"></a>erase <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> <a href="../gauss_viewer.htm"><b>3</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>4</b></a> </nobr><br><a href="../segmentation.htm"><b>erased</b></a> <br><a name="bms_ET"></a><a name="subkey_ET"></a><a href="../gauss_viewer.htm"><b>etc</b></a> <br><nobr><a name="bms_EV"></a><a name="subkey_EV"></a>every <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/about_structure_of_med_object.htm"><b>2</b></a> </nobr><br><a href="../files/importing_med_objects.htm"><b>everything</b></a> <br><nobr><a name="bms_EX"></a><a name="subkey_EX"></a>exactly <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../files/importing_med_objects.htm"><b>2</b></a> </nobr><br><a href="../files/getting_elements_attributes.htm"><b>examine</b></a> <br><a href="../plot2d_viewer.htm"><b>exceed</b></a> <br><a href="../primitive_types.htm"><b>exceeds</b></a> <br><nobr>except <a href="../vtk_3d_viewer.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> </nobr><br><nobr>exist <a href="../types_of_gauss_points_presentations.htm"><b>1</b></a> <a href="../plot_3d_presentation.htm"><b>2</b></a> </nobr><br><nobr>existing <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> </nobr><br><a href="../gauss_points_presentation.htm"><b>exit</b></a> <br><a href="../segmentation.htm"><b>exits</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>explore</b></a> <br><a href="../files/importing_tables.htm"><b>export</b></a> <br><a href="../files/importing_tables.htm"><b>exported</b></a> <br><a href="../files/importing_tables.htm"><b>exporting</b></a> <br><nobr>exports <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../vtk_3d_viewer.htm"><b>3</b></a> <a href="../plot2d_viewer.htm"><b>4</b></a> </nobr><br><a href="../files/getting_elements_attributes.htm"><b>expressed</b></a> <br><a href="../vtk_3d_viewer.htm"><b>extended</b></a> <br><a href="../files/getting_elements_attributes.htm"><b>extent</b></a> <br><a href="../clipping.htm"><b>extremities</b></a> <br>
-<br><br>
-<nobr><a name="bm_F"></a><a name="subkey_FA"></a>faces <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> </nobr><br><nobr>factor <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/vectors_presentation.htm"><b>2</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>3</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>4</b></a> <a href="../primitive_types.htm"><b>5</b></a> <a href="../plot_3d_presentation.htm"><b>6</b></a> </nobr><br><nobr>families <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../files/importing_med_objects.htm"><b>2</b></a> </nobr><br><nobr>family <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../files/stream_lines_presentation.htm"><b>2</b></a> </nobr><br><a href="../plot2d_viewer.htm"><b>fast</b></a> <br><nobr><a name="bms_FE"></a><a name="subkey_FE"></a>feature <a href="../files/scaling_presentations.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>features</b></a> <br><nobr><a name="bms_FI"></a><a name="subkey_FI"></a>field <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/deformed_shape_presentation.htm"><b>2</b></a> <a href="../files/cut_lines_resentation.htm"><b>3</b></a> <a href="../files/cut_lines_presentation.htm"><b>4</b></a> <a href="../files/creating_field_presentations.htm"><b>5</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>6</b></a> <a href="../files/animating_presentations.htm"><b>7</b></a> <a href="../files/about_structure_of_med_object.htm"><b>8</b></a> <a href="../gauss_points_presentation.htm"><b>9</b></a> <a href="../files/vectors_presentation.htm"><b>10</b></a> <a href="../files/sweeping.htm"><b>11</b></a> <a href="../files/stream_lines_presentation.htm"><b>12</b></a> <a href="../files/scaling_presentations.htm"><b>13</b></a> <a href="../files/scalar_map_presentation.htm"><b>14</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>15</b></a> <a href="../files/getting_started.htm"><b>16</b></a> <a href="../files/getting_elements_attributes.htm"><b>17</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>18</b></a> <a href="../plot_3d_presentation.htm"><b>19</b></a> </nobr><br><nobr>fields <a href="../files/creating_field_presentations.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> <a href="../files/animating_presentations.htm"><b>3</b></a> <a href="../files/about_structure_of_med_object.htm"><b>4</b></a> <a href="../files/stream_lines_presentation.htm"><b>5</b></a> <a href="../files/scalar_map_presentation.htm"><b>6</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>7</b></a> <a href="../files/introduction.htm"><b>8</b></a> <a href="../files/importing_med_objects.htm"><b>9</b></a> <a href="../files/getting_started.htm"><b>10</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>11</b></a> </nobr><br><nobr>file <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>2</b></a> <a href="../files/scalar_map_presentation.htm"><b>3</b></a> <a href="../files/importing_tables.htm"><b>4</b></a> <a href="../files/importing_med_objects.htm"><b>5</b></a> <a href="../files/getting_started.htm"><b>6</b></a> </nobr><br><nobr>files <a href="../files/about_tables.htm"><b>1</b></a> <a href="../files/about_structure_of_med_object.htm"><b>2</b></a> <a href="../animation_in_gauss_viewer.htm"><b>3</b></a> <a href="../files/importing_med_objects.htm"><b>4</b></a> <a href="../primitive_types.htm"><b>5</b></a> </nobr><br><a href="../files/importing_med_objects.htm"><b>finding</b></a> <br><nobr>finish <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../files/importing_med_objects.htm"><b>2</b></a> </nobr><br><nobr>finished <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_resentation.htm"><b>2</b></a> <a href="../files/cut_lines_presentation.htm"><b>3</b></a> <a href="../files/vectors_presentation.htm"><b>4</b></a> <a href="../files/stream_lines_presentation.htm"><b>5</b></a> <a href="../files/scalar_map_presentation.htm"><b>6</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>7</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>8</b></a> <a href="../plot_3d_presentation.htm"><b>9</b></a> </nobr><br><nobr>first <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../segmentation.htm"><b>2</b></a> <a href="../picking.htm"><b>3</b></a> </nobr><br><nobr>fit <a href="../files/setting_properties_of_xy_plots.htm"><b>1</b></a> <a href="../vtk_3d_viewer.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><a href="../plot2d_viewer.htm"><b>fits</b></a> <br><nobr>fixed <a href="../types_of_gauss_points_presentations.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_FO"></a><a name="subkey_FO"></a>focal <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><nobr>folder <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../files/importing_tables.htm"><b>2</b></a> </nobr><br><a href="../files/about_structure_of_med_object.htm"><b>folders</b></a> <br><nobr>following <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../files/creating_field_presentations.htm"><b>3</b></a> <a href="../files/creating_curves.htm"><b>4</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>5</b></a> <a href="../files/animating_presentations.htm"><b>6</b></a> <a href="../files/about_structure_of_med_object.htm"><b>7</b></a> <a href="../clipping.htm"><b>8</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>9</b></a> <a href="../gauss_viewer.htm"><b>10</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>11</b></a> <a href="../files/scalar_map_presentation.htm"><b>12</b></a> <a href="../files/importing_tables.htm"><b>13</b></a> <a href="../files/getting_elements_attributes.htm"><b>14</b></a> <a href="../plot2d_viewer.htm"><b>15</b></a> <a href="../picking.htm"><b>16</b></a> </nobr><br><nobr>follows <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../files/running_visu.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><nobr>font <a href="../files/scalar_map_presentation.htm"><b>1</b></a> <a href="../vtk_3d_viewer.htm"><b>2</b></a> <a href="../scalar_bar.htm"><b>3</b></a> </nobr><br><nobr>format <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../vtk_3d_viewer.htm"><b>3</b></a> <a href="../plot2d_viewer.htm"><b>4</b></a> </nobr><br><nobr>forming <a href="../creating_tables.htm"><b>1</b></a> <a href="../files/getting_elements_attributes.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><a href="../files/introduction.htm"><b>forms</b></a> <br><a href="../primitive_types.htm"><b>formula</b></a> <br><a href="../types_of_gauss_points_presentations.htm"><b>forth</b></a> <br><nobr>forward <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../files/stream_lines_presentation.htm"><b>2</b></a> </nobr><br><a href="../scalar_bar.htm"><b>founded</b></a> <br><a name="bms_FP"></a><a name="subkey_FP"></a><a href="../animation_in_gauss_viewer.htm"><b>fps</b></a> <br><nobr><a name="bms_FR"></a><a name="subkey_FR"></a>frame <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/sweeping.htm"><b>2</b></a> <a href="../vtk_3d_viewer.htm"><b>3</b></a> <a href="../plot2d_viewer.htm"><b>4</b></a> </nobr><br><nobr>frames <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../animation_in_gauss_viewer.htm"><b>2</b></a> <a href="../files/sweeping.htm"><b>3</b></a> </nobr><br><a href="../files/iso_surfaces_presentation.htm"><b>framework</b></a> <br><a href="../gauss_viewer.htm"><b>free</b></a> <br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>freedom</b></a> <br><a name="bms_FU"></a><a name="subkey_FU"></a><a href="../files/importing_med_objects.htm"><b>fully</b></a> <br><a href="../segmentation.htm"><b>function</b></a> <br><a href="../vtk_3d_viewer.htm"><b>functionalities</b></a> <br><nobr>functionality <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../files/about_tables.htm"><b>2</b></a> <a href="../animation_in_gauss_viewer.htm"><b>3</b></a> <a href="../vtk_3d_viewer.htm"><b>4</b></a> <a href="../segmentation.htm"><b>5</b></a> <a href="../plot_3d_presentation.htm"><b>6</b></a> <a href="../plot2d_viewer.htm"><b>7</b></a> </nobr><br>
-<br><br>
-<a name="bm_G"></a><a name="subkey_G{"></a><a href="../primitive_types.htm"><b>g</b></a> <br><nobr><a name="bms_GA"></a><a name="subkey_GA"></a>gauss <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>2</b></a> <a href="../gauss_viewer.htm"><b>3</b></a> <a href="../gauss_points_presentation.htm"><b>4</b></a> <a href="../vtk_3d_viewer.htm"><b>5</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>6</b></a> <a href="../segmentation.htm"><b>7</b></a> <a href="../scalar_bar.htm"><b>8</b></a> <a href="../primitive_types.htm"><b>9</b></a> <a href="../picking.htm"><b>10</b></a> </nobr><br><a name="bms_GE"></a><a name="subkey_GE"></a><a href="../files/about_structure_of_med_object.htm"><b>general</b></a> <br><nobr>generate <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/animating_presentations.htm"><b>2</b></a> </nobr><br><nobr>generated <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/animating_presentations.htm"><b>2</b></a> <a href="../files/sweeping.htm"><b>3</b></a> <a href="../files/stream_lines_presentation.htm"><b>4</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>5</b></a> <a href="../picking.htm"><b>6</b></a> </nobr><br><a href="../files/sweeping.htm"><b>generates</b></a> <br><a href="../files/animating_presentations.htm"><b>generating</b></a> <br><nobr>generation <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/stream_lines_presentation.htm"><b>2</b></a> </nobr><br><a href="../segmentation.htm"><b>geom</b></a> <br><nobr>geometrical <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../files/importing_med_objects.htm"><b>2</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>3</b></a> <a href="../primitive_types.htm"><b>4</b></a> </nobr><br><a href="../types_of_gauss_points_presentations.htm"><b>geometry</b></a> <br><nobr>get <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/getting_elements_attributes.htm"><b>2</b></a> <a href="../picking.htm"><b>3</b></a> </nobr><br><nobr><a name="bms_GI"></a><a name="subkey_GI"></a>given <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/creating_curves.htm"><b>2</b></a> <a href="../animation_in_gauss_viewer.htm"><b>3</b></a> <a href="../scalar_bar.htm"><b>4</b></a> <a href="../primitive_types.htm"><b>5</b></a> </nobr><br><nobr>gives <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../clipping.htm"><b>2</b></a> <a href="../animation_in_gauss_viewer.htm"><b>3</b></a> <a href="../gauss_viewer.htm"><b>4</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>5</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>6</b></a> <a href="../plot2d_viewer.htm"><b>7</b></a> </nobr><br><a name="bms_GL"></a><a name="subkey_GL"></a><a href="../primitive_types.htm"><b>gl</b></a> <br><nobr>global <a href="../vtk_3d_viewer.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><a href="../files/vectors_presentation.htm"><b>glyph</b></a> <br><a href="../files/vectors_presentation.htm"><b>glyphs</b></a> <br><a name="bms_GR"></a><a name="subkey_GR"></a><a href="../vtk_3d_viewer.htm"><b>graduate</b></a> <br><a href="../vtk_3d_viewer.htm"><b>graduated</b></a> <br><a href="../files/scalar_map_presentation.htm"><b>graduation</b></a> <br><nobr>graph <a href="../files/setting_properties_of_xy_plots.htm"><b>1</b></a> <a href="../plot2d_viewer.htm"><b>2</b></a> </nobr><br><a href="../files/setting_properties_of_xy_plots.htm"><b>graphic</b></a> <br><a href="../files/vectors_presentation.htm"><b>graphical</b></a> <br><nobr>graphs <a href="../files/setting_properties_of_xy_plots.htm"><b>1</b></a> <a href="../plot2d_viewer.htm"><b>2</b></a> </nobr><br><nobr>greater <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../vtk_3d_viewer.htm"><b>2</b></a> <a href="../primitive_types.htm"><b>3</b></a> <a href="../plot2d_viewer.htm"><b>4</b></a> <a href="../picking.htm"><b>5</b></a> </nobr><br><a href="../scalar_bar.htm"><b>grey</b></a> <br><a href="../plot2d_viewer.htm"><b>grid</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>group</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>grouped</b></a> <br><nobr>groups <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../files/importing_med_objects.htm"><b>2</b></a> </nobr><br>
-<br><br>
-<a name="bm_H"></a><a name="subkey_H{"></a><a href="../files/creating_curves.htm"><b>h</b></a> <br><a name="bms_HA"></a><a name="subkey_HA"></a><a href="../types_of_gauss_points_presentations.htm"><b>half</b></a> <br><nobr>halves <a href="../clipping.htm"><b>1</b></a> <a href="../plot_3d_presentation.htm"><b>2</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>hardware</b></a> <br><nobr>having <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../files/stream_lines_presentation.htm"><b>3</b></a> <a href="../files/importing_tables.htm"><b>4</b></a> </nobr><br><nobr><a name="bms_HE"></a><a name="subkey_HE"></a>head <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../files/vectors_presentation.htm"><b>2</b></a> </nobr><br><nobr>height <a href="../files/scalar_map_presentation.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> <a href="../picking.htm"><b>3</b></a> </nobr><br><a href="../files/about_tables.htm"><b>help</b></a> <br><nobr>here <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/animating_presentations.htm"><b>2</b></a> <a href="../files/scalar_map_presentation.htm"><b>3</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>4</b></a> <a href="../plot2d_viewer.htm"><b>5</b></a> </nobr><br><a name="bms_HI"></a><a name="subkey_HI"></a><a href="../files/displaying_hiding_presentations.htm"><b>hidden</b></a> <br><nobr>hide <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> <a href="../gauss_viewer.htm"><b>3</b></a> <a href="../vtk_3d_viewer.htm"><b>4</b></a> <a href="../picking.htm"><b>5</b></a> </nobr><br><nobr>hides <a href="../clipping.htm"><b>1</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>2</b></a> <a href="../vtk_3d_viewer.htm"><b>3</b></a> </nobr><br><nobr>hiding <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> </nobr><br><a href="../primitive_types.htm"><b>high</b></a> <br><a href="../files/importing_med_objects.htm"><b>highest</b></a> <br><a href="../picking.htm"><b>highlight</b></a> <br><nobr>highlighted <a href="../files/getting_elements_attributes.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><a name="bms_HO"></a><a name="subkey_HO"></a><a href="../files/displaying_hiding_presentations.htm"><b>hold</b></a> <br><nobr>horizontal <a href="../clipping.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.htm"><b>2</b></a> <a href="../scalar_bar.htm"><b>3</b></a> <a href="../plot2d_viewer.htm"><b>4</b></a> </nobr><br><nobr>how <a href="../files/importing_med_objects.htm"><b>1</b></a> <a href="../files/getting_started.htm"><b>2</b></a> </nobr><br>
-<br><br>
-<a name="bm_I"></a><a name="subkey_I{"></a><a href="../scalar_bar.htm"><b>i</b></a> <br><nobr><a name="bms_IC"></a><a name="subkey_IC"></a>icon <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_resentation.htm"><b>2</b></a> <a href="../files/cut_lines_presentation.htm"><b>3</b></a> <a href="../gauss_points_presentation.htm"><b>4</b></a> <a href="../files/vectors_presentation.htm"><b>5</b></a> <a href="../files/stream_lines_presentation.htm"><b>6</b></a> <a href="../files/scalar_map_presentation.htm"><b>7</b></a> <a href="../files/running_visu.htm"><b>8</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>9</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>10</b></a> <a href="../plot_3d_presentation.htm"><b>11</b></a> </nobr><br><nobr><a name="bms_ID"></a><a name="subkey_ID"></a>id <a href="../files/getting_elements_attributes.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><br><br></p><p class="ftsbody" align="center"><a href="whlstf4.htm" target="_self" title="previous search group"><b>&gt;&gt;</b></a>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstf4.htm b/doc/salome/gui/VISU/whgdata/whlstf4.htm
deleted file mode 100755 (executable)
index d00844d..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-<html>
-<head>
-<title>Search Words List</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-<p class="ftsbody" align="center"><a href="whlstf3.htm" target="_self" title="previous search group"><b>&lt;&lt;</b></a><br><br></p>
-<p class="ftsbody" >
-<nobr><a name="bms_IF"></a><a name="subkey_IF"></a>if <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/creating_curves.htm"><b>3</b></a> <a href="../files/animating_presentations.htm"><b>4</b></a> <a href="../clipping.htm"><b>5</b></a> <a href="../animation_in_gauss_viewer.htm"><b>6</b></a> <a href="../files/vectors_presentation.htm"><b>7</b></a> <a href="../files/stream_lines_presentation.htm"><b>8</b></a> <a href="../files/scalar_map_presentation.htm"><b>9</b></a> <a href="../files/importing_med_objects.htm"><b>10</b></a> <a href="../files/getting_elements_attributes.htm"><b>11</b></a> <a href="../vtk_3d_viewer.htm"><b>12</b></a> <a href="../scalar_bar.htm"><b>13</b></a> <a href="../primitive_types.htm"><b>14</b></a> <a href="../plot_3d_presentation.htm"><b>15</b></a> <a href="../plot2d_viewer.htm"><b>16</b></a> <a href="../picking.htm"><b>17</b></a> </nobr><br><a name="bms_IJ"></a><a name="subkey_IJ"></a><a href="../clipping.htm"><b>ijk</b></a> <br><nobr><a name="bms_IM"></a><a name="subkey_IM"></a>image <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../animation_in_gauss_viewer.htm"><b>2</b></a> <a href="../gauss_viewer.htm"><b>3</b></a> <a href="../vtk_3d_viewer.htm"><b>4</b></a> <a href="../plot2d_viewer.htm"><b>5</b></a> </nobr><br><a href="../animation_in_gauss_viewer.htm"><b>images</b></a> <br><nobr>immediately <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/deformed_shape_presentation.htm"><b>2</b></a> <a href="../files/cut_lines_resentation.htm"><b>3</b></a> <a href="../files/cut_lines_presentation.htm"><b>4</b></a> <a href="../clipping.htm"><b>5</b></a> <a href="../files/vectors_presentation.htm"><b>6</b></a> <a href="../files/stream_lines_presentation.htm"><b>7</b></a> <a href="../files/scalar_map_presentation.htm"><b>8</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>9</b></a> <a href="../files/importing_med_objects.htm"><b>10</b></a> <a href="../files/getting_elements_attributes.htm"><b>11</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>12</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>13</b></a> <a href="../plot_3d_presentation.htm"><b>14</b></a> </nobr><br><nobr>import <a href="../files/about_tables.htm"><b>1</b></a> <a href="../files/importing_tables.htm"><b>2</b></a> <a href="../files/importing_med_objects.htm"><b>3</b></a> <a href="../files/getting_started.htm"><b>4</b></a> </nobr><br><nobr>imported <a href="../files/creating_presentations.htm"><b>1</b></a> <a href="../files/creating_curves.htm"><b>2</b></a> <a href="../files/importing_tables.htm"><b>3</b></a> <a href="../files/importing_med_objects.htm"><b>4</b></a> </nobr><br><nobr>importing <a href="../files/about_tables.htm"><b>1</b></a> <a href="../files/importing_tables.htm"><b>2</b></a> <a href="../files/importing_med_objects.htm"><b>3</b></a> </nobr><br><a href="../files/scalar_map_presentation.htm"><b>imposed</b></a> <br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>impossible</b></a> <br><nobr><a name="bms_IN"></a><a name="subkey_IN"></a>inactive <a href="../files/scalar_map_presentation.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> </nobr><br><a href="../types_of_gauss_points_presentations.htm"><b>included</b></a> <br><nobr>including <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../animation_in_gauss_viewer.htm"><b>2</b></a> <a href="../files/stream_lines_presentation.htm"><b>3</b></a> <a href="../files/introduction.htm"><b>4</b></a> </nobr><br><nobr>increase <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>2</b></a> <a href="../gauss_viewer.htm"><b>3</b></a> <a href="../plot_3d_presentation.htm"><b>4</b></a> </nobr><br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>increment</b></a> <br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>independent</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>independently</b></a> <br><a href="../clipping.htm"><b>index</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>indicated</b></a> <br><a href="../files/scalar_map_presentation.htm"><b>indicating</b></a> <br><a href="../picking.htm"><b>individually</b></a> <br><nobr>info <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../files/getting_elements_attributes.htm"><b>2</b></a> </nobr><br><nobr>information <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../files/about_structure_of_med_object.htm"><b>2</b></a> <a href="../files/getting_elements_attributes.htm"><b>3</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>4</b></a> <a href="../primitive_types.htm"><b>5</b></a> <a href="../plot2d_viewer.htm"><b>6</b></a> <a href="../picking.htm"><b>7</b></a> </nobr><br><nobr>initial <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../files/sweeping.htm"><b>2</b></a> <a href="../files/running_visu.htm"><b>3</b></a> </nobr><br><a href="../animation_in_gauss_viewer.htm"><b>input</b></a> <br><nobr>inside <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../segmentation.htm"><b>2</b></a> </nobr><br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>insideframe</b></a> <br><nobr>inspected <a href="../segmentation.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> <a href="../picking.htm"><b>3</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>integration</b></a> <br><a href="../files/animating_presentations.htm"><b>intended</b></a> <br><nobr>interaction <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>interesting</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>interpolation</b></a> <br><nobr>interval <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> </nobr><br><a href="../plot2d_viewer.htm"><b>intervals</b></a> <br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>introduces</b></a> <br><a href="../files/introduction.htm"><b>introduction</b></a> <br><a href="../files/cut_lines_presentation.htm"><b>invert</b></a> <br><a name="bms_IS"></a><a name="subkey_IS"></a><a href="../files/iso_surfaces_presentation.htm"><b>iso</b></a> <br><a href="../files/iso_surfaces_presentation.htm"><b>isobaric</b></a> <br><a href="../vtk_3d_viewer.htm"><b>isometric</b></a> <br><nobr><a name="bms_IT"></a><a name="subkey_IT"></a>item <a href="../files/creating_xy_plot.htm"><b>1</b></a> <a href="../files/importing_tables.htm"><b>2</b></a> </nobr><br><a href="../files/importing_med_objects.htm"><b>items</b></a> <br><a href="../picking.htm"><b>iterations</b></a> <br>
-<br><br>
-<nobr><a name="bm_J"></a><a name="subkey_JP"></a>jpeg <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../vtk_3d_viewer.htm"><b>3</b></a> <a href="../plot2d_viewer.htm"><b>4</b></a> </nobr><br><nobr>jpg <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../vtk_3d_viewer.htm"><b>3</b></a> <a href="../primitive_types.htm"><b>4</b></a> <a href="../plot2d_viewer.htm"><b>5</b></a> </nobr><br><a name="bms_JU"></a><a name="subkey_JU"></a><a href="../animation_in_gauss_viewer.htm"><b>just</b></a> <br>
-<br><br>
-<nobr><a name="bm_K"></a><a name="subkey_KE"></a>key <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><nobr>keyboard <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>3</b></a> <a href="../picking.htm"><b>4</b></a> </nobr><br><nobr>keys <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> </nobr><br>
-<br><br>
-<nobr><a name="bm_L"></a><a name="subkey_LA"></a>labels <a href="../files/setting_properties_of_xy_plots.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.htm"><b>2</b></a> <a href="../vtk_3d_viewer.htm"><b>3</b></a> <a href="../scalar_bar.htm"><b>4</b></a> </nobr><br><a href="../files/scalar_map_presentation.htm"><b>larger</b></a> <br><a href="../types_of_gauss_points_presentations.htm"><b>largest</b></a> <br><a href="../files/animating_presentations.htm"><b>last</b></a> <br><a href="../animation_in_gauss_viewer.htm"><b>latest</b></a> <br><a href="../primitive_types.htm"><b>latitude</b></a> <br><nobr>launch <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/getting_started.htm"><b>2</b></a> </nobr><br><a href="../files/running_visu.htm"><b>launching</b></a> <br><nobr>layout <a href="../gauss_viewer.htm"><b>1</b></a> <a href="../files/getting_elements_attributes.htm"><b>2</b></a> </nobr><br><a name="bms_LE"></a><a name="subkey_LE"></a><a href="../segmentation.htm"><b>learn</b></a> <br><a href="../files/creating_curves.htm"><b>least</b></a> <br><nobr>left <a href="../files/creating_xy_plot.htm"><b>1</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>2</b></a> <a href="../gauss_viewer.htm"><b>3</b></a> <a href="../vtk_3d_viewer.htm"><b>4</b></a> <a href="../scalar_bar.htm"><b>5</b></a> <a href="../plot2d_viewer.htm"><b>6</b></a> <a href="../picking.htm"><b>7</b></a> </nobr><br><a href="../files/creating_curves.htm"><b>leftward</b></a> <br><nobr>legend <a href="../files/setting_properties_of_xy_plots.htm"><b>1</b></a> <a href="../plot2d_viewer.htm"><b>2</b></a> </nobr><br><nobr>length <a href="../files/stream_lines_presentation.htm"><b>1</b></a> <a href="../vtk_3d_viewer.htm"><b>2</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>3</b></a> </nobr><br><nobr>less <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.htm"><b>2</b></a> </nobr><br><a href="../primitive_types.htm"><b>level</b></a> <br><nobr><a name="bms_LI"></a><a name="subkey_LI"></a>like <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../files/running_visu.htm"><b>2</b></a> </nobr><br><a href="../primitive_types.htm"><b>limited</b></a> <br><a href="../scalar_bar.htm"><b>limits</b></a> <br><nobr>line <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../files/creating_curves.htm"><b>3</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>4</b></a> <a href="../files/vectors_presentation.htm"><b>5</b></a> <a href="../files/stream_lines_presentation.htm"><b>6</b></a> <a href="../picking.htm"><b>7</b></a> </nobr><br><nobr>linear <a href="../files/setting_properties_of_xy_plots.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>lined</b></a> <br><nobr>lines <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../files/creating_curves.htm"><b>3</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>4</b></a> <a href="../files/about_tables.htm"><b>5</b></a> <a href="../creating_tables.htm"><b>6</b></a> <a href="../files/vectors_presentation.htm"><b>7</b></a> <a href="../files/stream_lines_presentation.htm"><b>8</b></a> <a href="../scalar_bar.htm"><b>9</b></a> <a href="../plot2d_viewer.htm"><b>10</b></a> </nobr><br><nobr>list <a href="../files/creating_xy_plot.htm"><b>1</b></a> <a href="../files/animating_presentations.htm"><b>2</b></a> <a href="../files/about_structure_of_med_object.htm"><b>3</b></a> <a href="../clipping.htm"><b>4</b></a> <a href="../files/stream_lines_presentation.htm"><b>5</b></a> </nobr><br><nobr><a name="bms_LL"></a><a name="subkey_LL"></a>ll <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../vtk_3d_viewer.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><a name="bms_LO"></a><a name="subkey_LO"></a><a href="../files/importing_med_objects.htm"><b>loaded</b></a> <br><a href="../files/importing_med_objects.htm"><b>loading</b></a> <br><a href="../files/importing_med_objects.htm"><b>loads</b></a> <br><nobr>local <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> </nobr><br><nobr>located <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/creating_field_presentations.htm"><b>3</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>4</b></a> <a href="../files/stream_lines_presentation.htm"><b>5</b></a> <a href="../files/importing_tables.htm"><b>6</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>7</b></a> <a href="../segmentation.htm"><b>8</b></a> <a href="../scalar_bar.htm"><b>9</b></a> <a href="../plot_3d_presentation.htm"><b>10</b></a> <a href="../picking.htm"><b>11</b></a> </nobr><br><nobr>location <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../segmentation.htm"><b>2</b></a> <a href="../primitive_types.htm"><b>3</b></a> </nobr><br><a href="../gauss_viewer.htm"><b>locked</b></a> <br><nobr>locking <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../vtk_3d_viewer.htm"><b>3</b></a> </nobr><br><nobr>logarithmic <a href="../files/setting_properties_of_xy_plots.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><a href="../primitive_types.htm"><b>longitude</b></a> <br><a href="../files/running_visu.htm"><b>look</b></a> <br><a href="../scalar_bar.htm"><b>lookout</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>lot</b></a> <br><nobr>lower <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../segmentation.htm"><b>2</b></a> </nobr><br><a href="../files/importing_med_objects.htm"><b>lowest</b></a> <br><nobr><a name="bms_LY"></a><a name="subkey_LY"></a>lying <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../plot_3d_presentation.htm"><b>2</b></a> </nobr><br>
-<br><br>
-<a name="bm_M"></a><a name="subkey_M{"></a><a href="../types_of_gauss_points_presentations.htm"><b>m</b></a> <br><nobr><a name="bms_MA"></a><a name="subkey_MA"></a>magnification <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> <a href="../primitive_types.htm"><b>3</b></a> </nobr><br><nobr>magnitude <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/vectors_presentation.htm"><b>2</b></a> <a href="../files/stream_lines_presentation.htm"><b>3</b></a> </nobr><br><nobr>main <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/deformed_shape_presentation.htm"><b>2</b></a> <a href="../files/cut_lines_resentation.htm"><b>3</b></a> <a href="../files/cut_lines_presentation.htm"><b>4</b></a> <a href="../files/creating_xy_plot.htm"><b>5</b></a> <a href="../files/creating_field_presentations.htm"><b>6</b></a> <a href="../files/animating_presentations.htm"><b>7</b></a> <a href="../files/about_structure_of_med_object.htm"><b>8</b></a> <a href="../gauss_points_presentation.htm"><b>9</b></a> <a href="../files/vectors_presentation.htm"><b>10</b></a> <a href="../files/stream_lines_presentation.htm"><b>11</b></a> <a href="../files/scalar_map_presentation.htm"><b>12</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>13</b></a> <a href="../files/importing_tables.htm"><b>14</b></a> <a href="../files/getting_elements_attributes.htm"><b>15</b></a> <a href="../segmentation.htm"><b>16</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>17</b></a> <a href="../primitive_types.htm"><b>18</b></a> <a href="../plot_3d_presentation.htm"><b>19</b></a> <a href="../plot2d_viewer.htm"><b>20</b></a> </nobr><br><a href="../plot2d_viewer.htm"><b>major</b></a> <br><nobr>make <a href="../files/creating_field_presentations.htm"><b>1</b></a> <a href="../files/stream_lines_presentation.htm"><b>2</b></a> </nobr><br><a href="../files/animating_presentations.htm"><b>management</b></a> <br><nobr>manipulate <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> </nobr><br><a href="../gauss_viewer.htm"><b>manipulation</b></a> <br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>manipulations</b></a> <br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>manipulator</b></a> <br><nobr>manual <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../files/about_tables.htm"><b>2</b></a> </nobr><br><nobr>manually <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../segmentation.htm"><b>3</b></a> </nobr><br><nobr>map <a href="../files/scalar_map_presentation.htm"><b>1</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>2</b></a> </nobr><br><nobr>marked <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../vtk_3d_viewer.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><nobr>marker <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../plot2d_viewer.htm"><b>2</b></a> </nobr><br><nobr>markers <a href="../scalar_bar.htm"><b>1</b></a> <a href="../plot2d_viewer.htm"><b>2</b></a> <a href="../picking.htm"><b>3</b></a> </nobr><br><nobr>marks <a href="../vtk_3d_viewer.htm"><b>1</b></a> <a href="../plot2d_viewer.htm"><b>2</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>massless</b></a> <br><nobr>matrix <a href="../scalar_bar.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> </nobr><br><nobr>max <a href="../files/importing_med_objects.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> <a href="../scalar_bar.htm"><b>3</b></a> </nobr><br><a href="../files/scalar_map_presentation.htm"><b>maximal</b></a> <br><nobr>maximum <a href="../files/stream_lines_presentation.htm"><b>1</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>2</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>3</b></a> <a href="../scalar_bar.htm"><b>4</b></a> <a href="../primitive_types.htm"><b>5</b></a> <a href="../plot2d_viewer.htm"><b>6</b></a> </nobr><br><nobr><a name="bms_ME"></a><a name="subkey_ME"></a>mean <a href="../types_of_gauss_points_presentations.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><a href="../types_of_gauss_points_presentations.htm"><b>meaning</b></a> <br><a href="../types_of_gauss_points_presentations.htm"><b>means</b></a> <br><nobr>measured <a href="../files/stream_lines_presentation.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> </nobr><br><nobr>menu <a href="../files/displaying_tables.htm"><b>1</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>2</b></a> <a href="../files/deformed_shape_presentation.htm"><b>3</b></a> <a href="../files/cut_lines_resentation.htm"><b>4</b></a> <a href="../files/cut_lines_presentation.htm"><b>5</b></a> <a href="../files/creating_xy_plot.htm"><b>6</b></a> <a href="../files/creating_presentations.htm"><b>7</b></a> <a href="../files/creating_field_presentations.htm"><b>8</b></a> <a href="../files/creating_curves.htm"><b>9</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>10</b></a> <a href="../files/animating_presentations.htm"><b>11</b></a> <a href="../creating_tables.htm"><b>12</b></a> <a href="../clipping.htm"><b>13</b></a> <a href="../gauss_viewer.htm"><b>14</b></a> <a href="../gauss_points_presentation.htm"><b>15</b></a> <a href="../files/vectors_presentation.htm"><b>16</b></a> <a href="../files/sweeping.htm"><b>17</b></a> <a href="../files/stream_lines_presentation.htm"><b>18</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>19</b></a> <a href="../files/scalar_map_presentation.htm"><b>20</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>21</b></a> <a href="../files/importing_tables.htm"><b>22</b></a> <a href="../files/importing_med_objects.htm"><b>23</b></a> <a href="../files/getting_elements_attributes.htm"><b>24</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>25</b></a> <a href="../segmentation.htm"><b>26</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>27</b></a> <a href="../primitive_types.htm"><b>28</b></a> <a href="../plot_3d_presentation.htm"><b>29</b></a> <a href="../plot2d_viewer.htm"><b>30</b></a> </nobr><br><a href="../files/running_visu.htm"><b>menus</b></a> <br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>merge</b></a> <br><nobr>mesh <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_resentation.htm"><b>2</b></a> <a href="../files/cut_lines_presentation.htm"><b>3</b></a> <a href="../files/about_structure_of_med_object.htm"><b>4</b></a> <a href="../files/vectors_presentation.htm"><b>5</b></a> <a href="../files/stream_lines_presentation.htm"><b>6</b></a> <a href="../files/getting_started.htm"><b>7</b></a> <a href="../files/getting_elements_attributes.htm"><b>8</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>9</b></a> <a href="../segmentation.htm"><b>10</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>11</b></a> <a href="../plot_3d_presentation.htm"><b>12</b></a> <a href="../picking.htm"><b>13</b></a> </nobr><br><nobr>meshes <a href="../files/getting_elements_attributes.htm"><b>1</b></a> <a href="../plot_3d_presentation.htm"><b>2</b></a> </nobr><br><a href="../files/about_tables.htm"><b>methods</b></a> <br><br><br></p><p class="ftsbody" align="center"><a href="whlstf5.htm" target="_self" title="previous search group"><b>&gt;&gt;</b></a>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstf5.htm b/doc/salome/gui/VISU/whgdata/whlstf5.htm
deleted file mode 100755 (executable)
index faf9e09..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-<html>
-<head>
-<title>Search Words List</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-<p class="ftsbody" align="center"><a href="whlstf4.htm" target="_self" title="previous search group"><b>&lt;&lt;</b></a><br><br></p>
-<p class="ftsbody" >
-<a name="bms_MI"></a><a name="subkey_MI"></a><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>might</b></a> <br><nobr>min <a href="../files/importing_med_objects.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> <a href="../scalar_bar.htm"><b>3</b></a> </nobr><br><a href="../files/scalar_map_presentation.htm"><b>minimal</b></a> <br><nobr>minimum <a href="../files/sweeping.htm"><b>1</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>2</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>3</b></a> <a href="../segmentation.htm"><b>4</b></a> <a href="../scalar_bar.htm"><b>5</b></a> </nobr><br><a href="../plot2d_viewer.htm"><b>minor</b></a> <br><a href="../scalar_map_on_deformed_shape_presentation.htm"><b>mix</b></a> <br><nobr><a name="bms_MO"></a><a name="subkey_MO"></a>mode <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../clipping.htm"><b>2</b></a> <a href="../animation_in_gauss_viewer.htm"><b>3</b></a> <a href="../gauss_viewer.htm"><b>4</b></a> <a href="../files/vectors_presentation.htm"><b>5</b></a> <a href="../files/scalar_map_presentation.htm"><b>6</b></a> <a href="../scalar_bar.htm"><b>7</b></a> <a href="../plot2d_viewer.htm"><b>8</b></a> <a href="../picking.htm"><b>9</b></a> </nobr><br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>model</b></a> <br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>models</b></a> <br><nobr>modes <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> </nobr><br><nobr>modify <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> </nobr><br><nobr>module <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../files/animating_presentations.htm"><b>2</b></a> <a href="../files/about_structure_of_med_object.htm"><b>3</b></a> <a href="../gauss_viewer.htm"><b>4</b></a> <a href="../files/scalar_map_presentation.htm"><b>5</b></a> <a href="../files/running_visu.htm"><b>6</b></a> <a href="../files/introduction.htm"><b>7</b></a> <a href="../files/getting_started.htm"><b>8</b></a> <a href="../vtk_3d_viewer.htm"><b>9</b></a> <a href="../primitive_types.htm"><b>10</b></a> <a href="../plot2d_viewer.htm"><b>11</b></a> </nobr><br><a href="../segmentation.htm"><b>modules</b></a> <br><a href="../scalar_bar.htm"><b>modulus</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>moment</b></a> <br><a href="../picking.htm"><b>momentarily</b></a> <br><a href="../files/importing_med_objects.htm"><b>monitor</b></a> <br><nobr>mouse <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>3</b></a> <a href="../gauss_viewer.htm"><b>4</b></a> <a href="../vtk_3d_viewer.htm"><b>5</b></a> <a href="../segmentation.htm"><b>6</b></a> <a href="../plot2d_viewer.htm"><b>7</b></a> <a href="../picking.htm"><b>8</b></a> </nobr><br><nobr>move <a href="../files/creating_xy_plot.htm"><b>1</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>2</b></a> <a href="../segmentation.htm"><b>3</b></a> </nobr><br><a href="../files/scaling_presentations.htm"><b>moved</b></a> <br><nobr>movement <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>movements</b></a> <br><a href="../files/animating_presentations.htm"><b>moving</b></a> <br><a name="bms_MU"></a><a name="subkey_MU"></a><a href="../files/stream_lines_presentation.htm"><b>multiple</b></a> <br><nobr>multiplied <a href="../types_of_gauss_points_presentations.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> <a href="../picking.htm"><b>3</b></a> </nobr><br><nobr>multiply <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> </nobr><br>
-<br><br>
-<nobr><a name="bm_N"></a><a name="subkey_N{"></a>n <a href="../types_of_gauss_points_presentations.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><nobr><a name="bms_NA"></a><a name="subkey_NA"></a>name <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../animation_in_gauss_viewer.htm"><b>3</b></a> <a href="../files/importing_tables.htm"><b>4</b></a> <a href="../files/getting_elements_attributes.htm"><b>5</b></a> <a href="../vtk_3d_viewer.htm"><b>6</b></a> <a href="../picking.htm"><b>7</b></a> </nobr><br><nobr>names <a href="../vtk_3d_viewer.htm"><b>1</b></a> <a href="../plot2d_viewer.htm"><b>2</b></a> </nobr><br><a href="../plot2d_viewer.htm"><b>natural</b></a> <br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>navigation</b></a> <br><nobr><a name="bms_NB"></a><a name="subkey_NB"></a>nb <a href="../files/scalar_map_presentation.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> </nobr><br><a href="../primitive_types.htm"><b>nbrfaces</b></a> <br><nobr><a name="bms_NE"></a><a name="subkey_NE"></a>necessary <a href="../files/importing_tables.htm"><b>1</b></a> <a href="../files/importing_med_objects.htm"><b>2</b></a> <a href="../files/getting_elements_attributes.htm"><b>3</b></a> </nobr><br><a href="../clipping.htm"><b>need</b></a> <br><nobr>negative <a href="../types_of_gauss_points_presentations.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> </nobr><br><nobr>new <a href="../files/creating_xy_plot.htm"><b>1</b></a> <a href="../files/creating_field_presentations.htm"><b>2</b></a> <a href="../creating_tables.htm"><b>3</b></a> <a href="../clipping.htm"><b>4</b></a> <a href="../files/running_visu.htm"><b>5</b></a> <a href="../files/importing_tables.htm"><b>6</b></a> <a href="../files/getting_started.htm"><b>7</b></a> <a href="../segmentation.htm"><b>8</b></a> <a href="../plot2d_viewer.htm"><b>9</b></a> </nobr><br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>newly</b></a> <br><nobr>next <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><a name="bms_NO"></a><a name="subkey_NO"></a><a href="../files/about_structure_of_med_object.htm"><b>nodes</b></a> <br><nobr>none <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../files/stream_lines_presentation.htm"><b>2</b></a> </nobr><br><a href="../clipping.htm"><b>normal</b></a> <br><nobr>note <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.htm"><b>2</b></a> <a href="../files/importing_med_objects.htm"><b>3</b></a> </nobr><br><a href="../primitive_types.htm"><b>notify</b></a> <br><nobr>now <a href="../clipping.htm"><b>1</b></a> <a href="../gauss_points_presentation.htm"><b>2</b></a> <a href="../picking.htm"><b>3</b></a> </nobr><br><a name="bms_NT"></a><a name="subkey_NT"></a><a href="../scalar_bar.htm"><b>nth</b></a> <br><a name="bms_NU"></a><a name="subkey_NU"></a><a href="../types_of_gauss_points_presentations.htm"><b>null</b></a> <br><nobr>number <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/sweeping.htm"><b>2</b></a> <a href="../files/stream_lines_presentation.htm"><b>3</b></a> <a href="../files/scalar_map_presentation.htm"><b>4</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>5</b></a> <a href="../files/getting_elements_attributes.htm"><b>6</b></a> <a href="../vtk_3d_viewer.htm"><b>7</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>8</b></a> <a href="../scalar_bar.htm"><b>9</b></a> <a href="../primitive_types.htm"><b>10</b></a> <a href="../plot_3d_presentation.htm"><b>11</b></a> <a href="../plot2d_viewer.htm"><b>12</b></a> <a href="../picking.htm"><b>13</b></a> </nobr><br><a href="../picking.htm"><b>numbers</b></a> <br><a href="../plot2d_viewer.htm"><b>numerical</b></a> <br>
-<br><br>
-<nobr><a name="bm_O"></a><a name="subkey_OB"></a>object <a href="../files/displaying_tables.htm"><b>1</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>2</b></a> <a href="../files/deformed_shape_presentation.htm"><b>3</b></a> <a href="../files/cut_lines_resentation.htm"><b>4</b></a> <a href="../files/cut_lines_presentation.htm"><b>5</b></a> <a href="../files/creating_xy_plot.htm"><b>6</b></a> <a href="../files/creating_presentations.htm"><b>7</b></a> <a href="../files/creating_field_presentations.htm"><b>8</b></a> <a href="../files/creating_curves.htm"><b>9</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>10</b></a> <a href="../files/animating_presentations.htm"><b>11</b></a> <a href="../files/about_structure_of_med_object.htm"><b>12</b></a> <a href="../creating_tables.htm"><b>13</b></a> <a href="../clipping.htm"><b>14</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>15</b></a> <a href="../gauss_viewer.htm"><b>16</b></a> <a href="../gauss_points_presentation.htm"><b>17</b></a> <a href="../files/vectors_presentation.htm"><b>18</b></a> <a href="../files/sweeping.htm"><b>19</b></a> <a href="../files/stream_lines_presentation.htm"><b>20</b></a> <a href="../files/scaling_presentations.htm"><b>21</b></a> <a href="../files/scalar_map_presentation.htm"><b>22</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>23</b></a> <a href="../files/importing_tables.htm"><b>24</b></a> <a href="../files/importing_med_objects.htm"><b>25</b></a> <a href="../files/getting_elements_attributes.htm"><b>26</b></a> <a href="../vtk_3d_viewer.htm"><b>27</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>28</b></a> <a href="../plot_3d_presentation.htm"><b>29</b></a> <a href="../plot2d_viewer.htm"><b>30</b></a> </nobr><br><nobr>objects <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> <a href="../files/about_structure_of_med_object.htm"><b>3</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>4</b></a> <a href="../gauss_viewer.htm"><b>5</b></a> <a href="../vtk_3d_viewer.htm"><b>6</b></a> <a href="../plot2d_viewer.htm"><b>7</b></a> </nobr><br><nobr>observe <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> </nobr><br><a href="../primitive_types.htm"><b>obtained</b></a> <br><a name="bms_OF"></a><a name="subkey_OF"></a><a href="../vtk_3d_viewer.htm"><b>offset</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>often</b></a> <br><nobr><a name="bms_OK"></a><a name="subkey_OK"></a>ok <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/deformed_shape_presentation.htm"><b>2</b></a> <a href="../files/cut_lines_resentation.htm"><b>3</b></a> <a href="../files/cut_lines_presentation.htm"><b>4</b></a> <a href="../files/creating_xy_plot.htm"><b>5</b></a> <a href="../files/creating_curves.htm"><b>6</b></a> <a href="../files/animating_presentations.htm"><b>7</b></a> <a href="../animation_in_gauss_viewer.htm"><b>8</b></a> <a href="../gauss_points_presentation.htm"><b>9</b></a> <a href="../files/vectors_presentation.htm"><b>10</b></a> <a href="../files/stream_lines_presentation.htm"><b>11</b></a> <a href="../files/scaling_presentations.htm"><b>12</b></a> <a href="../files/scalar_map_presentation.htm"><b>13</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>14</b></a> <a href="../files/importing_tables.htm"><b>15</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>16</b></a> <a href="../plot_3d_presentation.htm"><b>17</b></a> </nobr><br><nobr><a name="bms_ON"></a><a name="subkey_ON"></a>once <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../files/importing_med_objects.htm"><b>2</b></a> <a href="../segmentation.htm"><b>3</b></a> <a href="../picking.htm"><b>4</b></a> </nobr><br><a href="../files/about_structure_of_med_object.htm"><b>oncells</b></a> <br><nobr>one <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/deformed_shape_presentation.htm"><b>2</b></a> <a href="../files/cut_lines_resentation.htm"><b>3</b></a> <a href="../files/cut_lines_presentation.htm"><b>4</b></a> <a href="../files/creating_xy_plot.htm"><b>5</b></a> <a href="../files/creating_field_presentations.htm"><b>6</b></a> <a href="../files/creating_curves.htm"><b>7</b></a> <a href="../files/animating_presentations.htm"><b>8</b></a> <a href="../files/about_structure_of_med_object.htm"><b>9</b></a> <a href="../clipping.htm"><b>10</b></a> <a href="../gauss_points_presentation.htm"><b>11</b></a> <a href="../files/vectors_presentation.htm"><b>12</b></a> <a href="../files/sweeping.htm"><b>13</b></a> <a href="../files/stream_lines_presentation.htm"><b>14</b></a> <a href="../files/scalar_map_presentation.htm"><b>15</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>16</b></a> <a href="../files/importing_tables.htm"><b>17</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>18</b></a> <a href="../primitive_types.htm"><b>19</b></a> <a href="../plot_3d_presentation.htm"><b>20</b></a> </nobr><br><a href="../files/about_structure_of_med_object.htm"><b>onedges</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>onfaces</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>onnodes</b></a> <br><a name="bms_OP"></a><a name="subkey_OP"></a><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>opacity</b></a> <br><nobr>opaque <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><nobr>open <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/importing_tables.htm"><b>2</b></a> <a href="../files/importing_med_objects.htm"><b>3</b></a> <a href="../primitive_types.htm"><b>4</b></a> </nobr><br><a href="../primitive_types.htm"><b>opengl</b></a> <br><a href="../plot2d_viewer.htm"><b>opens</b></a> <br><nobr>operation <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>2</b></a> <a href="../primitive_types.htm"><b>3</b></a> </nobr><br><nobr>operations <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../files/importing_med_objects.htm"><b>3</b></a> <a href="../plot2d_viewer.htm"><b>4</b></a> </nobr><br><a href="../clipping.htm"><b>opposite</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>optimization</b></a> <br><nobr>option <a href="../files/displaying_tables.htm"><b>1</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>2</b></a> <a href="../files/deformed_shape_presentation.htm"><b>3</b></a> <a href="../files/creating_curves.htm"><b>4</b></a> <a href="../files/animating_presentations.htm"><b>5</b></a> <a href="../files/vectors_presentation.htm"><b>6</b></a> <a href="../files/sweeping.htm"><b>7</b></a> <a href="../files/stream_lines_presentation.htm"><b>8</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>9</b></a> <a href="../files/importing_med_objects.htm"><b>10</b></a> <a href="../scalar_bar.htm"><b>11</b></a> </nobr><br><nobr>options <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../files/animating_presentations.htm"><b>2</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>3</b></a> <a href="../gauss_viewer.htm"><b>4</b></a> <a href="../plot2d_viewer.htm"><b>5</b></a> </nobr><br><a name="bms_OR"></a><a name="subkey_OR"></a><a href="../scalar_map_on_deformed_shape_presentation.htm"><b>ordinary</b></a> <br><a href="../scalar_bar.htm"><b>ordinate</b></a> <br><a href="../vtk_3d_viewer.htm"><b>orientate</b></a> <br><nobr>orientation <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../clipping.htm"><b>3</b></a> <a href="../files/scalar_map_presentation.htm"><b>4</b></a> <a href="../segmentation.htm"><b>5</b></a> <a href="../scalar_bar.htm"><b>6</b></a> <a href="../plot_3d_presentation.htm"><b>7</b></a> </nobr><br><a href="../clipping.htm"><b>oriented</b></a> <br><nobr>origin <a href="../files/scalar_map_presentation.htm"><b>1</b></a> <a href="../segmentation.htm"><b>2</b></a> <a href="../scalar_bar.htm"><b>3</b></a> </nobr><br><a name="bms_OT"></a><a name="subkey_OT"></a><a href="../files/importing_med_objects.htm"><b>otherwise</b></a> <br><nobr><a name="bms_OU"></a><a name="subkey_OU"></a>out <a href="../files/scalar_map_presentation.htm"><b>1</b></a> <a href="../vtk_3d_viewer.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>output</b></a> <br><a href="../segmentation.htm"><b>outside</b></a> <br><a name="bms_OV"></a><a name="subkey_OV"></a><a href="../files/getting_started.htm"><b>overview</b></a> <br><nobr><a name="bms_OW"></a><a name="subkey_OW"></a>own <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.htm"><b>2</b></a> </nobr><br>
-<br><br>
-<a name="bm_P"></a><a name="subkey_PA"></a><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>pagedn</b></a> <br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>pageup</b></a> <br><a href="../scalar_bar.htm"><b>palette</b></a> <br><nobr>panning <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../vtk_3d_viewer.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><nobr>parameter <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/stream_lines_presentation.htm"><b>3</b></a> <a href="../primitive_types.htm"><b>4</b></a> </nobr><br><nobr>parameters <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/deformed_shape_presentation.htm"><b>2</b></a> <a href="../files/cut_lines_resentation.htm"><b>3</b></a> <a href="../files/cut_lines_presentation.htm"><b>4</b></a> <a href="../files/creating_curves.htm"><b>5</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>6</b></a> <a href="../files/animating_presentations.htm"><b>7</b></a> <a href="../clipping.htm"><b>8</b></a> <a href="../gauss_viewer.htm"><b>9</b></a> <a href="../files/vectors_presentation.htm"><b>10</b></a> <a href="../files/stream_lines_presentation.htm"><b>11</b></a> <a href="../files/scalar_map_presentation.htm"><b>12</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>13</b></a> <a href="../files/getting_started.htm"><b>14</b></a> <a href="../vtk_3d_viewer.htm"><b>15</b></a> <a href="../segmentation.htm"><b>16</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>17</b></a> <a href="../scalar_bar.htm"><b>18</b></a> <a href="../primitive_types.htm"><b>19</b></a> <a href="../plot_3d_presentation.htm"><b>20</b></a> </nobr><br><a href="../picking.htm"><b>parent</b></a> <br><a href="../files/importing_med_objects.htm"><b>parses</b></a> <br><nobr>part <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../clipping.htm"><b>2</b></a> <a href="../segmentation.htm"><b>3</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>particle</b></a> <br><nobr>particular <a href="../files/creating_xy_plot.htm"><b>1</b></a> <a href="../files/about_structure_of_med_object.htm"><b>2</b></a> <a href="../files/stream_lines_presentation.htm"><b>3</b></a> </nobr><br><nobr>parts <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../vtk_3d_viewer.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><nobr>path <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/stream_lines_presentation.htm"><b>2</b></a> </nobr><br><a href="../animation_in_gauss_viewer.htm"><b>pause</b></a> <br><a href="../animation_in_gauss_viewer.htm"><b>paused</b></a> <br><a name="bms_PE"></a><a name="subkey_PE"></a><a href="../animation_in_gauss_viewer.htm"><b>per</b></a> <br><a href="../files/importing_med_objects.htm"><b>perform</b></a> <br><nobr>performed <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../animation_in_gauss_viewer.htm"><b>2</b></a> </nobr><br><a href="../files/about_structure_of_med_object.htm"><b>period</b></a> <br><a href="../files/animating_presentations.htm"><b>periods</b></a> <br><a href="../clipping.htm"><b>perpendicular</b></a> <br><a href="../files/displaying_hiding_presentations.htm"><b>personal</b></a> <br><br><br></p><p class="ftsbody" align="center"><a href="whlstf6.htm" target="_self" title="previous search group"><b>&gt;&gt;</b></a>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstf6.htm b/doc/salome/gui/VISU/whgdata/whlstf6.htm
deleted file mode 100755 (executable)
index edfe649..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words List</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-<p class="ftsbody" align="center"><a href="whlstf5.htm" target="_self" title="previous search group"><b>&lt;&lt;</b></a><br><br></p>
-<p class="ftsbody" >
-<a name="bms_PH"></a><a name="subkey_PH"></a><a href="../files/about_structure_of_med_object.htm"><b>physical</b></a> <br><nobr><a name="bms_PI"></a><a name="subkey_PI"></a>picking <a href="../gauss_viewer.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><a href="../files/animating_presentations.htm"><b>picture</b></a> <br><nobr>pictures <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> </nobr><br><a href="../primitive_types.htm"><b>pixels</b></a> <br><nobr><a name="bms_PL"></a><a name="subkey_PL"></a>place <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../vtk_3d_viewer.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><a href="../files/cut_lines_presentation.htm"><b>placed</b></a> <br><a href="../scalar_bar.htm"><b>placement</b></a> <br><nobr>plane <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../clipping.htm"><b>2</b></a> <a href="../gauss_viewer.htm"><b>3</b></a> <a href="../segmentation.htm"><b>4</b></a> <a href="../plot_3d_presentation.htm"><b>5</b></a> </nobr><br><nobr>planes <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>3</b></a> <a href="../clipping.htm"><b>4</b></a> <a href="../segmentation.htm"><b>5</b></a> <a href="../plot_3d_presentation.htm"><b>6</b></a> </nobr><br><a href="../plot_3d_presentation.htm"><b>plate</b></a> <br><nobr>platform <a href="../files/running_visu.htm"><b>1</b></a> <a href="../files/introduction.htm"><b>2</b></a> </nobr><br><a href="../animation_in_gauss_viewer.htm"><b>play</b></a> <br><nobr>plot <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../files/creating_curves.htm"><b>3</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>4</b></a> <a href="../files/getting_started.htm"><b>5</b></a> <a href="../plot_3d_presentation.htm"><b>6</b></a> <a href="../plot2d_viewer.htm"><b>7</b></a> </nobr><br><nobr>plot2d <a href="../files/creating_xy_plot.htm"><b>1</b></a> <a href="../files/creating_curves.htm"><b>2</b></a> </nobr><br><a href="../files/creating_curves.htm"><b>plot2dview</b></a> <br><nobr>plots <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>3</b></a> <a href="../files/introduction.htm"><b>4</b></a> <a href="../plot2d_viewer.htm"><b>5</b></a> </nobr><br><nobr><a name="bms_PN"></a><a name="subkey_PN"></a>png <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../vtk_3d_viewer.htm"><b>3</b></a> <a href="../primitive_types.htm"><b>4</b></a> <a href="../plot2d_viewer.htm"><b>5</b></a> </nobr><br><nobr><a name="bms_PO"></a><a name="subkey_PO"></a>point <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>2</b></a> <a href="../files/getting_elements_attributes.htm"><b>3</b></a> <a href="../vtk_3d_viewer.htm"><b>4</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>5</b></a> <a href="../scalar_bar.htm"><b>6</b></a> <a href="../primitive_types.htm"><b>7</b></a> <a href="../plot2d_viewer.htm"><b>8</b></a> <a href="../picking.htm"><b>9</b></a> </nobr><br><a href="../files/vectors_presentation.htm"><b>pointers</b></a> <br><nobr>points <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../files/about_structure_of_med_object.htm"><b>2</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>3</b></a> <a href="../gauss_viewer.htm"><b>4</b></a> <a href="../gauss_points_presentation.htm"><b>5</b></a> <a href="../files/stream_lines_presentation.htm"><b>6</b></a> <a href="../files/getting_elements_attributes.htm"><b>7</b></a> <a href="../vtk_3d_viewer.htm"><b>8</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>9</b></a> <a href="../segmentation.htm"><b>10</b></a> <a href="../scalar_bar.htm"><b>11</b></a> <a href="../primitive_types.htm"><b>12</b></a> <a href="../plot2d_viewer.htm"><b>13</b></a> <a href="../picking.htm"><b>14</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>polyline</b></a> <br><nobr>pop <a href="../files/displaying_tables.htm"><b>1</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>2</b></a> <a href="../files/deformed_shape_presentation.htm"><b>3</b></a> <a href="../files/cut_lines_resentation.htm"><b>4</b></a> <a href="../files/cut_lines_presentation.htm"><b>5</b></a> <a href="../files/creating_xy_plot.htm"><b>6</b></a> <a href="../files/creating_presentations.htm"><b>7</b></a> <a href="../files/creating_field_presentations.htm"><b>8</b></a> <a href="../files/creating_curves.htm"><b>9</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>10</b></a> <a href="../files/animating_presentations.htm"><b>11</b></a> <a href="../creating_tables.htm"><b>12</b></a> <a href="../gauss_points_presentation.htm"><b>13</b></a> <a href="../files/vectors_presentation.htm"><b>14</b></a> <a href="../files/sweeping.htm"><b>15</b></a> <a href="../files/stream_lines_presentation.htm"><b>16</b></a> <a href="../files/scalar_map_presentation.htm"><b>17</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>18</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>19</b></a> <a href="../plot_3d_presentation.htm"><b>20</b></a> </nobr><br><nobr>position <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../gauss_viewer.htm"><b>3</b></a> <a href="../files/vectors_presentation.htm"><b>4</b></a> <a href="../vtk_3d_viewer.htm"><b>5</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>6</b></a> <a href="../plot_3d_presentation.htm"><b>7</b></a> <a href="../plot2d_viewer.htm"><b>8</b></a> <a href="../picking.htm"><b>9</b></a> </nobr><br><nobr>positions <a href="../clipping.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><a href="../scalar_bar.htm"><b>positive</b></a> <br><a href="../files/getting_elements_attributes.htm"><b>possesses</b></a> <br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>possessing</b></a> <br><nobr>possibility <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>2</b></a> </nobr><br><nobr>possible <a href="../files/creating_field_presentations.htm"><b>1</b></a> <a href="../clipping.htm"><b>2</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>3</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>4</b></a> <a href="../segmentation.htm"><b>5</b></a> </nobr><br><nobr>post <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../files/creating_field_presentations.htm"><b>3</b></a> <a href="../files/creating_curves.htm"><b>4</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>5</b></a> <a href="../files/animating_presentations.htm"><b>6</b></a> <a href="../files/about_tables.htm"><b>7</b></a> <a href="../files/about_structure_of_med_object.htm"><b>8</b></a> <a href="../creating_tables.htm"><b>9</b></a> <a href="../animation_in_gauss_viewer.htm"><b>10</b></a> <a href="../gauss_viewer.htm"><b>11</b></a> <a href="../files/sweeping.htm"><b>12</b></a> <a href="../files/stream_lines_presentation.htm"><b>13</b></a> <a href="../files/scalar_map_presentation.htm"><b>14</b></a> <a href="../files/running_visu.htm"><b>15</b></a> <a href="../files/introduction.htm"><b>16</b></a> <a href="../files/importing_tables.htm"><b>17</b></a> <a href="../files/importing_med_objects.htm"><b>18</b></a> <a href="../files/getting_started.htm"><b>19</b></a> <a href="../vtk_3d_viewer.htm"><b>20</b></a> <a href="../plot2d_viewer.htm"><b>21</b></a> </nobr><br><nobr><a name="bms_PR"></a><a name="subkey_PR"></a>preferences <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>2</b></a> <a href="../files/scalar_map_presentation.htm"><b>3</b></a> <a href="../files/running_visu.htm"><b>4</b></a> <a href="../files/importing_med_objects.htm"><b>5</b></a> <a href="../primitive_types.htm"><b>6</b></a> <a href="../picking.htm"><b>7</b></a> </nobr><br><a href="../files/scalar_map_presentation.htm"><b>present</b></a> <br><nobr>presentation <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/deformed_shape_presentation.htm"><b>2</b></a> <a href="../files/cut_lines_resentation.htm"><b>3</b></a> <a href="../files/cut_lines_presentation.htm"><b>4</b></a> <a href="../files/creating_presentations.htm"><b>5</b></a> <a href="../files/creating_field_presentations.htm"><b>6</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>7</b></a> <a href="../files/animating_presentations.htm"><b>8</b></a> <a href="../files/about_structure_of_med_object.htm"><b>9</b></a> <a href="../creating_tables.htm"><b>10</b></a> <a href="../clipping.htm"><b>11</b></a> <a href="../gauss_viewer.htm"><b>12</b></a> <a href="../gauss_points_presentation.htm"><b>13</b></a> <a href="../files/vectors_presentation.htm"><b>14</b></a> <a href="../files/sweeping.htm"><b>15</b></a> <a href="../files/stream_lines_presentation.htm"><b>16</b></a> <a href="../files/scaling_presentations.htm"><b>17</b></a> <a href="../files/scalar_map_presentation.htm"><b>18</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>19</b></a> <a href="../files/getting_started.htm"><b>20</b></a> <a href="../files/getting_elements_attributes.htm"><b>21</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>22</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>23</b></a> <a href="../plot_3d_presentation.htm"><b>24</b></a> <a href="../picking.htm"><b>25</b></a> </nobr><br><nobr>presentations <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/creating_field_presentations.htm"><b>3</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>4</b></a> <a href="../files/animating_presentations.htm"><b>5</b></a> <a href="../files/about_tables.htm"><b>6</b></a> <a href="../files/about_structure_of_med_object.htm"><b>7</b></a> <a href="../creating_tables.htm"><b>8</b></a> <a href="../animation_in_gauss_viewer.htm"><b>9</b></a> <a href="../gauss_viewer.htm"><b>10</b></a> <a href="../files/stream_lines_presentation.htm"><b>11</b></a> <a href="../files/scaling_presentations.htm"><b>12</b></a> <a href="../files/scalar_map_presentation.htm"><b>13</b></a> <a href="../files/running_visu.htm"><b>14</b></a> <a href="../files/introduction.htm"><b>15</b></a> <a href="../files/getting_started.htm"><b>16</b></a> <a href="../vtk_3d_viewer.htm"><b>17</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>18</b></a> <a href="../segmentation.htm"><b>19</b></a> <a href="../scalar_bar.htm"><b>20</b></a> <a href="../primitive_types.htm"><b>21</b></a> <a href="../picking.htm"><b>22</b></a> </nobr><br><a href="../files/animating_presentations.htm"><b>presents</b></a> <br><nobr>press <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../animation_in_gauss_viewer.htm"><b>2</b></a> <a href="../gauss_points_presentation.htm"><b>3</b></a> <a href="../picking.htm"><b>4</b></a> </nobr><br><nobr>pressed <a href="../gauss_viewer.htm"><b>1</b></a> <a href="../vtk_3d_viewer.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><a href="../scalar_bar.htm"><b>presume</b></a> <br><nobr>preview <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../clipping.htm"><b>3</b></a> <a href="../plot_3d_presentation.htm"><b>4</b></a> </nobr><br><a href="../files/animating_presentations.htm"><b>previous</b></a> <br><nobr>previously <a href="../files/creating_xy_plot.htm"><b>1</b></a> <a href="../files/about_tables.htm"><b>2</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>3</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>4</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>5</b></a> </nobr><br><a href="../primitive_types.htm"><b>primitive</b></a> <br><nobr>primitives <a href="../gauss_points_presentation.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> <a href="../segmentation.htm"><b>3</b></a> <a href="../primitive_types.htm"><b>4</b></a> </nobr><br><nobr>pro <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../files/creating_field_presentations.htm"><b>3</b></a> <a href="../files/creating_curves.htm"><b>4</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>5</b></a> <a href="../files/animating_presentations.htm"><b>6</b></a> <a href="../files/about_tables.htm"><b>7</b></a> <a href="../files/about_structure_of_med_object.htm"><b>8</b></a> <a href="../creating_tables.htm"><b>9</b></a> <a href="../animation_in_gauss_viewer.htm"><b>10</b></a> <a href="../gauss_viewer.htm"><b>11</b></a> <a href="../files/sweeping.htm"><b>12</b></a> <a href="../files/stream_lines_presentation.htm"><b>13</b></a> <a href="../files/scalar_map_presentation.htm"><b>14</b></a> <a href="../files/running_visu.htm"><b>15</b></a> <a href="../files/introduction.htm"><b>16</b></a> <a href="../files/importing_tables.htm"><b>17</b></a> <a href="../files/importing_med_objects.htm"><b>18</b></a> <a href="../files/getting_started.htm"><b>19</b></a> <a href="../vtk_3d_viewer.htm"><b>20</b></a> <a href="../plot2d_viewer.htm"><b>21</b></a> </nobr><br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>problem</b></a> <br><a href="../files/cut_lines_presentation.htm"><b>procedure</b></a> <br><nobr>process <a href="../files/sweeping.htm"><b>1</b></a> <a href="../files/importing_med_objects.htm"><b>2</b></a> </nobr><br><nobr>processed <a href="../files/importing_med_objects.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> </nobr><br><nobr>processing <a href="../files/introduction.htm"><b>1</b></a> <a href="../files/importing_med_objects.htm"><b>2</b></a> </nobr><br><a href="../files/introduction.htm"><b>produced</b></a> <br><a href="../animation_in_gauss_viewer.htm"><b>produces</b></a> <br><nobr>progress <a href="../files/importing_med_objects.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> </nobr><br><a href="../scalar_bar.htm"><b>progression</b></a> <br><a href="../animation_in_gauss_viewer.htm"><b>progressive</b></a> <br><a href="../primitive_types.htm"><b>prompts</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>propagation</b></a> <br><nobr>properties <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> <a href="../files/animating_presentations.htm"><b>3</b></a> <a href="../animation_in_gauss_viewer.htm"><b>4</b></a> <a href="../gauss_viewer.htm"><b>5</b></a> <a href="../gauss_points_presentation.htm"><b>6</b></a> <a href="../files/vectors_presentation.htm"><b>7</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>8</b></a> <a href="../files/scalar_map_presentation.htm"><b>9</b></a> <a href="../vtk_3d_viewer.htm"><b>10</b></a> <a href="../scalar_bar.htm"><b>11</b></a> <a href="../plot2d_viewer.htm"><b>12</b></a> </nobr><br><a href="../files/animating_presentations.htm"><b>proportional</b></a> <br><nobr>provides <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>2</b></a> <a href="../files/introduction.htm"><b>3</b></a> </nobr><br><nobr><a name="bms_PS"></a><a name="subkey_PS"></a>pseudo <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../files/sweeping.htm"><b>2</b></a> </nobr><br><a name="bms_PU"></a><a name="subkey_PU"></a><a href="../files/animating_presentations.htm"><b>publish</b></a> <br><a href="../files/animating_presentations.htm"><b>published</b></a> <br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>pull</b></a> <br><a href="../primitive_types.htm"><b>purpose</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>purposes</b></a> <br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>push</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>put</b></a> <br><a name="bms_PY"></a><a name="subkey_PY"></a><a href="../picking.htm"><b>pyramid</b></a> <br><a href="../picking.htm"><b>pyramids</b></a> <br><a href="../files/about_tables.htm"><b>python</b></a> <br>
-<br><br>
-<a name="bm_Q"></a><a name="subkey_QU"></a><a href="../files/about_structure_of_med_object.htm"><b>quadrangles</b></a> <br><a href="../animation_in_gauss_viewer.htm"><b>quality</b></a> <br><nobr>quit <a href="../files/creating_xy_plot.htm"><b>1</b></a> <a href="../gauss_points_presentation.htm"><b>2</b></a> <a href="../files/scaling_presentations.htm"><b>3</b></a> </nobr><br>
-<br><br>
-<nobr><a name="bm_R"></a><a name="subkey_RA"></a>radio <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> <a href="../plot_3d_presentation.htm"><b>3</b></a> </nobr><br><a href="../segmentation.htm"><b>radius</b></a> <br><nobr>rainbow <a href="../types_of_gauss_points_presentations.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> </nobr><br><nobr>range <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> <a href="../files/animating_presentations.htm"><b>3</b></a> <a href="../files/vectors_presentation.htm"><b>4</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>5</b></a> <a href="../files/scalar_map_presentation.htm"><b>6</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>7</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>8</b></a> <a href="../scalar_bar.htm"><b>9</b></a> </nobr><br><a href="../files/about_tables.htm"><b>ranged</b></a> <br><a href="../picking.htm"><b>ranges</b></a> <br><nobr>ranging <a href="../types_of_gauss_points_presentations.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> <a href="../plot_3d_presentation.htm"><b>3</b></a> <a href="../picking.htm"><b>4</b></a> </nobr><br><a href="../files/about_tables.htm"><b>rarefied</b></a> <br><nobr>rate <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../files/importing_med_objects.htm"><b>2</b></a> </nobr><br><nobr>ratio <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>3</b></a> <a href="../picking.htm"><b>4</b></a> </nobr><br><nobr><a name="bms_RE"></a><a name="subkey_RE"></a>real <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> <a href="../segmentation.htm"><b>3</b></a> <a href="../plot2d_viewer.htm"><b>4</b></a> </nobr><br><a href="../animation_in_gauss_viewer.htm"><b>record</b></a> <br><a href="../animation_in_gauss_viewer.htm"><b>recorded</b></a> <br><nobr>recording <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> </nobr><br><a href="../animation_in_gauss_viewer.htm"><b>records</b></a> <br><a href="../files/creating_curves.htm"><b>rectangle</b></a> <br><a href="../files/importing_med_objects.htm"><b>rectangles</b></a> <br><a href="../scalar_bar.htm"><b>red</b></a> <br><a href="../vtk_3d_viewer.htm"><b>redefine</b></a> <br><nobr>reference <a href="../files/about_tables.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> </nobr><br><a href="../files/creating_xy_plot.htm"><b>references</b></a> <br><a href="../scalar_bar.htm"><b>refining</b></a> <br><a href="../files/sweeping.htm"><b>regarding</b></a> <br><a href="../animation_in_gauss_viewer.htm"><b>regimes</b></a> <br><nobr>regular <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> </nobr><br><a href="../files/running_visu.htm"><b>related</b></a> <br><nobr>relative <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> <a href="../primitive_types.htm"><b>3</b></a> <a href="../plot_3d_presentation.htm"><b>4</b></a> </nobr><br><nobr>relevant <a href="../files/scalar_map_presentation.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> </nobr><br><a href="../plot_3d_presentation.htm"><b>relief</b></a> <br><a href="../primitive_types.htm"><b>remain</b></a> <br><nobr>remote <a href="../vtk_3d_viewer.htm"><b>1</b></a> <a href="../plot2d_viewer.htm"><b>2</b></a> </nobr><br><a href="../files/creating_curves.htm"><b>remove</b></a> <br><nobr>rename <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> <a href="../gauss_viewer.htm"><b>3</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>4</b></a> </nobr><br><nobr>render <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> </nobr><br><nobr>rendering <a href="../types_of_gauss_points_presentations.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> <a href="../primitive_types.htm"><b>3</b></a> </nobr><br><nobr>represent <a href="../files/about_tables.htm"><b>1</b></a> <a href="../files/about_structure_of_med_object.htm"><b>2</b></a> </nobr><br><nobr>representation <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>3</b></a> <a href="../plot2d_viewer.htm"><b>4</b></a> </nobr><br><a href="../files/about_structure_of_med_object.htm"><b>representations</b></a> <br><a href="../types_of_gauss_points_presentations.htm"><b>representative</b></a> <br><nobr>represented <a href="../files/stream_lines_presentation.htm"><b>1</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>2</b></a> <a href="../vtk_3d_viewer.htm"><b>3</b></a> <a href="../plot_3d_presentation.htm"><b>4</b></a> <a href="../plot2d_viewer.htm"><b>5</b></a> </nobr><br><nobr>representing <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../files/about_structure_of_med_object.htm"><b>2</b></a> <a href="../files/vectors_presentation.htm"><b>3</b></a> <a href="../files/scalar_map_presentation.htm"><b>4</b></a> <a href="../vtk_3d_viewer.htm"><b>5</b></a> </nobr><br><nobr>represents <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../files/about_structure_of_med_object.htm"><b>2</b></a> <a href="../vtk_3d_viewer.htm"><b>3</b></a> <a href="../plot2d_viewer.htm"><b>4</b></a> </nobr><br><nobr>required <a href="../files/displaying_tables.htm"><b>1</b></a> <a href="../files/creating_field_presentations.htm"><b>2</b></a> <a href="../files/creating_curves.htm"><b>3</b></a> <a href="../files/getting_elements_attributes.htm"><b>4</b></a> </nobr><br><nobr>requires <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../files/stream_lines_presentation.htm"><b>2</b></a> </nobr><br><nobr>reset <a href="../files/scaling_presentations.htm"><b>1</b></a> <a href="../vtk_3d_viewer.htm"><b>2</b></a> </nobr><br><nobr>resizes <a href="../vtk_3d_viewer.htm"><b>1</b></a> <a href="../plot2d_viewer.htm"><b>2</b></a> </nobr><br><a href="../primitive_types.htm"><b>resolution</b></a> <br><nobr>resources <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../files/stream_lines_presentation.htm"><b>2</b></a> </nobr><br><nobr>respective <a href="../files/importing_med_objects.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> </nobr><br><nobr>respectively <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> </nobr><br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>restore</b></a> <br><a href="../vtk_3d_viewer.htm"><b>restores</b></a> <br><nobr>result <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> <a href="../picking.htm"><b>3</b></a> </nobr><br><nobr>resulting <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/about_structure_of_med_object.htm"><b>2</b></a> <a href="../plot_3d_presentation.htm"><b>3</b></a> </nobr><br><nobr>results <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> <a href="../segmentation.htm"><b>3</b></a> <a href="../scalar_bar.htm"><b>4</b></a> <a href="../primitive_types.htm"><b>5</b></a> </nobr><br><nobr>return <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../files/animating_presentations.htm"><b>2</b></a> <a href="../gauss_viewer.htm"><b>3</b></a> </nobr><br><a href="../files/cut_lines_presentation.htm"><b>reuses</b></a> <br><a href="../plot2d_viewer.htm"><b>reveals</b></a> <br><a href="../clipping.htm"><b>reverse</b></a> <br><br><br></p><p class="ftsbody" align="center"><a href="whlstf7.htm" target="_self" title="previous search group"><b>&gt;&gt;</b></a>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstf7.htm b/doc/salome/gui/VISU/whgdata/whlstf7.htm
deleted file mode 100755 (executable)
index ff4ee7f..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-<html>
-<head>
-<title>Search Words List</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-<p class="ftsbody" align="center"><a href="whlstf6.htm" target="_self" title="previous search group"><b>&lt;&lt;</b></a><br><br></p>
-<p class="ftsbody" >
-<nobr><a name="bms_RI"></a><a name="subkey_RI"></a>right <a href="../files/displaying_tables.htm"><b>1</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>2</b></a> <a href="../files/deformed_shape_presentation.htm"><b>3</b></a> <a href="../files/cut_lines_resentation.htm"><b>4</b></a> <a href="../files/cut_lines_presentation.htm"><b>5</b></a> <a href="../files/creating_xy_plot.htm"><b>6</b></a> <a href="../files/creating_presentations.htm"><b>7</b></a> <a href="../files/creating_field_presentations.htm"><b>8</b></a> <a href="../files/creating_curves.htm"><b>9</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>10</b></a> <a href="../files/animating_presentations.htm"><b>11</b></a> <a href="../creating_tables.htm"><b>12</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>13</b></a> <a href="../gauss_viewer.htm"><b>14</b></a> <a href="../gauss_points_presentation.htm"><b>15</b></a> <a href="../files/vectors_presentation.htm"><b>16</b></a> <a href="../files/sweeping.htm"><b>17</b></a> <a href="../files/stream_lines_presentation.htm"><b>18</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>19</b></a> <a href="../files/scaling_presentations.htm"><b>20</b></a> <a href="../files/scalar_map_presentation.htm"><b>21</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>22</b></a> <a href="../files/importing_tables.htm"><b>23</b></a> <a href="../files/importing_med_objects.htm"><b>24</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>25</b></a> <a href="../scalar_bar.htm"><b>26</b></a> <a href="../plot_3d_presentation.htm"><b>27</b></a> <a href="../plot2d_viewer.htm"><b>28</b></a> </nobr><br><a href="../files/creating_curves.htm"><b>rightward</b></a> <br><nobr><a name="bms_RO"></a><a name="subkey_RO"></a>rotate <a href="../clipping.htm"><b>1</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>2</b></a> <a href="../gauss_viewer.htm"><b>3</b></a> <a href="../vtk_3d_viewer.htm"><b>4</b></a> </nobr><br><a href="../segmentation.htm"><b>rotating</b></a> <br><nobr>rotation <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../clipping.htm"><b>3</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>4</b></a> <a href="../gauss_viewer.htm"><b>5</b></a> <a href="../vtk_3d_viewer.htm"><b>6</b></a> <a href="../plot_3d_presentation.htm"><b>7</b></a> </nobr><br><nobr>rotations <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../plot_3d_presentation.htm"><b>3</b></a> </nobr><br><nobr>row <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../files/about_tables.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_RU"></a><a name="subkey_RU"></a>running <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/running_visu.htm"><b>2</b></a> </nobr><br>
-<br><br>
-<nobr><a name="bm_S"></a><a name="subkey_S{"></a>s <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_SA"></a><a name="subkey_SA"></a>salome <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>2</b></a> <a href="../gauss_viewer.htm"><b>3</b></a> <a href="../files/scaling_presentations.htm"><b>4</b></a> <a href="../files/scalar_map_presentation.htm"><b>5</b></a> <a href="../files/running_visu.htm"><b>6</b></a> <a href="../files/introduction.htm"><b>7</b></a> <a href="../primitive_types.htm"><b>8</b></a> </nobr><br><nobr>same <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/creating_curves.htm"><b>3</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>4</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>5</b></a> <a href="../gauss_viewer.htm"><b>6</b></a> <a href="../files/scalar_map_presentation.htm"><b>7</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>8</b></a> <a href="../segmentation.htm"><b>9</b></a> </nobr><br><nobr>save <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../animation_in_gauss_viewer.htm"><b>2</b></a> <a href="../gauss_viewer.htm"><b>3</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>4</b></a> <a href="../files/scalar_map_presentation.htm"><b>5</b></a> <a href="../scalar_bar.htm"><b>6</b></a> <a href="../plot2d_viewer.htm"><b>7</b></a> </nobr><br><a href="../files/animating_presentations.htm"><b>saves</b></a> <br><a href="../animation_in_gauss_viewer.htm"><b>saving</b></a> <br><nobr><a name="bms_SC"></a><a name="subkey_SC"></a>scalar <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_resentation.htm"><b>2</b></a> <a href="../files/cut_lines_presentation.htm"><b>3</b></a> <a href="../files/creating_field_presentations.htm"><b>4</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>5</b></a> <a href="../files/animating_presentations.htm"><b>6</b></a> <a href="../files/about_structure_of_med_object.htm"><b>7</b></a> <a href="../creating_tables.htm"><b>8</b></a> <a href="../gauss_points_presentation.htm"><b>9</b></a> <a href="../files/vectors_presentation.htm"><b>10</b></a> <a href="../files/stream_lines_presentation.htm"><b>11</b></a> <a href="../files/scalar_map_presentation.htm"><b>12</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>13</b></a> <a href="../files/getting_elements_attributes.htm"><b>14</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>15</b></a> <a href="../segmentation.htm"><b>16</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>17</b></a> <a href="../scalar_bar.htm"><b>18</b></a> <a href="../primitive_types.htm"><b>19</b></a> <a href="../plot_3d_presentation.htm"><b>20</b></a> <a href="../picking.htm"><b>21</b></a> </nobr><br><nobr>scale <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/vectors_presentation.htm"><b>2</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>3</b></a> <a href="../files/scalar_map_presentation.htm"><b>4</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>5</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>6</b></a> <a href="../scalar_bar.htm"><b>7</b></a> <a href="../plot_3d_presentation.htm"><b>8</b></a> <a href="../plot2d_viewer.htm"><b>9</b></a> </nobr><br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>scales</b></a> <br><nobr>scaling <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/vectors_presentation.htm"><b>2</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>3</b></a> <a href="../files/scaling_presentations.htm"><b>4</b></a> <a href="../files/scalar_map_presentation.htm"><b>5</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>6</b></a> <a href="../plot_3d_presentation.htm"><b>7</b></a> <a href="../plot2d_viewer.htm"><b>8</b></a> </nobr><br><nobr>scene <a href="../vtk_3d_viewer.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> <a href="../scalar_bar.htm"><b>3</b></a> <a href="../primitive_types.htm"><b>4</b></a> <a href="../plot2d_viewer.htm"><b>5</b></a> </nobr><br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>screen</b></a> <br><a href="../files/about_tables.htm"><b>script</b></a> <br><a name="bms_SE"></a><a name="subkey_SE"></a><a href="../files/importing_med_objects.htm"><b>search</b></a> <br><nobr>second <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../segmentation.htm"><b>2</b></a> <a href="../scalar_bar.htm"><b>3</b></a> </nobr><br><a href="../segmentation.htm"><b>secondary</b></a> <br><nobr>section <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../clipping.htm"><b>2</b></a> </nobr><br><nobr>see <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/creating_field_presentations.htm"><b>3</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>4</b></a> <a href="../files/animating_presentations.htm"><b>5</b></a> <a href="../files/about_tables.htm"><b>6</b></a> <a href="../files/about_structure_of_med_object.htm"><b>7</b></a> <a href="../animation_in_gauss_viewer.htm"><b>8</b></a> <a href="../files/vectors_presentation.htm"><b>9</b></a> <a href="../files/stream_lines_presentation.htm"><b>10</b></a> <a href="../files/running_visu.htm"><b>11</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>12</b></a> <a href="../files/importing_med_objects.htm"><b>13</b></a> <a href="../vtk_3d_viewer.htm"><b>14</b></a> <a href="../segmentation.htm"><b>15</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>16</b></a> <a href="../primitive_types.htm"><b>17</b></a> <a href="../plot_3d_presentation.htm"><b>18</b></a> <a href="../plot2d_viewer.htm"><b>19</b></a> </nobr><br><a href="../scalar_bar.htm"><b>seen</b></a> <br><nobr>segmentation <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../segmentation.htm"><b>3</b></a> <a href="../primitive_types.htm"><b>4</b></a> </nobr><br><nobr>segments <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../files/stream_lines_presentation.htm"><b>2</b></a> </nobr><br><nobr>select <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/deformed_shape_presentation.htm"><b>2</b></a> <a href="../files/cut_lines_resentation.htm"><b>3</b></a> <a href="../files/cut_lines_presentation.htm"><b>4</b></a> <a href="../files/creating_xy_plot.htm"><b>5</b></a> <a href="../files/creating_field_presentations.htm"><b>6</b></a> <a href="../files/creating_curves.htm"><b>7</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>8</b></a> <a href="../files/animating_presentations.htm"><b>9</b></a> <a href="../creating_tables.htm"><b>10</b></a> <a href="../clipping.htm"><b>11</b></a> <a href="../gauss_points_presentation.htm"><b>12</b></a> <a href="../files/vectors_presentation.htm"><b>13</b></a> <a href="../files/sweeping.htm"><b>14</b></a> <a href="../files/stream_lines_presentation.htm"><b>15</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>16</b></a> <a href="../files/scaling_presentations.htm"><b>17</b></a> <a href="../files/scalar_map_presentation.htm"><b>18</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>19</b></a> <a href="../files/importing_tables.htm"><b>20</b></a> <a href="../files/importing_med_objects.htm"><b>21</b></a> <a href="../vtk_3d_viewer.htm"><b>22</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>23</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>24</b></a> <a href="../plot_3d_presentation.htm"><b>25</b></a> <a href="../plot2d_viewer.htm"><b>26</b></a> </nobr><br><a href="../clipping.htm"><b>selectable</b></a> <br><nobr>selected <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/creating_xy_plot.htm"><b>3</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>4</b></a> <a href="../files/animating_presentations.htm"><b>5</b></a> <a href="../gauss_viewer.htm"><b>6</b></a> <a href="../files/vectors_presentation.htm"><b>7</b></a> <a href="../files/stream_lines_presentation.htm"><b>8</b></a> <a href="../files/scalar_map_presentation.htm"><b>9</b></a> <a href="../files/importing_med_objects.htm"><b>10</b></a> <a href="../files/getting_elements_attributes.htm"><b>11</b></a> <a href="../vtk_3d_viewer.htm"><b>12</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>13</b></a> <a href="../scalar_bar.htm"><b>14</b></a> <a href="../plot_3d_presentation.htm"><b>15</b></a> <a href="../picking.htm"><b>16</b></a> </nobr><br><a href="../picking.htm"><b>selecting</b></a> <br><nobr>selection <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../files/getting_elements_attributes.htm"><b>3</b></a> <a href="../picking.htm"><b>4</b></a> </nobr><br><nobr>semi <a href="../segmentation.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>sensitive</b></a> <br><nobr>separate <a href="../files/displaying_tables.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> </nobr><br><nobr>separately <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../plot2d_viewer.htm"><b>2</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>serve</b></a> <br><a href="../animation_in_gauss_viewer.htm"><b>session</b></a> <br><a href="../files/scalar_map_presentation.htm"><b>sessions</b></a> <br><nobr>set <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/deformed_shape_presentation.htm"><b>2</b></a> <a href="../files/cut_lines_resentation.htm"><b>3</b></a> <a href="../files/cut_lines_presentation.htm"><b>4</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>5</b></a> <a href="../files/animating_presentations.htm"><b>6</b></a> <a href="../clipping.htm"><b>7</b></a> <a href="../animation_in_gauss_viewer.htm"><b>8</b></a> <a href="../gauss_points_presentation.htm"><b>9</b></a> <a href="../files/vectors_presentation.htm"><b>10</b></a> <a href="../files/stream_lines_presentation.htm"><b>11</b></a> <a href="../files/scalar_map_presentation.htm"><b>12</b></a> <a href="../files/running_visu.htm"><b>13</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>14</b></a> <a href="../files/importing_med_objects.htm"><b>15</b></a> <a href="../files/getting_started.htm"><b>16</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>17</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>18</b></a> <a href="../primitive_types.htm"><b>19</b></a> <a href="../plot_3d_presentation.htm"><b>20</b></a> <a href="../picking.htm"><b>21</b></a> </nobr><br><nobr>setting <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_resentation.htm"><b>2</b></a> <a href="../files/cut_lines_presentation.htm"><b>3</b></a> <a href="../files/vectors_presentation.htm"><b>4</b></a> <a href="../files/stream_lines_presentation.htm"><b>5</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>6</b></a> <a href="../files/scalar_map_presentation.htm"><b>7</b></a> <a href="../files/running_visu.htm"><b>8</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>9</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>10</b></a> <a href="../primitive_types.htm"><b>11</b></a> <a href="../plot_3d_presentation.htm"><b>12</b></a> </nobr><br><nobr>settings <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>3</b></a> <a href="../files/importing_med_objects.htm"><b>4</b></a> <a href="../plot2d_viewer.htm"><b>5</b></a> </nobr><br><a href="../files/animating_presentations.htm"><b>setup</b></a> <br><a name="bms_SH"></a><a name="subkey_SH"></a><a href="../primitive_types.htm"><b>shader</b></a> <br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>shading</b></a> <br><nobr>shape <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_resentation.htm"><b>2</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>3</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>4</b></a> <a href="../primitive_types.htm"><b>5</b></a> </nobr><br><a href="../files/deformed_shape_presentation.htm"><b>shifting</b></a> <br><nobr>should <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/creating_curves.htm"><b>3</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>4</b></a> <a href="../files/about_structure_of_med_object.htm"><b>5</b></a> <a href="../clipping.htm"><b>6</b></a> <a href="../files/sweeping.htm"><b>7</b></a> <a href="../files/running_visu.htm"><b>8</b></a> <a href="../files/importing_med_objects.htm"><b>9</b></a> <a href="../files/getting_elements_attributes.htm"><b>10</b></a> <a href="../plot_3d_presentation.htm"><b>11</b></a> </nobr><br><nobr>show <a href="../files/displaying_tables.htm"><b>1</b></a> <a href="../files/cut_lines_resentation.htm"><b>2</b></a> <a href="../files/cut_lines_presentation.htm"><b>3</b></a> <a href="../clipping.htm"><b>4</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>5</b></a> <a href="../files/importing_med_objects.htm"><b>6</b></a> <a href="../vtk_3d_viewer.htm"><b>7</b></a> <a href="../plot2d_viewer.htm"><b>8</b></a> </nobr><br><nobr>shows <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/importing_med_objects.htm"><b>2</b></a> <a href="../vtk_3d_viewer.htm"><b>3</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>4</b></a> <a href="../segmentation.htm"><b>5</b></a> <a href="../scalar_bar.htm"><b>6</b></a> <a href="../picking.htm"><b>7</b></a> </nobr><br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>shrink</b></a> <br><nobr><a name="bms_SI"></a><a name="subkey_SI"></a>side <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> </nobr><br><nobr>similar <a href="../files/stream_lines_presentation.htm"><b>1</b></a> <a href="../segmentation.htm"><b>2</b></a> </nobr><br><a href="../primitive_types.htm"><b>simple</b></a> <br><a href="../files/animating_presentations.htm"><b>simultaneous</b></a> <br><nobr>simultaneously <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>3</b></a> <a href="../scalar_bar.htm"><b>4</b></a> </nobr><br><nobr>size <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../files/stream_lines_presentation.htm"><b>2</b></a> <a href="../files/getting_elements_attributes.htm"><b>3</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>4</b></a> <a href="../primitive_types.htm"><b>5</b></a> <a href="../plot2d_viewer.htm"><b>6</b></a> <a href="../picking.htm"><b>7</b></a> </nobr><br><a href="../primitive_types.htm"><b>sizes</b></a> <br><a name="bms_SL"></a><a name="subkey_SL"></a><a href="../picking.htm"><b>slow</b></a> <br><nobr><a name="bms_SM"></a><a name="subkey_SM"></a>small <a href="../files/vectors_presentation.htm"><b>1</b></a> <a href="../vtk_3d_viewer.htm"><b>2</b></a> </nobr><br><nobr>smaller <a href="../files/stream_lines_presentation.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> </nobr><br><a href="../types_of_gauss_points_presentations.htm"><b>smallest</b></a> <br><a href="../plot_3d_presentation.htm"><b>smooth</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>smoother</b></a> <br><nobr>smoothness <a href="../files/stream_lines_presentation.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_SO"></a><a name="subkey_SO"></a>so <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> <a href="../primitive_types.htm"><b>3</b></a> <a href="../picking.htm"><b>4</b></a> </nobr><br><a href="../files/creating_curves.htm"><b>solid</b></a> <br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>solve</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>sometimes</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>source</b></a> <br><nobr><a name="bms_SP"></a><a name="subkey_SP"></a>space <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/getting_elements_attributes.htm"><b>3</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>4</b></a> <a href="../scalar_bar.htm"><b>5</b></a> <a href="../plot_3d_presentation.htm"><b>6</b></a> </nobr><br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>spacemouse</b></a> <br><a href="../scalar_bar.htm"><b>spacing</b></a> <br><nobr>special <a href="../files/about_tables.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><a href="../gauss_viewer.htm"><b>specially</b></a> <br><nobr>specified <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../animation_in_gauss_viewer.htm"><b>2</b></a> <a href="../files/scaling_presentations.htm"><b>3</b></a> <a href="../plot2d_viewer.htm"><b>4</b></a> </nobr><br><nobr>specify <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../files/stream_lines_presentation.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>specifying</b></a> <br><nobr>speed <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>2</b></a> </nobr><br><a href="../files/importing_med_objects.htm"><b>spent</b></a> <br><nobr>sphere <a href="../segmentation.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> </nobr><br><a href="../primitive_types.htm"><b>spheres</b></a> <br><a href="../plot2d_viewer.htm"><b>spline</b></a> <br><a href="../plot2d_viewer.htm"><b>splines</b></a> <br><a href="../clipping.htm"><b>split</b></a> <br><nobr>sprite <a href="../primitive_types.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><a href="../primitive_types.htm"><b>sprites</b></a> <br><br><br></p><p class="ftsbody" align="center"><a href="whlstf8.htm" target="_self" title="previous search group"><b>&gt;&gt;</b></a>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstf8.htm b/doc/salome/gui/VISU/whgdata/whlstf8.htm
deleted file mode 100755 (executable)
index 0dc0d1c..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words List</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-<p class="ftsbody" align="center"><a href="whlstf7.htm" target="_self" title="previous search group"><b>&lt;&lt;</b></a><br><br></p>
-<p class="ftsbody" >
-<nobr><a name="bms_ST"></a><a name="subkey_ST"></a>stamp <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/creating_field_presentations.htm"><b>2</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>3</b></a> <a href="../files/animating_presentations.htm"><b>4</b></a> <a href="../gauss_viewer.htm"><b>5</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>6</b></a> <a href="../scalar_bar.htm"><b>7</b></a> </nobr><br><nobr>stamps <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_resentation.htm"><b>2</b></a> <a href="../files/cut_lines_presentation.htm"><b>3</b></a> <a href="../files/creating_field_presentations.htm"><b>4</b></a> <a href="../files/animating_presentations.htm"><b>5</b></a> <a href="../files/about_structure_of_med_object.htm"><b>6</b></a> <a href="../animation_in_gauss_viewer.htm"><b>7</b></a> <a href="../gauss_points_presentation.htm"><b>8</b></a> <a href="../files/vectors_presentation.htm"><b>9</b></a> <a href="../files/stream_lines_presentation.htm"><b>10</b></a> <a href="../files/scalar_map_presentation.htm"><b>11</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>12</b></a> <a href="../files/importing_med_objects.htm"><b>13</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>14</b></a> <a href="../scalar_bar.htm"><b>15</b></a> <a href="../plot_3d_presentation.htm"><b>16</b></a> </nobr><br><nobr>standard <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../animation_in_gauss_viewer.htm"><b>2</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>3</b></a> <a href="../gauss_viewer.htm"><b>4</b></a> <a href="../files/importing_tables.htm"><b>5</b></a> <a href="../files/importing_med_objects.htm"><b>6</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>7</b></a> <a href="../primitive_types.htm"><b>8</b></a> </nobr><br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>star</b></a> <br><nobr>start <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../clipping.htm"><b>2</b></a> <a href="../animation_in_gauss_viewer.htm"><b>3</b></a> <a href="../files/sweeping.htm"><b>4</b></a> <a href="../files/running_visu.htm"><b>5</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>starting</b></a> <br><a href="../files/sweeping.htm"><b>state</b></a> <br><nobr>step <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/sweeping.htm"><b>2</b></a> <a href="../files/stream_lines_presentation.htm"><b>3</b></a> <a href="../files/importing_med_objects.htm"><b>4</b></a> </nobr><br><nobr>steps <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/sweeping.htm"><b>2</b></a> <a href="../plot_3d_presentation.htm"><b>3</b></a> <a href="../picking.htm"><b>4</b></a> </nobr><br><a href="../animation_in_gauss_viewer.htm"><b>stop</b></a> <br><a href="../gauss_viewer.htm"><b>store</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>stored</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>stream</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>streamline</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>streamlines</b></a> <br><a href="../vtk_3d_viewer.htm"><b>strictly</b></a> <br><nobr>structure <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_curves.htm"><b>2</b></a> <a href="../files/about_structure_of_med_object.htm"><b>3</b></a> <a href="../files/stream_lines_presentation.htm"><b>4</b></a> <a href="../files/importing_med_objects.htm"><b>5</b></a> </nobr><br><a href="../clipping.htm"><b>structured</b></a> <br><nobr>study <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../files/creating_curves.htm"><b>3</b></a> <a href="../files/animating_presentations.htm"><b>4</b></a> <a href="../files/running_visu.htm"><b>5</b></a> <a href="../files/getting_started.htm"><b>6</b></a> </nobr><br><nobr>style <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_SU"></a><a name="subkey_SU"></a>subfolder <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/creating_field_presentations.htm"><b>2</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>3</b></a> <a href="../files/about_structure_of_med_object.htm"><b>4</b></a> <a href="../gauss_viewer.htm"><b>5</b></a> </nobr><br><a href="../files/about_structure_of_med_object.htm"><b>subfolders</b></a> <br><a href="../files/creating_field_presentations.htm"><b>submenu</b></a> <br><nobr>submesh <a href="../files/creating_presentations.htm"><b>1</b></a> <a href="../files/creating_field_presentations.htm"><b>2</b></a> <a href="../files/about_structure_of_med_object.htm"><b>3</b></a> <a href="../files/getting_started.htm"><b>4</b></a> <a href="../files/getting_elements_attributes.htm"><b>5</b></a> </nobr><br><nobr>submeshes <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../files/scaling_presentations.htm"><b>2</b></a> <a href="../files/introduction.htm"><b>3</b></a> </nobr><br><a href="../animation_in_gauss_viewer.htm"><b>substituted</b></a> <br><a href="../primitive_types.htm"><b>suggests</b></a> <br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>superposition</b></a> <br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>supported</b></a> <br><nobr>surface <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>2</b></a> <a href="../plot_3d_presentation.htm"><b>3</b></a> </nobr><br><nobr>surfaces <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>2</b></a> </nobr><br><a href="../animation_in_gauss_viewer.htm"><b>suspend</b></a> <br><nobr><a name="bms_SW"></a><a name="subkey_SW"></a>sweep <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../files/sweeping.htm"><b>2</b></a> <a href="../files/importing_med_objects.htm"><b>3</b></a> </nobr><br><nobr>sweeping <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/sweeping.htm"><b>2</b></a> <a href="../files/getting_started.htm"><b>3</b></a> </nobr><br><nobr>switch <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>2</b></a> <a href="../gauss_viewer.htm"><b>3</b></a> </nobr><br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>switching</b></a> <br><nobr><a name="bms_SY"></a><a name="subkey_SY"></a>system <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>2</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>3</b></a> <a href="../primitive_types.htm"><b>4</b></a> </nobr><br><a href="../scalar_bar.htm"><b>systematically</b></a> <br>
-<br><br>
-<nobr><a name="bm_T"></a><a name="subkey_T{"></a>t <a href="../files/importing_med_objects.htm"><b>1</b></a> <a href="../vtk_3d_viewer.htm"><b>2</b></a> <a href="../primitive_types.htm"><b>3</b></a> <a href="../plot2d_viewer.htm"><b>4</b></a> </nobr><br><nobr><a name="bms_TA"></a><a name="subkey_TA"></a>tab <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_resentation.htm"><b>2</b></a> <a href="../files/cut_lines_presentation.htm"><b>3</b></a> <a href="../files/about_tables.htm"><b>4</b></a> <a href="../files/vectors_presentation.htm"><b>5</b></a> <a href="../files/stream_lines_presentation.htm"><b>6</b></a> <a href="../files/scalar_map_presentation.htm"><b>7</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>8</b></a> <a href="../files/importing_tables.htm"><b>9</b></a> <a href="../segmentation.htm"><b>10</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>11</b></a> <a href="../plot_3d_presentation.htm"><b>12</b></a> </nobr><br><nobr>table <a href="../files/displaying_tables.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/creating_curves.htm"><b>3</b></a> <a href="../files/about_tables.htm"><b>4</b></a> <a href="../files/about_structure_of_med_object.htm"><b>5</b></a> <a href="../creating_tables.htm"><b>6</b></a> <a href="../files/importing_tables.htm"><b>7</b></a> <a href="../files/getting_started.htm"><b>8</b></a> <a href="../files/getting_elements_attributes.htm"><b>9</b></a> <a href="../plot2d_viewer.htm"><b>10</b></a> </nobr><br><nobr>tables <a href="../files/displaying_tables.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/creating_curves.htm"><b>3</b></a> <a href="../files/about_tables.htm"><b>4</b></a> <a href="../creating_tables.htm"><b>5</b></a> <a href="../files/introduction.htm"><b>6</b></a> <a href="../files/importing_tables.htm"><b>7</b></a> <a href="../plot2d_viewer.htm"><b>8</b></a> </nobr><br><a href="../files/vectors_presentation.htm"><b>tail</b></a> <br><a href="../files/sweeping.htm"><b>take</b></a> <br><nobr>taken <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/creating_curves.htm"><b>3</b></a> <a href="../scalar_bar.htm"><b>4</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>takes</b></a> <br><a name="bms_TE"></a><a name="subkey_TE"></a><a href="../primitive_types.htm"><b>technically</b></a> <br><nobr>tensor <a href="../scalar_bar.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> </nobr><br><nobr>text <a href="../files/scalar_map_presentation.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> </nobr><br><a href="../primitive_types.htm"><b>texture</b></a> <br><a href="../primitive_types.htm"><b>textures</b></a> <br><nobr><a name="bms_TH"></a><a name="subkey_TH"></a>them <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> <a href="../files/about_tables.htm"><b>3</b></a> <a href="../clipping.htm"><b>4</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>5</b></a> <a href="../gauss_viewer.htm"><b>6</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>7</b></a> <a href="../vtk_3d_viewer.htm"><b>8</b></a> <a href="../primitive_types.htm"><b>9</b></a> <a href="../picking.htm"><b>10</b></a> </nobr><br><a href="../primitive_types.htm"><b>therefore</b></a> <br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>thick</b></a> <br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>thin</b></a> <br><nobr>thought <a href="../files/stream_lines_presentation.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> </nobr><br><nobr>three <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/about_tables.htm"><b>3</b></a> <a href="../files/about_structure_of_med_object.htm"><b>4</b></a> <a href="../files/scalar_map_presentation.htm"><b>5</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>6</b></a> <a href="../primitive_types.htm"><b>7</b></a> <a href="../plot_3d_presentation.htm"><b>8</b></a> </nobr><br><a href="../primitive_types.htm"><b>threshold</b></a> <br><a name="bms_TI"></a><a name="subkey_TI"></a><a href="../vtk_3d_viewer.htm"><b>tick</b></a> <br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>tilt</b></a> <br><nobr>time <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/deformed_shape_presentation.htm"><b>2</b></a> <a href="../files/cut_lines_resentation.htm"><b>3</b></a> <a href="../files/cut_lines_presentation.htm"><b>4</b></a> <a href="../files/creating_field_presentations.htm"><b>5</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>6</b></a> <a href="../files/animating_presentations.htm"><b>7</b></a> <a href="../files/about_structure_of_med_object.htm"><b>8</b></a> <a href="../animation_in_gauss_viewer.htm"><b>9</b></a> <a href="../gauss_viewer.htm"><b>10</b></a> <a href="../gauss_points_presentation.htm"><b>11</b></a> <a href="../files/vectors_presentation.htm"><b>12</b></a> <a href="../files/sweeping.htm"><b>13</b></a> <a href="../files/stream_lines_presentation.htm"><b>14</b></a> <a href="../files/scalar_map_presentation.htm"><b>15</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>16</b></a> <a href="../files/importing_med_objects.htm"><b>17</b></a> <a href="../segmentation.htm"><b>18</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>19</b></a> <a href="../scalar_bar.htm"><b>20</b></a> <a href="../plot_3d_presentation.htm"><b>21</b></a> </nobr><br><a href="../files/animating_presentations.htm"><b>timing</b></a> <br><nobr>title <a href="../files/scalar_map_presentation.htm"><b>1</b></a> <a href="../plot2d_viewer.htm"><b>2</b></a> </nobr><br><a href="../files/about_tables.htm"><b>titles</b></a> <br><a name="bms_TO"></a><a name="subkey_TO"></a><a href="../files/about_structure_of_med_object.htm"><b>together</b></a> <br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>toggle</b></a> <br><a href="../picking.htm"><b>tolerance</b></a> <br><nobr>toolbar <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/deformed_shape_presentation.htm"><b>2</b></a> <a href="../files/cut_lines_resentation.htm"><b>3</b></a> <a href="../files/cut_lines_presentation.htm"><b>4</b></a> <a href="../files/creating_field_presentations.htm"><b>5</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>6</b></a> <a href="../gauss_viewer.htm"><b>7</b></a> <a href="../gauss_points_presentation.htm"><b>8</b></a> <a href="../files/vectors_presentation.htm"><b>9</b></a> <a href="../files/stream_lines_presentation.htm"><b>10</b></a> <a href="../files/scalar_map_presentation.htm"><b>11</b></a> <a href="../files/running_visu.htm"><b>12</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>13</b></a> <a href="../vtk_3d_viewer.htm"><b>14</b></a> <a href="../segmentation.htm"><b>15</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>16</b></a> <a href="../plot_3d_presentation.htm"><b>17</b></a> <a href="../plot2d_viewer.htm"><b>18</b></a> <a href="../picking.htm"><b>19</b></a> </nobr><br><a href="../files/running_visu.htm"><b>toolbars</b></a> <br><nobr>top <a href="../segmentation.htm"><b>1</b></a> <a href="../plot2d_viewer.htm"><b>2</b></a> <a href="../picking.htm"><b>3</b></a> </nobr><br><a href="../primitive_types.htm"><b>total</b></a> <br><a href="../picking.htm"><b>touch</b></a> <br><a href="../picking.htm"><b>touches</b></a> <br><nobr><a name="bms_TR"></a><a name="subkey_TR"></a>transformation <a href="../files/sweeping.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.htm"><b>2</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>transforming</b></a> <br><nobr>translate <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../files/scaling_presentations.htm"><b>3</b></a> </nobr><br><nobr>translation <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../segmentation.htm"><b>3</b></a> </nobr><br><nobr>transparency <a href="../primitive_types.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><nobr>transparent <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../segmentation.htm"><b>2</b></a> <a href="../picking.htm"><b>3</b></a> </nobr><br><a href="../files/about_structure_of_med_object.htm"><b>tree</b></a> <br><a href="../files/creating_curves.htm"><b>triangle</b></a> <br><nobr>triangles <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../vtk_3d_viewer.htm"><b>2</b></a> </nobr><br><a href="../picking.htm"><b>triangular</b></a> <br><a href="../files/setting_properties_of_xy_plots.htm"><b>triggers</b></a> <br><a href="../vtk_3d_viewer.htm"><b>trihedron</b></a> <br><a href="../clipping.htm"><b>truncated</b></a> <br><a name="bms_TW"></a><a name="subkey_TW"></a><a href="../types_of_gauss_points_presentations.htm"><b>twice</b></a> <br><nobr>two <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/creating_xy_plot.htm"><b>3</b></a> <a href="../files/creating_curves.htm"><b>4</b></a> <a href="../clipping.htm"><b>5</b></a> <a href="../animation_in_gauss_viewer.htm"><b>6</b></a> <a href="../gauss_viewer.htm"><b>7</b></a> <a href="../segmentation.htm"><b>8</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>9</b></a> <a href="../scalar_bar.htm"><b>10</b></a> <a href="../primitive_types.htm"><b>11</b></a> <a href="../plot_3d_presentation.htm"><b>12</b></a> <a href="../picking.htm"><b>13</b></a> </nobr><br><nobr><a name="bms_TX"></a><a name="subkey_TX"></a>txt <a href="../files/about_tables.htm"><b>1</b></a> <a href="../files/importing_tables.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_TY"></a><a name="subkey_TY"></a>type <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_resentation.htm"><b>2</b></a> <a href="../files/cut_lines_presentation.htm"><b>3</b></a> <a href="../files/creating_field_presentations.htm"><b>4</b></a> <a href="../files/creating_curves.htm"><b>5</b></a> <a href="../files/animating_presentations.htm"><b>6</b></a> <a href="../files/about_structure_of_med_object.htm"><b>7</b></a> <a href="../gauss_points_presentation.htm"><b>8</b></a> <a href="../files/vectors_presentation.htm"><b>9</b></a> <a href="../files/sweeping.htm"><b>10</b></a> <a href="../files/stream_lines_presentation.htm"><b>11</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>12</b></a> <a href="../files/scalar_map_presentation.htm"><b>13</b></a> <a href="../files/getting_elements_attributes.htm"><b>14</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>15</b></a> <a href="../plot_3d_presentation.htm"><b>16</b></a> <a href="../plot2d_viewer.htm"><b>17</b></a> </nobr><br><nobr>types <a href="../files/creating_field_presentations.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> <a href="../files/about_structure_of_med_object.htm"><b>3</b></a> <a href="../files/scalar_map_presentation.htm"><b>4</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>5</b></a> <a href="../primitive_types.htm"><b>6</b></a> </nobr><br>
-<br><br>
-<a name="bm_U"></a><a name="subkey_UN"></a><a href="../files/importing_med_objects.htm"><b>unchecked</b></a> <br><a href="../types_of_gauss_points_presentations.htm"><b>unique</b></a> <br><nobr>units <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../files/about_tables.htm"><b>2</b></a> <a href="../files/stream_lines_presentation.htm"><b>3</b></a> </nobr><br><a href="../clipping.htm"><b>unwanted</b></a> <br><nobr><a name="bms_UP"></a><a name="subkey_UP"></a>up <a href="../files/displaying_tables.htm"><b>1</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>2</b></a> <a href="../files/deformed_shape_presentation.htm"><b>3</b></a> <a href="../files/cut_lines_resentation.htm"><b>4</b></a> <a href="../files/cut_lines_presentation.htm"><b>5</b></a> <a href="../files/creating_xy_plot.htm"><b>6</b></a> <a href="../files/creating_presentations.htm"><b>7</b></a> <a href="../files/creating_field_presentations.htm"><b>8</b></a> <a href="../files/creating_curves.htm"><b>9</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>10</b></a> <a href="../files/animating_presentations.htm"><b>11</b></a> <a href="../creating_tables.htm"><b>12</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>13</b></a> <a href="../gauss_points_presentation.htm"><b>14</b></a> <a href="../files/vectors_presentation.htm"><b>15</b></a> <a href="../files/sweeping.htm"><b>16</b></a> <a href="../files/stream_lines_presentation.htm"><b>17</b></a> <a href="../files/scalar_map_presentation.htm"><b>18</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>19</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>20</b></a> <a href="../scalar_bar.htm"><b>21</b></a> <a href="../primitive_types.htm"><b>22</b></a> <a href="../plot_3d_presentation.htm"><b>23</b></a> </nobr><br><a href="../files/iso_surfaces_presentation.htm"><b>update</b></a> <br><nobr>updated <a href="../files/running_visu.htm"><b>1</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>2</b></a> <a href="../segmentation.htm"><b>3</b></a> <a href="../picking.htm"><b>4</b></a> </nobr><br><a href="../segmentation.htm"><b>upper</b></a> <br><a href="../files/creating_curves.htm"><b>upward</b></a> <br><br><br></p><p class="ftsbody" align="center"><a href="whlstf9.htm" target="_self" title="previous search group"><b>&gt;&gt;</b></a>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstf9.htm b/doc/salome/gui/VISU/whgdata/whlstf9.htm
deleted file mode 100755 (executable)
index 09fb2dd..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-<html>
-<head>
-<title>Search Words List</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-<p class="ftsbody" align="center"><a href="whlstf8.htm" target="_self" title="previous search group"><b>&lt;&lt;</b></a><br><br></p>
-<p class="ftsbody" >
-<a name="bms_US"></a><a name="subkey_US"></a><a href="../files/getting_started.htm"><b>usage</b></a> <br><nobr>used <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../files/animating_presentations.htm"><b>3</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>4</b></a> <a href="../gauss_viewer.htm"><b>5</b></a> <a href="../gauss_points_presentation.htm"><b>6</b></a> <a href="../files/stream_lines_presentation.htm"><b>7</b></a> <a href="../files/scalar_map_presentation.htm"><b>8</b></a> <a href="../vtk_3d_viewer.htm"><b>9</b></a> <a href="../segmentation.htm"><b>10</b></a> <a href="../scalar_bar.htm"><b>11</b></a> <a href="../primitive_types.htm"><b>12</b></a> <a href="../picking.htm"><b>13</b></a> </nobr><br><nobr>user <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../animation_in_gauss_viewer.htm"><b>2</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>3</b></a> <a href="../files/sweeping.htm"><b>4</b></a> <a href="../segmentation.htm"><b>5</b></a> <a href="../scalar_bar.htm"><b>6</b></a> <a href="../primitive_types.htm"><b>7</b></a> <a href="../picking.htm"><b>8</b></a> </nobr><br><nobr>using <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/creating_curves.htm"><b>2</b></a> <a href="../clipping.htm"><b>3</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>4</b></a> <a href="../files/vectors_presentation.htm"><b>5</b></a> <a href="../files/stream_lines_presentation.htm"><b>6</b></a> <a href="../files/scalar_map_presentation.htm"><b>7</b></a> <a href="../files/getting_elements_attributes.htm"><b>8</b></a> <a href="../vtk_3d_viewer.htm"><b>9</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>10</b></a> <a href="../primitive_types.htm"><b>11</b></a> <a href="../picking.htm"><b>12</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>usually</b></a> <br>
-<br><br>
-<nobr><a name="bm_V"></a><a name="subkey_V{"></a>v <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../segmentation.htm"><b>2</b></a> </nobr><br><a name="bms_VA"></a><a name="subkey_VA"></a><a href="../files/animating_presentations.htm"><b>validate</b></a> <br><nobr>value <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>3</b></a> <a href="../animation_in_gauss_viewer.htm"><b>4</b></a> <a href="../files/stream_lines_presentation.htm"><b>5</b></a> <a href="../files/scalar_map_presentation.htm"><b>6</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>7</b></a> <a href="../files/importing_med_objects.htm"><b>8</b></a> <a href="../files/getting_elements_attributes.htm"><b>9</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>10</b></a> <a href="../scalar_bar.htm"><b>11</b></a> <a href="../primitive_types.htm"><b>12</b></a> <a href="../plot_3d_presentation.htm"><b>13</b></a> <a href="../picking.htm"><b>14</b></a> </nobr><br><nobr>values <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_resentation.htm"><b>2</b></a> <a href="../files/cut_lines_presentation.htm"><b>3</b></a> <a href="../files/creating_field_presentations.htm"><b>4</b></a> <a href="../files/creating_curves.htm"><b>5</b></a> <a href="../files/about_tables.htm"><b>6</b></a> <a href="../files/about_structure_of_med_object.htm"><b>7</b></a> <a href="../creating_tables.htm"><b>8</b></a> <a href="../files/vectors_presentation.htm"><b>9</b></a> <a href="../files/sweeping.htm"><b>10</b></a> <a href="../files/stream_lines_presentation.htm"><b>11</b></a> <a href="../files/scalar_map_presentation.htm"><b>12</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>13</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>14</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>15</b></a> <a href="../scalar_bar.htm"><b>16</b></a> <a href="../plot_3d_presentation.htm"><b>17</b></a> </nobr><br><a href="../scalar_bar.htm"><b>variable</b></a> <br><a href="../segmentation.htm"><b>variables</b></a> <br><a href="../files/introduction.htm"><b>various</b></a> <br><a href="../types_of_gauss_points_presentations.htm"><b>vary</b></a> <br><a name="bms_VE"></a><a name="subkey_VE"></a><a href="../animation_in_gauss_viewer.htm"><b>ve</b></a> <br><nobr>vector <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/creating_field_presentations.htm"><b>2</b></a> <a href="../files/about_structure_of_med_object.htm"><b>3</b></a> <a href="../files/vectors_presentation.htm"><b>4</b></a> <a href="../files/stream_lines_presentation.htm"><b>5</b></a> <a href="../files/scalar_map_presentation.htm"><b>6</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>7</b></a> <a href="../files/getting_elements_attributes.htm"><b>8</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>9</b></a> <a href="../scalar_bar.htm"><b>10</b></a> <a href="../primitive_types.htm"><b>11</b></a> <a href="../plot_3d_presentation.htm"><b>12</b></a> </nobr><br><nobr>vectors <a href="../files/vectors_presentation.htm"><b>1</b></a> <a href="../files/stream_lines_presentation.htm"><b>2</b></a> <a href="../primitive_types.htm"><b>3</b></a> </nobr><br><a href="../plot2d_viewer.htm"><b>verbal</b></a> <br><a href="../primitive_types.htm"><b>vertex</b></a> <br><nobr>vertical <a href="../clipping.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.htm"><b>2</b></a> <a href="../scalar_bar.htm"><b>3</b></a> <a href="../plot2d_viewer.htm"><b>4</b></a> </nobr><br><nobr>very <a href="../files/stream_lines_presentation.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_VI"></a><a name="subkey_VI"></a>via <a href="../gauss_viewer.htm"><b>1</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>2</b></a> <a href="../vtk_3d_viewer.htm"><b>3</b></a> </nobr><br><a href="../animation_in_gauss_viewer.htm"><b>video</b></a> <br><nobr>view <a href="../files/displaying_tables.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>3</b></a> <a href="../files/about_structure_of_med_object.htm"><b>4</b></a> <a href="../clipping.htm"><b>5</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>6</b></a> <a href="../gauss_viewer.htm"><b>7</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>8</b></a> <a href="../files/getting_started.htm"><b>9</b></a> <a href="../files/getting_elements_attributes.htm"><b>10</b></a> <a href="../vtk_3d_viewer.htm"><b>11</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>12</b></a> <a href="../segmentation.htm"><b>13</b></a> <a href="../primitive_types.htm"><b>14</b></a> <a href="../plot2d_viewer.htm"><b>15</b></a> <a href="../picking.htm"><b>16</b></a> </nobr><br><nobr>viewer <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/deformed_shape_presentation.htm"><b>2</b></a> <a href="../files/cut_lines_resentation.htm"><b>3</b></a> <a href="../files/cut_lines_presentation.htm"><b>4</b></a> <a href="../files/creating_xy_plot.htm"><b>5</b></a> <a href="../files/creating_presentations.htm"><b>6</b></a> <a href="../files/creating_curves.htm"><b>7</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>8</b></a> <a href="../files/about_tables.htm"><b>9</b></a> <a href="../creating_tables.htm"><b>10</b></a> <a href="../clipping.htm"><b>11</b></a> <a href="../animation_in_gauss_viewer.htm"><b>12</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>13</b></a> <a href="../gauss_viewer.htm"><b>14</b></a> <a href="../files/vectors_presentation.htm"><b>15</b></a> <a href="../files/sweeping.htm"><b>16</b></a> <a href="../files/stream_lines_presentation.htm"><b>17</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>18</b></a> <a href="../files/scaling_presentations.htm"><b>19</b></a> <a href="../files/scalar_map_presentation.htm"><b>20</b></a> <a href="../files/running_visu.htm"><b>21</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>22</b></a> <a href="../files/getting_elements_attributes.htm"><b>23</b></a> <a href="../vtk_3d_viewer.htm"><b>24</b></a> <a href="../segmentation.htm"><b>25</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>26</b></a> <a href="../primitive_types.htm"><b>27</b></a> <a href="../plot_3d_presentation.htm"><b>28</b></a> <a href="../plot2d_viewer.htm"><b>29</b></a> <a href="../picking.htm"><b>30</b></a> </nobr><br><a href="../navigation_with_keyboard_and_spacemouse.htm"><b>viewers</b></a> <br><nobr>viewing <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../picking.htm"><b>2</b></a> </nobr><br><nobr>views <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../clipping.htm"><b>2</b></a> </nobr><br><nobr>visible <a href="../vtk_3d_viewer.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><a href="../gauss_points_presentation.htm"><b>visualisation</b></a> <br><a href="../primitive_types.htm"><b>visualised</b></a> <br><nobr>visualization <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_resentation.htm"><b>2</b></a> <a href="../files/cut_lines_presentation.htm"><b>3</b></a> <a href="../files/creating_field_presentations.htm"><b>4</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>5</b></a> <a href="../gauss_points_presentation.htm"><b>6</b></a> <a href="../files/vectors_presentation.htm"><b>7</b></a> <a href="../files/stream_lines_presentation.htm"><b>8</b></a> <a href="../files/scalar_map_presentation.htm"><b>9</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>10</b></a> <a href="../files/introduction.htm"><b>11</b></a> <a href="../vtk_3d_viewer.htm"><b>12</b></a> <a href="../segmentation.htm"><b>13</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>14</b></a> <a href="../plot_3d_presentation.htm"><b>15</b></a> </nobr><br><nobr>visualize <a href="../files/vectors_presentation.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> <a href="../picking.htm"><b>3</b></a> </nobr><br><nobr>visualized <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> </nobr><br><a href="../files/vectors_presentation.htm"><b>visualizes</b></a> <br><nobr><a name="bms_VT"></a><a name="subkey_VT"></a>vtk <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../files/running_visu.htm"><b>3</b></a> <a href="../vtk_3d_viewer.htm"><b>4</b></a> <a href="../primitive_types.htm"><b>5</b></a> </nobr><br>
-<br><br>
-<nobr><a name="bm_W"></a><a name="subkey_WA"></a>way <a href="../clipping.htm"><b>1</b></a> <a href="../segmentation.htm"><b>2</b></a> <a href="../picking.htm"><b>3</b></a> </nobr><br><nobr><a name="bms_WE"></a><a name="subkey_WE"></a>well <a href="../files/creating_field_presentations.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.htm"><b>2</b></a> </nobr><br><a name="bms_WH"></a><a name="subkey_WH"></a><a href="../files/importing_med_objects.htm"><b>what</b></a> <br><a href="../primitive_types.htm"><b>whatever</b></a> <br><a href="../files/animating_presentations.htm"><b>wheel</b></a> <br><a href="../plot_3d_presentation.htm"><b>while</b></a> <br><nobr>whole <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> </nobr><br><a href="../files/about_structure_of_med_object.htm"><b>why</b></a> <br><nobr><a name="bms_WI"></a><a name="subkey_WI"></a>width <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> <a href="../files/vectors_presentation.htm"><b>3</b></a> <a href="../files/scalar_map_presentation.htm"><b>4</b></a> <a href="../scalar_bar.htm"><b>5</b></a> </nobr><br><nobr>will <a href="../files/displaying_tables.htm"><b>1</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>2</b></a> <a href="../files/deformed_shape_presentation.htm"><b>3</b></a> <a href="../files/cut_lines_resentation.htm"><b>4</b></a> <a href="../files/cut_lines_presentation.htm"><b>5</b></a> <a href="../files/creating_xy_plot.htm"><b>6</b></a> <a href="../files/creating_presentations.htm"><b>7</b></a> <a href="../files/creating_field_presentations.htm"><b>8</b></a> <a href="../files/creating_curves.htm"><b>9</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>10</b></a> <a href="../files/animating_presentations.htm"><b>11</b></a> <a href="../files/about_structure_of_med_object.htm"><b>12</b></a> <a href="../creating_tables.htm"><b>13</b></a> <a href="../clipping.htm"><b>14</b></a> <a href="../animation_in_gauss_viewer.htm"><b>15</b></a> <a href="../files/vectors_presentation.htm"><b>16</b></a> <a href="../files/sweeping.htm"><b>17</b></a> <a href="../files/stream_lines_presentation.htm"><b>18</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>19</b></a> <a href="../files/scaling_presentations.htm"><b>20</b></a> <a href="../files/scalar_map_presentation.htm"><b>21</b></a> <a href="../files/running_visu.htm"><b>22</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>23</b></a> <a href="../files/importing_tables.htm"><b>24</b></a> <a href="../files/importing_med_objects.htm"><b>25</b></a> <a href="../files/getting_elements_attributes.htm"><b>26</b></a> <a href="../types_of_gauss_points_presentations.htm"><b>27</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>28</b></a> <a href="../scalar_bar.htm"><b>29</b></a> <a href="../primitive_types.htm"><b>30</b></a> <a href="../plot_3d_presentation.htm"><b>31</b></a> <a href="../plot2d_viewer.htm"><b>32</b></a> <a href="../picking.htm"><b>33</b></a> </nobr><br><nobr>window <a href="../files/displaying_tables.htm"><b>1</b></a> <a href="../files/creating_xy_plot.htm"><b>2</b></a> <a href="../animation_in_gauss_viewer.htm"><b>3</b></a> <a href="../files/running_visu.htm"><b>4</b></a> <a href="../segmentation.htm"><b>5</b></a> <a href="../picking.htm"><b>6</b></a> </nobr><br><nobr>windows <a href="../files/creating_xy_plot.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> </nobr><br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>wireframe</b></a> <br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>wires</b></a> <br><nobr>wish <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../vtk_3d_viewer.htm"><b>2</b></a> <a href="../plot2d_viewer.htm"><b>3</b></a> </nobr><br><nobr>within <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../scalar_bar.htm"><b>2</b></a> <a href="../primitive_types.htm"><b>3</b></a> <a href="../picking.htm"><b>4</b></a> </nobr><br><nobr>without <a href="../files/about_tables.htm"><b>1</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>2</b></a> <a href="../gauss_viewer.htm"><b>3</b></a> </nobr><br><nobr><a name="bms_WO"></a><a name="subkey_WO"></a>would <a href="../animation_in_gauss_viewer.htm"><b>1</b></a> <a href="../primitive_types.htm"><b>2</b></a> </nobr><br><a name="bms_WR"></a><a name="subkey_WR"></a><a href="../scalar_bar.htm"><b>written</b></a> <br>
-<br><br>
-<nobr><a name="bm_X"></a><a name="subkey_X{"></a>x <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../clipping.htm"><b>2</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>3</b></a> <a href="../files/scaling_presentations.htm"><b>4</b></a> <a href="../files/scalar_map_presentation.htm"><b>5</b></a> <a href="../scalar_bar.htm"><b>6</b></a> <a href="../primitive_types.htm"><b>7</b></a> <a href="../plot2d_viewer.htm"><b>8</b></a> </nobr><br><nobr><a name="bms_XL"></a><a name="subkey_XL"></a>xls <a href="../files/about_tables.htm"><b>1</b></a> <a href="../files/importing_tables.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_XY"></a><a name="subkey_XY"></a>xy <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/creating_xy_plot.htm"><b>3</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>4</b></a> <a href="../files/introduction.htm"><b>5</b></a> <a href="../plot_3d_presentation.htm"><b>6</b></a> <a href="../plot2d_viewer.htm"><b>7</b></a> </nobr><br>
-<br><br>
-<nobr><a name="bm_Y"></a><a name="subkey_Y{"></a>y <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../clipping.htm"><b>2</b></a> <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>3</b></a> <a href="../files/scaling_presentations.htm"><b>4</b></a> <a href="../files/scalar_map_presentation.htm"><b>5</b></a> <a href="../scalar_bar.htm"><b>6</b></a> <a href="../plot2d_viewer.htm"><b>7</b></a> </nobr><br><nobr><a name="bms_YO"></a><a name="subkey_YO"></a>your <a href="../files/displaying_tables.htm"><b>1</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>2</b></a> <a href="../files/deformed_shape_presentation.htm"><b>3</b></a> <a href="../files/cut_lines_resentation.htm"><b>4</b></a> <a href="../files/cut_lines_presentation.htm"><b>5</b></a> <a href="../files/creating_xy_plot.htm"><b>6</b></a> <a href="../files/creating_curves.htm"><b>7</b></a> <a href="../files/animating_presentations.htm"><b>8</b></a> <a href="../creating_tables.htm"><b>9</b></a> <a href="../clipping.htm"><b>10</b></a> <a href="../animation_in_gauss_viewer.htm"><b>11</b></a> <a href="../gauss_points_presentation.htm"><b>12</b></a> <a href="../files/vectors_presentation.htm"><b>13</b></a> <a href="../files/stream_lines_presentation.htm"><b>14</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>15</b></a> <a href="../files/scaling_presentations.htm"><b>16</b></a> <a href="../files/scalar_map_presentation.htm"><b>17</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>18</b></a> <a href="../files/importing_tables.htm"><b>19</b></a> <a href="../files/importing_med_objects.htm"><b>20</b></a> <a href="../scalar_map_on_deformed_shape_presentation.htm"><b>21</b></a> <a href="../plot_3d_presentation.htm"><b>22</b></a> <a href="../plot2d_viewer.htm"><b>23</b></a> </nobr><br><nobr><a name="bms_YZ"></a><a name="subkey_YZ"></a>yz <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../plot_3d_presentation.htm"><b>3</b></a> </nobr><br>
-<br><br>
-<nobr><a name="bm_Z"></a><a name="subkey_Z{"></a>z <a href="../clipping.htm"><b>1</b></a> <a href="../files/scaling_presentations.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_ZO"></a><a name="subkey_ZO"></a>zoom <a href="../navigation_with_keyboard_and_spacemouse.htm"><b>1</b></a> <a href="../gauss_viewer.htm"><b>2</b></a> <a href="../vtk_3d_viewer.htm"><b>3</b></a> <a href="../primitive_types.htm"><b>4</b></a> <a href="../plot2d_viewer.htm"><b>5</b></a> <a href="../picking.htm"><b>6</b></a> </nobr><br><a href="../picking.htm"><b>zoomed</b></a> <br><nobr><a name="bms_ZX"></a><a name="subkey_ZX"></a>zx <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> <a href="../plot_3d_presentation.htm"><b>3</b></a> </nobr><br><br><br></p>
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl0.htm b/doc/salome/gui/VISU/whgdata/whlstfl0.htm
deleted file mode 100755 (executable)
index fa92b03..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_{"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf0.htm#bm_{" target="ftslist" title="search letter { "><b>{ </b></a> <a href="whlstf0.htm#bms_{D" target="ftslist" title="search letter {D"><b>{D</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl1.htm b/doc/salome/gui/VISU/whgdata/whlstfl1.htm
deleted file mode 100755 (executable)
index c67a440..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_A"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf0.htm#bm_A" target="ftslist" title="search letter AB"><b>AB</b></a> <a href="whlstf0.htm#bms_AC" target="ftslist" title="search letter AC"><b>AC</b></a> <a href="whlstf0.htm#bms_AD" target="ftslist" title="search letter AD"><b>AD</b></a> <a href="whlstf0.htm#bms_AG" target="ftslist" title="search letter AG"><b>AG</b></a> <a href="whlstf0.htm#bms_AL" target="ftslist" title="search letter AL"><b>AL</b></a> <a href="whlstf0.htm#bms_AN" target="ftslist" title="search letter AN"><b>AN</b></a> <a href="whlstf0.htm#bms_AP" target="ftslist" title="search letter AP"><b>AP</b></a> <a href="whlstf0.htm#bms_AR" target="ftslist" title="search letter AR"><b>AR</b></a> <a href="whlstf0.htm#bms_AS" target="ftslist" title="search letter AS"><b>AS</b></a> <a href="whlstf0.htm#bms_AT" target="ftslist" title="search letter AT"><b>AT</b></a> <a href="whlstf0.htm#bms_AU" target="ftslist" title="search letter AU"><b>AU</b></a> <a href="whlstf0.htm#bms_AV" target="ftslist" title="search letter AV"><b>AV</b></a> <a href="whlstf0.htm#bms_AX" target="ftslist" title="search letter AX"><b>AX</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl10.htm b/doc/salome/gui/VISU/whgdata/whlstfl10.htm
deleted file mode 100755 (executable)
index f74abfa..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_J"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf4.htm#bm_J" target="ftslist" title="search letter JP"><b>JP</b></a> <a href="whlstf4.htm#bms_JU" target="ftslist" title="search letter JU"><b>JU</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl11.htm b/doc/salome/gui/VISU/whgdata/whlstfl11.htm
deleted file mode 100755 (executable)
index 4e25be0..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_L"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf4.htm#bm_L" target="ftslist" title="search letter LA"><b>LA</b></a> <a href="whlstf4.htm#bms_LE" target="ftslist" title="search letter LE"><b>LE</b></a> <a href="whlstf4.htm#bms_LI" target="ftslist" title="search letter LI"><b>LI</b></a> <a href="whlstf4.htm#bms_LL" target="ftslist" title="search letter LL"><b>LL</b></a> <a href="whlstf4.htm#bms_LO" target="ftslist" title="search letter LO"><b>LO</b></a> <a href="whlstf4.htm#bms_LY" target="ftslist" title="search letter LY"><b>LY</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl12.htm b/doc/salome/gui/VISU/whgdata/whlstfl12.htm
deleted file mode 100755 (executable)
index 58cf0df..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_M"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf4.htm#bm_M" target="ftslist" title="search letter M "><b>M </b></a> <a href="whlstf4.htm#bms_MA" target="ftslist" title="search letter MA"><b>MA</b></a> <a href="whlstf4.htm#bms_ME" target="ftslist" title="search letter ME"><b>ME</b></a> <a href="whlstf5.htm#bms_MI" target="ftslist" title="search letter MI"><b>MI</b></a> <a href="whlstf5.htm#bms_MO" target="ftslist" title="search letter MO"><b>MO</b></a> <a href="whlstf5.htm#bms_MU" target="ftslist" title="search letter MU"><b>MU</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl13.htm b/doc/salome/gui/VISU/whgdata/whlstfl13.htm
deleted file mode 100755 (executable)
index 535ef53..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_N"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf5.htm#bm_N" target="ftslist" title="search letter N "><b>N </b></a> <a href="whlstf5.htm#bms_NA" target="ftslist" title="search letter NA"><b>NA</b></a> <a href="whlstf5.htm#bms_NB" target="ftslist" title="search letter NB"><b>NB</b></a> <a href="whlstf5.htm#bms_NE" target="ftslist" title="search letter NE"><b>NE</b></a> <a href="whlstf5.htm#bms_NO" target="ftslist" title="search letter NO"><b>NO</b></a> <a href="whlstf5.htm#bms_NT" target="ftslist" title="search letter NT"><b>NT</b></a> <a href="whlstf5.htm#bms_NU" target="ftslist" title="search letter NU"><b>NU</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl14.htm b/doc/salome/gui/VISU/whgdata/whlstfl14.htm
deleted file mode 100755 (executable)
index afb0343..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_O"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf5.htm#bm_O" target="ftslist" title="search letter OB"><b>OB</b></a> <a href="whlstf5.htm#bms_OF" target="ftslist" title="search letter OF"><b>OF</b></a> <a href="whlstf5.htm#bms_OK" target="ftslist" title="search letter OK"><b>OK</b></a> <a href="whlstf5.htm#bms_ON" target="ftslist" title="search letter ON"><b>ON</b></a> <a href="whlstf5.htm#bms_OP" target="ftslist" title="search letter OP"><b>OP</b></a> <a href="whlstf5.htm#bms_OR" target="ftslist" title="search letter OR"><b>OR</b></a> <a href="whlstf5.htm#bms_OT" target="ftslist" title="search letter OT"><b>OT</b></a> <a href="whlstf5.htm#bms_OU" target="ftslist" title="search letter OU"><b>OU</b></a> <a href="whlstf5.htm#bms_OV" target="ftslist" title="search letter OV"><b>OV</b></a> <a href="whlstf5.htm#bms_OW" target="ftslist" title="search letter OW"><b>OW</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl15.htm b/doc/salome/gui/VISU/whgdata/whlstfl15.htm
deleted file mode 100755 (executable)
index a305ce6..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_P"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf5.htm#bm_P" target="ftslist" title="search letter PA"><b>PA</b></a> <a href="whlstf5.htm#bms_PE" target="ftslist" title="search letter PE"><b>PE</b></a> <a href="whlstf6.htm#bms_PH" target="ftslist" title="search letter PH"><b>PH</b></a> <a href="whlstf6.htm#bms_PI" target="ftslist" title="search letter PI"><b>PI</b></a> <a href="whlstf6.htm#bms_PL" target="ftslist" title="search letter PL"><b>PL</b></a> <a href="whlstf6.htm#bms_PN" target="ftslist" title="search letter PN"><b>PN</b></a> <a href="whlstf6.htm#bms_PO" target="ftslist" title="search letter PO"><b>PO</b></a> <a href="whlstf6.htm#bms_PR" target="ftslist" title="search letter PR"><b>PR</b></a> <a href="whlstf6.htm#bms_PS" target="ftslist" title="search letter PS"><b>PS</b></a> <a href="whlstf6.htm#bms_PU" target="ftslist" title="search letter PU"><b>PU</b></a> <a href="whlstf6.htm#bms_PY" target="ftslist" title="search letter PY"><b>PY</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl16.htm b/doc/salome/gui/VISU/whgdata/whlstfl16.htm
deleted file mode 100755 (executable)
index b669c28..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_R"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf6.htm#bm_R" target="ftslist" title="search letter RA"><b>RA</b></a> <a href="whlstf6.htm#bms_RE" target="ftslist" title="search letter RE"><b>RE</b></a> <a href="whlstf7.htm#bms_RI" target="ftslist" title="search letter RI"><b>RI</b></a> <a href="whlstf7.htm#bms_RO" target="ftslist" title="search letter RO"><b>RO</b></a> <a href="whlstf7.htm#bms_RU" target="ftslist" title="search letter RU"><b>RU</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl17.htm b/doc/salome/gui/VISU/whgdata/whlstfl17.htm
deleted file mode 100755 (executable)
index 3debf65..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_S"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf7.htm#bm_S" target="ftslist" title="search letter S "><b>S </b></a> <a href="whlstf7.htm#bms_SA" target="ftslist" title="search letter SA"><b>SA</b></a> <a href="whlstf7.htm#bms_SC" target="ftslist" title="search letter SC"><b>SC</b></a> <a href="whlstf7.htm#bms_SE" target="ftslist" title="search letter SE"><b>SE</b></a> <a href="whlstf7.htm#bms_SH" target="ftslist" title="search letter SH"><b>SH</b></a> <a href="whlstf7.htm#bms_SI" target="ftslist" title="search letter SI"><b>SI</b></a> <a href="whlstf7.htm#bms_SL" target="ftslist" title="search letter SL"><b>SL</b></a> <a href="whlstf7.htm#bms_SM" target="ftslist" title="search letter SM"><b>SM</b></a> <a href="whlstf7.htm#bms_SO" target="ftslist" title="search letter SO"><b>SO</b></a> <a href="whlstf7.htm#bms_SP" target="ftslist" title="search letter SP"><b>SP</b></a> <a href="whlstf8.htm#bms_ST" target="ftslist" title="search letter ST"><b>ST</b></a> <a href="whlstf8.htm#bms_SU" target="ftslist" title="search letter SU"><b>SU</b></a> <a href="whlstf8.htm#bms_SW" target="ftslist" title="search letter SW"><b>SW</b></a> <a href="whlstf8.htm#bms_SY" target="ftslist" title="search letter SY"><b>SY</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl18.htm b/doc/salome/gui/VISU/whgdata/whlstfl18.htm
deleted file mode 100755 (executable)
index 442ea3a..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_T"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf8.htm#bm_T" target="ftslist" title="search letter T "><b>T </b></a> <a href="whlstf8.htm#bms_TA" target="ftslist" title="search letter TA"><b>TA</b></a> <a href="whlstf8.htm#bms_TE" target="ftslist" title="search letter TE"><b>TE</b></a> <a href="whlstf8.htm#bms_TH" target="ftslist" title="search letter TH"><b>TH</b></a> <a href="whlstf8.htm#bms_TI" target="ftslist" title="search letter TI"><b>TI</b></a> <a href="whlstf8.htm#bms_TO" target="ftslist" title="search letter TO"><b>TO</b></a> <a href="whlstf8.htm#bms_TR" target="ftslist" title="search letter TR"><b>TR</b></a> <a href="whlstf8.htm#bms_TW" target="ftslist" title="search letter TW"><b>TW</b></a> <a href="whlstf8.htm#bms_TX" target="ftslist" title="search letter TX"><b>TX</b></a> <a href="whlstf8.htm#bms_TY" target="ftslist" title="search letter TY"><b>TY</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl19.htm b/doc/salome/gui/VISU/whgdata/whlstfl19.htm
deleted file mode 100755 (executable)
index 58e5624..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_U"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf8.htm#bm_U" target="ftslist" title="search letter UN"><b>UN</b></a> <a href="whlstf8.htm#bms_UP" target="ftslist" title="search letter UP"><b>UP</b></a> <a href="whlstf9.htm#bms_US" target="ftslist" title="search letter US"><b>US</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl2.htm b/doc/salome/gui/VISU/whgdata/whlstfl2.htm
deleted file mode 100755 (executable)
index fc29bf0..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_B"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf0.htm#bm_B" target="ftslist" title="search letter BA"><b>BA</b></a> <a href="whlstf0.htm#bms_BE" target="ftslist" title="search letter BE"><b>BE</b></a> <a href="whlstf0.htm#bms_BI" target="ftslist" title="search letter BI"><b>BI</b></a> <a href="whlstf0.htm#bms_BL" target="ftslist" title="search letter BL"><b>BL</b></a> <a href="whlstf0.htm#bms_BM" target="ftslist" title="search letter BM"><b>BM</b></a> <a href="whlstf0.htm#bms_BO" target="ftslist" title="search letter BO"><b>BO</b></a> <a href="whlstf1.htm#bms_BR" target="ftslist" title="search letter BR"><b>BR</b></a> <a href="whlstf1.htm#bms_BU" target="ftslist" title="search letter BU"><b>BU</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl20.htm b/doc/salome/gui/VISU/whgdata/whlstfl20.htm
deleted file mode 100755 (executable)
index 7bf2ba0..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_V"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf9.htm#bm_V" target="ftslist" title="search letter V "><b>V </b></a> <a href="whlstf9.htm#bms_VA" target="ftslist" title="search letter VA"><b>VA</b></a> <a href="whlstf9.htm#bms_VE" target="ftslist" title="search letter VE"><b>VE</b></a> <a href="whlstf9.htm#bms_VI" target="ftslist" title="search letter VI"><b>VI</b></a> <a href="whlstf9.htm#bms_VT" target="ftslist" title="search letter VT"><b>VT</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl21.htm b/doc/salome/gui/VISU/whgdata/whlstfl21.htm
deleted file mode 100755 (executable)
index e0db75a..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_W"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf9.htm#bm_W" target="ftslist" title="search letter WA"><b>WA</b></a> <a href="whlstf9.htm#bms_WE" target="ftslist" title="search letter WE"><b>WE</b></a> <a href="whlstf9.htm#bms_WH" target="ftslist" title="search letter WH"><b>WH</b></a> <a href="whlstf9.htm#bms_WI" target="ftslist" title="search letter WI"><b>WI</b></a> <a href="whlstf9.htm#bms_WO" target="ftslist" title="search letter WO"><b>WO</b></a> <a href="whlstf9.htm#bms_WR" target="ftslist" title="search letter WR"><b>WR</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl22.htm b/doc/salome/gui/VISU/whgdata/whlstfl22.htm
deleted file mode 100755 (executable)
index bf63ff8..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_X"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf9.htm#bm_X" target="ftslist" title="search letter X "><b>X </b></a> <a href="whlstf9.htm#bms_XL" target="ftslist" title="search letter XL"><b>XL</b></a> <a href="whlstf9.htm#bms_XY" target="ftslist" title="search letter XY"><b>XY</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl23.htm b/doc/salome/gui/VISU/whgdata/whlstfl23.htm
deleted file mode 100755 (executable)
index a1727a4..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_Y"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf9.htm#bm_Y" target="ftslist" title="search letter Y "><b>Y </b></a> <a href="whlstf9.htm#bms_YO" target="ftslist" title="search letter YO"><b>YO</b></a> <a href="whlstf9.htm#bms_YZ" target="ftslist" title="search letter YZ"><b>YZ</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl24.htm b/doc/salome/gui/VISU/whgdata/whlstfl24.htm
deleted file mode 100755 (executable)
index a231fb7..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_Z"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf9.htm#bm_Z" target="ftslist" title="search letter Z "><b>Z </b></a> <a href="whlstf9.htm#bms_ZO" target="ftslist" title="search letter ZO"><b>ZO</b></a> <a href="whlstf9.htm#bms_ZX" target="ftslist" title="search letter ZX"><b>ZX</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl3.htm b/doc/salome/gui/VISU/whgdata/whlstfl3.htm
deleted file mode 100755 (executable)
index 6d15fbe..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_C"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf1.htm#bm_C" target="ftslist" title="search letter CA"><b>CA</b></a> <a href="whlstf1.htm#bms_CE" target="ftslist" title="search letter CE"><b>CE</b></a> <a href="whlstf1.htm#bms_CH" target="ftslist" title="search letter CH"><b>CH</b></a> <a href="whlstf1.htm#bms_CI" target="ftslist" title="search letter CI"><b>CI</b></a> <a href="whlstf1.htm#bms_CL" target="ftslist" title="search letter CL"><b>CL</b></a> <a href="whlstf1.htm#bms_CO" target="ftslist" title="search letter CO"><b>CO</b></a> <a href="whlstf2.htm#bms_CR" target="ftslist" title="search letter CR"><b>CR</b></a> <a href="whlstf2.htm#bms_CT" target="ftslist" title="search letter CT"><b>CT</b></a> <a href="whlstf2.htm#bms_CU" target="ftslist" title="search letter CU"><b>CU</b></a> <a href="whlstf2.htm#bms_CY" target="ftslist" title="search letter CY"><b>CY</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl4.htm b/doc/salome/gui/VISU/whgdata/whlstfl4.htm
deleted file mode 100755 (executable)
index 8d50fb3..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_D"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf2.htm#bm_D" target="ftslist" title="search letter DA"><b>DA</b></a> <a href="whlstf2.htm#bms_DE" target="ftslist" title="search letter DE"><b>DE</b></a> <a href="whlstf2.htm#bms_DI" target="ftslist" title="search letter DI"><b>DI</b></a> <a href="whlstf2.htm#bms_DO" target="ftslist" title="search letter DO"><b>DO</b></a> <a href="whlstf2.htm#bms_DR" target="ftslist" title="search letter DR"><b>DR</b></a> <a href="whlstf2.htm#bms_DU" target="ftslist" title="search letter DU"><b>DU</b></a> <a href="whlstf2.htm#bms_DY" target="ftslist" title="search letter DY"><b>DY</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl5.htm b/doc/salome/gui/VISU/whgdata/whlstfl5.htm
deleted file mode 100755 (executable)
index b1449c9..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_E"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf2.htm#bm_E" target="ftslist" title="search letter E "><b>E </b></a> <a href="whlstf2.htm#bms_ED" target="ftslist" title="search letter ED"><b>ED</b></a> <a href="whlstf2.htm#bms_EF" target="ftslist" title="search letter EF"><b>EF</b></a> <a href="whlstf2.htm#bms_EI" target="ftslist" title="search letter EI"><b>EI</b></a> <a href="whlstf2.htm#bms_EL" target="ftslist" title="search letter EL"><b>EL</b></a> <a href="whlstf2.htm#bms_EM" target="ftslist" title="search letter EM"><b>EM</b></a> <a href="whlstf2.htm#bms_EN" target="ftslist" title="search letter EN"><b>EN</b></a> <a href="whlstf3.htm#bms_EQ" target="ftslist" title="search letter EQ"><b>EQ</b></a> <a href="whlstf3.htm#bms_ER" target="ftslist" title="search letter ER"><b>ER</b></a> <a href="whlstf3.htm#bms_ET" target="ftslist" title="search letter ET"><b>ET</b></a> <a href="whlstf3.htm#bms_EV" target="ftslist" title="search letter EV"><b>EV</b></a> <a href="whlstf3.htm#bms_EX" target="ftslist" title="search letter EX"><b>EX</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl6.htm b/doc/salome/gui/VISU/whgdata/whlstfl6.htm
deleted file mode 100755 (executable)
index 8bf4a47..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_F"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf3.htm#bm_F" target="ftslist" title="search letter FA"><b>FA</b></a> <a href="whlstf3.htm#bms_FE" target="ftslist" title="search letter FE"><b>FE</b></a> <a href="whlstf3.htm#bms_FI" target="ftslist" title="search letter FI"><b>FI</b></a> <a href="whlstf3.htm#bms_FO" target="ftslist" title="search letter FO"><b>FO</b></a> <a href="whlstf3.htm#bms_FP" target="ftslist" title="search letter FP"><b>FP</b></a> <a href="whlstf3.htm#bms_FR" target="ftslist" title="search letter FR"><b>FR</b></a> <a href="whlstf3.htm#bms_FU" target="ftslist" title="search letter FU"><b>FU</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl7.htm b/doc/salome/gui/VISU/whgdata/whlstfl7.htm
deleted file mode 100755 (executable)
index 2c66804..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_G"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf3.htm#bm_G" target="ftslist" title="search letter G "><b>G </b></a> <a href="whlstf3.htm#bms_GA" target="ftslist" title="search letter GA"><b>GA</b></a> <a href="whlstf3.htm#bms_GE" target="ftslist" title="search letter GE"><b>GE</b></a> <a href="whlstf3.htm#bms_GI" target="ftslist" title="search letter GI"><b>GI</b></a> <a href="whlstf3.htm#bms_GL" target="ftslist" title="search letter GL"><b>GL</b></a> <a href="whlstf3.htm#bms_GR" target="ftslist" title="search letter GR"><b>GR</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl8.htm b/doc/salome/gui/VISU/whgdata/whlstfl8.htm
deleted file mode 100755 (executable)
index fb64846..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_H"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf3.htm#bm_H" target="ftslist" title="search letter H "><b>H </b></a> <a href="whlstf3.htm#bms_HA" target="ftslist" title="search letter HA"><b>HA</b></a> <a href="whlstf3.htm#bms_HE" target="ftslist" title="search letter HE"><b>HE</b></a> <a href="whlstf3.htm#bms_HI" target="ftslist" title="search letter HI"><b>HI</b></a> <a href="whlstf3.htm#bms_HO" target="ftslist" title="search letter HO"><b>HO</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstfl9.htm b/doc/salome/gui/VISU/whgdata/whlstfl9.htm
deleted file mode 100755 (executable)
index 6c5b1c8..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<title>Search Words letter</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<p class="ftsheader"><a name="subkey_I"></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a> <a href="whlstf3.htm#bm_I" target="ftslist" title="search letter I "><b>I </b></a> <a href="whlstf3.htm#bms_IC" target="ftslist" title="search letter IC"><b>IC</b></a> <a href="whlstf3.htm#bms_ID" target="ftslist" title="search letter ID"><b>ID</b></a> <a href="whlstf4.htm#bms_IF" target="ftslist" title="search letter IF"><b>IF</b></a> <a href="whlstf4.htm#bms_IJ" target="ftslist" title="search letter IJ"><b>IJ</b></a> <a href="whlstf4.htm#bms_IM" target="ftslist" title="search letter IM"><b>IM</b></a> <a href="whlstf4.htm#bms_IN" target="ftslist" title="search letter IN"><b>IN</b></a> <a href="whlstf4.htm#bms_IS" target="ftslist" title="search letter IS"><b>IS</b></a> <a href="whlstf4.htm#bms_IT" target="ftslist" title="search letter IT"><b>IT</b></a>  <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstg0.htm b/doc/salome/gui/VISU/whgdata/whlstg0.htm
deleted file mode 100755 (executable)
index 193fb7c..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-<html>
-<head>
-<title>Glossary words list</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<base target="bsscright">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.glsheader {margin-left:10pt; margin-top:0pt;}
-.glsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.glsheader {margin-top:0pt; } .glsheader {margin-bottom:0pt; } .glsheader {margin-left:9pt; } 
-
-.glsbody {margin-top:0pt; } .glsbody {margin-bottom:0pt; } .glsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; }A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-<p class="glsbody" style="margin-bottom:1pt;"><a name="bm_C"></a><nobr><b>Cell</b></nobr></p>
-<p class="glsbody" style="margin-top:1pt;">Element of a mesh. Cells are determined by their connectivity. They can have 0,1,2 or 3 dimension.<p>
-<p class="glsbody" style="margin-bottom:1pt;"><nobr><b>Component</b></nobr></p>
-<p class="glsbody" style="margin-top:1pt;">One integer or real value can correspond to each component of a field and to each entity of a mesh<p>
-<p class="glsbody" style="margin-bottom:1pt;"><a name="bm_D"></a><nobr><b>Descendant connectivity</b></nobr></p>
-<p class="glsbody" style="margin-top:1pt;">It is a description of the entities of the mesh with dimension N. This description is made by an ordered list of geometrical entities (nodes, edges, or faces) with dimension N-1.<p>
-<p class="glsbody" style="margin-bottom:1pt;"><a name="bm_E"></a><nobr><b>Edge</b></nobr></p>
-<p class="glsbody" style="margin-top:1pt;">An edge of a volumetric or surface mesh. It is composed of 2 or 3 nodes (2 vertex nodes and optionally one middle node).<p>
-<p class="glsbody" style="margin-bottom:1pt;"><nobr><b>Entity of a mesh</b></nobr></p>
-<p class="glsbody" style="margin-top:1pt;">Geometrical component of the mesh: node, cell, face and edge. Faces and edges are only intermediate entities allowing to define the cells in descendant connectivity.<p>
-<p class="glsbody" style="margin-bottom:1pt;"><nobr><b>Equivalence</b></nobr></p>
-<p class="glsbody" style="margin-top:1pt;">Equivalence represents a list of correspondance 2 by 2 of the entities of the same dimension.<p>
-<p class="glsbody" style="margin-bottom:1pt;"><a name="bm_F"></a><nobr><b>Face</b></nobr></p>
-<p class="glsbody" style="margin-top:1pt;">Face of a volumetrical cell (triangle, quadrangle).<p>
-<p class="glsbody" style="margin-bottom:1pt;"><nobr><b>Family</b></nobr></p>
-<p class="glsbody" style="margin-top:1pt;">Entities of a mesh are described by a certain number&nbsp;  of characteristics (boundary conditions, groups membership). Families represent classes equivalent to these characteristics (two entities of a mesh can belong to the same family if they have the same characteristics). Every family is determined by a set of attributes and a list of groups membership.<p>
-<p class="glsbody" style="margin-bottom:1pt;"><nobr><b>Field</b></nobr></p>
-<p class="glsbody" style="margin-top:1pt;">Field consists of one or several scalar components. One definite type is associated to the given field and the values corresponding to different components are all of the same type.<p>
-<p class="glsbody" style="margin-bottom:1pt;"><nobr><b>Field profile</b></nobr></p>
-<p class="glsbody" style="margin-top:1pt;">Fields can be defined only on one part of the mesh. Profile&nbsp;  of the field or profile of the component of a field indicates which entities of the mesh contain values.<p>
-<p class="glsbody" style="margin-bottom:1pt;"><a name="bm_G"></a><nobr><b>Group</b></nobr></p>
-<p class="glsbody" style="margin-top:1pt;">Unordered set of entities of a mesh. One entity can belong to&nbsp;  several groups.<p>
-<p class="glsbody" style="margin-bottom:1pt;"><a name="bm_M"></a><nobr><b>Mesh</b></nobr></p>
-<p class="glsbody" style="margin-top:1pt;">Mesh is described by its geometry: list of nodes and list of cells which constitute this mesh. Supplementary information is added with the help of families (initial, boundary conditions).<p>
-<p class="glsbody" style="margin-bottom:1pt;"><a name="bm_N"></a><nobr><b>Nodal connectivity</b></nobr></p>
-<p class="glsbody" style="margin-top:1pt;">It is a description of an entity of the mesh by an ordered list of nodes constituting this entity.<p>
-<p class="glsbody" style="margin-bottom:1pt;"><nobr><b>Node</b></nobr></p>
-<p class="glsbody" style="margin-top:1pt;">Node can be an isolated node of a mesh, a vertex or middle node of an edge. A node is associated to a point.<p>
-<p class="glsbody" style="margin-bottom:1pt;"><a name="bm_P"></a><nobr><b>Point</b></nobr></p>
-<p class="glsbody" style="margin-top:1pt;">Geometrical entity determined by its coordinates in the space.<p>
-<p class="glsbody" style="margin-bottom:1pt;"><a name="bm_R"></a><nobr><b>Reference connectivity</b></nobr></p>
-<p class="glsbody" style="margin-top:1pt;">For each type of entity of a mesh, reference connectivity define the topology of an entity.<p>
-<p class="glsbody" style="margin-bottom:1pt;"><nobr><b>Result</b></nobr></p>
-<p class="glsbody" style="margin-top:1pt;">List of fields referring to one mesh.<p>
-<p class="glsbody" style="margin-bottom:1pt;"><a name="bm_S"></a><nobr><b>Study</b></nobr></p>
-<p class="glsbody" style="margin-top:1pt;">Study represents a chain of sequences of calculations.<p>
-<p class="glsbody"><br><br></p>
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlsti0.htm b/doc/salome/gui/VISU/whgdata/whlsti0.htm
deleted file mode 100755 (executable)
index 32e2c7f..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-<html>
-<head>
-<!-- WebHelp version 5.10 -->
-<title>Index words list</title>
-<base target="bsscright">
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ndxheader {margin-left:10pt; margin-top:0pt;}
-.ndxbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ndxheader {margin-top:0pt; } .ndxheader {margin-bottom:0pt; } .ndxheader {margin-left:9pt; } 
-
-.ndxbody {margin-top:0pt; } .ndxbody {margin-bottom:0pt; } .ndxbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstt0.htm b/doc/salome/gui/VISU/whgdata/whlstt0.htm
deleted file mode 100755 (executable)
index 512f86b..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-<html>
-<head>
-<!-- WebHelp version 5.10 -->
-<title>Content</title>
-<base target="bsscright">
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-
-.tabs {background-color:#c0c0c0;}
-.tocbody {margin-left:10pt; margin-top:0pt;}
-.bo {}
-.bc {}
-.pn {}
-.pr {}
-
-.tocbody {margin-top:0pt; } .tocbody {margin-bottom:0pt; } .tocbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-img {vertial-align:middle;}
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-<table border=0>
-<tr><td>
-<p class="tocbody">
-<nobr><a name="1"></a><a href="whlstt1.htm#1" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> Post-Pro module</a></nobr><br>
-</p>
-
-</td></tr>
-<tr><td>
-<p><img src="whexpbar.gif" > <p>
-</td></tr>
-</table>
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstt1.htm b/doc/salome/gui/VISU/whgdata/whlstt1.htm
deleted file mode 100755 (executable)
index 2881803..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-<html>
-<head>
-<!-- WebHelp version 5.10 -->
-<title>Content</title>
-<base target="bsscright">
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-
-.tabs {background-color:#c0c0c0;}
-.tocbody {margin-left:10pt; margin-top:0pt;}
-.bo {}
-.bc {}
-.pn {}
-.pr {}
-
-.tocbody {margin-top:0pt; } .tocbody {margin-bottom:0pt; } .tocbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-img {vertial-align:middle;}
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-<table border=0>
-<tr><td>
-<p class="tocbody">
-<nobr><a name="1"></a><a href="whlstt0.htm#1" target="_self"><img src="../whd_toc2.gif" border="0" align="absmiddle"> Post-Pro module</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/introduction.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Introduction to Post-Pro</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/running_visu.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Running Post-Pro</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/importing_med_objects.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Importing MED files</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/about_structure_of_med_object.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Structure of MED objects</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a name="2"></a><a href="whlstt2.htm#2" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> 3D presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a name="6"></a><a href="whlstt6.htm#6" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> Table presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a name="7"></a><a href="whlstt7.htm#7" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> XY plots</a></nobr><br>
-</p>
-
-</td></tr>
-<tr><td>
-<p><img src="whexpbar.gif" > <p>
-</td></tr>
-</table>
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstt2.htm b/doc/salome/gui/VISU/whgdata/whlstt2.htm
deleted file mode 100755 (executable)
index 85cd929..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-<html>
-<head>
-<!-- WebHelp version 5.10 -->
-<title>Content</title>
-<base target="bsscright">
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-
-.tabs {background-color:#c0c0c0;}
-.tocbody {margin-left:10pt; margin-top:0pt;}
-.bo {}
-.bc {}
-.pn {}
-.pr {}
-
-.tocbody {margin-top:0pt; } .tocbody {margin-bottom:0pt; } .tocbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-img {vertial-align:middle;}
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-<table border=0>
-<tr><td>
-<p class="tocbody">
-<nobr><a name="1"></a><a href="whlstt0.htm#1" target="_self"><img src="../whd_toc2.gif" border="0" align="absmiddle"> Post-Pro module</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/introduction.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Introduction to Post-Pro</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/running_visu.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Running Post-Pro</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/importing_med_objects.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Importing MED files</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/about_structure_of_med_object.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Structure of MED objects</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a name="2"></a><a href="whlstt1.htm#2" target="_self"><img src="../whd_toc2.gif" border="0" align="absmiddle"> 3D presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/creating_presentations.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Presentation of a submesh</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a name="3"></a><a href="whlstt3.htm#3" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> Field presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a name="5"></a><a href="whlstt5.htm#5" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> Viewing 3D presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a name="6"></a><a href="whlstt6.htm#6" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> Table presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a name="7"></a><a href="whlstt7.htm#7" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> XY plots</a></nobr><br>
-</p>
-
-</td></tr>
-<tr><td>
-<p><img src="whexpbar.gif" > <p>
-</td></tr>
-</table>
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstt3.htm b/doc/salome/gui/VISU/whgdata/whlstt3.htm
deleted file mode 100755 (executable)
index d960e94..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-<html>
-<head>
-<!-- WebHelp version 5.10 -->
-<title>Content</title>
-<base target="bsscright">
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-
-.tabs {background-color:#c0c0c0;}
-.tocbody {margin-left:10pt; margin-top:0pt;}
-.bo {}
-.bc {}
-.pn {}
-.pr {}
-
-.tocbody {margin-top:0pt; } .tocbody {margin-bottom:0pt; } .tocbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-img {vertial-align:middle;}
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-<table border=0>
-<tr><td>
-<p class="tocbody">
-<nobr><a name="1"></a><a href="whlstt0.htm#1" target="_self"><img src="../whd_toc2.gif" border="0" align="absmiddle"> Post-Pro module</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/introduction.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Introduction to Post-Pro</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/running_visu.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Running Post-Pro</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/importing_med_objects.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Importing MED files</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/about_structure_of_med_object.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Structure of MED objects</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a name="2"></a><a href="whlstt1.htm#2" target="_self"><img src="../whd_toc2.gif" border="0" align="absmiddle"> 3D presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/creating_presentations.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Presentation of a submesh</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a name="3"></a><a href="whlstt2.htm#3" target="_self"><img src="../whd_toc2.gif" border="0" align="absmiddle"> Field presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/creating_field_presentations.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Creating field presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/scalar_map_presentation.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Scalar Map presentation</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/iso_surfaces_presentation.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Iso Surfaces presentation</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/cut_lines_presentation.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Cut Lines presentation</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/cut_lines_resentation.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Cut Planes presentation</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/deformed_shape_presentation.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Deformed Shape presentation</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/vectors_presentation.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Vectors Presentation</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/stream_lines_presentation.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Stream Lines presentation</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../scalar_map_on_deformed_shape_presentation.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Scalar Map on Deformed Shape presentation</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../plot_3d_presentation.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Plot 3D presentation</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/animating_presentations.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Animating presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a name="4"></a><a href="whlstt4.htm#4" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> Gauss Points Presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a name="5"></a><a href="whlstt5.htm#5" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> Viewing 3D presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a name="6"></a><a href="whlstt6.htm#6" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> Table presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a name="7"></a><a href="whlstt7.htm#7" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> XY plots</a></nobr><br>
-</p>
-
-</td></tr>
-<tr><td>
-<p><img src="whexpbar.gif" > <p>
-</td></tr>
-</table>
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstt4.htm b/doc/salome/gui/VISU/whgdata/whlstt4.htm
deleted file mode 100755 (executable)
index 253afb6..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-<html>
-<head>
-<!-- WebHelp version 5.10 -->
-<title>Content</title>
-<base target="bsscright">
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-
-.tabs {background-color:#c0c0c0;}
-.tocbody {margin-left:10pt; margin-top:0pt;}
-.bo {}
-.bc {}
-.pn {}
-.pr {}
-
-.tocbody {margin-top:0pt; } .tocbody {margin-bottom:0pt; } .tocbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-img {vertial-align:middle;}
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-<table border=0>
-<tr><td>
-<p class="tocbody">
-<nobr><a name="1"></a><a href="whlstt0.htm#1" target="_self"><img src="../whd_toc2.gif" border="0" align="absmiddle"> Post-Pro module</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/introduction.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Introduction to Post-Pro</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/running_visu.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Running Post-Pro</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/importing_med_objects.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Importing MED files</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/about_structure_of_med_object.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Structure of MED objects</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a name="2"></a><a href="whlstt1.htm#2" target="_self"><img src="../whd_toc2.gif" border="0" align="absmiddle"> 3D presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/creating_presentations.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Presentation of a submesh</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a name="3"></a><a href="whlstt2.htm#3" target="_self"><img src="../whd_toc2.gif" border="0" align="absmiddle"> Field presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/creating_field_presentations.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Creating field presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/scalar_map_presentation.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Scalar Map presentation</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/iso_surfaces_presentation.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Iso Surfaces presentation</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/cut_lines_presentation.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Cut Lines presentation</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/cut_lines_resentation.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Cut Planes presentation</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/deformed_shape_presentation.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Deformed Shape presentation</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/vectors_presentation.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Vectors Presentation</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/stream_lines_presentation.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Stream Lines presentation</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../scalar_map_on_deformed_shape_presentation.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Scalar Map on Deformed Shape presentation</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../plot_3d_presentation.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Plot 3D presentation</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/animating_presentations.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Animating presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a name="4"></a><a href="whlstt3.htm#4" target="_self"><img src="../whd_toc2.gif" border="0" align="absmiddle"> Gauss Points Presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../gauss_points_presentation.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Creating a Gauss Points Presentation</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../primitive_types.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Primitive Types</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../types_of_gauss_points_presentations.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Types of Gauss Points Presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../scalar_bar.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Scalar Bar</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../gauss_viewer.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Gauss Viewer</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../navigation_with_keyboard_and_spacemouse.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Navigation in the Gauss viewer</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../picking.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Picking</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../segmentation.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Segmentation</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../animation_in_gauss_viewer.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Recording in Gauss Viewer</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a name="5"></a><a href="whlstt5.htm#5" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> Viewing 3D presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a name="6"></a><a href="whlstt6.htm#6" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> Table presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a name="7"></a><a href="whlstt7.htm#7" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> XY plots</a></nobr><br>
-</p>
-
-</td></tr>
-<tr><td>
-<p><img src="whexpbar.gif" > <p>
-</td></tr>
-</table>
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstt5.htm b/doc/salome/gui/VISU/whgdata/whlstt5.htm
deleted file mode 100755 (executable)
index 1cbf89d..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-<html>
-<head>
-<!-- WebHelp version 5.10 -->
-<title>Content</title>
-<base target="bsscright">
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-
-.tabs {background-color:#c0c0c0;}
-.tocbody {margin-left:10pt; margin-top:0pt;}
-.bo {}
-.bc {}
-.pn {}
-.pr {}
-
-.tocbody {margin-top:0pt; } .tocbody {margin-bottom:0pt; } .tocbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-img {vertial-align:middle;}
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-<table border=0>
-<tr><td>
-<p class="tocbody">
-<nobr><a name="1"></a><a href="whlstt0.htm#1" target="_self"><img src="../whd_toc2.gif" border="0" align="absmiddle"> Post-Pro module</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/introduction.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Introduction to Post-Pro</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/running_visu.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Running Post-Pro</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/importing_med_objects.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Importing MED files</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/about_structure_of_med_object.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Structure of MED objects</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a name="2"></a><a href="whlstt1.htm#2" target="_self"><img src="../whd_toc2.gif" border="0" align="absmiddle"> 3D presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/creating_presentations.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Presentation of a submesh</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a name="3"></a><a href="whlstt3.htm#3" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> Field presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a name="5"></a><a href="whlstt2.htm#5" target="_self"><img src="../whd_toc2.gif" border="0" align="absmiddle"> Viewing 3D presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Viewing 3D Presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../vtk_3d_viewer.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> VTK 3D Viewer</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/scaling_presentations.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Translate Presentation</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../clipping.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Clipping </a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/sweeping.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Sweeping</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/getting_elements_attributes.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Selection Info</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a name="6"></a><a href="whlstt6.htm#6" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> Table presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a name="7"></a><a href="whlstt7.htm#7" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> XY plots</a></nobr><br>
-</p>
-
-</td></tr>
-<tr><td>
-<p><img src="whexpbar.gif" > <p>
-</td></tr>
-</table>
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstt6.htm b/doc/salome/gui/VISU/whgdata/whlstt6.htm
deleted file mode 100755 (executable)
index b98ace8..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-<html>
-<head>
-<!-- WebHelp version 5.10 -->
-<title>Content</title>
-<base target="bsscright">
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-
-.tabs {background-color:#c0c0c0;}
-.tocbody {margin-left:10pt; margin-top:0pt;}
-.bo {}
-.bc {}
-.pn {}
-.pr {}
-
-.tocbody {margin-top:0pt; } .tocbody {margin-bottom:0pt; } .tocbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-img {vertial-align:middle;}
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-<table border=0>
-<tr><td>
-<p class="tocbody">
-<nobr><a name="1"></a><a href="whlstt0.htm#1" target="_self"><img src="../whd_toc2.gif" border="0" align="absmiddle"> Post-Pro module</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/introduction.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Introduction to Post-Pro</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/running_visu.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Running Post-Pro</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/importing_med_objects.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Importing MED files</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/about_structure_of_med_object.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Structure of MED objects</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a name="2"></a><a href="whlstt2.htm#2" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> 3D presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a name="6"></a><a href="whlstt1.htm#6" target="_self"><img src="../whd_toc2.gif" border="0" align="absmiddle"> Table presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/about_tables.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> About tables</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/importing_tables.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Importing/exporting tables</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/displaying_tables.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Displaying tables</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../creating_tables.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Creating tables from Cut Lines presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a name="7"></a><a href="whlstt7.htm#7" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> XY plots</a></nobr><br>
-</p>
-
-</td></tr>
-<tr><td>
-<p><img src="whexpbar.gif" > <p>
-</td></tr>
-</table>
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whlstt7.htm b/doc/salome/gui/VISU/whgdata/whlstt7.htm
deleted file mode 100755 (executable)
index d048d93..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-<html>
-<head>
-<!-- WebHelp version 5.10 -->
-<title>Content</title>
-<base target="bsscright">
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-
-.tabs {background-color:#c0c0c0;}
-.tocbody {margin-left:10pt; margin-top:0pt;}
-.bo {}
-.bc {}
-.pn {}
-.pr {}
-
-.tocbody {margin-top:0pt; } .tocbody {margin-bottom:0pt; } .tocbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-img {vertial-align:middle;}
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-<table border=0>
-<tr><td>
-<p class="tocbody">
-<nobr><a name="1"></a><a href="whlstt0.htm#1" target="_self"><img src="../whd_toc2.gif" border="0" align="absmiddle"> Post-Pro module</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/introduction.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Introduction to Post-Pro</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/running_visu.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Running Post-Pro</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/importing_med_objects.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Importing MED files</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a href="../files/about_structure_of_med_object.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Structure of MED objects</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a name="2"></a><a href="whlstt2.htm#2" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> 3D presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a name="6"></a><a href="whlstt6.htm#6" target="_self" title="closed book"><img src="../whd_toc1.gif" border="0" align="absmiddle"> Table presentations</a></nobr><br>
-&nbsp;&nbsp;&nbsp;<nobr><a name="7"></a><a href="whlstt1.htm#7" target="_self"><img src="../whd_toc2.gif" border="0" align="absmiddle"> XY plots</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/creating_curves.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Creating curves</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/creating_xy_plot.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Creating XY plots</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../plot2d_viewer.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Plot2D Viewer</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../files/setting_properties_of_xy_plots.htm"><img src="../whd_toc3.gif" border="0" align="absmiddle"> Setting properties of XY plots</a></nobr><br>
-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<nobr><a href="../visugenidl_doc/VISU__Gen_8idl.html"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Access to Post-Pro module functionality from Python (using VISU_Gen.idl)</a></nobr><br>
-</p>
-
-</td></tr>
-<tr><td>
-<p><img src="whexpbar.gif" > <p>
-</td></tr>
-</table>
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whnvf30.htm b/doc/salome/gui/VISU/whgdata/whnvf30.htm
deleted file mode 100755 (executable)
index 7cff7ce..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-<html>
-<head>
-<!-- WebHelp version 5.10 -->
-<title>toc frame</title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-</head>
-<frameset rows="100%, *" border="0" frameborder="0">
-       <frame name="toctree" title="toc tree frame" src="whlstt0.htm"></frame>
-</frameset>
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whnvf31.htm b/doc/salome/gui/VISU/whgdata/whnvf31.htm
deleted file mode 100755 (executable)
index 91a985f..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-<html>
-<head>
-<!-- WebHelp version 5.10 -->
-<title>Index frame</title>
-<base target="bsscright">
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-</head>
-<frameset rows="40, *" border="0" frameborder="0">
-       <frame name="ndxletter" title="index letter frame" src="whnvl31.htm" noresize frameborder="1" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>
-       <frame name="ndxlist" title="index list frame" src="whlsti0.htm"></frame>
-</frameset>
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whnvf32.htm b/doc/salome/gui/VISU/whgdata/whnvf32.htm
deleted file mode 100755 (executable)
index bc2231f..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-<html>
-<head>
-<!-- WebHelp version 5.10 -->
-<title>search frame</title>
-<base target="bsscright">
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-</head>
-<frameset rows="40, *" border="0" frameborder="0">
-       <frame name="ftsletter" title="search letter frame" src="whnvl32.htm" noresize frameborder="1" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>
-       <frame name="ftslist" title="seach word frame" src="whlstf0.htm"></frame>
-</frameset>
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whnvf33.htm b/doc/salome/gui/VISU/whgdata/whnvf33.htm
deleted file mode 100755 (executable)
index 6c091d8..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-<html>
-<head>
-<!-- WebHelp version 5.10 -->
-<title>Glossary frame</title>
-<base target="bsscright">
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-</head>
-<frameset rows="40, *" border="0" frameborder="0">
-       <frame name="glsletter" title="glossary letter frame" src="whnvl33.htm" noresize frameborder="1" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>
-       <frame name="glslist" title="glossary defination frame" src="whlstg0.htm"></frame>
-</frameset>
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whnvl31.htm b/doc/salome/gui/VISU/whgdata/whnvl31.htm
deleted file mode 100755 (executable)
index e29abc0..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-<html>
-<head>
-<!-- WebHelp version 5.10 -->
-<title>Index Letters</title>
-<base target="bsscright">
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ndxheader {margin-left:10pt; margin-top:0pt;}
-.ndxbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ndxheader {margin-top:0pt; } .ndxheader {margin-bottom:0pt; } .ndxheader {margin-left:9pt; } 
-
-.ndxbody {margin-top:0pt; } .ndxbody {margin-bottom:0pt; } .ndxbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-
-<body>
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whnvl32.htm b/doc/salome/gui/VISU/whgdata/whnvl32.htm
deleted file mode 100755 (executable)
index 3c83f31..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-<html>
-<head>
-<!-- WebHelp version 5.10 -->
-<title>Search Letters</title>
-<base target="bsscright">
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-<p class="ftsheader">
-<a name="home"></a> <a href="whlstfl0.htm#subkey_{" target="_self"title="search non-alphabet letter"><b>#</b></a> 
- <a href="whlstfl1.htm#subkey_A" target="_self"title="search letter A"><b>A</b></a> 
- <a href="whlstfl2.htm#subkey_B" target="_self"title="search letter B"><b>B</b></a> 
- <a href="whlstfl3.htm#subkey_C" target="_self"title="search letter C"><b>C</b></a> 
- <a href="whlstfl4.htm#subkey_D" target="_self"title="search letter D"><b>D</b></a> 
- <a href="whlstfl5.htm#subkey_E" target="_self"title="search letter E"><b>E</b></a> 
- <a href="whlstfl6.htm#subkey_F" target="_self"title="search letter F"><b>F</b></a> 
- <a href="whlstfl7.htm#subkey_G" target="_self"title="search letter G"><b>G</b></a> 
- <a href="whlstfl8.htm#subkey_H" target="_self"title="search letter H"><b>H</b></a> 
- <a href="whlstfl9.htm#subkey_I" target="_self"title="search letter I"><b>I</b></a> 
- <a href="whlstfl10.htm#subkey_J" target="_self"title="search letter J"><b>J</b></a> 
- <a href="whlstf4.htm#bm_K" target="ftslist"title="search letter K" ><b>K</b></a> 
- <a href="whlstfl11.htm#subkey_L" target="_self"title="search letter L"><b>L</b></a> 
- <a href="whlstfl12.htm#subkey_M" target="_self"title="search letter M"><b>M</b></a> 
- <a href="whlstfl13.htm#subkey_N" target="_self"title="search letter N"><b>N</b></a> 
- <a href="whlstfl14.htm#subkey_O" target="_self"title="search letter O"><b>O</b></a> 
- <a href="whlstfl15.htm#subkey_P" target="_self"title="search letter P"><b>P</b></a> 
- <a href="whlstf6.htm#bm_Q" target="ftslist"title="search letter Q" ><b>Q</b></a> 
- <a href="whlstfl16.htm#subkey_R" target="_self"title="search letter R"><b>R</b></a> 
- <a href="whlstfl17.htm#subkey_S" target="_self"title="search letter S"><b>S</b></a> 
- <a href="whlstfl18.htm#subkey_T" target="_self"title="search letter T"><b>T</b></a> 
- <a href="whlstfl19.htm#subkey_U" target="_self"title="search letter U"><b>U</b></a> 
- <a href="whlstfl20.htm#subkey_V" target="_self"title="search letter V"><b>V</b></a> 
- <a href="whlstfl21.htm#subkey_W" target="_self"title="search letter W"><b>W</b></a> 
- <a href="whlstfl22.htm#subkey_X" target="_self"title="search letter X"><b>X</b></a> 
- <a href="whlstfl23.htm#subkey_Y" target="_self"title="search letter Y"><b>Y</b></a> 
- <a href="whlstfl24.htm#subkey_Z" target="_self"title="search letter Z"><b>Z</b></a> 
-</p>
-
-<body>
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whnvl33.htm b/doc/salome/gui/VISU/whgdata/whnvl33.htm
deleted file mode 100755 (executable)
index d6f20c3..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-<html>
-<head>
-<!-- WebHelp version 5.10 -->
-<title>Glossary Letters</title>
-<base target="bsscright">
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.glsheader {margin-left:10pt; margin-top:0pt;}
-.glsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.glsheader {margin-top:0pt; } .glsheader {margin-bottom:0pt; } .glsheader {margin-left:9pt; } 
-
-.glsbody {margin-top:0pt; } .glsbody {margin-bottom:0pt; } .glsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; }A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-<style>
-<!--
-
--->
-</style>
-</head>
-<body marginheight="0"  marginwidth="0" bgproperties="fixed">
-<p class="glsheader">
- <font class="inactive">#</font> 
- <font class="inactive">A</font> 
- <font class="inactive">B</font> 
- <a href="whlstg0.htm#bm_C" target="glslist"title="glossary letter C"><b>C</b></a> 
- <a href="whlstg0.htm#bm_D" target="glslist"title="glossary letter D"><b>D</b></a> 
- <a href="whlstg0.htm#bm_E" target="glslist"title="glossary letter E"><b>E</b></a> 
- <a href="whlstg0.htm#bm_F" target="glslist"title="glossary letter F"><b>F</b></a> 
- <a href="whlstg0.htm#bm_G" target="glslist"title="glossary letter G"><b>G</b></a> 
- <font class="inactive">H</font> 
- <font class="inactive">I</font> 
- <font class="inactive">J</font> 
- <font class="inactive">K</font> 
- <font class="inactive">L</font> 
- <a href="whlstg0.htm#bm_M" target="glslist"title="glossary letter M"><b>M</b></a> 
- <a href="whlstg0.htm#bm_N" target="glslist"title="glossary letter N"><b>N</b></a> 
- <font class="inactive">O</font> 
- <a href="whlstg0.htm#bm_P" target="glslist"title="glossary letter P"><b>P</b></a> 
- <font class="inactive">Q</font> 
- <a href="whlstg0.htm#bm_R" target="glslist"title="glossary letter R"><b>R</b></a> 
- <a href="whlstg0.htm#bm_S" target="glslist"title="glossary letter S"><b>S</b></a> 
- <font class="inactive">T</font> 
- <font class="inactive">U</font> 
- <font class="inactive">V</font> 
- <font class="inactive">W</font> 
- <font class="inactive">X</font> 
- <font class="inactive">Y</font> 
- <font class="inactive">Z</font> 
-</p>
-
-<body>
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whnvp30.htm b/doc/salome/gui/VISU/whgdata/whnvp30.htm
deleted file mode 100755 (executable)
index 0c9cb81..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- WebHelp version 5.10 -->
-<html>
-<head>
-<title> Content Navigation Pane </title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<style>
-
-</style>
-</head>
-<frameset rows="36, *" border="0" frameborder="0">
-       <frame name="toctabs" title="tab selection frame" src="whnvt30.htm" noresize frameborder="no" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>
-       <frame name="toclist" title="content frame" src="whlstt0.htm"></frame>
-</frameset>
-</html>
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/whgdata/whnvp31.htm b/doc/salome/gui/VISU/whgdata/whnvp31.htm
deleted file mode 100755 (executable)
index 87921c0..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- WebHelp version 5.10 -->
-<html>
-<head>
-<title> Index Navigation Pane </title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<style>
-
-</style>
-</head>
-<frameset rows="36, *" border="0" frameborder="0">
-       <frame name="ndxtabs" title="tab selection frame" src="whnvt31.htm" noresize frameborder="no" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>
-       <frame name="ndxdata" title="index frame" src="whnvf31.htm"></frame>
-</frameset>
-</html>
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/whgdata/whnvp32.htm b/doc/salome/gui/VISU/whgdata/whnvp32.htm
deleted file mode 100755 (executable)
index 90697b0..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- WebHelp version 5.10 -->
-<html>
-<head>
-<title> Search Navigation Pane </title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<style>
-
-</style>
-</head>
-<frameset rows="36, *" border="0" frameborder="0">
-       <frame name="ftstabs" title="tab selection frame" src="whnvt32.htm" noresize frameborder="no" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>
-       <frame name="ftsdata" title="search frame" src="whnvf32.htm"></frame>
-</frameset>
-</html>
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/whgdata/whnvp33.htm b/doc/salome/gui/VISU/whgdata/whnvp33.htm
deleted file mode 100755 (executable)
index 8351bcb..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- WebHelp version 5.10 -->
-<html>
-<head>
-<title> Glossary Navigation Pane </title>
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<style>
-
-</style>
-</head>
-<frameset rows="36, *" border="0" frameborder="0">
-       <frame name="glstabs" title="tab selection frame" src="whnvt33.htm" noresize frameborder="no" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>
-       <frame name="glsdata" title="glossary frame" src="whnvf33.htm"></frame>
-</frameset>
-</html>
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/whgdata/whnvt30.htm b/doc/salome/gui/VISU/whgdata/whnvt30.htm
deleted file mode 100755 (executable)
index ec1bb84..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-<html>
-<head>
-<!-- WebHelp version 5.10 -->
-<title>Content Navigation Tab</title>
-<base target="bsscright">
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-
-.tabs {background-color:#c0c0c0;}
-.tocbody {margin-left:10pt; margin-top:0pt;}
-.bo {}
-.bc {}
-.pn {}
-.pr {}
-
-.tocbody {margin-top:0pt; } .tocbody {margin-bottom:0pt; } .tocbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-img {vertial-align:middle;}
--->
-</style>
-</head>
-<body class="tabs" marginheight="0"  marginwidth="0" bgproperties="fixed">
-<table class="tabs" width="100%">
- <tr> 
-   <td class="tabs">
-   <nobr><a href="javascript:void(0)" title="Contents"><img src="../whd_tab1.gif" border="0"></a><a href="whnvp32.htm" target="_parent" title="Search"><img src="../whd_tab6.gif" border="0"></a><a href="whnvp33.htm" target="_parent" title="Glossary"><img src="../whd_tab8.gif" border="0"></a></nobr>
-   </td>
- </tr>
-</table>
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whnvt31.htm b/doc/salome/gui/VISU/whgdata/whnvt31.htm
deleted file mode 100755 (executable)
index e17d825..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<!-- WebHelp version 5.10 -->
-<title>Index Navigation Tab</title>
-<base target="bsscright">
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ndxheader {margin-left:10pt; margin-top:0pt;}
-.ndxbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ndxheader {margin-top:0pt; } .ndxheader {margin-bottom:0pt; } .ndxheader {margin-left:9pt; } 
-
-.ndxbody {margin-top:0pt; } .ndxbody {margin-bottom:0pt; } .ndxbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-</head>
-<body class="tabs" marginheight="0"  marginwidth="0" bgproperties="fixed">
-<table class="tabs" width="100%">
- <tr> 
-   <td class="tabs">
-   <nobr><a href="whnvp30.htm" target="_parent" title="Contents"><img src="../whd_tab2.gif" border="0"></a><a href="whnvp32.htm" target="_parent" title="Search"><img src="../whd_tab6.gif" border="0"></a><a href="whnvp33.htm" target="_parent" title="Glossary"><img src="../whd_tab8.gif" border="0"></a></nobr>
-   </td>
- </tr>
-</table>
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whnvt32.htm b/doc/salome/gui/VISU/whgdata/whnvt32.htm
deleted file mode 100755 (executable)
index d638925..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<!-- WebHelp version 5.10 -->
-<title>Search Navigation Tab</title>
-<base target="bsscright">
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.ftsheader {margin-left:10pt; margin-top:0pt;}
-.ftsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.ftsheader {margin-top:0pt; } .ftsheader {margin-bottom:0pt; } .ftsheader {margin-left:9pt; } 
-
-.ftsbody {margin-top:0pt; } .ftsbody {margin-bottom:0pt; } .ftsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; } A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-</head>
-<body class="tabs" marginheight="0"  marginwidth="0" bgproperties="fixed">
-<table class="tabs" width="100%">
- <tr> 
-   <td class="tabs">
-   <nobr><a href="whnvp30.htm" target="_parent" title="Contents"><img src="../whd_tab2.gif" border="0"></a><a href="javascript:void(0)" title="Search"><img src="../whd_tab5.gif" border="0"></a><a href="whnvp33.htm" target="_parent" title="Glossary"><img src="../whd_tab8.gif" border="0"></a></nobr>
-   </td>
- </tr>
-</table>
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whgdata/whnvt33.htm b/doc/salome/gui/VISU/whgdata/whnvt33.htm
deleted file mode 100755 (executable)
index af63a02..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<html>
-<head>
-<!-- WebHelp version 5.10 -->
-<title>Glossary Navigation Tab</title>
-<base target="bsscright">
-
-<meta name="generator" content="RoboHelp by eHelp Corporation   www.ehelp.com">
-<meta name="description" content="WebHelp 5.50">
-<style>
-<!--
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}
-
-A:link {font-family:Arial; font-size:9pt; color:#000000;  font-style:normal;  text-decoration:none; }
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal;  text-decoration:none; }
-A:active {background-color:#cccccc;}
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal;  text-decoration:underline; }
-
-.tabs {background-color:#c0c0c0;}
-.glsheader {margin-left:10pt; margin-top:0pt;}
-.glsbody {margin-left:10pt; margin-top:0pt;}
-.inactive {color:#666666;}
-.glsheader {margin-top:0pt; } .glsheader {margin-bottom:0pt; } .glsheader {margin-left:9pt; } 
-
-.glsbody {margin-top:0pt; } .glsbody {margin-bottom:0pt; } .glsbody {margin-left:9pt; } 
-p {color:#000000; } p {font-family:Arial; } p {font-size:9pt; } p {font-style:normal; } p {text-decoration:none; } 
-A:link {color:#000000; } A:link {font-family:Arial; } A:link {font-size:9pt; } A:link {font-style:normal; } A:link {text-decoration:none; } 
-A:visited {color:#000000; } A:visited {font-family:Arial; }A:visited {font-size:9pt; } A:visited {font-style:normal; } A:visited {text-decoration:none; } 
-A:active {background-color:#cccccc; } 
-A:hover {color:#007f00; } A:hover {font-family:Arial; } A:hover {font-size:9pt; } A:hover {font-style:normal; } A:hover {text-decoration:underline; } 
-
--->
-</style>
-</head>
-<body class="tabs" marginheight="0"  marginwidth="0" bgproperties="fixed">
-<table class="tabs" width="100%">
- <tr> 
-   <td class="tabs">
-   <nobr><a href="whnvp30.htm" target="_parent" title="Contents"><img src="../whd_tab2.gif" border="0"></a><a href="whnvp32.htm" target="_parent" title="Search"><img src="../whd_tab6.gif" border="0"></a><a href="javascript:void(0)" title="Glossary"><img src="../whd_tab7.gif" border="0"></a></nobr>
-   </td>
- </tr>
-</table>
-</body>
-
-</html>
-
diff --git a/doc/salome/gui/VISU/whxdata/whftdata0.xml b/doc/salome/gui/VISU/whxdata/whftdata0.xml
deleted file mode 100755 (executable)
index 18b3f31..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version='1.0' encoding='windows-1252' ?>
-<ftstdata>
-<topic name="Animation in Gauss Viewer" url="animation_in_gauss_viewer.htm" />
-<topic name="Clipping" url="clipping.htm" />
-<topic name="Creating tables" url="creating_tables.htm" />
-<topic name="About structure of MED object" url="files/about_structure_of_med_object.htm" />
-<topic name="About tables" url="files/about_tables.htm" />
-<topic name="Animating presentations" url="files/animating_presentations.htm" />
-<topic name="Setting presentation view parameters" url="files/changing_visualization_parameters_of_the_presenetation.htm" />
-<topic name="Creating curves" url="files/creating_curves.htm" />
-<topic name="Creating field presentations" url="files/creating_field_presentations.htm" />
-<topic name="Creating presentations" url="files/creating_presentations.htm" />
-<topic name="Creating XY plot" url="files/creating_xy_plot.htm" />
-<topic name="Cut Lines presentation" url="files/cut_lines_presentation.htm" />
-<topic name="Cut Planes presentation" url="files/cut_lines_resentation.htm" />
-<topic name="Deformed Shape presentation" url="files/deformed_shape_presentation.htm" />
-<topic name="Displaying/Hiding presentations" url="files/displaying_hiding_presentations.htm" />
-<topic name="Displaying tables" url="files/displaying_tables.htm" />
-<topic name="Getting elements attributes" url="files/getting_elements_attributes.htm" />
-<topic name="Getting started" url="files/getting_started.htm" />
-<topic name="Importing MED objects" url="files/importing_med_objects.htm" />
-<topic name="Importing tables" url="files/importing_tables.htm" />
-<topic name="Introduction" url="files/introduction.htm" />
-<topic name="Iso Surfaces presentation" url="files/iso_surfaces_presentation.htm" />
-<topic name="Running VISU" url="files/running_visu.htm" />
-<topic name="Scalar Map presentation" url="files/scalar_map_presentation.htm" />
-<topic name="Scaling presentations" url="files/scaling_presentations.htm" />
-<topic name="Setting properties of XY plots" url="files/setting_properties_of_xy_plots.htm" />
-<topic name="Stream Lines presentation" url="files/stream_lines_presentation.htm" />
-<topic name="Sweeping" url="files/sweeping.htm" />
-<topic name="Vectors presentation" url="files/vectors_presentation.htm" />
-<topic name="Gauss Points Presentation" url="gauss_points_presentation.htm" />
-<topic name="Gauss Viewer" url="gauss_viewer.htm" />
-<topic name="Navigation with keyboard and spacemouse" url="navigation_with_keyboard_and_spacemouse.htm" />
-<topic name="Picking" url="picking.htm" />
-<topic name="Plot2D Viewer" url="plot2d_viewer.htm" />
-<topic name="Plot 3D presentation" url="plot_3d_presentation.htm" />
-<topic name="Primitive Types" url="primitive_types.htm" />
-<topic name="Scalar Bar" url="scalar_bar.htm" />
-<topic name="Scalar Map on Deformed Shape presentation" url="scalar_map_on_deformed_shape_presentation.htm" />
-<topic name="Segmentation" url="segmentation.htm" />
-<topic name="Types of Gauss Points Presentations" url="types_of_gauss_points_presentations.htm" />
-<topic name="VTK 3D Viewer" url="vtk_3d_viewer.htm" />
-
-</ftstdata>  
diff --git a/doc/salome/gui/VISU/whxdata/whfts.xml b/doc/salome/gui/VISU/whxdata/whfts.xml
deleted file mode 100755 (executable)
index fd4d35b..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version='1.0' encoding='windows-1252' ?>
-<fts>
-<chunkinfo url="whfwdata0.xml" first="0" last="zx"/>
-
-<tchunkinfo first="0" last="40" url="whftdata0.xml" />
-
-</fts>
diff --git a/doc/salome/gui/VISU/whxdata/whfwdata0.xml b/doc/salome/gui/VISU/whxdata/whfwdata0.xml
deleted file mode 100755 (executable)
index 4922522..0000000
+++ /dev/null
@@ -1,888 +0,0 @@
-<?xml version='1.0' encoding='windows-1252' ?>
-<ftswdata>
-<key name="0"> 5,0,1,11,32,34,35,38,6,26,39, </key>
-<key name="001"> 32, </key>
-<key name="01"> 39, </key>
-<key name="1"> 4,5,0,7,2,10,11,15,14,19,31,32,34,33,35,6,27, </key>
-<key name="10"> 31,32,39, </key>
-<key name="100"> 0,32,6,26,39, </key>
-<key name="10n"> 33, </key>
-<key name="11"> 31, </key>
-<key name="16"> 35, </key>
-<key name="2"> 4,5,7,2,10,15,14,19,31,33,35,36,27,39, </key>
-<key name="200"> 7,39, </key>
-<key name="256"> 36, </key>
-<key name="2d"> 7,11,17,34,33,25,39, </key>
-<key name="3"> 4,5,7,10,19,24,27, </key>
-<key name="33"> 39, </key>
-<key name="3d"> 3,0,1,11,12,14,30,16,20,31,32,34,35,23,24,38,6,39,40, </key>
-<key name="4"> 5,7,10,24, </key>
-<key name="5"> 5,1,34,33, </key>
-<key name="50"> 39, </key>
-<key name="512"> 35, </key>
-<key name="6"> 31,35, </key>
-<key name="8"> 5,0,35, </key>
-<key name="abl"> 18,33,40, </key>
-<key name="abov"> 38, </key>
-<key name="abscissa"> 36, </key>
-<key name="absolut"> 11,39, </key>
-<key name="acceptabl"> 27,39, </key>
-<key name="acces"> 30,33,6,25,39,40, </key>
-<key name="accessibl"> 14, </key>
-<key name="accord"> 12,13,23,26,39,28, </key>
-<key name="accordanc"> 3, </key>
-<key name="accuracy"> 26, </key>
-<key name="action"> 0,31,24, </key>
-<key name="activ"> 32,34,36,39, </key>
-<key name="activat"> 5,0,30,32,38, </key>
-<key name="activity"> 0, </key>
-<key name="actor"> 16,6, </key>
-<key name="actual"> 38, </key>
-<key name="ad"> 5,0, </key>
-<key name="add"> 23, </key>
-<key name="addition"> 0,32, </key>
-<key name="additional"> 5,12,13,14,21,34,22,37,23,26,28, </key>
-<key name="adjust"> 5,1,32,25, </key>
-<key name="advanc"> 31,33, </key>
-<key name="again"> 5, </key>
-<key name="aimation"> 5, </key>
-<key name="algorithm"> 11, </key>
-<key name="allow"> 4,5,0,1,7,11,12,13,14,30,18,21,31,32,34,33,36,37,23,24,38,6,25,26,27,39,28,40, </key>
-<key name="along"> 16,33,24,38,6, </key>
-<key name="alpha"> 35, </key>
-<key name="already"> 5,26, </key>
-<key name="alternative"> 6, </key>
-<key name="alway"> 0, </key>
-<key name="analog"> 39, </key>
-<key name="angl"> 1,11,12,34, </key>
-<key name="animat"> 5,17, </key>
-<key name="animation"> 5,0,6,27, </key>
-<key name="anoth"> 5,12,26,27, </key>
-<key name="any"> 3,4,0,7,30,16,18,31,35, </key>
-<key name="ap"> 1,29,23,24, </key>
-<key name="apex"> 32, </key>
-<key name="api"> 0, </key>
-<key name="appear"> 5,7,10,14,23,25, </key>
-<key name="appli"> 3,8,2,11,12,13,16,21,34,35,37,23,26,27,39,28, </key>
-<key name="application"> 18,22, </key>
-<key name="area"> 33,26,40, </key>
-<key name="around"> 11,12,32,34,38,40, </key>
-<key name="arrang"> 6, </key>
-<key name="array"> 11, </key>
-<key name="arrow"> 28, </key>
-<key name="ask"> 0, </key>
-<key name="assign"> 7,30, </key>
-<key name="associat"> 36,39, </key>
-<key name="attribut"> 7,16,6, </key>
-<key name="auto"> 1,7,6, </key>
-<key name="automatical"> 1,7,11,14,30,18,38,27, </key>
-<key name="availabl"> 0,30,16,31,6,40, </key>
-<key name="averag"> 39, </key>
-<key name="avi"> 5,0, </key>
-<key name="avoid"> 6, </key>
-<key name="ax"> 1,11,12,34,33,24,6,25,40, </key>
-<key name="axi"> 7,11,12,31,34,33,38,6,40, </key>
-<key name="back"> 5,10, </key>
-<key name="background"> 30,33,6,25, </key>
-<key name="backward"> 31,26, </key>
-<key name="bar"> 5,11,12,13,29,21,32,34,36,37,23,38,6,26,39,28, </key>
-<key name="bas"> 3,5,10,11,17,20,23,26,27, </key>
-<key name="basi"> 3,4,7,11,21,33,23,26, </key>
-<key name="basic"> 35,23,27, </key>
-<key name="be"> 32, </key>
-<key name="becom"> 18,32, </key>
-<key name="befor"> 22, </key>
-<key name="begin"> 5, </key>
-<key name="belong"> 11,35,23, </key>
-<key name="below"> 32,38, </key>
-<key name="bet"> 0, </key>
-<key name="bicolor"> 36,39, </key>
-<key name="big"> 35,28, </key>
-<key name="bin"> 5,0, </key>
-<key name="black"> 32,36, </key>
-<key name="blu"> 18,36, </key>
-<key name="bmp"> 30,33,35,6,40, </key>
-<key name="both"> 8,30,34,36,25,26,39, </key>
-<key name="bottom"> 33,36,38, </key>
-<key name="bound"> 26,40, </key>
-<key name="boundari"> 38, </key>
-<key name="boundary"> 3,32, </key>
-<key name="box"> 5,0,7,10,11,12,13,14,16,18,19,34,33,23,24,38,26,39,28,40, </key>
-<key name="brows"> 3,5,0,7,8,9,2,10,11,12,13,15,14,29,30,18,19,21,34,35,37,23,24,6,25,26,27,28, </key>
-<key name="build"> 18,23, </key>
-<key name="built"> 18,37,23, </key>
-<key name="button"> 5,0,1,10,14,29,30,19,21,31,32,34,33,23,24,38,6,26,39,28,40, </key>
-<key name="cal"> 33,38, </key>
-<key name="calculation"> 3,35,23, </key>
-<key name="camera"> 32,35, </key>
-<key name="cancel"> 29,35,24, </key>
-<key name="cannot"> 35, </key>
-<key name="cas"> 5,30,32,23,39, </key>
-<key name="caus"> 6, </key>
-<key name="cel"> 3,4,8,2,11,12,13,16,21,34,37,23,26,27,39,28, </key>
-<key name="cell"> 16, </key>
-<key name="cent"> 33,28,40, </key>
-<key name="center"> 32, </key>
-<key name="centr"> 32, </key>
-<key name="central"> 30,31, </key>
-<key name="certain"> 6, </key>
-<key name="chang"> 5,0,14,29,30,31,33,24,38,6,25,39,40, </key>
-<key name="channel"> 35, </key>
-<key name="characteristic"> 16,36,38, </key>
-<key name="check"> 5,0,7,11,12,13,18,34,33,36,23,6,26,28,40, </key>
-<key name="checkbox"> 34, </key>
-<key name="checkmark"> 7, </key>
-<key name="choic"> 1,14,29,18, </key>
-<key name="choos"> 0,1,7,8,9,10,11,12,13,15,14,29,30,16,18,19,21,34,36,37,23,26,28,40, </key>
-<key name="chosen"> 3,0,10,16,24,26, </key>
-<key name="circl"> 7, </key>
-<key name="clamp"> 35, </key>
-<key name="clean"> 5, </key>
-<key name="click"> 5,0,1,7,8,9,2,10,11,12,13,15,14,29,30,16,18,19,21,32,34,33,22,37,23,24,38,6,25,26,27,28,40, </key>
-<key name="clip"> 0,1,38,6, </key>
-<key name="clockwis"> 31, </key>
-<key name="clon"> 33, </key>
-<key name="clos"> 18,35, </key>
-<key name="coincid"> 7, </key>
-<key name="color"> 7,11,12,13,32,34,33,35,36,23,26,39,28,40, </key>
-<key name="colour"> 18, </key>
-<key name="column"> 4,7, </key>
-<key name="combin"> 3,21,31, </key>
-<key name="command"> 5,0,31,38, </key>
-<key name="common"> 30,6, </key>
-<key name="compar"> 37, </key>
-<key name="comparison"> 5,27, </key>
-<key name="compatibl"> 3, </key>
-<key name="complet"> 18, </key>
-<key name="complete"> 1, </key>
-<key name="complicat"> 26, </key>
-<key name="component"> 4,5,20,32,35,22,36,23, </key>
-<key name="compos"> 3,5,2,10,27, </key>
-<key name="comput"> 5,0,35,39, </key>
-<key name="computation"> 26, </key>
-<key name="con"> 28, </key>
-<key name="concept"> 3, </key>
-<key name="condition"> 3, </key>
-<key name="configur"> 38, </key>
-<key name="configuration"> 30,39, </key>
-<key name="confirm"> 14,18,24, </key>
-<key name="consider"> 36, </key>
-<key name="consist"> 10,11,33,23, </key>
-<key name="construct"> 3,7,11,21,33,23,26, </key>
-<key name="construction"> 11,26, </key>
-<key name="consum"> 26, </key>
-<key name="contain"> 3,7,8,10,11,18,19,23, </key>
-<key name="content"> 0,33,38,40, </key>
-<key name="context"> 6, </key>
-<key name="continu"> 0,35, </key>
-<key name="contour"> 34, </key>
-<key name="control"> 30,31,36,26,39, </key>
-<key name="convey"> 26, </key>
-<key name="coordinat"> 7,16,31,32,23,38,6,40, </key>
-<key name="copi"> 0, </key>
-<key name="copy"> 14,30,6, </key>
-<key name="corn"> 32, </key>
-<key name="correspond"> 3,7,13,32,34,35,36,39,28, </key>
-<key name="correspondenc"> 3,23, </key>
-<key name="corrupt"> 0, </key>
-<key name="cost"> 26, </key>
-<key name="counterclockwis"> 31, </key>
-<key name="cours"> 35, </key>
-<key name="creat"> 3,4,5,1,7,8,9,2,10,11,12,13,29,30,17,19,21,34,22,37,23,38,6,26,27,39,28, </key>
-<key name="creation"> 10,11,14,22,23,27, </key>
-<key name="cros"> 1,7,6, </key>
-<key name="ctrl"> 14,30,31, </key>
-<key name="current"> 7,30,31,32,35,36,25, </key>
-<key name="cursor"> 32,35,38, </key>
-<key name="curv"> 7,10,11,33,25, </key>
-<key name="customiz"> 32, </key>
-<key name="cut"> 4,2,11,12,34, </key>
-<key name="cycl"> 5, </key>
-<key name="dash"> 7, </key>
-<key name="data"> 3,4,7,11,17,18,20,23, </key>
-<key name="decimal"> 34, </key>
-<key name="decreas"> 5,30,31,34, </key>
-<key name="default"> 7,11,12,13,18,31,33,35,22,36,23,39,40, </key>
-<key name="defin"> 3,0,1,7,11,12,13,21,31,32,34,33,35,36,37,23,38,25,26,27,39,28,40, </key>
-<key name="definabl"> 38, </key>
-<key name="definit"> 3,5,10,12,16, </key>
-<key name="definition"> 34,35, </key>
-<key name="deform"> 13,37,39, </key>
-<key name="deformation"> 5, </key>
-<key name="degre"> 1,11,12,31,34, </key>
-<key name="delet"> 1,14, </key>
-<key name="depend"> 5,31,35,38,39, </key>
-<key name="depth"> 38, </key>
-<key name="describ"> 4,30,6, </key>
-<key name="description"> 31,33, </key>
-<key name="design"> 36, </key>
-<key name="desktop"> 22, </key>
-<key name="destin"> 5,20,33, </key>
-<key name="detail"> 30,6, </key>
-<key name="develop"> 30, </key>
-<key name="diagonal"> 7, </key>
-<key name="dialog"> 5,0,7,10,11,14,29,16,18,19,35,36,23,24,38,39, </key>
-<key name="diamond"> 7, </key>
-<key name="different"> 3,5,30,36,38,39, </key>
-<key name="dimension"> 36,23, </key>
-<key name="direct"> 38, </key>
-<key name="direction"> 30,31,38,26, </key>
-<key name="directory"> 5, </key>
-<key name="disabl"> 0,34,36,39, </key>
-<key name="displacement"> 11,12, </key>
-<key name="display"> 4,5,0,1,7,8,9,2,10,11,12,13,15,14,30,16,18,21,32,34,33,35,36,37,23,38,6,25,26,27,28,40, </key>
-<key name="distanc"> 1,32,35,24,6,40, </key>
-<key name="divid"> 3,31,39, </key>
-<key name="division"> 33, </key>
-<key name="do"> 31, </key>
-<key name="documentation"> 30,6, </key>
-<key name="doesn"> 33, </key>
-<key name="dominant"> 31, </key>
-<key name="don"> 33,35,40, </key>
-<key name="dot"> 7, </key>
-<key name="down"> 5,14,31, </key>
-<key name="download"> 5,0, </key>
-<key name="downward"> 7,40, </key>
-<key name="drag"> 33,38,40, </key>
-<key name="draw"> 33, </key>
-<key name="drawn"> 33,40, </key>
-<key name="dump"> 30,33,6,25,40, </key>
-<key name="duplicat"> 14,33, </key>
-<key name="dynamic"> 31, </key>
-<key name="dynamical"> 32,39, </key>
-<key name="e"> 35,36, </key>
-<key name="edg"> 3,6, </key>
-<key name="edit"> 10,11,12,14,30,38,6, </key>
-<key name="editabl"> 39, </key>
-<key name="edition"> 39, </key>
-<key name="effect"> 39, </key>
-<key name="eith"> 1, </key>
-<key name="elaps"> 18, </key>
-<key name="element"> 3,16,32,38,6, </key>
-<key name="els"> 36, </key>
-<key name="empty"> 4,7, </key>
-<key name="end"> 5,32,35,38,27, </key>
-<key name="ent"> 14,16,19,21,23, </key>
-<key name="enter"> 11,12, </key>
-<key name="entiti"> 3,18, </key>
-<key name="entity"> 26, </key>
-<key name="equal"> 21,35,23, </key>
-<key name="eras"> 14,30,38,6,25, </key>
-<key name="etc"> 30, </key>
-<key name="even"> 7, </key>
-<key name="every"> 3,5, </key>
-<key name="everyth"> 18, </key>
-<key name="exact"> 0,18, </key>
-<key name="examin"> 16, </key>
-<key name="exce"> 33, </key>
-<key name="exceed"> 35, </key>
-<key name="except"> 39,40, </key>
-<key name="exist"> 14,34,6,39, </key>
-<key name="exit"> 29,38, </key>
-<key name="explor"> 26, </key>
-<key name="export"> 5,0,30,19,33,6,40, </key>
-<key name="expres"> 16, </key>
-<key name="extend"> 40, </key>
-<key name="extent"> 16, </key>
-<key name="extremiti"> 1, </key>
-<key name="fac"> 3,35, </key>
-<key name="factor"> 13,34,35,37,39,28, </key>
-<key name="fami"> 3,26, </key>
-<key name="famili"> 3,18, </key>
-<key name="fast"> 33, </key>
-<key name="featur"> 36,24,26, </key>
-<key name="field"> 3,5,8,11,12,13,14,29,16,17,18,20,21,34,37,23,24,6,26,27,28, </key>
-<key name="fil"> 3,4,5,0,17,18,19,35,23,25, </key>
-<key name="find"> 18, </key>
-<key name="finish"> 0,11,12,13,18,21,34,37,23,26,28, </key>
-<key name="first"> 5,32,38, </key>
-<key name="fit"> 33,25,40, </key>
-<key name="fix"> 32,39, </key>
-<key name="focal"> 31,32, </key>
-<key name="fold"> 3,19, </key>
-<key name="folder"> 3, </key>
-<key name="follow"> 3,5,0,1,7,8,10,14,30,16,19,31,32,33,22,23,6,25, </key>
-<key name="font"> 36,23,40, </key>
-<key name="form"> 2,16,20,33, </key>
-<key name="format"> 30,33,6,40, </key>
-<key name="formula"> 35, </key>
-<key name="forth"> 39, </key>
-<key name="forward"> 31,26, </key>
-<key name="found"> 36, </key>
-<key name="fp"> 0, </key>
-<key name="fram"> 5,0,33,27,40, </key>
-<key name="framework"> 21, </key>
-<key name="fre"> 30, </key>
-<key name="freedom"> 31, </key>
-<key name="ful"> 18, </key>
-<key name="function"> 38, </key>
-<key name="functionaliti"> 30,40, </key>
-<key name="functionality"> 4,0,7,34,33,38,40, </key>
-<key name="g"> 35, </key>
-<key name="gaus"> 0,29,30,31,32,35,36,38,39,40, </key>
-<key name="general"> 3, </key>
-<key name="generat"> 5,11,21,32,26,27, </key>
-<key name="generation"> 5,26, </key>
-<key name="geom"> 38, </key>
-<key name="geometrical"> 3,18,35,39, </key>
-<key name="geometry"> 39, </key>
-<key name="get"> 5,16,32, </key>
-<key name="giv"> 0,1,30,33,6,25,39, </key>
-<key name="given"> 0,7,12,35,36, </key>
-<key name="gl"> 35, </key>
-<key name="global"> 33,36,40, </key>
-<key name="glyph"> 28, </key>
-<key name="graduat"> 40, </key>
-<key name="graduation"> 23, </key>
-<key name="graph"> 33,25, </key>
-<key name="graphic"> 25, </key>
-<key name="graphical"> 28, </key>
-<key name="great"> 0,32,33,35,40, </key>
-<key name="grey"> 36, </key>
-<key name="grid"> 33, </key>
-<key name="group"> 3,18,23,26, </key>
-<key name="gui"> 30,6, </key>
-<key name="h"> 7, </key>
-<key name="half"> 39, </key>
-<key name="halv"> 1,34, </key>
-<key name="hardwar"> 26, </key>
-<key name="hav"> 10,11,19,26, </key>
-<key name="head"> 31,28, </key>
-<key name="height"> 32,36,23, </key>
-<key name="help"> 4, </key>
-<key name="her"> 5,11,33,23,39, </key>
-<key name="hid"> 1,14,30,32,6,25,40, </key>
-<key name="hidden"> 14, </key>
-<key name="high"> 35, </key>
-<key name="highest"> 18, </key>
-<key name="highlight"> 16,32, </key>
-<key name="hold"> 14, </key>
-<key name="horisontal"> 7, </key>
-<key name="horizontal"> 1,33,36,23, </key>
-<key name="how"> 17,18, </key>
-<key name="http"> 5,0, </key>
-<key name="i"> 16,36, </key>
-<key name="icon"> 11,12,13,29,21,34,22,37,23,26,28, </key>
-<key name="id"> 16,32, </key>
-<key name="if"> 5,0,1,7,11,14,16,18,32,34,33,35,36,23,26,28,40, </key>
-<key name="ijk"> 1, </key>
-<key name="imag"> 0,30,33,6,40, </key>
-<key name="immediate"> 1,11,12,13,14,16,18,21,34,37,23,26,39,28, </key>
-<key name="import"> 4,7,9,17,18,19, </key>
-<key name="impos"> 23, </key>
-<key name="impossibl"> 6, </key>
-<key name="inactiv"> 36,23, </key>
-<key name="includ"> 3,0,20,26,39, </key>
-<key name="increas"> 5,30,31,34, </key>
-<key name="increment"> 31, </key>
-<key name="independent"> 3,31, </key>
-<key name="index"> 1,16, </key>
-<key name="indicat"> 3,5,0,7,23, </key>
-<key name="individual"> 32, </key>
-<key name="info"> 16,6, </key>
-<key name="information"> 3,16,32,33,35,6,39, </key>
-<key name="initial"> 3,22,27, </key>
-<key name="input"> 0, </key>
-<key name="insid"> 11,38, </key>
-<key name="insidefram"> 6, </key>
-<key name="inspect"> 32,36,38, </key>
-<key name="instal"> 5,0, </key>
-<key name="install_root"> 5,0, </key>
-<key name="instead"> 11, </key>
-<key name="integration"> 26, </key>
-<key name="intend"> 5, </key>
-<key name="interaction"> 30,31, </key>
-<key name="interest"> 26, </key>
-<key name="interpolation"> 3, </key>
-<key name="interval"> 0,11,33,35, </key>
-<key name="introduc"> 31, </key>
-<key name="introduction"> 20, </key>
-<key name="invert"> 11, </key>
-<key name="iso"> 21, </key>
-<key name="isobaric"> 21, </key>
-<key name="isometric"> 40, </key>
-<key name="item"> 10,18,19, </key>
-<key name="iteration"> 32, </key>
-<key name="j"> 16, </key>
-<key name="jpeg"> 30,33,6,40, </key>
-<key name="jpeg2yuv"> 5,0, </key>
-<key name="jpg"> 30,33,35,6,40, </key>
-<key name="just"> 0, </key>
-<key name="k"> 16, </key>
-<key name="key"> 31,32,39, </key>
-<key name="keyboard"> 30,31,32,39, </key>
-<key name="kind"> 5, </key>
-<key name="label"> 36,23,25,40, </key>
-<key name="larg"> 23, </key>
-<key name="largest"> 39, </key>
-<key name="last"> 5, </key>
-<key name="latest"> 0, </key>
-<key name="latitud"> 35, </key>
-<key name="launch"> 17,22, </key>
-<key name="layout"> 30,16, </key>
-<key name="learn"> 38, </key>
-<key name="least"> 7, </key>
-<key name="left"> 10,30,31,32,33,36,23,40, </key>
-<key name="leftward"> 7, </key>
-<key name="legend"> 33,25, </key>
-<key name="length"> 11,26,39,40, </key>
-<key name="les"> 0,23, </key>
-<key name="level"> 35, </key>
-<key name="lik"> 3,22, </key>
-<key name="limit"> 35,36, </key>
-<key name="lin"> 4,7,2,10,11,32,33,36,6,26,28, </key>
-<key name="linear"> 33,36,25, </key>
-<key name="list"> 3,5,1,10,23,26, </key>
-<key name="ll"> 0,33,40, </key>
-<key name="load"> 18, </key>
-<key name="local"> 31,36, </key>
-<key name="locat"> 8,11,12,19,32,34,36,38,6,26,39,40, </key>
-<key name="location"> 5,0,35,38, </key>
-<key name="lock"> 30,31,40, </key>
-<key name="logarithmic"> 33,23,25, </key>
-<key name="longitud"> 35, </key>
-<key name="look"> 22, </key>
-<key name="lookout"> 36, </key>
-<key name="lot"> 26, </key>
-<key name="low"> 0,38, </key>
-<key name="lowest"> 18, </key>
-<key name="ly"> 34,6, </key>
-<key name="m"> 39, </key>
-<key name="magnification"> 31,35,39, </key>
-<key name="magnitud"> 13,26,28, </key>
-<key name="main"> 3,5,8,10,11,12,13,14,29,16,19,21,34,33,35,37,23,38,26,28, </key>
-<key name="major"> 33, </key>
-<key name="mak"> 8,26, </key>
-<key name="management"> 5, </key>
-<key name="manipulat"> 30,31, </key>
-<key name="manipulation"> 30,31, </key>
-<key name="manipulator"> 31, </key>
-<key name="manual"> 4,11,12,38,6,40, </key>
-<key name="map"> 37,23, </key>
-<key name="mark"> 7,11,33,40, </key>
-<key name="marker"> 32,33,36, </key>
-<key name="massles"> 26, </key>
-<key name="matrix"> 35,36, </key>
-<key name="max"> 18,36,39, </key>
-<key name="maximal"> 23, </key>
-<key name="maximum"> 21,33,35,36,26,39, </key>
-<key name="mean"> 5,32,39, </key>
-<key name="measur"> 35,26, </key>
-<key name="memory"> 5, </key>
-<key name="menu"> 5,1,7,8,9,2,10,11,12,13,15,14,29,30,16,18,19,21,34,33,35,22,37,23,38,6,25,26,27,39,28, </key>
-<key name="merg"> 6, </key>
-<key name="mesh"> 3,11,12,13,16,17,32,34,37,23,38,26,39,28, </key>
-<key name="method"> 4, </key>
-<key name="might"> 6, </key>
-<key name="min"> 18,36,39, </key>
-<key name="minimal"> 23, </key>
-<key name="minimum"> 21,36,38,27,39, </key>
-<key name="minor"> 33, </key>
-<key name="mis"> 5,0, </key>
-<key name="mix"> 37, </key>
-<key name="mjpeg"> 5,0, </key>
-<key name="mjpegtool"> 5,0, </key>
-<key name="mod"> 0,1,30,31,32,33,36,23,6,28, </key>
-<key name="model"> 31, </key>
-<key name="modify"> 14,39, </key>
-<key name="modul"> 3,5,30,17,20,33,35,22,23,38,6,40, </key>
-<key name="modulu"> 36, </key>
-<key name="moment"> 3, </key>
-<key name="momentari"> 32, </key>
-<key name="monitor"> 18, </key>
-<key name="mous"> 14,30,31,32,33,38,6,40, </key>
-<key name="mov"> 5,10,31,24,38, </key>
-<key name="movement"> 31,32, </key>
-<key name="multip"> 31,39, </key>
-<key name="multipl"> 26, </key>
-<key name="multipli"> 32,35,39, </key>
-<key name="n"> 33,36,39, </key>
-<key name="nam"> 0,10,14,16,19,32,33,40, </key>
-<key name="natural"> 33, </key>
-<key name="navigation"> 31, </key>
-<key name="nb"> 36,23, </key>
-<key name="nbrfac"> 35, </key>
-<key name="ne"> 5,0,1, </key>
-<key name="necessary"> 5,16,18,19, </key>
-<key name="negativ"> 36,39, </key>
-<key name="net"> 5,0, </key>
-<key name="new"> 1,8,2,10,17,19,33,22,38,6, </key>
-<key name="next"> 5,32, </key>
-<key name="nod"> 3, </key>
-<key name="non"> 7,26, </key>
-<key name="normal"> 1, </key>
-<key name="not"> 0,18,23, </key>
-<key name="notify"> 35, </key>
-<key name="now"> 1,29,32, </key>
-<key name="nth"> 36, </key>
-<key name="null"> 39, </key>
-<key name="numb"> 5,12,16,21,32,34,33,35,36,23,26,27,39,40, </key>
-<key name="number"> 32, </key>
-<key name="numerical"> 33, </key>
-<key name="object"> 3,5,1,7,8,9,2,10,11,12,13,15,14,29,30,16,18,19,21,31,34,33,37,23,24,6,25,26,27,28,40, </key>
-<key name="observ"> 11,12, </key>
-<key name="obtain"> 35, </key>
-<key name="offset"> 40, </key>
-<key name="often"> 3, </key>
-<key name="ok"> 5,0,7,10,11,12,13,14,29,19,21,34,37,23,24,26,28, </key>
-<key name="on"> 3,5,1,7,8,10,11,12,13,14,29,19,21,34,35,37,23,26,27,28, </key>
-<key name="onc"> 7,18,32,38, </key>
-<key name="oncel"> 3, </key>
-<key name="onedg"> 3, </key>
-<key name="onfac"> 3, </key>
-<key name="onnod"> 3, </key>
-<key name="opacity"> 6, </key>
-<key name="opaqu"> 32,6, </key>
-<key name="open"> 18,19,33,35, </key>
-<key name="opengl"> 35, </key>
-<key name="operation"> 5,11,14,30,18,31,33,35, </key>
-<key name="opposit"> 1, </key>
-<key name="optimiz"> 5, </key>
-<key name="optimization"> 26, </key>
-<key name="option"> 5,7,13,15,14,30,18,31,33,36,6,25,26,27,28, </key>
-<key name="ordinary"> 37, </key>
-<key name="ordinat"> 36, </key>
-<key name="orient"> 1, </key>
-<key name="orientat"> 40, </key>
-<key name="orientation"> 1,11,12,34,36,23,38, </key>
-<key name="origin"> 36,23,38,40, </key>
-<key name="otherwis"> 18, </key>
-<key name="out"> 33,23,40, </key>
-<key name="output"> 26, </key>
-<key name="outsid"> 38, </key>
-<key name="overview"> 17, </key>
-<key name="own"> 3,23, </key>
-<key name="packag"> 5,0, </key>
-<key name="pagedn"> 31, </key>
-<key name="pageup"> 31, </key>
-<key name="palet"> 36, </key>
-<key name="pan"> 31,33,40, </key>
-<key name="parallel"> 5, </key>
-<key name="paramet"> 11,12,35,26, </key>
-<key name="parameter"> 5,1,7,11,12,13,14,30,17,21,34,35,36,37,23,38,6,26,28,40, </key>
-<key name="parent"> 32, </key>
-<key name="pars"> 18, </key>
-<key name="part"> 3,5,0,1,7,33,38,40, </key>
-<key name="particl"> 26, </key>
-<key name="particular"> 3,10,26, </key>
-<key name="party"> 5,0, </key>
-<key name="path"> 5,0,26, </key>
-<key name="paus"> 0, </key>
-<key name="per"> 0, </key>
-<key name="perform"> 3,0,18,40, </key>
-<key name="performanc"> 5, </key>
-<key name="period"> 3,5, </key>
-<key name="perpendicular"> 1, </key>
-<key name="personal"> 14, </key>
-<key name="physical"> 3, </key>
-<key name="pick"> 30,32, </key>
-<key name="pictur"> 5,35, </key>
-<key name="pixel"> 35, </key>
-<key name="plac"> 11,33,6,40, </key>
-<key name="placement"> 36, </key>
-<key name="plan"> 1,11,12,30,34,38,6, </key>
-<key name="plat"> 34, </key>
-<key name="platform"> 20,22, </key>
-<key name="play"> 0, </key>
-<key name="plot"> 7,10,11,17,20,34,33,25, </key>
-<key name="plot2d"> 7,10, </key>
-<key name="plot2dview"> 7, </key>
-<key name="png"> 30,33,35,6,40, </key>
-<key name="point"> 3,7,29,30,16,31,32,33,35,36,38,6,26,39,40, </key>
-<key name="pointer"> 28, </key>
-<key name="polylin"> 26, </key>
-<key name="pop"> 5,7,8,9,2,10,11,12,13,15,14,29,21,34,37,23,6,26,27,28, </key>
-<key name="position"> 1,11,12,30,32,34,33,39,28,40, </key>
-<key name="positiv"> 36, </key>
-<key name="posses"> 16,31, </key>
-<key name="possibility"> 0,25, </key>
-<key name="possibl"> 5,1,7,8,31,38,39, </key>
-<key name="post"> 3,4,5,0,7,8,2,10,11,30,17,18,19,20,33,22,23,6,26,27,40, </key>
-<key name="preferenc"> 18,31,32,35,22,23,6, </key>
-<key name="pres"> 5,0,29,30,32,33,40, </key>
-<key name="present"> 5,23, </key>
-<key name="presentation"> 3,4,5,0,1,8,9,2,11,12,13,14,29,30,16,17,20,21,32,34,35,22,36,37,23,24,38,6,26,27,39,28,40, </key>
-<key name="presum"> 36, </key>
-<key name="preview"> 1,11,12,34, </key>
-<key name="previou"> 5, </key>
-<key name="previous"> 4,10,21,31,25, </key>
-<key name="primitiv"> 29,35,38,39, </key>
-<key name="pro"> 3,4,5,0,7,8,2,10,11,30,17,18,19,20,33,22,23,6,26,27,40, </key>
-<key name="problem"> 6, </key>
-<key name="procedur"> 11, </key>
-<key name="proces"> 18,20,27,39, </key>
-<key name="produc"> 0,20, </key>
-<key name="product"> 5,0, </key>
-<key name="progres"> 18,35, </key>
-<key name="progression"> 36, </key>
-<key name="progressiv"> 0, </key>
-<key name="prompt"> 35, </key>
-<key name="propagation"> 26, </key>
-<key name="proper"> 5,0, </key>
-<key name="properti"> 5,0,13,29,30,33,36,23,6,25,28,40, </key>
-<key name="proportional"> 5, </key>
-<key name="provid"> 20,31,6, </key>
-<key name="pseudo"> 6,27, </key>
-<key name="publish"> 5, </key>
-<key name="pull"> 31, </key>
-<key name="purpos"> 35,26, </key>
-<key name="push"> 31, </key>
-<key name="put"> 3, </key>
-<key name="pyramid"> 32, </key>
-<key name="python"> 4, </key>
-<key name="quadrangl"> 3, </key>
-<key name="quality"> 0, </key>
-<key name="quit"> 10,29,24, </key>
-<key name="radio"> 34,6,39, </key>
-<key name="radiu"> 38, </key>
-<key name="rainbow"> 36,39, </key>
-<key name="rang"> 4,5,13,21,32,34,35,36,23,6,25,39,28, </key>
-<key name="rarefi"> 4, </key>
-<key name="rat"> 0,18, </key>
-<key name="ratio"> 30,31,32,39, </key>
-<key name="real"> 5,11,33,38,39, </key>
-<key name="record"> 0,30, </key>
-<key name="rectangl"> 7,18, </key>
-<key name="red"> 36, </key>
-<key name="redefin"> 40, </key>
-<key name="referenc"> 4,10,39, </key>
-<key name="refin"> 36, </key>
-<key name="regard"> 27, </key>
-<key name="regim"> 0, </key>
-<key name="regular"> 11,36, </key>
-<key name="relat"> 22, </key>
-<key name="relativ"> 12,34,35,6, </key>
-<key name="relevant"> 35,23, </key>
-<key name="relief"> 34, </key>
-<key name="remain"> 35, </key>
-<key name="remot"> 33,40, </key>
-<key name="remov"> 7, </key>
-<key name="renam"> 14,30,6,25, </key>
-<key name="rend"> 5,36, </key>
-<key name="render"> 35,36,39, </key>
-<key name="represent"> 3,4,7,34,33,23,6,25,26,28,40, </key>
-<key name="representation"> 3,14,33,6,25, </key>
-<key name="representativ"> 39, </key>
-<key name="requir"> 5,0,7,8,15,16,26, </key>
-<key name="reset"> 24,40, </key>
-<key name="resiz"> 33,40, </key>
-<key name="resolution"> 35, </key>
-<key name="resourc"> 0,26, </key>
-<key name="respectiv"> 18,39, </key>
-<key name="respective"> 31,39, </key>
-<key name="restor"> 6,40, </key>
-<key name="result"> 3,11,32,34,35,36,38,39, </key>
-<key name="return"> 5,30,6, </key>
-<key name="reus"> 11, </key>
-<key name="reveal"> 33, </key>
-<key name="revers"> 1, </key>
-<key name="right"> 5,7,8,9,2,10,11,12,13,15,14,29,30,18,19,21,31,34,33,36,37,23,24,6,25,26,27,28, </key>
-<key name="rightward"> 7, </key>
-<key name="rotat"> 1,30,31,38,40, </key>
-<key name="rotation"> 1,11,12,30,31,34,40, </key>
-<key name="row"> 4,7, </key>
-<key name="run"> 5,0,22, </key>
-<key name="s"> 3,32,23, </key>
-<key name="salom"> 7,30,20,31,35,22,23,24, </key>
-<key name="sam"> 5,7,11,14,30,31,23,38,6,39, </key>
-<key name="sav"> 5,0,30,33,36,23,25, </key>
-<key name="scal"> 13,34,33,36,37,23,24,6,25,39,28, </key>
-<key name="scalar"> 3,5,8,2,11,12,13,29,16,21,32,34,35,36,37,23,38,6,26,39,28, </key>
-<key name="scen"> 33,35,36,39,40, </key>
-<key name="screen"> 31, </key>
-<key name="script"> 4, </key>
-<key name="se"> 3,4,5,0,8,11,13,18,21,34,33,35,22,37,38,6,26,28,40, </key>
-<key name="search"> 18, </key>
-<key name="second"> 0,36,38, </key>
-<key name="secondary"> 38, </key>
-<key name="section"> 1,6, </key>
-<key name="seen"> 36, </key>
-<key name="segment"> 3,26, </key>
-<key name="segmentation"> 0,30,35,38, </key>
-<key name="select"> 5,1,7,8,2,10,11,12,13,14,29,30,16,18,19,21,32,34,33,36,37,23,24,6,25,26,27,39,28,40, </key>
-<key name="selectabl"> 5,1, </key>
-<key name="selection"> 30,16,32,6, </key>
-<key name="semi"> 32,38, </key>
-<key name="sensitiv"> 6, </key>
-<key name="separat"> 15,6, </key>
-<key name="separate"> 33,6, </key>
-<key name="serv"> 26, </key>
-<key name="session"> 0,23, </key>
-<key name="set"> 5,0,1,11,12,13,14,29,17,18,21,32,34,35,22,37,23,6,25,26,39,28,40, </key>
-<key name="setting"> 0,30,18,33,25, </key>
-<key name="setup"> 5, </key>
-<key name="shad"> 35,6, </key>
-<key name="shap"> 12,13,35,37,39, </key>
-<key name="shift"> 13, </key>
-<key name="should"> 3,5,0,1,7,11,12,16,18,34,22,6,27, </key>
-<key name="show"> 5,1,11,12,15,18,32,33,36,38,25,39,40, </key>
-<key name="shrink"> 6, </key>
-<key name="sid"> 12,36, </key>
-<key name="similar"> 38,26, </key>
-<key name="simpl"> 35, </key>
-<key name="simultaneous"> 5,11,12,36,6, </key>
-<key name="siz"> 0,16,32,33,35,26,39, </key>
-<key name="slow"> 32, </key>
-<key name="smal"> 35,26, </key>
-<key name="small"> 28,40, </key>
-<key name="smallest"> 39, </key>
-<key name="smooth"> 34,26, </key>
-<key name="smoothnes"> 32,26, </key>
-<key name="so"> 5,32,35,39, </key>
-<key name="solid"> 7, </key>
-<key name="solv"> 6, </key>
-<key name="sometim"> 26, </key>
-<key name="sourc"> 26, </key>
-<key name="sourceforg"> 5,0, </key>
-<key name="spac"> 11,12,16,34,36,39, </key>
-<key name="spacemous"> 31, </key>
-<key name="spe"> 5,31, </key>
-<key name="special"> 4,30,32, </key>
-<key name="specifi"> 5,0,33,24, </key>
-<key name="specify"> 33,6,26, </key>
-<key name="spent"> 18, </key>
-<key name="spher"> 35,38, </key>
-<key name="splin"> 33, </key>
-<key name="split"> 1, </key>
-<key name="sprit"> 32,35, </key>
-<key name="stamp"> 3,5,0,8,11,12,13,14,29,30,18,21,34,36,37,23,6,26,28, </key>
-<key name="standard"> 0,7,30,18,19,31,35,39, </key>
-<key name="star"> 31, </key>
-<key name="start"> 5,0,1,22,26,27, </key>
-<key name="stat"> 27, </key>
-<key name="step"> 5,11,18,32,34,26,27, </key>
-<key name="stop"> 0, </key>
-<key name="stor"> 3,30, </key>
-<key name="stream"> 26, </key>
-<key name="streamlin"> 26, </key>
-<key name="strict"> 40, </key>
-<key name="structur"> 3,1,7,11,16,18,26, </key>
-<key name="study"> 5,7,10,11,17,22, </key>
-<key name="styl"> 30,31, </key>
-<key name="subfold"> 3,8,14,30,6, </key>
-<key name="subfolder"> 3, </key>
-<key name="submenu"> 8, </key>
-<key name="submesh"> 3,8,9,16,17,20,24, </key>
-<key name="substitut"> 0, </key>
-<key name="successiv"> 5, </key>
-<key name="suggest"> 35, </key>
-<key name="superposition"> 6, </key>
-<key name="support"> 31, </key>
-<key name="surfac"> 12,21,34,6, </key>
-<key name="suspend"> 0, </key>
-<key name="sweep"> 5,17,18,6,27, </key>
-<key name="switch"> 30,31,6, </key>
-<key name="syntax"> 5,0, </key>
-<key name="system"> 0,31,35,39, </key>
-<key name="systematical"> 36, </key>
-<key name="t"> 18,33,35,40, </key>
-<key name="tab"> 4,11,12,13,19,21,34,37,23,38,26,28, </key>
-<key name="tabl"> 3,4,7,2,11,15,16,17,19,20,33,25, </key>
-<key name="tail"> 28, </key>
-<key name="tak"> 26,27, </key>
-<key name="taken"> 7,11,13,36, </key>
-<key name="technical"> 35, </key>
-<key name="tensor"> 35,36, </key>
-<key name="text"> 36,23, </key>
-<key name="textur"> 35, </key>
-<key name="them"> 4,5,1,7,21,31,32,35,23,6,40, </key>
-<key name="therefor"> 35, </key>
-<key name="thick"> 6, </key>
-<key name="thin"> 6, </key>
-<key name="third"> 5,0, </key>
-<key name="thought"> 35,26, </key>
-<key name="thre"> 3,4,11,12,34,35,23,39, </key>
-<key name="threshold"> 35, </key>
-<key name="tick"> 40, </key>
-<key name="tilt"> 31, </key>
-<key name="tim"> 3,5,0,8,11,12,13,14,29,30,18,21,34,36,37,23,38,6,26,27,28, </key>
-<key name="tip"> 7, </key>
-<key name="titl"> 4,33,23, </key>
-<key name="togeth"> 3, </key>
-<key name="toggl"> 31, </key>
-<key name="toleranc"> 32, </key>
-<key name="tool"> 5,0,7, </key>
-<key name="toolbar"> 8,11,12,13,14,29,30,21,31,32,34,33,22,37,23,38,26,28,40, </key>
-<key name="top"> 32,33,38, </key>
-<key name="total"> 35, </key>
-<key name="touch"> 32, </key>
-<key name="transform"> 26, </key>
-<key name="transformation"> 23,27, </key>
-<key name="translat"> 30,24,6, </key>
-<key name="translation"> 30,31,38, </key>
-<key name="transparency"> 32,35, </key>
-<key name="transparent"> 32,38,6, </key>
-<key name="tre"> 3, </key>
-<key name="triangl"> 3,7,40, </key>
-<key name="triangular"> 32, </key>
-<key name="trigger"> 25, </key>
-<key name="trihedron"> 40, </key>
-<key name="truncat"> 1, </key>
-<key name="twic"> 39, </key>
-<key name="two"> 0,1,7,10,11,12,30,32,34,35,36,37,38, </key>
-<key name="txt"> 4,19, </key>
-<key name="typ"> 3,5,7,8,11,12,13,29,16,34,33,35,37,23,6,25,26,27,39,28, </key>
-<key name="uncheck"> 18,40, </key>
-<key name="uniqu"> 39, </key>
-<key name="unit"> 4,7,26, </key>
-<key name="unwant"> 1, </key>
-<key name="up"> 5,7,8,9,2,10,11,12,13,15,14,29,21,31,34,35,36,37,23,38,6,26,27,28, </key>
-<key name="updat"> 21,32,22,38,39, </key>
-<key name="upward"> 7, </key>
-<key name="us"> 3,5,0,1,7,10,11,13,29,30,16,31,32,35,36,23,38,26,27,39,28,40, </key>
-<key name="usag"> 17, </key>
-<key name="usual"> 26, </key>
-<key name="utility"> 5,0, </key>
-<key name="v"> 7,38, </key>
-<key name="validat"> 5, </key>
-<key name="valu"> 3,4,0,7,8,2,11,12,13,16,18,21,32,34,35,36,37,23,6,26,27,39,28, </key>
-<key name="variabl"> 5,0,36,38, </key>
-<key name="variou"> 20, </key>
-<key name="vary"> 39, </key>
-<key name="ve"> 0, </key>
-<key name="vector"> 3,8,13,16,21,34,35,36,37,23,26,28, </key>
-<key name="verbal"> 33, </key>
-<key name="vertex"> 35, </key>
-<key name="vertical"> 1,7,33,36,23, </key>
-<key name="very"> 32,26, </key>
-<key name="via"> 30,25,40, </key>
-<key name="video"> 0, </key>
-<key name="view"> 3,4,0,1,7,9,2,10,11,12,13,15,14,30,16,17,21,31,32,34,33,35,22,37,23,24,38,6,25,26,27,39,28,40, </key>
-<key name="viewer"> 31, </key>
-<key name="visibl"> 33,35,40, </key>
-<key name="visualis"> 35, </key>
-<key name="visualisation"> 29, </key>
-<key name="visualiz"> 11,13,32,35,28, </key>
-<key name="visualization"> 8,11,12,13,29,20,21,34,37,23,38,6,26,28,40, </key>
-<key name="vtk"> 30,35,22,6,40, </key>
-<key name="way"> 1,32,38, </key>
-<key name="well"> 8,23, </key>
-<key name="what"> 18, </key>
-<key name="whatev"> 35, </key>
-<key name="wheel"> 5, </key>
-<key name="wheth"> 5,0, </key>
-<key name="whil"> 5,34, </key>
-<key name="whol"> 3,35,23, </key>
-<key name="why"> 3, </key>
-<key name="width"> 7,36,23,6,28, </key>
-<key name="will"> 3,5,0,1,7,8,9,2,10,11,12,13,15,14,16,18,19,21,32,34,33,35,22,36,37,23,24,6,25,26,27,39,28, </key>
-<key name="window"> 0,10,15,30,32,22,38, </key>
-<key name="wir"> 6, </key>
-<key name="wirefram"> 6, </key>
-<key name="wish"> 33,6,40, </key>
-<key name="within"> 32,35,36,6, </key>
-<key name="without"> 4,30,31, </key>
-<key name="work"> 5,0, </key>
-<key name="would"> 0,35, </key>
-<key name="written"> 36, </key>
-<key name="x"> 1,7,31,33,35,36,23,24, </key>
-<key name="xl"> 4,19, </key>
-<key name="xy"> 10,11,12,20,34,33,25, </key>
-<key name="y"> 1,7,31,33,36,23,24, </key>
-<key name="your"> 5,0,1,7,2,10,11,12,13,15,14,29,18,19,21,34,33,37,23,24,25,26,28, </key>
-<key name="yz"> 11,12,34, </key>
-<key name="z"> 1,24, </key>
-<key name="zoom"> 30,31,32,33,35,40, </key>
-<key name="zx"> 11,12,34, </key>
-
-</ftswdata>  
diff --git a/doc/salome/gui/VISU/whxdata/whgdata0.xml b/doc/salome/gui/VISU/whxdata/whgdata0.xml
deleted file mode 100755 (executable)
index b0993a0..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version='1.0' encoding='windows-1252' ?>
-<glossarydata>
- <entry name="Cell" value="Element of a mesh. Cells are determined by their connectivity. They can have 0,1,2 or 3 dimension." />
- <entry name="Component" value="One integer or real value can correspond to each component of a field and to each entity of a mesh" />
- <entry name="Descendant connectivity" value="It is a description of the entities of the mesh with dimension N. This description is made by an ordered list of geometrical entities (nodes, edges, or faces) with dimension N-1." />
- <entry name="Edge" value="An edge of a volumetric or surface mesh. It is composed of 2 or 3 nodes (2 vertex nodes and optionally one middle node)." />
- <entry name="Entity of a mesh" value="Geometrical component of the mesh: node, cell, face and edge. Faces and edges are only intermediate entities allowing to define the cells in descendant connectivity." />
- <entry name="Equivalence" value="Equivalence represents a list of correspondance 2 by 2 of the entities of the same dimension." />
- <entry name="Face" value="Face of a volumetrical cell (triangle, quadrangle)." />
- <entry name="Family" value="Entities of a mesh are described by a certain number   of characteristics (boundary conditions, groups membership). Families represent classes equivalent to these characteristics (two entities of a mesh can belong to the same family if they have the same characteristics). Every family is determined by a set of attributes and a list of groups membership." />
- <entry name="Field" value="Field consists of one or several scalar components. One definite type is associated to the given field and the values corresponding to different components are all of the same type." />
- <entry name="Field profile" value="Fields can be defined only on one part of the mesh. Profile   of the field or profile of the component of a field indicates which entities of the mesh contain values." />
- <entry name="Group" value="Unordered set of entities of a mesh. One entity can belong to   several groups." />
- <entry name="Mesh" value="Mesh is described by its geometry: list of nodes and list of cells which constitute this mesh. Supplementary information is added with the help of families (initial, boundary conditions)." />
- <entry name="Nodal connectivity" value="It is a description of an entity of the mesh by an ordered list of nodes constituting this entity." />
- <entry name="Node" value="Node can be an isolated node of a mesh, a vertex or middle node of an edge. A node is associated to a point." />
- <entry name="Point" value="Geometrical entity determined by its coordinates in the space." />
- <entry name="Reference connectivity" value="For each type of entity of a mesh, reference connectivity define the topology of an entity." />
- <entry name="Result" value="List of fields referring to one mesh." />
- <entry name="Study" value="Study represents a chain of sequences of calculations." />
-
-</glossarydata>
diff --git a/doc/salome/gui/VISU/whxdata/whglo.xml b/doc/salome/gui/VISU/whxdata/whglo.xml
deleted file mode 100755 (executable)
index ac67056..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version='1.0' encoding='windows-1252' ?>
-<glossary>
-<chunkinfo url="whgdata0.xml" first="Cell" last="Study" num="18" />
-
-</glossary>
\ No newline at end of file
diff --git a/doc/salome/gui/VISU/whxdata/whidx.xml b/doc/salome/gui/VISU/whxdata/whidx.xml
deleted file mode 100755 (executable)
index 44f05e5..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version='1.0' encoding='windows-1252' ?>
-<index>
-
-</index>
diff --git a/doc/salome/gui/VISU/whxdata/whtdata0.xml b/doc/salome/gui/VISU/whxdata/whtdata0.xml
deleted file mode 100755 (executable)
index 14a0dff..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-<?xml version='1.0' encoding='windows-1252' ?>
-<tocdata>
-<book name="Post-Pro module" >
-  <item name="Introduction to Post-Pro" url="files/introduction.htm" />
-  <item name="Running Post-Pro" url="files/running_visu.htm" />
-  <item name="Importing MED files" url="files/importing_med_objects.htm" />
-  <item name="Structure of MED objects" url="files/about_structure_of_med_object.htm" />
-  <book name="3D presentations" >
-    <item name="Presentation of a submesh" url="files/creating_presentations.htm" />
-    <book name="Field presentations" >
-      <item name="Creating field presentations" url="files/creating_field_presentations.htm" />
-      <item name="Scalar Map presentation" url="files/scalar_map_presentation.htm" />
-      <item name="Iso Surfaces presentation" url="files/iso_surfaces_presentation.htm" />
-      <item name="Cut Lines presentation" url="files/cut_lines_presentation.htm" />
-      <item name="Cut Planes presentation" url="files/cut_lines_resentation.htm" />
-      <item name="Deformed Shape presentation" url="files/deformed_shape_presentation.htm" />
-      <item name="Vectors Presentation" url="files/vectors_presentation.htm" />
-      <item name="Stream Lines presentation" url="files/stream_lines_presentation.htm" />
-      <item name="Scalar Map on Deformed Shape presentation" url="scalar_map_on_deformed_shape_presentation.htm" />
-      <item name="Plot 3D presentation" url="plot_3d_presentation.htm" />
-      <item name="Animating presentations" url="files/animating_presentations.htm" />
-      <book name="Gauss Points Presentations" >
-        <item name="Creating a Gauss Points Presentation" url="gauss_points_presentation.htm" />
-        <item name="Primitive Types" url="primitive_types.htm" />
-        <item name="Types of Gauss Points Presentations" url="types_of_gauss_points_presentations.htm" />
-        <item name="Scalar Bar" url="scalar_bar.htm" />
-        <item name="Gauss Viewer" url="gauss_viewer.htm" />
-        <item name="Navigation in the Gauss viewer" url="navigation_with_keyboard_and_spacemouse.htm" />
-        <item name="Picking" url="picking.htm" />
-        <item name="Segmentation" url="segmentation.htm" />
-        <item name="Recording in Gauss Viewer" url="animation_in_gauss_viewer.htm" />
-      </book>
-    </book>
-    <book name="Viewing 3D presentations" >
-      <item name="Viewing 3D Presentations" url="files/changing_visualization_parameters_of_the_presenetation.htm" />
-      <item name="Translate Presentation" url="files/scaling_presentations.htm" />
-      <item name="Clipping " url="clipping.htm" />
-      <item name="Sweeping" url="files/sweeping.htm" />
-      <item name="Selection Info" url="files/getting_elements_attributes.htm" />
-    </book>
-  </book>
-  <book name="Table presentations" >
-    <item name="About tables" url="files/about_tables.htm" />
-    <item name="Importing/exporting tables" url="files/importing_tables.htm" />
-    <item name="Displaying tables" url="files/displaying_tables.htm" />
-    <item name="Creating tables from Cut Lines presentations" url="creating_tables.htm" />
-  </book>
-  <book name="XY plots" >
-    <item name="Creating curves" url="files/creating_curves.htm" />
-    <item name="Creating XY plots" url="files/creating_xy_plot.htm" />
-    <item name="Plot2D Viewer" url="plot2d_viewer.htm" />
-    <item name="Setting properties of XY plots" url="files/setting_properties_of_xy_plots.htm" />
-  </book>
-<item name="Access to Post-Pro module functionality from Python (using VISU_Gen.idl)" url="visugenidl_doc/VISU__Gen_8idl.html" /> 
-</book>
-
-</tocdata>
diff --git a/doc/salome/gui/VISU/whxdata/whtoc.xml b/doc/salome/gui/VISU/whxdata/whtoc.xml
deleted file mode 100755 (executable)
index 871ec25..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version='1.0' encoding='windows-1252' ?>
-<toc root="whtdata0.xml">
-
-</toc>
index 0f139546878569444ffe4a879afcbfba6bcb3786..5d522593caf62b7432c7be2ceb4c31c408b4ba3e 100644 (file)
@@ -1,4 +1,7 @@
-#  Copyright (C) 2005  CEA/DEN, EDF R&D, OPEN CASCADE, PRINCIPIA R&D
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 #
 #  This library is free software; you can redistribute it and/or
 #  modify it under the terms of the GNU Lesser General Public
 #  File   : Makefile.in
 #  Author : Vasily Rusyaev (Open Cascade NN)
 #  Module : doc
-
+#
 include $(top_srcdir)/adm_local/unix/make_common_starter.am
 
-EXTRA_DIST+=VISU
+EXTRA_DIST += images static
+
+dev_docs: doxyfile
+       echo "Running doxygen in directory: "`pwd`; \
+       $(DOXYGEN) $<;
 
-dev_docs:
-       cp -fr $(srcdir)/VISU ./INPUT; \
-       cp -f ./VISU/doxyfile ./INPUT; \
-       cd INPUT; \
-       sed 's|../../../share/salome|$(top_srcdir)|' ./doxyfile > ./doxyfile1; \
-       sed 's|../../build/salome|$(top_builddir)|' ./doxyfile1 > ./doxyfile2; \
-       mv -f doxyfile2 doxyfile1; \
-       echo "DOXYGEN SUPPORT PYTHON - @DOXYGEN_WITH_PYTHON@"; \
-       if( test "x@DOXYGEN_WITH_PYTHON@" = "xyes"); then \
-         sed 's|python_extension_must_be_here|*.py|' ./doxyfile1 > ./doxyfile2; \
-         mv -f doxyfile2 doxyfile1; \
-         $(DOXYGEN) -u ./doxyfile1; \
-       else \
-         sed 's|python_extension_must_be_here||' ./doxyfile1 > ./doxyfile2; \
-         mv -f doxyfile2 doxyfile1; \
-       fi; \
-       if( test "x@DOXYGEN_WITH_STL@" = "xyes"); then \
-         sed -e 's|BUILTIN_STL_SUPPORT    = NO|BUILTIN_STL_SUPPORT    = YES|' ./doxyfile1 > ./doxyfile2; \
-         mv -f doxyfile2 doxyfile1; \
-       fi; \
-       mv -f doxyfile1 doxyfile; \
-       echo "Running doxygen in directory:"`pwd`; \
-       $(DOXYGEN) ./doxyfile; \
-       cd ../; \
-       cp -fr $(srcdir)/VISU/sources/ VISU ; \
-       rm -fr INPUT
+clean-local:
+       -rm -fr VISU doxygen.bak
 
-doctuidir=$(docdir)/tui/VISU
+install-data-local:
+       if test -d VISU; then \
+         $(INSTALL) -d $(DESTDIR)$(docdir)/tui ; \
+         cp -rp VISU $(DESTDIR)$(docdir)/tui ; \
+       fi;
 
-nodist_doctui_DATA= VISU/doxyfile
-EXTRA_DIST+= VISU/doxyfile.in
+uninstall-local:
+       rm -rf $(DESTDIR)$(docdir)/tui/VISU
diff --git a/doc/salome/tui/VISU/HTML/VISU_Gen.html b/doc/salome/tui/VISU/HTML/VISU_Gen.html
deleted file mode 100644 (file)
index 5d4af0b..0000000
+++ /dev/null
@@ -1,1070 +0,0 @@
-<HTML><b>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface Base</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>IdType  GetID (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetID (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>VISUType  GetType (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetType (  )</b></div></td>
-</tr>
-</table><br>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface PrsObject</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-</table><br>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface Table</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetTitle ( in string theTitle )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetTitle ( theTitle )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>string  GetTitle (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetTitle (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetOrientation ( in Orientation theOrientation )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetOrientation ( theOrientation )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Orientation  GetOrientation (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetOrientation (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>long  GetNbRows (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetNbRows (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>long  GetNbColumns (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetNbColumns (  )</b></div></td>
-</tr>
-</table><br>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface Curve</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetTitle ( in string theTitle )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetTitle ( theTitle )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>string  GetTitle (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetTitle (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetColor ( in Color theColor )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetColor ( theColor )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Color  GetColor (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetColor (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetMarker ( in MarkerType theType )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetMarker ( theType )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>MarkerType  GetMarker (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetMarker (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetLine ( in LineType theType, in long theLineWidth )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetLine ( theType, theLineWidth )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>LineType  GetLine (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetLine (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>long  GetLineWidth (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetLineWidth (  )</b></div></td>
-</tr>
-</table><br>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface Container</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void AddCurve ( in Curve theCurve )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>AddCurve ( theCurve )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void RemoveCurve ( in Curve theCurve )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>RemoveCurve ( theCurve )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>long  GetNbCurves (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetNbCurves (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void Clear (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>Clear (  )</b></div></td>
-</tr>
-</table><br>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface Prs3d</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-</table><br>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface Mesh</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetCellColor ( in Color theColor )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetCellColor ( theColor )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Color  GetCellColor (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetCellColor (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetNodeColor ( in Color theColor )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetNodeColor ( theColor )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Color  GetNodeColor (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetNodeColor (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetLinkColor ( in Color theColor )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetLinkColor ( theColor )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Color  GetLinkColor (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetLinkColor (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetPresentationType ( in PresentationType theType )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetPresentationType ( theType )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>PresentationType  GetPresentationType (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetPresentationType (  )</b></div></td>
-</tr>
-</table><br>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface ScalarMap</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetScalarMode ( in long theScalarMode )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetScalarMode ( theScalarMode )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>long  GetScalarMode (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetScalarMode (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetScaling ( in Scaling theScaling )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetScaling ( theScaling )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Scaling  GetScaling (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetScaling (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetRange ( in double theMin, in double theMax )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetRange ( theMin, theMax )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetMin (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetMin (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetMax (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetMax (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetBarOrientation ( in Orientation theOrientation )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetBarOrientation ( theOrientation )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Orientation  GetBarOrientation (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetBarOrientation (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetPosition ( in double X, in double Y )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetPosition ( X, Y )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetPosX (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetPosX (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetPosY (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetPosY (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetSize ( in double theWidth, in double theHeight )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetSize ( theWidth, theHeight )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetWidth (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetWidth (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetHeight (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetHeight (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetNbColors ( in long theNbColors )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetNbColors ( theNbColors )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>long  GetNbColors (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetNbColors (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetLabels ( in long theNbLabels )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetLabels ( theNbLabels )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>long  GetLabels (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetLabels (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetTitle ( in string theName )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetTitle ( theName )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>string  GetTitle (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetTitle (  )</b></div></td>
-</tr>
-</table><br>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface DeformedShape</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetScale ( in double theScale )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetScale ( theScale )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetScale (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetScale (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>boolean  IsColored (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = IsColored (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void ShowColored ( in boolean theColored )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>ShowColored ( theColored )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Color  GetColor (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetColor (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetColor ( in Color theColor )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetColor ( theColor )</b></div></td>
-</tr>
-</table><br>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface CutPlanes</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetOrientation ( in Orientation theOrientation, in double theXAngle, in double theYAngle )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetOrientation ( theOrientation, theXAngle, theYAngle )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Orientation  GetOrientationType (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetOrientationType (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetRotateX (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetRotateX (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetRotateY (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetRotateY (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetDisplacement ( in double theDisp )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetDisplacement ( theDisp )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetDisplacement (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetDisplacement (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetPlanePosition ( in long thePlaneNumber, in double thePlanePosition )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetPlanePosition ( thePlaneNumber, thePlanePosition )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetDefault ( in long thePlaneNumber )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetDefault ( thePlaneNumber )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetPlanePosition ( in long thePlaneNumber )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetPlanePosition ( thePlaneNumber )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>boolean  IsDefault ( in long thePlaneNumber )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = IsDefault ( thePlaneNumber )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetNbPlanes ( in long theNb )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetNbPlanes ( theNb )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>long  GetNbPlanes (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetNbPlanes (  )</b></div></td>
-</tr>
-</table><br>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface CutLines</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetOrientation ( in Orientation theOrientation, in double theXAngle, in double theYAngle )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetOrientation ( theOrientation, theXAngle, theYAngle )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetOrientation2 ( in Orientation theOrientation, in double theXAngle, in double theYAngle )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetOrientation2 ( theOrientation, theXAngle, theYAngle )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Orientation  GetOrientationType (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetOrientationType (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Orientation  GetOrientationType2 (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetOrientationType2 (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetRotateX (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetRotateX (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetRotateX2 (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetRotateX2 (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetRotateY (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetRotateY (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetRotateY2 (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetRotateY2 (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetDisplacement ( in double theDisp )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetDisplacement ( theDisp )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetDisplacement2 ( in double theDisp )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetDisplacement2 ( theDisp )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetDisplacement (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetDisplacement (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetDisplacement2 (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetDisplacement2 (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetBasePlanePosition ( in double thePlanePosition )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetBasePlanePosition ( thePlanePosition )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetBasePlanePosition (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetBasePlanePosition (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetLinePosition ( in long thePlaneNumber, in double thePlanePosition )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetLinePosition ( thePlaneNumber, thePlanePosition )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetLinePosition ( in long thePlaneNumber )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetLinePosition ( thePlaneNumber )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetDefault (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetDefault (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>boolean  IsDefault (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = IsDefault (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetDefaultPosition ( in long thePlaneNumber )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetDefaultPosition ( thePlaneNumber )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>boolean  IsDefaultPosition ( in long thePlaneNumber )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = IsDefaultPosition ( thePlaneNumber )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetNbLines ( in long theNb )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetNbLines ( theNb )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>long  GetNbLines (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetNbLines (  )</b></div></td>
-</tr>
-</table><br>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface StreamLines</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>boolean  SetParams ( in double theIntStep, in double thePropogationTime, in double theStepLength, in Prs3d thePrs3d, in double thePercents, in Direction theDirection )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = SetParams ( theIntStep, thePropogationTime, theStepLength, thePrs3d, thePercents, theDirection )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetIntegrationStep (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetIntegrationStep (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetPropagationTime (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetPropagationTime (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetStepLength (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetStepLength (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Prs3d  GetSource (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetSource (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetUsedPoints (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetUsedPoints (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Direction  GetDirection (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetDirection (  )</b></div></td>
-</tr>
-</table><br>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface IsoSurfaces</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetNbSurfaces ( in long theNb )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetNbSurfaces ( theNb )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>long  GetNbSurfaces (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetNbSurfaces (  )</b></div></td>
-</tr>
-</table><br>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface Vectors</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetLineWidth ( in double theWidth )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetLineWidth ( theWidth )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetLineWidth (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetLineWidth (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetGlyphType ( in GlyphType theType )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetGlyphType ( theType )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>GlyphType  GetGlyphType (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetGlyphType (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetGlyphPos ( in GlyphPos thePos )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetGlyphPos ( thePos )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>GlyphPos  GetGlyphPos (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetGlyphPos (  )</b></div></td>
-</tr>
-</table><br>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface Animation</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void addField ( in SObject theObject )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>addField ( theObject )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void generatePresentations ( in long theFieldNum )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>generatePresentations ( theFieldNum )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>boolean  generateFrames (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = generateFrames (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void clearView (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>clearView (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void startAnimation (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>startAnimation (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void stopAnimation (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>stopAnimation (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void nextFrame (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>nextFrame (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void prevFrame (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>prevFrame (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void firstFrame (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>firstFrame (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void lastFrame (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>lastFrame (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void gotoFrame ( in long theFrame )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>gotoFrame ( theFrame )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>long  getNbFields (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = getNbFields (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>long  getNbFrames (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = getNbFrames (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>boolean  isRunning (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = isRunning (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>long  getCurrentFrame (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = getCurrentFrame (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>ScalarMap  getPresentation ( in long theField, in long theFrame )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = getPresentation ( theField, theFrame )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void setPresentationType ( in long theFieldNum, in VISUType theType )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>setPresentationType ( theFieldNum, theType )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>VISUType  getPresentationType ( in long theFieldNum )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = getPresentationType ( theFieldNum )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void setSpeed ( in long theSpeed )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>setSpeed ( theSpeed )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>long  getSpeed (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = getSpeed (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>boolean  isProportional (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = isProportional (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void setAnimationRange ( in double theMin, in double theMax )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>setAnimationRange ( theMin, theMax )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  getMinRange (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = getMinRange (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  getMaxRange (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = getMaxRange (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>boolean  isRangeDefined (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = isRangeDefined (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void dumpTo ( in string thePath )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>dumpTo ( thePath )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>boolean  isCycling (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = isCycling (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  getMinTime (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = getMinTime (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  getMaxTime (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = getMaxTime (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void setProportional ( in boolean theProp )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>setProportional ( theProp )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void setCycling ( in boolean theCycle )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>setCycling ( theCycle )</b></div></td>
-</tr>
-</table><br>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface Result</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>boolean  BuildAll (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = BuildAll (  )</b></div></td>
-</tr>
-</table><br>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface VISU_Gen</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetCurrentStudy ( in Study theStudy )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetCurrentStudy ( theStudy )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Study  GetCurrentStudy (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetCurrentStudy (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>ViewManager  GetViewManager (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetViewManager (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>SObject  ImportTables ( in string theFileName )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = ImportTables ( theFileName )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>boolean  ExportTableToFile ( in SObject theTable, in string theFileName )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = ExportTableToFile ( theTable, theFileName )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Result  ImportFile ( in string theFileName )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = ImportFile ( theFileName )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Result  CopyAndImportFile ( in string theFileName )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = CopyAndImportFile ( theFileName )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Result  ImportMed ( in SObject theMedSObject )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = ImportMed ( theMedSObject )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Result  ImportMedField ( in FIELD theField )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = ImportMedField ( theField )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Mesh  MeshOnEntity ( in Result theResult, in string theMeshName, in Entity theEntity )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = MeshOnEntity ( theResult, theMeshName, theEntity )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Mesh  FamilyMeshOnEntity ( in Result theResult, in string theMeshName, in Entity theEntity, in string theFamilyName )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = FamilyMeshOnEntity ( theResult, theMeshName, theEntity, theFamilyName )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Mesh  GroupMesh ( in Result theResult, in string theMeshName, in string theGroupName )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GroupMesh ( theResult, theMeshName, theGroupName )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>ScalarMap  ScalarMapOnField ( in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in double theIteration )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = ScalarMapOnField ( theResult, theMeshName, theEntity, theFieldName, theIteration )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>DeformedShape  DeformedShapeOnField ( in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in double theIteration )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = DeformedShapeOnField ( theResult, theMeshName, theEntity, theFieldName, theIteration )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Vectors  VectorsOnField ( in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in double theIteration )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = VectorsOnField ( theResult, theMeshName, theEntity, theFieldName, theIteration )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>IsoSurfaces  IsoSurfacesOnField ( in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in double theIteration )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = IsoSurfacesOnField ( theResult, theMeshName, theEntity, theFieldName, theIteration )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>StreamLines  StreamLinesOnField ( in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in double theIteration )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = StreamLinesOnField ( theResult, theMeshName, theEntity, theFieldName, theIteration )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>CutPlanes  CutPlanesOnField ( in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in double theIteration )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = CutPlanesOnField ( theResult, theMeshName, theEntity, theFieldName, theIteration )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>CutLines  CutLinesOnField ( in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in double theIteration )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = CutLinesOnField ( theResult, theMeshName, theEntity, theFieldName, theIteration )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Table  CreateTable ( in string theTableEntry )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = CreateTable ( theTableEntry )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Curve  CreateCurve ( in Table theTable, in long theHRow, in long theVRow )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = CreateCurve ( theTable, theHRow, theVRow )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Container  CreateContainer (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = CreateContainer (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Animation  CreateAnimation ( in View3D theView3d )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = CreateAnimation ( theView3d )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void DeleteResult ( in Result theResult )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>DeleteResult ( theResult )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void DeletePrs3d ( in Prs3d thePrs3d )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>DeletePrs3d ( thePrs3d )</b></div></td>
-</tr>
-</table><br>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface View</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void ShowPart ( in ViewRepresentation ViewRepr, in boolean state )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>ShowPart ( ViewRepr, state )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>boolean  IsPartShown ( in ViewRepresentation ViewRepr )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = IsPartShown ( ViewRepr )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetViewWidth ( in long Width )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetViewWidth ( Width )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetViewHeight ( in long Height )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetViewHeight ( Height )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>long  GetViewWidth (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetViewWidth (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>long  GetViewHeight (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetViewHeight (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetViewPositionHorizontal ( in ViewPosition ViewPosHor )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetViewPositionHorizontal ( ViewPosHor )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetViewPositionVertical ( in ViewPosition ViewPosVer )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetViewPositionVertical ( ViewPosVer )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetRelativePosition ( in double x, in double y )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetRelativePosition ( x, y )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetRelativeSize ( in double x, in double y )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetRelativeSize ( x, y )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetTitle ( in string theTitle )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetTitle ( theTitle )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>string  GetTitle (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetTitle (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetBackground ( in Color theColor )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetBackground ( theColor )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Color  GetBackground (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetBackground (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void Minimize (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>Minimize (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void Restore (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>Restore (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void Maximize (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>Maximize (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void EraseAll (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>EraseAll (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void DisplayAll (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>DisplayAll (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void Erase ( in PrsObject thePrsObj )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>Erase ( thePrsObj )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void Display ( in PrsObject thePrsObj )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>Display ( thePrsObj )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void DisplayOnly ( in PrsObject thePrsObj )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>DisplayOnly ( thePrsObj )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void Update (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>Update (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>boolean  SavePicture ( in string theFileName )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = SavePicture ( theFileName )</b></div></td>
-</tr>
-</table><br>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface View3D</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void FitAll (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>FitAll (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetView ( in ViewType theType )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetView ( theType )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetPointOfView ( in XYZ theCoord )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetPointOfView ( theCoord )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>XYZ  GetPointOfView (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetPointOfView (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetViewUp ( in XYZ theDir )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetViewUp ( theDir )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>XYZ  GetViewUp (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetViewUp (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetFocalPoint ( in XYZ theDir )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetFocalPoint ( theDir )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>XYZ  GetFocalPoint (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetFocalPoint (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetParallelScale ( in double theScale )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetParallelScale ( theScale )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>double  GetParallelScale (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetParallelScale (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void ScaleView ( in Axis theAxis, in double theParam )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>ScaleView ( theAxis, theParam )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void RemoveScale (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>RemoveScale (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>boolean  SaveViewParams ( in string theName )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = SaveViewParams ( theName )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>boolean  RestoreViewParams ( in string theName )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = RestoreViewParams ( theName )</b></div></td>
-</tr>
-</table><br>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface TableView</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-</table><br>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface XYPlot</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetSubTitle ( in string theTitle )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetSubTitle ( theTitle )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>string  GetSubTitle (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetSubTitle (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetCurveType ( in CurveType theType )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetCurveType ( theType )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>CurveType  GetCurveType (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetCurveType (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetMarkerSize ( in long theSize )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetMarkerSize ( theSize )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>long  GetMarkerSize (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetMarkerSize (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void EnableXGrid ( in boolean theMajor, in long theNumMajor, in boolean theMinor, in long theNumMinor )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>EnableXGrid ( theMajor, theNumMajor, theMinor, theNumMinor )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void EnableYGrid ( in boolean theMajor, in long theNumMajor, in boolean theMinor, in long theNumMinor )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>EnableYGrid ( theMajor, theNumMajor, theMinor, theNumMinor )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetHorScaling ( in Scaling theScaling )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetHorScaling ( theScaling )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Scaling  GetHorScaling (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetHorScaling (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetVerScaling ( in Scaling theScaling )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetVerScaling ( theScaling )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Scaling  GetVerScaling (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetVerScaling (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetXTitle ( in string theTitle )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetXTitle ( theTitle )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>string  GetXTitle (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetXTitle (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void SetYTitle ( in string theTitle )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>SetYTitle ( theTitle )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>string  GetYTitle (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetYTitle (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void ShowLegend ( in boolean theShowing )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>ShowLegend ( theShowing )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void FitAll (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>FitAll (  )</b></div></td>
-</tr>
-</table><br>
-<table width="100%" BORDER>
-<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface ViewManager</i></div></b></font></td>
-</tr>
-<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
-<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>View  GetCurrentView (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetCurrentView (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>View3D  Create3DView (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = Create3DView (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>TableView  CreateTableView ( in Table theTable )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = CreateTableView ( theTable )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>XYPlot  CreateXYPlot (  )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>return_value = CreateXYPlot (  )</b></div></td>
-</tr>
-<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void Destroy ( in View theView )</b></div></td>
-<td bgcolor= "lightgreen"><div align="center"><b>Destroy ( theView )</b></div></td>
-</tr>
-</table><br>
-</b></HTML>
diff --git a/doc/salome/tui/VISU/doxyfile.in b/doc/salome/tui/VISU/doxyfile.in
deleted file mode 100755 (executable)
index b657441..0000000
+++ /dev/null
@@ -1,241 +0,0 @@
-# Doxyfile 1.4.6
-
-#---------------------------------------------------------------------------
-# Project related configuration options
-#---------------------------------------------------------------------------
-PROJECT_NAME           = "SALOME - VISU - v.@VERSION@"
-PROJECT_NUMBER         = 
-OUTPUT_DIRECTORY       = ../
-CREATE_SUBDIRS         = NO
-OUTPUT_LANGUAGE        = English
-USE_WINDOWS_ENCODING   = NO
-BRIEF_MEMBER_DESC      = YES
-REPEAT_BRIEF           = NO
-ABBREVIATE_BRIEF       = 
-ALWAYS_DETAILED_SEC    = YES
-INLINE_INHERITED_MEMB  = YES
-FULL_PATH_NAMES        = YES
-STRIP_FROM_PATH        = ../../../share/salome \
-                        ../../../build/salome
-STRIP_FROM_INC_PATH    = 
-SHORT_NAMES            = NO
-JAVADOC_AUTOBRIEF      = YES
-MULTILINE_CPP_IS_BRIEF = NO
-DETAILS_AT_TOP         = NO
-INHERIT_DOCS           = YES
-SEPARATE_MEMBER_PAGES  = NO
-TAB_SIZE               = 5
-ALIASES                = 
-OPTIMIZE_OUTPUT_FOR_C  = YES
-OPTIMIZE_OUTPUT_JAVA   = YES
-BUILTIN_STL_SUPPORT    = NO
-DISTRIBUTE_GROUP_DOC   = NO
-SUBGROUPING            = YES
-
-#---------------------------------------------------------------------------
-# Build related configuration options
-#---------------------------------------------------------------------------
-EXTRACT_ALL            = YES
-EXTRACT_PRIVATE        = YES
-EXTRACT_STATIC         = YES
-EXTRACT_LOCAL_CLASSES  = YES
-EXTRACT_LOCAL_METHODS  = NO
-HIDE_UNDOC_MEMBERS     = NO
-HIDE_UNDOC_CLASSES     = NO
-HIDE_FRIEND_COMPOUNDS  = NO
-HIDE_IN_BODY_DOCS      = NO
-INTERNAL_DOCS          = YES
-CASE_SENSE_NAMES       = YES
-HIDE_SCOPE_NAMES       = NO
-SHOW_INCLUDE_FILES     = YES
-INLINE_INFO            = YES
-SORT_MEMBER_DOCS       = NO
-SORT_BRIEF_DOCS        = NO
-SORT_BY_SCOPE_NAME     = NO
-GENERATE_TODOLIST      = YES
-GENERATE_TESTLIST      = YES
-GENERATE_BUGLIST       = YES
-GENERATE_DEPRECATEDLIST= YES
-ENABLED_SECTIONS       = 
-MAX_INITIALIZER_LINES  = 25
-SHOW_USED_FILES        = NO
-SHOW_DIRECTORIES       = NO
-FILE_VERSION_FILTER    = 
-
-#---------------------------------------------------------------------------
-# configuration options related to warning and progress messages
-#---------------------------------------------------------------------------
-QUIET                  = NO
-WARNINGS               = YES
-WARN_IF_UNDOCUMENTED   = YES
-WARN_IF_DOC_ERROR      = YES
-WARN_NO_PARAMDOC       = NO
-WARN_FORMAT            = "$file:$line: $text"
-WARN_LOGFILE           = log.txt
-
-#---------------------------------------------------------------------------
-# configuration options related to the input files
-#---------------------------------------------------------------------------
-INPUT                  = ../../../share/salome/src \
-                        ../../../share/salome/idl
-FILE_PATTERNS          = *.idl *.h *.hh *.hxx *.c *.cc *.cxx *.ixx *.jxx python_extension_must_be_here
-RECURSIVE              = YES
-EXCLUDE                = 
-EXCLUDE_SYMLINKS       = NO
-EXCLUDE_PATTERNS       = 
-EXAMPLE_PATH           = 
-EXAMPLE_PATTERNS       = 
-EXAMPLE_RECURSIVE      = NO
-IMAGE_PATH             = sources/
-INPUT_FILTER           = 
-FILTER_PATTERNS        = 
-FILTER_SOURCE_FILES    = YES
-
-#---------------------------------------------------------------------------
-# configuration options related to source browsing
-#---------------------------------------------------------------------------
-SOURCE_BROWSER         = NO
-INLINE_SOURCES         = NO
-STRIP_CODE_COMMENTS    = YES
-REFERENCED_BY_RELATION = NO
-REFERENCES_RELATION    = YES
-USE_HTAGS              = NO
-VERBATIM_HEADERS       = YES
-
-#---------------------------------------------------------------------------
-# configuration options related to the alphabetical class index
-#---------------------------------------------------------------------------
-ALPHABETICAL_INDEX     = YES
-COLS_IN_ALPHA_INDEX    = 3
-IGNORE_PREFIX          = 
-
-#---------------------------------------------------------------------------
-# configuration options related to the HTML output
-#---------------------------------------------------------------------------
-GENERATE_HTML          = YES
-HTML_OUTPUT            = VISU
-HTML_FILE_EXTENSION    = .html
-HTML_HEADER            = sources/myheader.html
-HTML_FOOTER            = sources/footer.html
-HTML_STYLESHEET        = sources/static/doxygen.css
-HTML_ALIGN_MEMBERS     = YES
-GENERATE_HTMLHELP      = NO
-CHM_FILE               = 
-HHC_LOCATION           = 
-GENERATE_CHI           = NO
-BINARY_TOC             = YES
-TOC_EXPAND             = YES
-DISABLE_INDEX          = NO
-ENUM_VALUES_PER_LINE   = 4
-GENERATE_TREEVIEW      = NO
-TREEVIEW_WIDTH         = 250
-
-#---------------------------------------------------------------------------
-# configuration options related to the LaTeX output
-#---------------------------------------------------------------------------
-GENERATE_LATEX         = NO
-LATEX_OUTPUT           = latex
-LATEX_CMD_NAME         = latex
-MAKEINDEX_CMD_NAME     = makeindex
-COMPACT_LATEX          = NO
-PAPER_TYPE             = a4wide
-EXTRA_PACKAGES         = 
-LATEX_HEADER           = 
-PDF_HYPERLINKS         = NO
-USE_PDFLATEX           = NO
-LATEX_BATCHMODE        = NO
-LATEX_HIDE_INDICES     = NO
-
-#---------------------------------------------------------------------------
-# configuration options related to the RTF output
-#---------------------------------------------------------------------------
-GENERATE_RTF           = NO
-RTF_OUTPUT             = rtf
-COMPACT_RTF            = NO
-RTF_HYPERLINKS         = NO
-RTF_STYLESHEET_FILE    = 
-RTF_EXTENSIONS_FILE    = 
-
-#---------------------------------------------------------------------------
-# configuration options related to the man page output
-#---------------------------------------------------------------------------
-GENERATE_MAN           = NO
-MAN_OUTPUT             = man
-MAN_EXTENSION          = .3
-MAN_LINKS              = NO
-
-#---------------------------------------------------------------------------
-# configuration options related to the XML output
-#---------------------------------------------------------------------------
-GENERATE_XML           = NO
-XML_OUTPUT             = xml
-XML_SCHEMA             = 
-XML_DTD                = 
-XML_PROGRAMLISTING     = YES
-
-#---------------------------------------------------------------------------
-# configuration options for the AutoGen Definitions output
-#---------------------------------------------------------------------------
-GENERATE_AUTOGEN_DEF   = NO
-
-#---------------------------------------------------------------------------
-# configuration options related to the Perl module output
-#---------------------------------------------------------------------------
-GENERATE_PERLMOD       = NO
-PERLMOD_LATEX          = NO
-PERLMOD_PRETTY         = YES
-PERLMOD_MAKEVAR_PREFIX = 
-
-#---------------------------------------------------------------------------
-# Configuration options related to the preprocessor   
-#---------------------------------------------------------------------------
-ENABLE_PREPROCESSING   = YES
-MACRO_EXPANSION        = NO
-EXPAND_ONLY_PREDEF     = NO
-SEARCH_INCLUDES        = YES
-INCLUDE_PATH           = 
-INCLUDE_FILE_PATTERNS  = 
-PREDEFINED             = 
-EXPAND_AS_DEFINED      = 
-SKIP_FUNCTION_MACROS   = NO
-
-#---------------------------------------------------------------------------
-# Configuration::additions related to external references   
-#---------------------------------------------------------------------------
-TAGFILES               = 
-GENERATE_TAGFILE       = 
-ALLEXTERNALS           = NO
-EXTERNAL_GROUPS        = YES
-PERL_PATH              = /usr/bin/perl
-
-#---------------------------------------------------------------------------
-# Configuration options related to the dot tool   
-#---------------------------------------------------------------------------
-CLASS_DIAGRAMS         = YES
-HIDE_UNDOC_RELATIONS   = NO
-HAVE_DOT               = YES
-CLASS_GRAPH            = YES
-COLLABORATION_GRAPH    = NO
-GROUP_GRAPHS           = NO
-UML_LOOK               = NO
-TEMPLATE_RELATIONS     = YES
-INCLUDE_GRAPH          = YES
-INCLUDED_BY_GRAPH      = NO
-CALL_GRAPH             = NO
-GRAPHICAL_HIERARCHY    = YES
-DIRECTORY_GRAPH        = YES
-DOT_IMAGE_FORMAT       = jpg
-DOT_PATH               = 
-DOTFILE_DIRS           = 
-MAX_DOT_GRAPH_WIDTH    = 1024
-MAX_DOT_GRAPH_HEIGHT   = 1200
-MAX_DOT_GRAPH_DEPTH    = 0
-DOT_TRANSPARENT        = NO
-DOT_MULTI_TARGETS      = NO
-GENERATE_LEGEND        = NO
-DOT_CLEANUP            = YES
-
-#---------------------------------------------------------------------------
-# Configuration::additions related to the search engine   
-#---------------------------------------------------------------------------
-SEARCHENGINE           = NO
diff --git a/doc/salome/tui/VISU/sources/Application-About.png b/doc/salome/tui/VISU/sources/Application-About.png
deleted file mode 100755 (executable)
index 7b58330..0000000
Binary files a/doc/salome/tui/VISU/sources/Application-About.png and /dev/null differ
diff --git a/doc/salome/tui/VISU/sources/Application-About1.jpg b/doc/salome/tui/VISU/sources/Application-About1.jpg
deleted file mode 100755 (executable)
index cf7ab8b..0000000
Binary files a/doc/salome/tui/VISU/sources/Application-About1.jpg and /dev/null differ
diff --git a/doc/salome/tui/VISU/sources/application.gif b/doc/salome/tui/VISU/sources/application.gif
deleted file mode 100644 (file)
index 0b05d5c..0000000
Binary files a/doc/salome/tui/VISU/sources/application.gif and /dev/null differ
diff --git a/doc/salome/tui/VISU/sources/application.jpg b/doc/salome/tui/VISU/sources/application.jpg
deleted file mode 100755 (executable)
index a6979ab..0000000
Binary files a/doc/salome/tui/VISU/sources/application.jpg and /dev/null differ
diff --git a/doc/salome/tui/VISU/sources/bg_salome.gif b/doc/salome/tui/VISU/sources/bg_salome.gif
deleted file mode 100644 (file)
index c7e0306..0000000
Binary files a/doc/salome/tui/VISU/sources/bg_salome.gif and /dev/null differ
diff --git a/doc/salome/tui/VISU/sources/footer.html b/doc/salome/tui/VISU/sources/footer.html
deleted file mode 100755 (executable)
index cb55f39..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-</DIV>
-<DIV class="div-footer">
-Generated on $datetime for $projectname by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> $doxygenversion</DIV>
-</BODY>
-</HTML>
diff --git a/doc/salome/tui/VISU/sources/logocorp.gif b/doc/salome/tui/VISU/sources/logocorp.gif
deleted file mode 100755 (executable)
index 7697e08..0000000
Binary files a/doc/salome/tui/VISU/sources/logocorp.gif and /dev/null differ
diff --git a/doc/salome/tui/VISU/sources/myheader.html b/doc/salome/tui/VISU/sources/myheader.html
deleted file mode 100755 (executable)
index d2efb75..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-<link href="tabs.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-</body>
-</html>
diff --git a/doc/salome/tui/VISU/sources/occ.gif b/doc/salome/tui/VISU/sources/occ.gif
deleted file mode 100755 (executable)
index ce017c8..0000000
Binary files a/doc/salome/tui/VISU/sources/occ.gif and /dev/null differ
diff --git a/doc/salome/tui/VISU/sources/static/DataStruct.gif b/doc/salome/tui/VISU/sources/static/DataStruct.gif
deleted file mode 100755 (executable)
index bec28ad..0000000
Binary files a/doc/salome/tui/VISU/sources/static/DataStruct.gif and /dev/null differ
diff --git a/doc/salome/tui/VISU/sources/static/PrsObj.gif b/doc/salome/tui/VISU/sources/static/PrsObj.gif
deleted file mode 100755 (executable)
index a8aa81f..0000000
Binary files a/doc/salome/tui/VISU/sources/static/PrsObj.gif and /dev/null differ
diff --git a/doc/salome/tui/VISU/sources/static/View.gif b/doc/salome/tui/VISU/sources/static/View.gif
deleted file mode 100755 (executable)
index b6aa909..0000000
Binary files a/doc/salome/tui/VISU/sources/static/View.gif and /dev/null differ
diff --git a/doc/salome/tui/VISU/sources/static/doxygen.css b/doc/salome/tui/VISU/sources/static/doxygen.css
deleted file mode 100755 (executable)
index 88e613d..0000000
+++ /dev/null
@@ -1,170 +0,0 @@
-H1 { 
-   text-align: center; 
-}
-
-CAPTION { 
-   font-weight: bold 
-}
-
-/* Link in the top navbar */
-A.qindex {}
-
-A.qindexRef {}
-
-/* Link to any cross-referenced Doxygen element */
-A.el { 
-   text-decoration: none; 
-   font-weight: bold 
-}
-
-A.elRef { 
-   font-weight: bold 
-}
-
-/* Link to any cross-referenced Doxygen element inside a code section 
-   (ex: header)
-*/
-A.code { 
-   text-decoration: none; 
-   font-weight: normal; 
-   color: #4444ee 
-}
-
-A.codeRef { 
-   font-weight: normal; 
-   color: #4444ee 
-}
-
-A:hover { 
-   text-decoration: none; 
-   background-color: lightblue 
-}
-
-DL.el { 
-   margin-left: -1cm 
-}
-
-/* A code fragment (ex: header) */
-DIV.fragment { 
-   width: 100%; 
-   border: none; 
-   background-color: #CCCCCC 
-}
-
-/* In the alpha list (coumpound index), style of an alphabetical index letter */
-DIV.ah { 
-   background-color: #CCCCCC; 
-   font-weight: bold; 
-   color: #ffffff; 
-   margin-bottom: 3px; 
-   margin-top: 3px 
-}
-
-/* Method name (+ type) */
-TD.md { 
-   background-color: lightblue; 
-   font-weight: bold; 
-}
-
-/* Method parameter (some of them) */
-TD.mdname1 { 
-   background-color: lightblue; 
-   font-weight: bold; color: #602020; 
-}
-
-/* Method parameter (some of them) */
-TD.mdname { 
-   background-color: lightblue; 
-   font-weight: bold; 
-   color: #602020; 
-   width: 600px; 
-}
-
-/* Separator between methods group (usually empty, seems not supported by IE) */
-DIV.groupHeader { 
-   margin-left: 16px; 
-   margin-top: 12px; 
-   margin-bottom: 6px; 
-   font-weight: bold 
-}
-
-DIV.groupText { 
-   margin-left: 16px; 
-   font-style: italic; 
-   font-size: smaller 
-}
-
-BODY { 
-   background: #FFFFFF;
-}
-
-/*div.div-page { 
-  background-color: #FFFFFF; 
-  margin-left: 1em;
-  margin-right: 1em;
-  margin-top: 1em;
-  margin-bottom: 0.1em;
-
-  padding-left: 1em;
-  padding-right: 1em;
-  padding-top: 0.5em;
-  padding-bottom: 0.5em;
-
-  border: 2px solid #0D299A; 
-  border-width: 2px;
-  border-color: #0D299A; 
-}*/
-
-div.tabs { 
-  text-align: justify; 
-  margin-left    : 2px;         
-  margin-right   : 2px;  
-  margin-top     : 2px; 
-  margin-bottom  : 2px
-  font-weight: bold;
-  color: #FFFFFF;
-}
-
-DIV.div-footer { 
-  margin-left: 1em;
-  margin-right: 1em;
-  margin-bottom: 0.2em;
-  text-align: right;
-  font-size: 9pt; 
-}
-
-/* In File List, Coumpound List, etc, 1st column of the index */
-TD.indexkey { 
-   background-color: #CCCCCC; 
-   font-weight: bold; 
-   padding-right  : 10px; 
-   padding-top    : 2px; 
-   padding-left   : 10px; 
-   padding-bottom : 2px; 
-   margin-left    : 0px; 
-   margin-right   : 0px; 
-   margin-top     : 2px; 
-   margin-bottom  : 2px  
-}
-
-/* In File List, Coumpound List, etc, 2nd column of the index */
-TD.indexvalue { 
-   background-color: #CCCCCC; 
-   font-style: italic; 
-   padding-right  : 10px; 
-   padding-top    : 2px; 
-   padding-left   : 10px; 
-   padding-bottom : 2px; 
-   margin-left    : 0px; 
-   margin-right   : 0px; 
-   margin-top     : 2px; 
-   margin-bottom  : 2px  
-}
-
-span.keyword       { color: #008000 }
-span.keywordtype   { color: #604020 }
-span.keywordflow   { color: #e08000 }
-span.comment       { color: #800000 }
-span.preprocessor  { color: #806020 }
-span.stringliteral { color: #002080 }
-span.charliteral   { color: #008080 }
diff --git a/doc/salome/tui/VISU/sources/static/examples_VISU.html b/doc/salome/tui/VISU/sources/static/examples_VISU.html
deleted file mode 100755 (executable)
index bd5bca9..0000000
+++ /dev/null
@@ -1,1270 +0,0 @@
-<!DOCTYPE doctype PUBLIC "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-                    
-  <meta http-equiv="Content-Type"
- content="text/html; charset=iso-8859-1">
-                    
-  <meta name="GENERATOR"
- content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-  <title>Main Page</title>
-                                 
-  <link href="doxygen.css" rel="stylesheet" type="text/css">
-</head>
-  <body>
-     &nbsp;     
-<center>    
-<table width="96%">
-     <tbody>
-        <tr>
-     <td><a href="http://www.opencascade.com"><img src="sources/logocorp.gif"
- border="0" height="46" width="122">
-          </a></td>
-       <td>                             
-      <div align="right"><a href="http://www.opencascade.org/SALOME/"><img
- src="sources/application.gif" border="0" height="46" width="108">
-          </a></div>
-     </td>
-     </tr>
-                 
-  </tbody>    
-</table>
-    </center>
-           
-<h1><a name="page2">Examples</a> </h1>
-       &nbsp;&nbsp; &nbsp;<big><b><i> Interfaces:</i></b></big><br>
-          <a class="el"
- href="examples_VISU.html#Base"><br>
-  VISU::Base</a><br>
-  <a class="el" href="#VISU_Gen">VISU::VISU_Gen</a><br>
-  <a class="el"
- href="examples_VISU.html#PrsObject">VISU::PrsObject<br>
-  </a><br>
-  <a class="el"
- href="interfaceVISU_1_1Result.html">VISU::Result</a><a
- class="el"
- href="examples_VISU.html#Prs3d"><br>
-  <br>
-  VISU::Prs3d</a><br>
-  <a class="el"
- href="examples_VISU.html#Mesh">VISU::Mesh</a><br>
-  <a class="el"
- href="examples_VISU.html#ScalarMap">VISU::ScalarMap</a><br>
-  <a class="el" href="#CutPlanes">VISU::CutPlanes</a><br>
-  <a class="el" href="#CutLines">VISU::CutLines</a><br>
-  <a class="el" href="#IsoSurfaces">VISU::IsoSurfaces</a><br>
-  <a class="el"
- href="examples_VISU.html#DeformedShape">VISU::DeformedShape</a><br>
-   <a class="el" href="#Vectors">VISU::Vectors</a><br>
-  <a class="el"
- href="interfaceVISU_1_1StreamLines.html">VISU::StreamLines</a><br>
-  <br>
-  <a class="el" href="#Table">VISU::Table</a><br>
-  <a class="el"
- href="interfaceVISU_1_1Curve.html">VISU::Curve</a><br>
-  <a class="el"
- href="interfaceVISU_1_1Container.html">VISU::Container</a><br>
-  <a class="el"
- href="interfaceVISU_1_1ViewManager.html"><br>
-  VISU::ViewManager</a><br>
-  <a class="el"
- href="interfaceVISU_1_1View.html">VISU::View</a><br>
-  <a class="el"
- href="interfaceVISU_1_1View3D.html">VISU::View3D</a><br>
-  <a class="el"
- href="interfaceVISU_1_1TableView.html">VISU::TableView</a><br>
-  <a class="el"
- href="interfaceVISU_1_1XYPlot.html">VISU::XYPlot</a><br>
-       
-<h3><a name="Base"></a>Base</h3>
-       
-<table cellpadding="0" cellspacing="0" border="0">
-      <tbody>
-        <tr>
-          <td class="md" nowrap valign="top"><a class="el"
- href="namespaceVISU.html#a0">IdType</a>
-  VISU::Base::GetID </td>
-               <td class="md" valign="top">(&nbsp;</td>
-               <td class="mdname1" valign="top" nowrap>&nbsp;  
-       </td>
-               <td class="md" valign="top">)&nbsp;</td>
-               <td class="md" nowrap><br>
-          </td>
-             </tr>
-                        
-  </tbody>    
-</table>
-                   
-<p>#Returns ID of the object. That is IOR of CORBA representation a VISU
-object.<br>
-    </p>
-       
-<p>aSObject = myLocalStudy.FindObjectIOR(theResult.GetID()) <br>
-    </p>
-       
-<table cellpadding="0" cellspacing="0" border="0">
-      <tbody>
-        <tr>
-          <td class="md" nowrap valign="top"><a class="el"
- href="namespaceVISU.html#a39">VISUType</a>
-  VISU::Base::GetType </td>
-               <td class="md" valign="top">(&nbsp;</td>
-               <td class="mdname1" valign="top" nowrap>&nbsp;  
-       </td>
-               <td class="md" valign="top">)&nbsp;</td>
-        </tr>
-               
-  </tbody>    
-</table>
-       
-<p>#Returns the type of the presentable object. It can be used for quick
-class definition of an VISU object<br>
-    <br>
-    if aVISUObject.GetType() == VISU.TSCALARMAP :<br>
-    &nbsp;&nbsp;&nbsp; #do something ...<br>
- </p>
-<p><br>
-</p>
-<h3><a name="VISU_Gen"></a><big>VISU_Gen</big><br>
- </h3>
-<table cellpadding="0" cellspacing="0" border="0">
-   <tbody>
-     <tr>
-       <td class="md" nowrap valign="top"> void VISU::VISU_Gen::SetCurrentStudy 
-      </td>
-            <td class="md" valign="top">(&nbsp;</td>
-            <td class="md" nowrap valign="top">in <a class="el"
- href="interfaceSALOMEDS_1_1Study.html">SALOMEDS::Study</a>&nbsp;</td>
-            <td class="mdname1" valign="top" nowrap>&nbsp; <em>theStudy</em> 
-         </td>
-            <td class="md" valign="top">)&nbsp;</td>
-            <td class="md" nowrap><br>
-       </td>
-          </tr>
-            
-  </tbody> 
-</table>
-            <br>
-<p>  
-<table width="100%" cellpadding="2" cellspacing="0" border="0">
-    <tbody>
-     <tr>
-      <td class="md">              
-      <table cellpadding="0" cellspacing="0" border="0">
-          <tbody>
-           <tr>
-            <td class="md" nowrap valign="top"> <a class="el"
- href="interfaceSALOMEDS_1_1Study.html">SALOMEDS::Study</a> 
-VISU::VISU_Gen::GetCurrentStudy </td>
-            <td class="md" valign="top">(&nbsp;</td>
-            <td class="mdname1" valign="top" nowrap>&nbsp;     
-    </td>
-            <td class="md" valign="top">)&nbsp;</td>
-            <td class="md" nowrap><br>
-             </td>
-          </tr>
-                  
-        </tbody>       
-      </table>
-      </td>
-    </tr>
-     
-  </tbody> 
-</table>
-   <br>
- #It is very important to set SALOMEDS::Study for VISU Engine before you
-start any work with them.<br>
- #Every object that you will create will be assigned to the study you set 
-before.<br>
- #It can be done like this:<br>
- <p></p>
-<p>aStudy = myStudyManager.NewStudy("A foo Study")<br>
- if aStudy is None : raise RuntimeError, "Error"<br>
- else : print "OK"<br>
- &nbsp;&nbsp;&nbsp; theVisuGen.SetCurrentStudy(aStudy)<br>
- &nbsp;&nbsp;&nbsp; #to do every things you like<br>
- &nbsp;&nbsp;&nbsp; ...<br>
- </p>
-<p>  
-<table width="100%" cellpadding="2" cellspacing="0" border="0">
-    <tbody>
-     <tr>
-      <td class="md">              
-      <table cellpadding="0" cellspacing="0" border="0">
-          <tbody>
-           <tr>
-            <td class="md" nowrap valign="top"> <a class="el"
- href="interfaceVISU_1_1ViewManager.html">ViewManager</a> 
-VISU::VISU_Gen::GetViewManager </td>
-            <td class="md" valign="top">(&nbsp;</td>
-            <td class="mdname1" valign="top" nowrap>&nbsp;     
-    </td>
-            <td class="md" valign="top">)&nbsp;</td>
-            <td class="md" nowrap><br>
-             </td>
-          </tr>
-                  
-        </tbody>       
-      </table>
-      </td>
-    </tr>
-     
-  </tbody> 
-</table>
-   
-<table cellspacing="5" cellpadding="0" border="0">
-    <tbody>
-     <tr>
-      <td>&nbsp;            </td>
-      <td>         
-      <p> Gets the ViewManager which is used for creation of post-processing 
-presentations.     </p>
-       </td>
-    </tr>
-     
-  </tbody> 
-</table>
-  <br>
- #In order to display any VISU::PrsObject in propriate viewer you must take 
-VISU::ViewManager interface<br>
- <p></p>
-<p>aViewManager = myVisuGen.GetViewManager()<br>
- #to do something for displaing some presentation<br>
- ...<br>
- </p>
-<p>  
-<table width="100%" cellpadding="2" cellspacing="0" border="0">
-    <tbody>
-     <tr>
-      <td class="md">              
-      <table cellpadding="0" cellspacing="0" border="0">
-          <tbody>
-           <tr>
-            <td class="md" nowrap valign="top"> <a class="el"
- href="interfaceSALOMEDS_1_1SObject.html">SALOMEDS::SObject</a> 
-VISU::VISU_Gen::ImportTables </td>
-            <td class="md" valign="top">(&nbsp;</td>
-            <td class="md" nowrap valign="top">in string&nbsp;</td>
-            <td class="mdname1" valign="top" nowrap>&nbsp; <em>theFileName</em> 
-         </td>
-            <td class="md" valign="top">)&nbsp;</td>
-            <td class="md" nowrap><br>
-             </td>
-          </tr>
-                  
-        </tbody>       
-      </table>
-      </td>
-    </tr>
-     
-  </tbody> 
-</table>
-   
-<table cellspacing="5" cellpadding="0" border="0">
-    <tbody>
-     <tr>
-      <td>&nbsp;            </td>
-      <td>         
-      <p> Imports tables from a file and create TableAttribute in Sudy   
- </p>
-       </td>
-    </tr>
-     
-  </tbody> 
-</table>
-  <br>
- #It is possible to import some ASCII files that include text table representation. 
-One file can consist from more than one table.<br>
- <p></p>
-<p>aSObject = myVisuGen.ImportTables("/MyPresicousFileOfTables.txt")<br>
- </p>
-<p>  
-<table width="100%" cellpadding="2" cellspacing="0" border="0">
-    <tbody>
-     <tr>
-      <td class="md">              
-      <table cellpadding="0" cellspacing="0" border="0">
-          <tbody>
-           <tr>
-            <td class="md" nowrap valign="top"> <a class="el"
- href="interfaceVISU_1_1Result.html">Result</a> 
-VISU::VISU_Gen::ImportFile </td>
-            <td class="md" valign="top">(&nbsp;</td>
-            <td class="md" nowrap valign="top">in string&nbsp;</td>
-            <td class="mdname1" valign="top" nowrap>&nbsp; <em>theFileName</em> 
-         </td>
-            <td class="md" valign="top">)&nbsp;</td>
-            <td class="md" nowrap><br>
-             </td>
-          </tr>
-                  
-        </tbody>       
-      </table>
-      </td>
-    </tr>
-     
-  </tbody> 
-</table>
-   
-<table cellspacing="5" cellpadding="0" border="0">
-    <tbody>
-     <tr>
-      <td>&nbsp;            </td>
-      <td>         
-      <p> Imports data from a file.     </p>
-       </td>
-    </tr>
-     
-  </tbody> 
-</table>
-  <br>
- #It is possible import a med files to VISU<br>
- <p></p>
-<p>aResult = myVisuGen.ImportFile("/ItIsDreamOfMyLife.med")<br>
- </p>
-<p>  
-<table width="100%" cellpadding="2" cellspacing="0" border="0">
-    <tbody>
-     <tr>
-      <td class="md">              
-      <table cellpadding="0" cellspacing="0" border="0">
-          <tbody>
-           <tr>
-            <td class="md" nowrap valign="top"> <a class="el"
- href="interfaceVISU_1_1Result.html">Result</a> 
-VISU::VISU_Gen::ImportMed </td>
-            <td class="md" valign="top">(&nbsp;</td>
-            <td class="md" nowrap valign="top">in <a class="el"
- href="interfaceSALOMEDS_1_1SObject.html">SALOMEDS::SObject</a>&nbsp;</td>
-            <td class="mdname1" valign="top" nowrap>&nbsp; <em>theMedSObject</em> 
-         </td>
-            <td class="md" valign="top">)&nbsp;</td>
-            <td class="md" nowrap><br>
-             </td>
-          </tr>
-                  
-        </tbody>       
-      </table>
-      </td>
-    </tr>
-     
-  </tbody> 
-</table>
-   
-<table cellspacing="5" cellpadding="0" border="0">
-    <tbody>
-     <tr>
-      <td>&nbsp;            </td>
-      <td>         
-      <p> Imports data from a MED object.     </p>
-       </td>
-    </tr>
-     
-  </tbody> 
-</table>
-  <br>
- #<br>
- <p></p>
-<p>  
-<table width="100%" cellpadding="2" cellspacing="0" border="0">
-    <tbody>
-     <tr>
-      <td class="md">              
-      <table cellpadding="0" cellspacing="0" border="0">
-          <tbody>
-           <tr>
-            <td class="md" nowrap valign="top"> <a class="el"
- href="interfaceVISU_1_1Result.html">Result</a> 
-VISU::VISU_Gen::ImportMedField </td>
-            <td class="md" valign="top">(&nbsp;</td>
-            <td class="md" nowrap valign="top">in <a class="el"
- href="interfaceSALOME__MED_1_1FIELD.html">SALOME_MED::FIELD</a>&nbsp;</td>
-            <td class="mdname1" valign="top" nowrap>&nbsp; <em>theField</em> 
-         </td>
-            <td class="md" valign="top">)&nbsp;</td>
-            <td class="md" nowrap><br>
-             </td>
-          </tr>
-                  
-        </tbody>       
-      </table>
-      </td>
-    </tr>
-     
-  </tbody> 
-</table>
-   
-<table cellspacing="5" cellpadding="0" border="0">
-    <tbody>
-     <tr>
-      <td>&nbsp;            </td>
-      <td>         
-      <p> Imports data from a MED field.     </p>
-       </td>
-    </tr>
-     
-  </tbody> 
-</table>
-  <p></p>
-<p>  
-<table width="100%" cellpadding="2" cellspacing="0" border="0">
-    <tbody>
-     <tr>
-      <td class="md">              
-      <table cellpadding="0" cellspacing="0" border="0">
-          <tbody>
-           <tr>
-            <td class="md" nowrap valign="top"> <a class="el"
- href="interfaceVISU_1_1Mesh.html">Mesh</a> 
-VISU::VISU_Gen::MeshOnEntity </td>
-            <td class="md" valign="top">(&nbsp;</td>
-            <td class="md" nowrap valign="top">in <a class="el"
- href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theResult</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in string&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theMeshName</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in <a class="el"
- href="namespaceVISU.html#a38">Entity</a>&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theEntity</em></td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td class="md">)&nbsp;</td>
-            <td class="md" colspan="2"><br>
-             </td>
-          </tr>
-                  
-        </tbody>       
-      </table>
-      </td>
-    </tr>
-     
-  </tbody> 
-</table>
-   
-<table cellspacing="5" cellpadding="0" border="0">
-    <tbody>
-     <tr>
-      <td>&nbsp;            </td>
-      <td>         
-      <p> Creates a Mesh on the basis of the data generated in other sources 
-(MED object or file).     </p>
-       </td>
-    </tr>
-     
-  </tbody> 
-</table>
-  <p></p>
-<p>  
-<table width="100%" cellpadding="2" cellspacing="0" border="0">
-    <tbody>
-     <tr>
-      <td class="md">              
-      <table cellpadding="0" cellspacing="0" border="0">
-          <tbody>
-           <tr>
-            <td class="md" nowrap valign="top"> <a class="el"
- href="interfaceVISU_1_1Mesh.html">Mesh</a> 
-VISU::VISU_Gen::FamilyMeshOnEntity </td>
-            <td class="md" valign="top">(&nbsp;</td>
-            <td class="md" nowrap valign="top">in <a class="el"
- href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theResult</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in string&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theMeshName</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in <a class="el"
- href="namespaceVISU.html#a38">Entity</a>&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theEntity</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in string&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theFamilyName</em></td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td class="md">)&nbsp;</td>
-            <td class="md" colspan="2"><br>
-             </td>
-          </tr>
-                  
-        </tbody>       
-      </table>
-      </td>
-    </tr>
-     
-  </tbody> 
-</table>
-   <p></p>
-<p>  
-<table width="100%" cellpadding="2" cellspacing="0" border="0">
-    <tbody>
-     <tr>
-      <td class="md">              
-      <table cellpadding="0" cellspacing="0" border="0">
-          <tbody>
-           <tr>
-            <td class="md" nowrap valign="top"> <a class="el"
- href="interfaceVISU_1_1Mesh.html">Mesh</a> 
-VISU::VISU_Gen::GroupMesh </td>
-            <td class="md" valign="top">(&nbsp;</td>
-            <td class="md" nowrap valign="top">in <a class="el"
- href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theResult</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in string&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theMeshName</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in string&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theGroupName</em></td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td class="md">)&nbsp;</td>
-            <td class="md" colspan="2"><br>
-             </td>
-          </tr>
-                  
-        </tbody>       
-      </table>
-      </td>
-    </tr>
-     
-  </tbody> 
-</table>
-   <p></p>
-<p>  
-<table width="100%" cellpadding="2" cellspacing="0" border="0">
-    <tbody>
-     <tr>
-      <td class="md">              
-      <table cellpadding="0" cellspacing="0" border="0">
-          <tbody>
-           <tr>
-            <td class="md" nowrap valign="top"> <a class="el"
- href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a> 
-VISU::VISU_Gen::ScalarMapOnField </td>
-            <td class="md" valign="top">(&nbsp;</td>
-            <td class="md" nowrap valign="top">in <a class="el"
- href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theResult</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in string&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theMeshName</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in <a class="el"
- href="namespaceVISU.html#a38">Entity</a>&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theEntity</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in string&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theFieldName</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in double&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theIteration</em></td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td class="md">)&nbsp;</td>
-            <td class="md" colspan="2"><br>
-             </td>
-          </tr>
-                  
-        </tbody>       
-      </table>
-      </td>
-    </tr>
-     
-  </tbody> 
-</table>
-   
-<table cellspacing="5" cellpadding="0" border="0">
-    <tbody>
-     <tr>
-      <td>&nbsp;            </td>
-      <td>         
-      <p> Creates a scalar bar presentation. </p>
-       
-      <dl compact>
-        <dt><b> Parameters: </b></dt>
-        <dd>            
-          <table border="0" cellspacing="2" cellpadding="0">
-  <tbody>
-               <tr>
-                 <td valign="top"><em>theResult</em>&nbsp;</td>
-                 <td> Data generated in other sources. (MED object or file) 
-                </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theMeshName</em>&nbsp;</td>
-                 <td> One of the meshes presented in MED file </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theEntity</em>&nbsp;</td>
-                 <td> Type of entity where the field is defined </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theFieldName</em>&nbsp;</td>
-                 <td> Group of data attributed to the MESH. The data can
-be scalar or vector. </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theIteration</em>&nbsp;</td>
-                 <td> Number of iteration on the field </td>
-               </tr>
-               
-            </tbody>           
-          </table>
-  </dd>
-      </dl>
-     </td>
-    </tr>
-     
-  </tbody> 
-</table>
-  <p></p>
-<p>  
-<table width="100%" cellpadding="2" cellspacing="0" border="0">
-    <tbody>
-     <tr>
-      <td class="md">              
-      <table cellpadding="0" cellspacing="0" border="0">
-          <tbody>
-           <tr>
-            <td class="md" nowrap valign="top"> <a class="el"
- href="interfaceVISU_1_1DeformedShape.html">DeformedShape</a> 
-VISU::VISU_Gen::DeformedShapeOnField </td>
-            <td class="md" valign="top">(&nbsp;</td>
-            <td class="md" nowrap valign="top">in <a class="el"
- href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theResult</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in string&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theMeshName</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in <a class="el"
- href="namespaceVISU.html#a38">Entity</a>&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theEntity</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in string&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theFieldName</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in double&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theIteration</em></td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td class="md">)&nbsp;</td>
-            <td class="md" colspan="2"><br>
-             </td>
-          </tr>
-                  
-        </tbody>       
-      </table>
-      </td>
-    </tr>
-     
-  </tbody> 
-</table>
-   
-<table cellspacing="5" cellpadding="0" border="0">
-    <tbody>
-     <tr>
-      <td>&nbsp;            </td>
-      <td>         
-      <p> Creates a deformed shape presentation. </p>
-       
-      <dl compact>
-        <dt><b> Parameters: </b></dt>
-        <dd>            
-          <table border="0" cellspacing="2" cellpadding="0">
-  <tbody>
-               <tr>
-                 <td valign="top"><em>theResult</em>&nbsp;</td>
-                 <td> Data generated in other sources. (MED object or file) 
-                </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theMeshName</em>&nbsp;</td>
-                 <td> One of the meshes presented in MED file </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theEntity</em>&nbsp;</td>
-                 <td> Type of entity where the field is defined </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theFieldName</em>&nbsp;</td>
-                 <td> Group of data attributed to the MESH. The data can
-be scalar or vector. </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theIteration</em>&nbsp;</td>
-                 <td> Number of iteration on the field </td>
-               </tr>
-               
-            </tbody>           
-          </table>
-  </dd>
-      </dl>
-     </td>
-    </tr>
-     
-  </tbody> 
-</table>
-  <p></p>
-<p>  
-<table width="100%" cellpadding="2" cellspacing="0" border="0">
-    <tbody>
-     <tr>
-      <td class="md">              
-      <table cellpadding="0" cellspacing="0" border="0">
-          <tbody>
-           <tr>
-            <td class="md" nowrap valign="top"> <a class="el"
- href="interfaceVISU_1_1Vectors.html">Vectors</a> 
-VISU::VISU_Gen::VectorsOnField </td>
-            <td class="md" valign="top">(&nbsp;</td>
-            <td class="md" nowrap valign="top">in <a class="el"
- href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theResult</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in string&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theMeshName</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in <a class="el"
- href="namespaceVISU.html#a38">Entity</a>&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theEntity</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in string&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theFieldName</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in double&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theIteration</em></td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td class="md">)&nbsp;</td>
-            <td class="md" colspan="2"><br>
-             </td>
-          </tr>
-                  
-        </tbody>       
-      </table>
-      </td>
-    </tr>
-     
-  </tbody> 
-</table>
-   
-<table cellspacing="5" cellpadding="0" border="0">
-    <tbody>
-     <tr>
-      <td>&nbsp;            </td>
-      <td>         
-      <p> Creates a vector presentation. </p>
-       
-      <dl compact>
-        <dt><b> Parameters: </b></dt>
-        <dd>            
-          <table border="0" cellspacing="2" cellpadding="0">
-  <tbody>
-               <tr>
-                 <td valign="top"><em>theResult</em>&nbsp;</td>
-                 <td> Data generated in other sources. (MED object or file) 
-                </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theMeshName</em>&nbsp;</td>
-                 <td> One of the meshes presented in MED file </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theEntity</em>&nbsp;</td>
-                 <td> Type of entity where the field is defined </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theFieldName</em>&nbsp;</td>
-                 <td> Group of data attributed to the MESH. The data can
-be scalar or vector. </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theIteration</em>&nbsp;</td>
-                 <td> Number of iteration on the field </td>
-               </tr>
-               
-            </tbody>           
-          </table>
-  </dd>
-      </dl>
-     </td>
-    </tr>
-     
-  </tbody> 
-</table>
-  <p></p>
-<p>  
-<table width="100%" cellpadding="2" cellspacing="0" border="0">
-    <tbody>
-     <tr>
-      <td class="md">              
-      <table cellpadding="0" cellspacing="0" border="0">
-          <tbody>
-           <tr>
-            <td class="md" nowrap valign="top"> <a class="el"
- href="interfaceVISU_1_1IsoSurfaces.html">IsoSurfaces</a> 
-VISU::VISU_Gen::IsoSurfacesOnField </td>
-            <td class="md" valign="top">(&nbsp;</td>
-            <td class="md" nowrap valign="top">in <a class="el"
- href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theResult</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in string&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theMeshName</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in <a class="el"
- href="namespaceVISU.html#a38">Entity</a>&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theEntity</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in string&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theFieldName</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in double&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theIteration</em></td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td class="md">)&nbsp;</td>
-            <td class="md" colspan="2"><br>
-             </td>
-          </tr>
-                  
-        </tbody>       
-      </table>
-      </td>
-    </tr>
-     
-  </tbody> 
-</table>
-   
-<table cellspacing="5" cellpadding="0" border="0">
-    <tbody>
-     <tr>
-      <td>&nbsp;            </td>
-      <td>         
-      <p> Creates an iso surface presentation. </p>
-       
-      <dl compact>
-        <dt><b> Parameters: </b></dt>
-        <dd>            
-          <table border="0" cellspacing="2" cellpadding="0">
-  <tbody>
-               <tr>
-                 <td valign="top"><em>theResult</em>&nbsp;</td>
-                 <td> Data generated in other sources. (MED object or file) 
-                </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theMeshName</em>&nbsp;</td>
-                 <td> One of the meshes presented in MED file </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theEntity</em>&nbsp;</td>
-                 <td> Type of entity where the field is defined </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theFieldName</em>&nbsp;</td>
-                 <td> Group of data attributed to the MESH. The data can
-be scalar or vector. </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theIteration</em>&nbsp;</td>
-                 <td> Number of iteration on the field </td>
-               </tr>
-               
-            </tbody>           
-          </table>
-  </dd>
-      </dl>
-     </td>
-    </tr>
-     
-  </tbody> 
-</table>
-  <p></p>
-<p>  
-<table width="100%" cellpadding="2" cellspacing="0" border="0">
-    <tbody>
-     <tr>
-      <td class="md">              
-      <table cellpadding="0" cellspacing="0" border="0">
-          <tbody>
-           <tr>
-            <td class="md" nowrap valign="top"> <a class="el"
- href="interfaceVISU_1_1StreamLines.html">StreamLines</a> 
-VISU::VISU_Gen::StreamLinesOnField </td>
-            <td class="md" valign="top">(&nbsp;</td>
-            <td class="md" nowrap valign="top">in <a class="el"
- href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theResult</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in string&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theMeshName</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in <a class="el"
- href="namespaceVISU.html#a38">Entity</a>&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theEntity</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in string&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theFieldName</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in double&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theIteration</em></td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td class="md">)&nbsp;</td>
-            <td class="md" colspan="2"><br>
-             </td>
-          </tr>
-                  
-        </tbody>       
-      </table>
-      </td>
-    </tr>
-     
-  </tbody> 
-</table>
-   
-<table cellspacing="5" cellpadding="0" border="0">
-    <tbody>
-     <tr>
-      <td>&nbsp;            </td>
-      <td>         
-      <p> Creates an stream lines presentation. </p>
-       
-      <dl compact>
-        <dt><b> Parameters: </b></dt>
-        <dd>            
-          <table border="0" cellspacing="2" cellpadding="0">
-  <tbody>
-               <tr>
-                 <td valign="top"><em>theResult</em>&nbsp;</td>
-                 <td> Data generated in other sources. (MED object or file) 
-                </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theMeshName</em>&nbsp;</td>
-                 <td> One of the meshes presented in MED file </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theEntity</em>&nbsp;</td>
-                 <td> Type of entity where the field is defined </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theFieldName</em>&nbsp;</td>
-                 <td> Group of data attributed to the MESH. The data can
-be scalar or vector. </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theIteration</em>&nbsp;</td>
-                 <td> Number of iteration on the field </td>
-               </tr>
-               
-            </tbody>           
-          </table>
-  </dd>
-      </dl>
-     </td>
-    </tr>
-     
-  </tbody> 
-</table>
-  <p></p>
-<p>  
-<table width="100%" cellpadding="2" cellspacing="0" border="0">
-    <tbody>
-     <tr>
-      <td class="md">              
-      <table cellpadding="0" cellspacing="0" border="0">
-          <tbody>
-           <tr>
-            <td class="md" nowrap valign="top"> <a class="el"
- href="interfaceVISU_1_1CutPlanes.html">CutPlanes</a> 
-VISU::VISU_Gen::CutPlanesOnField </td>
-            <td class="md" valign="top">(&nbsp;</td>
-            <td class="md" nowrap valign="top">in <a class="el"
- href="interfaceVISU_1_1Result.html">Result</a>&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theResult</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in string&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theMeshName</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in <a class="el"
- href="namespaceVISU.html#a38">Entity</a>&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theEntity</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in string&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theFieldName</em>, 
-            </td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td><br>
-             </td>
-            <td class="md" nowrap>in double&nbsp;</td>
-            <td class="mdname" nowrap>&nbsp; <em>theIteration</em></td>
-          </tr>
-          <tr>
-            <td><br>
-             </td>
-            <td class="md">)&nbsp;</td>
-            <td class="md" colspan="2"><br>
-             </td>
-          </tr>
-                  
-        </tbody>       
-      </table>
-      </td>
-    </tr>
-     
-  </tbody> 
-</table>
-   
-<table cellspacing="5" cellpadding="0" border="0">
-    <tbody>
-     <tr>
-      <td>&nbsp;            </td>
-      <td>         
-      <p> Creates a presentation of cut planes. </p>
-       
-      <dl compact>
-        <dt><b> Parameters: </b></dt>
-        <dd>            
-          <table border="0" cellspacing="2" cellpadding="0">
-  <tbody>
-               <tr>
-                 <td valign="top"><em>theResult</em>&nbsp;</td>
-                 <td> Data generated in other sources. (MED object or file) 
-                </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theMeshName</em>&nbsp;</td>
-                 <td> One of the meshes presented in MED file </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theEntity</em>&nbsp;</td>
-                 <td> Type of entity where the field is defined </td>
-               </tr>
-  <tr>
-                 <td valign="top"><em>theFieldName</em>&nbsp;</td>
-\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0
\ No newline at end of file
diff --git a/doc/salome/tui/VISU/sources/static/overview_VISU.html b/doc/salome/tui/VISU/sources/static/overview_VISU.html
deleted file mode 100755 (executable)
index f6f54ea..0000000
+++ /dev/null
@@ -1,252 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-<center><table WIDTH="96%" >
-<tr>
-<td><a href="http://www.opencascade.com"><img src="sources/logocorp.gif" BORDER=0 height=46 width=122></a></td>
-
-
-<td>
-<div align=right><a href="http://www.opencascade.org/SALOME/"><img src="sources/application.gif" BORDER=0 height=46 width=108></a></div>
-</td>
-</tr>
-</table></center>
-
-
-<h1><a name="page2">General overview</a>
-</h1>
-<a name="cont"></a><h2>Table of contents </h2>
-<b><i>
-<ul>
-  <li><a href="#1">1. Introduction</a></li>
-  <li><a href="#2">2. Definitions </a></li>
-               
-  <li><a href="#3">3. Forms of data visualization </a></li>
-  <ul>
-               <li><a href="#3_1">3.1 Data tables</a></li>
-               <li><a href="#3_2">3.2 XY plots  </a></li>
-               <li><a href="#3_3">3.3 3D presentations  </a></li>
-               </ul>
-       <li><a href="#4">4. Data structure</a></li>
-       <li><a href="#5">5. VISU module features and services</a></li>
-       <ul>
-               <li><a href="#5_1">5.1 Base class</a></li>
-               <li><a href="#5_2">5.2 ViewManager class  </a></li>
-               <li><a href="#5_3">5.3 View class  </a></li>
-               <ul>
-               <li><a href="#5_3_1">5.3.1 3dView class  </a></li>
-               <li><a href="#5_3_2">5.3.2 TableView class  </a></li>
-               <li><a href="#5_3_3">5.3.3 XYPlotView class  </a></li>
-               </ul>
-               <li><a href="#5_4">5.4 Result class  </a></li>
-               <li><a href="#5_5">5.5 PrsObject class  </a></li>
-               <ul>
-               <li><a href="#5_5_1">5.5.1 Curve class  </a></li>
-               <li><a href="#5_5_2">5.5.2 Table class  </a></li>
-               <li><a href="#5_5_3">5.5.3 Container class </a></li>
-               <li><a href="#5_5_4">5.5.4 Prs3d class  </a></li>
-               <li><a href="#5_5_5">5.5.5 Mesh class  </a></li>
-               <li><a href="#5_5_6">5.5.6 ScalarMap class  </a></li>
-               <li><a href="#5_5_7">5.5.7 CutLines class  </a></li>
-               <li><a href="#5_5_8">5.5.8 CutPlanes class  </a></li>
-               <li><a href="#5_5_9">5.5.9 IsoSurfaces class  </a></li>
-               <li><a href="#5_5_10">5.5.10 DeformedShape class  </a></li>
-               <li><a href="#5_5_11">5.5.11 Vectors class  </a></li>
-               <li><a href="#5_5_12">5.5.12 StreamLines class  </a></li>
-               
-               </ul>
-               <li><a href="#5_6">5.6 Animation class  </a></li>
-               <li><a href="#5_7">5.7 VISU_Gen class  </a></li>
-               
-       </ul>
-</ul>
-</i> </b> <br>
-<a name="1"></a><h2>1. Introduction </h2>
-<p>Post-processing module VISU for SALOME is destined for visualization of data 
-  produced by other components. VISU provides various forms of data visualization 
-  including: </p>
-  
-<ul>
-  <li>Data tables, </li>
-  <li>XY plots based on data from tables, </li>
-  <li>3D presentations, </li>  
-  <ul>
-    <li> Scalar Map,</li>
-    <li> Deformed Shape, </li>
-    <li> Vectors,</li>
-    <li> Iso Surfaces,</li>
-    <li> Cut Planes,</li>
-    <li> Stream Lines,</li>
-    <li> Cut Lines.</li>
-  </ul>
-</ul>
-<i><a href="#cont">Back to the contents</a></i>
-<a name="2"></a><h2>2. Defintions </h2>
-<p>The following terms are used for presentation of the VISU module:</p>
-<dl>
-<dt><b>Study</b></dt> 
-<dd>manages data produced by various component of SALOME platform. More detailed description of the SALOME Study can be found in the document named "Data Structure and Persistence Specifications".</dd>
-<dt><b>Component</b></dt> 
-<dd>a SALOME software module that implements predefined interfaces. 
-The component provides the data for the SALOME study in a form of links (stored in the Study) 
-to the specific data stored in the component. All components are CORBA servers and it allows them 
-to be running on different host stations.</dd>
-<dt><b>Geometry</b></dt> <dd>a coherent set of data produced by component GEOM or any other geometry tool 
-and imported using geometry exchange interface (like BRep, IGES and so on).</dd>
-<dt><b>Mesh</b></dt> <dd>a collection of elements used as a support for numeric simulation.</dd>
-<dt><b>Field</b></dt> <dd>the set of results of the same type allocated to mesh elements. 
-Fields can be one of next types: scalars, vectors, tensors, matrices, character strings.</dd>
-</dl>
-<i><a href="#cont">Back to the contents</a></i>
-<a name="3"></a><h2>3. Forms of data visualization </h2>
-<a name="3_1"></a><h3>3.1 Data tables </h3>
-<p>Table represents data in spreadsheet-like form. For these purposes the QTable 
-  widget will be provided. This widget can be reused in any module for any dialog 
-  box as a control. For post-processing data visualization needs this widget is 
-  used inside of Table window (based on non-modal window frame). Data represented 
-  in Table window of post-processing module is be editable. </p>
- <a name="3_2"></a> <h3>3.2 XY plots</h3>
-<p>XY plot represents calculation data in form of 2D (XY) plotting. 
-XY plot view is shown in a separated view window (non-modal dialog box), which can be moved in any position of the screen for convenience. 
-The QWT extension of QT toolkit is used for XY plotting. 
-QWT provides unlimited number of displayed curves (data sets) and supports logarithmic scale, zooming, and selection.</p>
-<a name="3_3"></a>
-<h3>3.3 3D presentations </h3>
-<p>A 3D presentation shows geometry, mesh and fields in 3D space. 
-Provides selection, rotation, zooming, scaling, and panning of 3d scene. 
-Color bar for scalar data presentation is supplied. 
-For 3D presentation window of the current implementation of VTK viewer in study window is used.</p>
-<i><a href="#cont">Back to the contents</a></i>
-<a name="4"></a><h2>4. Data structure </h2>
-<p>Source data for post-processing module can be imported from MED file or MED object in study data structure (CORBA object) can be used for this purposes. </p>
-<p>In case of import MED file the data from this file will be converted in form of VTK Data Source format and stored in VISU data structure. In case of using of MED object from study the label in VISU data structure will be created with reference to the corresponded MED object.</p>
-<p>Available result data is displayed under corresponded MED data label. For every result the number of presentations can be created dependently on result type. </p>
-<p>Presentation is represented in data structure in form of list of presentation creation parameters. This could be:</p>
-<ul>
-<li>Presentation type (table, XY plot, 3d view);</li>
-<li>Presentation subtype (for example for 3d: scalar map, iso-surfaces, combined view and so on);</li>
-<li>Parameters of the presentation dependently on its type (number of colors, type of scale, font parameters, grid parameters and so on).</li>
-</ul>
-<p>Parameters of presentation are persistent data, which will be stored in study file.</p>
-
-
-<div align="center"><img src="DataStruct.gif"> </div>
-<i><a href="#cont">Back to the contents</a></i>
-<a name="5"></a><h2>5. VISU module features and services </h2>
-<p>The functionality of the VISU module is provided by a set of classes which are combined into 
-the <b>VISU</b> package.
-<p>The API reference of the VISU component can be found <a href="namespaceVISU.html">here</a>.</p>
-<a name="5_1"></a><h3>5.1 Base class</h3>
-<p>This is a root class for all objects of the VISU module.</p>
- <p>The API reference for this class can be found <a href="interfaceVISU_1_1Base.html">here</a>.</p>
-
-<a name="5_2"></a><h3>5.2 ViewManager class</h3>
-<p>This class is used for management of the view windows (creation and deletion).</p>
- <p>The API reference for this class can be found <a href="interfaceVISU_1_1ViewManager.html">here</a>.</p>
-
-<a name="5_3"></a><h3>5.3 View class</h3>
-<p>View class is a base for all other classes, necessary for creation of different views .</p>
-<div align="center"><img src="View.gif"> </div>
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1View.html">here</a>.</p>
-
-<a name="5_3_1"></a><h4>5.3.1 3dView class</h4>
-<p>This class provides a set of methods for creation of a 3d view window.</p>
-<p>The API reference for this class can be found <a href="interfaceVISU_1_13dView.html">here</a>.</p>
-
-<a name="5_3_2"></a><h4>5.3.2 TableView class</h4>
-<p>This class provides a set of methods for creation of a Table view window.</p>
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1TableView.html">here</a>.</p>
-
-<a name="5_3_3"></a><h4>5.3.3 XYPlotView class</h4>
-<p>This class provides a set of methods for creation of a XYPlot view window.</p>
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1XYPlotView.html">here</a>.</p>
-
-<a name="5_4"></a><h3>5.4 Result class</h3>
-<p>This class serves for inner representation of data generated in other sources. 
-(MED object or file) This data is needed for further construction of graphical presentations.</p> 
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1Result.html">here</a>.</p>
-<a name="5_5"></a><h3>5.5 PrsObject class</h3>
-<p>It is the root class of all presentable objects. </p>
-<div align="center"><img src="PrsObj.gif"> </div>
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1PrsObject.html">here</a>.</p>
-
-<a name="5_5_1"></a><h4>5.5.1 Curve class</h4>
-<p>Manages presentation parameters of one curve. 
-This object can be used for presentation of set of curves using Container class. </p>
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1Curve.html">here</a>.</p>
-
-<a name="5_5_2"></a><h4>5.5.2 Table class</h4>
-<p>Manages presentation parameters of a table.  </p>
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1Table.html">here</a>.</p>
-
-<a name="5_5_3"></a><h4>5.5.3 Container class</h4>
-<p>This class is provided in order to create one presentation using several presentable objects. This can provide combination of a set of curves to display them in XY plot view. 
-</p>
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1Container.html">here</a>.</p>
-
-<a name="5_5_4"></a><h4>5.5.4 Prs3d class</h4>
-<p>Root class for all 3D presentations. </p>
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1Prs3d.html">here</a>.</p>
-
-<a name="5_5_5"></a><h4>5.5.5 Mesh class</h4>
-<p>Manages presentation parameters of a 3D presentattion of a mesh. 
-This object can be used for presentation of set of curves using Container class. </p>
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1Mesh.html">here</a>.</p>
-
-<a name="5_5_6"></a><h4>5.5.6 ScalarMap class</h4>
-<p>Manages presentation parameters of the scalar bar.  </p>
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1ScalarMap.html">here</a>.</p>
-
-<a name="5_5_7"></a><h4>5.5.7 CutLines class</h4>
-<p>Manages presentation parameters of the cut lines presentation.  </p>
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1CutLines.html">here</a>.</p>
-
-<a name="5_5_8"></a><h4>5.5.8 CutPlanes class</h4>
-<p>Manages presentation parameters of the cut planes presentation.   </p>
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1CutPlanes.html">here</a>.</p>
-
-<a name="5_5_9"></a><h4>5.5.9 IsoSurfaces class</h4>
-<p>Manages presentation parameters of the iso surfaces presentation.  </p>
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1IsoSurfaces.html">here</a>.</p>
-
-<a name="5_5_10"></a><h4>5.5.10 DeformedShape class</h4>
-<p>Manages presentation parameters of the deformed shape presentation.   </p>
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1DeformedShape.html">here</a>.</p>
-
-<a name="5_5_11"></a><h4>5.5.11 Vectors class</h4>
-<p>Manages presentation parameters of the vector presentation.  </p>
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1Vectors.html">here</a>.</p>
-
-<a name="5_5_12"></a><h4>5.5.12 StreamLines class</h4>
-<p>Manages presentation parameters of the streamlines presentation.  </p>
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1StreamLines.html">here</a>.</p>
-
-<a name="5_6"></a><h3>5.6 Animation class</h3>
-<p>This class provides a set of methods used for:</p>
-<ul>
-  <li>generating different animations, </li>
-  <li>setting the parameters of the animations,</li>
-  <li>playing these animations in the VISU module.</li>
-</ul> 
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1Animation.html">here</a>.</p>
-
-<a name="5_7"></a><h3>5.7 VISU_Gen class</h3>
-<p>This is the main clas of the VISU component in SALOME application. It is used for  , 
-using the views provided by ViewManager. This class provides a set of methods used for:</p>
-<ul>
-  <li>creation of all types of post-processing presentations from given Result and Table object reference   </li>
-  <li>creation of animations</li>
-  
-</ul> 
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1VISU__Gen.html">here</a>.</p>
-<i><a href="#cont">Back to the contents</a></i>
-</body>
-</html>
diff --git a/doc/salome/tui/VISU/sources/static/page2.html b/doc/salome/tui/VISU/sources/static/page2.html
deleted file mode 100755 (executable)
index d31cf0c..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
-   <title>Main Page</title>
-<link href="doxygen.css" rel="stylesheet" type="text/css">
-</head>
-<body>
-&nbsp;
-<center><table WIDTH="96%" >
-<tr>
-<td><a href="http://www.opencascade.com"><img src="sources/logocorp.gif" BORDER=0 height=46 width=122></a></td>
-
-
-<td>
-<div align=right><a href="http://www.opencascade.org/SALOME/"><img src="sources/application.gif" BORDER=0 height=46 width=108></a></div>
-</td>
-</tr>
-</table></center>
-
-
-</body>
-</html>
-<!-- Generated by Doxygen 1.3-rc2 -->
-<ul>
-<li><b>SALOME VISU module</b><ul>
-<li><a href="HTML/VISU_Gen.html">Mapping of VISU_Gen functions</a></li></ul>
-</li></ul>
-</body>
-</html>
diff --git a/doc/salome/tui/VISU/sources/static/tree.js.in b/doc/salome/tui/VISU/sources/static/tree.js.in
deleted file mode 100755 (executable)
index 8903b2a..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-foldersTree = gFld("<b>SALOME v.@VERSION@ </b>", "", "")
-     insDoc(foldersTree, gLnk("Main Page", "", "main.html"))
-
-aux1 = insFld(foldersTree, gFld("TUI Reference Guide", ""))
-  aux2 = insFld(aux1, gFld("Modules", ""))
-    aux3 = insFld(aux2, gFld("SALOME VISU module", ""))
-             insDoc(aux3, gLnk("Overview", "", "overview_VISU.html"))
-      aux4 = insFld(aux3, gFld("Packages", ""))
-               insDoc(aux4, gLnk("VISU", "", "namespaceVISU.html"))
-             insDoc(aux3, gLnk("Examples", "", "examples_VISU.html"))  
-
-
-/*! Data structures
-*/
-         insDoc(aux1, gLnk("Data Structures", "", "annotated.html"))
-
-/*!    insDoc(aux1, gLnk("VISU::Animation", "", "interfaceVISU_1_1Animation.html"))
-       insDoc(aux1, gLnk("VISU::Base", "", "interfaceVISU_1_1Base.html"))
-       insDoc(aux1, gLnk("VISU::Container", "", "interfaceVISU_1_1Container.html"))
-       insDoc(aux1, gLnk("VISU::Curve", "", "interfaceVISU_1_1Curve.html"))
-       insDoc(aux1, gLnk("VISU::CutLines", "", "interfaceVISU_1_1CutLines.html"))
-       insDoc(aux1, gLnk("VISU::CutPlanes", "", "interfaceVISU_1_1CutPlanes.html"))
-       insDoc(aux1, gLnk("VISU::DeformedShape", "", "interfaceVISU_1_1DeformedShape.html"))
-       insDoc(aux1, gLnk("VISU::IsoSurfaces", "", "interfaceVISU_1_1IsoSurfaces.html"))
-       insDoc(aux1, gLnk("VISU::Mesh", "", "interfaceVISU_1_1Mesh.html"))
-       insDoc(aux1, gLnk("VISU::Prs3d", "", "interfaceVISU_1_1Prs3d.html"))
-       insDoc(aux1, gLnk("VISU::PrsObject", "", "interfaceVISU_1_1PrsObject.html"))
-       insDoc(aux1, gLnk("VISU::Result", "", "interfaceVISU_1_1Result.html"))
-       insDoc(aux1, gLnk("VISU::ScalarMap", "", "interfaceVISU_1_1ScalarMap.html"))
-       insDoc(aux1, gLnk("VISU::StreamLines", "", "interfaceVISU_1_1StreamLines.html"))
-       insDoc(aux1, gLnk("VISU::Table", "", "interfaceVISU_1_1Table.html"))
-       insDoc(aux1, gLnk("VISU::TableView", "", "interfaceVISU_1_1TableView.html"))
-       insDoc(aux1, gLnk("VISU::Vectors", "", "interfaceVISU_1_1Vectors.html"))
-       insDoc(aux1, gLnk("VISU::View", "", "interfaceVISU_1_1View.html"))
-       insDoc(aux1, gLnk("VISU::View3D", "", "interfaceVISU_1_1View3D.html"))
-       insDoc(aux1, gLnk("VISU::ViewManager", "", "interfaceVISU_1_1ViewManager.html"))
-       insDoc(aux1, gLnk("VISU::VISU_Gen", "", "interfaceVISU_1_1VISU__Gen.html"))
-       insDoc(aux1, gLnk("VISU::XYPlot", "", "interfaceVISU_1_1XYPlot.html"))
-*/
-         insDoc(aux1, gLnk("Class Hierarchy", "", "hierarchy.html"))
-
-/*!    
-  aux2 = insFld(aux1, gFld("VISU::Base", "", "interfaceVISU_1_1Base.html"))
-         insDoc(aux2, gLnk("VISU::Animation", "", "interfaceVISU_1_1Animation.html"))
-    aux3 = insFld(aux2, gFld("VISU::PrsObject", "", "interfaceVISU_1_1PrsObject.html"))
-           insDoc(aux3, gLnk("VISU::Container", "", "interfaceVISU_1_1Container.html"))
-           insDoc(aux3, gLnk("VISU::Curve", "", "interfaceVISU_1_1Curve.html"))
-      aux4 = insFld(aux3, gFld("VISU::Prs3d", "", "interfaceVISU_1_1Prs3d.html"))
-             insDoc(aux4, gLnk("VISU::Mesh", "", "interfaceVISU_1_1Mesh.html"))
-        aux5 = insFld(aux4, gFld("VISU::ScalarMap", "", "interfaceVISU_1_1ScalarMap.html"))
-               insDoc(aux5, gLnk("VISU::CutLines", "", "interfaceVISU_1_1CutLines.html"))
-               insDoc(aux5, gLnk("VISU::CutPlanes", "", "interfaceVISU_1_1CutPlanes.html"))
-          aux6 = insFld(aux5, gFld("VISU::DeformedShape", "", "interfaceVISU_1_1DeformedShape.html"))
-                 insDoc(aux6, gLnk("VISU::StreamLines", "", "interfaceVISU_1_1StreamLines.html"))
-                 insDoc(aux6, gLnk("VISU::Vectors", "", "interfaceVISU_1_1Vectors.html"))
-               insDoc(aux5, gLnk("VISU::IsoSurfaces", "", "interfaceVISU_1_1IsoSurfaces.html"))
-           insDoc(aux3, gLnk("VISU::Table", "", "interfaceVISU_1_1Table.html"))
-         insDoc(aux2, gLnk("VISU::Result", "", "interfaceVISU_1_1Result.html"))
-    aux3 = insFld(aux2, gFld("VISU::View", "", "interfaceVISU_1_1View.html"))
-           insDoc(aux3, gLnk("VISU::TableView", "", "interfaceVISU_1_1TableView.html"))
-           insDoc(aux3, gLnk("VISU::View3D", "", "interfaceVISU_1_1View3D.html"))
-           insDoc(aux3, gLnk("VISU::XYPlot", "", "interfaceVISU_1_1XYPlot.html"))
-         insDoc(aux2, gLnk("VISU::ViewManager", "", "interfaceVISU_1_1ViewManager.html"))
-         insDoc(aux2, gLnk("VISU::VISU_Gen", "", "interfaceVISU_1_1VISU__Gen.html"))
-         insDoc(aux2, gLnk("VISU::VISU_Gen", "", "interfaceVISU_1_1VISU__Gen.html"))
-         insDoc(aux2, gLnk("VISU::VISU_Gen", "", "interfaceVISU_1_1VISU__Gen.html"))
-*/
-         insDoc(aux1, gLnk("Class methods list", "", "functions.html"))
-/*!
-aux1 = insFld(foldersTree, gFld("Namespace List", "", "namespaces.html"))
-       insDoc(aux1, gLnk("VISU", "", "namespaceVISU.html"))
-*/
-         insDoc(aux1, gLnk("Namespace Members", "", "namespacemembers.html"))
-
-         insDoc(aux1, gLnk("File List", "", "files.html"))
-      
-/*!
-       insDoc(aux1, gLnk("VISU_Gen.idl", "", "VISU__Gen_8idl.html"))
-*/
-aux1 = insFld(foldersTree, gFld("IDL/Python mapping", ""))
-         insDoc(aux1, gLnk("Mapping of VISU IDL definitions to Python language", "", "page2.html"))
-
-/*!  insDoc(foldersTree, gLnk("Graphical Class Hierarchy", "", "inherits.html"))
-*/
diff --git a/doc/salome/tui/VISU/sources/static/treeview.js b/doc/salome/tui/VISU/sources/static/treeview.js
deleted file mode 100644 (file)
index 55eb43d..0000000
+++ /dev/null
@@ -1,505 +0,0 @@
-//**************************************************************** 
-// You are free to copy the "Folder-Tree" script as long as you  
-// keep this copyright notice: 
-// Script found in: http://www.geocities.com/Paris/LeftBank/2178/ 
-// Author: Marcelino Alves Martins (martins@hks.com) December '97. 
-//**************************************************************** 
-//Log of changes: 
-//       17 Feb 98 - Fix initialization flashing problem with Netscape
-//       
-//       27 Jan 98 - Root folder starts open; support for USETEXTLINKS; 
-//                   make the ftien4 a js file 
-//       
-// DvH:  Dec 2000 -  Made some minor changes to support external 
-//                   references
-// Definition of class Folder 
-// ***************************************************************** 
-function Folder(folderDescription, tagName, hreference) //constructor 
-{ 
-  //constant data 
-  this.desc = folderDescription 
-  this.tagName = tagName
-  this.hreference = hreference 
-  this.id = -1   
-  this.navObj = 0  
-  this.iconImg = 0  
-  this.nodeImg = 0  
-  this.isLastNode = 0 
-  //dynamic data 
-  this.isOpen = true 
-  this.iconSrc = "ftv2folderopen.png"   
-  this.children = new Array 
-  this.nChildren = 0 
-  //methods 
-  this.initialize = initializeFolder 
-  this.setState = setStateFolder 
-  this.addChild = addChild 
-  this.createIndex = createEntryIndex 
-  this.hide = hideFolder 
-  this.display = display 
-  this.renderOb = drawFolder 
-  this.totalHeight = totalHeight 
-  this.subEntries = folderSubEntries 
-  this.outputLink = outputFolderLink 
-} 
-function setStateFolder(isOpen) 
-{ 
-  var subEntries 
-  var totalHeight 
-  var fIt = 0 
-  var i=0 
-  if (isOpen == this.isOpen) 
-    return 
-  if (browserVersion == 2)  
-  { 
-    totalHeight = 0 
-    for (i=0; i < this.nChildren; i++) 
-      totalHeight = totalHeight + this.children[i].navObj.clip.height 
-      subEntries = this.subEntries() 
-    if (this.isOpen) 
-      totalHeight = 0 - totalHeight 
-    for (fIt = this.id + subEntries + 1; fIt < nEntries; fIt++) 
-      indexOfEntries[fIt].navObj.moveBy(0, totalHeight) 
-  }  
-  this.isOpen = isOpen 
-  propagateChangesInState(this) 
-} 
-function propagateChangesInState(folder) 
-{   
-  var i=0 
-  if (folder.isOpen) 
-  { 
-    if (folder.nodeImg) 
-      if (folder.isLastNode) 
-        folder.nodeImg.src = "ftv2mlastnode.png" 
-      else 
-         folder.nodeImg.src = "ftv2mnode.png" 
-    folder.iconImg.src = "ftv2folderopen.png" 
-    for (i=0; i<folder.nChildren; i++) 
-      folder.children[i].display() 
-  } 
-  else 
-  { 
-    if (folder.nodeImg) 
-      if (folder.isLastNode) 
-        folder.nodeImg.src = "ftv2plastnode.png" 
-      else 
-         folder.nodeImg.src = "ftv2pnode.png" 
-    folder.iconImg.src = "ftv2folderclosed.png" 
-    for (i=0; i<folder.nChildren; i++) 
-      folder.children[i].hide() 
-  }  
-} 
-function hideFolder() 
-{ 
-  if (browserVersion == 1 || browserVersion == 3) { 
-    if (this.navObj.style.display == "none") 
-      return 
-    this.navObj.style.display = "none" 
-  } else { 
-    if (this.navObj.visibility == "hidden") 
-      return 
-    this.navObj.visibility = "hidden" 
-  } 
-   
-  this.setState(0) 
-} 
-function initializeFolder(level, lastNode, leftSide) 
-{ 
-var j=0 
-var i=0 
-var numberOfFolders 
-var numberOfDocs 
-var nc 
-      
-  nc = this.nChildren 
-   
-  this.createIndex() 
-  var auxEv = "" 
-  if (browserVersion > 0) 
-    auxEv = "<a href='javascript:clickOnNode("+this.id+")'>" 
-  else 
-    auxEv = "<a>" 
-  if (level>0) 
-    if (lastNode) //the last 'brother' in the children array 
-    { 
-      this.renderOb(leftSide + auxEv + "<img name='nodeIcon" + this.id + "' src='ftv2mlastnode.png' width=16 height=22 border=0></a>") 
-//    leftSide = leftSide + "<img src='ftv2blank.png' width=16 height=22>"  
-      this.isLastNode = 1 
-    } 
-    else 
-    { 
-      this.renderOb(leftSide + auxEv + "<img name='nodeIcon" + this.id + "' src='ftv2mnode.png' width=16 height=22 border=0></a>") 
-      leftSide = leftSide + "<img src='ftv2vertline.png' width=16 height=22>" 
-      this.isLastNode = 0 
-    } 
-  else 
-    this.renderOb("") 
-   
-  if (nc > 0) 
-  { 
-    level = level + 1 
-    for (i=0 ; i < this.nChildren; i++)  
-    { 
-      if (i == this.nChildren-1) 
-        this.children[i].initialize(level, 1, leftSide) 
-      else 
-        this.children[i].initialize(level, 0, leftSide) 
-      } 
-  } 
-} 
-function drawFolder(leftSide) 
-{ 
-  if (browserVersion == 2) { 
-    if (!doc.yPos) 
-      doc.yPos=8 
-    doc.write("<layer id='folder" + this.id + "' top=" + doc.yPos + " visibility=hidden>") 
-  } 
-  if (browserVersion == 3) 
-  {
-    doc.write("<div id='folder" + this.id + "' style='visibility:hide;'>") 
-  }
-   
-  doc.write("\n<table ") 
-  if (browserVersion == 1) 
-    doc.write(" id='folder" + this.id + "' style='position:block;' ") 
-  doc.write(" border=0 cellspacing=0 cellpadding=0>") 
-  doc.write("\n<tr><td>") 
-  doc.write(leftSide) 
-  this.outputLink() 
-  doc.write("<img name='folderIcon" + this.id + "' ") 
-  doc.write("src='" + this.iconSrc+"' border=0></a>") 
-  doc.write("</td>\n<td valign=middle nowrap>") 
-  if (USETEXTLINKS) 
-  { 
-    this.outputLink() 
-    doc.write(this.desc + "</a>") 
-  } 
-  else 
-    doc.write(this.desc)
-
-/*! 
-  if (this.tagName!="")
-  {
-    doc.write(" [external]")
-  }
-*/
-  doc.write("</td>")  
-  doc.write("\n</table>\n") 
-   
-  if (browserVersion == 2) { 
-    doc.write("</layer>") 
-  } 
-  if (browserVersion == 3) { 
-    doc.write("</div>") 
-  } 
-  if (browserVersion == 1) { 
-    this.navObj = doc.all["folder"+this.id] 
-    this.iconImg = doc.all["folderIcon"+this.id] 
-    this.nodeImg = doc.all["nodeIcon"+this.id] 
-  } else if (browserVersion == 2) { 
-    this.navObj = doc.layers["folder"+this.id] 
-    this.iconImg = this.navObj.document.images["folderIcon"+this.id] 
-    this.nodeImg = this.navObj.document.images["nodeIcon"+this.id] 
-    doc.yPos=doc.yPos+this.navObj.clip.height 
-  } else if (browserVersion == 3) {
-    this.navObj = doc.getElementById("folder"+this.id)
-    this.iconImg = doc.images.namedItem("folderIcon"+this.id)
-    this.nodeImg = doc.images.namedItem("nodeIcon"+this.id)
-  }
-} 
-function outputFolderLink() 
-{ 
-  if (this.hreference) 
-  { 
-    doc.write("<a ")
-    if (this.tagName)
-    {
-      doc.write("doxygen='" + this.tagName + "' ");
-    }
-    doc.write("href='" + this.hreference + "' TARGET=\"basefrm\" ") 
-    if (browserVersion > 0) 
-      doc.write("onClick='javascript:clickOnFolder("+this.id+")'") 
-    doc.write(">") 
-  } 
-  else 
-    doc.write("<a>") 
-} 
-function addChild(childNode) 
-{ 
-  this.children[this.nChildren] = childNode 
-  this.nChildren++ 
-  return childNode 
-} 
-function folderSubEntries() 
-{ 
-  var i = 0 
-  var se = this.nChildren 
-  for (i=0; i < this.nChildren; i++){ 
-    if (this.children[i].children) //is a folder 
-      se = se + this.children[i].subEntries() 
-  } 
-  return se 
-} 
-// Definition of class Item (a document or link inside a Folder) 
-// ************************************************************* 
-function Item(itemDescription, tagName, itemLink) // Constructor 
-{ 
-  // constant data 
-  this.desc = itemDescription 
-  this.tagName = tagName
-  this.link = itemLink 
-  this.id = -1 //initialized in initalize() 
-  this.navObj = 0 //initialized in render() 
-  this.iconImg = 0 //initialized in render() 
-  this.iconSrc = "ftv2doc.png" 
-  // methods 
-  this.initialize = initializeItem 
-  this.createIndex = createEntryIndex 
-  this.hide = hideItem 
-  this.display = display 
-  this.renderOb = drawItem 
-  this.totalHeight = totalHeight 
-} 
-function hideItem() 
-{ 
-  if (browserVersion == 1 || browserVersion == 3) { 
-    if (this.navObj.style.display == "none") 
-      return 
-    this.navObj.style.display = "none" 
-  } else { 
-    if (this.navObj.visibility == "hidden") 
-      return 
-    this.navObj.visibility = "hidden" 
-  }     
-} 
-function initializeItem(level, lastNode, leftSide) 
-{  
-  this.createIndex() 
-  if (level>0) 
-    if (lastNode) //the last 'brother' in the children array 
-    { 
-      this.renderOb(leftSide + "<img src='ftv2lastnode.png' width=16 height=22>") 
-      leftSide = leftSide + "<img src='ftv2blank.png' width=16 height=22>"  
-    } 
-    else 
-    { 
-      this.renderOb(leftSide + "<img src='ftv2node.png' width=16 height=22>") 
-      leftSide = leftSide + "<img src='ftv2vertline.png' width=16 height=22>" 
-    } 
-  else 
-    this.renderOb("")   
-} 
-function drawItem(leftSide) 
-{ 
-  if (browserVersion == 2) 
-    doc.write("<layer id='item" + this.id + "' top=" + doc.yPos + " visibility=hidden>") 
-  if (browserVersion == 3) 
-    doc.write("<div id='item" + this.id + "' style='display:block;'>") 
-     
-  doc.write("\n<table ") 
-  if (browserVersion == 1) 
-    doc.write(" id='item" + this.id + "' style='position:block;' ") 
-  doc.write(" border=0 cellspacing=0 cellpadding=0>\n") 
-  doc.write("<tr><td>") 
-  doc.write(leftSide) 
-  if (this.link!="")
-  {
-    doc.write("<a href=" + this.link + ">") 
-  }
-  doc.write("<img id='itemIcon"+this.id+"' ") 
-  doc.write("src='"+this.iconSrc+"' border=0>") 
-  if (this.link!="")
-  {
-    doc.write("</a>")
-  } 
-  doc.write("</td>\n<td valign=middle nowrap>") 
-  if (USETEXTLINKS && this.link!="") 
-    doc.write("<a href=" + this.link + ">" + this.desc + "</a>") 
-  else 
-    doc.write(this.desc) 
-/*!
-  if (this.tagName!="")
-  {
-    doc.write(" [external]");
-  }
-*/
-  doc.write("\n</table>\n") 
-   
-  if (browserVersion == 2) 
-    doc.write("</layer>") 
-  if (browserVersion == 3) 
-    doc.write("</div>")
-  if (browserVersion == 1) { 
-    this.navObj = doc.all["item"+this.id] 
-    this.iconImg = doc.all["itemIcon"+this.id] 
-  } else if (browserVersion == 2) { 
-    this.navObj = doc.layers["item"+this.id] 
-    this.iconImg = this.navObj.document.images["itemIcon"+this.id] 
-    doc.yPos=doc.yPos+this.navObj.clip.height 
-  } else if (browserVersion == 3) {
-    this.navObj = doc.getElementById("item"+this.id)
-    this.iconImg = doc.images.namedItem("itemIcon"+this.id)
-  }
-} 
-// Methods common to both objects (pseudo-inheritance) 
-// ******************************************************** 
-function display() 
-{ 
-  if (browserVersion == 1 || browserVersion == 3) 
-    this.navObj.style.display = "block" 
-  else 
-    this.navObj.visibility = "show" 
-} 
-function createEntryIndex() 
-{ 
-  this.id = nEntries 
-  indexOfEntries[nEntries] = this 
-  nEntries++ 
-} 
-// total height of subEntries open 
-function totalHeight() //used with browserVersion == 2 
-{ 
-  var h = this.navObj.clip.height 
-  var i = 0 
-   
-  if (this.isOpen) //is a folder and _is_ open 
-    for (i=0 ; i < this.nChildren; i++)  
-      h = h + this.children[i].totalHeight() 
-  return h 
-} 
-// Events 
-// ********************************************************* 
-function clickOnFolder(folderId) 
-{ 
-  var clicked = indexOfEntries[folderId] 
-  if (!clicked.isOpen) 
-    clickOnNode(folderId) 
-  return  
-  if (clicked.isSelected) 
-    return 
-} 
-function clickOnNode(folderId) 
-{ 
-  var clickedFolder = 0 
-  var state = 0 
-  clickedFolder = indexOfEntries[folderId] 
-  state = clickedFolder.isOpen 
-  clickedFolder.setState(!state) //open<->close  
-} 
-function initializeDocument() 
-{ 
-  doc = document;
-  if (doc.all) 
-    browserVersion = 1 //IE4   
-  else 
-    if (doc.layers) 
-      browserVersion = 2 //NS4 
-    else if(navigator.userAgent.toLowerCase().indexOf('gecko') != -1)
-        browserVersion = 3 //mozilla
-      else 
-        browserVersion = 0 //other 
-
-  foldersTree.initialize(0, 1, "") 
-  foldersTree.display()
-  
-  if (browserVersion > 0) 
-  { 
-    if(browserVersion != 3)
-      doc.write("<layer top="+indexOfEntries[nEntries-1].navObj.top+">&nbsp;</layer>") 
-    // close the whole tree 
-    clickOnNode(0) 
-    // open the root folder 
-    clickOnNode(0) 
-  } 
-} 
-// Auxiliary Functions for Folder-Treee backward compatibility 
-// ********************************************************* 
-function gFld(description, tagName, hreference) 
-{ 
-  folder = new Folder(description, tagName, hreference) 
-  return folder 
-} 
-function gLnk(description, tagName, linkData) 
-{ 
-  fullLink = "" 
-  if (linkData!="")
-  {
-    fullLink = "'"+linkData+"' target=\"basefrm\"" 
-  } 
-  linkItem = new Item(description, tagName, fullLink)   
-  return linkItem 
-} 
-function insFld(parentFolder, childFolder) 
-{ 
-  return parentFolder.addChild(childFolder) 
-} 
-function insDoc(parentFolder, document) 
-{ 
-  parentFolder.addChild(document) 
-} 
-// Global variables 
-// **************** 
-USETEXTLINKS = 1
-indexOfEntries = new Array 
-nEntries = 0 
-doc = document 
-browserVersion = 0 
-selectedFolder=0
diff --git a/doc/salome/tui/doxyfile.in b/doc/salome/tui/doxyfile.in
new file mode 100755 (executable)
index 0000000..b07d994
--- /dev/null
@@ -0,0 +1,263 @@
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
+# Doxyfile 1.4.6
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+PROJECT_NAME           = "Post-Pro Module Programming Guide v.@VERSION@"
+PROJECT_NUMBER         = 
+OUTPUT_DIRECTORY       = VISU
+CREATE_SUBDIRS         = NO
+OUTPUT_LANGUAGE        = English
+USE_WINDOWS_ENCODING   = NO
+BRIEF_MEMBER_DESC      = YES
+REPEAT_BRIEF           = NO
+ABBREVIATE_BRIEF       = 
+ALWAYS_DETAILED_SEC    = YES
+INLINE_INHERITED_MEMB  = YES
+FULL_PATH_NAMES        = YES
+STRIP_FROM_PATH        = @top_srcdir@ @top_builddir@
+STRIP_FROM_INC_PATH    = 
+SHORT_NAMES            = NO
+JAVADOC_AUTOBRIEF      = YES
+MULTILINE_CPP_IS_BRIEF = NO
+DETAILS_AT_TOP         = NO
+INHERIT_DOCS           = YES
+SEPARATE_MEMBER_PAGES  = NO
+TAB_SIZE               = 5
+ALIASES                = 
+OPTIMIZE_OUTPUT_FOR_C  = YES
+OPTIMIZE_OUTPUT_JAVA   = YES
+BUILTIN_STL_SUPPORT    = @DOXYGEN_SUPPORT_STL@
+DISTRIBUTE_GROUP_DOC   = NO
+SUBGROUPING            = YES
+
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+EXTRACT_ALL            = YES
+EXTRACT_PRIVATE        = YES
+EXTRACT_STATIC         = YES
+EXTRACT_LOCAL_CLASSES  = YES
+EXTRACT_LOCAL_METHODS  = NO
+HIDE_UNDOC_MEMBERS     = NO
+HIDE_UNDOC_CLASSES     = NO
+HIDE_FRIEND_COMPOUNDS  = NO
+HIDE_IN_BODY_DOCS      = NO
+INTERNAL_DOCS          = YES
+CASE_SENSE_NAMES       = YES
+HIDE_SCOPE_NAMES       = NO
+SHOW_INCLUDE_FILES     = YES
+INLINE_INFO            = YES
+SORT_MEMBER_DOCS       = NO
+SORT_BRIEF_DOCS        = NO
+SORT_BY_SCOPE_NAME     = NO
+GENERATE_TODOLIST      = YES
+GENERATE_TESTLIST      = YES
+GENERATE_BUGLIST       = YES
+GENERATE_DEPRECATEDLIST= YES
+ENABLED_SECTIONS       = 
+MAX_INITIALIZER_LINES  = 25
+SHOW_USED_FILES        = NO
+SHOW_DIRECTORIES       = NO
+FILE_VERSION_FILTER    = 
+
+#---------------------------------------------------------------------------
+# configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+QUIET                  = NO
+WARNINGS               = YES
+WARN_IF_UNDOCUMENTED   = YES
+WARN_IF_DOC_ERROR      = YES
+WARN_NO_PARAMDOC       = NO
+WARN_FORMAT            = "$file:$line: $text"
+WARN_LOGFILE           =
+
+#---------------------------------------------------------------------------
+# configuration options related to the input files
+#---------------------------------------------------------------------------
+INPUT                  = @top_srcdir@/src \
+                        @top_srcdir@/bin \
+                        @top_srcdir@/idl \
+                        @top_builddir@/bin
+FILE_PATTERNS          = *.idl *.hxx *.cxx *.h *.c *.hh *.cc @DOXYGEN_PYTHON_EXTENSION@
+RECURSIVE              = YES
+EXCLUDE                = 
+EXCLUDE_SYMLINKS       = NO
+EXCLUDE_PATTERNS       = 
+EXAMPLE_PATH           = 
+EXAMPLE_PATTERNS       = 
+EXAMPLE_RECURSIVE      = NO
+IMAGE_PATH             = @srcdir@/images
+INPUT_FILTER           = 
+FILTER_PATTERNS        = 
+FILTER_SOURCE_FILES    = YES
+
+#---------------------------------------------------------------------------
+# configuration options related to source browsing
+#---------------------------------------------------------------------------
+SOURCE_BROWSER         = NO
+INLINE_SOURCES         = NO
+STRIP_CODE_COMMENTS    = YES
+REFERENCED_BY_RELATION = NO
+REFERENCES_RELATION    = YES
+USE_HTAGS              = NO
+VERBATIM_HEADERS       = YES
+
+#---------------------------------------------------------------------------
+# configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+ALPHABETICAL_INDEX     = YES
+COLS_IN_ALPHA_INDEX    = 3
+IGNORE_PREFIX          = 
+
+#---------------------------------------------------------------------------
+# configuration options related to the HTML output
+#---------------------------------------------------------------------------
+GENERATE_HTML          = YES
+HTML_OUTPUT            = .
+HTML_FILE_EXTENSION    = .html
+HTML_HEADER            = @srcdir@/static/myheader.html
+HTML_FOOTER            = @srcdir@/static/footer.html
+HTML_STYLESHEET        = @srcdir@/static/doxygen.css
+HTML_ALIGN_MEMBERS     = YES
+GENERATE_HTMLHELP      = NO
+CHM_FILE               = 
+HHC_LOCATION           = 
+GENERATE_CHI           = NO
+BINARY_TOC             = YES
+TOC_EXPAND             = YES
+DISABLE_INDEX          = NO
+ENUM_VALUES_PER_LINE   = 4
+GENERATE_TREEVIEW      = NO
+TREEVIEW_WIDTH         = 250
+
+#---------------------------------------------------------------------------
+# configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+GENERATE_LATEX         = NO
+LATEX_OUTPUT           = latex
+LATEX_CMD_NAME         = latex
+MAKEINDEX_CMD_NAME     = makeindex
+COMPACT_LATEX          = NO
+PAPER_TYPE             = a4wide
+EXTRA_PACKAGES         = 
+LATEX_HEADER           = 
+PDF_HYPERLINKS         = NO
+USE_PDFLATEX           = NO
+LATEX_BATCHMODE        = NO
+LATEX_HIDE_INDICES     = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the RTF output
+#---------------------------------------------------------------------------
+GENERATE_RTF           = NO
+RTF_OUTPUT             = rtf
+COMPACT_RTF            = NO
+RTF_HYPERLINKS         = NO
+RTF_STYLESHEET_FILE    = 
+RTF_EXTENSIONS_FILE    = 
+
+#---------------------------------------------------------------------------
+# configuration options related to the man page output
+#---------------------------------------------------------------------------
+GENERATE_MAN           = NO
+MAN_OUTPUT             = man
+MAN_EXTENSION          = .3
+MAN_LINKS              = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the XML output
+#---------------------------------------------------------------------------
+GENERATE_XML           = NO
+XML_OUTPUT             = xml
+XML_SCHEMA             = 
+XML_DTD                = 
+XML_PROGRAMLISTING     = YES
+
+#---------------------------------------------------------------------------
+# configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+GENERATE_AUTOGEN_DEF   = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+GENERATE_PERLMOD       = NO
+PERLMOD_LATEX          = NO
+PERLMOD_PRETTY         = YES
+PERLMOD_MAKEVAR_PREFIX = 
+
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor   
+#---------------------------------------------------------------------------
+ENABLE_PREPROCESSING   = YES
+MACRO_EXPANSION        = NO
+EXPAND_ONLY_PREDEF     = NO
+SEARCH_INCLUDES        = YES
+INCLUDE_PATH           = 
+INCLUDE_FILE_PATTERNS  = 
+PREDEFINED             = 
+EXPAND_AS_DEFINED      = 
+SKIP_FUNCTION_MACROS   = NO
+
+#---------------------------------------------------------------------------
+# Configuration::additions related to external references   
+#---------------------------------------------------------------------------
+TAGFILES               = 
+GENERATE_TAGFILE       = 
+ALLEXTERNALS           = NO
+EXTERNAL_GROUPS        = YES
+PERL_PATH              = /usr/bin/perl
+
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool   
+#---------------------------------------------------------------------------
+CLASS_DIAGRAMS         = YES
+HIDE_UNDOC_RELATIONS   = NO
+HAVE_DOT               = YES
+CLASS_GRAPH            = YES
+COLLABORATION_GRAPH    = NO
+GROUP_GRAPHS           = NO
+UML_LOOK               = NO
+TEMPLATE_RELATIONS     = YES
+INCLUDE_GRAPH          = YES
+INCLUDED_BY_GRAPH      = NO
+CALL_GRAPH             = NO
+GRAPHICAL_HIERARCHY    = YES
+DIRECTORY_GRAPH        = YES
+DOT_IMAGE_FORMAT       = jpg
+DOT_PATH               = 
+DOTFILE_DIRS           = 
+MAX_DOT_GRAPH_WIDTH    = 1024
+MAX_DOT_GRAPH_HEIGHT   = 1200
+MAX_DOT_GRAPH_DEPTH    = 0
+DOT_TRANSPARENT        = NO
+DOT_MULTI_TARGETS      = NO
+GENERATE_LEGEND        = NO
+DOT_CLEANUP            = YES
+
+#---------------------------------------------------------------------------
+# Configuration::additions related to the search engine   
+#---------------------------------------------------------------------------
+SEARCHENGINE           = NO
diff --git a/doc/salome/tui/images/application.jpg b/doc/salome/tui/images/application.jpg
new file mode 100755 (executable)
index 0000000..a6979ab
Binary files /dev/null and b/doc/salome/tui/images/application.jpg differ
diff --git a/doc/salome/tui/images/logocorp.gif b/doc/salome/tui/images/logocorp.gif
new file mode 100755 (executable)
index 0000000..7697e08
Binary files /dev/null and b/doc/salome/tui/images/logocorp.gif differ
diff --git a/doc/salome/tui/images/occ.gif b/doc/salome/tui/images/occ.gif
new file mode 100755 (executable)
index 0000000..ce017c8
Binary files /dev/null and b/doc/salome/tui/images/occ.gif differ
diff --git a/doc/salome/tui/static/doxygen.css b/doc/salome/tui/static/doxygen.css
new file mode 100755 (executable)
index 0000000..88e613d
--- /dev/null
@@ -0,0 +1,170 @@
+H1 { 
+   text-align: center; 
+}
+
+CAPTION { 
+   font-weight: bold 
+}
+
+/* Link in the top navbar */
+A.qindex {}
+
+A.qindexRef {}
+
+/* Link to any cross-referenced Doxygen element */
+A.el { 
+   text-decoration: none; 
+   font-weight: bold 
+}
+
+A.elRef { 
+   font-weight: bold 
+}
+
+/* Link to any cross-referenced Doxygen element inside a code section 
+   (ex: header)
+*/
+A.code { 
+   text-decoration: none; 
+   font-weight: normal; 
+   color: #4444ee 
+}
+
+A.codeRef { 
+   font-weight: normal; 
+   color: #4444ee 
+}
+
+A:hover { 
+   text-decoration: none; 
+   background-color: lightblue 
+}
+
+DL.el { 
+   margin-left: -1cm 
+}
+
+/* A code fragment (ex: header) */
+DIV.fragment { 
+   width: 100%; 
+   border: none; 
+   background-color: #CCCCCC 
+}
+
+/* In the alpha list (coumpound index), style of an alphabetical index letter */
+DIV.ah { 
+   background-color: #CCCCCC; 
+   font-weight: bold; 
+   color: #ffffff; 
+   margin-bottom: 3px; 
+   margin-top: 3px 
+}
+
+/* Method name (+ type) */
+TD.md { 
+   background-color: lightblue; 
+   font-weight: bold; 
+}
+
+/* Method parameter (some of them) */
+TD.mdname1 { 
+   background-color: lightblue; 
+   font-weight: bold; color: #602020; 
+}
+
+/* Method parameter (some of them) */
+TD.mdname { 
+   background-color: lightblue; 
+   font-weight: bold; 
+   color: #602020; 
+   width: 600px; 
+}
+
+/* Separator between methods group (usually empty, seems not supported by IE) */
+DIV.groupHeader { 
+   margin-left: 16px; 
+   margin-top: 12px; 
+   margin-bottom: 6px; 
+   font-weight: bold 
+}
+
+DIV.groupText { 
+   margin-left: 16px; 
+   font-style: italic; 
+   font-size: smaller 
+}
+
+BODY { 
+   background: #FFFFFF;
+}
+
+/*div.div-page { 
+  background-color: #FFFFFF; 
+  margin-left: 1em;
+  margin-right: 1em;
+  margin-top: 1em;
+  margin-bottom: 0.1em;
+
+  padding-left: 1em;
+  padding-right: 1em;
+  padding-top: 0.5em;
+  padding-bottom: 0.5em;
+
+  border: 2px solid #0D299A; 
+  border-width: 2px;
+  border-color: #0D299A; 
+}*/
+
+div.tabs { 
+  text-align: justify; 
+  margin-left    : 2px;         
+  margin-right   : 2px;  
+  margin-top     : 2px; 
+  margin-bottom  : 2px
+  font-weight: bold;
+  color: #FFFFFF;
+}
+
+DIV.div-footer { 
+  margin-left: 1em;
+  margin-right: 1em;
+  margin-bottom: 0.2em;
+  text-align: right;
+  font-size: 9pt; 
+}
+
+/* In File List, Coumpound List, etc, 1st column of the index */
+TD.indexkey { 
+   background-color: #CCCCCC; 
+   font-weight: bold; 
+   padding-right  : 10px; 
+   padding-top    : 2px; 
+   padding-left   : 10px; 
+   padding-bottom : 2px; 
+   margin-left    : 0px; 
+   margin-right   : 0px; 
+   margin-top     : 2px; 
+   margin-bottom  : 2px  
+}
+
+/* In File List, Coumpound List, etc, 2nd column of the index */
+TD.indexvalue { 
+   background-color: #CCCCCC; 
+   font-style: italic; 
+   padding-right  : 10px; 
+   padding-top    : 2px; 
+   padding-left   : 10px; 
+   padding-bottom : 2px; 
+   margin-left    : 0px; 
+   margin-right   : 0px; 
+   margin-top     : 2px; 
+   margin-bottom  : 2px  
+}
+
+span.keyword       { color: #008000 }
+span.keywordtype   { color: #604020 }
+span.keywordflow   { color: #e08000 }
+span.comment       { color: #800000 }
+span.preprocessor  { color: #806020 }
+span.stringliteral { color: #002080 }
+span.charliteral   { color: #008080 }
diff --git a/doc/salome/tui/static/footer.html b/doc/salome/tui/static/footer.html
new file mode 100755 (executable)
index 0000000..cb55f39
--- /dev/null
@@ -0,0 +1,5 @@
+</DIV>
+<DIV class="div-footer">
+Generated on $datetime for $projectname by&nbsp;<A href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></A> $doxygenversion</DIV>
+</BODY>
+</HTML>
diff --git a/doc/salome/tui/static/myheader.html b/doc/salome/tui/static/myheader.html
new file mode 100755 (executable)
index 0000000..d2efb75
--- /dev/null
@@ -0,0 +1,13 @@
+<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
+<html>
+<head>
+   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+   <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">
+   <title>Main Page</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+<link href="tabs.css" rel="stylesheet" type="text/css">
+</head>
+<body>
+&nbsp;
+</body>
+</html>
index 538f127b00945690a9e6ffab7a11725394ec273b..6c0d0b89214cde1fd196c12b4f7cfff809c843ad 100644 (file)
@@ -1,50 +1,48 @@
-# Copyright (C) 2005  OPEN CASCADE, CEA, EDF R&D, LEG
-#           PRINCIPIA R&D, EADS CCR, Lip6, BV, CEDRAT
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either 
-# version 2.1 of the License.
-# 
-# This library is distributed in the hope that it will be useful 
-# but WITHOUT ANY WARRANTY; without even the implied warranty of 
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-# Lesser General Public License for more details.
-# 
-# You should have received a copy of the GNU Lesser General Public  
-# License along with this library; if not, write to the Free Software 
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-# 
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-# 
-
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 # This Makefile is responsible of generating the client and server
 # implementation of IDL interfaces for both C++ and python usage.
 # The building process of the C++ files is in charge of each source
 # package and then is not manage here.
 #
-
 include $(top_srcdir)/adm_local/unix/make_common_starter.am
 
-BASEIDL_FILES= VISU_Gen.idl
-
-EXTRA_DIST+= $(BASEIDL_FILES)
+BASEIDL_FILES = VISU_Gen.idl
 
 # This variable defines the files to be installed
-salomeidl_DATA = $(BASEIDL_FILES)
+dist_salomeidl_DATA = $(BASEIDL_FILES)
 
 # VISU idl common library
 lib_LTLIBRARIES = libSalomeIDLVISU.la
 
 # Sources built from idl files
-nodist_libSalomeIDLVISU_la_SOURCES= VISU_GenSK.cc
+nodist_libSalomeIDLVISU_la_SOURCES = VISU_GenSK.cc
 
 # header files must be exported: other modules have to use this library
-nodist_salomeinclude_HEADERS= $(BASEIDL_FILES:%.idl=%.hh)
+nodist_salomeinclude_HEADERS = $(BASEIDL_FILES:%.idl=%.hh)
 
-libSalomeIDLVISU_la_CPPFLAGS =\
-       -I$(top_builddir)/salome_adm/unix \
-       -I$(top_builddir)/idl \
+libSalomeIDLVISU_la_CPPFLAGS =                 \
+       -I$(top_builddir)/salome_adm/unix       \
+       -I$(top_builddir)/idl                   \
        @CORBA_CXXFLAGS@ @CORBA_INCLUDES@ @KERNEL_CXXFLAGS@ @MED_CXXFLAGS@
 libSalomeIDLVISU_la_LDFLAGS = -no-undefined -version-info=0:0:0
 libSalomeIDLVISU_la_LIBADD  = @CORBA_LIBS@ $(MED_LDFLAGS) -lSalomeIDLMED
@@ -64,14 +62,14 @@ SUFFIXES = .idl .hh SK.cc
        $(OMNIORB_IDL) $(IDLCXXFLAGS) $(OMNIORB_IDLCXXFLAGS) $<
 
 install-exec-local: $(BASEIDL_FILES:%=$(top_srcdir)/idl/%)
-       $(INSTALL) -d  $(pkgpythondir)
+       $(INSTALL) -d  $(DESTDIR)$(salomepythondir)
        ls $^ | while read file; do \
-         $(OMNIORB_IDL) $(IDLPYFLAGS) -C$(pkgpythondir) $$file ; \
+         $(OMNIORB_IDL) $(IDLPYFLAGS) -C$(DESTDIR)$(salomepythondir) $$file ; \
        done
 
 # uninstall-local removes too much, but it works in distcheck
 uninstall-local:
-       rm -rf $(pkgpythondir)/*
+       rm -rf $(DESTDIR)$(salomepythondir)/*
 
 mostlyclean-local: clean-idls
 
index 9e1958f81ca9824a65e117903946e1505c60f096..f4027093876c1ce7465a760de25403d6b6a26b89 100644 (file)
@@ -1,25 +1,27 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
 //  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VISU_Gen.idl
 //  Author : Alexey Petrov
-
+//
 /*! \file VISU_Gen.idl This file conatins a set of interfaces of the %VISU module.
  *     This module provides various forms of data visualization in %SALOME application.
  *     These forms include data tables, XY plots, 3d representations
@@ -44,6 +46,7 @@ module VISU {
   typedef string IdType;
 
   typedef sequence<string> string_array;
+  typedef sequence<double> double_array;
 
   /*!
    * This enumeration contains a set of elements defining the type
@@ -78,9 +81,11 @@ module VISU {
     TSCALARMAP, /*!< Scalarmap 3D presentation object */
     TISOSURFACES, /*!< Iso surface 3D presentation object */
     TDEFORMEDSHAPE, /*!< Deformed shape 3D presentation object */
-    TSCALARMAPONDEFORMEDSHAPE, /*!< Scalar map on deformed shape 3D presentation object */
+    TSCALARMAPONDEFORMEDSHAPE, /*!< Scalar map on deformed shape 3D presentation object. It is obsolete. Use TDEFORMEDSHAPEANDSCALARMAP instead */
+    TDEFORMEDSHAPEANDSCALARMAP, /*!< Deformed shape and scalar map 3D presentation object */
     TGAUSSPOINTS, /*!< Gauss Points 3D presentation object */
     TPLOT3D, /*!< Plot3D 3D presentation object */
+    TPOINTMAP3D, /*!< 3D presentation for table object */
     TCUTPLANES, /*!< Cut planes 3D presentation object */
     TCUTLINES, /*!< Cut lines 3D presentation object */
     TVECTORS, /*!< Vectors 3D presentation object */
@@ -104,6 +109,18 @@ module VISU {
     TALL
   };
 
+  /* Clipping planes management */
+  struct ClippingPlane {
+    double X;
+    double Y;
+    double Z;
+    double dX;
+    double dY;
+    double dZ;
+    boolean isAuto;
+    string name;
+  };
+    
   interface Base {
     /*!
      * Returns ID of the object.
@@ -135,59 +152,6 @@ module VISU {
   interface PrsObject : RemovableObject {
   };
 
-  //-------------------------------------------------------
-  /*! \brief %Table representation interface
-   *
-   * Presentation parameters of the %Table view.
-   */
-  interface Table : PrsObject {
-    /*!
-     * Sets the title of the table.
-     * \param theTitle String parameter defining the title of this table.
-     */
-    void SetTitle(in string theTitle);
-
-    /*!
-     * Gets the title of the table.
-     * \return A string value containing the title of the table.
-    */
-    string GetTitle();
-
-    /*!
-     * This enumeration contains a set of elements defining the orientation of the table.
-     */
-    enum Orientation {
-      HORIZONTAL, /*!< Horizontal orientation of the table. */
-      VERTIACAL   /*!< Vertical orientation of the table. */
-    };
-
-    /*!
-     * Sets orientation of the table.
-     * \param theOrientation This input parameter defines the orientation of the table.
-     *                       It is taken from the <VAR>Orientation</VAR> enumeration.
-     */
-    void SetOrientation(in Orientation theOrientation);
-
-    /*!
-     * Gets orientation of the table.
-     * \return Orientation of the table. The returned value will correspond
-     *         to one of the elements the <VAR>Orientation</VAR> enumeration.
-     */
-    Orientation GetOrientation();
-
-    /*!
-     * Gets the number of rows of the table.
-     * \return Long value corresponding to the number of rows of the table
-     */
-    long GetNbRows();
-
-    /*!
-     * Gets the number of columns of the table.
-     * \return Long value corresponding to the number of columns of the table
-     */
-    long GetNbColumns();
-  };
-
   //-------------------------------------------------------
   /*! \brief Interface of curve representation.
    *
@@ -346,6 +310,7 @@ module VISU {
                         SHADED,
                         INSIDEFRAME,
                         SURFACEFRAME,
+                        FEATURE_EDGES,
                         SHRINK
   };
 
@@ -400,6 +365,17 @@ module VISU {
      * \return The type of representation of the mesh.
      */
     PresentationType GetPresentationType();
+
+    /*!
+     * Switches shrink mode of presentation
+     * Note: SetPresentationType(SHRINK) is same as SetShrink(True)
+     */
+    void SetShrink(in boolean toShrink);
+
+    /*!
+     * Returns current state of shrink mode
+     */
+    boolean IsShrank();
   };
 
 
@@ -412,16 +388,8 @@ module VISU {
    * bar is displayed along with each colored field presentation and serves for
    * consulting the correspondance between colors and data values.
    */
-  interface ColoredPrs3d : Prs3d 
+  interface ColoredPrs3dBase : Prs3d
   {
-    /*! Sets the method of coloring of the elements composing a 3D presentation.
-     */
-    void SetScalarMode(in long theScalarMode);
-
-    /*! Gets the method of coloring of the elements composing a 3D presentation.
-     */
-    long GetScalarMode();
-
     /*!
      * Sets scalar range - min and max boundaries of the scalar bar.
      * \param theMin  Min boundary of the scalar bar.
@@ -447,7 +415,7 @@ module VISU {
     /*!
      * Gets the min boundary of the scalar bar from source data.
      */
-    double GetSourceMin();
+    double GetSourceMin();    
 
     /*!
      * Gets the max boundary of the scalar bar from source data.
@@ -509,7 +477,6 @@ module VISU {
      *         will be used for visualization of this presentable object.
      */
     long GetNbColors();
-
     /*!
      * Sets the number of labels which will be used for indication of color gradation
      * of the scalar bar.
@@ -524,17 +491,6 @@ module VISU {
      */
     long GetLabels();
 
-    /*!
-     * Sets the title of the scalar bar. By default - the name of the selected result is used.
-     * \param theName String parameter defining the name of the scalar bar.
-     */
-    void SetTitle(in string theName);
-
-    /*!
-     * Gets the title of the scalar bar.
-     */
-    string GetTitle();
-
     /*! %Orientation of the scalar bar (to provide backward compatibility). */
     enum Orientation {
       HORIZONTAL, /*!< Horizontal orientation of the scalar bar.*/
@@ -552,6 +508,58 @@ module VISU {
      * Gets the type of orientation of the scalar bar (to provide backward compatibility).
      */
     Orientation GetBarOrientation();
+  };
+
+  /*! \brief Additional Interface for the %Colored 3D Presentations
+   *
+   */
+
+  interface ColoredPrs3d : ColoredPrs3dBase
+  {
+    /*!
+     * Sets the title of the scalar bar. By default - the name of the selected result is used.
+     * \param theName String parameter defining the name of the scalar bar.
+     */
+    void SetTitle(in string theName);
+
+    /*!
+     * Gets the title of the scalar bar.
+     */
+    string GetTitle();
+
+    /*! Sets the method of coloring of the elements composing a 3D presentation.
+     */
+    void SetScalarMode(in long theScalarMode);
+
+    /*! Gets the method of coloring of the elements composing a 3D presentation.
+     */
+    long GetScalarMode();
+
+    /*!  
+     * Set the visibility of a distribution curve.
+     * \param theIs is used to switch on/off the visibility of a distribution curve.
+     */
+    void SetIsDistributionVisible(in boolean theIs);
+
+    //! Gets current visibility of a distribution curve
+    boolean GetIsDistributionVisible();
+
+    //! Gets current filtering by scalars mode
+    boolean IsScalarFilterUsed();
+
+    void UseScalarFiltering( in boolean theUseScalarFilter );
+
+    /*!
+     * Sets scalar range - min and max boundaries of the scalar bar.
+     * \param theMin  Min boundary of the scalar bar.
+     * \param theMax  Max boundary of the scalar bar.
+     * \param theIsFilter  if true then filter by scalars.
+     */
+    void SetScalarFilterRange( in double theMin, in double theMax );
+
+    double GetScalarFilterMin();
+
+    double GetScalarFilterMax();
 
     /*!
      * Add group as geometry of presentation.
@@ -560,7 +568,6 @@ module VISU {
      */
     void AddMeshOnGroup(in string theGroupName);
     
-    
     /*!
      * PrsMerger method:
      * Remove all groups.(The scalar map will be placed on all mesh).
@@ -702,7 +709,8 @@ module VISU {
    * bar is displayed along with each colored field presentation and serves for
    * consulting the correspondance between colors and data values.
    */
-  interface ScalarMap : ColoredPrs3d {
+  
+  interface ScaledPrs3d {
     /*!
      * Sets the type of scaling of the values reflected by the scalar bar.
      * \param theScaling The value of this parameter is taken from the <VAR>Scaling</VAR> enumeration.
@@ -713,6 +721,19 @@ module VISU {
      * Gets the type of scaling of the values reflected by this presentation.
      */
     Scaling GetScaling();
+  };
+
+  interface ScalarMap : ColoredPrs3d, ScaledPrs3d {
+
+    /*!
+     * Returns visibility state of scalar bar
+     */
+    boolean IsBarVisible();
+
+    /*!
+     * Sets visibility state of scalar bar
+     */
+    void SetBarVisible(in boolean theVisible);
 
   };
 
@@ -867,22 +888,12 @@ module VISU {
     long GetFaceLimit();
   };
 
-  /*! \brief Deformed shape presentation interface
+
+  /*! \brief MonoColor presentation presentation interface
    *
-   * Presentation parameters of the deformed shape presentation.
+   * Presentation parameters of the MonoColor presentation.
    */
-  interface DeformedShape : ScalarMap 
-  {
-    /*!
-     * Sets the scale of the presentatable object.
-     * \param theScale Double value defining the scale of this presentable object.
-     */
-    void SetScale(in double theScale);
-
-    /*!
-     * Gets the scale of the presentatable object.
-     */
-    double GetScale();
+  interface MonoColorPrs : ScalarMap {
 
     /*! This boolean method returns True if this deformed shape presentation is colored.
      */
@@ -907,12 +918,87 @@ module VISU {
   };
 
 
+  /*! \brief Deformed shape presentation interface
+   *
+   * Presentation parameters of the deformed shape presentation.
+   */
+  interface DeformedShape : MonoColorPrs 
+  {
+    /*!
+     * Sets the scale of the presentatable object.
+     * \param theScale Double value defining the scale of this presentable object.
+     */
+    void SetScale(in double theScale);
+
+    /*!
+     * Gets the scale of the presentatable object.
+     */
+    double GetScale();
+
+  };
+
+  //-------------------------------------------------------
+  /*! \brief Deformation interface
+   *
+   * This is base interface for building of the deformed presentations
+   */
+  interface Deformation{
+    /*!
+     * Sets the scale of the presentatable object.
+     * \param theScale Double value defining the scale of this presentable object.
+     */
+    void SetScale(in double theScale);
+
+    /*!
+     * Gets the scale of the presentatable object.
+     */
+    double GetScale();
+
+    /*!
+     * Sets the vectorial field
+     * \param theEntity    - entity of vectorial field
+     * \param theFieldName - the name of vectorial field
+     */
+    void SetVectorialField(in Entity theEntity,
+                          in string theFieldName);
+
+    /*!
+     * Get vectorial entity
+     */
+    Entity GetVectorialFieldEntity();
+
+    /*!
+     * Get scalar field name
+     */
+    string GetVectorialFieldName();
+    
+  };
+
+  //-------------------------------------------------------
+  /*! \brief OptionalDeformation interface
+   *
+   * This is interface for switch on/off of the deformation of the presentation
+   */
+  interface OptionalDeformation : Deformation{
+
+    /*!
+     * Sets the deformation flag of the presentatable object.
+     * \param theFlag Boolean value defining the deformation flag of this presentable object.
+     */
+    void UseDeformation(in boolean theFlag);
+
+    /*!
+     * Gets the deformation flag of the presentatable object.
+     */
+    boolean IsDeformed();
+  };
+
   //-------------------------------------------------------
   /*! \brief Scalar Map on Deformed shape presentation interface
    *
    * Presentation parameters of the scalar map on deformed shape presentation.
    */
-  interface ScalarMapOnDeformedShape : ScalarMap {
+  interface DeformedShapeAndScalarMap : ScalarMap {
     
     /*!
      * Sets the scale of the presentatable object.
@@ -961,7 +1047,44 @@ module VISU {
    *  consists of deforming initial planar mesh according to values assigned to the mesh elements.
    *  If mesh not planar but volumic one, it is possible to generate intermediate planar mesh.
    */
-  interface Plot3D : ScalarMap {
+  interface Plot3dBase {
+    /*!
+     *  Sets the scale factor for scalar values
+     *  (how much corresponding mesh elements should be translated).
+     *  \param theScaleFactor The scaling factor.
+     */
+    void SetScaleFactor (in double theScaleFactor);
+
+    /*!
+     *  Gets the scale factor for scalar values.
+     *  (how much corresponding mesh elements is translated)
+     */
+    double GetScaleFactor();
+
+    /*!
+     *  Sets presentation type: contour or surface.
+     *  \param theIsContourPrs Define, whether presentation type is contour.
+     */
+    void SetContourPrs (in boolean theIsContourPrs );
+
+    /*!
+     *  Returns true if presentation type is contour.
+     */
+    boolean GetIsContourPrs();
+
+    /*!
+     *  Sets the number of contours.
+     *  \param theNb The number of contours.
+     */
+    void SetNbOfContours (in long theNb);
+
+    /*!
+     *  Gets the number of contours.
+     */
+    long GetNbOfContours();
+  };
+
+  interface Plot3D : ScalarMap, Plot3dBase {
     /*!
      *  This enumeration contains a set of elements defining
      *  the type of orientation in 3D space of the cutting plane.
@@ -1015,41 +1138,67 @@ module VISU {
      *  Returns true if a position of cutting plane is relative
      */
     boolean IsPositionRelative();
+  };
 
+ //-------------------------------------------------------
+  /*! \brief %Table representation interface
+   *
+   * Presentation parameters of the %Table view.
+   */
+  interface Table : PrsObject {
     /*!
-     *  Sets the scale factor for scalar values
-     *  (how much corresponding mesh elements should be translated).
-     *  \param theScaleFactor The scaling factor.
+     * Sets the title of the table.
+     * \param theTitle String parameter defining the title of this table.
      */
-    void SetScaleFactor (in double theScaleFactor);
+    void SetTitle(in string theTitle);
 
     /*!
-     *  Gets the scale factor for scalar values.
-     *  (how much corresponding mesh elements is translated)
+     * Gets the title of the table.
+     * \return A string value containing the title of the table.
+    */
+    string GetTitle();
+
+    /*!
+     * This enumeration contains a set of elements defining the orientation of the table.
      */
-    double GetScaleFactor();
+    enum Orientation {
+      HORIZONTAL, /*!< Horizontal orientation of the table. */
+      VERTIACAL   /*!< Vertical orientation of the table. */
+    };
 
     /*!
-     *  Sets presentation type: contour or surface.
-     *  \param theIsContourPrs Define, whether presentation type is contour.
+     * Sets orientation of the table.
+     * \param theOrientation This input parameter defines the orientation of the table.
+     *                       It is taken from the <VAR>Orientation</VAR> enumeration.
      */
-    void SetContourPrs (in boolean theIsContourPrs );
+    void SetOrientation(in Orientation theOrientation);
 
     /*!
-     *  Returns true if presentation type is contour.
+     * Gets orientation of the table.
+     * \return Orientation of the table. The returned value will correspond
+     *         to one of the elements the <VAR>Orientation</VAR> enumeration.
      */
-    boolean GetIsContourPrs();
+    Orientation GetOrientation();
 
     /*!
-     *  Sets the number of contours.
-     *  \param theNb The number of contours.
+     * Gets the number of rows of the table.
+     * \return Long value corresponding to the number of rows of the table
      */
-    void SetNbOfContours (in long theNb);
+    long GetNbRows();
 
     /*!
-     *  Gets the number of contours.
+     * Gets the number of columns of the table.
+     * \return Long value corresponding to the number of columns of the table
      */
-    long GetNbOfContours();
+    long GetNbColumns();
+  };
+
+  //-------------------------------------------------------
+  /*! \brief %PointMap3d representation interface
+   *
+   * Presentation parameters of the %Table Point Map in 3d view.
+   */
+  interface PointMap3d : ColoredPrs3dBase, ScaledPrs3d, Plot3dBase, Table {
   };
 
   //-------------------------------------------------------
@@ -1059,7 +1208,7 @@ module VISU {
    * consists of cutting your initial mesh by a definite number of planes. As the
    * result you will see these planes which will be cutted by the borders of the mesh.
    */
-  interface CutPlanes : ScalarMap {
+  interface CutPlanes : ScalarMap, OptionalDeformation {
     /*!
      * This enumeration contains a set of elements defining the type of orientation in 3D space
      * of the cut planes.
@@ -1322,7 +1471,7 @@ module VISU {
    * Streamlines are used to convey the structure of a vector field.
    * Usually streamlines are created to explore the most interesting features in the field.
    */
-  interface StreamLines : DeformedShape {
+  interface StreamLines : MonoColorPrs {
     /*! This enumerations contains a set of elements necessary
      * for definition of direction of the stream lines.
      */
@@ -1392,7 +1541,7 @@ module VISU {
    * values on the cells and on the basis of them constructs
    * isobaric surfaces, which form this presentation.
    */
-  interface IsoSurfaces : ScalarMap {
+  interface IsoSurfaces : MonoColorPrs {
     /*!
      * Sets the number of isometric surfaces.
      * \param theNb A long value defining the number of isometric surfaces
@@ -1404,6 +1553,22 @@ module VISU {
      * Gets the number of isometric surfaces
      */
     long GetNbSurfaces();
+
+    /*!
+     * Returns TRUE if labels with values are shown
+     */
+    boolean IsLabeled();
+
+    /*!
+     * Set show or not value labels
+     */
+    void ShowLabels(in boolean theShow, in long theNb);
+
+    /*!
+     * Returns Nb of labels per surface
+     */
+   long GetNbLabels();
+
   };
 
   //-------------------------------------------------------
@@ -1571,11 +1736,15 @@ module VISU {
 
     /*! Sets the type of presentation (vectors, deformed shape etc.)
      *  which will be generated by the method <VAR>generatePresentations</VAR>.
+     *  \note \c addField() method should be called before in order to add field
+     *  with number theFieldNum.
      */
     void setPresentationType(in long theFieldNum, in VISUType theType);
 
     /*! Gets the type of presentation (vectors, deformed shape etc.) which will
-     * be generated by the method <VAR>generatePresentations</VAR>.
+     *  be generated by the method <VAR>generatePresentations</VAR>.
+     *  \note \c addField() method should be called before in order to add field
+     *  with number theFieldNum.
      */
     VISUType getPresentationType(in long theFieldNum);
 
@@ -1807,6 +1976,12 @@ module VISU {
 
     /*! Gets current resolution of multi resolution structure for the given mesh and part names */
     void SetResolution(in EntityName theMeshName, in EntityName thePartName, in Resolution theResolution);
+    
+    /*! Gets information about imported MED file */
+    SALOME_MED::MedFileInfo GetMEDFileInfo();
+
+    /*! Export MED file from temp object.  */
+    boolean ExportMED(in string theFileName);
   };
 
   //-------------------------------------------------------
@@ -1959,6 +2134,18 @@ module VISU {
                                       in Entity theEntity, in string theFieldName,
                                       in long theTimeStampNumber);
 
+    /*!
+     * Creates a deformed shape presentation. This function is obsolete. Use DeformedShapeAndScalarMapOnField instead.
+     * \param theResult    Data generated in other sources. (MED object or file)
+     * \param theMeshName  One of the meshes presented in MED file
+     * \param theEntity    Type of entity where the field is defined
+     * \param theFieldName Group of data attributed to the %MESH. The data can be scalar or vector.
+     * \param theTimeStampNumber Number of iteration on the field
+     */
+    DeformedShapeAndScalarMap ScalarMapOnDeformedShapeOnField(in Result theResult, in string theMeshName,
+                                                             in Entity theEntity, in string theFieldName,
+                                                             in long theTimeStampNumber);
+
     /*!
      * Creates a deformed shape presentation.
      * \param theResult    Data generated in other sources. (MED object or file)
@@ -1967,9 +2154,9 @@ module VISU {
      * \param theFieldName Group of data attributed to the %MESH. The data can be scalar or vector.
      * \param theTimeStampNumber Number of iteration on the field
      */
-    ScalarMapOnDeformedShape ScalarMapOnDeformedShapeOnField(in Result theResult, in string theMeshName,
-                                                            in Entity theEntity, in string theFieldName,
-                                                            in long theTimeStampNumber);
+    DeformedShapeAndScalarMap DeformedShapeAndScalarMapOnField(in Result theResult, in string theMeshName,
+                                                              in Entity theEntity, in string theFieldName,
+                                                              in long theTimeStampNumber);
 
     /*!
      * Creates a vector presentation.
@@ -2085,6 +2272,51 @@ module VISU {
      * Get or create %ColoredPrs3dCache object.
      */
     ColoredPrs3dCache GetColoredPrs3dCache(in SALOMEDS::Study theStudy);
+
+    
+    /* Clipping planes management */
+
+    /*Create a clipping plane and return its ID (position in corresponded array) 
+      Id of clipping plane could be changed after deletion of other clipping plane
+    */
+    long CreateClippingPlane(in double X, in double Y, in double Z, 
+                            in double dX, in double dY, in double dZ, 
+                            in boolean auto, in string name);
+    
+    void EditClippingPlane(in long id, in double X, in double Y, in double Z, 
+                            in double dX, in double dY, in double dZ, 
+                            in boolean auto, in string name);
+    
+    /* Returns clipping plane by its Id */
+    ClippingPlane GetClippingPlane(in long id);
+    
+    /* Deletes clipping plane by its Id */
+    boolean DeleteClippingPlane(in long id);
+    
+    /* Applyes a clipping plane with Id to presentation thePrs */
+    boolean ApplyClippingPlane(in Prs3d thePrs, in long id);
+
+    /* Detaches a clipping plane with Id from presentation thePrs */
+    boolean DetachClippingPlane(in Prs3d thePrs, in long id);
+    
+    
+    /* Get number of clipping planes */
+    long GetClippingPlanesNb();
+
+    /*! Converts set of VTK files to the one MED-file
+     * \param theVTKFiles sequence of VTK files
+     * \param out MED-file
+     * \param theMeshName mesh name. This parameter can be empty. In this case name
+              of mesh is equal vtk2med
+     * \param theTSNames values of time stamps. This array can be empty, in
+              this case values of time stamps will be generated automatically ( 0, 1, 2 ... )
+     * \return TRUE if operation has been completed successfully, FALSE otherwise
+     */
+    boolean VTK2MED( in string_array theVTKFiles,
+                     in string theMEDFile,
+                     in string theMeshName,
+                     in double_array theTStamps );
+
   };
 
   /*! \brief %View interface
@@ -2093,8 +2325,8 @@ module VISU {
    * the following types: 3d, Table, XY plot.
    * %View interface is a base for all types of %view interfaces.
    */
-  interface View: Base {
-
+  interface View: Base, SALOME::GenericObj 
+  {
     /*! \brief %ViewRepresentation enumeration
      *
      * displaying part ("ALL" isn't setable)
@@ -2617,6 +2849,8 @@ module VISU {
      */
     void Destroy(in View theView);
   };
+
+
 };
 
 #endif
index 61ac45c295729803a21a655a8c4b7d39ffc131c3..ae592ccd688bdc53dae3f44631eb9ce1a39adf99 100644 (file)
@@ -1,24 +1,26 @@
-# Copyright (C) 2005  OPEN CASCADE, CEA, EDF R&D, LEG
-#           PRINCIPIA R&D, EADS CCR, Lip6, BV, CEDRAT
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either 
-# version 2.1 of the License.
-# 
-# This library is distributed in the hope that it will be useful 
-# but WITHOUT ANY WARRANTY; without even the implied warranty of 
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-# Lesser General Public License for more details.
-# 
-# You should have received a copy of the GNU Lesser General Public  
-# License along with this library; if not, write to the Free Software 
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-# 
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-# 
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
 # $Header$
 #
-
 include $(top_srcdir)/adm_local/unix/make_common_starter.am
 
 #
@@ -27,31 +29,38 @@ include $(top_srcdir)/adm_local/unix/make_common_starter.am
 # ===============================================================
 #
 
-dist_salomeres_DATA= \
+dist_salomeres_DATA = \
 ModuleVisu.png \
 SalomeApp.xml \
 sprite_alpha.bmp \
 sprite_texture.bmp \
 Vertex_Program_ARB.txt \
+Visu_actor_selection.png \
 Visu_add.png \
+Visu_apply.png \
 Visu_anim.png \
+Visu_cell_selection.png \
+Visu_close.png \
 VISU.config \
 Visu_cutlines.png \
-Visu_cutplane.png \
 Visu_cutplanes.png \
 Visu_deformed_anim.png \
 Visu_deformed.png \
 VISU_en.xml \
 Visu_eraseall.png \
 VISU_fr.xml \
+Visu_gauss_point_selection.png \
 Visu_gauss_points.png \
 Visu_graduated_axes.png \
+Visu_help.png \
 Visu_import_med.png \
 Visu_isosurfaces.png \
 Visu_load_texture.png \
+Visu_ok.png \
 Visu_PlaneSegmentation.png \
 Visu_plot2d.png \
 Visu_plot3d.png \
+Visu_point_selection.png \
 Visu_points.png \
 Visu_recording_pause.png \
 Visu_recording_play.png \
@@ -64,6 +73,9 @@ Visu_scalars_anim.png \
 Visu_scalars.png \
 Visu_scaling.png \
 Visu_selectall.png \
+Visu_selection_panel.png \
+Visu_slider_panel.png \
+Visu_sweep_panel.png \
 Visu_selectionactor.png \
 Visu_selectioncell.png \
 Visu_selectionedge.png \
@@ -111,7 +123,10 @@ Visu_slider_previous.png \
 Visu_slider_play.png \
 Visu_slider_pause.png \
 Visu_slider_next.png \
-Visu_slider_last.png
+Visu_holo_render.png \
+Visu_slider_last.png \
+Visu_DeactivatePlane.png \
+Visu_planemanager.png
 
-EXTRA_DIST+= VISUCatalog.xml.in
-nodist_salomeres_DATA=VISUCatalog.xml
+# VSR: little trick to avoid putting if VISUCatalog.xml to the distribution archive
+nodist_salomeres_SCRIPTS = VISUCatalog.xml
index 7990d934baed4e82c9abab196afdc440f3d43f6b..8a190ddf958b5e1dbd167f57109fbee7b92566a3 100644 (file)
Binary files a/resources/ModuleVisu.png and b/resources/ModuleVisu.png differ
index dfd869d57f1c581e8002b5b50a95ecc7ff4881de..a0bdd38565aa23dece05b5f8affabfbcaf3256d1 100644 (file)
@@ -1,3 +1,26 @@
+<!--
+  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+
+  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+
+  This library is free software; you can redistribute it and/or
+  modify it under the terms of the GNU Lesser General Public
+  License as published by the Free Software Foundation; either
+  version 2.1 of the License.
+
+  This library is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public
+  License along with this library; if not, write to the Free Software
+  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+
+  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+
+-->
 <document>
   <section name="VISU">
     <!-- Major module parameters -->
     <parameter name="plot3d_represent"         value="2"/>
     <parameter name="scalar_def_represent"     value="2"/>
     <parameter name="scalar_def_shrink"        value="false"/>
+    <parameter name="floating_point_precision" value="6"/>
     <parameter name="represent_shading"        value="false"/>
-    <parameter name="scalar_bar_horizontal_height" value="0.05"/>
-    <parameter name="scalar_bar_horizontal_width"  value="0.5" />
-    <parameter name="scalar_bar_horizontal_x" value="0.01"/>
+    <parameter name="feature_edges_angle"      value="30.0"/>
+    <parameter name="show_feature_edges"       value="true"/>
+    <parameter name="show_boundary_edges"      value="false"/>
+    <parameter name="show_manifold_edges"      value="false"/>
+    <parameter name="show_non_manifold_edges"  value="false"/>
+    <parameter name="feature_edges_coloring"   value="false"/>
+    <parameter name="scalar_bar_horizontal_height" value="0.08"/>
+    <parameter name="scalar_bar_horizontal_width"  value="0.8" />
+    <parameter name="scalar_bar_horizontal_x" value="0.1"/>
     <parameter name="scalar_bar_horizontal_y" value="0.01"/>
-    <parameter name="scalar_bar_horizontal_title_height" value="0"/>
-    <parameter name="scalar_bar_horizontal_title_width" value="0"/>
-    <parameter name="scalar_bar_horizontal_label_height" value="0"/>
-    <parameter name="scalar_bar_horizontal_label_width" value="0"/>
+    <parameter name="scalar_bar_horizontal_title_size" value="0"/>
+    <parameter name="scalar_bar_horizontal_label_size" value="0"/>
     <parameter name="scalar_bar_horizontal_bar_height" value="0"/>
     <parameter name="scalar_bar_horizontal_bar_width" value="0"/>
     <parameter name="scalar_bar_label_color"  value="255, 255, 255"/>
-    <parameter name="scalar_bar_label_font"   value="Arial,Bold,Italic,Underline,12"/>
-    <parameter name="scalar_bar_label_format" value="%-#6.3g" />
+    <parameter name="scalar_bar_label_font"   value="Arial,Bold,Italic,Shadow,12"/>
+    <parameter name="scalar_bar_label_precision" value="3" />
     <parameter name="scalar_bar_logarithmic"  value="false"/>
+    <!-- RKV : Begin -->
+    <!-- Do filter by scalars or don't -->
+    <parameter name="scalar_bar_filter_by_scalars"  value="false"/>
+    <!-- Show distribution curve or don't -->
+    <parameter name="scalar_bar_show_distribution"  value="false"/>
+    <!-- RKV : End -->
     <parameter name="scalar_bar_mode"         value="0" />
     <parameter name="scalar_bar_num_colors"   value="64"/>
     <parameter name="scalar_bar_num_labels"   value="5" />
     <parameter name="scalar_bar_orientation"  value="0" />
     <parameter name="scalar_bar_title_color"  value="255, 255, 255"/>
-    <parameter name="scalar_bar_title_font"   value="Arial,Bold,Italic,Underline,12"/>
+    <parameter name="scalar_bar_title_font"   value="Arial,Bold,Italic,Shadow,12"/>
     <parameter name="scalar_bar_display_units"   value="true"/>
-    <parameter name="scalar_bar_vertical_height" value="0.5" />
-    <parameter name="scalar_bar_vertical_width"  value="0.05"/>
+    <parameter name="scalar_bar_vertical_height" value="0.8" />
+    <parameter name="scalar_bar_vertical_width"  value="0.08"/>
     <parameter name="scalar_bar_vertical_x"      value="0.01"/>
-    <parameter name="scalar_bar_vertical_y"      value="0.01"/>
+    <parameter name="scalar_bar_vertical_y"      value="0.1"/>
     <parameter name="scalar_bar_vertical_title_height" value="0"/>
     <parameter name="scalar_bar_vertical_title_width" value="0"/>
     <parameter name="scalar_bar_vertical_label_height" value="0"/>
     <parameter name="picking_pyramid_height"  value="1.0"/>
     <parameter name="picking_selection_color" value="255, 255, 0"/>
     <parameter name="picking_point_tolerance" value="0.01"/>
+    <parameter name="picking_info_window"  value="true" />
     <parameter name="picking_transparency" value="50" />
-    <parameter name="picking_position"     value="0"  />
+    <parameter name="picking_position"     value="1"  />
+    <parameter name="picking_camera_movement"  value="true" />
     <parameter name="picking_zoom_factor"  value="1.5"/>
     <parameter name="picking_step_number"  value="10" />
     <parameter name="picking_display_parent_mesh" value="false" />
     <parameter name="recorder_progressive" value="true" />
     <parameter name="cache_memory_mode"    value="1" />
     <parameter name="cache_memory_limit"   value="512" />
+    <parameter name="values_labeling_color"  value="255, 255, 255"/>
+    <parameter name="values_labeling_font"   value="Arial,Bold,Italic,Shadow,12"/>
   </section>
   <section name="resources">
     <!-- Module resources -->
index 96f7ffab184d7398165d9bc42b368c9f85dfc2c9..3668d1f01ad95e1d24257f9649aa4a825f3179ee 100644 (file)
@@ -1,4 +1,27 @@
 <?xml version='1.0' encoding='us-ascii' ?>
+<!--
+  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+
+  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+
+  This library is free software; you can redistribute it and/or
+  modify it under the terms of the GNU Lesser General Public
+  License as published by the Free Software Foundation; either
+  version 2.1 of the License.
+
+  This library is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public
+  License along with this library; if not, write to the Free Software
+  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+
+  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+
+-->
  
 <!-- XML component catalog -->
 <begin-catalog>
index 520342523d9330e0001e6381417ed9130d1de4b9..db3d178f7d223c95d3a787c46739d5adc6c6cb71 100644 (file)
@@ -1,5 +1,28 @@
 <?xml version='1.0' encoding='us-ascii'?>
 <!DOCTYPE application PUBLIC "" "desktop.dtd">
+<!--
+  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+
+  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+
+  This library is free software; you can redistribute it and/or
+  modify it under the terms of the GNU Lesser General Public
+  License as published by the Free Software Foundation; either
+  version 2.1 of the License.
+
+  This library is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public
+  License along with this library; if not, write to the Free Software
+  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+
+  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+
+-->
 
 <!--  GUI customization for VISU component  -->
 
index e2831bad065bb2d36463f70aefcbe3ddca3b49f3..a7c3b3d559afe4e38d1287f185da9a4ba8002078 100644 (file)
@@ -1,5 +1,28 @@
 <?xml version='1.0' encoding='us-ascii'?>
 <!DOCTYPE application PUBLIC "" "desktop.dtd">
+<!--
+  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+
+  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+
+  This library is free software; you can redistribute it and/or
+  modify it under the terms of the GNU Lesser General Public
+  License as published by the Free Software Foundation; either
+  version 2.1 of the License.
+
+  This library is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public
+  License along with this library; if not, write to the Free Software
+  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+
+  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+
+-->
 
 <!--  GUI customization for VISU component  -->
 
diff --git a/resources/Visu_DeactivatePlane.png b/resources/Visu_DeactivatePlane.png
new file mode 100644 (file)
index 0000000..e4c2190
Binary files /dev/null and b/resources/Visu_DeactivatePlane.png differ
index eb538d005eea2f26a19d9c2ce4e95d48846627cc..16bee54a6e5260406076a510ef30f85efa62cc57 100644 (file)
Binary files a/resources/Visu_PlaneSegmentation.png and b/resources/Visu_PlaneSegmentation.png differ
index e27ca1ca0a8100b4c5a86f01c927e020c1ec4c26..3b5964487b9bf737b40330aa5b802b7e659c4322 100644 (file)
Binary files a/resources/Visu_SphereSegmentation.png and b/resources/Visu_SphereSegmentation.png differ
diff --git a/resources/Visu_actor_selection.png b/resources/Visu_actor_selection.png
new file mode 100644 (file)
index 0000000..f94b29d
Binary files /dev/null and b/resources/Visu_actor_selection.png differ
index a7e93b8ecac973cac892d230e9478e3111c6e243..b303fe69867ff06bcfd722288fc5650e32ab5b06 100644 (file)
Binary files a/resources/Visu_add.png and b/resources/Visu_add.png differ
index 86a5ffb9b5984144bf19cfee382a2f89ded26abc..89c8c6b609991ab861783b722dfbbc0398bae628 100644 (file)
Binary files a/resources/Visu_anim.png and b/resources/Visu_anim.png differ
diff --git a/resources/Visu_apply.png b/resources/Visu_apply.png
new file mode 100644 (file)
index 0000000..3a225a1
Binary files /dev/null and b/resources/Visu_apply.png differ
diff --git a/resources/Visu_cell_selection.png b/resources/Visu_cell_selection.png
new file mode 100644 (file)
index 0000000..8e2dc4f
Binary files /dev/null and b/resources/Visu_cell_selection.png differ
diff --git a/resources/Visu_close.png b/resources/Visu_close.png
new file mode 100644 (file)
index 0000000..d5f353e
Binary files /dev/null and b/resources/Visu_close.png differ
index 3ae88008f6903dce494f09520e689ee985988975..6ab1f0e212e5eb583e0906df5ac9052fffa30a80 100644 (file)
Binary files a/resources/Visu_cutlines.png and b/resources/Visu_cutlines.png differ
diff --git a/resources/Visu_cutplane.png b/resources/Visu_cutplane.png
deleted file mode 100644 (file)
index 5e92cf6..0000000
Binary files a/resources/Visu_cutplane.png and /dev/null differ
index 5e92cf6511bf81e7ce3a9acbbb2fbb07ab2d7979..818f452d61c7144f425aeab758647b720579546d 100644 (file)
Binary files a/resources/Visu_cutplanes.png and b/resources/Visu_cutplanes.png differ
index def8c330bf0207ff4ee82fb3a5b754f824dfdaa3..8b0a0dd09de131076fd21f28d5b2ca51e9920c1a 100644 (file)
Binary files a/resources/Visu_deformed.png and b/resources/Visu_deformed.png differ
index 4cee800758d10794fab0fc63d54d8ffac424c434..89c8c6b609991ab861783b722dfbbc0398bae628 100644 (file)
Binary files a/resources/Visu_deformed_anim.png and b/resources/Visu_deformed_anim.png differ
index 9cf1518889fb8c2bcaae393bd3d2b9127d1a2976..ddebfd463ef6207116ffa5f6b3830a1fbfb8141d 100644 (file)
Binary files a/resources/Visu_eraseall.png and b/resources/Visu_eraseall.png differ
diff --git a/resources/Visu_gauss_point_selection.png b/resources/Visu_gauss_point_selection.png
new file mode 100644 (file)
index 0000000..8129a9e
Binary files /dev/null and b/resources/Visu_gauss_point_selection.png differ
index 3410cce8ff583dbd739cf8c025cf721b29449ebc..42ed65abcb16afa70216c548ccf85ef30efd0791 100644 (file)
Binary files a/resources/Visu_gauss_points.png and b/resources/Visu_gauss_points.png differ
index 9c9f3d20f9a1c9b43688dfbe06956373be0605fb..90ee395c4849a3882f8b446ad8ee163727f53dcf 100755 (executable)
Binary files a/resources/Visu_graduated_axes.png and b/resources/Visu_graduated_axes.png differ
diff --git a/resources/Visu_help.png b/resources/Visu_help.png
new file mode 100644 (file)
index 0000000..452b45f
Binary files /dev/null and b/resources/Visu_help.png differ
index e7e2737433d0882cb710a287209a103431cf08bf..6cc9f084bdcdf04167b283038a57af8275457852 100755 (executable)
Binary files a/resources/Visu_holo_render.png and b/resources/Visu_holo_render.png differ
index 73ade29655399f3d18b36a68cdee924543fda6ba..b9060d6e32e3d8c1f6d991bec8b7a8f3c4331511 100644 (file)
Binary files a/resources/Visu_import_med.png and b/resources/Visu_import_med.png differ
index 2946029dfacb1ac917108c2097c0d84d312a84b1..3d12cfbf48ce9fc4c9d1322e3b5786078d27eb11 100644 (file)
Binary files a/resources/Visu_isosurfaces.png and b/resources/Visu_isosurfaces.png differ
index d9953b6a7d36d4983f2cd609ef10976ac221215f..5c6357d9fbb6956a040a4bebfff04ab78de240d8 100755 (executable)
Binary files a/resources/Visu_load_texture.png and b/resources/Visu_load_texture.png differ
diff --git a/resources/Visu_ok.png b/resources/Visu_ok.png
new file mode 100644 (file)
index 0000000..8ce1457
Binary files /dev/null and b/resources/Visu_ok.png differ
diff --git a/resources/Visu_planemanager.png b/resources/Visu_planemanager.png
new file mode 100644 (file)
index 0000000..7e8895e
Binary files /dev/null and b/resources/Visu_planemanager.png differ
index e6d2089f5a904f4c02ef8e7bc70cdc39beeb1442..796b1dc337c9b2e584f83d53b8eab61b28c2f344 100644 (file)
Binary files a/resources/Visu_plot2d.png and b/resources/Visu_plot2d.png differ
index ea7b57450a61afb26bce559861d4a993ddca9cf8..041cec6d656e5752ed2f3988d43144df40e89789 100644 (file)
Binary files a/resources/Visu_plot3d.png and b/resources/Visu_plot3d.png differ
diff --git a/resources/Visu_point_selection.png b/resources/Visu_point_selection.png
new file mode 100644 (file)
index 0000000..bcc9203
Binary files /dev/null and b/resources/Visu_point_selection.png differ
index 92d535ba9d8140d96529693c14c9a265428a03cc..6619cabefed5cc66b676c0f85876c40aadfdbe36 100644 (file)
Binary files a/resources/Visu_points.png and b/resources/Visu_points.png differ
index 6f37d3fef535c9693602f58a529c8296056ddb57..f181a0f6b9038256b163f5c8c31c1c4c43122da2 100644 (file)
Binary files a/resources/Visu_recording_pause.png and b/resources/Visu_recording_pause.png differ
index 62b82247bed68f9c44fbba53f9428dc5490d10d5..7724f48bb929842fddd5cf262b7e74db2a560148 100644 (file)
Binary files a/resources/Visu_recording_play.png and b/resources/Visu_recording_play.png differ
index aef1bb2ffea623e18312a14028270b9a24eed0ad..5b71dc511c498b6bfbc5a5d8d86dee85ade8141a 100644 (file)
Binary files a/resources/Visu_recording_start.png and b/resources/Visu_recording_start.png differ
index c6134cced7994800058259ab27fc5a905bfa9c1d..04db9e3a6a96329a480debafbe7edf08516722eb 100644 (file)
Binary files a/resources/Visu_recording_stop.png and b/resources/Visu_recording_stop.png differ
index e85afb6224acc7d2a0649e3c2465a0dde5566e67..4908194ec67675fb3f71ea4d2d3ee6c178fea4c8 100644 (file)
Binary files a/resources/Visu_remove.png and b/resources/Visu_remove.png differ
index 29df0932e62452555bc29b9515846a5b109759bf..49210d1d7cde1e1e988683747eb6365ba5a6306b 100644 (file)
Binary files a/resources/Visu_scalarmapondeformedshape.png and b/resources/Visu_scalarmapondeformedshape.png differ
index f048e920ef8b0c5c39e8a9ad48852ef93759244e..935a2e2ec215c2ef29b91014208a0c7a9d649a3b 100644 (file)
Binary files a/resources/Visu_scalars.png and b/resources/Visu_scalars.png differ
index 5d3443634a69abf41d825b5fdbd331808066cbda..1cbecdb50a95509a98f30ba881f0c30da5a57a4a 100644 (file)
Binary files a/resources/Visu_scaling.png and b/resources/Visu_scaling.png differ
index ec589031085e1db83d61d2c022d3776374790588..a9457354d75e33cca8bb745cec7d6df1e5c29ccc 100644 (file)
Binary files a/resources/Visu_selectall.png and b/resources/Visu_selectall.png differ
diff --git a/resources/Visu_selection_panel.png b/resources/Visu_selection_panel.png
new file mode 100644 (file)
index 0000000..4c95efe
Binary files /dev/null and b/resources/Visu_selection_panel.png differ
index 6d6cdfbd31af12fbaec073be567e40c4c82123c1..18c4894fe258a614558da041515fa0f62c481886 100644 (file)
Binary files a/resources/Visu_selectionactor.png and b/resources/Visu_selectionactor.png differ
index f83268fe0118f4daee01613ef2d3f5cbe0a55158..ad2b47f296354195d9d272aebd4b973e23d665ba 100644 (file)
Binary files a/resources/Visu_selectioncell.png and b/resources/Visu_selectioncell.png differ
index bd6d9df9f2026bf73bf05177d61d103849077b76..b61699e80a03fdd60c053dba7fc34e48e20e4d45 100644 (file)
Binary files a/resources/Visu_selectionedge.png and b/resources/Visu_selectionedge.png differ
index 0ac7cd4324be741ecdbca6154fbd0199bc82d7cc..0f58f9c0ba08a9680abf8a3fd3134b75ce39ce63 100644 (file)
Binary files a/resources/Visu_selectionpoint.png and b/resources/Visu_selectionpoint.png differ
index 3d7b24eadb7f9e1a6af2fb1b0ea55da3f3f5a695..e539b66503564e8df2f0f3ad57906403ec2b0345 100644 (file)
Binary files a/resources/Visu_selectonly.png and b/resources/Visu_selectonly.png differ
index ff0edd0473340573a35a66177e89a2f2bcdf5b64..5b71dc511c498b6bfbc5a5d8d86dee85ade8141a 100755 (executable)
Binary files a/resources/Visu_slider_avi.png and b/resources/Visu_slider_avi.png differ
index ba47a29f4beb5c1f350fd15491d830fae35e3cce..d7192ac08d46cef3f7221729ce791152292a95fe 100644 (file)
Binary files a/resources/Visu_slider_first.png and b/resources/Visu_slider_first.png differ
index a5a63b7e3d4e6b5317e8a1b9fd175869c27bccab..ef441ee5e18bfe9f4ee0f3a7f9a4a89809b7db01 100644 (file)
Binary files a/resources/Visu_slider_last.png and b/resources/Visu_slider_last.png differ
index 1cca9a88973fdc060b6b5ede7bde69cb0e285208..99212dfcc3654b8cb169a6b4708f5b0967795da1 100644 (file)
Binary files a/resources/Visu_slider_next.png and b/resources/Visu_slider_next.png differ
diff --git a/resources/Visu_slider_panel.png b/resources/Visu_slider_panel.png
new file mode 100644 (file)
index 0000000..748bb5f
Binary files /dev/null and b/resources/Visu_slider_panel.png differ
index fea48a1e4be8174bf0e131c5c000e2b3e1c289d7..8ba6b60f5f349e3aa3d9dc085f86339fe2bdbb02 100644 (file)
Binary files a/resources/Visu_slider_pause.png and b/resources/Visu_slider_pause.png differ
index 7bd655fe8e21842cc95c479c85b8af6dedc02ef7..ab484bfa38a6f257024a4a2c949d49500949472c 100644 (file)
Binary files a/resources/Visu_slider_play.png and b/resources/Visu_slider_play.png differ
index 95fd1589180cd16140d372bef752dff0df3a8451..7b0e6f7ad47f203d01b2a3d874c27136cef79bde 100644 (file)
Binary files a/resources/Visu_slider_previous.png and b/resources/Visu_slider_previous.png differ
index 344ca1990b8e8799d65db83d01b620dd2e786075..bad67d4292fd6b0e5415ae2194edfdf844d9be1e 100644 (file)
Binary files a/resources/Visu_streamlines.png and b/resources/Visu_streamlines.png differ
index 98de1fdb3a8ae6a571805388672fea19c6c1642f..dd3e579c6762e3f36e1e94473f63e1108c9cd58d 100644 (file)
Binary files a/resources/Visu_surface.png and b/resources/Visu_surface.png differ
diff --git a/resources/Visu_sweep_panel.png b/resources/Visu_sweep_panel.png
new file mode 100644 (file)
index 0000000..fbcddc0
Binary files /dev/null and b/resources/Visu_sweep_panel.png differ
index 40aa4d3392f64b58f09d9368873aa0c2cb8e0ef4..eaac2db65f941bcd9d416dd8228008635ed1699b 100644 (file)
Binary files a/resources/Visu_tree_container.png and b/resources/Visu_tree_container.png differ
index e17c5f4fef89ea63d186770a1510244b51302a9a..9e72ac9697372ad535f7aab230a8b1aa5ae71c1f 100644 (file)
Binary files a/resources/Visu_tree_curve.png and b/resources/Visu_tree_curve.png differ
index f6ffc7cf7561f84221d9f2923da9fa9145f52685..8444c3ec497f30915acc6932e702f7443d27bc14 100755 (executable)
Binary files a/resources/Visu_tree_cutlines.png and b/resources/Visu_tree_cutlines.png differ
index fc35bc8afdc4675471aae23b4ae73086d80471e9..d0295a6daf7a818d22083154ddb55bb39798319a 100644 (file)
Binary files a/resources/Visu_tree_cutlines_gr.png and b/resources/Visu_tree_cutlines_gr.png differ
index 1d93c8a86aceb7eba9a736922f8764a0a2452006..cb88f3dc27e38a851e28a4d8ec23834dc306f8cb 100755 (executable)
Binary files a/resources/Visu_tree_cutplanes.png and b/resources/Visu_tree_cutplanes.png differ
index bbc472726cafdb5fe2d18a6e1df8f832a6591974..6f0af57f662c2e7ad43eb574c45a5299560b37ac 100644 (file)
Binary files a/resources/Visu_tree_cutplanes_gr.png and b/resources/Visu_tree_cutplanes_gr.png differ
index 68d27823690e3567542ff8d4bbbee43c2d4feb77..f12b8f282aa48dcf04f0f4a8427e0edb35fece77 100755 (executable)
Binary files a/resources/Visu_tree_deformed.png and b/resources/Visu_tree_deformed.png differ
index 1d619f4f3e8393eaaf72e3a578115cf0539dad94..02c8adaece2f95ce449819c433555a231455000e 100644 (file)
Binary files a/resources/Visu_tree_deformed_gr.png and b/resources/Visu_tree_deformed_gr.png differ
index 0ff21871fa91cb302147aee1266da5ffbea418b3..83fdf228398f12bb29a285b4ef5d9f1e69b6f6e1 100644 (file)
Binary files a/resources/Visu_tree_mesh.png and b/resources/Visu_tree_mesh.png differ
index 7bcc515a532029dafe7426ebdd2d6940e7f467b3..b3129f770d920b40352c3bc172f29f9f01323d98 100755 (executable)
Binary files a/resources/Visu_tree_multipr_full.png and b/resources/Visu_tree_multipr_full.png differ
index 06893fc4796ef1e73a32332ca2929a4153ec4f3d..a78bda61a53bdf9d2e9e59b6ca6178a9973227c9 100755 (executable)
Binary files a/resources/Visu_tree_multipr_hide.png and b/resources/Visu_tree_multipr_hide.png differ
index cdbb4d85d1845600b7ca48dbc3e895c53148ace1..48674b0a74d867b8c9e462eb72a3856c72a978be 100755 (executable)
Binary files a/resources/Visu_tree_multipr_low.png and b/resources/Visu_tree_multipr_low.png differ
index 2ddfcaf2f0a910cee68dd8b11c36e727c1b2846e..84a5660080e2f528de8689e05d9a65566dcbc048 100755 (executable)
Binary files a/resources/Visu_tree_multipr_medium.png and b/resources/Visu_tree_multipr_medium.png differ
index ac6442501f4e0af6ddb48651ada8760e713f936b..fb5f6dbf4bdf5545c14f70bf60ce9f7164f7b209 100755 (executable)
Binary files a/resources/Visu_tree_plot3d.png and b/resources/Visu_tree_plot3d.png differ
index e73180bc9525c02a7edc5e0a691f6b7a5cc6aa3e..6cd34ff55223e958ade63d90ff29405f68601ef2 100644 (file)
Binary files a/resources/Visu_tree_plot3d_gr.png and b/resources/Visu_tree_plot3d_gr.png differ
index a9eccf9ebd0ea4dd785a241abc1bea7c90dd4a12..ab8f67cff54ed52f22609609fb778fc01dc63fec 100644 (file)
Binary files a/resources/Visu_tree_result.png and b/resources/Visu_tree_result.png differ
index 77c346c617fe52c70382034ff3698e6ad98d9f67..fc04b5e83d04b8ce860aeb1c40aea70385d165da 100755 (executable)
Binary files a/resources/Visu_tree_scalarmapondeformedshape.png and b/resources/Visu_tree_scalarmapondeformedshape.png differ
index d2f73eb07c01ea8f6df7e8989038e3f96363bfc6..bebffeca365fada6fc4e7e25f41dd6bfd787062c 100644 (file)
Binary files a/resources/Visu_tree_scalarmapondeformedshape_gr.png and b/resources/Visu_tree_scalarmapondeformedshape_gr.png differ
index d0c93c58b69d1adbc51ca9c7f60da6173f20138c..f675c3d62af345b800c5c69ca02b0da972e7b826 100755 (executable)
Binary files a/resources/Visu_tree_scalars.png and b/resources/Visu_tree_scalars.png differ
index d9a018a0b9d53f463f87a5264691aba0aa913198..f5fed319125c526c95045a2caf75512e6c064941 100644 (file)
Binary files a/resources/Visu_tree_scalars_gr.png and b/resources/Visu_tree_scalars_gr.png differ
index c0213de37bee04ce114d50cee9b3fc1b448979cc..3cec4e400839aa55c667ab561d770300521fb4e4 100755 (executable)
Binary files a/resources/Visu_tree_streamlines.png and b/resources/Visu_tree_streamlines.png differ
index 8f1a62a80704054c78eee85675ac10c33f6b6f19..89ead70dc17ae7cea0675194f0342485972f5bf7 100644 (file)
Binary files a/resources/Visu_tree_streamlines_gr.png and b/resources/Visu_tree_streamlines_gr.png differ
index 90799f6969b03d76f030c4851aad25667748cd08..85ddb3d3868e324848f73db529794d13d033794c 100644 (file)
Binary files a/resources/Visu_tree_table.png and b/resources/Visu_tree_table.png differ
index 5ff8c7bf319025efc668a5091d4824f4b7a174a4..ebb1bc66e371317067c3b5b71473e4c9c232395d 100755 (executable)
Binary files a/resources/Visu_tree_vectors.png and b/resources/Visu_tree_vectors.png differ
index 3a7e1142ea4faa8cab61f59bd3c008ec5ed35aeb..b7b07593b9ab7f79bbfb78d548078b7b43bc0f27 100644 (file)
Binary files a/resources/Visu_tree_vectors_gr.png and b/resources/Visu_tree_vectors_gr.png differ
index 56ce446cd3f95b5ead83cef433a642d5146e8a51..57cd1755bd8e3894388b863ce24ffb1fa9f5f1f6 100644 (file)
Binary files a/resources/Visu_tree_visu.png and b/resources/Visu_tree_visu.png differ
index caac159553fa5451bb49eda0b10d51fddb3bdaff..bf98a2b77881a36f26548e0b47edbee65884ebc7 100644 (file)
Binary files a/resources/Visu_vectors.png and b/resources/Visu_vectors.png differ
index 8406b9b9d566c702996be0c35d17b98d7b8849ce..d43664fb2221cd662885c53d225ac144b892823a 100644 (file)
Binary files a/resources/Visu_wireframe.png and b/resources/Visu_wireframe.png differ
index 9bfefbf337281046dc31321390bd25c8749bc81a..91112a65916bbcbaa93231f4d188455c13cc46e2 100644 (file)
@@ -1,33 +1,35 @@
-#  VISU OBJECT : interactive object for VISU entities implementation
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
 #
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
+#  VISU OBJECT : interactive object for VISU entities implementation
 #  File   : Makefile.am
 #  Module : VISU
-
+#
 include $(top_srcdir)/adm_local/unix/make_common_starter.am
 
 lib_LTLIBRARIES = libVisuConvertor.la
 
 salomeinclude_HEADERS= \
        VISU_TypeList.hxx \
+       VISU_VTKTypeList.hxx \
        VISU_IDMapper.hxx \
        VISU_ConvertorDef.hxx \
        VISU_Structures.hxx \
@@ -35,10 +37,12 @@ salomeinclude_HEADERS= \
        VISU_ConvertorDef_impl.hxx \
        VISU_Structures_impl.hxx \
        VISU_MeshValue.hxx \
+       VISU_ElnoMeshValue.hxx \
        VISU_PointCoords.hxx \
        VISU_Convertor_impl.hxx \
        VISU_ConvertorUtils.hxx \
        VISU_MergeFilter.hxx \
+       VISU_MergeFilterUtilities.hxx \
        VISU_AppendFilter.hxx \
        VISU_AppendPolyData.hxx \
        VISU_AppendFilterUtilities.hxx \
@@ -46,7 +50,10 @@ salomeinclude_HEADERS= \
        VISU_UsedPointsFilter.hxx \
        VISU_CommonCellsFilter.hxx \
        VISUConvertor.hxx \
-       VISU_GaussMergeFilter.hxx
+       VISU_MedConvertor.hxx \
+       VISU_GaussMergeFilter.hxx \
+       VISU_TableReader.hxx \
+       VISU_Vtk2MedConvertor.hxx
 
 dist_libVisuConvertor_la_SOURCES= \
        VISU_IDMapper.cxx \
@@ -66,7 +73,9 @@ dist_libVisuConvertor_la_SOURCES= \
        VISU_MergeFilterUtilities.cxx \
        VISU_UsedPointsFilter.cxx \
        VISU_CommonCellsFilter.cxx \
-       VISU_GaussMergeFilter.cxx
+       VISU_GaussMergeFilter.cxx \
+       VISU_TableReader.cxx \
+       VISU_Vtk2MedConvertor.cxx
 
 libVisuConvertor_la_CPPFLAGS= \
        -ftemplate-depth-32 \
@@ -85,13 +94,13 @@ libVisuConvertor_la_CPPFLAGS= \
 
 libVisuConvertor_la_LDFLAGS= \
        $(MED2_LIBS) \
-       $(VTK_LIBS) \
        $(QT_LIBS) \
        $(CAS_KERNEL) \
        $(CAS_MATH) \
        $(BOOST_LIBS) -lboost_thread@BOOST_LIBSUFFIX@ \
        $(MED_LDFLAGS) -lMEDWrapper \
-       $(GUI_LDFLAGS) -lVTKViewer
+       $(GUI_LDFLAGS) -lVTKViewer \
+       $(VTK_LIBS)
 
 # Executables targets
 bin_PROGRAMS= VISUConvertor
index d92e9d8c2758bb49f232c619817ec42a35af08cc..c6418177f68c268a37c0f91c428bb76930ffecc9 100644 (file)
@@ -1,43 +1,49 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File:    VISUConvertor.cxx
 //  Author:  Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_Convertor.hxx"
 #include "VISU_ConvertorUtils.hxx"
 
+#include "VISU_Convertor_impl.hxx"
+#include "VISU_TableReader.hxx"
+
 #include <fstream>     
 #include <strstream>
-#include <vtkCellType.h>
-#include <qdir.h>
-#include <qfileinfo.h>
-#include <qstringlist.h>
 #include <memory>      
-#include "VISU_Convertor_impl.hxx"
 
+#include <vtkCellType.h>
 #include <vtkUnstructuredGrid.h>
 
+#include <QDir>
+#include <QFileInfo>
+#include <QStringList>
+
+
+#include "utilities.h"
+
 using namespace std;
 
 #ifdef DEBUG
@@ -51,7 +57,7 @@ static int MYDEBUG = 0;
 
 typedef vtkUnstructuredGrid TOutput;
 
-void parseFile(const char* theFileName) 
+void ParseMEDFile(const char* theFileName) 
 {
 #ifndef _DEXCEPT_
   try{
@@ -98,7 +104,7 @@ void parseFile(const char* theFileName)
              vtkDataSet* aDataSet = aGaussMesh->GetOutput();
              aDataSet->Update();
              int aNbCells = aDataSet->GetNumberOfCells();
-             cout<<"aNbCells = "<<aNbCells<<endl;
+             MESSAGE("aNbCells = "<<aNbCells);
              for(int anCellId = 0; anCellId < aNbCells; anCellId++){
                VISU::TGaussPointID anObjID = aGaussMesh->GetObjID(anCellId);
                cout<<anObjID.first<<"; "<<anObjID.second<<"; "<<aGaussMesh->GetNodeVTKID(anObjID.first)<<endl;
@@ -148,7 +154,7 @@ void parseFile(const char* theFileName)
        for(anCellId = 0; anCellId < aNbCells; anCellId++){
          anObjID = anIDMapper->GetElemObjID(anCellId);
          aVTKID  = anIDMapper->GetElemVTKID(anObjID);
-         cout<<anObjID<<"; "<<aVTKID<<endl;
+         MESSAGE(anObjID<<"; "<<aVTKID);
        }
 #endif
       }
@@ -178,20 +184,33 @@ void parseFile(const char* theFileName)
 #endif
 }
 
-int main(int argc, char** argv){ 
-  if(argc > 1){
-    QFileInfo fi(argv[1]);
-    for(int i = 0; i < 1; i++){
-      if(fi.exists()){
-       if(fi.isDir()){
-         QDir aDir(fi.absFilePath());
-         QStringList aStringList = aDir.entryList("*.med",QDir::Files);
+void ParseXLSFile(const char* theFileName) 
+{
+  VISU::TTableContainer aContainer;
+  VISU::ImportTables( theFileName, aContainer );
+}
+
+int
+main( int argc, char** argv )
+{ 
+  if ( argc > 1 ) {
+    QFileInfo aFileInfo( argv[1] );
+    for ( int i = 0; i < 1; i++ ) {
+      if ( aFileInfo.exists() ) {
+       if ( aFileInfo.isDir() ) {
+         QDir aDir( aFileInfo.absoluteFilePath() );
+         QStringList wildcards; wildcards << "*.med";
+         QStringList aStringList = aDir.entryList( wildcards, QDir::Files );
          int jEnd = aStringList.count();
-         for(int j = 0; j < jEnd; j++){
-           parseFile(aDir.filePath(aStringList[j]).latin1());
+         for ( int j = 0; j < jEnd; j++ ) {
+           ParseMEDFile( aDir.filePath( aStringList[j] ).toLatin1().data() );
          }
-       }else{
-         parseFile(argv[1]);
+       } else {
+         QString anExtension = aFileInfo.suffix();
+         if ( anExtension == "med" )
+           ParseMEDFile( argv[1] );
+         else if ( anExtension == "xls" || anExtension == "txt" )
+           ParseXLSFile( argv[1] );
        }
       }
     }
index 8f792a5039362998fb6213536314305e96ea66a5..13849958809a4eb38167eefd826865463d790814 100755 (executable)
@@ -1,28 +1,28 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-//  See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org 
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VISUConvertor.hxx
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #ifndef _VISUConvertor_HXX_
 #define _VISUConvertor_HXX_
 
index 604e38c161ddf702fedc321647b4642103afdc0e..643ff117fcdce1d12e1dbed48e15a3c942716c20 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME OBJECT : kernel of SALOME component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME OBJECT : kernel of SALOME component
 //  File   : VISU_GeometryFilter.cxx
 //  Author : 
 //  Module : SALOME
 //  $Header$
-
+//
 #include "VISU_AppendFilter.hxx"
 
 #include <vtkObjectFactory.h>
@@ -56,14 +55,14 @@ VISU_AppendFilter
              vtkInformationVector *theOutputVector)
 {
   bool anIsExecuted = false;
-  if(GetNumberOfInputConnections(0) > 1 || IsMergingInputs() || IsMappingInputs())
+  if( IsMergingInputs() || IsMappingInputs() )
     anIsExecuted = VISU::UnstructuredGridRequestData(theInputVector,
-                                                    this->GetNumberOfInputConnections(0),
+                                                    GetNumberOfInputConnections( 0 ),
                                                     theOutputVector,
                                                     GetSharedPointSet(),
                                                     IsMergingInputs(),
                                                     IsMappingInputs());
-  if(!anIsExecuted)
+  if( !anIsExecuted )
     anIsExecuted = Superclass::RequestData(theRequest,
                                           theInputVector,
                                           theOutputVector);
index 4cae16db70ffe236c8fa594ff4a4bc28547b2dde..84009b9d391a96584668670fa8e63ef9e7622f69 100644 (file)
@@ -1,20 +1,23 @@
-// Copyright (C) 2005  CEA/DEN, EDF R&D, OPEN CASCADE, PRINCIPIA R&D
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// This library is distributed in the hope that it will be useful
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 #ifndef VISU_APPENDFILTER_H
 #define VISU_APPENDFILTER_H
@@ -53,7 +56,6 @@ protected:
   virtual
   int
   RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
-
 };
 
 #endif
index 3294684d233aeda763976d472402944b807608ff..35b8763d82b04c1da00e7da4b8474884fc7c9056 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME OBJECT : kernel of SALOME component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME OBJECT : kernel of SALOME component
 //  File   : VISU_GeometryFilter.cxx
 //  Author : 
 //  Module : SALOME
 //  $Header$
-
+//
 #include "VISU_AppendFilterUtilities.hxx"
 #include "VISU_ConvertorUtils.hxx"
 
@@ -191,14 +190,33 @@ namespace
              bool theIsMergingInputs,
              bool theIsMappingInputs)
   {
-    if(theSharedPointSet){
+    if ( theNumberOfInputConnections == 1 ) {
+      // get the input and ouptut
+      vtkDataSet *anInput = VISU::GetInput( theInputVector, 0 );
+      vtkDataSet* anOutput = VISU::GetOutput( theOutputVector );
+
+      if ( anInput->GetDataObjectType() != anOutput->GetDataObjectType() )
+       return false;
+
+      // This has to be here because it initialized all field datas.
+      anOutput->CopyStructure( anInput );
+  
+      // Pass all. (data object's field data is passed by the
+      // superclass after this method)
+      anOutput->GetPointData()->PassData( anInput->GetPointData() );
+      anOutput->GetCellData()->PassData( anInput->GetCellData() );
+      
+      return true;
+    }
+
+    if ( theSharedPointSet ) {
       vtkPoints* aPoints = theSharedPointSet->GetPoints();
       if(aPoints->GetNumberOfPoints() < 1)
        return true;
   
       TDataSet* anOutput = TDataSet::SafeDownCast(VISU::GetOutput(theOutputVector));
       vtkIdType anNbInputs = theNumberOfInputConnections;
-      if(theIsMergingInputs){
+      if ( theIsMergingInputs ) {
        TCellIdMerger aFunctor(anNbInputs);
        ForEachInput<TCellIdMerger>(theInputVector, anNbInputs, aFunctor);
 
index ea5276ac04714cfaac338e802fc50767dfdaf3e5..fa1c1c5354881931b94ffeb1999e0d27a0617552 100644 (file)
@@ -1,20 +1,23 @@
-// Copyright (C) 2005  CEA/DEN, EDF R&D, OPEN CASCADE, PRINCIPIA R&D
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// This library is distributed in the hope that it will be useful
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 #ifndef VISU_APPENDFILTERUTILITIES_H
 #define VISU_APPENDFILTERUTILITIES_H
index 6a549521100cce454c2364f7513d53b869acfff2..faee1310de4a2a5c534e1f0ca91e50c6f2abcd3c 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME OBJECT : kernel of SALOME component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME OBJECT : kernel of SALOME component
 //  File   : VTKViewer_GeometryFilter.cxx
 //  Author : 
 //  Module : SALOME
 //  $Header$
-
+//
 #include "VISU_AppendPolyData.hxx"
 
 #include <vtkObjectFactory.h>
index 9f16596c92cddbd0cb14bb9f6e285087231b59d9..84817af4be6803983983f56cce2def661d095ae4 100644 (file)
@@ -1,20 +1,23 @@
-// Copyright (C) 2005  CEA/DEN, EDF R&D, OPEN CASCADE, PRINCIPIA R&D
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// This library is distributed in the hope that it will be useful
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 #ifndef VISU_APPENDPOLYDATA_H
 #define VISU_APPENDPOLYDATA_H
index e0dd2220e759aa3cddf0f754f5043de3182952ef..46e8ac69968b26914e897b86ef263352caf5cdf6 100644 (file)
@@ -1,8 +1,28 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
 // File      : VISU_CommonCellsFilter.cxx
 // Created   : Wed Apr  4 08:45:07 2007
 // Author    : Eugeny NIKOLAEV (enk)
-// Copyright : Open CASCADE
-
+//
 #include "VISU_CommonCellsFilter.hxx"
 #include "VISU_ConvertorDef.hxx"
 
index 1113ea4a8966494c38d8660af2b53eb1e599e782..043b1dea1d5ff128d1612fb4356ebb7c9568b7fb 100644 (file)
@@ -1,9 +1,28 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
 // File      : VISU_CommonCellsFilter.hxx
 // Created   : Tue Apr  3 16:16:53 2007
 // Author    : Eugeny NIKOLAEV (enk)
-// Copyright : Open CASCADE
-
-
+//
 #ifndef VISU_CommonCellsFilter_HeaderFile
 #define VISU_CommonCellsFilter_HeaderFile
 
index 26892e8c057c8afafa4547d19943ab94adc1c62e..cece23c0829908ec512e898a2503d2eeee1683b0 100644 (file)
@@ -1,33 +1,33 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File:    VISU_Convertor.cxx
 //  Author:  Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_Convertor.hxx"
 #include "VISU_ConvertorUtils.hxx"
 
-#include <qstring.h>
+#include <QString>
 
 #include <utility>
 
@@ -76,8 +76,8 @@ VISU_Convertor
     aName.sprintf("%g, -", aTime.first);
   else
     aName.sprintf("%g, %s", aTime.first, aTime.second.c_str());
-  aName = aName.simplifyWhiteSpace();
-  return aName.latin1();
+  aName = aName.simplified();
+  return (const char*)aName.toLatin1();
 }
 
 
@@ -88,35 +88,21 @@ VISU_Convertor
               unsigned int theTimeId) 
 {
   static QString aName;
-  aName = QString(theName.c_str()).simplifyWhiteSpace();
-  int iEnd = strlen(aName);
+  aName = QString(theName.c_str()).simplified();
+  int iEnd = strlen((const char*)aName.toLatin1());
   static int VtkHighLevelLength = 12; //25
   if(iEnd > VtkHighLevelLength) iEnd = VtkHighLevelLength;
   char* aNewName = new char[iEnd+1];
   aNewName[iEnd] = '\0';
-  strncpy(aNewName, aName, iEnd);
+  strncpy(aNewName, (const char*)aName.toLatin1(), iEnd);
   std::replace(aNewName, aNewName + iEnd, ' ', '_');
   if(true || theTimeId == 0)
     aName = aNewName;
   else
     aName.sprintf("%s_%d",aNewName,theTimeId);
   delete[] aNewName;
-  return aName.latin1();
+  return (const char*)aName.toLatin1();
 }
 
-//---------------------------------------------------------------
-
-/*vtkIdType
-VISU::TGaussSubMesh
-::GetElemObjID(vtkIdType theID) const
-{
-  return mySubProfile->GetElemObjID( theID );
-}
 
-
-vtkIdType
-VISU::TGaussSubMesh
-::GetElemVTKID(vtkIdType theID) const
-{
-  return mySubProfile->GetElemVTKID( theID );
-}*/
+//---------------------------------------------------------------
index 0ee92fe3bbac52ae76aa17e2d0188ac36d28e095..33b31f71e82d7c3a12840dc9b8ca485e3ba1b00c 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU CONVERTOR :
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU CONVERTOR :
 //  File   : VISU_Convertor.hxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_Convertor_HeaderFile
 #define VISU_Convertor_HeaderFile
 
@@ -175,7 +175,7 @@ public:
   GetFieldOnMeshSize(const std::string& theMeshName, 
                     const VISU::TEntity& theEntity,
                     const std::string& theFieldName) = 0;
-
+  
   //! Find MED FIELD container
   virtual
   const VISU::PField 
index 1be0aafc4ac148578b940311d69ba689cd61ed0c..a500b34d2e75174bfa9c5cb88819b13ae7f1506e 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU CONVERTOR :
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU CONVERTOR :
 //  File   : 
 //  Author : 
 //  Module : 
-
+//
 #ifndef VISU_ConvertorDef_HeaderFile
 #define VISU_ConvertorDef_HeaderFile
 
index eb7fbcd0d484b68ed14644e5137210cebb4cd9de..1e73c6421408af6a73d2a6aa7c8d74a3b93e35bd 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU CONVERTOR :
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU CONVERTOR :
 //  File   : 
 //  Author : 
 //  Module : 
-
+//
 #ifndef VISU_ConvertorDef_impl_HeaderFile
 #define VISU_ConvertorDef_impl_HeaderFile
 
@@ -54,10 +54,6 @@ namespace VISU
   typedef vtkSmartPointer<VISU_MergeFilter> PMergeFilter;
   typedef vtkSmartPointer<VISU_CommonCellsFilter> PCommonCellsFilter;
   
-  struct TCommonCellsFilterHolder;
-  typedef MED::SharedPtr<TCommonCellsFilterHolder> PCommonCellsFilterHolder; 
-  
   //---------------------------------------------------------------
   typedef vtkSmartPointer<vtkPolyData> PPolyData;
   typedef vtkSmartPointer<VISU_AppendPolyData> PAppendPolyData;
index 85f49eecc761a73cf75f0461d1c8644263ee23fd..c3740649609dac2ad331e8a390b7f83898711bd6 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_Convertor_impl.cxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_ConvertorUtils.hxx"
 
 #include <vtkCellType.h>
@@ -42,6 +42,7 @@
 #include <vtkPointData.h>
 #include <vtkCellData.h>
 #include <vtkDataSet.h>
+#include <vtkIdList.h>
 
 #include <vtkIntArray.h>
 #include <algorithm>
@@ -233,6 +234,23 @@ namespace VISU
     return aDataSetAttributes->GetArray("VISU_FIELD") != NULL;
   }
 
+  //---------------------------------------------------------------
+  bool 
+  IsElnoData(vtkDataSet* theDataSet)
+  {
+    theDataSet->Update();
+
+    if ( vtkDataSetAttributes *aDataSetAttributes = theDataSet->GetCellData() )
+      if ( aDataSetAttributes->GetArray( "ELNO_FIELD" )  != NULL )
+       return true;
+
+    if ( vtkDataSetAttributes *aDataSetAttributes = theDataSet->GetPointData() )
+      if ( aDataSetAttributes->GetArray( "ELNO_POINT_COORDS" )  != NULL )
+       return true;
+
+    return false;
+  }
+
 
   //---------------------------------------------------------------
   vtkIdType
@@ -353,7 +371,8 @@ namespace VISU
   GetNodeCoord(vtkDataSet *theDataSet, vtkIdType theObjID)
   {
     vtkIdType aVTKID = GetNodeVTKID(theDataSet, theObjID);
-    return theDataSet->GetPoint(aVTKID);
+    if ( aVTKID >= 0 ) return theDataSet->GetPoint(aVTKID);
+    return 0;
   }
 
 
@@ -414,6 +433,33 @@ namespace VISU
     return NULL;
   }
 
+  //---------------------------------------------------------------
+  TElnoPoints
+  GetElnoPoints(vtkDataSet *theDataSet, vtkIdType theNodeObjID)
+  {
+    TElnoPoints aResult;
+    if(theDataSet && IsElnoData(theDataSet)) {
+      vtkDataSetAttributes *aDataSetAttributes = theDataSet->GetPointData();
+      vtkDataArray *aDataArray = aDataSetAttributes->GetArray("VISU_POINTS_MAPPER");
+      if(aDataArray){
+        if(vtkIntArray *anIntArray = dynamic_cast<vtkIntArray*>(aDataArray)){
+          int aNbTuples = anIntArray->GetNumberOfTuples();
+          int* aPointer = anIntArray->GetPointer(0);
+          for(int aTupleId = 0; aTupleId < aNbTuples; aTupleId++){
+            if( *aPointer == theNodeObjID ) {
+              vtkIdList *aCellIds = vtkIdList::New();
+              theDataSet->GetPointCells(aTupleId,aCellIds);
+              if(aCellIds->GetNumberOfIds() == 1){
+                aResult.push_back(TElnoPointID(aTupleId,aCellIds->GetId(0)));
+              }
+            }
+            aPointer += 2;
+          }
+        }
+      }
+    }
+    return aResult;
+  }
 
   //---------------------------------------------------------------
   TTimerLog
index 17c12fde39f9c1dfdb3cb15dd70ded4ef90a7a20..b3a9ddf42dc25463c02ab564718d4c327131fbfc 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_ConvertorUtils.hxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_ConvertorUtils_HeaderFile
 #define VISU_ConvertorUtils_HeaderFile
 
@@ -90,6 +90,11 @@ namespace VISU
   bool 
   IsDataOnCells(vtkDataSet* theDataSet);
 
+  //---------------------------------------------------------------
+  VISU_CONVERTOR_EXPORT
+  bool 
+  IsElnoData(vtkDataSet* theDataSet);
+
 
   //---------------------------------------------------------------
   VISU_CONVERTOR_EXPORT
@@ -157,6 +162,17 @@ namespace VISU
   vtkDataSet*
   GetOutput(vtkInformationVector *theOutputVector);
 
+  //! Utility for ELNO Data Selection
+  //---------------------------------------------------------------
+  typedef vtkIdType TVTKPointID;
+  typedef vtkIdType TVTKCellID;
+  typedef std::pair<TVTKPointID,TVTKCellID> TElnoPointID;
+  typedef std::vector<TElnoPointID> TElnoPoints;
+
+  VISU_CONVERTOR_EXPORT 
+  TElnoPoints
+  GetElnoPoints(vtkDataSet *theDataSet, vtkIdType theNodeObjID);
+
   //---------------------------------------------------------------
   //! The utility class that allows to perform perfomance mesurement
   class VISU_CONVERTOR_EXPORT TTimerLog
index 750e3a7af23f355c5ec953a510a87f53c0e0f53f..0658fc5b510b67e1f38bb02af67c4d4fec94808d 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_Convertor_impl.cxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_Convertor_impl.hxx"
 #include "VISU_Structures_impl.hxx"
 #include "VISU_PointCoords.hxx"
@@ -49,8 +49,8 @@
 #include <vtkCellLinks.h>
 #include <vtkUnsignedCharArray.h>
 
-#include <qstring.h>
-#include <qfileinfo.h>
+#include <QString>
+#include <QFileInfo>
 
 #include <memory>
 
@@ -77,26 +77,17 @@ namespace
   {
     static QString aString;
     aString.sprintf(fmt.c_str(),val);
-    return aString.latin1();
+    return (const char*)aString.toLatin1();
   }
 
-  //--------------------------------------------------------------
-
 
-  
   //---------------------------------------------------------------
+  inline
   void
-  PrintCells(int& theStartId,
-            vtkCellArray* theConnectivity, 
-            const VISU::TConnect& theVector)
+  PrintCells( vtkCellArray* theConnectivity, 
+             const VISU::TConnect& theVector)
   {
-    vtkIdList *anIdList = vtkIdList::New();
-    int kEnd = theVector.size();
-    anIdList->SetNumberOfIds(kEnd);
-    for(int k = 0; k < kEnd; k++)
-      anIdList->SetId(k,theVector[k]);
-    theConnectivity->InsertNextCell(anIdList);
-    anIdList->Delete();
+    theConnectivity->InsertNextCell( theVector.size(), &theVector[ 0 ] );
   }
 
 
@@ -124,7 +115,7 @@ namespace
     aCellTypesArray->SetNumberOfTuples(aNbCells);
 
     for(vtkIdType anID = 0; anID < aNbCells; anID++){
-      PrintCells(anID,aConnectivity,anArray[anID]);
+      PrintCells( aConnectivity, anArray[ anID ] );
       aCellTypesArray->SetValue(anID,(unsigned char)theGeom);
     }
 
@@ -219,7 +210,7 @@ namespace
       VISU::TSubMeshID::const_iterator aSubMeshIDIter = aSubMeshID.begin();
       for(; aSubMeshIDIter != aSubMeshID.end(); aSubMeshIDIter++, aCellId++){
        vtkIdType anID = *aSubMeshIDIter;
-       PrintCells(aCellId, aConnectivity, anArray[anID]);
+       PrintCells( aConnectivity, anArray[ anID ] );
        aCellTypesArray->SetValue(aCellId, (unsigned char)aVGeom);
        vtkIdType anObjID = aSubMesh.GetElemObjID(anID);
        anElemObj2VTKID[anObjID] = aCellId;
@@ -284,7 +275,7 @@ namespace
       VISU::TCell2Connect::const_iterator anIter = aCell2Connect.begin();
       for(vtkIdType anId = 0, aConnId = 0; anIter != aCell2Connect.end(); anIter++){
        const VISU::TConnect& anArray = aCell2Connect[anId];
-       PrintCells(aConnId,aConnectivity,anArray);
+       PrintCells( aConnectivity, anArray );
        aCellTypesArray->SetValue(anId,(unsigned char)aVGeom);
        aConnId += aNbNodes;
        anId++;
@@ -294,7 +285,7 @@ namespace
       for(vtkIdType anId = 0, aConnId = 0; anIter != aSubMeshID.end(); anIter++){
        vtkIdType aSubId = *anIter;
        const VISU::TConnect& anArray = aCell2Connect[aSubId];
-       PrintCells(aConnId,aConnectivity,anArray);
+       PrintCells( aConnectivity, anArray );
        aCellTypesArray->SetValue(anId,(unsigned char)aVGeom);
        aConnId += aNbNodes;
        anId++;
@@ -362,11 +353,23 @@ namespace
                   const VISU::PMeshOnEntityImpl& theMeshOnEntity,
                   const VISU::PProfileImpl& theProfile)
   {
+    //rnv fix for bug IPAL18514        4x (CRASH after trying to build of presentation):
+    // throw exection in case if pointer on profile =0
+    if(!theProfile.get())
+      EXCEPTION(std::runtime_error,"GetMeshOnProfile: theProfile.get() == NULL");
+
+    // rnv fix for issue 19999:
+    // Throw exception in case if mesh on entity from profile is not equal
+    // input mesh on entity. This exception catch in tne VISU_Convertor_impl::GetTimeStampOnMesh
+    // function.
+    if(theProfile->myMeshOnEntity && theProfile->myMeshOnEntity != theMeshOnEntity.get())
+      EXCEPTION(std::runtime_error,"GetMeshOnProfile >> theProfile->myMeshOnEntity != theMeshOnEntity.get()");
+
     if(theProfile->myIsVTKDone)
       return true;
    
-    if(theProfile->myMeshOnEntity && theProfile->myMeshOnEntity != theMeshOnEntity.get())
-      return false;
+    //    if(theProfile->myMeshOnEntity && theProfile->myMeshOnEntity != theMeshOnEntity.get())
+    //      return false;
       
     VISU::TTimerLog aTimerLog(MYDEBUG,"GetMeshOnProfile");
     INITMSG(MYDEBUG,"GetMeshOnProfile - anEntity = "<<theMeshOnEntity->myEntity<<std::endl);
@@ -666,17 +669,11 @@ VISU_Convertor_impl
        vtkIdType aVGeom = VISUGeom2VTK(aEGeom);
        VISU::PSubMeshImpl aSubMesh = anIter->second;
 
-       //ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
-       aSubMesh->myIsStructured = aMesh->myIsStructured;
-       aSubMesh->myType = aMesh->myType;
-       aSubMesh->myGrilleStructure = aMesh->myGrilleStructure;
-       aSubMesh->myObjID2StructureID = aMesh->myObjID2StructureID;
-       //ENK: 23.11.2006
-
-       const VISU::PUnstructuredGrid& aSource = aSubMesh->GetSource();
-       aSource->ShallowCopy(aMesh->GetPointSet());
+       aSubMesh->CopyStructure( aMesh );
 
        aSubMesh->myStartID = aCellID;
+
+       const VISU::PUnstructuredGrid& aSource = aSubMesh->GetSource();
        GetCellsOnSubMesh(aSource, aMeshOnEntity, aSubMesh, aVGeom);
        anAppendFilter->AddInput(aSource.GetPointer());
        
@@ -688,19 +685,13 @@ VISU_Convertor_impl
 
        aSubMeshArr[anID] = aSubMesh;
       }
-      aMeshOnEntity->myNamedPointCoords = aMesh->myNamedPointCoords;
       
-      //ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
-      aMeshOnEntity->myIsStructured = aMesh->myIsStructured;
-      aMeshOnEntity->myType = aMesh->myType;
-      aMeshOnEntity->myGrilleStructure = aMesh->myGrilleStructure;
-      aMeshOnEntity->myObjID2StructureID = aMesh->myObjID2StructureID;
-      //ENK: 23.11.2006
+      aMeshOnEntity->CopyStructure( aMesh );
 
       aMeshOnEntity->myIsVTKDone = true;
 
       if(MYDEBUGWITHFILES){
-       std::string aMeshName = QString(theMeshName.c_str()).simplifyWhiteSpace().latin1();
+       std::string aMeshName = (const char*)QString(theMeshName.c_str()).simplified().toLatin1();
        std::string aFileName = std::string(getenv("HOME"))+"/"+getenv("USER")+"-";
        aFileName += aMeshName + dtos("-%d-",int(theEntity)) + "-MeshOnEntity.vtk";
        VISU::WriteToFile(anAppendFilter->GetOutput(),aFileName);
@@ -747,28 +738,21 @@ VISU_Convertor_impl
 #ifndef _DEXCEPT_
   try{
 #endif
-    if(!aFamily->myIsVTKDone){
-      const VISU::PUnstructuredGrid& aSource = aFamily->GetSource();
-      if(MYVTKDEBUG) aSource->DebugOn();
+    if ( !aFamily->myIsVTKDone ) {
+      GetMeshOnEntity( theMeshName, theEntity );
 
-      GetMeshOnEntity(theMeshName,theEntity);
+      LoadFamilyOnEntity( aMesh, aMeshOnEntity, aFamily );
 
-      LoadFamilyOnEntity(aMesh,aMeshOnEntity,aFamily);
-      aSource->ShallowCopy(aMesh->GetPointSet());
-      GetCellsOnFamily(aSource,aMeshOnEntity,aFamily);
+      aFamily->CopyStructure( aMesh );
+
+      const VISU::PUnstructuredGrid& aSource = aFamily->GetSource();
+      GetCellsOnFamily( aSource, aMeshOnEntity, aFamily );
 
-      aFamily->myNamedPointCoords = aMesh->myNamedPointCoords;
-      //ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
-      aFamily->myIsStructured = aMesh->myIsStructured;
-      aFamily->myType = aMesh->myType;
-      aFamily->myGrilleStructure = aMesh->myGrilleStructure;
-      aFamily->myObjID2StructureID = aMesh->myObjID2StructureID;
-      //ENK: 23.11.2006
       aFamily->myIsVTKDone = true;
 
       if(MYDEBUGWITHFILES){
-       std::string aMeshName = QString(theMeshName.c_str()).simplifyWhiteSpace().latin1();
-       std::string aFamilyName = QString(theFamilyName.c_str()).simplifyWhiteSpace().latin1();
+       std::string aMeshName = (const char*)QString(theMeshName.c_str()).simplified().toLatin1();
+       std::string aFamilyName = (const char*)QString(theFamilyName.c_str()).simplified().toLatin1();
        std::string aFileName = std::string(getenv("HOME"))+"/"+getenv("USER")+"-";
        aFileName += aMeshName + dtos("-%d-",int(theEntity)) + aFamilyName + "-FamilyOnEntity.vtk";
        VISU::WriteToFile(aSource.GetPointer(),aFileName);
@@ -840,18 +824,14 @@ VISU_Convertor_impl
        }
        aFamilyArr[anID] = aFamily;
       }
-      aGroup->myNamedPointCoords = aMesh->myNamedPointCoords;
-      //ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
-      aGroup->myIsStructured = aMesh->myIsStructured;
-      aGroup->myType = aMesh->myType;
-      aGroup->myGrilleStructure = aMesh->myGrilleStructure;
-      aGroup->myObjID2StructureID = aMesh->myObjID2StructureID;
-      //ENK: 23.11.2006
+
+      aGroup->CopyStructure( aMesh );
+
       aGroup->myIsVTKDone = true;
 
       if(MYDEBUGWITHFILES){
-       std::string aMeshName = QString(theMeshName.c_str()).simplifyWhiteSpace().latin1();
-       std::string aGroupName = QString(theGroupName.c_str()).simplifyWhiteSpace().latin1();
+       std::string aMeshName = (const char*)QString(theMeshName.c_str()).simplified().toLatin1();
+       std::string aGroupName = (const char*)QString(theGroupName.c_str()).simplified().toLatin1();
        std::string aFileName = std::string(getenv("HOME"))+"/"+getenv("USER")+"-";
        aFileName += aMeshName + "-" + aGroupName + "-MeshOnGroup.vtk";
        VISU::WriteToFile(anAppendFilter->GetOutput(),aFileName);
@@ -870,81 +850,63 @@ VISU_Convertor_impl
 //---------------------------------------------------------------
 vtkUnstructuredGrid*
 VISU_Convertor_impl
-::GetTimeStampOnProfile(const VISU::PMeshImpl& theMesh,
-                       const VISU::PMeshOnEntityImpl& theMeshOnEntity,
-                       const VISU::PFieldImpl& theField,
-                       const VISU::PValForTimeImpl& theValForTime,
-                       const VISU::PUnstructuredGridIDMapperImpl& theUnstructuredGridIDMapper,
-                       const VISU::PProfileImpl& theProfile,
-                       const VISU::TEntity& theEntity)
+::GetTimeStampOnProfile( const VISU::PMeshImpl& theMesh,
+                        const VISU::PMeshOnEntityImpl& theMeshOnEntity,
+                        const VISU::PFieldImpl& theField,
+                        const VISU::PValForTimeImpl& theValForTime,
+                        const VISU::PUnstructuredGridIDMapperImpl& theUnstructuredGridIDMapper,
+                        const VISU::PProfileImpl& theProfile,
+                        const VISU::TEntity& theEntity )
 {
-  vtkUnstructuredGrid* anOutput = NULL;
-  
-  LoadMeshOnEntity(theMesh, theMeshOnEntity);
-  GetMeshOnEntity(theMeshOnEntity->myMeshName, theMeshOnEntity->myEntity);
-  GetMeshOnProfile(theMesh, theMeshOnEntity, theProfile);
-  
-  bool isNeedInCells = false;
+  LoadMeshOnEntity( theMesh, theMeshOnEntity );
+  GetMeshOnEntity( theMeshOnEntity->myMeshName, theMeshOnEntity->myEntity );
+  GetMeshOnProfile( theMesh, theMeshOnEntity, theProfile );
   
   theUnstructuredGridIDMapper->myIDMapper = theProfile;
-  if(theMeshOnEntity->myEntity == VISU::NODE_ENTITY){
+
+  if ( theMeshOnEntity->myEntity == VISU::NODE_ENTITY ) {
     // add geometry elements to output,
     // if timestamp on NODE_ENTITY and
     // on profiles with status eAddPart
-    VISU::TGeom2SubProfile::const_iterator anIter = theProfile->myGeom2SubProfile.begin();
-    for(; anIter != (theProfile->myGeom2SubProfile).end(); anIter++){
-      const VISU::EGeometry aGeom = anIter->first;
-      const VISU::PSubProfileImpl aSubProfile = anIter->second;
-      if(aSubProfile->myStatus == VISU::eAddPart && aGeom == VISU::ePOINT1){
-       isNeedInCells = true;
-       break;
+    const VISU::TGeom2SubProfile& aGeom2SubProfile = theProfile->myGeom2SubProfile;
+    VISU::TGeom2SubProfile::const_iterator aSubProfileIter = aGeom2SubProfile.begin();
+    for ( ; aSubProfileIter != aGeom2SubProfile.end(); aSubProfileIter++ ) {
+      const VISU::EGeometry& aGeom = aSubProfileIter->first;
+      const VISU::PSubProfileImpl& aSubProfile = aSubProfileIter->second;
+      if ( aSubProfile->myStatus == VISU::eAddPart && aGeom == VISU::ePOINT1 ) {
+       const VISU::TMeshOnEntityMap& aMeshOnEntityMap = theMesh->myMeshOnEntityMap;
+       VISU::TMeshOnEntityMap::const_reverse_iterator aMeshOnEntityIter = aMeshOnEntityMap.rbegin();
+       for( ; aMeshOnEntityIter != aMeshOnEntityMap.rend(); aMeshOnEntityIter++ ) {
+         VISU::TEntity anEntity = aMeshOnEntityIter->first;
+         if ( anEntity == VISU::NODE_ENTITY )
+           continue;
+         VISU::PNamedIDMapper aNamedIDMapper = GetMeshOnEntity( theMesh->myName, anEntity );
+         if( aNamedIDMapper ) {
+           theUnstructuredGridIDMapper->SetReferencedMesh( aNamedIDMapper );
+           VISU::PUnstructuredGrid aSource = theUnstructuredGridIDMapper->GetSource();
+           VISU::GetTimeStampOnProfile( aSource, theField, theValForTime, theEntity );
+           
+           return theUnstructuredGridIDMapper->GetUnstructuredGridOutput();
+         }
+       }
       }
     }
-    if(isNeedInCells){
-      theUnstructuredGridIDMapper->myIsSpecialKey = true;
-      GetTimeStampOnNodalProfile(theMesh,theUnstructuredGridIDMapper,theField,theValForTime,theEntity);
-      anOutput = theUnstructuredGridIDMapper->GetUnstructuredGridOutput();
-    }
-  }
-  if(!isNeedInCells){
-    vtkUnstructuredGrid* anOutput = theUnstructuredGridIDMapper->GetUnstructuredGridOutput();
-    const VISU::PUnstructuredGrid& aSource = theUnstructuredGridIDMapper->mySource.GetSource();
-    VISU::GetTimeStampOnProfile(aSource, theField, theValForTime, theEntity);
   }
-  return anOutput;
-}
 
-void
-VISU_Convertor_impl
-::GetTimeStampOnNodalProfile(const VISU::PMeshImpl& theMesh,
-                             const VISU::PUnstructuredGridIDMapperImpl& theIDMapperFilter,
-                             const VISU::PFieldImpl& theField, 
-                             const VISU::PValForTimeImpl& theValForTime,
-                             const VISU::TEntity& theEntity)
-{
-  const VISU::TMeshOnEntityMap& aMeshOnEntityMap = theMesh->myMeshOnEntityMap;
-  VISU::TMeshOnEntityMap::const_iterator aIter = aMeshOnEntityMap.begin();
-  for(;aIter!=aMeshOnEntityMap.end();aIter++){
-    VISU::TEntity aEntity = aIter->first;
-    if(aEntity != VISU::NODE_ENTITY){
-      VISU::PNamedIDMapper aMapper = GetMeshOnEntity(theMesh->myName,aEntity);
-      if(aMapper)
-        theIDMapperFilter->myMappers[aEntity] = aMapper;
-    }
-  }
+  VISU::PUnstructuredGrid aSource = theUnstructuredGridIDMapper->GetSource();
+  VISU::GetTimeStampOnProfile( aSource, theField, theValForTime, theEntity );
 
-  theIDMapperFilter->GetUnstructuredGridOutput();
-  const VISU::PUnstructuredGrid& aSource = theIDMapperFilter->mySource.GetSource();
-  VISU::GetTimeStampOnProfile(aSource,theField,theValForTime,theEntity);
+  return theUnstructuredGridIDMapper->GetUnstructuredGridOutput();
 }
 
+
 //---------------------------------------------------------------
 VISU::PUnstructuredGridIDMapper 
 VISU_Convertor_impl
-::GetTimeStampOnMesh(const std::string& theMeshName, 
-                    const VISU::TEntity& theEntity,
-                    const std::string& theFieldName,
-                    int theStampsNum)
+::GetTimeStampOnMesh( const std::string& theMeshName, 
+                     const VISU::TEntity& theEntity,
+                     const std::string& theFieldName,
+                     int theStampsNum )
 {
   INITMSG(MYDEBUG,"GetTimeStampOnMesh"<<
          "; theMeshName = '"<<theMeshName<<"'"<<
@@ -994,18 +956,13 @@ VISU_Convertor_impl
                                         aVTKMeshOnEntity->myEntity);
       }
 
-      //ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
-      anUnstructuredGridIDMapper->myIsStructured = aMesh->myIsStructured;
-      anUnstructuredGridIDMapper->myType = aMesh->myType;
-      anUnstructuredGridIDMapper->myGrilleStructure = aMesh->myGrilleStructure;
-      anUnstructuredGridIDMapper->myObjID2StructureID = aMesh->myObjID2StructureID;
-      //ENK: 23.11.2006
+      anUnstructuredGridIDMapper->CopyStructure( aMesh );
 
       anUnstructuredGridIDMapper->myIsVTKDone = true;
 
       if(MYDEBUGWITHFILES){
-       std::string aMeshName = QString(theMeshName.c_str()).simplifyWhiteSpace().latin1();
-       std::string aFieldName = QString(theFieldName.c_str()).simplifyWhiteSpace().latin1();
+       std::string aMeshName = (const char*)QString(theMeshName.c_str()).simplified().toLatin1();
+       std::string aFieldName = (const char*)QString(theFieldName.c_str()).simplified().toLatin1();
        std::string aPrefix = std::string(getenv("HOME"))+"/"+getenv("USER")+"-";
        std::string aFileName = aPrefix + aMeshName + dtos("-%d-",int(theEntity)) + 
          aFieldName + dtos("-%d", theStampsNum) + "-TimeStampOnMesh.vtk";
@@ -1086,15 +1043,15 @@ VISU_Convertor_impl
 
       aGaussPtsIDFilter->myIDMapper = aGaussMesh;
       aGaussPtsIDFilter->myGaussPtsIDMapper = aGaussMesh;
-      vtkPolyData* anOutput = aGaussPtsIDFilter->GetPolyDataOutput();
-      const VISU::PPolyData& aSource = aGaussPtsIDFilter->mySource.GetSource();
+      VISU::PPolyData aSource = aGaussPtsIDFilter->GetSource();
       VISU::GetTimeStampOnGaussMesh(aSource, aField, aValForTime);
+      vtkPolyData* anOutput = aGaussPtsIDFilter->GetPolyDataOutput();
 
       aGaussPtsIDFilter->myIsVTKDone = true;
 
       if(MYDEBUGWITHFILES){
-       std::string aMeshName = QString(theMeshName.c_str()).simplifyWhiteSpace().latin1();
-       std::string aFieldName = QString(theFieldName.c_str()).simplifyWhiteSpace().latin1();
+       std::string aMeshName = (const char*)QString(theMeshName.c_str()).simplified().toLatin1();
+       std::string aFieldName = (const char*)QString(theFieldName.c_str()).simplified().toLatin1();
        std::string aPrefix = std::string(getenv("HOME"))+"/"+getenv("USER")+"-";
        std::string aFileName = aPrefix + aMeshName + dtos("-%d-",int(theEntity)) + 
          aFieldName + dtos("-%d",theStampsNum) + "-TimeStampOnGaussPts.vtk";
@@ -1388,29 +1345,29 @@ VISU_Convertor_impl
 
   VISU::TMeshOnEntityMap& aMeshOnEntityMap = aMesh->myMeshOnEntityMap;
   VISU::PMeshOnEntityImpl aVTKMeshOnEntity = aMeshOnEntity;
-  if(theEntity == VISU::NODE_ENTITY){
-    if(aMeshOnEntityMap.find(VISU::CELL_ENTITY) != aMeshOnEntityMap.end())
-      aVTKMeshOnEntity = aMeshOnEntityMap[VISU::CELL_ENTITY];
-    else if(aMeshOnEntityMap.find(VISU::FACE_ENTITY) != aMeshOnEntityMap.end())
-      aVTKMeshOnEntity = aMeshOnEntityMap[VISU::FACE_ENTITY];
-    else if(aMeshOnEntityMap.find(VISU::EDGE_ENTITY) != aMeshOnEntityMap.end())
-      aVTKMeshOnEntity = aMeshOnEntityMap[VISU::EDGE_ENTITY];
-    else if(aMeshOnEntityMap.find(VISU::NODE_ENTITY) != aMeshOnEntityMap.end())
-      aVTKMeshOnEntity = aMeshOnEntityMap[VISU::NODE_ENTITY];
+  if ( theEntity == VISU::NODE_ENTITY ) {
+    if(aMeshOnEntityMap.find( VISU::CELL_ENTITY ) != aMeshOnEntityMap.end())
+      aVTKMeshOnEntity = aMeshOnEntityMap[ VISU::CELL_ENTITY ];
+    else if (aMeshOnEntityMap.find( VISU::FACE_ENTITY ) != aMeshOnEntityMap.end() )
+      aVTKMeshOnEntity = aMeshOnEntityMap[ VISU::FACE_ENTITY ];
+    else if (aMeshOnEntityMap.find( VISU::EDGE_ENTITY ) != aMeshOnEntityMap.end() )
+      aVTKMeshOnEntity = aMeshOnEntityMap[ VISU::EDGE_ENTITY ];
+    else if ( aMeshOnEntityMap.find( VISU::NODE_ENTITY ) != aMeshOnEntityMap.end() )
+      aVTKMeshOnEntity = aMeshOnEntityMap[ VISU::NODE_ENTITY ];
   }else
     aVTKMeshOnEntity = aMeshOnEntity;
   
   VISU::TFieldMap& aFieldMap = aMeshOnEntity->myFieldMap;
-  VISU::TFieldMap::const_iterator aFieldIter= aFieldMap.find(theFieldName);
+  VISU::TFieldMap::const_iterator aFieldIter= aFieldMap.find( theFieldName );
   if(aFieldIter == aFieldMap.end())
     EXCEPTION(std::runtime_error,"FindField >> There is no field on the mesh!!!");
   
   VISU::PFieldImpl aField = aFieldIter->second;
 
-  return TFindField(aMesh,
-                   aMeshOnEntity,
-                   aVTKMeshOnEntity,
-                   aField);
+  return TFindField( aMesh,
+                    aMeshOnEntity,
+                    aVTKMeshOnEntity,
+                    aField );
 }
 
 
index f6cffc0e99736c3b61e37c867ef605327d311c19..fd3f073a4f8a1518f331aa970e7d4a0016850577 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   : 
 //  Author : 
 //  Module : SALOME
 //  $Header$
-
+//
 #ifndef VISU_Convertor_impl_HeaderFile
 #define VISU_Convertor_impl_HeaderFile
 
@@ -120,10 +119,10 @@ public:
   //! Implemention of the VISU_Convertor::GetTimeStampOnMesh
   virtual
   VISU::PUnstructuredGridIDMapper 
-  GetTimeStampOnMesh(const std::string& theMeshName, 
-                    const VISU::TEntity& theEntity,
-                    const std::string& theFieldName,
-                    int theTimeStampNumber);
+  GetTimeStampOnMesh( const std::string& theMeshName, 
+                     const VISU::TEntity& theEntity,
+                     const std::string& theFieldName,
+                     int theTimeStampNumber );
 
   //! Get amount of memory to build vtkDataSet for corresponding MED TIMESTAMP on mesh
   virtual 
@@ -206,9 +205,9 @@ protected:
                       VISU::PMeshOnEntityImpl,
                       VISU::PFieldImpl> TFindField;
   TFindField
-  FindField(const std::string& theMeshName, 
-           const VISU::TEntity& theEntity, 
-           const std::string& theFieldName);
+  FindField( const std::string& theMeshName, 
+            const VISU::TEntity& theEntity, 
+            const std::string& theFieldName );
 
   //! An utility method to find TTimeStamp by name of its parent mesh, corresponding entity, field name and its number
   typedef boost::tuple<VISU::PMeshImpl,
@@ -223,21 +222,14 @@ protected:
                int theStampsNum);
 
   vtkUnstructuredGrid*
-  GetTimeStampOnProfile(const VISU::PMeshImpl& theMesh,
-                       const VISU::PMeshOnEntityImpl& theMeshOnEntity,
-                       const VISU::PFieldImpl& theField,
-                       const VISU::PValForTimeImpl& theValForTime,
-                       const VISU::PUnstructuredGridIDMapperImpl& theIDMapperFilter,
-                       const VISU::PProfileImpl& theProfile,
-                       const VISU::TEntity& theEntity);
-
-  void
-  GetTimeStampOnNodalProfile(const VISU::PMeshImpl& theMesh,
-                             const VISU::PUnstructuredGridIDMapperImpl& theIDMapperFilter,
-                             const VISU::PFieldImpl& theField, 
-                             const VISU::PValForTimeImpl& theValForTime,
-                             const VISU::TEntity& theEntity);
-  
+  GetTimeStampOnProfile( const VISU::PMeshImpl& theMesh,
+                        const VISU::PMeshOnEntityImpl& theMeshOnEntity,
+                        const VISU::PFieldImpl& theField,
+                        const VISU::PValForTimeImpl& theValForTime,
+                        const VISU::PUnstructuredGridIDMapperImpl& theIDMapperFilter,
+                        const VISU::PProfileImpl& theProfile,
+                        const VISU::TEntity& theEntity );
+
 protected:
   //! Implemention of the VISU_Convertor::GetTimeStampSize
   virtual 
diff --git a/src/CONVERTOR/VISU_ElnoMeshValue.hxx b/src/CONVERTOR/VISU_ElnoMeshValue.hxx
new file mode 100644 (file)
index 0000000..1e7c32f
--- /dev/null
@@ -0,0 +1,163 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  File   : VISU_ElnoMeshValue.hxx
+//  Author : Alexey PETROV
+//  Module : VISU
+//
+#ifndef VISU_ElnoMeshValue_HeaderFile
+#define VISU_ElnoMeshValue_HeaderFile
+
+#include "VISU_VTKTypeList.hxx"
+#include <vtkDataSetAttributes.h>
+
+
+/*! 
+  \file VISU_ElnoMeshValue.hxx
+  \brief The file contains declarations for the acess to the specific ELNO MED data
+*/
+
+namespace VISU
+{
+  //---------------------------------------------------------------
+  template< int elno_type >
+  struct TGetElnoNodeData
+  {
+    typedef typename TL::TEnum2VTKArrayType< elno_type >::TResult TVTKDataArray;
+    typedef typename TL::TEnum2VTKBasicType< elno_type >::TResult TDataType;
+    TVTKDataArray *myElnoDataArray;
+    vtkIntArray *myElnoDataMapper;
+    int myElemInfo[3];
+
+
+    //----------------------------------------------------------------------------
+    TGetElnoNodeData( vtkDataArray *theElnoDataArray,
+                     vtkDataArray *theElnoDataMapper )
+      : myElnoDataArray( TVTKDataArray::SafeDownCast( theElnoDataArray ) )
+      , myElnoDataMapper( vtkIntArray::SafeDownCast( theElnoDataMapper ) )
+    {}
+
+
+    //----------------------------------------------------------------------------
+    TDataType*
+    operator () ( vtkIdType theCellId, vtkIdType theLocalPntId )
+    {
+      myElnoDataMapper->GetTupleValue( theCellId, myElemInfo );
+
+      vtkIdType aPos = myElemInfo[ 0 ] + theLocalPntId * myElemInfo[ 1 ];
+
+      return myElnoDataArray->GetPointer( aPos );
+    }
+
+
+    //----------------------------------------------------------------------------
+    int
+    getNbComp()
+    {
+      myElnoDataMapper->GetTupleValue( 0, myElemInfo );
+
+      return myElemInfo[ 1 ];
+    }
+  };
+
+
+  //----------------------------------------------------------------------------------------------
+  template< int elno_type >
+  struct TSetElnoNodeData
+  {
+    typedef typename TL::TEnum2VTKArrayType< elno_type >::TResult TVTKDataArray;
+    typedef typename TL::TEnum2VTKBasicType< elno_type >::TResult TDataType;
+
+    //----------------------------------------------------------------------------------------------
+    TSetElnoNodeData( vtkIdType theEffectNbComp,
+                     vtkIdType theRealNbComp,
+                     vtkIdType theNbTuples,
+                     const char* theDataArrayName,
+                     const char* theMapperArrayName )
+      : myElnoDataArray( TVTKDataArray::New() )
+      , myElnoDataMapper( vtkIntArray::New() )
+    {
+      myElnoDataArray->SetNumberOfComponents( theEffectNbComp );
+      myElnoDataArray->SetNumberOfTuples( theNbTuples );
+      myElnoDataArray->SetName( theDataArrayName );
+
+      myElnoDataMapper->SetNumberOfComponents( 3 );
+      myElnoDataMapper->Allocate( theNbTuples * 3 );
+      myElnoDataMapper->SetName( theMapperArrayName );
+
+      myElemInfo[ 0 ] = 0;
+      myElemInfo[ 1 ] = theRealNbComp;
+      myElemInfo[ 2 ] = 0;
+    }
+
+
+    //----------------------------------------------------------------------------------------------
+    ~TSetElnoNodeData()
+    {
+      myElnoDataArray->Delete();
+      myElnoDataMapper->Delete();
+    }
+
+
+    //----------------------------------------------------------------------------------------------
+    int
+    AddNextPointData( TDataType* theDataPtr )
+    {
+      vtkIdType aPos = myElemInfo[ 0 ] + myElemInfo[ 2 ] * myElemInfo[ 1 ];
+
+      TDataType* aDataPtr = myElnoDataArray->GetPointer( aPos );
+
+      for ( vtkIdType aCompId = 0; aCompId < myElemInfo[ 1 ]; aCompId++ )
+       *aDataPtr++ = *theDataPtr++;
+
+      return myElemInfo[ 2 ]++;
+    }
+
+
+    //----------------------------------------------------------------------------------------------
+    void
+    InsertNextCellData()
+    {
+      myElnoDataMapper->InsertNextTupleValue( myElemInfo );
+      myElemInfo[ 0 ] += myElemInfo[ 2 ] * myElemInfo[ 1 ];
+      myElemInfo[ 2 ] = 0;
+    }
+
+
+    //----------------------------------------------------------------------------------------------
+    void
+    AddData( vtkDataSetAttributes* theDataSetAttributes )
+    {
+      theDataSetAttributes->AddArray( myElnoDataArray );
+      theDataSetAttributes->AddArray( myElnoDataMapper );
+    }
+
+  protected:
+    TVTKDataArray *myElnoDataArray;
+    vtkIntArray *myElnoDataMapper;
+    int myElemInfo[ 3 ];
+  };
+
+
+  //---------------------------------------------------------------
+}
+
+#endif
index ba36c3fdb0e224ae596cfe35bb0681c9e342886e..b53ad25cf62198a25e007e9f878908176269ff1f 100644 (file)
@@ -1,30 +1,29 @@
-//  VISU CONVERTOR :
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU CONVERTOR :
 // File:    VISU_ExtractUnstructuredGrid.cxx
 // Author:  Alexey PETROV
 // Module : VISU
-
-
+//
 #include "VISU_ExtractUnstructuredGrid.hxx"
 #include "VISU_ConvertorUtils.hxx"
 
index 37567954f335dfb791b9cdac6fd8a81b6816e33b..6a2ba728c70dee449400b851768e8064942771fd 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU CONVERTOR :
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU CONVERTOR :
 //  File   : VISU_ExtractUnstructuredGrid.hxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_ExtractUnstructuredGrid_HeaderFile
 #define VISU_ExtractUnstructuredGrid_HeaderFile
 
index a27a1f4cb53a4a360797a49f93a90798dc0d1a49..0d76105a685e36eb8e030a3d6a340c50a79dea6f 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   : 
 //  Author : 
 //  Module : SALOME
 //  $Header$
-
+//
 #include "VISU_GaussMergeFilter.hxx"
 #include "VISU_MergeFilterUtilities.hxx"
 
@@ -335,11 +334,13 @@ VISU_GaussMergeFilter
        VISU::GetIntersection(aDataCellIds,
                              aGeometryCellMapper,
                              anIntersection);
-       
-       vtkIdType aNbTuples = anIntersection.size();
-       
-       VISU::TObjectId2TupleIdMap aDataCellId2TupleIdMap;
-       VISU::GetObjectId2TupleIdMap(aDataCellIds, aDataCellId2TupleIdMap);
+
+        VISU::TObjectId2TupleGaussIdMap aDataCellId2TupleGaussIdMap;
+       VISU::GetObjectId2TupleGaussIdArray(aDataCellIds, aDataCellId2TupleGaussIdMap);
+
+        vtkIdType aNbTuples = 0;
+        for(vtkIdType i = 0;i < anIntersection.size();i++)
+          aNbTuples += aDataCellId2TupleGaussIdMap[anIntersection[i].first].size();
        
        vtkPointSet* aScalarsDataSet = dynamic_cast<vtkPointSet*>(GetScalars());
        vtkPoints* aDataPoints = aScalarsDataSet->GetPoints();
@@ -361,23 +362,27 @@ VISU_GaussMergeFilter
        
        vtkIdList *aCellIds = vtkIdList::New();
        vtkFloatingPointType aCoords[3];
-       for(int aTupleId=0;aTupleId<aNbTuples;aTupleId++){
+       for(int aTupleId=0, aNewTupleId=0; aTupleId<anIntersection.size(); aTupleId++){
          VISU::TObjectId& anObjectId = anIntersection[aTupleId];
+          VISU::TCellIdArray aCellIdArray = aDataCellId2TupleGaussIdMap[anObjectId.first];
+          
+          for(vtkIdType i = 0; i < aCellIdArray.size();i++) {
+            vtkIdType aCellId = aCellIdArray[i];
+            vtkCell *aCell = GetScalars()->GetCell(aCellId);
+            
+            aCellIds->Reset();
+            aCellIds->InsertNextId(aNewTupleId);
+            aNewTupleId++;
          
-         vtkIdType aCellId = aDataCellId2TupleIdMap[anObjectId];
-         vtkCell *aCell = GetScalars()->GetCell(aCellId);
-         
-         aCellIds->Reset();
-         aCellIds->InsertNextId(aTupleId);
-         
-         vtkIdType aCellType = GetScalars()->GetCellType(aCellId);
-         vtkIdType aNewCellId = theOutput->InsertNextCell(aCellType, aCellIds);
+            vtkIdType aCellType = GetScalars()->GetCellType(aCellId);
+            vtkIdType aNewCellId = theOutput->InsertNextCell(aCellType, aCellIds);
          
-         anOutputCellData->CopyData(anInputCellData, aCellId, aNewCellId);
-         anOutputPointData->CopyData(anInputPointData, aCellId, aNewCellId);
+            anOutputCellData->CopyData(anInputCellData, aCellId, aNewCellId);
+            anOutputPointData->CopyData(anInputPointData, aCellId, aNewCellId);
 
-         aDataPoints->GetPoint(aCellId, aCoords);
-         anOutputPoints->SetPoint(aNewCellId, aCoords);
+            aDataPoints->GetPoint(aCellId, aCoords);
+            anOutputPoints->SetPoint(aNewCellId, aCoords);
+          }
        }
       }
     }
index 52cace44ca4c66a951dc6d542cb38557e1e4d3b8..d47ef5191ab9929202f23681ee47927be8ab1632 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   : 
 //  Author : 
 //  Module : SALOME
 //  $Header$
-
+//
 #ifndef VISU_GaussMergeFilter_H
 #define VISU_GaussMergeFilter_H
 
index 0fc47bb2873ee6e1f49a3b72be29e131f5325c64..c40ede51a6c21395339eb4715d729840275694d7 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File:
 //  Author:
 //  Module : VISU
-
+//
 #include "VISU_IDMapper.hxx"
 
 #include <vtkUnstructuredGrid.h>
 namespace VISU
 {
   //---------------------------------------------------------------
-  //ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
+  TStructuredId
+  ::TStructuredId()
+  {
+    myData[0] = myData[1] = myData[2] = -1;
+  }
+
+  vtkIdType&
+  TStructuredId
+  ::operator [] ( size_t theId )
+  {
+    return myData[ theId ];
+  }
+
+  const vtkIdType&
+  TStructuredId
+  ::operator [] ( size_t theId ) const
+  {
+    return myData[ theId ];
+  }
+
+  bool
+  TStructuredId
+  ::operator == ( const TStructuredId& theId ) const
+  {
+    return 
+      theId[0] == myData[0] &&
+      theId[1] == myData[1] &&
+      theId[2] == myData[2];
+  }
+
+  //---------------------------------------------------------------
+  void
+  TStructured
+  ::CopyStructure(PStructured theStructured)
+  {
+    myIsPolarType = theStructured->myIsPolarType;
+    myIsStructured = theStructured->myIsStructured;
+    myGrilleStructure = theStructured->myGrilleStructure;
+    myObj2StructuredId = theStructured->myObj2StructuredId;    
+  }
+
   bool
   TStructured
   ::IsStructured() const
@@ -41,39 +81,49 @@ namespace VISU
     return myIsStructured;
   }
   
-  TIdTypeVector
+  TStructuredId
   TStructured
   ::GetStructure()
   {
     return myGrilleStructure;
   }
 
-  TIdTypeVector
+  vtkIdType
+  TStructured
+  ::GetStructureDim()
+  {
+    return 
+      vtkIdType( myGrilleStructure[0] >= 0) +
+      vtkIdType( myGrilleStructure[1] >= 0) +
+      vtkIdType( myGrilleStructure[2] >= 0);
+  }
+
+  TStructuredId
   TStructured
   ::GetIndexesOfNode(vtkIdType theNodeId)
   {
-    TIdTypeVector aNullVec;
-    if(!IsStructured())
-      return aNullVec;
-    TObj2IdTypeVector::const_iterator aIter = myObjID2StructureID.find(theNodeId);
-    if(aIter!=myObjID2StructureID.end())
-      return aIter->second;
-    else
-      return aNullVec;
+    if ( IsStructured() ) {
+      TObj2StructuredId::const_iterator aIter = myObj2StructuredId.find( theNodeId );
+      if ( aIter != myObj2StructuredId.end() )
+       return aIter->second;
+    }
+
+    return TStructuredId();
   }
   
   vtkIdType
   TStructured
-  ::GetObjectIDByIndexes(TIdTypeVector theVec)
+  ::GetObjectIDByIndexes(TStructuredId theVec)
   {
-    TObj2IdTypeVector::const_iterator aIter = myObjID2StructureID.begin();
-    for(;aIter!=myObjID2StructureID.end();aIter++){
-      if(theVec == aIter->second)
+    TObj2StructuredId::const_iterator aIter = myObj2StructuredId.begin();
+    for (; aIter != myObj2StructuredId.end(); aIter++ ) {
+      if ( theVec == aIter->second )
        return aIter->first;
     }
+
     return -1;
   }
-  //ENK: 23.11.2006
+
 
   //---------------------------------------------------------------
   vtkFloatingPointType*  
@@ -100,7 +150,7 @@ namespace VISU
 
   vtkCell* 
   TIDMapper
-  ::GetElemCell(int theObjID)
+  ::GetElemCell(vtkIdType theObjID)
   {
     vtkIdType aVtkID = GetElemVTKID(theObjID);
     return GetOutput()->GetCell(aVtkID);
index 767def572a176e0c07b678065a7ec6f14d277e6d..5a9fec79fead17514cd6ce72a5bd6623e6669431 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU CONVERTOR :
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU CONVERTOR :
 //  File   : VISU_Convertor.hxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_IDMapper_HeaderFile
 #define VISU_IDMapper_HeaderFile
 
@@ -51,18 +51,43 @@ namespace VISU
   using MED::SharedPtr;
   using MED::TVector;
 
+
+  //---------------------------------------------------------------
+  class VISU_CONVERTOR_EXPORT TStructuredId
+  {
+    vtkIdType myData[3];
+
+  public:
+    TStructuredId();
+
+    vtkIdType&
+    operator [] ( size_t theId );
+
+    const vtkIdType&
+    operator [] ( size_t theId ) const;
+
+    bool
+    operator == ( const TStructuredId& theId ) const;
+  };
+
+  typedef std::map<vtkIdType, TStructuredId> TObj2StructuredId;
+  typedef MED::SharedPtr<TObj2StructuredId> PObj2StructuredId;
   
-  typedef TVector<vtkIdType> TIdTypeVector;
-  typedef std::map<vtkIdType,TIdTypeVector> TObj2IdTypeVector;
+  struct TStructured;
+  typedef MED::SharedPtr<TStructured> PStructured;
   
   struct VISU_CONVERTOR_EXPORT TStructured
   {
     TStructured():
       myIsStructured(false),
-      myType(true)
+      myIsPolarType(true)
     {}
 
+    //! Copys all information which should be sinchronized between two instances
     virtual
+    void
+    CopyStructure(PStructured theStructured);
+
     bool
     IsStructured() const;
 
@@ -71,34 +96,35 @@ namespace VISU
      * see also MED::TGrilleInfo::GetGrilleStructure
      * see also MED::TGrilleInfo::GetNbIndexes
      */
-    virtual TIdTypeVector
+    TStructuredId
     GetStructure();
     
+    vtkIdType
+    GetStructureDim();
+    
     /*!
      * Gets i,j,k by object id
      * return -1, if not found
      */
-    virtual TIdTypeVector
+    TStructuredId
     GetIndexesOfNode(vtkIdType theNodeId);
 
     /*!
      * Gets object id by i,j,k
      * return -1, if not found
      */
-    virtual vtkIdType
-    GetObjectIDByIndexes(TIdTypeVector theVec);
+    vtkIdType
+    GetObjectIDByIndexes(TStructuredId theVec);
 
-  public:
     bool myIsStructured; //!< To define mesh type (structured - true, non structured - false)
-    bool myType; //!< To define structured mesh is polair
+    bool myIsPolarType; //!< To define structured mesh is polair
 
     /*!provides grille structure for structured grid.
      * Example: {3,4,5}, 3 nodes in X axe, 4 nodes in Y axe, ...
      */
-    TIdTypeVector myGrilleStructure;
-    
-    TObj2IdTypeVector myObjID2StructureID;//!< map of object id to i,j,k ids of structured grid nodes
+    TStructuredId myGrilleStructure;
     
+    TObj2StructuredId myObj2StructuredId;//!< map of object id to i,j,k ids of structured grid nodes    
   };
   
   //---------------------------------------------------------------
index 66ce4c1d5a46878a371035d8f6f47c0c06f5d7da..8d0f0e6a25923148fc944b5813a72a27d2d40edb 100644 (file)
@@ -1,31 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_MedConvertor.cxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
-using namespace std;
-
+//
 #include "VISU_MedConvertor.hxx"
 #include "VISU_ConvertorUtils.hxx"
 
@@ -140,15 +138,29 @@ namespace
 
   //---------------------------------------------------------------
   VISU::TEntity
-  MEDEntityToVTK(MED::EEntiteMaillage theMEDEntity)
+  MEDEntityToVTK( MED::EEntiteMaillage theMEDEntity )
   {
+    VISU::TEntity anEntity = VISU::TEntity( -1 );
+
     switch(theMEDEntity){
-    case MED::eNOEUD: return VISU::NODE_ENTITY;
-    case MED::eARETE: return VISU::EDGE_ENTITY;
-    case MED::eFACE: return VISU::FACE_ENTITY;
-    case MED::eMAILLE: return VISU::CELL_ENTITY;
+    case MED::eNOEUD :
+      anEntity = VISU::NODE_ENTITY;
+      break;
+    case MED::eARETE : 
+      anEntity = VISU::EDGE_ENTITY;
+      break;
+    case MED::eFACE : 
+      anEntity = VISU::FACE_ENTITY;
+      break;
+    case MED::eMAILLE : 
+      anEntity = VISU::CELL_ENTITY;
+      break;
+    case MED::eNOEUD_ELEMENT :
+      anEntity = VISU::CELL_ENTITY;
+      break;
     }
-    return VISU::TEntity(-1);
+
+    return anEntity;
   }
 
 
@@ -202,7 +214,7 @@ namespace
          MED::PPolygoneInfo aPolygoneInfo = 
            theMEDWrapper->GetPPolygoneInfo(theMeshInfo,theMEntity,theMGeom);
          for(TInt anElemId = 0; anElemId < aNbElem ; anElemId++){
-           TInt aNbConn = aPolygoneInfo->GetNbConn(anElemNum[anElemId]);
+           TInt aNbConn = aPolygoneInfo->GetNbConn( anElemNum[ anElemId ] - 1 );
            aSubProfile->myCellsSize += aNbConn;
          }
          break;
@@ -212,7 +224,7 @@ namespace
            theMEDWrapper->GetPPolyedreInfo(theMeshInfo,theMEntity,theMGeom);
          for(TInt anElemId = 0; anElemId < aNbElem ; anElemId++){
            MED::TCConnSliceArr aConnSliceArr = 
-             aPolyedreInfo->GetConnSliceArr(anElemNum[anElemId]);
+             aPolyedreInfo->GetConnSliceArr( anElemNum[ anElemId ] - 1 );
            TInt aNbFaces = aConnSliceArr.size();
            TInt aCellSize = 0;
            for(TInt iFace = 0; iFace < aNbFaces; iFace++){
@@ -404,7 +416,9 @@ namespace
          aGauss->myGaussInfo = aGaussInfo;
          aGauss->myName = aGaussInfo->GetName();
          aGauss->myNbPoints = aGaussInfo->GetNbGauss();
-       }
+       } else if ( aTimeStampInfo.GetNbGauss(aMGeom) > 1 )
+         EXCEPTION( std::runtime_error, "aGaussIter == aGeom2Gauss.end()"
+                    " && aTimeStampInfo.GetNbGauss(aMGeom) > 1 !!!" );
        
        aGaussSubMesh->myNbCells = aNbCells*aGauss->myNbPoints;
        aGaussSubMesh->myCellsSize = aGaussSubMesh->myNbCells*2;
@@ -479,36 +493,6 @@ namespace
     }
   }
 
-
-  //---------------------------------------------------------------
-  void
-  InitGaussProfile(const MED::PWrapper& theMEDWrapper,
-                  const MED::PMeshInfo& theMeshInfo,
-                  MED::PTimeStampValueBase& theTimeStampValue,
-                  VISU::TMEDMeshOnEntity& theMeshOnEntity,
-                  MED::EEntiteMaillage theMEntity,
-                  const MED::TGeom2Size& theGeom2Size,
-                  VISU::TMEDValForTime& theValForTime)
-  {
-    VISU::TTimerLog aTimerLog(MYDEBUG,"InitGaussProfile");
-    INITMSG(MYDEBUG,"InitGaussProfile"<<std::endl);
-
-    // The order of the function calls is important
-    InitProfile(theMEDWrapper,
-               theMeshInfo,
-               theTimeStampValue,
-               theMeshOnEntity,
-               theMEntity,
-               theGeom2Size,
-               theValForTime);
-
-    InitGaussMesh(theTimeStampValue,
-                 theMeshOnEntity,
-                 theGeom2Size,
-                 theValForTime);
-  }
-
-
   //---------------------------------------------------------------
   void
   BuildMeshOnEntityMap(VISU::PMEDMesh theMesh,
@@ -649,51 +633,45 @@ namespace
     VISU::TMeshOnEntityMap& aMeshOnEntityMap = theMesh->myMeshOnEntityMap;
     MED::TEntityInfo::const_iterator anEntityIter = theEntityInfo.begin();
     
-    //ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
-    int iMax,jMax,kMax;
-    iMax=jMax=kMax=0;
-    
-    MED::TIntVector aIntVec;
-    if(theGrilleInfo->GetGrilleType()!=MED::eGRILLE_STANDARD)
-      for(int i=0;i<theMesh->myDim;i++)
-       aIntVec.push_back(theGrilleInfo->GetNbIndexes(i));
-    else
-      aIntVec = theGrilleInfo->GetGrilleStructure();
-    
-    theMesh->myGrilleStructure = aIntVec;
-    
-    switch((theMesh->GetStructure()).size()){
-    case 3: kMax=theMesh->GetStructure()[2];
-    case 2: jMax=theMesh->GetStructure()[1];
-    case 1: iMax=theMesh->GetStructure()[0];
+    VISU::TStructuredId& aGrilleStructure = theMesh->myGrilleStructure;
+    if ( theGrilleInfo->GetGrilleType() != MED::eGRILLE_STANDARD )
+      for ( int aDimId = 0; aDimId < theMesh->myDim; aDimId++ )
+       aGrilleStructure[aDimId] = theGrilleInfo->GetNbIndexes(aDimId);
+    else {
+      MED::TIntVector aVector = theGrilleInfo->GetGrilleStructure();
+      for ( int aDimId = 0; aDimId < aVector.size(); aDimId++ )
+       aGrilleStructure[aDimId] = aVector[aDimId];
     }
+
+    int kMax = aGrilleStructure[2];
+    int jMax = aGrilleStructure[1];
+    int iMax = aGrilleStructure[0];
     
-    int iii=0;
-    switch(theMesh->myDim){
+    int iii = 0;
+    VISU::TObj2StructuredId& aObj2StructuredId = theMesh->myObj2StructuredId;
+    switch ( theMesh->myDim ) {
     case 1:
-      for(int i=1;i<=iMax;i++)
-       (theMesh->myObjID2StructureID[i-1]).push_back(i);
+      for ( int i = 1; i <= iMax; i++ )
+       aObj2StructuredId[i-1][0] = i;
       break;
     case 2:
-      for(int j=1;j<=jMax;j++)
-       for(int i=1;i<=iMax;i++){
-         (theMesh->myObjID2StructureID[iii]).push_back(i);
-         (theMesh->myObjID2StructureID[iii]).push_back(j);
+      for ( int j = 1; j <= jMax; j++ )
+       for ( int i = 1; i <= iMax; i++ ) {
+         aObj2StructuredId[iii][0] = i;
+         aObj2StructuredId[iii][1] = j;
          iii++;
        }
       break;
     case 3:
-      for(int k=1;k<=kMax ;k++)
-       for(int j=1;j<=jMax;j++)
-         for(int i=1;i<=iMax;i++)
-           {
-             (theMesh->myObjID2StructureID[iii]).push_back(i);
-             (theMesh->myObjID2StructureID[iii]).push_back(j);
-             (theMesh->myObjID2StructureID[iii]).push_back(k);
-             iii++;
-           }
+      for ( int k = 1; k <= kMax; k++ )
+       for ( int j = 1; j <= jMax; j++ )
+         for ( int i = 1; i <= iMax; i++ ) {
+           aObj2StructuredId[iii][0] = i;
+           aObj2StructuredId[iii][1] = j;
+           aObj2StructuredId[iii][2] = k;
+           iii++;
+         }
     }
-    //ENK: 23.11.2006
     
     for(; anEntityIter != theEntityInfo.end(); anEntityIter++){
       const MED::EEntiteMaillage& aMEntity = anEntityIter->first;
@@ -790,9 +768,9 @@ namespace
       if(aNbTimeStamps < 1)
        continue;
       
-      VISU::TEntity aVEntity = MEDEntityToVTK(aMEntity);
+      VISU::TEntity aVEntity = MEDEntityToVTK( aMEntity );
       vtkIdType aDataType = VTK_DOUBLE;
-      if(aFieldInfo->GetType() != MED::eFLOAT64){
+      if ( aFieldInfo->GetType() != MED::eFLOAT64 ) {
 #if defined(HAVE_F77INT64)
        aDataType = VTK_LONG;
 #else  
@@ -808,7 +786,8 @@ namespace
       aField->myName = aFieldName;
       aField->myMeshName = aMeshName;
       aField->myDataSize = aMeshOnEntity->myNbCells * aNbComp;
-      
+      aField->myIsELNO = ( aMEntity == MED::eNOEUD_ELEMENT );
+
       INITMSG(MYDEBUG,"myName = '"<<aField->myName<<"'"<<
              "; myId = "<<aField->myId<<
              "; myEntity = "<<aField->myEntity<<
@@ -849,9 +828,13 @@ namespace
        MED::TGeom2NbGauss::const_iterator anIter = aMGeom2NbGauss.begin();
        for(; anIter != aMGeom2NbGauss.end(); anIter++){
          const MED::EGeometrieElement& aMGeom = anIter->first;
-         VISU::EGeometry aEGeom = MEDGeom2VISU(aMGeom);
+         VISU::EGeometry aEGeom = MEDGeom2VISU( aMGeom );
          TInt aNbGauss = anIter->second;
-         aVGeom2NbGauss[aEGeom] = aNbGauss;
+         aVGeom2NbGauss[ aEGeom ] = aNbGauss;
+
+         // ELNO data should satisfy the following condition ( implicitly )
+         vtkIdType aNbNodes = MEDGeom2NbNodes( aMGeom );
+         aField->myIsELNO &= ( aNbGauss == aNbNodes );
        }
       }
     }
@@ -1201,13 +1184,14 @@ namespace VISU
     if ( !mySubMeshID.empty() )
       theID = mySubMeshID[theID];
 
-    if (myIsElemNum)
+    if ( myIsElemNum )
       return (*myElemNum)[theID];
     else
       return theID;
   }
   
-//---------------------------------------------------------------
+
+  //---------------------------------------------------------------
   vtkIdType
   TMEDSubProfile
   ::GetElemVTKID(vtkIdType theID) const
@@ -1222,8 +1206,8 @@ namespace VISU
     return TSubProfileImpl::GetElemVTKID( theID );
   }
 
-//----------------------------------------------------------------
 
+  //----------------------------------------------------------------
   unsigned long int
   TMEDSubProfile
   ::GetMemorySize()
@@ -1269,11 +1253,11 @@ namespace VISU
     return TGaussPointID(aCellID, aLocalPntID);
   }
   
- //---------------------------------------------------------------
+  
+  //---------------------------------------------------------------
   vtkIdType
   TMEDGaussSubMesh
-  ::GetVTKID(const TGaussPointID& theID,
-            vtkIdType theStartID) const
+  ::GetVTKID( const TGaussPointID& theID ) const
   {
     vtkIdType aResult = -1;
 
@@ -1287,14 +1271,13 @@ namespace VISU
     if ( myIsElemNum ) {
       aCellID = GetElemVTKID( aCellID );
     } else
-      aCellID -= theStartID;
+      aCellID -= myStartID;
 
-    return aCellID * aNbPoints + aLocalPntID + theStartID;
+    return aCellID * aNbPoints + aLocalPntID + myStartID;
   }
 
 
   //---------------------------------------------------------------
-  
   unsigned long int
   TMEDGaussSubMesh
   ::GetMemorySize()
@@ -1312,6 +1295,7 @@ namespace VISU
   ::Init(const MED::PElemInfo& theElemInfo,
         MED::EVersion theVersion)
   {
+    myVersion = theVersion;
     myIsElemNum = theElemInfo->IsElemNum();
     if(myIsElemNum)
       myElemNum = theElemInfo->myElemNum;
@@ -1465,10 +1449,9 @@ VISU_MedConvertor
        
        aMesh->myNbPoints   = aGrilleInfo->GetNbNodes();
        aMesh->myEntityInfo = anEntityInfo;
-       //ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
+
+       aMesh->myIsPolarType = (MED::eGRILLE_POLAIRE == aGrilleInfo->GetGrilleType());
        aMesh->myIsStructured = true;
-       aMesh->myType         = (MED::eGRILLE_POLAIRE == aGrilleInfo->GetGrilleType());
-       //ENK: 23.11.2006
 #ifndef _DEXCEPT_
        try{
 #endif
@@ -1570,6 +1553,7 @@ void
 BuildTimeStampMinMax(MED::SharedPtr<TimeStampValueType> theTimeStampValue,
                     const MED::TGeom2Gauss& theGeom2Gauss,
                     VISU::TMinMaxArr& theMinMaxArr,
+                     VISU::TMinMaxArr& theAverageMinMaxArr,
                     TInt theNbComp,
                     TInt theNbComp2)
 {
@@ -1591,7 +1575,8 @@ BuildTimeStampMinMax(MED::SharedPtr<TimeStampValueType> theTimeStampValue,
            "; aNbElem = "<<aNbElem<<
            "; aNbGauss = "<<aNbGauss<<
            endl);
-                 
+    
+    bool isAverageByGaussPoints = (aNbGauss > 1);
     // To calculate min/max per components
     for(TInt iElem = 0; iElem < aNbElem; iElem++){
       typename TimeStampValueType::TTMeshValue::TCValueSliceArr aMValueSliceArr = aMMeshValue.GetCompValueSliceArr(iElem);
@@ -1600,11 +1585,27 @@ BuildTimeStampMinMax(MED::SharedPtr<TimeStampValueType> theTimeStampValue,
        VISU::TMinMax& aMinMax = theMinMaxArr[iComp+1];
        vtkFloatingPointType& aMin = aMinMax.first;
        vtkFloatingPointType& aMax = aMinMax.second;
-       for(TInt iGauss = 0; iGauss < aNbGauss; iGauss++){
+        VISU::TMinMax& anAverageMinMax = theAverageMinMaxArr[iComp+1];
+        vtkFloatingPointType& anAverageMin = anAverageMinMax.first;
+       vtkFloatingPointType& anAverageMax = anAverageMinMax.second;
+        vtkFloatingPointType anAverageValue = 0.0;
+        for(TInt iGauss = 0; iGauss < aNbGauss; iGauss++){
          const vtkFloatingPointType& aVal = aMValueSlice[iGauss];
-         aMin = min(aMin,aVal);
-         aMax = max(aMax,aVal);
+          aMin = std::min(aMin,aVal);
+          aMax = std::max(aMax,aVal);          
+          if(isAverageByGaussPoints){
+            anAverageValue += aVal;
+          }
+          else {
+            anAverageMin = aMin;
+            anAverageMax = aMax;
+          }
        }
+        if(isAverageByGaussPoints){
+          anAverageValue /= aNbGauss;
+          anAverageMin = std::min(anAverageMin,anAverageValue);
+          anAverageMax = std::max(anAverageMax,anAverageValue);
+        }
       }
     }
                  
@@ -1612,18 +1613,42 @@ BuildTimeStampMinMax(MED::SharedPtr<TimeStampValueType> theTimeStampValue,
     VISU::TMinMax& aMinMax = theMinMaxArr[0];
     vtkFloatingPointType& aMin = aMinMax.first;
     vtkFloatingPointType& aMax = aMinMax.second;
+    VISU::TMinMax& anAverageMinMax = theAverageMinMaxArr[0];
+    vtkFloatingPointType& anAverageMin = anAverageMinMax.first;
+    vtkFloatingPointType& anAverageMax = anAverageMinMax.second;
     for(TInt iElem = 0; iElem < aNbElem; iElem++){
       typename TimeStampValueType::TTMeshValue::TCValueSliceArr aMValueSliceArr = aMMeshValue.GetGaussValueSliceArr(iElem);
       for(TInt iGauss = 0; iGauss < aNbGauss; iGauss++){
-       const typename TimeStampValueType::TTMeshValue::TCValueSlice& aMValueSlice = aMValueSliceArr[iGauss];
-       vtkFloatingPointType aValue = 0.0;
-       for(TInt iComp = 0; iComp < theNbComp2; iComp++){
-         vtkFloatingPointType aVal = aMValueSlice[iComp];
-         aValue += aVal*aVal;
-       }
-       aValue = sqrt(aValue);
-       aMin = min(aMin,aValue);
-       aMax = max(aMax,aValue);
+        const typename TimeStampValueType::TTMeshValue::TCValueSlice& aMValueSlice = aMValueSliceArr[iGauss];
+        vtkFloatingPointType aValue = 0.0;
+        for(TInt iComp = 0; iComp < theNbComp2; iComp++){
+          vtkFloatingPointType aVal = aMValueSlice[iComp];
+          aValue += aVal*aVal;
+        }
+        aValue = sqrt(aValue);
+        aMin = std::min(aMin,aValue);
+        aMax = std::max(aMax,aValue);
+      }
+      if(isAverageByGaussPoints){
+        typename TimeStampValueType::TTMeshValue::TCValueSliceArr aMCompValueSliceArr = aMMeshValue.GetCompValueSliceArr(iElem);
+        vtkFloatingPointType aValue = 0.0;
+        for(TInt iComp = 0; iComp < theNbComp2; iComp++){
+          const typename TimeStampValueType::TTMeshValue::TCValueSlice& aMCompValueSlice = aMCompValueSliceArr[iComp];
+          vtkFloatingPointType anAverageValue = 0.0;
+          for(TInt iGauss = 0; iGauss < aNbGauss; iGauss++){
+            const vtkFloatingPointType& aVal = aMCompValueSlice[iGauss];
+            anAverageValue += aVal;
+          }
+          anAverageValue /= aNbGauss;
+          aValue += anAverageValue*anAverageValue;
+        }
+        aValue = sqrt(aValue);
+        anAverageMin = std::min(anAverageMin,aValue);
+        anAverageMax = std::max(anAverageMax,aValue);
+      }
+      else {
+        anAverageMin = aMin;
+        anAverageMax = aMax;
       }
     }
   }
@@ -1709,6 +1734,7 @@ VISU_MedConvertor
            aNbComp2 = 3;
 
          VISU::TMinMaxArr& aMinMaxArr = aField->myMinMaxArr;
+          VISU::TMinMaxArr& anAverageMinMaxArr = aField->myAverageMinMaxArr;
          TSetIsDone aSetIsDone(aField->myIsMinMaxInitilized);
          for(TInt iTimeStamp = aNbTimeStamps; iTimeStamp >= 1; iTimeStamp--){
            VISU::TTimerLog aTimerLog(MYDEBUG,"BuildMinMax - GetPTimeStampInfo()");
@@ -1737,12 +1763,14 @@ VISU_MedConvertor
                 BuildTimeStampMinMax<MED::TFloatTimeStampValue>(CastToFloatTimeStampValue(aTimeStampValue),
                                                                 aGeom2Gauss,
                                                                 aMinMaxArr,
+                                                                anAverageMinMaxArr,
                                                                 aNbComp,
                                                                 aNbComp2);
               else
                 BuildTimeStampMinMax<MED::TIntTimeStampValue>(CastToIntTimeStampValue(aTimeStampValue),
                                                               aGeom2Gauss,
                                                               aMinMaxArr,
+                                                              anAverageMinMaxArr,
                                                               aNbComp,
                                                               aNbComp2);
 
@@ -2049,7 +2077,7 @@ VISU_MedConvertor
   }catch(std::exception& exc){
     throw;
   }catch(...){
-    EXCEPTION(runtime_error,"Unknown exception !!!");
+    EXCEPTION(std::runtime_error,"Unknown exception !!!");
   }
 
   return 0;
@@ -2104,7 +2132,7 @@ VISU_MedConvertor
   }catch(std::exception& exc){
     throw;
   }catch(...){
-    EXCEPTION(runtime_error,"Unknown exception !!!");
+    EXCEPTION(std::runtime_error,"Unknown exception !!!");
   }
 
   return 0;
@@ -2208,7 +2236,7 @@ VISU_MedConvertor
              
              for(int iNode = 0; iNode < aVNbNodes; iNode++) 
                if(anArray[iNode] < 0 || aNbPoints <= anArray[iNode])
-                 EXCEPTION(runtime_error,"LoadCellsOnEntity - "<<
+                 EXCEPTION(std::runtime_error,"LoadCellsOnEntity - "<<
                            " aNbPoints("<<aNbPoints<<") "<<
                            "<= anArray["<<iElem<<"]"<<
                            "["<<iNode<<"]"<<
@@ -2410,10 +2438,10 @@ VISU_MedConvertor
              anArray[3] = aConnect[1];  
              anArray[4] = aConnect[4];
 
-             anArray[5] = aConnect[5];
-             anArray[6] = aConnect[8];  
-             anArray[7] = aConnect[7];  
-             anArray[8] = aConnect[6];  
+             anArray[5] = aConnect[8];
+             anArray[6] = aConnect[7];  
+             anArray[7] = aConnect[6];  
+             anArray[8] = aConnect[5];  
 
              anArray[9] = aConnect[9];  
              anArray[10] = aConnect[12];  
@@ -2434,7 +2462,7 @@ VISU_MedConvertor
            }
            for(int iNode = 0; iNode < aVNbNodes; iNode++) 
              if(anArray[iNode] < 0 || aNbPoints <= anArray[iNode])
-               EXCEPTION(runtime_error,"LoadCellsOnEntity - "<<
+               EXCEPTION(std::runtime_error,"LoadCellsOnEntity - "<<
                          " aNbPoints("<<aNbPoints<<") "<<
                          "<= anArray["<<iElem<<"]"<<
                          "["<<iNode<<"]"<<
@@ -2454,7 +2482,7 @@ VISU_MedConvertor
   }catch(std::exception& exc){
     throw;
   }catch(...){
-    EXCEPTION(runtime_error,"Unknown exception !!!");
+    EXCEPTION(std::runtime_error,"Unknown exception !!!");
   }
 #endif
 
@@ -2547,7 +2575,7 @@ VISU_MedConvertor
   }catch(std::exception& exc){
     throw;
   }catch(...){
-    EXCEPTION(runtime_error,"Unknown exception !!!");
+    EXCEPTION(std::runtime_error,"Unknown exception !!!");
   }
 #endif
 
@@ -2876,13 +2904,13 @@ LoadValForTime(const MED::PWrapper& theMed,
                               aMKey2Profile,
                               aKey2Gauss);
   
-  InitGaussProfile(theMed,
-                  aMeshInfo,
-                  aTimeStampValue,
-                  theMeshOnEntity,
-                  aMEntity,
-                  aGeom2Size,
-                  theValForTime);
+  InitProfile(theMed,
+             aMeshInfo,
+             aTimeStampValue,
+             theMeshOnEntity,
+             aMEntity,
+             aGeom2Size,
+             theValForTime);
 
   LoadProfile(theMed,
              theMesh,
@@ -2890,12 +2918,18 @@ LoadValForTime(const MED::PWrapper& theMed,
              theValForTime,
              theMeshOnEntity);
   
-  if(theIsGauss)
+  if(theIsGauss) {
+    InitGaussMesh(aTimeStampValue,
+                 theMeshOnEntity,
+                 aGeom2Size,
+                 theValForTime);
+
     LoadGaussMesh(theMed,
                  theMesh,
                  aTimeStampValue,
                  theValForTime,
                  theMeshOnEntity);
+  }
   
   VISU::PMEDProfile aProfile = theValForTime->myProfile;
   VISU::TGeom2SubProfile& aGeom2SubProfile = aProfile->myGeom2SubProfile;
index 20ee98a6e8cee72857dc50886bf15ca8d6eb40f1..927c9f44cd578b8f493a21264575fee44b44e32e 100644 (file)
@@ -1,21 +1,28 @@
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VISU_MedConvertor.hxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_MedConvertor_HeaderFile
 #define VISU_MedConvertor_HeaderFile
 
@@ -195,12 +202,12 @@ namespace VISU
     virtual 
     vtkIdType 
     GetElemObjID(vtkIdType theID) const;
-
-   //! Reimplement the TSubProfileImpl::GetElemVTKID
+    
+    //! Reimplement the TSubProfileImpl::GetElemVTKID
     virtual 
     vtkIdType 
     GetElemVTKID(vtkIdType theID) const;
-    
+
     //! Gets memory size used by the instance (bytes).
     virtual
     unsigned long int
@@ -245,8 +252,7 @@ namespace VISU
     
     virtual
     vtkIdType
-    GetVTKID(const TGaussPointID& theID,
-            vtkIdType theStartID) const;  
+    GetVTKID( const TGaussPointID& theID ) const;  
 
     //! Gets memory size used by the instance (bytes).
     virtual
index dd12d509fc3584223ecb91cdea9e3c11d8a40e98..46ac29162af7b273bbdb90ca7e9c592af7149eb8 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   : 
 //  Author : 
 //  Module : SALOME
 //  $Header$
-
+//
 #include "VISU_MergeFilter.hxx"
 #include "VISU_MergeFilterUtilities.hxx"
 
index 09981c9bb033f49c0578301fc4b63656e8b0a916..d0a07f8677903ccf5b07e984b50577fa9b26a51f 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   : 
 //  Author : 
 //  Module : SALOME
 //  $Header$
-
+//
 #ifndef VISU_MergeFilter_H
 #define VISU_MergeFilter_H
 
index 488463696a9adf42b87fd34be88e554c3e2f9f19..63a9b040b3ccea94608ff21ccde1692882a73721 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   : 
 //  Author : 
 //  Module : SALOME
 //  $Header$
-
+//
 #include "VISU_MergeFilterUtilities.hxx"
 
 #include <vtkCellData.h>
@@ -81,6 +80,9 @@ namespace
       vtkCellData *anOutputCellData = theOutput->GetCellData();
       anOutputCellData->CopyAllocate(aCellData);
 
+      if(theVectorsDataSet && theVectorsDataSet != theScalarsDataSet)
+        anOutputCellData->CopyVectorsOff();
+
       vtkIdType aNbTuples = anIntersection.size();
       theOutput->Allocate(aNbTuples);
       vtkIdList *aCellIds = vtkIdList::New();
@@ -100,13 +102,68 @@ namespace
       aCellIds->Delete();
 
       theOutput->SetPoints(theInput->GetPoints());
+      
     }else{
       theOutput->CopyStructure(theInput);
       theOutput->GetCellData()->ShallowCopy(theScalarsDataSet->GetCellData());
     }
     theOutput->GetPointData()->ShallowCopy(theInput->GetPointData());
+    
+    //If need, copy vectors data.
+    if(theVectorsDataSet && theVectorsDataSet != theScalarsDataSet){
+      bool isVectorsOnCells = theVectorsDataSet->GetCellData()->GetVectors() != NULL;
+      bool isVectorsDataOnPoints = theVectorsDataSet->GetPointData()->GetVectors() != NULL;
+      if(isVectorsOnCells) {
+        CopyVectorsOnCells(theVectorsDataSet,theOutput);
+      }
+      else if(isVectorsDataOnPoints){
+        CopyVectorsOnPoints(theVectorsDataSet,theOutput);
+      }
+    }
   }
   
+  void CopyVectorsOnCells(vtkDataSet *theVectorsDataSet,
+                          vtkDataSet *theOutput)
+  {
+    vtkDataArray *anInputVectors = theVectorsDataSet->GetCellData()->GetVectors();
+    vtkDataArray *anOutputVectors = vtkDataArray::CreateDataArray(anInputVectors->GetDataType());
+    
+    //Clear output vector data
+    theOutput->GetCellData()->SetVectors(NULL);
+    
+    //Copy vectors data
+    vtkIntArray* anOutputIDMapper = GetIDMapper(theOutput,
+                                                TGetCellData(),
+                                                "VISU_CELLS_MAPPER");
+    
+    vtkIntArray* anInputIDMapper = GetIDMapper(theVectorsDataSet,
+                                               TGetCellData(),
+                                               "VISU_CELLS_MAPPER");
+    
+    TObjectIdArray anIntersection;
+    GetIntersection(anOutputIDMapper,
+                    anInputIDMapper,
+                    anIntersection);
+
+    vtkIdType aNbTuples = anIntersection.size();
+    anOutputVectors->SetNumberOfComponents(anInputVectors->GetNumberOfComponents());
+    anOutputVectors->SetNumberOfTuples(aNbTuples);
+    theOutput->GetCellData()->SetVectors(anOutputVectors);
+    anOutputVectors->Delete();
+    
+    TObjectId2TupleIdMap anOutputObjectId2TupleIdMap;
+    GetObjectId2TupleIdMap(anOutputIDMapper, anOutputObjectId2TupleIdMap);
+    
+    TObjectId2TupleIdMap anInputObjectId2TupleIdMap;
+    GetObjectId2TupleIdMap(anInputIDMapper, anInputObjectId2TupleIdMap);
+
+    for(vtkIdType iTupleId = 0; iTupleId < aNbTuples; iTupleId++ ){
+      TObjectId &anObjectId = anIntersection[iTupleId];
+      vtkIdType anOutputCellId  = anOutputObjectId2TupleIdMap[anObjectId];
+      vtkIdType anInputCellId = anInputObjectId2TupleIdMap[anObjectId];
+      anOutputVectors->SetTuple(anOutputCellId,anInputVectors->GetTuple(anInputCellId));
+    }
+  }
   
   //---------------------------------------------------------------
   template<class TDataSet>
@@ -182,7 +239,7 @@ namespace
        TEntityId anEntityId = *(aPointer + 1);
        TObjectId anObjectId(aCellId, anEntityId);
        TObjectId2TupleIdMap::iterator anIter = aGeomObjectId2TupleIdMap.find(anObjectId);
-       if(anIter != aDataObjectId2PointIdMap.end()){
+       if(anIter != aGeomObjectId2TupleIdMap.end()){
          // If the point exists in the geometry put it to output
          int aGeometryPointId = anIter->second;
          vtkFloatingPointType aCoords[3];
@@ -200,7 +257,118 @@ namespace
       theOutput->GetCellData()->ShallowCopy(theInput->GetCellData());
     }
     theOutput->GetPointData()->ShallowCopy(theScalarsDataSet->GetPointData());
+    
+    //If need, copy vectors data.
+    if(theVectorsDataSet && theVectorsDataSet != theScalarsDataSet){
+      bool isVectorsOnCells = theVectorsDataSet->GetCellData()->GetVectors() != NULL;
+      bool isVectorsDataOnPoints = theVectorsDataSet->GetPointData()->GetVectors() != NULL;
+
+      //Merge cells if need
+      //rnv
+      if(!IsDifferent(theGeometryPointMapper, theDataPointMapper)){
+        vtkIntArray* theGeometryCellMapper = GetIDMapper(theVectorsDataSet,
+                                                         TGetCellData(),
+                                                         "VISU_CELLS_MAPPER");
+        
+        vtkIntArray* theDataCellMapper = GetIDMapper(theScalarsDataSet,
+                                                     TGetCellData(),
+                                                     "VISU_CELLS_MAPPER");
+        
+          
+        if(IsDifferent(theGeometryCellMapper, theDataCellMapper)){
+          TObjectIdArray anIntersection;
+          
+          GetIntersection(theGeometryCellMapper,
+                          theDataCellMapper,
+                          anIntersection);
+    
+          TObjectId2TupleIdMap aGeomObjectId2TupleIdMap;
+          GetObjectId2TupleIdMap(theGeometryCellMapper, aGeomObjectId2TupleIdMap);
+      
+          TObjectId2TupleIdMap aDataObjectId2TupleIdMap;
+          GetObjectId2TupleIdMap(theDataCellMapper, aDataObjectId2TupleIdMap);
+      
+          vtkCellData *aCellData = theScalarsDataSet->GetCellData();
+          vtkCellData *anOutputCellData = theOutput->GetCellData();
+          anOutputCellData->CopyAllocate(aCellData);
+
+          vtkIdType aNbTuples = anIntersection.size();
+          theOutput->Allocate(aNbTuples);
+          vtkIdList *aCellIds = vtkIdList::New();
+          for(int aTupleId = 0; aTupleId < aNbTuples; aTupleId++){
+            TObjectId& anObjectId = anIntersection[aTupleId];
+            vtkIdType aCellId = aGeomObjectId2TupleIdMap[anObjectId];
+            vtkCell *aCell = theInput->GetCell(aCellId);
+            aCellIds->Reset();
+            vtkIdType aNbPointIds = aCell->PointIds->GetNumberOfIds();
+            for(vtkIdType anId = 0; anId < aNbPointIds; anId++)
+              aCellIds->InsertNextId(aCell->GetPointIds()->GetId(anId));
+            vtkIdType aCellType = theInput->GetCellType(aCellId);
+            vtkIdType aNewCellId = theOutput->InsertNextCell(aCellType, aCellIds);
+            vtkIdType aDataCellId = aDataObjectId2TupleIdMap[anObjectId];
+            anOutputCellData->CopyData(aCellData, aDataCellId, aNewCellId);
+          }
+          aCellIds->Delete();
+          
+        }
+      }
+        
+      if(isVectorsOnCells) {
+        CopyVectorsOnCells(theVectorsDataSet,theOutput);
+      }
+      else if(isVectorsDataOnPoints){
+        CopyVectorsOnPoints(theVectorsDataSet,theOutput);
+      }
+    }
+  }
+  
+  void CopyVectorsOnPoints(vtkDataSet *theVectorsDataSet,
+                          vtkDataSet *theOutput)
+  {
+    vtkDataArray *anInputVectors = theVectorsDataSet->GetPointData()->GetVectors();
+    
+    //Clear output vector data
+    theOutput->GetPointData()->SetVectors(NULL);
+    
+    vtkDataArray *anOutputVectors = vtkDataArray::CreateDataArray(anInputVectors->GetDataType());
+    
+    //Copy vectors data
+    vtkIntArray* anOutputIDMapper = GetIDMapper(theOutput,
+                                                TGetPointData(),
+                                                "VISU_POINTS_MAPPER");
+    
+    vtkIntArray* anInputIDMapper = GetIDMapper(theVectorsDataSet,
+                                               TGetPointData(),
+                                               "VISU_POINTS_MAPPER");
+    TObjectIdArray anIntersection;
+
+    GetIntersection(anOutputIDMapper,
+                    anInputIDMapper,
+                    anIntersection);
+    
+    vtkIdType aNbTuples = anIntersection.size();  
+    anOutputVectors->SetNumberOfComponents(anInputVectors->GetNumberOfComponents());
+    anOutputVectors->SetNumberOfTuples(aNbTuples);
+    
+    
+
+    TObjectId2TupleIdMap anOutputObjectId2TupleIdMap;
+    GetObjectId2TupleIdMap(anOutputIDMapper, anOutputObjectId2TupleIdMap);
+    
+    TObjectId2TupleIdMap anInputObjectId2TupleIdMap;
+    GetObjectId2TupleIdMap(anInputIDMapper, anInputObjectId2TupleIdMap);
+    
+    for(vtkIdType iTupleId = 0; iTupleId < aNbTuples; iTupleId++ ){
+      TObjectId& anObjectId = anIntersection[iTupleId];
+      vtkIdType anOutputPointId  = anOutputObjectId2TupleIdMap[anObjectId];
+      vtkIdType anInputPointId = anInputObjectId2TupleIdMap[anObjectId];
+      anOutputVectors->SetTuple(anOutputPointId,anInputVectors->GetTuple(anInputPointId));
+    }
+    
+    theOutput->GetPointData()->SetVectors(anOutputVectors);
+    anOutputVectors->Delete();
   }
+  
 
   //---------------------------------------------------------------
   typedef vtkDataArray* (vtkDataSetAttributes::* TGetAttribute)();
@@ -470,7 +638,29 @@ namespace VISU
     }
   }
 
-
+  //---------------------------------------------------------------
+  void 
+  GetObjectId2TupleGaussIdArray(vtkIntArray *theArray, 
+                                TObjectId2TupleGaussIdMap& theObjectId2TupleGaussIdMap)
+  {
+    theObjectId2TupleGaussIdMap.clear();
+    int* aPointer = theArray->GetPointer(0);
+    int aNbTuples = theArray->GetNumberOfTuples();
+    for(vtkIdType aTupleId = 0; aTupleId < aNbTuples; aTupleId++){
+      int aCellId = *aPointer;
+      TObjectId2TupleGaussIdMap::iterator it = theObjectId2TupleGaussIdMap.find(aCellId);
+      if(it == theObjectId2TupleGaussIdMap.end()){
+        TCellIdArray anIdArray;
+        anIdArray.push_back(aTupleId);
+        theObjectId2TupleGaussIdMap.insert(make_pair(aCellId,anIdArray));
+      }
+      else{
+        (*it).second.push_back(aTupleId);
+      }
+      aPointer += 2;
+    }
+  }
+  
   //---------------------------------------------------------------
   template<class TGetFieldData>
   vtkIntArray*
index 09b7b4db043114915c5f578fb62cee2006dd4ef1..52f74407724a9c4e444a46440f736b69e8c2bf44 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   : 
 //  Author : 
 //  Module : SALOME
 //  $Header$
-
+//
 #ifndef VISU_MergeFilterUtilities_H
 #define VISU_MergeFilterUtilities_H
 
@@ -55,6 +54,11 @@ namespace VISU
 
   typedef int TTupleId;
   typedef std::map<TObjectId, TTupleId> TObjectId2TupleIdMap;
+
+  typedef int TTupleCellID;
+  typedef int GeometryCellID;
+  typedef std::vector<TTupleCellID> TCellIdArray;
+  typedef std::map<GeometryCellID, TCellIdArray> TObjectId2TupleGaussIdMap;
   
   //---------------------------------------------------------------
   typedef vtkFieldData* (vtkDataSet::* TGetFieldData)();
@@ -83,6 +87,10 @@ namespace VISU
   void
   GetObjectId2TupleIdMap(vtkIntArray *theArray, 
                         TObjectId2TupleIdMap& theObjectId2TupleIdMap);
+
+  void
+  GetObjectId2TupleGaussIdArray(vtkIntArray *theArray,
+                                TObjectId2TupleGaussIdMap& theObjectId2TupleGaussIdMap);
   
   template<class TGetFieldData>
   vtkIntArray*
index 4b7a27850707429468f61c9506cbb62c8f8d458d..a4cee7660ce2e7ef75357a254719dc6f480a0731 100644 (file)
@@ -1,35 +1,36 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File:
 //  Author:
 //  Module : VISU
-
+//
 #include "VISU_MeshValue.hxx"
+#include "VISU_ElnoMeshValue.hxx"
 #include "VISU_Structures_impl.hxx"
 #include "VISU_ConvertorUtils.hxx"
 
 #include "VISU_PointCoords.hxx"
-#include "VISU_TypeList.hxx"
+#include "VISU_VTKTypeList.hxx"
 
 #include <vtkUnstructuredGrid.h>
 #include <vtkPolyData.h>
@@ -113,76 +114,6 @@ namespace VISU
   }
 
 
-  namespace TL
-  {
-    //----------------------------------------------------------------------------
-    typedef TList<char,
-                 TList<unsigned char,
-                       TList<short,
-                             TList<unsigned short,
-                                   TList<int,
-                                         TList<unsigned int,
-                                               TList<long,
-                                                     TList<unsigned long, 
-                                                           TList<float, 
-                                                                 TList<double, 
-                                                                       TNullType> > > > > > > > > >
-    TVTKBasicTypeList;
-    
-
-    //----------------------------------------------------------------------------
-    typedef TList<vtkCharArray,
-                 TList<vtkUnsignedCharArray,
-                       TList<vtkShortArray,
-                             TList<vtkUnsignedShortArray,
-                                   TList<vtkIntArray,
-                                         TList<vtkUnsignedIntArray,
-                                               TList<vtkLongArray,
-                                                     TList<vtkUnsignedLongArray, 
-                                                           TList<vtkFloatArray, 
-                                                                 TList<vtkDoubleArray, 
-                                                                             TNullType> > > > > > > > > >
-    TVTKArrayTypeList;
-    
-
-    typedef TList<TInt2Type<VTK_CHAR>,
-                 TList<TInt2Type<VTK_UNSIGNED_CHAR>,
-                       TList<TInt2Type<VTK_SHORT>,
-                             TList<TInt2Type<VTK_UNSIGNED_SHORT>,
-                                   TList<TInt2Type<VTK_INT>,
-                                         TList<TInt2Type<VTK_UNSIGNED_INT>,
-                                               TList<TInt2Type<VTK_LONG>,
-                                                     TList<TInt2Type<VTK_UNSIGNED_LONG>,
-                                                           TList<TInt2Type<VTK_FLOAT>, 
-                                                                 TList<TInt2Type<VTK_DOUBLE>, 
-                                                                       TNullType> > > > > > > > > >
-    TVTKBasicEnumList;
-    
-
-    //----------------------------------------------------------------------------
-    template <unsigned int type_enum>
-    struct TEnum2VTKBasicType
-    {
-      typedef typename TTypeAt<TVTKBasicTypeList, TIndexOf<TVTKBasicEnumList, TInt2Type<type_enum> >::value >::TResult TResult;
-    };
-    
-    //----------------------------------------------------------------------------
-    template <unsigned int type_enum>
-    struct TEnum2VTKArrayType
-    {
-      typedef typename TTypeAt<TVTKArrayTypeList, TIndexOf<TVTKBasicEnumList, TInt2Type<type_enum> >::value >::TResult TResult;
-    };
-    
-    //----------------------------------------------------------------------------
-    template <class T>
-    struct TVTKBasicType2Enum
-    {
-      typedef typename TTypeAt<TVTKBasicEnumList, TIndexOf<TVTKBasicTypeList, T>::value >::TResult TResult;
-    };
-    
-  }
-
-
   //----------------------------------------------------------------------------
   template<int EDataType>
   void 
@@ -302,7 +233,7 @@ namespace VISU
            const PValForTimeImpl& theValForTime)
     {
       vtkIdType aNbComp = theField->myNbComp;
-      vtkIdType aSize = std::max(3, aNbComp);
+      vtkIdType aSize = std::max(vtkIdType(3), aNbComp);
       TVector<TVTKBasicType> aDataValues(aSize);
       
       const TGeom2MeshValue& aGeom2MeshValue = theValForTime->GetGeom2MeshValue();
@@ -349,7 +280,7 @@ namespace VISU
     std::string aFieldName = VISU::GenerateFieldName(theField, theValForTime);
     
     vtkDataSetAttributes* aDataSetAttributes;
-    switch(theEntity){
+    switch ( theEntity ) {
     case VISU::NODE_ENTITY : 
       aDataSetAttributes = theSource->GetPointData();
       break;
@@ -360,49 +291,51 @@ namespace VISU
     typedef typename TL::TEnum2VTKArrayType<EDataType>::TResult TVTKDataArray;
     TVTKDataArray *aSelectedDataArray = TVTKDataArray::New();
     vtkIdType aNbComp = theField->myNbComp;
-    switch(aNbComp) {
+
+    switch ( aNbComp ) {
     case 1:
-      aSelectedDataArray->SetNumberOfComponents(1);
-      aDataSetAttributes->SetScalars(aSelectedDataArray);
+      aSelectedDataArray->SetNumberOfComponents( 1 );
+      aDataSetAttributes->SetScalars( aSelectedDataArray );
       break;
     default:
-      aSelectedDataArray->SetNumberOfComponents(3);
-      aDataSetAttributes->SetVectors(aSelectedDataArray);
+      aSelectedDataArray->SetNumberOfComponents( 3 );
+      aDataSetAttributes->SetVectors( aSelectedDataArray );
     }
-    aSelectedDataArray->SetNumberOfTuples(aNbTuples);
-    aSelectedDataArray->SetName(aFieldName.c_str());
+    aSelectedDataArray->SetNumberOfTuples( aNbTuples );
+    aSelectedDataArray->SetName( aFieldName.c_str() );
 
     TVTKDataArray *aFullDataArray = TVTKDataArray::New();
-    aFullDataArray->SetNumberOfComponents(aNbComp);
-    aFullDataArray->SetNumberOfTuples(aNbTuples);
-    aFullDataArray->SetName("VISU_FIELD");
-    aDataSetAttributes->AddArray(aFullDataArray);
+    aFullDataArray->SetNumberOfComponents( aNbComp );
+    aFullDataArray->SetNumberOfTuples( aNbTuples );
+    aFullDataArray->SetName( "VISU_FIELD" );
+    aDataSetAttributes->AddArray( aFullDataArray );
 
     INITMSG(MYDEBUG,"InitTimeStampOnProfile "<<
            "- theEntity = "<<theEntity<<
            "; aNbTuples = "<<aNbTuples<<
            "; aNbComp = "<<aNbComp<<
            std::endl);
+
     TTimerLog aTimerLog(MYDEBUG,"InitTimeStampOnProfile");
     
     const TGeom2MeshValue& aGeom2MeshValue = theValForTime->GetGeom2MeshValue();
-    typedef typename TL::TEnum2VTKBasicType<EDataType>::TResult TVTKBasicType;
-    typedef TTMeshValue<TVTKBasicType> TMeshValue;
-    typedef MED::SharedPtr<TMeshValue> TMeshValuePtr;
+    typedef typename TL::TEnum2VTKBasicType< EDataType >::TResult TVTKBasicType;
+    typedef TTMeshValue< TVTKBasicType > TMeshValue;
+    typedef MED::SharedPtr< TMeshValue > TMeshValuePtr;
 
-    typedef TDataArrayHolder<EDataType> TTDataArrayHolder;
-    typedef MED::SharedPtr<TTDataArrayHolder> PDataArrayHolder;
+    typedef TDataArrayHolder< EDataType > TTDataArrayHolder;
+    typedef MED::SharedPtr< TTDataArrayHolder > PDataArrayHolder;
 
     TMeshValuePtr aMeshValue = theValForTime->GetFirstMeshValue();
-    if(aGeom2MeshValue.size() == 1 && aMeshValue->GetNbGauss() == 1){
+    if ( aGeom2MeshValue.size() == 1 && aMeshValue->GetNbGauss() == 1 ) {
       aFullDataArray->SetVoidArray(aMeshValue->GetPointer(),
                                   aMeshValue->size(),
                                   true);
       INITMSG(MYDEBUG,"InitTimeStampOnProfile - aFullDataArray->SetVoidArray()"<<std::endl);
-      if(aNbComp == 1){
-       aSelectedDataArray->SetVoidArray(aMeshValue->GetPointer(),
-                                        aMeshValue->size(),
-                                        true);
+      if ( aNbComp == 1 ) {
+       aSelectedDataArray->SetVoidArray( aMeshValue->GetPointer(),
+                                         aMeshValue->size(),
+                                         true );
        INITMSG(MYDEBUG,"InitTimeStampOnProfile - aSelectedDataArray->SetVoidArray()"<<std::endl);
       }else{
        PDataArrayHolder aDataArrayHolder(new TTDataArrayHolder(aSelectedDataArray));
@@ -416,6 +349,66 @@ namespace VISU
 
     aSelectedDataArray->Delete();
     aFullDataArray->Delete();
+
+    // Process the case for ELNO data
+    //-------------------------------
+    if ( theField->myIsELNO ) {
+      // To calculate effective number of components for the VTK compatibel ELNO data representation
+      vtkIdType aEffectNbTuples = 0;
+      TGeom2MeshValue::const_iterator anIter = aGeom2MeshValue.begin();
+      for ( ; anIter != aGeom2MeshValue.end(); anIter++ ) {
+       const PMeshValue& aMeshValue = anIter->second;
+       aEffectNbTuples += aMeshValue->GetNbElem() * aMeshValue->GetNbGauss();
+      }
+
+      vtkIdType anEffectNbComp = ( aEffectNbTuples * aNbComp ) / aNbTuples + 1;
+    
+      // To create corresponding VTK representation for the ELNO data
+      TSetElnoNodeData< EDataType > aSetElnoNodeData( anEffectNbComp,
+                                                     aNbComp,
+                                                     aNbTuples,
+                                                     "ELNO_FIELD",
+                                                     "ELNO_COMPONENT_MAPPER" );
+
+      std::vector< TVTKBasicType > aDataValues( aNbComp ); // To reserve a temproary value holder
+
+      // To initilize these VTK representation for the ELNO data from the MED
+      anIter = aGeom2MeshValue.begin();
+      for ( ; anIter != aGeom2MeshValue.end(); anIter++ ) {
+       EGeometry aEGeom = anIter->first;
+       const TMeshValuePtr aMeshValue = anIter->second;
+       
+       vtkIdType aNbElem = aMeshValue->GetNbElem();
+       vtkIdType aNbGauss = aMeshValue->GetNbGauss();
+       
+       INITMSG(MYDEBUG,
+               "- aEGeom = "<<aEGeom<<
+               "; aNbElem = "<<aNbElem<<
+               "; aNbGauss = "<<aNbGauss<<
+               std::endl);
+        std::vector<int> med2visu(aNbGauss);
+        InitMed2VisuArray(med2visu,aEGeom);
+       for ( vtkIdType iElem = 0; iElem < aNbElem; iElem++ ) {
+          const typename TMeshValue::TValueSliceArr& aValueSliceArr = aMeshValue->GetGaussValueSliceArr( iElem );          
+
+          for( vtkIdType iGauss = 0; iGauss < aNbGauss; iGauss++ ) {
+            const typename TMeshValue::TCValueSlice& aValueSlice = aValueSliceArr[ med2visu[iGauss] ];
+
+            for( vtkIdType iComp = 0; iComp < aNbComp; iComp++ ) {
+              aDataValues[ iComp ] = aValueSlice[ iComp ];
+            }
+
+           aSetElnoNodeData.AddNextPointData( &aDataValues[ 0 ] );
+          }
+
+         aSetElnoNodeData.InsertNextCellData();
+       }
+      }
+      
+      // Assign the ELNO data on the corresponding VTK data set attribute 
+      aSetElnoNodeData.AddData( aDataSetAttributes );
+    }
+    //-------------------------------
   }
 
 
@@ -473,7 +466,7 @@ namespace VISU
            const PValForTimeImpl& theValForTime)
     {
       vtkIdType aNbComp = theField->myNbComp;
-      vtkIdType aSize = std::max(3, aNbComp);
+      vtkIdType aSize = std::max(vtkIdType(3), aNbComp);
       TVector<TVTKBasicType> aDataValues(aSize);
 
       const TGeom2MeshValue& aGeom2MeshValue = theValForTime->GetGeom2MeshValue();
@@ -610,6 +603,98 @@ namespace VISU
     aFullDataArray->Delete();
   }
 
+  
+  //----------------------------------------------------------------------------
 
-  //---------------------------------------------------------------
+  void InitMed2VisuArray(std::vector<int>& anArray, EGeometry aEGeom){
+    switch(aEGeom){
+#if !(defined(VTK_QUADRATIC_EDGE) && defined(VISU_USE_VTK_QUADRATIC)) && defined(VISU_ENABLE_QUADRATIC)
+    case eSEG3:
+      anArray[0] = 0;
+      anArray[2] = 1;  
+      anArray[1] = 2;
+      break;
+#endif
+
+#if !(defined(VTK_QUADRATIC_TRIANGLE) && defined(VISU_USE_VTK_QUADRATIC)) && defined(VISU_ENABLE_QUADRATIC)
+    case eTRIA6:
+      anArray[0] = 0;
+      anArray[2] = 1;  
+      anArray[4] = 2;  
+      
+      anArray[1] = 3;
+      anArray[3] = 4;  
+      anArray[5] = 5;
+      break;
+#endif
+
+#if !(defined(VTK_QUADRATIC_QUAD) && defined(VISU_USE_VTK_QUADRATIC)) && defined(VISU_ENABLE_QUADRATIC)
+    case eQUAD8:
+      anArray[0] = 0;
+      anArray[2] = 1;  
+      anArray[4] = 2;  
+      anArray[6] = 3;  
+      
+      anArray[1] = 4;
+      anArray[3] = 5;  
+      anArray[5] = 6;  
+      anArray[7] = 7;
+      break;
+#endif
+    case eTETRA4:
+      anArray[0] = 0;
+      anArray[1] = 2;
+      anArray[2] = 1;  
+      anArray[3] = 3;
+      break;
+    case ePYRA5:
+      anArray[0] = 0;
+      anArray[1] = 3;  
+      anArray[2] = 2;
+      anArray[3] = 1;  
+      anArray[4] = 4;
+      break;
+#if (defined(VTK_QUADRATIC_TETRA) && defined(VISU_USE_VTK_QUADRATIC)) && defined(VISU_ENABLE_QUADRATIC)
+    case eTETRA10:
+      anArray[0] = 0;
+      anArray[1] = 2;
+      anArray[2] = 1;  
+      anArray[3] = 3;  
+      
+      anArray[4] = 6;
+      anArray[5] = 5;
+      anArray[6] = 4;  
+      
+      anArray[7] = 7;  
+      anArray[8] = 9;  
+      anArray[9] = 8;
+      break;
+#endif
+
+#if (defined(VTK_QUADRATIC_PYRAMID) && defined(VISU_USE_VTK_QUADRATIC)) && defined(VISU_ENABLE_QUADRATIC)
+    case ePYRA13:
+      anArray[0] = 0;
+      anArray[1] = 3;
+      anArray[2] = 2;  
+      anArray[3] = 1;  
+      anArray[4] = 4;
+      
+      anArray[5] = 8;
+      anArray[6] = 7;  
+      anArray[7] = 6;  
+      anArray[8] = 5;  
+      
+      anArray[9] = 9;  
+      anArray[10] = 12;  
+      anArray[11] = 11;  
+      anArray[12] = 10;  
+      break;
+#endif
+    default:
+      for(int i=0;i<anArray.size();i++){
+        anArray[i] = i;
+      }
+      break;
+    }
+  }
 }
index f09fb783e36975d0effc28d7de7b717e4a0bd66a..4e42e7b2a95edebaa52e291b33df064514efac37 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU CONVERTOR :
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU CONVERTOR :
 //  File   : VISU_Convertor.hxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_MeshValue_HeaderFile
 #define VISU_MeshValue_HeaderFile
 
@@ -212,6 +212,9 @@ namespace VISU
                          const PFieldImpl& theField, 
                          const PValForTimeImpl& theValForTime);
 
+  void 
+  InitMed2VisuArray(std::vector<int>& anArray, EGeometry aEGeom);
+
 
   //---------------------------------------------------------------
 }
index 6d2e92092da11b7d94a80542dfcc42bfdbd75ce6..f48cdf2b7f170354549eb33fe043eac9a2bc7382 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File:
 //  Author:
 //  Module : VISU
-
+//
 #include "VISU_PointCoords.hxx"
 #include "VISU_ConvertorUtils.hxx"
 
index d6a60902d4378177dee1b2da1826ecd298711969..f8624c612ccf7f112f98f560fd8b8765af8c697c 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU CONVERTOR :
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU CONVERTOR :
 //  File   : VISU_Convertor.hxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_PointCoords_HeaderFile
 #define VISU_PointCoords_HeaderFile
 
index 35e2791fe99866b5122b55413ca25c4ec91ea90b..ec123971b8eb129e67e40bf5a0ffcf96a5a38033 100644 (file)
@@ -1,29 +1,28 @@
-//  
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File:    
 //  Author:  Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_Structures.hxx"
 
 
@@ -78,7 +77,8 @@ namespace VISU
   ::TField(): 
     myNbComp(0),
     myEntity(TEntity(-1)),
-    myIsMinMaxInitilized(false)
+    myIsMinMaxInitilized(false),
+    myIsELNO( false )
   {}
   
   
index 06d2fadcc2a4c14d580c614424f6649ffef31c1a..eaa8524594aee3e5f4237f5b187c41f178926ef9 100644 (file)
@@ -1,29 +1,28 @@
-//  
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : 
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_Structures_HeaderFile
 #define VISU_Structures_HeaderFile
 
@@ -90,8 +89,6 @@ namespace VISU
 
     std::string myGroupsEntry; //!< To simplify publication of the groups in a data tree
     std::string myFieldsEntry; //!< To simplify publication of the fiels in a data tree
-       
-    // MULTIPR
     std::string myPartsEntry; //!< To simplify publication of the parts in a data tree
 
     TMesh();
@@ -99,8 +96,6 @@ namespace VISU
   typedef std::map<std::string, PMesh> TMeshMap;
 
 
-  typedef std::map<VISU::TEntity,VISU::PNamedIDMapper> PNamedIDMapperMap;
-
   //---------------------------------------------------------------
   //! Define a basic class which corresponds to MED PROFILE entity
   struct VISU_CONVERTOR_EXPORT TSubProfile: virtual TBaseStructure
@@ -223,6 +218,7 @@ namespace VISU
     TNames myCompNames; //!< Contains names of components of the MED FIELD
     TNames myUnitNames; //!< Contains names of units of the MED FIELD
     vtkIdType myNbComp; //!< Keeps number of components for the MED FIELD
+    bool myIsELNO;      //!< Defines whether this field contains specific "ELNO" data or not
 
     //! Calculate min/max values for each of the MED FIELD components among all its timestamps
     /*!
@@ -233,6 +229,11 @@ namespace VISU
     TMinMax 
     GetMinMax(vtkIdType theCompID) = 0;
     
+    //! Calculate average min/max values for each of the MED FIELD components among all its timestamps
+    virtual
+    TMinMax 
+    GetAverageMinMax(vtkIdType theCompID) = 0;
+    
     bool myIsMinMaxInitilized; //!< Is the min / max values are calculated
 
     TField();
index a00e8e90930efc9e23327189fc558fd6846ee4c1..589435e0fbd1bb097e15d1720e92f934cae139e7 100644 (file)
@@ -1,29 +1,28 @@
-//  
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File:    
 //  Author:  Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_Structures_impl.hxx"
 #include "VISU_PointCoords.hxx"
 #include "VISU_MeshValue.hxx"
@@ -631,13 +630,10 @@ namespace VISU
 
 
   //---------------------------------------------------------------
-  
-  
   TUnstructuredGridIDMapperImpl
-  ::TUnstructuredGridIDMapperImpl():
-    myIsSpecialKey(false)
+  ::TUnstructuredGridIDMapperImpl()
   {
-    if(!myCommonCellsFilter.GetPointer()){
+    if ( !myCommonCellsFilter.GetPointer() ) {
       myCommonCellsFilter = VISU_CommonCellsFilter::New();
       myCommonCellsFilter->Delete();
     }
@@ -685,46 +681,44 @@ namespace VISU
     return myIDMapper->GetElemCell(theObjID);
   }
   
-  vtkUnstructuredGrid* 
+  void 
   TUnstructuredGridIDMapperImpl
-  ::GetUnstructuredGridOutput()
+  ::SetReferencedMesh( const PNamedIDMapper& theNamedIDMapper )
   {
-    if(!myFilter.GetPointer()){
-      
+    myCommonCellsFilter->SetCellsUG( theNamedIDMapper->GetUnstructuredGridOutput() );
+  }
+
+  void 
+  TUnstructuredGridIDMapperImpl
+  ::Build()
+  {
+    if ( !myFilter.GetPointer() ) {
       const PAppendFilter& anAppendFilter = myIDMapper->GetFilter();
-      vtkUnstructuredGrid* aGeometry;
 
+      vtkUnstructuredGrid* aGeometry = anAppendFilter->GetOutput();
       const PUnstructuredGrid& aSource = mySource.GetSource();
-      vtkUnstructuredGrid* aDataSet;
-      
-      if(myIsSpecialKey){
-        PNamedIDMapperMap::iterator aIter;
-        aIter = myMappers.find(VISU::CELL_ENTITY);
-        if(aIter!=myMappers.end()) myCommonCellsFilter->SetCellsUG((aIter->second)->GetUnstructuredGridOutput());
-        else {
-          aIter = myMappers.find(VISU::FACE_ENTITY);
-          if(aIter!=myMappers.end()) myCommonCellsFilter->SetCellsUG((aIter->second)->GetUnstructuredGridOutput());
-          else {
-            aIter = myMappers.find(VISU::EDGE_ENTITY);
-            if(aIter!=myMappers.end()) myCommonCellsFilter->SetCellsUG((aIter->second)->GetUnstructuredGridOutput());
-          }
-        }
-      }
-      
-      aGeometry = anAppendFilter->GetOutput();
-      aDataSet = aSource.GetPointer();
-      aDataSet->ShallowCopy(aGeometry);
+      vtkUnstructuredGrid* aDataSet = aSource.GetPointer();
+      aDataSet->ShallowCopy( aGeometry );
 
       const PMergeFilter& aFilter = GetFilter();
-      aFilter->SetGeometry(aGeometry);
-      aFilter->SetScalars(aDataSet);
-      aFilter->SetVectors(aDataSet);
-      aFilter->AddField("VISU_FIELD",aDataSet);
-      aFilter->AddField("VISU_CELLS_MAPPER",aDataSet);
-      aFilter->AddField("VISU_POINTS_MAPPER",aDataSet);
-
-      myCommonCellsFilter->SetProfileUG(aFilter->GetUnstructuredGridOutput());
+      aFilter->SetGeometry( aGeometry );
+      aFilter->SetScalars( aDataSet );
+      aFilter->SetVectors( aDataSet );
+      aFilter->AddField( "VISU_FIELD", aDataSet );
+      aFilter->AddField( "VISU_CELLS_MAPPER", aDataSet );
+      aFilter->AddField( "ELNO_FIELD", aDataSet );
+      aFilter->AddField( "ELNO_COMPONENT_MAPPER", aDataSet );
+      aFilter->AddField( "VISU_POINTS_MAPPER", aDataSet );
+                                                     
+      myCommonCellsFilter->SetProfileUG( aFilter->GetUnstructuredGridOutput() );
     } 
+  }
+
+  vtkUnstructuredGrid* 
+  TUnstructuredGridIDMapperImpl
+  ::GetUnstructuredGridOutput()
+  {
+    Build();
     return myCommonCellsFilter->GetOutput();
   }
 
@@ -735,17 +729,25 @@ namespace VISU
     return GetUnstructuredGridOutput();
   }
 
+  PUnstructuredGrid 
+  TUnstructuredGridIDMapperImpl
+  ::GetSource()
+  {
+    Build();
+    return mySource.GetSource();
+  }
+
   unsigned long int
   TUnstructuredGridIDMapperImpl
   ::GetMemorySize()
   {
     size_t aSize = myIDMapper->GetMemorySize();
+
     aSize += mySource.GetMemorySize();
-    if(vtkUnstructuredGrid* anOutput = myCommonCellsFilter->GetOutput())
+
+    if ( vtkUnstructuredGrid* anOutput = myCommonCellsFilter->GetOutput() )
       aSize += anOutput->GetActualMemorySize() * 1024;
-    PNamedIDMapperMap::const_iterator aIter = myMappers.begin();
-    for(;aIter!=myMappers.end();aIter++)
-      aSize += (aIter->second)->GetMemorySize();
+
     return aSize;
   }
 
@@ -792,26 +794,33 @@ namespace VISU
     return myIDMapper->GetElemCell(theObjID);
   }
   
-  vtkPolyData* 
+  void 
   TPolyDataIDMapperImpl
-  ::GetPolyDataOutput()
+  ::Build()
   {
-    if(!myFilter.GetPointer()){
+    if ( !myFilter.GetPointer() ) {
       const PAppendPolyData& anAppendFilter = myIDMapper->GetFilter();
       vtkPolyData* aGeometry = anAppendFilter->GetOutput();
       
       const PPolyData& aSource = mySource.GetSource();
       vtkPolyData* aDataSet = aSource.GetPointer();
-      aDataSet->ShallowCopy(aGeometry);
+      aDataSet->ShallowCopy( aGeometry );
       
       const PMergeFilter& aFilter = GetFilter();
-      aFilter->SetGeometry(aGeometry);
-      aFilter->SetScalars(aDataSet);
-      aFilter->SetVectors(aDataSet);
-      aFilter->AddField("VISU_FIELD",aDataSet);
-      aFilter->AddField("VISU_CELLS_MAPPER",aDataSet);
-      aFilter->AddField("VISU_POINTS_MAPPER",aDataSet);
+      aFilter->SetGeometry( aGeometry );
+      aFilter->SetScalars( aDataSet );
+      aFilter->SetVectors( aDataSet );
+      aFilter->AddField( "VISU_FIELD", aDataSet );
+      aFilter->AddField( "VISU_CELLS_MAPPER", aDataSet );
+      aFilter->AddField( "VISU_POINTS_MAPPER", aDataSet );
     }
+  }
+
+  vtkPolyData* 
+  TPolyDataIDMapperImpl
+  ::GetPolyDataOutput()
+  {
+    Build();
     return myFilter->GetPolyDataOutput();
   }
 
@@ -822,6 +831,14 @@ namespace VISU
     return GetPolyDataOutput();
   }
 
+  PPolyData 
+  TPolyDataIDMapperImpl
+  ::GetSource()
+  {
+    Build();
+    return mySource.GetSource();
+  }
+
   unsigned long int
   TPolyDataIDMapperImpl
   ::GetMemorySize()
@@ -973,7 +990,6 @@ namespace VISU
       return aResult;
       
     size_t aSubMeshEnd = myGaussSubMeshArr.size();
-    const PAppendFilter& anAppendFilter = GetFilter();
     const PGaussSubMeshImpl& aGaussSubMesh = anIter->second;
     for ( size_t aSubMeshId = 0; aSubMeshId < aSubMeshEnd; aSubMeshId++ ) {
       const PGaussSubMeshImpl& aSubMesh = myGaussSubMeshArr[aSubMeshId];
@@ -1058,6 +1074,16 @@ namespace VISU
     myStartID(0)
   {}
 
+  void
+  TSubMeshImpl
+  ::CopyStructure( PStructured theStructured )
+  {
+    TStructured::CopyStructure( theStructured );
+
+    if ( PMeshImpl aMesh = theStructured ) 
+      GetSource()->ShallowCopy( aMesh->GetPointSet() );    
+  }
+
   vtkIdType
   TSubMeshImpl
   ::GetElemObjID(vtkIdType theID) const
@@ -1092,6 +1118,16 @@ namespace VISU
     anAppendFilter->SetMappingInputs(true);
   }
 
+  void
+  TMeshOnEntityImpl
+  ::CopyStructure( PStructured theStructured )
+  {
+    TStructured::CopyStructure( theStructured );
+
+    if ( PMeshImpl aMesh = theStructured ) 
+      myNamedPointCoords = aMesh->myNamedPointCoords;    
+  }
+
   vtkIdType
   TMeshOnEntityImpl
   ::GetNodeVTKID(vtkIdType theID) const
@@ -1161,6 +1197,18 @@ namespace VISU
   }
 
   //---------------------------------------------------------------
+  void
+  TFamilyImpl
+  ::CopyStructure( PStructured theStructured )
+  {
+    TStructured::CopyStructure( theStructured );
+
+    if ( PMeshImpl aMesh = theStructured ) {
+      myNamedPointCoords = aMesh->myNamedPointCoords;
+      GetSource()->ShallowCopy( aMesh->GetPointSet() );
+    }
+  }
+
   vtkIdType
   TFamilyImpl
   ::GetElemVTKID(vtkIdType theID) const
@@ -1223,6 +1271,16 @@ namespace VISU
 
 
   //---------------------------------------------------------------
+  void
+  TGroupImpl
+  ::CopyStructure( PStructured theStructured )
+  {
+    TStructured::CopyStructure( theStructured );
+
+    if ( PMeshImpl aMesh = theStructured ) 
+      myNamedPointCoords = aMesh->myNamedPointCoords;
+  }
+
   TNbASizeCells 
   TGroupImpl
   ::GetNbASizeCells() const
@@ -1297,9 +1355,9 @@ namespace VISU
   
   //---------------------------------------------------------------
   TFieldImpl
-  ::TFieldImpl()
-    myDataSize(0),
-    myDataType(0)
+  ::TFieldImpl()
+    : myDataSize( 0 )
+    , myDataType( 0 )
   {}
 
   void 
@@ -1312,10 +1370,14 @@ namespace VISU
     myCompNames.resize(theNbComp);
     myUnitNames.resize(theNbComp);
     myMinMaxArr.resize(theNbComp + 1);
+    myAverageMinMaxArr.resize(theNbComp + 1);
     for(vtkIdType iComp = 0; iComp <= theNbComp; iComp++){
       TMinMax& aMinMax = myMinMaxArr[iComp];
       aMinMax.first = VTK_LARGE_FLOAT;
       aMinMax.second = -VTK_LARGE_FLOAT;
+      TMinMax& anAverageMinMax = myAverageMinMaxArr[iComp];
+      anAverageMinMax.first = VTK_LARGE_FLOAT;
+      anAverageMinMax.second = -VTK_LARGE_FLOAT;
     }
   }
 
@@ -1334,6 +1396,13 @@ namespace VISU
   }
 
 
+  TMinMax 
+  TFieldImpl
+  ::GetAverageMinMax(vtkIdType theCompID)
+  {
+    return myAverageMinMaxArr[theCompID];
+  }
+  
   //----------------------------------------------------------------------------
   const PMeshValue& 
   TGeom2Value
index 71b078b873dba68a9369e127802effa8cd033496..3140245f1ab358a1595941ffdcc647449740e0c1 100644 (file)
@@ -1,29 +1,28 @@
-//  
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : 
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_Structures_impl_HeaderFile
 #define VISU_Structures_impl_HeaderFile
 
@@ -137,36 +136,6 @@ namespace VISU
   /*!
     This container allow to combine other VTK representation into single one.
   */
-  class VISU_CONVERTOR_EXPORT TCommonCellsFilterHolder: public virtual TMemoryCheckIDMapper
-  {
-  protected:
-    mutable PCommonCellsFilter myFilter;
-    mutable PMergeFilter myMergeFilter;
-  public:
-    TCommonCellsFilterHolder();
-
-    //! This method allow to create corresponding VTK filter by demand (not at once)
-    const PCommonCellsFilter& 
-    GetFilter() const;
-
-    //! Reimplement the TNamedIDMapper::GetUnstructuredGridOutput
-    virtual
-    vtkUnstructuredGrid* 
-    GetUnstructuredGridOutput();
-
-    virtual
-    unsigned long int
-    GetMemorySize();
-
-    //! if false, TIDCommonCellsFilter - same as TIDMapperFilter
-    //! if true, TIDCommonCellsFilter - use VISU_CommonCellsFilter
-    bool myIsSpecialKey;
-
-    //! Vector of id mappers, which consist of meshonentity in next sequence:
-    //! CELL_ENTITY,FACE_ENTITY,EDGE_ENTITY
-    PNamedIDMapperMap myMappers;
-  };
-
   //---------------------------------------------------------------
   //! Define a container for VTK representation
   /*!
@@ -250,7 +219,7 @@ namespace VISU
     //! Get object number of mesh cell by its VTK one
     virtual 
     vtkIdType 
-    GetElemObjID(int theVtkI) const;
+    GetElemObjID(vtkIdType theVtkI) const;
 
     //! Get cell VTK ID for corresponding object ID
     virtual
@@ -348,9 +317,8 @@ namespace VISU
   struct TUnstructuredGridIDMapperImpl: virtual TMergeFilterHolder,
                                        virtual TUnstructuredGridIDMapper
   {
-    PAppendFilterHolder       myIDMapper; //!< Responsible for numbering
-    PCommonCellsFilter        myCommonCellsFilter;
-    TUnstructuredGridHolder   mySource; //!< Keeps assigned data
+    PAppendFilterHolder myIDMapper; //!< Responsible for numbering
+    PCommonCellsFilter myCommonCellsFilter;
 
     TUnstructuredGridIDMapperImpl();
     
@@ -399,13 +367,16 @@ namespace VISU
     unsigned long int
     GetMemorySize();
     
-    //! if false, Not using CommonCellsFilter
-    //! if true,  Using CommonCellsFilter
-    bool myIsSpecialKey;
+    void 
+    SetReferencedMesh( const PNamedIDMapper& theNamedIDMapper );
 
-    //! Vector of id mappers, which consist of meshonentity in next sequence:
-    //! CELL_ENTITY,FACE_ENTITY,EDGE_ENTITY
-    PNamedIDMapperMap myMappers;
+    PUnstructuredGrid 
+    GetSource();
+
+  protected:
+    void Build();
+
+    TUnstructuredGridHolder mySource; //!< Keeps assigned data
   };
 
   //---------------------------------------------------------------
@@ -414,7 +385,6 @@ namespace VISU
                                virtual TPolyDataIDMapper
   {
     PAppendPolyDataHolder myIDMapper; //!< Responsible for numbering
-    TPolyDataHolder mySource; //!< Keeps assigned data
 
     //! Reimplement the TIDMapper::GetNodeObjID
     virtual 
@@ -460,6 +430,14 @@ namespace VISU
     virtual
     unsigned long int
     GetMemorySize();
+
+    PPolyData 
+    GetSource();
+
+  protected:
+    void Build();
+
+    TPolyDataHolder mySource; //!< Keeps assigned data
   };
 
 
@@ -588,6 +566,7 @@ namespace VISU
     GetVTKID(const TGaussPointID& theID) const;
 
     //! Reimplements the TGaussPtsIDMapper::GetParent
+    //! Reimplement the TGaussPtsIDMapper::GetParent
     virtual 
     TNamedIDMapper*
     GetParent() const;
@@ -613,6 +592,11 @@ namespace VISU
   {
     TSubMeshImpl();
 
+    //! Reimplements the TStructured::CopyStructure
+    virtual
+    void
+    CopyStructure( PStructured theStructured );
+
     //! To implement the TIDMapper::GetElemObjID
     virtual 
     vtkIdType 
@@ -644,6 +628,11 @@ namespace VISU
   {
     TMeshOnEntityImpl();
 
+    //! Reimplements the TStructured::CopyStructure
+    virtual
+    void
+    CopyStructure( PStructured theStructured );
+
     //! Reimplement the TIDMapper::GetNodeVTKID
     virtual 
     vtkIdType 
@@ -699,6 +688,11 @@ namespace VISU
   struct VISU_CONVERTOR_EXPORT TFamilyImpl: virtual TFamily, 
                      virtual TUnstructuredGridHolder
   {
+    //! Reimplements the TStructured::CopyStructure
+    virtual
+    void
+    CopyStructure( PStructured theStructured );
+
     //! Reimplement the TIDMapper::GetNodeObjID
     vtkIdType 
     GetNodeObjID(vtkIdType theID) const ;
@@ -744,6 +738,11 @@ namespace VISU
   struct VISU_CONVERTOR_EXPORT TGroupImpl: virtual TGroup, 
                     virtual TAppendFilterHolder
   {
+    //! Reimplements the TStructured::CopyStructure
+    virtual
+    void
+    CopyStructure( PStructured theStructured );
+
     //! Calculate pair of values - number of cells and its size
     TNbASizeCells 
     GetNbASizeCells() const;
@@ -806,9 +805,16 @@ namespace VISU
     TMinMax 
     GetMinMax(vtkIdType theCompID);
 
+    //! Implement the TField::GetAverageMinMax
+    virtual
+    TMinMax 
+    GetAverageMinMax(vtkIdType theCompID);
+
     vtkIdType myDataSize; //!< Keeps size of the assigned data
     vtkIdType myDataType; //!< Keeps type idetificator of the mesh data
     TMinMaxArr myMinMaxArr; //!< Keeps min/max values for each component of the MED FIELD
+    TMinMaxArr myAverageMinMaxArr; //!< Keeps average by Gauss Points min/max values for each component of the MED FIELD
+                                   //!< If Nb of Gauss Points <=1 myAverageMinMaxArr equal myMinMaxArr
   };
 
 
diff --git a/src/CONVERTOR/VISU_TableReader.cxx b/src/CONVERTOR/VISU_TableReader.cxx
new file mode 100644 (file)
index 0000000..475771e
--- /dev/null
@@ -0,0 +1,401 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+//  File:
+//  Author:
+//  Module : VISU
+//
+#include "VISU_TableReader.hxx"
+
+#include <QFileInfo>
+#include <QString>
+#include <QRegExp>
+#include <QFile>
+#include <QStringList>
+
+#include <fstream>
+#include <iostream>
+#include <strstream>
+
+#include <vtkPoints.h>
+#include <vtkDoubleArray.h>
+#include <vtkPointData.h>
+#include <vtkCellData.h>
+#include <vtkPolyData.h>
+
+#include <vtkStructuredGrid.h>
+#include <vtkStructuredGridGeometryFilter.h>
+
+#ifdef _DEBUG_
+static int MYDEBUG = 0;
+#else
+static int MYDEBUG = 0;
+#endif
+
+
+//---------------------------------------------------------------
+int
+VISU::TTable2D
+::Check()
+{
+  if ( myRows.empty() ) 
+    return 0;
+
+  int iEnd = myRows[0].myValues.size();
+  if ( iEnd == 0 )
+    return 0;
+
+  if ( myColumnTitles.size() != iEnd ) 
+    myColumnTitles.resize( iEnd );
+
+  if ( myColumnUnits.size() != iEnd )
+    myColumnUnits.resize( iEnd );
+
+  int jEnd = myRows.size();
+  for ( int j = 0; j < jEnd; j++ )
+    if ( myRows[j].myValues.size() != iEnd )
+      return 0;
+
+  return 1;
+}
+
+
+//---------------------------------------------------------------
+void
+VISU::TTable2D
+::getColumns(VISU::TTable2D& theTable2D) const
+{
+  TRows& aRows = theTable2D.myRows;
+  aRows.clear();
+  if ( myRows.empty() )
+    return;
+
+  int jEnd = myRows.size();
+
+  //Define Titles & Units
+  theTable2D.myColumnTitles.resize(jEnd);
+  theTable2D.myColumnUnits.resize(jEnd);
+  for ( int j = 0; j < jEnd; j++ ) {
+    theTable2D.myColumnTitles[j] = myRows[j].myTitle;
+    theTable2D.myColumnUnits[j] = myRows[j].myUnit;
+  }
+
+  //Define Rows
+  int iEnd = myRows[0].myValues.size();
+  for ( int i = 0; i < iEnd; i++ ) {
+    TRow aNewRow;
+    aNewRow.myTitle = myColumnTitles[i];
+    aNewRow.myUnit = myColumnUnits[i];
+    aNewRow.myValues.resize(jEnd);
+    for ( int j = 0; j < jEnd; j++ ) {
+      aNewRow.myValues[j] = myRows[j].myValues[i];
+    }
+    aRows.push_back(aNewRow);
+  }
+}
+
+
+//---------------------------------------------------------------
+namespace
+{
+  int getLine( std::ifstream& theStmIn, QString& theString )
+  {
+    char tmp;
+    std::ostrstream aStrOut;
+
+    while ( theStmIn.get( tmp ) ) {
+      aStrOut<<tmp;
+      if ( tmp == '\n' ) 
+       break;
+    }
+
+    aStrOut<<std::ends;
+    theString = aStrOut.str();
+
+    return !theStmIn.eof();
+  }
+}
+
+
+//---------------------------------------------------------------
+void 
+VISU::ImportTables( const char* theFileName, TTableContainer& theContainer )
+{
+  std::ifstream aStmIn;
+  QFileInfo aFileInfo( theFileName );
+  if( !aFileInfo.isFile() || !aFileInfo.isReadable() || !aFileInfo.size() )
+    return;
+
+  aStmIn.open( theFileName );
+  QString aTmp;
+  do {
+    // find beginning of table (tables are separated by empty lines)
+    while( ::getLine( aStmIn, aTmp ) && aTmp.trimmed() == "");
+
+    PTableIDMapper aTableIDMapper( new TTableIDMapper() );
+    TTable2D& aTable2D = *aTableIDMapper;
+    if(MYDEBUG) std::cout << "New table is found" << std::endl;
+
+    while( !aStmIn.eof() && aTmp.trimmed() != "" ){
+      QString data = aTmp.trimmed();
+      QString cmt = "";
+      QString keyword = "";
+      // split string to data and comment (comment starts from '#' symbol)
+      int index = aTmp.indexOf( "#" );
+      if ( index >= 0 ) {
+       data = aTmp.left( index ).trimmed();
+       cmt = aTmp.mid( index+1 ).trimmed();
+      }
+      // if comment is not empty, try to get keyword from it (separated by ':' symbol)
+      if ( !cmt.isEmpty() ) {
+       int index1 = cmt.indexOf( ":" );
+       if ( index1 >= 0 ) {
+         QString tmpstr = cmt.left( index1 ).trimmed();
+         if ( tmpstr == QString( "TITLE" ) ||
+              tmpstr == QString( "COLUMN_TITLES" ) ||
+              tmpstr == QString( "COLUMN_UNITS" ) ||
+              tmpstr == QString( "COMMENT" ) ) {
+           keyword = tmpstr;
+           cmt = cmt.mid( index1+1 ).trimmed();
+         }
+       }
+      }
+      // if data is empty, process only comment
+      if ( data.isEmpty() ) {
+       // if keyword is found, try to process it
+       // elsewise it is a simple comment, just ignore it
+       if ( !keyword.isEmpty() ) {
+         if ( keyword == QString( "TITLE" ) ) {
+           QString title = cmt;
+           if ( aTable2D.myTitle != "" )
+             title = QString( aTable2D.myTitle.c_str() ) + QString( " " ) + title;
+           if(MYDEBUG) std::cout << "...Table TITLE is: " << title.toLatin1().constData() << std::endl;
+           aTable2D.myTitle = title.toLatin1().constData();
+         }
+         else if ( keyword == QString( "COLUMN_TITLES" ) ) {
+           // comment may contain column headers
+           QStringList aStrList = cmt.split( "|", QString::SkipEmptyParts );
+           if(MYDEBUG) std::cout << "...Column TITLES are: ";
+           for ( int i = 0; i < aStrList.count(); i++ ) {
+             QString tmpstr = aStrList[ i ].trimmed();
+             if(MYDEBUG) std::cout << tmpstr.toLatin1().constData() << " ";
+             aTable2D.myColumnTitles.push_back( tmpstr.toLatin1().constData() );
+           }
+           if(MYDEBUG) std::cout << std::endl;
+         }
+         else if ( keyword == QString( "COLUMN_UNITS" ) ) {
+           // comment may contain column units
+           QStringList aStrList = cmt.split( " ", QString::SkipEmptyParts );
+           if(MYDEBUG) std::cout << "...Column UNITS are: ";
+           for ( int i = 0; i < aStrList.count(); i++ ) {
+             QString tmpstr = aStrList[ i ].trimmed();
+             if(MYDEBUG) std::cout << tmpstr.toLatin1().constData() << " ";
+             aTable2D.myColumnUnits.push_back( tmpstr.toLatin1().constData() );
+           }
+           if(MYDEBUG) std::cout << std::endl;
+         }
+         else if ( keyword == QString( "COMMENT" ) ) {
+           // keyword 'COMMENT' processing can be here
+           // currently it is ignored
+           if(MYDEBUG) std::cout << "...COMMENT: " << cmt.toLatin1().constData() << std::endl;
+         }
+       }
+       else {
+         if(MYDEBUG) std::cout << "...comment: " << cmt.toLatin1().constData() << std::endl;
+         // simple comment processing can be here
+         // currently it is ignored
+       }
+      }
+      // if data is not empty, try to process it
+      else {
+       TTable2D::TRow aRow;
+       if(MYDEBUG) std::cout << "...New row is found: " << std::endl;
+       if ( !cmt.isEmpty() ) {
+         aRow.myTitle = cmt.toLatin1().constData();
+         if(MYDEBUG) std::cout << "......ROW TITLE is: " << cmt.toLatin1().constData() << std::endl;
+       }
+       QString datar1 = data.replace(QRegExp("\t"), " ");
+       QStringList aValList = datar1.split( " ", QString::SkipEmptyParts );
+       for ( int i = 0; i < aValList.count(); i++ ) {
+         if ( aValList[i].trimmed() != "" ) {
+           TTable2D::TValue aVal = aValList[i].trimmed().toLatin1().constData();
+           aRow.myValues.push_back( aVal );
+         }
+       }
+       if( aRow.myValues.size() > 0 )
+         aTable2D.myRows.push_back( aRow );
+       // ************** OLD CODE ******************
+       /*
+       TValue aVal;
+       istrstream aStream( data );
+       aStream.precision( STRPRECISION );
+       while( aStream >> aVal ) {
+         aRow.myValues.push_back( aVal );
+       }
+       if( aRow.myValues.size() > 0 )
+         aTable2D.myRows.push_back( aRow );
+       */
+       // ************** OLD CODE ******************
+      }
+      ::getLine( aStmIn, aTmp );
+    }
+    if( aTable2D.Check() ) {
+      if(MYDEBUG) std::cout << "aTable2D is checked OK " << aTable2D.myTitle << std::endl;
+      theContainer.push_back( aTableIDMapper );
+    }
+  } while ( !aStmIn.eof() );
+  aStmIn.close();
+
+  if(MYDEBUG) std::cout << "After close" << std::endl;
+}
+
+
+//---------------------------------------------------------------
+VISU::TTableIDMapper
+::TTableIDMapper():
+  myOutput( vtkPolyData::New() ),
+  myXAxisPosition( -1 )
+{}
+
+VISU::TTableIDMapper
+::~TTableIDMapper()
+{
+  myOutput->Delete();
+}
+
+vtkPolyData*
+VISU::TTableIDMapper
+::GetPolyDataOutput()
+{
+  if ( myXAxisPosition == -1 )
+    SetXAxisPosition( 0 );
+
+  return myOutput;
+}
+
+long unsigned int
+VISU::TTableIDMapper
+::GetMemorySize()
+{
+  return myOutput->GetActualMemorySize() * 1024;
+}
+
+void
+VISU::TTableIDMapper
+::SetXAxisPosition( vtkIdType theAxisPosition )
+{
+  if ( myXAxisPosition == theAxisPosition || !Check() )
+    return;
+
+  myOutput->Initialize();
+
+  if ( !Check() )
+    return;
+
+  TTable2D aTable2D;
+  getColumns( aTable2D );
+  
+  vtkIdType aXSize = aTable2D.myRows[0].myValues.size();
+
+  // It is necessary to decrease the size at 1 take intoa account X axis
+  vtkIdType anYSize = aTable2D.myRows.size() - 1; 
+
+  vtkIdType aNbPoints = aXSize * anYSize;
+
+  std::vector<double> anXAxis(aXSize);
+  const TTable2D::TValues& aValues = aTable2D.myRows[theAxisPosition].myValues;
+  for ( vtkIdType aX = 0; aX < aXSize; aX++ )
+    anXAxis[aX] = atof( aValues[aX].c_str() );
+
+  double aXRange = anXAxis[aXSize - 1] - anXAxis[0];
+  double anYDelta = aXRange / anYSize;
+  std::vector<double> anYAxis(anYSize);
+  for ( vtkIdType anY = 0; anY < anYSize; anY++ )
+    anYAxis[anY] = anY * anYDelta;
+
+  vtkPoints* aPoints = vtkPoints::New();
+  aPoints->SetNumberOfPoints( aNbPoints );
+
+  vtkIntArray *aPointsIDMapper = vtkIntArray::New();
+  aPointsIDMapper->SetName("VISU_POINTS_MAPPER");
+  aPointsIDMapper->SetNumberOfComponents(2);
+  aPointsIDMapper->SetNumberOfTuples(aNbPoints);
+  int *aPointsIDMapperPtr = aPointsIDMapper->GetPointer(0);
+
+  //vtkIntArray *aCellIDMapper = vtkIntArray::New();
+  //aCellIDMapper->SetName("VISU_POINTS_MAPPER");
+  //aCellIDMapper->SetNumberOfComponents(2);
+  //aCellIDMapper->SetNumberOfTuples(aNbPoints);
+  //int *aCellIDMapperPtr = aCellIDMapper->GetPointer(0);
+
+  for ( vtkIdType aY = 0, aPntId = 0; aY < anYSize; aY++ ) {
+    for ( vtkIdType aX = 0; aX < aXSize; aX++, aPntId++ ) {
+      aPoints->SetPoint( aPntId, anXAxis[aX], anYAxis[aY], 0.0 );
+
+      *aPointsIDMapperPtr++ = aPntId;
+      *aPointsIDMapperPtr++ = 0;
+
+      //*aCellIDMapperPtr++ = aPntId;
+      //*aCellIDMapperPtr++ = 0;
+    }
+  }
+
+  std::vector<TValues> anYData;
+  for ( vtkIdType anY = 0; anY < anYSize + 1; anY++ ) {
+    if ( anY == theAxisPosition )
+      continue;
+    anYData.push_back( aTable2D.myRows[anY].myValues );
+  }
+
+  vtkDoubleArray* aScalars = vtkDoubleArray::New();
+  aScalars->SetNumberOfComponents( 1 );
+  aScalars->SetNumberOfTuples( aNbPoints );
+  double *aScalarsPtr = aScalars->GetPointer(0);
+  for ( vtkIdType anY = 0; anY < anYSize; anY++ ) {
+    const TTable2D::TValues& aValues = anYData[anY];
+    for ( vtkIdType aX = 0; aX < aXSize; aX++ ) {
+      double aValue = atof( aValues[aX].c_str() );
+      *aScalarsPtr++ = aValue;
+    }
+  }
+
+  vtkStructuredGrid* aStructuredGrid = vtkStructuredGrid::New();
+  aStructuredGrid->SetPoints( aPoints );
+  aPoints->Delete();
+
+  aStructuredGrid->SetDimensions( aXSize, anYSize, 1 );
+
+  aStructuredGrid->GetPointData()->AddArray( aPointsIDMapper );
+  aPointsIDMapper->Delete();
+
+  //aStructuredGrid->GetCellData()->AddArray( aCellIDMapper );
+  //aCellIDMapper->Delete();
+
+  aStructuredGrid->GetPointData()->SetScalars( aScalars );
+  aScalars->Delete();
+
+  vtkStructuredGridGeometryFilter* aFilter = vtkStructuredGridGeometryFilter::New();
+  aFilter->SetInput( aStructuredGrid );
+  aFilter->Update();
+  myOutput->ShallowCopy( aFilter->GetOutput() );
+  aFilter->Delete();
+}
diff --git a/src/CONVERTOR/VISU_TableReader.hxx b/src/CONVERTOR/VISU_TableReader.hxx
new file mode 100644 (file)
index 0000000..d01d916
--- /dev/null
@@ -0,0 +1,111 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU CONVERTOR :
+//  File   : VISU_TableReader.hxx
+//  Author : Alexey PETROV
+//  Module : VISU
+//
+#ifndef VISU_TableReader_HeaderFile
+#define VISU_TableReader_HeaderFile
+
+/*! 
+  \file VISU_TableReader.hxx
+  \brief The file contains definition of the Table reading functionlity
+*/
+
+#include "VISUConvertor.hxx"
+
+#include "VISU_IDMapper.hxx"
+
+#include <string>
+#include <vector>
+
+namespace VISU
+{
+  //---------------------------------------------------------------
+  struct VISU_CONVERTOR_EXPORT TTable2D 
+  {
+    typedef std::string TValue;
+    typedef std::vector<TValue> TValues;
+    
+    struct TRow
+    {
+      std::string myTitle;
+      std::string myUnit;
+      TValues myValues;
+    };
+    
+    std::string myTitle;
+    std::vector<std::string> myColumnUnits;
+    std::vector<std::string> myColumnTitles;
+    
+    typedef std::vector<TRow> TRows;
+    TRows myRows;
+    
+    int 
+    Check();
+
+    void
+    getColumns( TTable2D& theTable2D ) const;
+  };
+
+
+  //---------------------------------------------------------------
+  class VISU_CONVERTOR_EXPORT TTableIDMapper: 
+    public virtual TPolyDataIDMapper,
+    public virtual TTable2D
+  {
+  public:
+    TTableIDMapper();
+    ~TTableIDMapper();
+    
+    virtual
+    vtkPolyData*
+    GetPolyDataOutput();
+
+    virtual
+    long unsigned int
+    GetMemorySize();
+
+    void
+    SetXAxisPosition( vtkIdType theAxisPosition );
+
+    vtkIdType
+    GetXAxisPosition();
+
+  protected:
+    vtkIdType myXAxisPosition;
+    vtkPolyData* myOutput;
+  };
+  typedef MED::SharedPtr<TTableIDMapper> PTableIDMapper;
+  
+
+  //---------------------------------------------------------------
+  typedef std::vector<PTableIDMapper> TTableContainer;
+  VISU_CONVERTOR_EXPORT 
+    void ImportTables( const char* theFileName, TTableContainer& theContainer );
+
+
+  //---------------------------------------------------------------
+}
+
+#endif
index 1a09efc3dff3438a122861c2adef421691e44ab3..d70dabef56c58742a17778583f2e441ca25d3c49 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
-//  File   : VISU_ColoredPrs3dCache_i.hh
+//  VISU OBJECT : interactive object for VISU entities implementation
+//  File   : VISU_TypeList.hxx
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #ifndef VISU_TypeList_HeaderFile
 #define VISU_TypeList_HeaderFile
 
+
+//----------------------------------------------------------------------------
 namespace VISU
 {
+  //----------------------------------------------------------------------------
   namespace TL
   {
     //----------------------------------------------------------------------------
-    template <class T, class U>
+    struct TNullType {};
+    
+
+    //----------------------------------------------------------------------------
+    template < class T, class U >
     struct TList
     {
       typedef T THead;
       typedef U TTail;
     };
     
-    template <int v>
+    template < int v >
     struct TInt2Type
     {
       enum { value = v };
     };
     
-    struct TNullType {};
-    
+
     //----------------------------------------------------------------------------
-    template <class TypeList, unsigned int index
+    template < class TypeList, unsigned int index 
     struct TTypeAt;
 
-    template <class THead, class TTail>
-    struct TTypeAt<TList<THead, TTail>, 0>
+    template < class THead, class TTail >
+    struct TTypeAt< TList< THead, TTail >, 0 >
     {
       typedef THead TResult;
     };
 
 
-    template <class THead, class TTail, unsigned int index>
-    struct TTypeAt<TList<THead, TTail>, index>
+    template < class THead, class TTail, unsigned int index >
+    struct TTypeAt< TList< THead, TTail >, index >
     {
-      typedef typename TTypeAt<TTail, index - 1>::TResult TResult;
+      typedef typename TTypeAt< TTail, index - 1 >::TResult TResult;
     };
 
+
     //----------------------------------------------------------------------------
-    template <class TypeList, class T
+    template < class TypeList, class T 
     struct TIndexOf;
 
-    template <class T>
-    struct TIndexOf<TNullType, T>
+    template < class T >
+    struct TIndexOf< TNullType, T >
     {
       enum { value = -1 };
     };
 
-    template <class T, class TTail>
-    struct TIndexOf<TList<T, TTail>, T>
+    template < class T, class TTail >
+    struct TIndexOf< TList< T, TTail >, T >
     {
       enum { value = 0 };
     };
 
-    template <class THead, class TTail, class T>
-    struct TIndexOf<TList<THead, TTail>, T>
+    template < class THead, class TTail, class T >
+    struct TIndexOf< TList< THead, TTail >, T >
     {
     private:
-      enum { temp = TIndexOf<TTail, T>::value };
+      enum { temp = TIndexOf< TTail, T >::value };
     public:
       enum { value = temp == -1? -1 : 1 + temp };
     };
     
+
+    //----------------------------------------------------------------------------
+    template
+    <
+      class T01 = TNullType, class T02 = TNullType, class T03 = TNullType, class T04 = TNullType, class T05 = TNullType,
+      class T06 = TNullType, class T07 = TNullType, class T08 = TNullType, class T09 = TNullType, class T10 = TNullType,
+      class T11 = TNullType, class T12 = TNullType, class T13 = TNullType, class T14 = TNullType, class T15 = TNullType,
+      class T16 = TNullType, class T17 = TNullType, class T18 = TNullType, class T19 = TNullType, class T20 = TNullType,
+      class T21 = TNullType, class T22 = TNullType, class T23 = TNullType, class T24 = TNullType, class T25 = TNullType,
+      class T26 = TNullType, class T27 = TNullType, class T28 = TNullType, class T29 = TNullType, class T30 = TNullType,
+      class T31 = TNullType, class T32 = TNullType, class T33 = TNullType, class T34 = TNullType, class T35 = TNullType,
+      class T36 = TNullType, class T37 = TNullType, class T38 = TNullType, class T39 = TNullType, class T40 = TNullType
+    >
+    struct TSequence
+    {
+    private:
+      typedef typename TSequence<      T02, T03, T04, T05, T06, T07, T08, T09, T10,
+                                  T11, T12, T13, T14, T15, T16, T17, T18, T19, T20,
+                                  T21, T22, T23, T24, T25, T26, T27, T28, T29, T30,
+                                 T31, T32, T33, T34, T35, T36, T37, T38, T39, T40
+                                      >::TResult 
+                       TailResult;
+    public:
+      typedef TList< T01, TailResult > TResult;
+    };
+        
+
+    //----------------------------------------------------------------------------
+    template<>
+    struct TSequence<>
+    {
+      typedef TNullType TResult;
+    };
+
+
     //----------------------------------------------------------------------------
   }
+
+  
+  //----------------------------------------------------------------------------
 }
 
 #endif
index 8392385ffed243b1703bb930e20c7143ecd594dc..fc6bd810eb87e85eda066aad0e5bfcce22635304 100644 (file)
@@ -1,30 +1,29 @@
-//  VISU CONVERTOR :
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU CONVERTOR :
 //  File   : VISU_UsedPointsFilter.cxx
 //  Author : 
 //  Module : VISU
-
-
+//
 #include "VISU_UsedPointsFilter.hxx"
 
 #include <vtkObjectFactory.h>
index 6670cc27f6b23e5d8291a1d1529ef74b4177188b..7cc9b89534baeaa31f42990088255b89e8809143 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU CONVERTOR :
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU CONVERTOR :
 //  File   : VISU_UsedPointsFilter.hxx
 //  Author : 
 //  Module : VISU
-
+//
 #ifndef VISU_UsedPointsFilter_HeaderFile
 #define VISU_UsedPointsFilter_HeaderFile
 
diff --git a/src/CONVERTOR/VISU_VTKTypeList.hxx b/src/CONVERTOR/VISU_VTKTypeList.hxx
new file mode 100644 (file)
index 0000000..b76d779
--- /dev/null
@@ -0,0 +1,120 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+//  File   : VISU_VTKTypeList.hxx
+//  Author : Oleg UVAROV
+//  Module : VISU
+//
+#ifndef VISU_VTKTypeList_HeaderFile
+#define VISU_VTKTypeList_HeaderFile
+
+#include "VISU_TypeList.hxx"
+
+#include <vtkCharArray.h>
+#include <vtkUnsignedCharArray.h>
+#include <vtkShortArray.h>
+#include <vtkUnsignedShortArray.h>
+#include <vtkIntArray.h>
+#include <vtkUnsignedIntArray.h>
+#include <vtkLongArray.h>
+#include <vtkUnsignedLongArray.h> 
+#include <vtkFloatArray.h> 
+#include <vtkDoubleArray.h> 
+
+
+//----------------------------------------------------------------------------
+namespace VISU
+{
+  //----------------------------------------------------------------------------
+  namespace TL
+  {
+    //----------------------------------------------------------------------------
+    typedef TSequence< char, 
+                      unsigned char, 
+                      short, 
+                      unsigned short, 
+                      int, 
+                      unsigned int, 
+                      long, 
+                      unsigned long, 
+                      float, 
+                      double >::TResult TVTKBasicTypeList;
+
+
+    //----------------------------------------------------------------------------
+    typedef TSequence< vtkCharArray, 
+                      vtkUnsignedCharArray, 
+                      vtkShortArray, 
+                      vtkUnsignedShortArray, 
+                      vtkIntArray, 
+                      vtkUnsignedIntArray, 
+                      vtkLongArray, 
+                      vtkUnsignedLongArray, 
+                      vtkFloatArray, 
+                      vtkDoubleArray >::TResult TVTKArrayTypeList;
+
+
+    //----------------------------------------------------------------------------
+    typedef TSequence< TInt2Type< VTK_CHAR >, 
+                      TInt2Type< VTK_UNSIGNED_CHAR >, 
+                      TInt2Type< VTK_SHORT >, 
+                      TInt2Type< VTK_UNSIGNED_SHORT >, 
+                      TInt2Type< VTK_INT >, 
+                      TInt2Type< VTK_UNSIGNED_INT >, 
+                      TInt2Type< VTK_LONG >, 
+                      TInt2Type< VTK_UNSIGNED_LONG >, 
+                      TInt2Type< VTK_FLOAT >, 
+                      TInt2Type< VTK_DOUBLE > >::TResult TVTKBasicEnumList;
+    
+    
+    //----------------------------------------------------------------------------
+    template< unsigned int type_enum >
+    struct TEnum2VTKBasicType
+    {
+      typedef typename TTypeAt< TVTKBasicTypeList, TIndexOf< TVTKBasicEnumList, TInt2Type< type_enum > >::value >::TResult TResult;
+    };
+
+    
+    //----------------------------------------------------------------------------
+    template< unsigned int type_enum >
+    struct TEnum2VTKArrayType
+    {
+      typedef typename TTypeAt< TVTKArrayTypeList, TIndexOf< TVTKBasicEnumList, TInt2Type< type_enum > >::value >::TResult TResult;
+    };
+    
+
+    //----------------------------------------------------------------------------
+    template< class T >
+    struct TVTKBasicType2Enum
+    {
+      typedef typename TTypeAt< TVTKBasicEnumList, TIndexOf< TVTKBasicTypeList, T >::value >::TResult TResult;
+    };
+    
+
+    //----------------------------------------------------------------------------
+  }
+
+
+  //----------------------------------------------------------------------------
+}
+
+#endif
diff --git a/src/CONVERTOR/VISU_Vtk2MedConvertor.cxx b/src/CONVERTOR/VISU_Vtk2MedConvertor.cxx
new file mode 100644 (file)
index 0000000..f50d10e
--- /dev/null
@@ -0,0 +1,1332 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  File   : VISU_Vtk2MedConvertor.cxx
+//  Author : Eugeny NIKOLAEV, Open CASCADE SAS
+//
+
+#include "VISU_Vtk2MedConvertor.hxx"
+
+// QT includes
+#include <qdir.h>
+#include <qfileinfo.h>
+#include <qstringlist.h>
+
+// VTK includes
+#include <vtkSmartPointer.h>
+#include <vtkDataReader.h>
+
+#include <vtkStructuredPointsReader.h>
+#include <vtkStructuredGridReader.h>
+#include <vtkRectilinearGridReader.h>
+#include <vtkUnstructuredGridReader.h>
+#include <vtkPolyDataReader.h>
+#include <vtkDataSetReader.h>
+
+#include <vtkPointSet.h>
+#include <vtkDataSet.h>
+#include <vtkPolyData.h>
+#include <vtkDataObject.h>
+#include <vtkCellTypes.h>
+#include <vtkCellType.h>
+#include <vtkCell.h>
+#include <vtkCellData.h>
+#include <vtkPointData.h>
+
+#include <vtkUnstructuredGrid.h>
+#include <vtkFloatArray.h>
+
+// MED Warpper includes
+#include "MED_Factory.hxx"
+
+// STL includes
+#include <string>
+#include <vector>
+#include <iostream>
+#include <sstream>
+#include <set>
+#include <map>
+//#include <pair.h>
+
+#ifdef _DEBUG_
+static int MYDEBUG = 0;
+static int MYDEBUG_VALUES = 0;
+#else
+static int MYDEBUG = 0;
+static int MYDEBUG_VALUES = 0;
+#endif
+
+using namespace std;
+
+/*
+# = dynamic_cast</*
+*>(  );define  VTK_EMPTY_CELL   0
+#define        VTK_VERTEX   1
+#define        VTK_POLY_VERTEX   2
+#define        VTK_LINE   3
+#define        VTK_POLY_LINE   4
+#define        VTK_TRIANGLE   5
+#define        VTK_TRIANGLE_STRIP   6
+#define        VTK_POLYGON   7
+#define        VTK_PIXEL   8
+#define        VTK_QUAD   9
+#define        VTK_TETRA   10
+#define        VTK_VOXEL   11
+#define        VTK_HEXAHEDRON   12
+#define        VTK_WEDGE   13
+#define        VTK_PYRAMID   14
+#define        VTK_QUADRATIC_EDGE   21
+#define        VTK_QUADRATIC_TRiTSIANGLE   22
+#define        VTK_QUADRATIC_QUAD   23
+#define        VTK_QUADRATIC_TETRA   24
+#define        VTK_QUADRATIC_HEXAHEDRON   25
+#define        VTK_CONVEX_POINT_SET   41
+#define        VTK_PARAMETRIC_CURVE   51
+#define        VTK_PARAMETRIC_SURFACE   52
+#define        VTK_PARAMETRIC_TRI_SURFACE   53
+#define        VTK_PARAMETRIC_QUAD_SURFACE   54
+#define        VTK_PARAMETRIC_TETRA_REGION   55
+#define        VTK_PARAMETRIC_HEX_REGION   56
+*/
+
+static MED::EGeometrieElement VTK2MED( const int theGeom )
+{
+  // Ignoring vtk types:
+  // VTK_PIXEL,
+  // VTK_VERTEX,
+  // VTK_POLY_VERTEX
+  // VTK_VOXEL
+  // VTK_POLY_LINE       
+  // VTK_TRIANGLE_STRIP  
+  // VTK_PARAMETRIC_CURVE 
+  // VTK_PARAMETRIC_SURFACE
+  // VTK_PARAMETRIC_TRI_SURFACE
+  // VTK_PARAMETRIC_QUAD_SURFACE
+  // VTK_PARAMETRIC_TETRA_REGION
+  // VTK_PARAMETRIC_HEX_REGION
+  
+  MED::EGeometrieElement aEmptyGeom = MED::EGeometrieElement(-1);
+  switch(theGeom){
+  case VTK_LINE:             return MED::eSEG2;
+  case VTK_TRIANGLE:         return MED::eTRIA3;
+  case VTK_POLYGON:          return MED::ePOLYGONE;
+  case VTK_QUAD:             return MED::eQUAD4;
+  case VTK_TETRA:            return MED::eTETRA4;
+  case VTK_HEXAHEDRON:       return MED::eHEXA8;
+  case VTK_WEDGE:            return MED::ePENTA6;
+  case VTK_PYRAMID:          return MED::ePYRA5;
+  // QUADRATIC elements
+  case VTK_QUADRATIC_EDGE:      return MED::eSEG3;
+  case VTK_QUADRATIC_TRIANGLE:  return MED::eTRIA6;
+  case VTK_QUADRATIC_QUAD:      return MED::eQUAD8;
+  case VTK_QUADRATIC_TETRA:     return MED::eTETRA10;
+  case VTK_QUADRATIC_HEXAHEDRON:return MED::eHEXA20;
+  case VTK_CONVEX_POINT_SET:    return MED::ePOLYEDRE;
+  }
+  
+  return aEmptyGeom;
+}
+
+/*!
+  \class VISU_Vtk2MedConvertor
+  \brief The general main of the class VISU_Vtk2MedConvertor is converting from 
+  one or several VTK files to the one MED file...
+
+  The VISU_Vtk2MedConvertor interface allows us to create the MED file according 
+  to VTK files in next ways:
+  - Extract geometry and fields from one VTK file.
+  - Extract geometry and fields from first VTK file and fields from others 
+  VTK files (geometry ignoring). Also the fields which have same names join into 
+  corresponding fields with different time stamp
+*/
+
+/*!
+  \brief Constructor
+  - Sets default output mesh name
+  - Sets default version of output MED file.
+  - Sets default ignoring fields list
+  - Sets default points and cells ids mapping field names.
+
+*/
+VISU_Vtk2MedConvertor
+::VISU_Vtk2MedConvertor():
+  myVersion(MED::eV2_2),
+  myMeshName("vtk2med")
+{
+  myIgnoringFieldList.insert("VISU_POINTS_MAPPER");
+  myIgnoringFieldList.insert("VISU_CELLS_MAPPER");
+  myIgnoringFieldList.insert("VISU_FIELD");
+  setCellDataFieldNameIDS("VISU_CELLS_MAPPER");
+  setPointDataFieldNameIDS("VISU_POINTS_MAPPER");
+}
+                    
+/*!
+  \brief Constructor
+  - Sets default output mesh name
+  - Sets default version of output MED file.
+  - Sets default ignoring fields list
+  - Sets default points and cells ids mapping field names.
+
+  \param theMEDFileName output med file name
+  \param theFirstVTKFileName first vtk file name
+*/
+VISU_Vtk2MedConvertor
+::VISU_Vtk2MedConvertor(const string theMEDFileName,
+                    const string theFirstVTKFileName):
+  myVersion(MED::eV2_2),
+  myMeshName("vtk2med")
+{
+  myMEDFileName   = theMEDFileName;
+  myFirstVTKFileName = theFirstVTKFileName;
+  myIgnoringFieldList.insert("VISU_POINTS_MAPPER");
+  myIgnoringFieldList.insert("VISU_CELLS_MAPPER");
+  myIgnoringFieldList.insert("VISU_FIELD");
+  setCellDataFieldNameIDS("VISU_CELLS_MAPPER");
+  setPointDataFieldNameIDS("VISU_POINTS_MAPPER");
+}
+
+/*!
+  \brief Constructor
+  - Sets default output mesh name
+  - Sets default version of output MED file.
+  - Sets default ignoring fields list
+  - Sets default points and cells ids mapping field names.
+
+  \param theMEDFileName output med file name
+  \param theFirstVTKFileName first vtk file name
+  \param theDataVTKFileNames of vtk file names, which will be using as values on points and cells
+*/
+VISU_Vtk2MedConvertor
+::VISU_Vtk2MedConvertor(const string theMEDFileName,
+                    const string theFirstVTKFileName,
+                    const TVectorString theDataVTKFileNames):
+  myVersion(MED::eV2_2),
+  myMeshName("vtk2med")
+{
+  myMEDFileName      = theMEDFileName;
+  myFirstVTKFileName = theFirstVTKFileName;
+  myDataVTKFileNames = theDataVTKFileNames;
+  myIgnoringFieldList.insert("VISU_POINTS_MAPPER");
+  myIgnoringFieldList.insert("VISU_CELLS_MAPPER");
+  myIgnoringFieldList.insert("VISU_FIELD");
+  setMeshName("vtk2med");
+  setCellDataFieldNameIDS("VISU_CELLS_MAPPER");
+  setPointDataFieldNameIDS("VISU_POINTS_MAPPER");
+}
+
+/*!
+  \brief Adds field names, which used as specific fields with ids or elements 
+  (or something else). (Default: \93VISU_CELLS_MAPPER\94,\94VISU_POINTS_MAPPER\94,\94VISU_FILED\94)
+  \param theFieldName field name
+  \sa eraseFromIgnoringFieldList()
+*/
+void
+VISU_Vtk2MedConvertor
+::addToIgnoringFieldList( const string& theFieldName )
+{
+  myIgnoringFieldList.insert(theFieldName);
+}
+
+/*!
+  \brief Sets the output MED file name
+  \param theFileName file name
+  \sa getMEDFileName()
+*/
+void 
+VISU_Vtk2MedConvertor
+::setMEDFileName( const string theFileName )
+{ 
+  myMEDFileName=theFileName;
+};
+
+/*!
+  \brief Gets the output MED file name
+  \return output MED file name
+  \sa setMEDFileName()
+*/
+string 
+VISU_Vtk2MedConvertor
+::getMEDFileName() const 
+{
+  return myMEDFileName;
+}
+
+/*!
+  \brief Sets the first input vtk file name
+  \param theFileName file name
+  \sa getFirstVTKFileName()
+*/
+void 
+VISU_Vtk2MedConvertor
+::setFirstVTKFileName( const string theFileName )
+{ 
+  myFirstVTKFileName=theFileName;
+};
+
+/*!
+  \brief Fets the first input vtk file name
+  \return first input vtk file name
+  \sa setFirstVTKFileName()
+*/
+string 
+VISU_Vtk2MedConvertor
+::getFirstVTKFileName() const 
+{
+  return myFirstVTKFileName;
+}
+
+/*!
+  \brief Sets list of vtk file names, which will be using as values on points and cells
+  \param theFileNames list of vtk file names
+  \sa getDataVTKFileNames()
+*/
+void 
+VISU_Vtk2MedConvertor
+::setDataVTKFileNames( const TVectorString theFileNames )
+{ 
+  myDataVTKFileNames = theFileNames;
+};
+
+/*!
+  \brief Gets list of vtk file names, which will be using as values on points and cells
+  \param theFileNames out list of vtk file names
+  \sa setDataVTKFileNames()
+*/
+void 
+VISU_Vtk2MedConvertor
+::getDataVTKFileNames( TVectorString& theDataVTKFileNames ) const 
+{ 
+  theDataVTKFileNames = myDataVTKFileNames; 
+};
+
+/*!
+  \brief Sets version of the output MED file MED::V2_2(is default) or MED::V2_1
+  \param theVersion version of the output MED file 
+*/
+void 
+VISU_Vtk2MedConvertor
+::setVersion( const MED::EVersion theVersion )
+{
+  myVersion = theVersion; 
+}
+
+/*!
+  \brief Gets version of the output MED file MED::V2_2(is default) or MED::V2_1
+  \return version of the output MED file 
+*/
+MED::EVersion 
+VISU_Vtk2MedConvertor
+::getVersion() const 
+{
+  return myVersion;
+}
+
+/*!
+  \brief Sets output mesh name. (\93vtk2med\94 - default)
+  \param theMeshName mesh name
+  \sa getMeshName()
+*/
+void 
+VISU_Vtk2MedConvertor
+::setMeshName( const string theMeshName ) 
+{
+  myMeshName = theMeshName;
+}
+
+/*!
+  \brief Gets output mesh name. (\93vtk2med\94 - default)
+  \return mesh name
+  \sa setMeshName()
+*/
+string 
+VISU_Vtk2MedConvertor
+::getMeshName() const
+{
+  return myMeshName;
+}
+
+/*!
+  \brief Sets field name with cell ids (Default - VISU_CELLS_MAPPER)
+  \param theFieldName field name 
+  \sa getCellDataFieldNameIDS
+*/
+void 
+VISU_Vtk2MedConvertor
+::setCellDataFieldNameIDS( const string& theFieldName )
+{
+  myCellDataFieldNameIDS = theFieldName;
+}
+
+/*!
+  \brief Gets field name with cell ids (Default - VISU_CELLS_MAPPER)
+  \return field name 
+  \sa setCellDataFieldNameIDS()
+*/
+const string& 
+VISU_Vtk2MedConvertor
+::getCellDataFieldNameIDS() const
+{
+  return myCellDataFieldNameIDS;
+}
+
+/*!
+  \brief Erases field names which used as specific fields with ids or elements 
+  (or something else)
+  \param theFieldName field name
+  \sa addToIgnoringFieldList()
+*/
+void
+VISU_Vtk2MedConvertor
+::eraseFromIgnoringFieldList(const string& theFieldName)
+{
+  myIgnoringFieldList.erase(theFieldName);
+}
+
+/*!
+  \brief Gets list of field names which used as specific fields with ids or elements 
+  \return list of field names 
+*/
+const std::set<std::string>& 
+VISU_Vtk2MedConvertor
+::getIgnoringFieldList() const
+{
+  return myIgnoringFieldList;
+}
+
+/*!
+  \brief Sets field name with point ids
+  \param theFieldName field name
+  \sa getPointDataFieldNameIDS()
+*/
+void 
+VISU_Vtk2MedConvertor
+::setPointDataFieldNameIDS( const string& theFieldName )
+{
+  myPointDataFieldNameIDS = theFieldName;
+}
+
+/*!
+  \brief Gets field name with point ids
+  \return field name
+  \sa setPointDataFieldNameIDS()
+*/
+const string& 
+VISU_Vtk2MedConvertor
+::getPointDataFieldNameIDS() const
+{
+  return myPointDataFieldNameIDS;
+}
+
+/*!
+  \brief Sets values of time stamps If this array is not specified values of time 
+  stamps are generated automatically ( 0, 1, 2 ... )
+  \param theTStamps vector of time stamps
+  \sa getTimeStamps()
+*/
+void 
+VISU_Vtk2MedConvertor
+::setTimeStamps( const TVectorDouble& theTStamps )
+{
+  myTStamps = theTStamps;
+}
+
+/*!
+  \brief Gets values of time stamps If this array is not specified values of time 
+  stamps are generated automatically ( 0, 1, 2 ... )
+  \param theTStamps out vector of time stamps
+  \sa setTimeStamps()
+*/
+void 
+VISU_Vtk2MedConvertor
+::getTimeStamps( TVectorDouble& theTStamps ) const
+{
+  theTStamps = myTStamps;
+}
+
+/*!
+  \brief Retrieves identifiers of cells from input data set corresponding to given type
+  \param theInput input data set
+  \param type type
+  \param array out array
+*/
+void
+VISU_Vtk2MedConvertor
+::GetIdsOfCellsOfType(vtkDataSet* theInput,
+                      const int type,
+                      vtkIntArray *array)
+{
+  for (int cellId = 0; cellId < theInput->GetNumberOfCells(); cellId++)
+    if (theInput->GetCellType(cellId) == type)
+      array->InsertNextValue(cellId);
+}
+
+/*!
+  \brief Creates elements (private auxiliary method)
+  \return 0 if operation has been completed successfully, 1 otherwise
+*/
+int
+VISU_Vtk2MedConvertor
+::CreateElements(vtkDataSet* theInput,
+                 MED::PMeshInfo theMeshInfo,
+                 MED::PWrapper  theMed,
+                 vtkIntArray* theCellsMapper,
+                 MED::EEntiteMaillage theEntity,
+                 int theVTKGeom,
+                 int nbPointsInGeom,
+                 std::vector<int>& theNumberingConvertor,
+                 TGeom2CellIds& theGeom2CellIdMap)
+{
+  bool aIdsConvert = (theNumberingConvertor.size() > 0);
+  vtkIntArray* aCellIds = vtkIntArray::New();
+  const MED::EConnectivite aConnType = MED::eNOD;
+
+  MED::TIntVector aConn;
+  MED::TIntVector aFamilyNums;// -1
+  MED::TIntVector aElemNums;
+  
+  this->GetIdsOfCellsOfType(theInput,theVTKGeom,aCellIds);
+  int nbElems = aCellIds->GetNumberOfTuples();
+  if(MYDEBUG) cout << "\tnbElems in geom:"<<VTK2MED(theVTKGeom)<<" ="<<nbElems<<endl;
+  aConn.reserve(nbElems*nbPointsInGeom);
+  if(nbElems>0){
+    TCellIds& aCellIdsMapper = theGeom2CellIdMap[VTK2MED(theVTKGeom)];
+    int* aPointer = aCellIds->GetPointer(0);
+    for(int i=0;i<nbElems;i++,aPointer++){
+      int aCellId = *aPointer;
+      aCellIdsMapper.push_back(aCellId);
+      vtkCell* aCell = theInput->GetCell(aCellId);
+      int nbPointsInCell = aCell->GetNumberOfPoints();
+      if(nbPointsInCell!=nbPointsInGeom){
+        cout << "Error in file=|" << __FILE__<<"| line:[" << __LINE__ << "]" << endl;
+        cout << "Must be "<<nbPointsInGeom<<" nodes in VTK Geometry:"<<theVTKGeom<<" element" << endl;
+        aCellIds->Delete();
+        return 1; // exit
+      }
+      aFamilyNums.push_back(-1);
+      for(int j=0;j<nbPointsInCell;j++){
+        if (aIdsConvert)
+          aConn.push_back(aCell->GetPointId(theNumberingConvertor[j])+1);
+        else
+          aConn.push_back(aCell->GetPointId(j)+1);
+      }
+      if(theCellsMapper){
+        if(theCellsMapper->GetNumberOfComponents()==2)
+          aElemNums.push_back(*theCellsMapper->GetPointer(aCellId*2));
+        else if(theCellsMapper->GetNumberOfComponents()==1)
+          aElemNums.push_back(*theCellsMapper->GetPointer(aCellId));
+      }
+    }
+    
+    
+    MED::PCellInfo aCellInfo = theMed->CrCellInfo(theMeshInfo,
+                                                  theEntity,
+                                                  VTK2MED(theVTKGeom),
+                                                  aConn,
+                                                  aConnType,
+                                                  aFamilyNums,
+                                                  aElemNums);
+    theMed->SetCellInfo(aCellInfo);
+  }
+  
+  aCellIds->Delete();
+  
+  return 0;
+}
+
+/*!
+  \brief Creates polygons (private auxiliary method)
+  \return 0 if operation has been completed successfully, 1 otherwise
+*/
+int
+VISU_Vtk2MedConvertor
+::CreatePolygons(vtkDataSet* theInput,
+                 MED::PMeshInfo theMeshInfo,
+                 MED::PWrapper  theMed,
+                 vtkIntArray* theCellsMapper,
+                 MED::EEntiteMaillage theEntity,
+                 TGeom2CellIds& theGeom2CellIdMap)
+{
+  int theVTKGeom = VTK_POLYGON;
+  vtkIntArray* aCellIds = vtkIntArray::New();
+  const MED::EConnectivite aConnType = MED::eNOD;
+  
+  MED::TIntVector aConn;
+  MED::TIntVector aFamilyNums;// -1
+  MED::TIntVector aElemNums;
+  MED::TIntVector aPolygoneInds;
+  aPolygoneInds.push_back(1); // reference on the first element in the connectivities
+  
+  this->GetIdsOfCellsOfType(theInput,theVTKGeom,aCellIds);
+  int nbElems = aCellIds->GetNumberOfTuples();
+  if(MYDEBUG) cout << "\tnbElems in geom:"<<VTK2MED(theVTKGeom)<<" ="<<nbElems<<endl;
+  if(nbElems>0){
+    TCellIds& aCellIdsMapper = theGeom2CellIdMap[VTK2MED(theVTKGeom)];
+    int* aPointer = aCellIds->GetPointer(0);
+    for(int i=0;i<nbElems;i++,aPointer++){
+      int aCellId = *aPointer;
+      aCellIdsMapper.push_back(aCellId);
+      vtkCell* aCell = theInput->GetCell(aCellId);
+      int nbPointsInCell = aCell->GetNumberOfPoints();
+      aFamilyNums.push_back(-1);
+      int aPrevPos = aPolygoneInds.back();
+      aPolygoneInds.push_back(aPrevPos+nbPointsInCell);
+      for(int j=0;j<nbPointsInCell;j++)
+        aConn.push_back(aCell->GetPointId(j)+1);
+      if(theCellsMapper){
+        if(theCellsMapper->GetNumberOfComponents()==2)
+          aElemNums.push_back(*theCellsMapper->GetPointer(aCellId*2));
+        else if(theCellsMapper->GetNumberOfComponents()==1)
+          aElemNums.push_back(*theCellsMapper->GetPointer(aCellId));
+      }
+    }
+    
+    
+    MED::PPolygoneInfo aCellInfo = theMed->CrPolygoneInfo(theMeshInfo,
+                                                          theEntity,
+                                                          VTK2MED(theVTKGeom),
+                                                          aPolygoneInds,
+                                                          aConn,
+                                                          aConnType,
+                                                          aFamilyNums,
+                                                          aElemNums);
+    theMed->SetPolygoneInfo(aCellInfo);
+  }
+  
+  aCellIds->Delete();
+  
+  return 0;
+}
+
+/*!
+  \brief Creates polyedres (private auxiliary method)
+  \return 0 if operation has been completed successfully, 1 otherwise
+*/
+int
+VISU_Vtk2MedConvertor
+::CreatePolyedres(vtkDataSet* theInput,
+                  MED::PMeshInfo theMeshInfo,
+                  MED::PWrapper  theMed,
+                  vtkIntArray* theCellsMapper,
+                  MED::EEntiteMaillage theEntity,
+                  TGeom2CellIds& theGeom2CellIdMap)
+{
+  int theVTKGeom = VTK_CONVEX_POINT_SET;
+  vtkIntArray* aCellIds = vtkIntArray::New();
+  const MED::EConnectivite aConnType = MED::eNOD;
+  
+  MED::TIntVector aConn;
+  MED::TIntVector aFamilyNums;// -1
+  MED::TIntVector aElemNums;
+  MED::TIntVector aPolyedreInds;
+  MED::TIntVector aPolyedreFaces;
+  
+  aPolyedreInds.push_back(1); // reference on the first element in the connectivities
+  aPolyedreFaces.push_back(1);
+  
+  this->GetIdsOfCellsOfType(theInput,theVTKGeom,aCellIds);
+  int nbElems = aCellIds->GetNumberOfTuples();
+  if(MYDEBUG) cout << "\tnbElems in geom:"<<VTK2MED(theVTKGeom)<<" ="<<nbElems<<endl;
+  if(nbElems>0){
+    TCellIds& aCellIdsMapper = theGeom2CellIdMap[VTK2MED(theVTKGeom)];
+    int* aPointer = aCellIds->GetPointer(0);
+    for(int i=0;i<nbElems;i++,aPointer++){
+      int aCellId = *aPointer;
+      aCellIdsMapper.push_back(aCellId);
+      vtkCell* aCell = theInput->GetCell(aCellId);
+      int nbPointsInCell = aCell->GetNumberOfPoints();
+      for(int j=0;j<nbPointsInCell;j++)
+        aConn.push_back(aCell->GetPointId(j)+1);
+      int aPrevPos = aPolyedreFaces.back();
+      aPolyedreFaces.push_back(aPrevPos + nbPointsInCell);
+      aPrevPos = aPolyedreInds.back();
+      aPolyedreInds.push_back(aPrevPos + 1/*aNbFaces*/);
+      aFamilyNums.push_back(-1);
+
+      if(theCellsMapper){
+        if(theCellsMapper->GetNumberOfComponents()==2)
+          aElemNums.push_back(*theCellsMapper->GetPointer(aCellId*2));
+        else if(theCellsMapper->GetNumberOfComponents()==1)
+          aElemNums.push_back(*theCellsMapper->GetPointer(aCellId));
+      }
+    }
+    
+    
+    MED::PPolyedreInfo aCellInfo = theMed->CrPolyedreInfo(theMeshInfo,
+                                                          theEntity,
+                                                          VTK2MED(theVTKGeom),
+                                                          aPolyedreInds,
+                                                          aPolyedreFaces,
+                                                          aConn,
+                                                          aConnType,
+                                                          aFamilyNums,
+                                                          aElemNums);
+    theMed->SetPolyedreInfo(aCellInfo);
+  }
+  
+  aCellIds->Delete();
+  
+  return 0;
+}
+
+/*!
+  \brief Converts geometry to med (private auxiliary method)
+  \return 0 if operation has been completed successfully, 1 otherwise
+*/
+int
+VISU_Vtk2MedConvertor
+::Geometry2MED(vtkDataSet* aInput,
+               MED::PWrapper myMed,
+               MED::PMeshInfo aMeshInfo,
+               TGeom2CellIds& outGeom2CellIdMap)
+{
+  int aNbNodes = aInput->GetNumberOfPoints();
+  int aMeshDimension = aMeshInfo->GetDim();
+  // ----------------------- NODES -------------------------
+  vtkIntArray* aPointsMapper;
+  if(aInput->GetPointData())
+    aPointsMapper = dynamic_cast<vtkIntArray*>(aInput->GetPointData()->GetArray(myPointDataFieldNameIDS.c_str()));
+  
+  MED::TFloatVector aCoordinates(aNbNodes*aMeshDimension);
+  MED::TIntVector   anElemNumsNodes; // takes from VISU_POINTS_MAPPER array
+  MED::TIntVector  aFamilyNumsNodes;
+  MED::TStringVector aCoordNamesNodes;
+  MED::TStringVector aCoordUnitsNodes;
+
+  vtkFloatingPointType aPntCoord[3];
+  if(aPointsMapper){
+    int nbComp = aPointsMapper->GetNumberOfComponents();
+    int *aPointsMapperPtr = aPointsMapper->GetPointer(0);
+    for(int i=0;i<aNbNodes;i++){
+      aInput->GetPoint(i,aPntCoord);
+      aCoordinates[i*3]   = aPntCoord[0];
+      aCoordinates[i*3+1] = aPntCoord[1];
+      aCoordinates[i*3+2] = aPntCoord[2];
+      if(nbComp == 2){
+        anElemNumsNodes.push_back(*aPointsMapperPtr);
+        aPointsMapperPtr++;aPointsMapperPtr++;
+      }
+      else if (nbComp == 1){
+        anElemNumsNodes.push_back(*aPointsMapperPtr);
+        aPointsMapperPtr++;
+      }
+      else{
+        cout << "Error in file=|" << __FILE__<<"| line:[" << __LINE__ << "]" << endl;
+        cout << "Code must be adapted for more than 2 components array |VISU_POINTS_MAPPER|" << endl;
+        return 1;
+      }
+
+    }
+  } else {
+    for(int i=0;i<aNbNodes;i++){
+      aInput->GetPoint(i,aPntCoord);
+      aCoordinates[i*3]   = aPntCoord[0];
+      aCoordinates[i*3+1] = aPntCoord[1];
+      aCoordinates[i*3+2] = aPntCoord[2];
+    }
+  }
+  
+  
+  MED::PNodeInfo aNodeInfo = myMed->CrNodeInfo(aMeshInfo,
+                                               aCoordinates,
+                                               MED::eFULL_INTERLACE,
+                                               MED::eCART,
+                                               aCoordNamesNodes,
+                                               aCoordUnitsNodes,
+                                               aFamilyNumsNodes,
+                                               anElemNumsNodes);
+  myMed->SetNodeInfo(aNodeInfo);
+
+  vtkIntArray* aCellsMapper;
+  if(vtkCellData* aCD = aInput->GetCellData())
+    aCellsMapper = dynamic_cast<vtkIntArray*>(aCD->GetArray(myCellDataFieldNameIDS.c_str()));
+
+  if(MYDEBUG)
+  {
+    // debug info
+    // print all cell types in the input
+    vtkCellTypes* aCellTypes = vtkCellTypes::New();
+    aInput->GetCellTypes(aCellTypes);
+    cout << "Cell types in the input data:"<<endl;
+    for(int aNbCellType = 0;aNbCellType<aCellTypes->GetNumberOfTypes();aNbCellType++)
+      cout << (int)(aCellTypes->GetCellType(aNbCellType)) << endl;
+    aCellTypes->Delete();
+  }
+  
+  //----------------------
+  // Entity EDGES (eARETE)
+  //----------------------
+  vector<int> aNumberingConvertor;
+  {
+    // aVTKGeom->eSEG2
+    MED::EEntiteMaillage aEntity = MED::eMAILLE;//eARETE;
+    int aVTKGeom = 0;
+    int nbPointsInGeom = 0;
+
+    // aNumberingConvertor NULL - OK
+    aVTKGeom       = VTK_LINE;
+    nbPointsInGeom = 2;
+    CreateElements(aInput,
+                   aMeshInfo,
+                   myMed,
+                   aCellsMapper,
+                   aEntity,
+                   aVTKGeom,
+                   nbPointsInGeom,
+                   aNumberingConvertor,
+                   outGeom2CellIdMap);
+
+    // aNumberingConvertor NULL - OK
+    // debug info: checked - OK
+    aVTKGeom       = VTK_QUADRATIC_EDGE;
+    nbPointsInGeom = 3;
+    CreateElements(aInput,
+                   aMeshInfo,
+                   myMed,
+                   aCellsMapper,
+                   aEntity,
+                   aVTKGeom,
+                   nbPointsInGeom,
+                   aNumberingConvertor,
+                   outGeom2CellIdMap);
+    
+  }
+  //----------------------------
+  // Entity FACES (eFACE)
+  // eTRIA3,eQUAD4,eTRIA6,eQUAD8
+  // ePOLYGONE
+  //----------------------------
+  {
+    
+    MED::EEntiteMaillage aEntity = MED::eMAILLE;//MED::eFACE;
+    int aVTKGeom = 0;
+    int nbPointsInGeom = 0;
+
+    // debug info: checked - OK
+    aVTKGeom       = VTK_TRIANGLE;
+    aNumberingConvertor.clear();
+    nbPointsInGeom = 3;
+    CreateElements(aInput,
+                   aMeshInfo,
+                   myMed,
+                   aCellsMapper,
+                   aEntity,
+                   aVTKGeom,
+                   nbPointsInGeom,
+                   aNumberingConvertor,
+                   outGeom2CellIdMap);
+
+    // debug info: checked - OK
+    aVTKGeom       = VTK_QUAD;
+    nbPointsInGeom = 4;
+    aNumberingConvertor.clear();
+    CreateElements(aInput,
+                   aMeshInfo,
+                   myMed,
+                   aCellsMapper,
+                   aEntity,
+                   aVTKGeom,
+                   nbPointsInGeom,
+                   aNumberingConvertor,
+                   outGeom2CellIdMap);
+
+
+    // debug info: checked - OK
+    aVTKGeom       = VTK_QUADRATIC_TRIANGLE;
+    nbPointsInGeom = 6;
+    aNumberingConvertor.clear();
+    CreateElements(aInput,
+                   aMeshInfo,
+                   myMed,
+                   aCellsMapper,
+                   aEntity,
+                   aVTKGeom,
+                   nbPointsInGeom,
+                   aNumberingConvertor,
+                   outGeom2CellIdMap);
+
+    aVTKGeom       = VTK_QUADRATIC_QUAD;
+    nbPointsInGeom = 8;
+    aNumberingConvertor.clear();
+    // 0,3,2,1,7,6,5,4
+    CreateElements(aInput,
+                   aMeshInfo,
+                   myMed,
+                   aCellsMapper,
+                   aEntity,
+                   aVTKGeom,
+                   nbPointsInGeom,
+                   aNumberingConvertor,
+                   outGeom2CellIdMap);
+
+    // debug info: checked - OK
+    CreatePolygons(aInput,
+                   aMeshInfo,
+                   myMed,
+                   aCellsMapper,
+                   aEntity,
+                   outGeom2CellIdMap);
+    
+  }
+  //----------------------------
+  // Entity CELLS (eMAILLE)
+  // eTETRA4,eHEXA8,ePENTA6,ePYRA5,
+  // eTETRA10,eHEXA20,ePOLYEDRE
+  //----------------------------
+  {
+    
+    MED::EEntiteMaillage aEntity = MED::eMAILLE;
+    int aVTKGeom = 0;
+    int nbPointsInGeom = 0;
+
+    aVTKGeom       = VTK_TETRA;
+    nbPointsInGeom = 4;
+    aNumberingConvertor.clear();
+    aNumberingConvertor.push_back(0);
+    aNumberingConvertor.push_back(2);
+    aNumberingConvertor.push_back(1);
+    aNumberingConvertor.push_back(3);
+    CreateElements(aInput,
+                   aMeshInfo,
+                   myMed,
+                   aCellsMapper,
+                   aEntity,
+                   aVTKGeom,
+                   nbPointsInGeom,
+                   aNumberingConvertor,
+                   outGeom2CellIdMap);
+    
+    aVTKGeom       = VTK_HEXAHEDRON;
+    nbPointsInGeom = 8;
+    aNumberingConvertor.clear();
+    // 0,3,2,1,4,7,6,5
+    CreateElements(aInput,
+                   aMeshInfo,
+                   myMed,
+                   aCellsMapper,
+                   aEntity,
+                   aVTKGeom,
+                   nbPointsInGeom,
+                   aNumberingConvertor,
+                   outGeom2CellIdMap);
+
+    aVTKGeom       = VTK_WEDGE;
+    nbPointsInGeom = 6;
+    aNumberingConvertor.clear();
+    CreateElements(aInput,
+                   aMeshInfo,
+                   myMed,
+                   aCellsMapper,
+                   aEntity,
+                   aVTKGeom,
+                   nbPointsInGeom,
+                   aNumberingConvertor,
+                   outGeom2CellIdMap);
+    
+    aVTKGeom       = VTK_PYRAMID;
+    nbPointsInGeom = 5;
+    aNumberingConvertor.clear();
+    aNumberingConvertor.push_back(0);
+    aNumberingConvertor.push_back(3);
+    aNumberingConvertor.push_back(2);
+    aNumberingConvertor.push_back(1);
+    aNumberingConvertor.push_back(4);
+    CreateElements(aInput,
+                   aMeshInfo,
+                   myMed,
+                   aCellsMapper,
+                   aEntity,
+                   aVTKGeom,
+                   nbPointsInGeom,
+                   aNumberingConvertor,
+                   outGeom2CellIdMap);
+
+    aVTKGeom       = VTK_QUADRATIC_TETRA;
+    nbPointsInGeom = 10;
+    aNumberingConvertor.clear();
+    // 0,2,1,3,6,5,4,7,9,8
+    CreateElements(aInput,
+                   aMeshInfo,
+                   myMed,
+                   aCellsMapper,
+                   aEntity,
+                   aVTKGeom,
+                   nbPointsInGeom,
+                   aNumberingConvertor,
+                   outGeom2CellIdMap);
+    
+    
+    aVTKGeom       = VTK_QUADRATIC_HEXAHEDRON;
+    nbPointsInGeom = 20;
+    aNumberingConvertor.clear();
+    // 0,3,2,1,4,7,6,5,11,10,9,8,15,14,13,12,16,19,18,17
+    CreateElements(aInput,
+                   aMeshInfo,
+                   myMed,
+                   aCellsMapper,
+                   aEntity,
+                   aVTKGeom,
+                   nbPointsInGeom,
+                   aNumberingConvertor,
+                   outGeom2CellIdMap);
+
+    // debug info: checked OK
+    CreatePolyedres(aInput,
+                    aMeshInfo,
+                    myMed,
+                    aCellsMapper,
+                    aEntity,
+                    outGeom2CellIdMap);
+  }
+  
+
+  return 0;
+}
+
+/*!
+  \brief Converts data to med (private auxiliary method)
+  \return 0 if operation has been completed successfully, 1 otherwise
+*/
+int
+VISU_Vtk2MedConvertor
+::Data2MED(std::vector<vtkDataSet*> theListForAdd,
+           MED::PWrapper myMed,
+           MED::PMeshInfo theMeshInfo,
+           TGeom2CellIds& theGeom2CellIdMap)
+{
+  typedef std::vector<vtkPointData*> TPDVec;
+  typedef std::vector<vtkCellData*> TCDVec;  
+  typedef std::map<std::string,TPDVec> TNameToPointData;
+  typedef std::map<std::string,TCDVec> TNameToCellData;
+
+  TNameToPointData aName2PointData;
+  TNameToCellData  aName2CellData;
+  
+  MED::TErr* theErrCode = new MED::TErr();
+  MED::EGeometrieElement geomType;
+  MED::EEntiteMaillage   entity;
+
+  // prepare data to create time stamps
+  const MED::TInt aNbGauss = 1;
+  MED::TProfileInfo::TInfo aTInfo("",0);
+  MED::PProfileInfo aPProfileInfo = myMed->CrProfileInfo( aTInfo );
+  
+  MED::TGeom2Size    aGeom2Size;
+  MED::TGeom2NbGauss aGeom2NbGauss;
+  MED::TGeom2Profile aTGeom2Profile;
+
+  int nbPointsInFirstData = 0;
+  if(theListForAdd.size()>0)
+    nbPointsInFirstData = (theListForAdd[0])->GetNumberOfPoints();
+
+  int nbClasses = theListForAdd.size();
+  
+  for(int iClass=0;iClass<nbClasses;iClass++){
+    vtkDataSet* aClassPtr = theListForAdd[iClass];
+    if(aClassPtr->GetNumberOfPoints() != nbPointsInFirstData){
+      cout << "Warning in PointData: Some vtk file consist of number of points( " <<aClassPtr->GetNumberOfPoints()
+           << ") not equal number of points in first file("<<nbPointsInFirstData<<")"<<endl;
+      cout << "This data will be lost." << endl;
+      continue;
+    }
+
+    if(vtkPointData* aPD = aClassPtr->GetPointData()){
+      int nbArrays = aPD->GetNumberOfArrays();
+      
+      for(int aArrNum=0;aArrNum<nbArrays;aArrNum++)
+      {
+        vtkDataArray* aArr = aPD->GetArray(aArrNum);
+        std::string aName = aArr->GetName();
+        std::set<std::string>::const_iterator aIgnoreIter = myIgnoringFieldList.find(aName);
+        if(aIgnoreIter!=myIgnoringFieldList.end())
+          continue;
+        (aName2PointData[aName]).push_back(aPD);
+      }
+    }
+
+    if(vtkCellData* aCD = aClassPtr->GetCellData()){
+      int nbArrays = aCD->GetNumberOfArrays();
+      
+      for(int aArrNum=0;aArrNum<nbArrays;aArrNum++)
+      {
+        vtkDataArray* aArr = aCD->GetArray(aArrNum);
+        std::string aName = aArr->GetName();
+        std::set<std::string>::const_iterator aIgnoreIter = myIgnoringFieldList.find(aName);
+        if(aIgnoreIter!=myIgnoringFieldList.end())
+          continue;
+        (aName2CellData[aName]).push_back(aCD);
+      }
+    }
+  }
+
+
+  // PointData
+  int aLastField = 0;
+  {
+    geomType = MED::ePOINT1;
+    entity   = MED::eNOEUD;
+    aGeom2Size[geomType]    = nbPointsInFirstData;
+    aGeom2NbGauss[geomType] = aNbGauss;
+    aTGeom2Profile[geomType]= aPProfileInfo;
+    
+    TNameToPointData::const_iterator aIter = aName2PointData.begin();
+    for(int iField=1;aIter!=aName2PointData.end();aIter++,iField++){
+      std::string aFieldName = aIter->first;
+      TPDVec aPD2Vec = (aIter->second);
+      int nbComp = 0;
+      if(aPD2Vec.size() >0 ){
+        if(vtkPointData* aPD0  = aPD2Vec[0]){
+          if(vtkDataArray* aArr0 = aPD0->GetArray(aFieldName.c_str()))
+            nbComp = aArr0->GetNumberOfComponents();
+        }
+      }
+      
+      MED::PFieldInfo aFieldInfo = myMed->CrFieldInfo(theMeshInfo,
+                                                      nbComp);
+
+      string aFieldName_PD = "Point " + aFieldName;
+      aFieldInfo->SetName(aFieldName_PD.c_str());
+      
+      myMed->SetFieldInfo(aFieldInfo);
+
+      TPDVec::const_iterator aPDIter = aPD2Vec.begin();
+      for(int iTStamp=0;aPDIter!=aPD2Vec.end();aPDIter++,iTStamp++){
+        vtkPointData* aPD = *aPDIter;
+        vtkDataArray* aArr = aPD->GetArray(aFieldName.c_str());
+        MED::TFloat aTS = iTStamp < (int)myTStamps.size() ? myTStamps[ iTStamp ] : iTStamp;
+        MED::PTimeStampInfo aTempTimeStampInfo = myMed->CrTimeStampInfo (aFieldInfo,
+                                                                         entity,
+                                                                         aGeom2Size,
+                                                                         aGeom2NbGauss,
+                                                                         iTStamp,
+                                                                         iTStamp,
+                                                                         aTS);
+        
+        MED::PTimeStampVal aTempTimeStampVal = myMed->CrTimeStampVal (aTempTimeStampInfo,
+                                                                      aTGeom2Profile);
+        
+        MED::TMeshValue& aTMeshValue = aTempTimeStampVal->GetMeshValue(geomType);
+        
+        MED::TValue& aValue = aTMeshValue.myValue; // float
+        int nbValues = aValue.size();
+        for(int i=0;i<nbValues;i++){
+          aValue[i] = *(float*)(aArr->GetVoidPointer(i));
+        }
+        
+        myMed->SetTimeStamp( aTempTimeStampVal, theErrCode);
+        if(*theErrCode==0){
+          cout << "Error in "<<__FILE__<<"["<<__LINE__<<"] in method SetTimeStamp(...)"<<endl;
+          return 1;
+        }
+      }
+      aLastField = iField;
+    }
+  }
+  // CellData
+  {
+    MED::TEntityInfo aEntityInfo = myMed->GetEntityInfo(theMeshInfo);
+    aGeom2Size.clear();
+    aGeom2NbGauss.clear();
+    aTGeom2Profile.clear();
+    aGeom2Size = aEntityInfo[ MED::eMAILLE ];
+    entity   = MED::eMAILLE;
+    MED::TGeom2Size::iterator geom_nb;
+    for ( geom_nb = aGeom2Size.begin(); geom_nb != aGeom2Size.end(); ++geom_nb ) { // loop on geometric types of cell
+      aGeom2NbGauss[ geom_nb->first ] = aNbGauss;
+      aTGeom2Profile[ geom_nb->first ] = aPProfileInfo;
+    }
+
+    
+    TNameToCellData::const_iterator aIter = aName2CellData.begin();
+    for(int iField=1;aIter!=aName2CellData.end();aIter++,iField++){
+      std::string aFieldName = aIter->first;
+      TCDVec aCD2Vec = (aIter->second);
+      int nbComp = 0;
+      if(aCD2Vec.size() >0 ){
+        if(vtkCellData* aCD0  = aCD2Vec[0]){
+          if(vtkDataArray* aArr0 = aCD0->GetArray(aFieldName.c_str()))
+            nbComp = aArr0->GetNumberOfComponents();
+        }
+      }
+      
+      MED::PFieldInfo aFieldInfo = myMed->CrFieldInfo(theMeshInfo,
+                                                      nbComp);
+
+      string aFieldName_CD = "Cell " + aFieldName;
+      aFieldInfo->SetName(aFieldName_CD.c_str());
+      
+      myMed->SetFieldInfo(aFieldInfo);
+
+      TCDVec::const_iterator aCDIter = aCD2Vec.begin();
+      for(int iTStamp=0;aCDIter!=aCD2Vec.end();aCDIter++,iTStamp++){
+        vtkCellData* aCD = *aCDIter;
+        vtkDataArray* aArr = aCD->GetArray(aFieldName.c_str());
+        MED::TFloat aTS = iTStamp < (int)myTStamps.size() ? myTStamps[ iTStamp ] : iTStamp;
+        MED::PTimeStampInfo aTempTimeStampInfo = myMed->CrTimeStampInfo (aFieldInfo,
+                                                                         entity,
+                                                                         aGeom2Size,
+                                                                         aGeom2NbGauss,
+                                                                         iTStamp,
+                                                                         iTStamp,
+                                                                         aTS);
+        
+        MED::PTimeStampVal aTempTimeStampVal = myMed->CrTimeStampVal (aTempTimeStampInfo,
+                                                                      aTGeom2Profile);
+
+        for ( geom_nb = aGeom2Size.begin(); geom_nb != aGeom2Size.end(); ++geom_nb ) { // loop on geometric types of cell
+          geomType = geom_nb->first;
+          TCellIds& aCellIds = theGeom2CellIdMap[geomType];
+          
+          MED::TMeshValue& aTMeshValue = aTempTimeStampVal->GetMeshValue(geomType);
+          
+          MED::TValue& aValue = aTMeshValue.myValue; // float
+          int nbValues = aValue.size();
+          int nbCellIds = aCellIds.size();
+          if(nbValues!=nbCellIds*nbComp){
+            cout << "Warning in "<<__FILE__<<"["<<__LINE__<<"] the data for geometry:"<<geomType<<" will be ignored"<<endl;
+            continue;
+          }
+          if(MYDEBUG_VALUES) cout << "Geom["<<geomType<<"]"<<endl;
+          for(int i=0;i<nbCellIds;i++){
+            if(MYDEBUG_VALUES) cout << "\t|";
+            for(int iComp=0;iComp<nbComp;iComp++){
+              aValue[nbComp*i+iComp] = *(float*)(aArr->GetVoidPointer(nbComp*aCellIds[i]+iComp));
+              if(MYDEBUG_VALUES) cout << aValue[nbComp*i+iComp] << "   ";
+            }
+            if(MYDEBUG_VALUES) cout << "|" << endl;
+          }
+          
+          myMed->SetTimeStamp( aTempTimeStampVal, theErrCode);
+          if(*theErrCode==0){
+            cout << "Error in "<<__FILE__<<"["<<__LINE__<<"] in method SetTimeStamp(...)"<<endl;
+            return 1;
+          }
+        }
+      }
+    }
+  }
+  
+  
+  return 0;
+}
+
+/*!
+  \brief Writes data to MED file
+  \return 0 if operation has been completed successfully, 1 otherwise
+*/
+int
+VISU_Vtk2MedConvertor
+::Execute()
+{
+  int aStatus = 1;
+  if (myFirstVTKFileName.size() == 0 ||
+      myMEDFileName.size() == 0)
+  {
+    cout << "Error! Bad input file names output med file name or vtk file name."<<endl;
+    cout << "Exit."<<endl;
+    return 1;
+  }
+  
+  MED::PWrapper myMed;
+  MED::PMeshInfo aMeshInfo;
+  int aMeshDimension = 3;
+  myMed = CrWrapper(myMEDFileName.c_str(),myVersion);
+  aMeshInfo = myMed->CrMeshInfo(aMeshDimension,myMeshName.c_str());
+  myMed->SetMeshInfo(aMeshInfo);
+    
+  {
+    typedef vtkDataSetReader TReader;
+    TReader* aReader = TReader::New();
+    aReader->SetFileName(myFirstVTKFileName.c_str());
+    aReader->Update();
+    TGeom2CellIds myGeom2CellIds;
+    
+    typedef std::vector<vtkDataSet*> TListUG;
+    TListUG aList;
+
+    if(aReader->IsFilePolyData())
+    {
+      if(MYDEBUG) cout << "PolyData" << endl;
+      typedef vtkPolyData TCommonType;
+      TCommonType* aInput = aReader->GetPolyDataOutput();
+
+      aStatus = Geometry2MED(aInput,
+                             myMed,
+                             aMeshInfo,
+                             myGeom2CellIds);
+      
+    
+      TCommonType* aUG1 = TCommonType::New();
+      aUG1->ShallowCopy(aInput);
+      vtkDataSet* aTmp1 = dynamic_cast<vtkDataSet*>(aUG1);
+      aList.push_back(aTmp1);
+
+      TVectorString::iterator aFilesIter = myDataVTKFileNames.begin();
+      for(;aFilesIter!=myDataVTKFileNames.end();aFilesIter++){
+        aReader->SetFileName((*aFilesIter).c_str());
+        aReader->Update();
+        TCommonType* aUG2 = TCommonType::New();
+        aUG2->ShallowCopy(aReader->GetPolyDataOutput());
+        vtkDataSet* aTmp2 = dynamic_cast<vtkDataSet*>(aUG2);
+        aList.push_back(aTmp2);
+      }
+    } else if (aReader->IsFileUnstructuredGrid()){
+      if (MYDEBUG) cout << "UnstructuredGrid" << endl;
+      typedef vtkUnstructuredGrid TCommonType;
+      TCommonType* aInput = aReader->GetUnstructuredGridOutput();
+
+      aStatus = Geometry2MED(aInput,
+                             myMed,
+                             aMeshInfo,
+                             myGeom2CellIds);
+      
+    
+      TCommonType* aUG1 = TCommonType::New();
+      aUG1->ShallowCopy(aInput);
+      vtkDataSet* aTmp1 = dynamic_cast<vtkDataSet*>(aUG1);
+      aList.push_back(aTmp1);
+
+      TVectorString::iterator aFilesIter = myDataVTKFileNames.begin();
+      for(;aFilesIter!=myDataVTKFileNames.end();aFilesIter++){
+        aReader->SetFileName((*aFilesIter).c_str());
+        aReader->Update();
+        TCommonType* aUG2 = TCommonType::New();
+        aUG2->ShallowCopy(aReader->GetUnstructuredGridOutput());
+        vtkDataSet* aTmp2 = dynamic_cast<vtkDataSet*>(aUG2);
+        aList.push_back(aTmp2);
+      }
+    } 
+
+    Data2MED(aList,
+             myMed,
+             aMeshInfo,
+             myGeom2CellIds);
+    
+    
+    // clear aList by removing of unstructured grids
+    TListUG::iterator aIter = aList.begin();
+    for(;aIter!=aList.end();aIter++)
+      (*aIter)->Delete();
+    
+    aReader->Delete();
+  }
+  
+  return aStatus;
+}
diff --git a/src/CONVERTOR/VISU_Vtk2MedConvertor.hxx b/src/CONVERTOR/VISU_Vtk2MedConvertor.hxx
new file mode 100644 (file)
index 0000000..bf4f6ba
--- /dev/null
@@ -0,0 +1,161 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  File   : VISU_Vtk2MedConvertor.hxx
+//  Author : Eugeny NIKOLAEV, Open CASCADE SAS
+//
+
+#ifndef VISU_VTK2MEDCONVERTOR_H
+#define VISU_VTK2MEDCONVERTOR_H
+
+#include <MED_Common.hxx>
+#include <vtkIntArray.h>
+#include <vtkDataSet.h>
+
+#include <vector>
+#include <map>
+#include <string>
+
+class vtkUnstructuredGrid;
+class vtkIntArray;
+
+class VISU_Vtk2MedConvertor
+{
+public:
+
+  typedef std::vector<std::string>                  TVectorString;
+  typedef std::vector<double>                       TVectorDouble;
+  typedef std::vector<int>                          TCellIds;
+  typedef std::map<MED::EGeometrieElement,TCellIds> TGeom2CellIds;
+  
+  VISU_Vtk2MedConvertor();
+  
+  VISU_Vtk2MedConvertor( const std::string theMEDFileName,
+                        const std::string theFirstVTKFileName );
+  
+  VISU_Vtk2MedConvertor( const std::string theMEDFileName,
+                        const std::string theFirstVTKFileName,
+                        const TVectorString theDataVTKFileNames );
+  
+  
+  void               setMEDFileName( const std::string theFileName );
+  std::string        getMEDFileName() const;
+  
+  void               setFirstVTKFileName( const std::string theFileName );
+  std::string        getFirstVTKFileName() const;
+  
+  void               setDataVTKFileNames( const TVectorString theFileNames );
+  void               getDataVTKFileNames( TVectorString& ) const;
+
+  void               setVersion( const MED::EVersion theVersion );
+  MED::EVersion      getVersion() const;
+
+  void               setMeshName( const std::string theMeshName );
+  std::string        getMeshName() const;
+
+  void               addToIgnoringFieldList( const std::string& theFieldName );
+  void               eraseFromIgnoringFieldList( const std::string& theFieldName );
+  const std::set<std::string>& getIgnoringFieldList() const;
+
+  void               setCellDataFieldNameIDS( const std::string& theFieldName );
+  const std::string& getCellDataFieldNameIDS() const;
+    
+  void               setPointDataFieldNameIDS( const std::string& theFieldName );
+  const std::string& getPointDataFieldNameIDS() const;
+
+  void               setTimeStamps( const TVectorDouble& theTStamps );
+  void               getTimeStamps( TVectorDouble& theTStamps ) const;
+    
+  int                Execute();
+    
+protected:
+  
+  TVectorString         myDataVTKFileNames; // vtk files with data
+  std::string           myMEDFileName; // output MED file name.
+  std::string           myFirstVTKFileName;  // vtk file with geometry,data from this file also used.
+  MED::EVersion         myVersion;
+  std::string           myMeshName;
+  std::set<std::string> myIgnoringFieldList;
+  std::string           myCellDataFieldNameIDS;
+  std::string           myPointDataFieldNameIDS;
+  TVectorDouble         myTStamps;
+  
+private:
+
+  // Fill container with indices of cells which match given type.
+  void
+  GetIdsOfCellsOfType( vtkDataSet* theInput, // input
+                      const int type, // input
+                      vtkIntArray *array ); // output
+
+  
+  // ret value 0 - OK
+  // ret value 1 - ERROR
+  int
+  Geometry2MED( vtkDataSet* aInput,
+               MED::PWrapper myMed,
+               MED::PMeshInfo aMeshInfo,
+               TGeom2CellIds& outGeom2CellIdMap );
+
+  // ret value 0 - OK
+  // ret value 1 - ERROR
+  int
+  Data2MED( std::vector<vtkDataSet*> theListForAdd,
+           MED::PWrapper myMed,
+           MED::PMeshInfo theMeshInfo,
+           TGeom2CellIds& theGeom2CellIdMap );
+
+  // ret value 0 - OK
+  // ret value 1 - ERROR
+  int
+  CreateElements( vtkDataSet* theInput,
+                 MED::PMeshInfo theMeshInfo,
+                 MED::PWrapper  theMed,
+                 vtkIntArray* theCellsMapper,
+                 MED::EEntiteMaillage theEntity,
+                 int theVTKGeom,
+                 int nbPointsInGeom,
+                 std::vector<int>& theNumberingConvertor,
+                 TGeom2CellIds& theGeom2CellIdMap );
+
+  // ret value 0 - OK
+  // ret value 1 - ERROR
+  int
+  CreatePolygons( vtkDataSet* theInput,
+                 MED::PMeshInfo theMeshInfo,
+                 MED::PWrapper  theMed,
+                 vtkIntArray* theCellsMapper,
+                 MED::EEntiteMaillage theEntity,
+                 TGeom2CellIds& theGeom2CellIdMap );
+
+  // ret value 0 - OK
+  // ret value 1 - ERROR
+  int
+  CreatePolyedres( vtkDataSet* theInput,
+                  MED::PMeshInfo theMeshInfo,
+                  MED::PWrapper  theMed,
+                  vtkIntArray* theCellsMapper,
+                  MED::EEntiteMaillage theEntity,
+                  TGeom2CellIds& theGeom2CellIdMap );
+  
+};
+
+#endif // VISU_VTK2MEDCONVERTOR_H
index 452ba6fe45626bf6216aa03efef9dfaa47c5b948..c34257744a52d02178ed1fef963206f1f2fdf7a5 100644 (file)
@@ -1,30 +1,35 @@
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 #  File   : Makefile.in
 #  Author : Alexey Petrov
 #  Module : VISU
 #  $Header: 
-
+#
 include $(top_srcdir)/adm_local/unix/make_common_starter.am
 
 lib_LTLIBRARIES= libVISUEngine.la
+
+salomeinclude_HEADERS= VISU_Engine_i.hh
+
 dist_libVISUEngine_la_SOURCES= VISU_Engine_i.cc
 
 libVISUEngine_la_CPPFLAGS= $(KERNEL_CXXFLAGS) $(MED_CXXFLAGS) $(CORBA_CXXFLAGS) $(CORBA_INCLUDES) \
index 80b53607fd17f052e13cc9df8dbef42b8d4fb78e..21b3eeae1bfda2aa2749a4d5a1f12e9f700f8b7f 100644 (file)
@@ -1,22 +1,24 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
 #include "VISU_Engine_i.hh"
 #include "utilities.h"
 
@@ -278,7 +280,7 @@ namespace VISU{
     return myVisuGen->DeformedShapeOnField(theResult,theMeshName,theEntity,theFieldName,theIteration);
   }
 
-  ScalarMapOnDeformedShape_ptr 
+  DeformedShapeAndScalarMap_ptr 
   VISU_Gen_i
   ::ScalarMapOnDeformedShapeOnField(Result_ptr theResult, 
                                    const char* theMeshName, 
@@ -286,7 +288,18 @@ namespace VISU{
                                    const char* theFieldName, 
                                    CORBA::Long theIteration)
   {
-    return myVisuGen->ScalarMapOnDeformedShapeOnField(theResult,theMeshName,theEntity,theFieldName,theIteration);
+    return DeformedShapeAndScalarMapOnField(theResult,theMeshName,theEntity,theFieldName,theIteration);
+  }
+
+  DeformedShapeAndScalarMap_ptr 
+  VISU_Gen_i
+  ::DeformedShapeAndScalarMapOnField(Result_ptr theResult, 
+                                    const char* theMeshName, 
+                                    VISU::Entity theEntity,
+                                    const char* theFieldName, 
+                                    CORBA::Long theIteration)
+  {
+    return myVisuGen->DeformedShapeAndScalarMapOnField(theResult,theMeshName,theEntity,theFieldName,theIteration);
   }
 
   Vectors_ptr 
@@ -459,4 +472,59 @@ namespace VISU{
   {
     return myVisuGen->GetColoredPrs3dCache(theStudy);
   }
+
+
+
+  CORBA::Long VISU_Gen_i::CreateClippingPlane(CORBA::Double X,CORBA::Double  Y, CORBA::Double Z, 
+                                             CORBA::Double dX, CORBA::Double dY, CORBA::Double dZ, 
+                                             CORBA::Boolean isAuto, const char* name)
+  {
+    return myVisuGen->CreateClippingPlane(X, Y, Z, dX, dY, dZ, isAuto, name);
+  }
+  
+
+  void VISU_Gen_i::EditClippingPlane(CORBA::Long id, CORBA::Double X,CORBA::Double  Y, CORBA::Double Z, 
+                                             CORBA::Double dX, CORBA::Double dY, CORBA::Double dZ, 
+                                             CORBA::Boolean isAuto, const char* name)
+  {
+    myVisuGen->EditClippingPlane(id, X, Y, Z, dX, dY, dZ, isAuto, name);
+  }
+  
+  /* Returns clipping plane by its Id */
+  VISU::ClippingPlane* VISU_Gen_i::GetClippingPlane(CORBA::Long id)
+  {
+    return myVisuGen->GetClippingPlane(id);
+  }
+  
+  /* Deletes clipping plane by its Id */
+  CORBA::Boolean VISU_Gen_i::DeleteClippingPlane(CORBA::Long id)
+  {
+    return myVisuGen->DeleteClippingPlane(id);
+  }
+  
+  /* Applyes a clipping plane with Id to presentation thePrs */
+  CORBA::Boolean VISU_Gen_i::ApplyClippingPlane(Prs3d_ptr thePrs, CORBA::Long id)
+  {
+    return myVisuGen->ApplyClippingPlane(thePrs, id);
+  }
+  
+  CORBA::Boolean VISU_Gen_i::DetachClippingPlane(Prs3d_ptr thePrs, CORBA::Long id)
+  {
+    return myVisuGen->DetachClippingPlane(thePrs, id);
+  }
+  
+  /* Get number of clipping planes */
+  CORBA::Long VISU_Gen_i::GetClippingPlanesNb()
+  {
+    return myVisuGen->GetClippingPlanesNb();
+  }
+
+  CORBA::Boolean VISU_Gen_i::VTK2MED( const VISU::string_array& theVTKFiles,
+                                      const char* theMEDFile,
+                                      const char* theMeshName,
+                                      const VISU::double_array& theTStamps )
+  {
+    return myVisuGen->VTK2MED(theVTKFiles, theMEDFile, theMeshName, theTStamps);
+  }   
+
 };
index 8c5964c6e5e903ae416b8933f6325def9b4fd771..93847a27f4ab837ff8849c4cdb8f503da8bf732e 100644 (file)
@@ -1,22 +1,24 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
 #ifndef __VISU_ENGINE_I_H__
 #define __VISU_ENGINE_I_H__
 
@@ -152,14 +154,23 @@ namespace VISU
                  const char* theFieldName, 
                  CORBA::Long theIteration);
 
+    //This function is obsolete. Use DeformedShapeAndScalarMapOnField instead.
     virtual
-    ScalarMapOnDeformedShape_ptr
+    DeformedShapeAndScalarMap_ptr
     ScalarMapOnDeformedShapeOnField(Result_ptr theResult, 
                                    const char* theMeshName, 
                                    VISU::Entity theEntity,
                                    const char* theFieldName, 
                                    CORBA::Long theIteration);
 
+    virtual
+    DeformedShapeAndScalarMap_ptr
+    DeformedShapeAndScalarMapOnField(Result_ptr theResult, 
+                                    const char* theMeshName, 
+                                    VISU::Entity theEntity,
+                                    const char* theFieldName, 
+                                    CORBA::Long theIteration);
+    
     //Create Digital Presentation
     virtual Table_ptr CreateTable(const char* theTableEntry);
     virtual Curve_ptr CreateCurve(Table_ptr theTable, CORBA::Long theHRow, CORBA::Long theVRow);
@@ -220,6 +231,37 @@ namespace VISU
     virtual
     VISU::ColoredPrs3dCache_ptr
     GetColoredPrs3dCache(SALOMEDS::Study_ptr theStudy);
+    
+
+
+    virtual CORBA::Long CreateClippingPlane(CORBA::Double X,CORBA::Double  Y, CORBA::Double Z, 
+                                           CORBA::Double dX, CORBA::Double dY, CORBA::Double dZ, 
+                                           CORBA::Boolean isAuto, const char* name);
+
+    virtual void EditClippingPlane(CORBA::Long id, CORBA::Double X,CORBA::Double  Y, CORBA::Double Z, 
+                                  CORBA::Double dX, CORBA::Double dY, CORBA::Double dZ, 
+                                  CORBA::Boolean isAuto, const char* name);
+
+    /* Returns clipping plane by its Id */
+    virtual VISU::ClippingPlane* GetClippingPlane(CORBA::Long id);
+    
+    /* Deletes clipping plane by its Id */
+    virtual CORBA::Boolean DeleteClippingPlane(CORBA::Long id);
+    
+    /* Applyes a clipping plane with Id to presentation thePrs */
+    virtual CORBA::Boolean ApplyClippingPlane(Prs3d_ptr thePrs, CORBA::Long id);
+    
+    /* Detaches a clipping plane with Id from presentation thePrs */
+    virtual CORBA::Boolean DetachClippingPlane(Prs3d_ptr thePrs, CORBA::Long id);
+    
+    /* Get number of clipping planes */
+    virtual CORBA::Long GetClippingPlanesNb();
+
+    /* Convert a set of VTK files to the MED file */
+    virtual CORBA::Boolean VTK2MED( const VISU::string_array& theVTKFiles,
+                                    const char* theMEDFile,
+                                    const char* theMeshName,
+                                    const VISU::double_array& theTStamps );
   };
 };
 
index 136786c1ec6b2c817de83dd6303700416f0c92ae..09989298646e1042701372b22128531db6d05f63 100644 (file)
@@ -1,31 +1,30 @@
-#  VISU VISUGUI : GUI of VISU component
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
 #
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
 #
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+#  VISU VISUGUI : GUI of VISU component
 #  File   : Makefile.in
 #  Author : Marc Tajchman (CEA)
 #  Module : VISU
 #  $Header$
-
+#
 include $(top_srcdir)/adm_local/unix/make_common_starter.am
 
 lib_LTLIBRARIES= libVISUGUITOOLS.la
@@ -45,4 +44,7 @@ libVISUGUITOOLS_la_CPPFLAGS=  -ftemplate-depth-32 \
        $(PYTHON_INCLUDES) $(HDF5_INCLUDES) $(QWT_INCLUDES) \
        $(KERNEL_CXXFLAGS) $(GUI_CXXFLAGS) $(BOOST_CPPFLAGS)
 
-libVISUGUITOOLS_la_LDFLAGS= $(QWT_LIBS) $(KERNEL_LDFLAGS) $(GUI_LDFLAGS)
+libVISUGUITOOLS_la_LDFLAGS= \
+       $(KERNEL_LDFLAGS) -lSALOMELocalTrace \
+       $(GUI_LDFLAGS) -lCAM \
+       $(QWT_LIBS)  
index 30159eb267e16ef6fce4d0244dc9d99613e5f1b2..615d8906393242b4d1fd10c90f133ccc8714b0ad 100755 (executable)
@@ -1,28 +1,28 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-//  See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org 
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VisuGUITools.h
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #ifndef _VisuGUITools_H_
 #define _VisuGUITools_H_
 
index 5dc1a5470d11c53191e9a596b8c8584824b3def0..5bf64aa48f39fac5986d9659211f75a0237abb4e 100644 (file)
@@ -1,26 +1,28 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VisuGUI_TableDlg.cxx
 //  Author : Vadim SANDLER
 //  Module : SALOME
-
+//
 #include "VisuGUI_TableDlg.h"
 
 #include "SUIT_Tools.h"
 
 #include "LightApp_Application.h"
 
+#include "CAM_Module.h"
+
 #include "SALOMEDSClient_Study.hxx"
 #include "SALOMEDSClient_GenericAttribute.hxx"
 #include "SALOMEDSClient_AttributeTableOfInteger.hxx"
 #include "SALOMEDSClient_AttributeTableOfReal.hxx"
 #include "SALOMEDSClient_StudyBuilder.hxx"
 
-#include <qlayout.h>
-#include <qvalidator.h>
-#include <qtable.h>
-#include <qtabwidget.h>
-#include <qvaluelist.h>
-#include <qmemarray.h>
-#include <qinputdialog.h>
-#include <qlabel.h>
+#include <QLayout>
+#include <QValidator>
+#include <QTableWidget>
+#include <QTabWidget>
+#include <QList>
+#include <QVector>
+#include <QInputDialog>
+#include <QLabel>
+#include <QIntValidator>
+#include <QDoubleValidator>
+#include <QKeyEvent>
+#include <QHeaderView>
+
 #include "utilities.h"
+
 using namespace std;
 
 #define MARGIN_SIZE       11
@@ -53,13 +63,72 @@ using namespace std;
 #define MIN_TABLE_WIDTH   200
 #define MIN_TABLE_HEIGHT  200
 
+NumDelegateItem::NumDelegateItem( QObject* parent, NumValidator mode )
+  : QItemDelegate( parent ),
+    myMode( mode )
+{
+}
+
+NumDelegateItem::~NumDelegateItem()
+{
+}
 
-class VisuGUI_Table : public QTable {
+QWidget * NumDelegateItem::createEditor( QWidget * parent,
+                                         const QStyleOptionViewItem & option,
+                                         const QModelIndex & index ) const
+{
+  QLineEdit *editor = new QLineEdit(parent);
+  switch ( myMode )
+  {
+  case NV_Int:
+    editor->setValidator( new QIntValidator( editor ) );
+    break;
+  case NV_Real:
+    editor->setValidator( new QDoubleValidator( editor ) );
+    break;
+  default:
+    editor->setText( "No validator!" );
+  }
+  
+  return editor;
+}
+
+void NumDelegateItem::setEditorData( QWidget * editor,
+                                     const QModelIndex & index ) const
+{
+  QLineEdit *aLE = qobject_cast<QLineEdit*>(editor);
+  if ( !aLE )
+    return;
+  
+  switch ( myMode )
+  {
+  case NV_Int:
+    {
+      int value = index.model()->data(index, Qt::DisplayRole).toInt();
+      aLE->setText( QString("%1").arg( value ) );
+      break;
+    }
+  case NV_Real:
+    {
+      double value = index.model()->data(index, Qt::DisplayRole).toDouble();
+      aLE->setText( QString("%1").arg( value ) );
+      break;
+    }
+  default:
+    aLE->setText( "No validator!!!" );
+  }  
+}
+
+
+
+
+
+/*class VisuGUI_Table : public QTableWidget {
 public:
-  VisuGUI_Table( Orientation orient, QWidget* parent = 0, const char* name = 0 ) 
-    : QTable( parent, name ), myValidator( 0 ), myOrientation( orient ) {}
-  VisuGUI_Table( Orientation orient, int numRows, int numCols, QWidget* parent = 0, const char* name = 0 )
-    : QTable( numRows, numCols, parent, name ), myValidator( 0 ), myOrientation( orient ) {}
+  VisuGUI_Table( Orientation orient, QWidget* parent = 0 ) 
+    : QTableWidget( parent ), myValidator( 0 ), myOrientation( orient ) {}
+  VisuGUI_Table( Orientation orient, int numRows, int numCols, QWidget* parent = 0 )
+    : QTableWidget( numRows, numCols, parent ), myValidator( 0 ), myOrientation( orient ) {}
   
   void setValidator( QValidator* v = 0 ) { myValidator = v;  }
   bool isEditing() const { return QTable::isEditing(); }
@@ -67,7 +136,7 @@ public:
 protected:
   QWidget* createEditor ( int row, int col, bool initFromCell ) const
     {
-      bool testUnits = ( myOrientation == Horizontal && col == 0 ) || ( myOrientation == Vertical && row == 0 );
+      bool testUnits = ( myOrientation == Qt::Horizontal && col == 0 ) || ( myOrientation == Qt::Vertical && row == 0 );
       QWidget* wg = QTable::createEditor( row, col, initFromCell );
       if ( wg && wg->inherits("QLineEdit") && myValidator && !testUnits ) 
        (( QLineEdit*)wg)->setValidator( myValidator );
@@ -77,7 +146,7 @@ protected:
 protected:
   QValidator* myValidator;
   Orientation myOrientation;
-};
+  };*/
 
 /*!
   Constructor
@@ -86,12 +155,12 @@ VisuGUI_TableDlg::VisuGUI_TableDlg( QWidget* parent,
                                    _PTR(SObject) obj, 
                                    bool edit,
                                    int which,
-                                   Orientation orient,
+                                   Qt::Orientation orient,
                                    bool showColumnTitles )
-     : QDialog( parent, "", false, WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu | WDestructiveClose),
+     : QDialog( parent, Qt::WindowTitleHint | Qt::WindowSystemMenuHint ),
        myIntTable( 0 ), myRealTable( 0 )
 {
-  setCaption( edit ? tr( "EDIT_TABLE_TLT" ) : tr( "VIEW_TABLE_TLT" ) );
+  setWindowTitle( edit ? tr( "EDIT_TABLE_TLT" ) : tr( "VIEW_TABLE_TLT" ) );
   setSizeGripEnabled( true );
 
   myObject = obj;
@@ -113,17 +182,21 @@ VisuGUI_TableDlg::VisuGUI_TableDlg( QWidget* parent,
   QWidget* top;
   QVBoxLayout* tl;
   if ( bDoInt && bDoReal ) {
-    top = new QTabWidget( this, "TabWidget" );
-    ( ( QTabWidget* ) top) ->setMargin( MARGIN_SIZE );
+    top = new QTabWidget( this );
+    //( ( QTabWidget* ) top) ->setMargin( MARGIN_SIZE );
   }
   else {
-    top = new QWidget( this, "DumbWidget" );
+    top = new QWidget( this );
     tl  = new QVBoxLayout( top ); tl->setMargin( 0 ); tl->setSpacing( SPACING_SIZE );
   }
 
   if ( bDoInt ) {
     myIntTable = new VisuGUI_TableWidget( top, "myIntTable", edit, orient, showColumnTitles );
-    myIntTable->getTable()->setValidator( new QIntValidator( this ) );
+    //myIntTable->getTable()->setValidator( new QIntValidator( this ) );
+    //QAbstractItemDelegate* item = myIntTable->getTable()->itemDelegate();
+    myIntTable->getTable()->setItemDelegate( new NumDelegateItem( myIntTable, NumDelegateItem::NV_Int ) );
+    //item->deleteLater();
+                                 
     if ( bDoInt && bDoReal )
       ( ( QTabWidget* )top )->addTab( myIntTable, tr( "TABLE_OF_INTEGER_TLT" ) );
     else
@@ -131,15 +204,18 @@ VisuGUI_TableDlg::VisuGUI_TableDlg( QWidget* parent,
   }
   if ( bDoReal ) {
     myRealTable = new VisuGUI_TableWidget( top, "myRealTable", edit, orient, showColumnTitles );
-    myRealTable->getTable()->setValidator( new QDoubleValidator( this ) );
+    //myRealTable->getTable()->setValidator( new QDoubleValidator( this ) );
+    //QAbstractItemDelegate* item = myIntTable->getTable()->itemDelegate();
+    myRealTable->getTable()->setItemDelegate( new NumDelegateItem( myRealTable, NumDelegateItem::NV_Real ) );
+    //item->deleteLater();
     if ( bDoInt && bDoReal )
       ( ( QTabWidget* )top )->addTab( myRealTable, tr( "TABLE_OF_REAL_TLT" ) );
     else
       tl->addWidget( myRealTable );
   }
   if ( !bDoInt && !bDoReal ) {
-    QLabel *dumbLabel = new QLabel( tr( "ERR_TABLE_NOT_AVAILABLE" ), top, "DumbLabel" );
-    dumbLabel->setAlignment( AlignCenter );
+    QLabel *dumbLabel = new QLabel( tr( "ERR_TABLE_NOT_AVAILABLE" ), top );
+    dumbLabel->setAlignment( Qt::AlignCenter );
     tl->addWidget( dumbLabel );
   }
 
@@ -227,20 +303,20 @@ void VisuGUI_TableDlg::onOK()
              }
              if ( !bEmptyRow ) {  // Skip rows with no data !!!
                // set row title
-               tblIntAttr->SetRowTitle( nRow+1, rowTitles[ i ].isNull() ? "" : rowTitles[ i ].latin1() ); 
+               tblIntAttr->SetRowTitle( nRow+1, rowTitles[ i ].isNull() ? "" : (const char*)rowTitles[ i ].toLatin1() ); 
                // set row unit
-               tblIntAttr->SetRowUnit( nRow+1, units[ i ].isNull() ? "" : units[ i ].latin1() ); 
+               tblIntAttr->SetRowUnit( nRow+1, units[ i ].isNull() ? "" : (const char*)units[ i ].toLatin1() ); 
                nRow++;
              }
            }
            if ( nRow > 0 ) { // Set columns only if table is not empty, otherwise exception is raised !!!
              // column titles
              for ( i = 0; i < colTitles.count(); i++ )
-               tblIntAttr->SetColumnTitle( i+1, colTitles[ i ].isNull() ? "" : colTitles[ i ].latin1() );
+               tblIntAttr->SetColumnTitle( i+1, colTitles[ i ].isNull() ? "" : (const char*)colTitles[ i ].toLatin1() );
            }
          }
          // title
-         tblIntAttr->SetTitle( myIntTable->getTableTitle().latin1() );
+         tblIntAttr->SetTitle( (const char*)myIntTable->getTableTitle().toLatin1() );
        }
        if ( myRealTable ) {
          builder->RemoveAttribute( myObject, "AttributeTableOfReal" );
@@ -271,20 +347,20 @@ void VisuGUI_TableDlg::onOK()
              }
              if ( !bEmptyRow ) {  // Skip rows with no data !!!
                // set row title
-               tblRealAttr->SetRowTitle( nRow+1, rowTitles[ i ].isNull() ? "" : rowTitles[ i ].latin1() ); 
+               tblRealAttr->SetRowTitle( nRow+1, rowTitles[ i ].isNull() ? "" : (const char*)rowTitles[ i ].toLatin1() ); 
                // set row unit
-               tblRealAttr->SetRowUnit( nRow+1, units[ i ].isNull() ? "" : units[ i ].latin1() );
+               tblRealAttr->SetRowUnit( nRow+1, units[ i ].isNull() ? "" : (const char*)units[ i ].toLatin1() );
                nRow++;
              }
            }
            if ( nRow > 0 ) { // Set columns only if table is not empty, otherwise exception is raised !!!
              // column titles
              for ( i = 0; i < colTitles.count(); i++ )
-               tblRealAttr->SetColumnTitle( i+1, colTitles[ i ].isNull() ? "" : colTitles[ i ].latin1() );
+               tblRealAttr->SetColumnTitle( i+1, colTitles[ i ].isNull() ? "" : (const char*)colTitles[ i ].toLatin1() );
            }
          }
          // title
-         tblRealAttr->SetTitle( myRealTable->getTableTitle().latin1() );
+         tblRealAttr->SetTitle( (const char*)myRealTable->getTableTitle().toLatin1() );
        }
        if ( myIntTable || myRealTable)
          builder->CommitCommand(); // commit transaction !!!!!!!!!!!!!!!!!!!!!!!!!!!
@@ -295,7 +371,7 @@ void VisuGUI_TableDlg::onOK()
        MESSAGE("VisuGUI_TableDlg::onOK : Exception has been caught !!!");
        builder->AbortCommand();  // abort transaction  !!!!!!!!!!!!!!!!!!!!!!!!!!!
        done = false;
-       SUIT_MessageBox::error1 ( this, tr("ERR_ERROR"), tr("ERR_APP_EXCEPTION"), tr ("BUT_OK") );
+       SUIT_MessageBox::critical ( this, tr("ERR_ERROR"), tr("ERR_APP_EXCEPTION") );
       }
     }
   }
@@ -319,10 +395,9 @@ void VisuGUI_TableDlg::onHelp()
 #else
                platform = "application";
 #endif
-    SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"),
-                          QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
-                          arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
-                          QObject::tr("BUT_OK"));
+    SUIT_MessageBox::warning(0, QObject::tr("WRN_WARNING"),
+                             QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                             arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName) );
   }
 }
 
@@ -464,7 +539,7 @@ void VisuGUI_TableDlg::keyPressEvent( QKeyEvent* e )
   if ( e->isAccepted() )
     return;
 
-  if ( e->key() == Key_F1 )
+  if ( e->key() == Qt::Key_F1 )
     {
       e->accept();
       onHelp();
@@ -477,42 +552,47 @@ void VisuGUI_TableDlg::keyPressEvent( QKeyEvent* e )
 VisuGUI_TableWidget::VisuGUI_TableWidget( QWidget* parent, 
                                              const char* name, 
                                              bool edit, 
-                                             Orientation orient,
+                                             Qt::Orientation orient,
                                              bool showColumnTitles )
-     : QWidget( parent, name ), myOrientation( orient )
+     : QWidget( parent ), myOrientation( orient )
 {
   QGridLayout* mainLayout = new QGridLayout( this );
   mainLayout->setMargin( 0 );
   mainLayout->setSpacing( SPACING_SIZE );
 
-  myTitleEdit = new QLineEdit( this, "TitleEdit" );
-  myTitleEdit->setAlignment( AlignCenter );
+  myTitleEdit = new QLineEdit( this );
+  myTitleEdit->setAlignment( Qt::AlignCenter );
   myTitleEdit->setReadOnly( !edit );
   QFont fnt = myTitleEdit->font();
   fnt.setBold( true ); 
   myTitleEdit->setFont( fnt );
 
-  myTable = new VisuGUI_Table( orient, this, "Table" );
-  myTable->setNumRows( 5 );
-  myTable->setNumCols( 5 );
+  //myTable = new VisuGUI_Table( orient, this );
+  myTable = new QTableWidget( 5, 5, this );
+  //myTable->setNumRows( 5 );
+  //myTable->setNumCols( 5 );
   myTable->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding ) );
   myTable->setMinimumSize( MIN_TABLE_WIDTH, MIN_TABLE_HEIGHT );
-  myTable->setSelectionMode( QTable::Single );
+  myTable->setSelectionMode( QAbstractItemView::SingleSelection );
   myTable->setShowGrid( true );
-  myTable->setColumnMovingEnabled( false );
-  myTable->setRowMovingEnabled( false );
-  myTable->setReadOnly( !edit );
+  myTable->horizontalHeader()->setMovable( false );
+  myTable->verticalHeader()->setMovable( false );
+  //myTable->setColumnMovingEnabled( false );
+  //myTable->setRowMovingEnabled( false );
   myTable->setDragEnabled( false );
+  //myTable->setReadOnly( !edit );
+  myTable->setEditTriggers( edit ? QAbstractItemView::AllEditTriggers : QAbstractItemView::NoEditTriggers );
+
   setUnitsTitle( tr( "UNITS_TLT" ) );
 
   if ( !showColumnTitles ) {
-    if ( myOrientation == Horizontal ) {
+    if ( myOrientation == Qt::Horizontal ) {
       myTable->horizontalHeader()->hide();
-      myTable->setTopMargin( 0 );
+      //myTable->setTopMargin( 0 );
     }
     else {
       myTable->verticalHeader()->hide();
-      myTable->setLeftMargin( 0 );
+      //myTable->setLeftMargin( 0 );
     }
   }
 
@@ -520,13 +600,13 @@ VisuGUI_TableWidget::VisuGUI_TableWidget( QWidget* parent,
   mainLayout->addWidget( myTable, 1, 0 );
 
   if ( edit ) {
-    myAddRowBtn    = new QPushButton( tr( "ADD_ROW_BTN" ), this, "AddRowBtn" );
-    myDelRowBtn    = new QPushButton( tr( "REMOVE_ROW_BTN" ), this, "DelRowBtn" );
-    myAddColBtn    = new QPushButton( tr( "ADD_COLUMN_BTN" ), this, "AddColBtn" );
-    myDelColBtn    = new QPushButton( tr( "REMOVE_COLUMN_BTN" ), this, "DelColBtn" );
-    myAdjustBtn    = new QPushButton( tr( "ADJUST_CELLS_BTN" ), this, "AdjustBtn" );
-    mySelectAllBtn = new QPushButton( tr( "SELECT_ALL_BTN" ), this, "SelectAllBtn" );
-    myClearBtn     = new QPushButton( tr( "CLEAR_BTN"), this, "ClearBtn" );
+    myAddRowBtn    = new QPushButton( tr( "ADD_ROW_BTN" ), this );
+    myDelRowBtn    = new QPushButton( tr( "REMOVE_ROW_BTN" ), this );
+    myAddColBtn    = new QPushButton( tr( "ADD_COLUMN_BTN" ), this );
+    myDelColBtn    = new QPushButton( tr( "REMOVE_COLUMN_BTN" ), this );
+    myAdjustBtn    = new QPushButton( tr( "ADJUST_CELLS_BTN" ), this );
+    mySelectAllBtn = new QPushButton( tr( "SELECT_ALL_BTN" ), this );
+    myClearBtn     = new QPushButton( tr( "CLEAR_BTN"), this );
     QVBoxLayout* btnLayout = new QVBoxLayout; btnLayout->setMargin( 0 ); btnLayout->setSpacing( SPACING_SIZE );
     btnLayout->addWidget( myAddRowBtn );
     btnLayout->addWidget( myDelRowBtn );
@@ -578,14 +658,14 @@ QString VisuGUI_TableWidget::getTableTitle()
 */
 void VisuGUI_TableWidget::setNumRows( const int num )
 {
-  myOrientation == Horizontal ? myTable->setNumRows( num ) : myTable->setNumCols( num );
+  myOrientation == Qt::Horizontal ? myTable->setRowCount( num ) : myTable->setColumnCount( num );
 }
 /*!
   Gets total number of rows
 */
 int VisuGUI_TableWidget::getNumRows()
 {
-  return myOrientation == Horizontal ? myTable->numRows() : myTable->numCols();
+  return myOrientation == Qt::Horizontal ? myTable->rowCount() : myTable->columnCount();
 }
 /*!
   Sets total number of columns
@@ -593,8 +673,8 @@ int VisuGUI_TableWidget::getNumRows()
 void VisuGUI_TableWidget::setNumCols( const int num )
 {
   // !!! first column contains units !!!
-  myOrientation == Horizontal ? myTable->setNumCols( num+1 ) : myTable->setNumRows( num+1 );
-//  myOrientation == Horizontal ? myTable->setColumnReadOnly( 0, true ) : myTable->setRowReadOnly( 0, true );
+  myOrientation == Qt::Horizontal ? myTable->setColumnCount( num+1 ) : myTable->setRowCount( num+1 );
+//  myOrientation == Qt::Horizontal ? myTable->setColumnReadOnly( 0, true ) : myTable->setRowReadOnly( 0, true );
 }
 /*!
   Gets total number of columns
@@ -602,18 +682,24 @@ void VisuGUI_TableWidget::setNumCols( const int num )
 int VisuGUI_TableWidget::getNumCols()
 {
   // !!! first column contains units !!!
-  return myOrientation == Horizontal ? myTable->numCols()-1 : myTable->numRows()-1;
+  return myOrientation == Qt::Horizontal ? myTable->columnCount()-1 : myTable->rowCount()-1;
 }
 /*!
   Sets rows titles
 */
 void VisuGUI_TableWidget::setRowTitles( QStringList& tlts )
 {
-  for ( int i = 0; i < tlts.count(); i++ ) {
-    myOrientation == Horizontal ? 
-      myTable->verticalHeader()->setLabel( i, tlts[i] ) : 
-      myTable->horizontalHeader()->setLabel( i, tlts[i] );
-  }
+  QStringList aLabels;
+  for ( int i = 0; i < tlts.count(); i++ )
+    tlts[i].isNull() ? aLabels.append("") : aLabels.append( tlts[i] );
+
+  myOrientation == Qt::Horizontal ?
+    myTable->setVerticalHeaderLabels( aLabels ) :
+    myTable->setHorizontalHeaderLabels( aLabels );
+    
+    //  myTable->verticalHeader()->setLabel( i, tlts[i] ) : 
+    //myTable->horizontalHeader()->setLabel( i, tlts[i] );
+  //}
 }
 /*!
   Gets rows titles
@@ -621,14 +707,14 @@ void VisuGUI_TableWidget::setRowTitles( QStringList& tlts )
 void VisuGUI_TableWidget::getRowTitles( QStringList& tlts )
 {
   tlts.clear();
-  if ( myOrientation == Horizontal ) {
-    for ( int i = 0; i < myTable->numRows(); i++ ) {
-      tlts.append( myTable->verticalHeader()->label( i ) );
+  if ( myOrientation == Qt::Horizontal ) {
+    for ( int i = 0; i < myTable->rowCount(); i++ ) {
+      tlts.append( myTable->verticalHeaderItem(i) ? myTable->verticalHeaderItem(i)->text() : "" );
     }
   }
   else {
-    for ( int i = 0; i < myTable->numCols(); i++ ) {
-      tlts.append( myTable->horizontalHeader()->label( i ) );
+    for ( int i = 0; i < myTable->columnCount(); i++ ) {
+      tlts.append( myTable->horizontalHeaderItem(i) ? myTable->horizontalHeaderItem(i)->text() : "" );
     }
   }
 }
@@ -637,12 +723,18 @@ void VisuGUI_TableWidget::getRowTitles( QStringList& tlts )
 */
 void VisuGUI_TableWidget::setColTitles( QStringList& tlts )
 {
+  QStringList aLabels;
+
   // !!! first column contains units !!!
-  for ( int i = 0; i < tlts.count(); i++ ) {
-    myOrientation == Horizontal ? 
-      myTable->horizontalHeader()->setLabel( i+1, tlts[i].isNull() ? "" : tlts[i] ) :
-      myTable->verticalHeader()->setLabel( i+1, tlts[i].isNull() ? "" : tlts[i] );
-  }
+  aLabels.append(""); // it'll be initialized below - in setUnitsTitle() method
+
+  for ( int i = 0; i < tlts.count(); i++ )
+    tlts[i].isNull() ? aLabels.append("") : aLabels.append( tlts[i] );
+
+  myOrientation == Qt::Horizontal ?
+    myTable->setHorizontalHeaderLabels( aLabels ) :
+    myTable->setVerticalHeaderLabels( aLabels );
+  
   setUnitsTitle( tr( "UNITS_TLT" ) );
 }
 /*!
@@ -652,14 +744,14 @@ void VisuGUI_TableWidget::getColTitles( QStringList& tlts )
 {
   // !!! first column contains units !!!
   tlts.clear();
-  if ( myOrientation == Horizontal ) {
-    for ( int i = 1; i < myTable->numCols(); i++ ) {
-      tlts.append( myTable->horizontalHeader()->label( i ) );
-    }
+  if ( myOrientation == Qt::Horizontal ) {
+    for ( int i = 1; i < myTable->columnCount(); i++ ) {
+      tlts.append( myTable->horizontalHeaderItem(i) ? myTable->horizontalHeaderItem(i)->text() : "" );
+    }    
   }
   else {
-    for ( int i = 1; i < myTable->numRows(); i++ ) {
-      tlts.append( myTable->verticalHeader()->label( i ) );
+    for ( int i = 1; i < myTable->rowCount(); i++ ) {
+      tlts.append( myTable->verticalHeaderItem(i) ? myTable->verticalHeaderItem(i)->text() : "" );
     }
   }
 }
@@ -668,15 +760,25 @@ void VisuGUI_TableWidget::getColTitles( QStringList& tlts )
 */
 void VisuGUI_TableWidget::setUnitsTitle( const QString& tlt ) {
   // !!! first column contains units !!!
-  myOrientation == Horizontal ? myTable->horizontalHeader()->setLabel( 0, tlt.isNull() ? "" : tlt ) : myTable->verticalHeader()->setLabel( 0, tlt.isNull() ? "" : tlt );
+  myTable->model()->setHeaderData( 0, myOrientation, QVariant(tlt.isNull() ? "" : tlt), Qt::DisplayRole );
 }
 /*!
   Sets units
 */
 void VisuGUI_TableWidget::setUnits( QStringList& units )
 {
-  for ( int i = 0; i < units.count(); i++ ) {
-    myOrientation == Horizontal ? myTable->setText( i, 0, units[i].isNull() ? "" : units[i] ) : myTable->setText( 0, i, units[i].isNull() ? "" : units[i] );
+  QAbstractTableModel* aModel = qobject_cast<QAbstractTableModel*>( myTable->model() );
+  if ( aModel )
+  {
+    QModelIndex anIndex;
+    for ( int i = 0; i < units.count(); i++ )
+    {
+      myOrientation == Qt::Horizontal ?
+        anIndex = aModel->index( i, 0 ) :
+        anIndex = aModel->index( 0, i );
+
+      aModel->setData( anIndex, QVariant( units[i].isNull() ? "" : units[i] ) );      
+    }
   }
 }
 /*!
@@ -685,13 +787,18 @@ void VisuGUI_TableWidget::setUnits( QStringList& units )
 void VisuGUI_TableWidget::getUnits( QStringList& units )
 {
   units.clear();
-  if ( myOrientation == Horizontal ) {
-    for ( int i = 0; i < myTable->numRows(); i++ )
-      units.append( myTable->text( i, 0 ).isNull() ? QString("") : myTable->text( i, 0 ) );
-  }
-  else {
-    for ( int i = 0; i < myTable->numCols(); i++ )
-      units.append( myTable->text( 0, i ).isNull() ? QString("") : myTable->text( 0, i ) );
+  QAbstractTableModel* aModel = qobject_cast<QAbstractTableModel*>( myTable->model() );
+  if ( aModel )
+  {
+    if ( myOrientation == Qt::Horizontal )
+    {
+      for ( int i = 0; i < myTable->rowCount(); i++ )
+        units.append( aModel->index( i, 0 ).data().toString() );
+    }
+    else {
+      for ( int i = 0; i < myTable->columnCount(); i++ )
+        units.append( aModel->index( 0, i ).data().toString() );
+    }
   }
 }
 /*!
@@ -699,15 +806,17 @@ void VisuGUI_TableWidget::getUnits( QStringList& units )
 */
 void VisuGUI_TableWidget::setRowData( int row, QStringList& data )
 {
-  if ( row >= 0 && row < getNumRows() ) {
-    for ( int i = 0; i < data.count(); i++ ) {
-      if ( data[i].isNull() ) {
-       myOrientation == Horizontal ? myTable->clearCell( row, i+1 ) :
-                                     myTable->clearCell( i+1, row );
-      }
-      else {
-       myOrientation == Horizontal ? myTable->setText( row, i+1, data[i] ) :
-                                     myTable->setText( i+1, row, data[i] );
+  QAbstractTableModel* aModel = qobject_cast<QAbstractTableModel*>( myTable->model() );
+  if ( aModel )
+  {
+    QModelIndex anIndex; 
+    if ( row >= 0 && row < getNumRows() ) {
+      for ( int i = 0; i < data.count(); i++ )
+      {
+        myOrientation == Qt::Horizontal ? anIndex = aModel->index( row, i+1 ) :
+                                          anIndex = aModel->index( i+1, row );
+        aModel->setData( anIndex, QVariant( data[i] ) );
+          
       }
     }
   }
@@ -718,14 +827,20 @@ void VisuGUI_TableWidget::setRowData( int row, QStringList& data )
 void VisuGUI_TableWidget::getRowData( int row, QStringList& data )
 {
   data.clear();
-  if ( row >= 0 && row < getNumRows() ) {
-    if ( myOrientation == Horizontal ) {
-      for ( int i = 1; i < myTable->numCols(); i++ )
-       data.append( myTable->text( row, i ) );
-    }
-    else {
-      for ( int i = 1; i < myTable->numRows(); i++ )
-       data.append( myTable->text( i, row ) );
+  QAbstractTableModel* aModel = qobject_cast<QAbstractTableModel*>( myTable->model() );
+  if ( aModel )
+  {
+    if ( row >= 0 && row < getNumRows() )
+    {
+      if ( myOrientation == Qt::Horizontal )
+      {
+        for ( int i = 1; i < myTable->columnCount(); i++ )
+          data.append( aModel->index( row, i ).data().toString() );
+      }
+      else {
+        for ( int i = 1; i < myTable->rowCount(); i++ )
+          data.append( aModel->index( i, row ).data().toString() );
+      }
     }
   }
 }
@@ -734,39 +849,38 @@ void VisuGUI_TableWidget::getRowData( int row, QStringList& data )
 */
 void VisuGUI_TableWidget::adjustTable()
 {
-  int i;
-  for ( i = 0; i < myTable->numRows(); i++ )
-    myTable->adjustRow( i );
-  for ( i = 0; i < myTable->numCols(); i++ )
-    myTable->adjustColumn( i );
+  myTable->resizeRowsToContents();
+  myTable->resizeColumnsToContents();
 }
 /*!
   Called when selection changed in table
 */
 void VisuGUI_TableWidget::updateButtonsState()
 {
-  if ( myTable->isReadOnly() )
+  if ( myTable->editTriggers() == QAbstractItemView::NoEditTriggers )
     return;
   bool bDR = false; // <Delete Row(s)>
   bool bDC = false; // <Delete Column(s)>
   bool bSA = false; // <Select All>
   bool bCT = false; // <Clear>
   int i;
-  int c = myOrientation == Horizontal ? 0 : 1;
-  for ( i = c; i < myTable->numRows(); i++ ) {
+  //TO DO column/row selection check
+  /*int c = myOrientation == Qt::Horizontal ? 0 : 1;
+  for ( i = c; i < myTable->rowCount(); i++ ) {
+    
     if ( myTable->isRowSelected( i, true ) )
       bDR = true;
     else 
       bSA = true;
   }
-  c = myOrientation == Horizontal ? 1 : 0;
-  for ( i = c; i < myTable->numCols(); i++ ) {
+  c = myOrientation == Qt::Horizontal ? 1 : 0;
+  for ( i = c; i < myTable->columnCount(); i++ ) {
     if ( myTable->isColumnSelected( i, true ) )
       bDC = true;
     else 
       bSA = true;
-  }
-  int nbSel = myTable->numSelections();
+      }*/
+  /*int nbSel = myTable->numSelections();
   for ( i = 0; i < nbSel; i++ ) {
     QTableSelection ts = myTable->selection( i );
     for ( int j = ts.topRow(); j < ts.bottomRow()+1; j++) {
@@ -775,7 +889,19 @@ void VisuGUI_TableWidget::updateButtonsState()
          bCT = true;
       }
     }
+    }*/
+  QList<QTableWidgetItem*> aSelection = myTable->selectedItems();
+  QList<QTableWidgetItem*>::ConstIterator anIt = aSelection.constBegin(),
+    anEndIt = aSelection.constEnd();
+  for ( ; anIt !=  anEndIt; anIt++ )
+  {
+    if( *anIt )
+    {
+      bCT = true;
+      break;
+    }
   }
+  
   if ( myTable->item( myTable->currentRow(), myTable->currentColumn() ) )
     bCT = true;
   myDelRowBtn->setEnabled( bDR );
@@ -788,7 +914,7 @@ void VisuGUI_TableWidget::updateButtonsState()
 */
 void VisuGUI_TableWidget::addRow()
 {
-  myTable->insertRows( myTable->numRows(), 1 );
+  myTable->insertRow( myTable->rowCount() );
   updateButtonsState();
 }
 /*!
@@ -796,7 +922,7 @@ void VisuGUI_TableWidget::addRow()
 */
 void VisuGUI_TableWidget::addCol()
 {
-  myTable->insertColumns( myTable->numCols(), 1 );
+  myTable->insertColumn( myTable->columnCount() );
   updateButtonsState();
 }
 /*!
@@ -804,10 +930,11 @@ void VisuGUI_TableWidget::addCol()
 */
 void VisuGUI_TableWidget::delRow()
 {
-  int c = myOrientation == Horizontal ? 0 : 1;
-  QValueList<int> il;
+  //TODO
+  /*int c = myOrientation == Qt::Horizontal ? 0 : 1;
+  QList<int> il;
   int i;
-  for ( i = c; i < myTable->numRows(); i++ )
+  for ( i = c; i < myTable->rowCount(); i++ )
     if ( myTable->isRowSelected( i, true ) )
       il.append( i );
   if ( il.count() > 0 ) {
@@ -815,7 +942,8 @@ void VisuGUI_TableWidget::delRow()
     for ( i = 0; i < il.count(); i++ )
       ildel[ i ] = il[ i ];
     myTable->removeRows( ildel );
-  }
+    }*/
+  
   updateButtonsState();
 }
 /*!
@@ -823,7 +951,8 @@ void VisuGUI_TableWidget::delRow()
 */
 void VisuGUI_TableWidget::delCol()
 {
-  int c = myOrientation == Horizontal ? 1 : 0;
+  //TODO
+  /*int c = myOrientation == Qt::Horizontal ? 1 : 0;
   QValueList<int> il;
   int i;
   for ( i = c; i < myTable->numCols(); i++ )
@@ -834,7 +963,7 @@ void VisuGUI_TableWidget::delCol()
     for ( i = 0; i < il.count(); i++ )
       ildel[ i ] = il[ i ];
     myTable->removeColumns( ildel );
-  }
+    }*/
   updateButtonsState();
 }
 /*!
@@ -842,10 +971,11 @@ void VisuGUI_TableWidget::delCol()
 */
 void VisuGUI_TableWidget::selectAll()
 {
-  myTable->clearSelection();
+  /*myTable->clearSelection();
   QTableSelection ts;
   ts.init( 0, 0 ); ts.expandTo( myTable->numRows()-1, myTable->numCols()-1 );
-  myTable->addSelection( ts );
+  myTable->addSelection( ts );*/
+  myTable->selectAll();
   updateButtonsState();
 }
 /*!
@@ -853,15 +983,15 @@ void VisuGUI_TableWidget::selectAll()
 */
 void VisuGUI_TableWidget::clearTable()
 {
-  int nbSel = myTable->numSelections();
+  /*int nbSel = myTable->numSelections();
   for ( int i = 0; i < nbSel; i++ ) {
     QTableSelection ts = myTable->selection( i );
     for ( int j = ts.topRow(); j < ts.bottomRow()+1; j++) {
-      if ( myOrientation == Vertical && j == 0 ) {
+      if ( myOrientation == Qt::Vertical && j == 0 ) {
 //     continue;      // UNITS
       }
       for ( int k = ts.leftCol(); k < ts.rightCol()+1; k++) {
-       if ( myOrientation == Horizontal && k == 0 ) {
+       if ( myOrientation == Qt::Horizontal && k == 0 ) {
 //       continue;   // UNITS
        }
        myTable->clearCell( j, k );
@@ -870,7 +1000,8 @@ void VisuGUI_TableWidget::clearTable()
   }
   if ( nbSel == 0 )
     myTable->clearCell( myTable->currentRow(), myTable->currentColumn() );
-  myTable->clearSelection();
+    myTable->clearSelection();*/
+  myTable->clearContents();
   updateButtonsState();
 }
 /*!
@@ -879,14 +1010,15 @@ void VisuGUI_TableWidget::clearTable()
 bool VisuGUI_TableWidget::eventFilter( QObject* o, QEvent* e )
 {
   if ( e->type() == QEvent::MouseButtonDblClick) {
-    QMouseEvent* me = ( QMouseEvent* )e;
-    if ( me->button() == LeftButton && !myTable->isReadOnly() ) {
+    //TODO
+    /*QMouseEvent* me = ( QMouseEvent* )e;
+    if ( me->button() == Qt::LeftButton && (myTable->editTriggers() != QAbstractItemView::NoEditTriggers ) ) {
       if ( o == myTable->horizontalHeader() ) {
        for ( int i = 0; i < myTable->horizontalHeader()->count(); i++ ) {
          QRect rect = myTable->horizontalHeader()->sectionRect( i );
          rect.addCoords( 1, 1, -1, -1 );
          if ( rect.contains( myTable->horizontalHeader()->mapFromGlobal( me->globalPos() ) ) ) {
-           if ( myOrientation == Vertical || i != 0 ) {
+           if ( myOrientation == Qt::Vertical || i != 0 ) {
              bool bOk;
              QString tlt = QInputDialog::getText( tr( "SET_TITLE_TLT" ), 
                                                   tr( "TITLE_LBL" ),
@@ -906,7 +1038,7 @@ bool VisuGUI_TableWidget::eventFilter( QObject* o, QEvent* e )
          QRect rect = myTable->verticalHeader()->sectionRect( i );
          rect.addCoords( 1, 1, -1, -1 );
          if ( rect.contains( myTable->verticalHeader()->mapFromGlobal( me->globalPos() ) ) ) {
-           if ( myOrientation == Horizontal || i != 0 ) {
+           if ( myOrientation == Qt::Horizontal || i != 0 ) {
              bool bOk;
              QString tlt = QInputDialog::getText( tr( "SET_TITLE_TLT" ), 
                                                   tr( "TITLE_LBL" ),
@@ -921,24 +1053,21 @@ bool VisuGUI_TableWidget::eventFilter( QObject* o, QEvent* e )
          }
        }
       }
-    }    
-  }
+      }*/    
+  }     
   else if ( e->type() == QEvent::KeyRelease && o == myTable ) {
     QKeyEvent* ke = (QKeyEvent*)e;
-    if ( ke->key() == Key_Delete && !myTable->isEditing() ) {
+    if ( ke->key() == Qt::Key_Delete && (myTable->editTriggers() != QAbstractItemView::NoEditTriggers) ) {
       clearTable();
     }
-    else if ( ke->key() == Key_Backspace && !myTable->isEditing() ) {
+    else if ( ke->key() == Qt::Key_Backspace && (myTable->editTriggers() != QAbstractItemView::NoEditTriggers) ) {
       clearTable();
       int i = myTable->currentRow();
       int j = myTable->currentColumn() - 1;
-      if ( j < 0 ) { j = myTable->numCols()-1; i--; }
+      if ( j < 0 ) { j = myTable->columnCount()-1; i--; }
       if ( i >= 0 && j >= 0 )
        myTable->setCurrentCell( i, j );
     }
   }
   return QWidget::eventFilter( o, e );
 }
-
-
-
index 44621d27c92462cb940ecd286cd3ba569c854ae2..702824af6a9a158eaf0d21f9f75846cb05f503bd 100644 (file)
@@ -1,34 +1,37 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VisuGUI_TableDlg.h
 //  Author : Vadim SANDLER
 //  Module : VISU
-
+//
 #ifndef VisuGUI_TABLE_DLG_H
 #define VisuGUI_TABLE_DLG_H
 
-#include <qdialog.h>
-#include <qlineedit.h>
-#include <qpushbutton.h>
+#include <QDialog>
+#include <QLineEdit>
+#include <QPushButton>
+#include <QItemDelegate>
 
-class VisuGUI_Table;
+class QTableWidget;
 class VisuGUI_TableWidget;
 
 #include <SALOMEDSClient_SObject.hxx>
@@ -47,7 +50,7 @@ public:
                    _PTR(SObject) obj, 
                    bool edit = false,
                    int which = ttAuto, 
-                   Orientation orient = Horizontal,
+                   Qt::Orientation orient = Qt::Horizontal,
                    bool showColumnTitles = true );
   ~VisuGUI_TableDlg();
 
@@ -71,14 +74,14 @@ private:
   _PTR(SObject) myObject;
 };
  
-class VisuGUI_TableWidget : public QWidget
+class VISU_GUITOOLS_EXPORT VisuGUI_TableWidget : public QWidget
 {
   Q_OBJECT
 public:
   VisuGUI_TableWidget( QWidget* parent = 0, 
                       const char* name = 0, 
                       bool edit = false, 
-                      Orientation orient = Horizontal,
+                      Qt::Orientation orient = Qt::Horizontal,
                       bool showColumnTitles = true );
   ~VisuGUI_TableWidget();
 
@@ -98,7 +101,7 @@ public:
   void    setRowData( int row, QStringList& data );
   void    getRowData( int row, QStringList& data );
 
-  VisuGUI_Table*   getTable()     { return myTable; } 
+  QTableWidget*     getTable()     { return myTable; } 
   QLineEdit*       getTitleEdit() { return myTitleEdit; }
 
   bool    eventFilter( QObject* o, QEvent* e);
@@ -115,7 +118,7 @@ public slots:
 
 private:
   QLineEdit*       myTitleEdit;
-  VisuGUI_Table*   myTable;
+  QTableWidget*    myTable;
   QPushButton*     myAddRowBtn;
   QPushButton*     myAddColBtn;
   QPushButton*     myDelRowBtn;
@@ -123,7 +126,24 @@ private:
   QPushButton*     myAdjustBtn;
   QPushButton*     mySelectAllBtn;
   QPushButton*     myClearBtn;
-  Orientation      myOrientation;
+  Qt::Orientation  myOrientation;
+};
+
+class VISU_GUITOOLS_EXPORT NumDelegateItem: public QItemDelegate
+{
+public:
+  enum NumValidator{ NV_Int, NV_Real };
+
+  NumDelegateItem( QObject* parent, NumValidator mode = NV_Int );
+  virtual ~NumDelegateItem();
+
+  virtual QWidget * createEditor( QWidget * parent,
+                                 const QStyleOptionViewItem & option,
+                                 const QModelIndex & index ) const;
+  virtual void setEditorData( QWidget * editor,
+                             const QModelIndex & index ) const;
+private:
+  int         myMode;
 };
 
 #endif // VisuGUI_TABLE_DLG_H
index e3ede71d7cb6dcf2306bf0541aa1ce0d9d47876d..356548cd8d781de2ad8dc082d4206dc4d38caa51 100755 (executable)
@@ -1,4 +1,6 @@
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 #  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 #
 #  This library is free software; you can redistribute it and/or
@@ -15,8 +17,8 @@
 #  License along with this library; if not, write to the Free Software
 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 # $Header$
-
+#
 SUBDIRS = CONVERTOR PIPELINE OBJECT VVTK GUITOOLS VISU_I VISUGUI VISU_SWIG ENGINE
index 555d1cd73fb775a1fa69faaecc5744788a92147d..5df4fac275093ac6a85a3684458ecb5f31dc99ca 100644 (file)
@@ -1,29 +1,28 @@
-#  VISU OBJECT : interactive object for VISU entities implementation
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
 #
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
 #
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+#  VISU OBJECT : interactive object for VISU entities implementation
 #  File   : Makefile.in
 #  Module : VISU
-
+#
 include $(top_srcdir)/adm_local/unix/make_common_starter.am
 
 lib_LTLIBRARIES= libVisuObject.la
@@ -31,25 +30,35 @@ lib_LTLIBRARIES= libVisuObject.la
 salomeinclude_HEADERS = \
        VISU_BoostSignals.h \
        VISU_ActorFactory.h \
+       VISU_PickingSettings.h \
        VISU_GaussPtsSettings.h \
        VISU_GaussPtsActorFactory.h \
+       VISU_GaussPtsDeviceActor.h \
        VISU_Event.h \
        VISU_Actor.h \
        VISU_DataSetActor.h \
        VISU_MeshAct.h \
        VISU_ScalarMapAct.h \
        VISU_GaussPtsAct.h \
-       VISU_VectorsAct.h
+       VISU_VectorsAct.h \
+       VISU_PointMap3dActor.h \
+       VISU_ActorBase.h \
+       VISU_IsoSurfActor.h \
+       VISU_OBJECT.h
 
 dist_libVisuObject_la_SOURCES = \
        VISU_Actor.cxx \
        VISU_DataSetActor.cxx \
        VISU_MeshAct.cxx \
        VISU_ScalarMapAct.cxx \
+       VISU_PickingSettings.cxx \
        VISU_GaussPtsDeviceActor.cxx \
        VISU_GaussPtsSettings.cxx \
        VISU_GaussPtsAct.cxx \
-       VISU_VectorsAct.cxx
+       VISU_VectorsAct.cxx \
+       VISU_PointMap3dActor.cxx \
+       VISU_ActorBase.cxx \
+       VISU_IsoSurfActor.cxx
 
 libVisuObject_la_CPPFLAGS= \
        $(QT_INCLUDES) \
@@ -63,10 +72,10 @@ libVisuObject_la_CPPFLAGS= \
        -I$(srcdir)/../CONVERTOR
 
 libVisuObject_la_LDFLAGS= \
-       $(VTK_LIBS)  \
        $(BOOST_LIBS) \
        $(GUI_LDFLAGS) \
-       $(KERNEL_LDFLAGS)
+       $(KERNEL_LDFLAGS) \
+       $(VTK_LIBS)
 
 libVisuObject_la_LIBADD=  \
        -lboost_signals@BOOST_LIBSUFFIX@ \
index ae36c573ef1f23efd6b3eed6e65f5fdf2a1c7c92..431ffd681daa3ba48a99beb3543ccea4d415e868 100644 (file)
@@ -1,35 +1,42 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : 
 //  Author : 
 //  Module : VISU
-//  $Header$
 
 #include "VISU_Actor.h"
+
+#include "VISU_PickingSettings.h"
+#include "VISU_GaussPtsDeviceActor.h"
+
 #include "VISU_PipeLine.hxx"
+
+#include "SVTK_Event.h"
+
 #include "VTKViewer_ShrinkFilter.h"
 #include "VTKViewer_GeometryFilter.h"
+#include "VISU_ActorFactory.h"
+#include "SALOME_InteractiveObject.hxx"
  
 #include <stdexcept>
 #include <sstream>
 #include <vtkPolyData.h>
 #include <vtkUnstructuredGrid.h>
 #include <vtkPassThroughFilter.h>
+#include <vtkFeatureEdges.h>
+#include <vtkActor2D.h>
+#include <vtkMaskPoints.h>
+#include <vtkLabeledDataMapper.h>
+#include <vtkSelectVisiblePoints.h>
+#include <vtkTextProperty.h>
+#include <vtkProperty2D.h>
 
 #include <vtkShrinkFilter.h>
 #include <vtkShrinkPolyData.h>
 #include <vtkGeometryFilter.h>
 #include <vtkObjectFactory.h>
 
+#include <vtkCallbackCommand.h>
+#include <vtkCamera.h>
+#include <vtkRenderWindowInteractor.h>
+
 #include <boost/bind.hpp>
 
 #include "utilities.h"
@@ -81,14 +99,21 @@ static int MYDEBUG = 0;
 //----------------------------------------------------------------------------
 VISU_Actor
 ::VISU_Actor():
+  myEventCallbackCommand(vtkCallbackCommand::New()),
+  myPriority(0.0),
   myIsVTKMapping(false),
   myPrs3d(NULL),
-  myActorFactory(NULL),
   myIsShrunk(false),
   myIsShrinkable(false),
   myShrinkFilter(VTKViewer_ShrinkFilter::New()),
   myAnnotationMapper(vtkTextMapper::New()),
-  myAnnotationActor(vtkTextActor::New())
+  myAnnotationActor(vtkTextActor::New()),
+  myTextActor(VISU_FramedTextActor::New()),
+  myIsFeatureEdgesAllowed(false),
+  myIsFeatureEdgesEnabled(false),
+  myFeatureEdges(vtkFeatureEdges::New()),
+  myLastSelectionMode(ActorSelection),
+  myIsSubElementsHighlighted(false)
 {
   if(MYDEBUG) MESSAGE("VISU_Actor::VISU_Actor - this = "<<this);
 
@@ -103,6 +128,59 @@ VISU_Actor
 
   myAnnotationActor->Delete();
   myAnnotationActor->SetVisibility(0);
+
+  myTextActor->Delete();
+  myTextActor->SetVisibility(false);
+  myTextActor->SetPickable(false);
+
+  myFeatureEdges->Delete();
+
+  myEventCallbackCommand->Delete();
+  myEventCallbackCommand->SetClientData(this); 
+  myEventCallbackCommand->SetCallback(VISU_Actor::ProcessEvents);
+
+  if( VISU_PickingSettings* aPickingSettings = VISU_PickingSettings::Get() )
+    aPickingSettings->AddObserver(VISU::UpdatePickingSettingsEvent, 
+                                 myEventCallbackCommand.GetPointer(), 
+                                 myPriority);
+                                 
+  //Definition of values labeling pipeline
+
+  myValLblDataSet = vtkUnstructuredGrid::New();
+
+  myValCellCenters = vtkCellCenters::New();
+  myValCellCenters->SetInput(myValLblDataSet);
+
+  myValMaskPoints = vtkMaskPoints::New();
+  myValMaskPoints->SetInput(myValCellCenters->GetOutput());
+  myValMaskPoints->SetOnRatio(1);
+    
+  myValSelectVisiblePoints = vtkSelectVisiblePoints::New();
+  myValSelectVisiblePoints->SetInput(myValMaskPoints->GetOutput());
+  myValSelectVisiblePoints->SelectInvisibleOff();
+  myValSelectVisiblePoints->SetTolerance(0.1);
+    
+  myValLabeledDataMapper = vtkLabeledDataMapper::New();
+  myValLabeledDataMapper->SetInput(myValSelectVisiblePoints->GetOutput());
+  myValLabeledDataMapper->SetLabelFormat("%g");
+  myValLabeledDataMapper->SetLabelModeToLabelScalars();
+    
+  vtkTextProperty* aClsTextProp = vtkTextProperty::New();
+  aClsTextProp->SetFontFamilyToTimes();
+  static int aCellsFontSize = 12;
+  aClsTextProp->SetFontSize(aCellsFontSize);
+  aClsTextProp->SetBold(1);
+  aClsTextProp->SetItalic(0);
+  aClsTextProp->SetShadow(0);
+  myValLabeledDataMapper->SetLabelTextProperty(aClsTextProp);
+  aClsTextProp->Delete();
+    
+  myIsValLabeled = false;
+
+  myValLabels = vtkActor2D::New();
+  myValLabels->SetMapper(myValLabeledDataMapper);
+  myValLabels->GetProperty()->SetColor(0,1,0);
+  myValLabels->SetVisibility( myIsValLabeled );
 }
 
 //----------------------------------------------------------------------------
@@ -118,6 +196,15 @@ VISU_Actor
     SetShrink();
   else
     UnShrink();
+
+  SetFeatureEdgesAllowed(theActor->IsFeatureEdgesAllowed());
+  SetFeatureEdgesEnabled(theActor->IsFeatureEdgesEnabled());
+  SetFeatureEdgesAngle(theActor->GetFeatureEdgesAngle());
+  bool aFeatureEdges = false, aBoundaryEdges = false, aManifoldEdges = false, aNonManifoldEdges = false;
+  theActor->GetFeatureEdgesFlags( aFeatureEdges, aBoundaryEdges, aManifoldEdges, aNonManifoldEdges );
+  SetFeatureEdgesFlags( aFeatureEdges, aBoundaryEdges, aManifoldEdges, aNonManifoldEdges );
+  SetFeatureEdgesColoring(theActor->GetFeatureEdgesColoring());
+
   SetOpacity(theActor->GetOpacity());
   SetLineWidth(theActor->GetLineWidth());
   SetPosition(theActor->GetPosition());
@@ -137,6 +224,15 @@ VISU_Actor
 VISU_Actor
 ::~VISU_Actor()
 {
+  // Deleting of values labeling pipeline
+  myValLblDataSet->Delete();
+  myValLabeledDataMapper->RemoveAllInputs();
+  myValLabeledDataMapper->Delete();
+  myValSelectVisiblePoints->Delete();
+  myValMaskPoints->Delete();
+  myValCellCenters->Delete();
+  myValLabels->Delete();
+
   if(MYDEBUG) MESSAGE("~VISU_Actor() - this = "<<this);
   Superclass::SetProperty(NULL);
   SetDebug(MYVTKDEBUG);
@@ -166,50 +262,6 @@ VISU_Actor
   return myPrs3d;
 }
 
-//----------------------------------------------------------------------------
-VISU::TActorFactory* 
-VISU_Actor
-::GetFactory()
-{ 
-  return myActorFactory;
-}
-
-void
-VISU_Actor
-::SetFactory(VISU::TActorFactory* theActorFactory)
-{ 
-  using namespace VISU;
-
-  if(myActorFactory == theActorFactory)
-    return;
-  
-  if(theActorFactory)
-    myDestroySignal.connect(boost::bind(&TActorFactory::RemoveActor,
-                                       theActorFactory,
-                                       _1));
-
-  myActorFactory = theActorFactory;
-}
-
-//----------------------------------------------------------------------------
-void
-VISU_Actor
-::UpdateFromFactory()
-{
-  if(myUpdateFromFactoryTime.GetMTime() < myActorFactory->GetMTime()){
-    myUpdateFromFactoryTime.Modified();
-    myActorFactory->UpdateActor(this);
-    Update();
-  }
-}
-
-void
-VISU_Actor
-::RemoveFromRender()
-{
-  RemoveFromRender(GetRenderer());
-}
-
 //----------------------------------------------------------------------------
 void
 VISU_Actor
@@ -220,6 +272,7 @@ VISU_Actor
     if(vtkMapper *aMapper = myPipeLine->GetMapper()){
       if(vtkDataSet *aDataSet = aMapper->GetInput()){
        SetShrinkable(thePipeLine->IsShrinkable());
+       SetFeatureEdgesAllowed(thePipeLine->IsFeatureEdgesAllowed());
        SetMapperInput(aDataSet);
       }
     }
@@ -249,7 +302,10 @@ VISU_Actor
 { 
   Superclass::SetRepresentation(theMode);
   if(myRepresentation == VTK_POINTS)
+  {
     UnShrink();
+  }
+  SetFeatureEdgesEnabled( theMode == SVTK::Representation::FeatureEdges );
 }
 
 
@@ -318,6 +374,111 @@ VISU_Actor
 }
 
 
+//----------------------------------------------------------------------------
+bool
+VISU_Actor
+::IsFeatureEdgesAllowed() 
+{ 
+  return myIsFeatureEdgesAllowed;
+}
+
+void
+VISU_Actor
+::SetFeatureEdgesAllowed(bool theIsFeatureEdgesAllowed)
+{
+  myIsFeatureEdgesAllowed = theIsFeatureEdgesAllowed;
+}
+
+bool
+VISU_Actor
+::IsFeatureEdgesEnabled()
+{
+  return myIsFeatureEdgesEnabled;
+}
+
+void
+VISU_Actor
+::SetFeatureEdgesEnabled(bool theIsFeatureEdgesEnabled)
+{
+  if ( !myIsFeatureEdgesAllowed || myIsFeatureEdgesEnabled == theIsFeatureEdgesEnabled ) 
+    return;
+
+  if ( vtkPolyData* aPolyData = myPassFilter[ 2 ]->GetPolyDataOutput() )
+  {
+    if( theIsFeatureEdgesEnabled )
+    {
+      myFeatureEdges->SetInput( aPolyData );
+      myPassFilter[ 3 ]->SetInput( myFeatureEdges->GetOutput() );
+      myIsFeatureEdgesEnabled = true;
+    }
+    else
+    {
+      myPassFilter[3]->SetInput( aPolyData );
+      myPassFilter[3]->Modified();
+      myIsFeatureEdgesEnabled = false;
+      Modified();
+    }
+    myIsFeatureEdgesEnabled = theIsFeatureEdgesEnabled;
+  }
+}
+
+vtkFloatingPointType
+VISU_Actor
+::GetFeatureEdgesAngle()
+{
+  return myFeatureEdges->GetFeatureAngle();
+}
+
+void
+VISU_Actor
+::SetFeatureEdgesAngle(vtkFloatingPointType theValue)
+{
+  myFeatureEdges->SetFeatureAngle(theValue);
+  Modified();
+}
+
+void
+VISU_Actor
+::GetFeatureEdgesFlags(bool& theIsFeatureEdges,
+                      bool& theIsBoundaryEdges,
+                      bool& theIsManifoldEdges,
+                      bool& theIsNonManifoldEdges)
+{
+  theIsFeatureEdges = myFeatureEdges->GetFeatureEdges();
+  theIsBoundaryEdges = myFeatureEdges->GetBoundaryEdges();
+  theIsManifoldEdges = myFeatureEdges->GetManifoldEdges();
+  theIsNonManifoldEdges = myFeatureEdges->GetNonManifoldEdges();
+}
+
+void
+VISU_Actor
+::SetFeatureEdgesFlags(bool theIsFeatureEdges,
+                      bool theIsBoundaryEdges,
+                      bool theIsManifoldEdges,
+                      bool theIsNonManifoldEdges)
+{
+  myFeatureEdges->SetFeatureEdges(theIsFeatureEdges);
+  myFeatureEdges->SetBoundaryEdges(theIsBoundaryEdges);
+  myFeatureEdges->SetManifoldEdges(theIsManifoldEdges);
+  myFeatureEdges->SetNonManifoldEdges(theIsNonManifoldEdges);
+  Modified();
+}
+
+bool
+VISU_Actor
+::GetFeatureEdgesColoring()
+{
+  return myFeatureEdges->GetColoring();
+}
+
+void
+VISU_Actor
+::SetFeatureEdgesColoring(bool theIsColoring)
+{
+  myFeatureEdges->SetColoring(theIsColoring);
+  Modified();
+}
+
 //----------------------------------------------------------------------------
 void
 VISU_Actor
@@ -357,6 +518,11 @@ VISU_Actor
 {
   Superclass::AddToRender(theRenderer);
   theRenderer->AddActor(myAnnotationActor.GetPointer());
+  theRenderer->AddActor(myTextActor.GetPointer());
+
+  myValSelectVisiblePoints->SetRenderer( theRenderer );
+  theRenderer->AddActor2D( myValLabels );
+
 }
 
 //==================================================================
@@ -368,10 +534,21 @@ VISU_Actor
 ::RemoveFromRender(vtkRenderer* theRenderer)
 {
   theRenderer->RemoveActor(myAnnotationActor.GetPointer());
+  theRenderer->RemoveActor(myTextActor.GetPointer());
+  theRenderer->RemoveActor(myValLabels);
   Superclass::RemoveFromRender(theRenderer); 
   myDestroySignal(this);
 }
 
+//----------------------------------------------------------------------------
+void 
+VISU_Actor
+::SetVisibility(int theMode)
+{
+  Superclass::SetVisibility( theMode );
+  myValLabels->SetVisibility( myIsValLabeled && theMode );
+}
+
 //----------------------------------------------------------------------------
 void 
 VISU_Actor
@@ -415,6 +592,11 @@ VISU_Actor
     aSize += aDataSet->GetActualMemorySize() * 1024;
   }
 
+  if(IsFeatureEdgesEnabled()){
+    vtkPolyData* aPolyData = myFeatureEdges->GetOutput();
+    aSize += aPolyData->GetActualMemorySize() * 1024;
+  }
+
   return aSize;
 }
 
@@ -441,7 +623,7 @@ VISU_Actor
 
 vtkFloatingPointType*
 VISU_Actor
-::GetNodeCoord(int theObjID)
+::GetNodeCoord(vtkIdType theObjID)
 {
   if(myIsVTKMapping)
     return Superclass::GetNodeCoord(theObjID);
@@ -485,6 +667,84 @@ VISU_Actor
 //----------------------------------------------------------------------------
 bool
 VISU_Actor
+::isSubElementsHighlighted() 
+{ 
+  return myIsSubElementsHighlighted; 
+}
+
+
+//----------------------------------------------------------------------------
+inline
+void
+ChangeZoom(vtkFloatingPointType theZoomFactor,
+          vtkRenderer* theRenderer,
+          vtkIdType theInitialHasIndex,
+          vtkIdType theCurrentHasIndex)
+{
+  //printf( "VISU_Actor::ChangeZoom( %d, %d )", theInitialHasIndex, theCurrentHasIndex );
+  if(theInitialHasIndex + theCurrentHasIndex == 1){
+    vtkCamera *aCamera = theRenderer->GetActiveCamera();
+
+    double aScale = aCamera->GetParallelScale();
+    if ( !theInitialHasIndex && theCurrentHasIndex ) {
+      //printf( " : +%f", theZoomFactor );
+      aCamera->SetParallelScale( aScale / theZoomFactor );
+    }
+    else {
+      //printf( " : -%f", theZoomFactor );
+      aCamera->SetParallelScale( aScale * theZoomFactor );
+    }
+  }
+  //printf( "\n" );
+}
+
+/*!
+  Updates visibility of the highlight devices  
+*/
+void
+VISU_Actor
+::highlight(bool theIsHighlight)
+{
+  VISU_PickingSettings* aPickingSettings = VISU_PickingSettings::Get();
+
+  bool aShowTextActor = aPickingSettings->GetInfoWindowEnabled();
+  if( theIsHighlight && mySelectionMode != myLastSelectionMode )
+  {
+    if( mySelectionMode == ActorSelection )
+      ResetTextActor();
+    else
+      aShowTextActor = false;
+    myLastSelectionMode = mySelectionMode;
+  }
+
+  myTextActor->SetVisibility( GetVisibility() && theIsHighlight && aShowTextActor );
+
+  bool anInitialHasIndex = isHighlighted();
+  bool aCurrentHasIndex = theIsHighlight;
+
+  if( !theIsHighlight && mySelectionMode == ActorSelection && isSubElementsHighlighted() )
+  {
+    myIsSubElementsHighlighted = false;
+
+    // Zoom
+    if( GetVisibility() && aPickingSettings->GetCameraMovementEnabled() )
+    {
+      vtkFloatingPointType aZoomFactor = aPickingSettings->GetZoomFactor();
+      ChangeZoom(aZoomFactor,
+                GetRenderer(),
+                anInitialHasIndex,
+                aCurrentHasIndex);
+    }
+  }
+
+  Superclass::highlight(theIsHighlight);
+}
+
+/*!
+  To process prehighlight (called from SVTK_InteractorStyle)
+*/
+bool
+VISU_Actor
 ::PreHighlight(vtkInteractorStyle* theInteractorStyle, 
               SVTK_SelectionEvent* theSelectionEvent,
               bool theIsHighlight)
@@ -508,7 +768,7 @@ VISU_Actor
 
       if(myCellPicker->GetActor() != this)
        return false;
-      
+
       vtkIdType aVTKId = myCellPicker->GetCellId();
       if(aVTKId >= 0  && mySelector->IsValid(this,aVTKId,true) && hasIO()){
        vtkIdType anObjId = GetElemObjId(aVTKId);
@@ -549,7 +809,7 @@ VISU_Actor
                          theSelectionEvent->myY, 
                          0.0, 
                          aRenderer);
-      
+
       if(myPointPicker->GetActor() != this)
        return false;
 
@@ -586,3 +846,405 @@ VISU_Actor
 
   return aRet;
 }
+
+void VISU_Actor::RemoveAllClippingPlanes()
+{
+}
+
+vtkIdType VISU_Actor::GetNumberOfClippingPlanes()
+{
+  return 0;
+}
+
+bool VISU_Actor::AddClippingPlane(vtkPlane* thePlane)
+{
+  return false;
+}
+
+vtkPlane* VISU_Actor::GetClippingPlane(vtkIdType theID)
+{
+  return NULL;
+}
+
+vtkImplicitFunctionCollection* VISU_Actor::GetClippingPlanes()
+{
+  return NULL;
+}
+
+//----------------------------------------------------------------------------
+template<class TData> std::string getScalar(TData* theData, int theId)
+{
+  std::ostringstream aStr;
+  if (vtkDataArray *aScalar = theData->GetScalars()){
+    vtkFloatingPointType aVal = aScalar->GetTuple1(theId);
+    aStr << "\nScalar: " << aVal;
+  }
+  return aStr.str();
+}
+
+template<class TData> std::string getVector(TData* theData, int theId)
+{
+  std::ostringstream aStr;
+  if (vtkDataArray *aVector = theData->GetVectors()) {
+    vtkFloatingPointType *aVal = aVector->GetTuple3(theId);
+    aStr << "\nVector: " << "{" << aVal[0] << "; " << aVal[1] << "; " << aVal[2] << "}";
+  }
+  return aStr.str();
+}
+
+/*!
+  To process highlight (called from SVTK_InteractorStyle)
+*/
+bool
+VISU_Actor
+::Highlight(vtkInteractorStyle* theInteractorStyle, 
+           SVTK_SelectionEvent* theSelectionEvent,
+           bool theIsHighlight)
+{
+  return Superclass::Highlight(theInteractorStyle,
+                              theSelectionEvent,
+                              theIsHighlight);
+}
+
+//-------------------------------------------------------------------------
+void
+VISU_Actor
+::Highlight(bool theIsHighlight)
+{
+  Superclass::Highlight(theIsHighlight);
+
+  VISU_PickingSettings* aPickingSettings = VISU_PickingSettings::Get();
+
+  bool anInitialHasIndex = isSubElementsHighlighted() && mySelectionMode != ActorSelection;
+  
+  TColStd_IndexedMapOfInteger aMapIndex;
+  mySelector->GetIndex( getIO(), aMapIndex );
+  bool aCurrentHasIndex = aMapIndex.Extent() == 1;
+
+  myIsSubElementsHighlighted = aCurrentHasIndex;
+
+  bool aFlyTo = false;
+  vtkFloatingPointType aFlyToCoord[3] = { 0.0, 0.0, 0.0 };
+  vtkRenderer *aRenderer = GetRenderer();
+
+  if( theIsHighlight )
+  {
+    vtkDataSet* aDataSet = GetMapper()->GetInput();
+    switch(mySelectionMode)
+    {
+      case ActorSelection:
+      {
+       ResetTextActor();
+       break;
+      }
+      case CellSelection:
+      {
+       if( !aCurrentHasIndex )
+       {
+         myTextActor->SetVisibility(false);
+         break;
+       }
+
+       int anObjId = aMapIndex(1);
+       vtkCellData* aCellData = aDataSet->GetCellData();
+       if(vtkCell* aCell = GetElemCell(anObjId)){
+         vtkPoints* aPts = aCell->GetPoints();
+         if(int aNbPts = aCell->GetNumberOfPoints()){
+           vtkFloatingPointType aCoord[3] = {0.0, 0.0, 0.0};
+           for(int i = 0; i < aNbPts; i++){
+             vtkFloatingPointType *aPntCoord = aPts->GetPoint(i); 
+             aCoord[0] += aPntCoord[0];
+             aCoord[1] += aPntCoord[1];
+             aCoord[2] += aPntCoord[2];
+           }
+
+           aFlyTo = true;
+           aFlyToCoord[0] = aCoord[0] / aNbPts;
+           aFlyToCoord[1] = aCoord[1] / aNbPts;
+           aFlyToCoord[2] = aCoord[2] / aNbPts;
+
+           vtkFloatingPointType aWorldCoord[4] = {aCoord[0]/aNbPts, aCoord[1]/aNbPts, aCoord[2]/aNbPts, 1.0};
+           aRenderer->SetWorldPoint(aWorldCoord);
+           aRenderer->WorldToDisplay();
+           vtkFloatingPointType aSelectionPoint[3];
+           aRenderer->GetDisplayPoint(aSelectionPoint);
+           myTextActor->SetPosition(aSelectionPoint);
+           myTextActor->SetModePosition(aPickingSettings->GetInfoWindowPosition());
+           myTextActor->SetTransparency(aPickingSettings->GetInfoWindowTransparency());
+           myTextActor->SetWorldPoint(aWorldCoord);
+
+           std::ostringstream aStr;
+           aStr << "Cell ID: " << anObjId;
+
+           vtkCell* aCell = GetElemCell(anObjId);
+           int aVTKID = GetElemVTKID(anObjId);
+           if (aCell) {
+             int aNbOfPoints = aCell->GetNumberOfPoints();
+             if ( aNbOfPoints > 0 ) {
+               aStr << getScalar(aCellData, aVTKID);
+               aStr << getVector(aCellData, aVTKID);
+             }
+           }
+
+           std::string aString = aStr.str();
+           myTextActor->SetText(aString.c_str());
+         }
+       }
+       break;
+      }
+      case NodeSelection:
+      { 
+       if( !aCurrentHasIndex )
+       {
+         myTextActor->SetVisibility(false);
+         break;
+       }
+
+       int anObjId = aMapIndex(1);
+       vtkPointData* aPntData = aDataSet->GetPointData();
+       if(vtkFloatingPointType* aCoord = GetNodeCoord(anObjId)){
+         aFlyTo = true;
+         aFlyToCoord[0] = aCoord[0];
+         aFlyToCoord[1] = aCoord[1];
+         aFlyToCoord[2] = aCoord[2];
+
+         vtkFloatingPointType aWorldCoord[4] = {aCoord[0], aCoord[1], aCoord[2], 1.0};
+         aRenderer->SetWorldPoint(aWorldCoord);
+         aRenderer->WorldToDisplay();
+         vtkFloatingPointType aSelectionPoint[3];
+         aRenderer->GetDisplayPoint(aSelectionPoint);
+         myTextActor->SetPosition(aSelectionPoint);
+         myTextActor->SetModePosition(aPickingSettings->GetInfoWindowPosition());
+         myTextActor->SetTransparency(aPickingSettings->GetInfoWindowTransparency());
+         myTextActor->SetWorldPoint(aWorldCoord);
+
+         std::ostringstream aStr;
+         aStr << "Point ID: " << anObjId;
+
+         int aVTKID = GetNodeVTKID(anObjId);
+         if(aVTKID >= 0) {
+           aStr << getScalar(aPntData, aVTKID);
+           aStr << getVector(aPntData, aVTKID);
+         }
+
+         const VISU::PIDMapper& aMapper = GetPipeLine()->GetIDMapper();
+         //VISU::TIdTypeVector aVec = aMapper->GetIndexesOfNode(anObjId);
+         VISU::TStructuredId aVec = aMapper->GetIndexesOfNode(anObjId);
+
+         aStr << "\nCoordinates: " << "[";
+         aStr << aCoord[0];
+         //if( aVec.size() > 0 )
+         if (aVec[0] != -1)
+           aStr << " (" << aVec[0] << ")";
+         aStr << "; ";
+
+         aStr << aCoord[1];
+         //if( aVec.size() > 1 )
+         if (aVec[1] != -1)
+           aStr << " (" << aVec[1] << ")";
+         aStr << "; ";
+
+         aStr << aCoord[2];
+         //if( aVec.size() > 2 )
+         if (aVec[2] != -1)
+           aStr << " (" << aVec[2] << ")";
+         aStr << "]";
+
+         std::string aString = aStr.str();
+         myTextActor->SetText(aString.c_str());
+       }
+       break;
+      }
+      case EdgeOfCellSelection:
+       break;
+      default:
+       break;
+    }
+  }
+
+  // Zoom
+  if( GetVisibility() && aPickingSettings->GetCameraMovementEnabled() )
+  {
+    vtkFloatingPointType aZoomFactor = aPickingSettings->GetZoomFactor();
+    ChangeZoom(aZoomFactor,
+              GetRenderer(),
+              anInitialHasIndex,
+              aCurrentHasIndex);
+  }
+
+  // FlyTo
+  if( GetVisibility() && aPickingSettings->GetCameraMovementEnabled() && aFlyTo )
+  {
+    vtkRenderWindowInteractor* anInteractor = myInteractor;
+    vtkFloatingPointType aDollyWas = anInteractor->GetDolly();
+    int aNumberOfFlyFramesWas = anInteractor->GetNumberOfFlyFrames();
+  
+    anInteractor->SetDolly(0.0);
+    anInteractor->SetNumberOfFlyFrames(aPickingSettings->GetStepNumber());
+    anInteractor->FlyTo(aRenderer, aFlyToCoord);
+    aRenderer->ResetCameraClippingRange();
+    anInteractor->SetDolly(aDollyWas);
+    anInteractor->SetNumberOfFlyFrames(aNumberOfFlyFramesWas);
+    anInteractor->InvokeEvent(SVTK::ChangeRotationPoint, aFlyToCoord);
+  }
+}
+
+//-------------------------------------------------------------------------
+void
+VISU_Actor
+::ResetTextActor()
+{
+  VISU_PickingSettings* aPickingSettings = VISU_PickingSettings::Get();
+
+  vtkFloatingPointType aCoord[6];
+  GetBounds(aCoord);
+
+  vtkFloatingPointType aWorldCoord[4] = { ( aCoord[0] + aCoord[1] ) / 2,
+                                         ( aCoord[2] + aCoord[3] ) / 2,
+                                         ( aCoord[4] + aCoord[5] ) / 2, 1.0};
+  vtkRenderer* aRenderer = GetRenderer();
+  aRenderer->SetWorldPoint(aWorldCoord);
+  aRenderer->WorldToDisplay();
+  vtkFloatingPointType aSelectionPoint[3];
+  aRenderer->GetDisplayPoint(aSelectionPoint);
+  myTextActor->SetPosition(aSelectionPoint);
+  myTextActor->SetModePosition(aPickingSettings->GetInfoWindowPosition());
+  myTextActor->SetTransparency(aPickingSettings->GetInfoWindowTransparency());
+  myTextActor->SetWorldPoint(aWorldCoord);
+
+  std::ostringstream aStr;
+  /*
+  if( const char* aName = getName() )
+    aStr << aName << "\n";
+  */
+  aStr << "Position: " << "[" << aCoord[0] << "; " << aCoord[2] << "; " << aCoord[4] << "]";
+  aStr << "\nSize: " << "[" <<
+    fabs(aCoord[1]-aCoord[0]) << "; " <<
+    fabs(aCoord[3]-aCoord[2]) << "; " <<
+    fabs(aCoord[5]-aCoord[4]) << "]";
+
+  std::string aString = aStr.str();
+  myTextActor->SetText(aString.c_str());
+}
+
+//-------------------------------------------------------------------------
+void 
+VISU_Actor
+::ProcessEvents(vtkObject* vtkNotUsed(theObject), 
+               unsigned long theEvent,
+               void* theClientData, 
+               void* vtkNotUsed(theCallData))
+{
+  if(vtkObject* anObject = reinterpret_cast<vtkObject*>(theClientData))
+    if(VISU_Actor* self = dynamic_cast<VISU_Actor*>(anObject)) {
+      if(theEvent == VISU::UpdatePickingSettingsEvent)
+       self->UpdatePickingSettings();
+    }
+}
+
+//----------------------------------------------------------------------------
+void
+VISU_Actor
+::UpdatePickingSettings()
+{
+  //printf( "VISU_Actor::UpdatePickingSettings()\n" );
+  VISU_PickingSettings* aPickingSettings = VISU_PickingSettings::Get();
+  if( !aPickingSettings )
+    return;
+
+  myTextActor->SetModePosition(aPickingSettings->GetInfoWindowPosition());
+  myTextActor->SetTransparency(aPickingSettings->GetInfoWindowTransparency());
+
+  Highlight(isHighlighted());
+
+  Update();
+}
+
+// ---------------------------------------------------------------
+
+void VISU_Actor::SetValuesLabeled( const bool theIsValLabeled )
+{
+  vtkDataSet* aGrid = GetValLabelsInput();
+  if ( !aGrid )
+    return;
+  
+  bool isOnPnt = VISU::IsDataOnPoints( aGrid );
+  bool isOnCell = VISU::IsDataOnCells( aGrid );
+  if ( !isOnPnt && !isOnCell )
+  {
+    // try to specify location of scalars "manually"
+    vtkCellData* aCData = aGrid->GetCellData();
+    if ( aCData )
+    {
+      vtkDataArray* anArr = aCData->GetScalars();
+      if ( anArr && anArr->GetNumberOfTuples() )
+        isOnCell = true;
+    }
+
+    if ( !isOnCell )
+    {
+      vtkPointData* aPData = aGrid->GetPointData();
+      if ( aPData )
+      {
+        vtkDataArray* anArr = aPData->GetScalars();
+        if ( anArr && anArr->GetNumberOfTuples() )
+          isOnPnt = true;
+      }
+    }
+
+    if ( !isOnPnt && !isOnCell )
+    {
+      myValLabels->SetVisibility( false );
+      return;
+    }
+  }
+  
+  myIsValLabeled = theIsValLabeled;
+
+  if ( myIsValLabeled )
+  {
+    vtkDataSet* aDataSet = aGrid;
+
+    if ( isOnCell )
+    {
+      myValCellCenters->SetInput( aDataSet );
+      myValMaskPoints->SetInput( myValCellCenters->GetOutput() );
+    }
+    else if ( isOnPnt )
+      myValMaskPoints->SetInput( aDataSet );
+
+    myValLabels->SetVisibility( GetVisibility() );
+  }
+  else
+    myValLabels->SetVisibility( false );
+  
+  Modified();
+}
+
+//----------------------------------------------------------------------------
+
+bool VISU_Actor::GetValuesLabeled() const
+{
+  return myIsValLabeled;
+}
+
+//----------------------------------------------------------------------------
+
+vtkTextProperty* VISU_Actor::GetsValLabelsProps() const
+{
+  return myValLabeledDataMapper->GetLabelTextProperty();  
+}
+
+//----------------------------------------------------------------------------
+
+vtkDataSet* VISU_Actor::GetValLabelsInput()
+{
+  vtkDataSet* aDataSet = 0;
+  VISU_PipeLine* aPL = GetPipeLine();
+  if ( aPL )
+    aDataSet = aPL->GetOutput();
+  if ( !aDataSet )
+    aDataSet = GetInput();
+  return aDataSet;
+}
+
index 962894177d025500559c6ae95d681a30b414ce18..dbc76f8694de88cf0247725e76d161dfd8696996 100644 (file)
@@ -1,36 +1,36 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : 
 //  Author : 
 //  Module : VISU
-//  $Header$
 
 #ifndef VISU_ACTOR_H
 #define VISU_ACTOR_H
 
+#include "VISU_OBJECT.h"
+
 #include "SALOME_Actor.h"
-#include "VISU_ActorFactory.h"
+#include "VISU_ActorBase.h"
 #include "VISU_BoostSignals.h"
 #include "SVTK_DeviceActor.h"
 
@@ -43,20 +43,27 @@ class vtkProperty;
 class vtkTextMapper;
 class vtkTextActor;
 class vtkInteractorStyle;
+class vtkCallbackCommand;
 class VTKViewer_ShrinkFilter;
 class VISU_PipeLine;
-
-#ifdef _WIN32
-#define VTKOCC_EXPORT __declspec (dllexport)
-#else
-#define VTKOCC_EXPORT VTK_EXPORT
-#endif
+class vtkPlane;
+class vtkImplicitFunctionCollection;
+class vtkFeatureEdges;
+class vtkTextProperty;
+class vtkCellCenters;
+class vtkSelectVisiblePoints;
+class vtkLabeledDataMapper;
+class vtkMaskPoints;
+class vtkActor2D;
+
+class VISU_FramedTextActor;
 
 namespace SVTK
 {
   namespace Representation
   {
     const Type Surfaceframe = Insideframe + 1;
+    const Type FeatureEdges = Insideframe + 2;
   }
 }
 
@@ -66,12 +73,10 @@ namespace VISU
 }
 
 //----------------------------------------------------------------------------
-class VTKOCC_EXPORT VISU_Actor : 
-  public SALOME_Actor,
-  public boost::signalslib::trackable
+class VISU_OBJECT_EXPORT VISU_Actor : public VISU_ActorBase
 {
  public:
-  vtkTypeMacro(VISU_Actor,SALOME_Actor);
+  vtkTypeMacro(VISU_Actor, VISU_ActorBase);
 
   //static 
   //VISU_Actor* 
@@ -99,22 +104,9 @@ class VTKOCC_EXPORT VISU_Actor :
   void
   SetPrs3d(VISU::Prs3d_i* thePrs3d);
 
-  //----------------------------------------------------------------------------
-  VISU::TActorFactory* 
-  GetFactory();
-
-  virtual
-  void
-  SetFactory(VISU::TActorFactory* theActorFactory);
-
-  //----------------------------------------------------------------------------
-  virtual
-  void
-  UpdateFromFactory();
-
   virtual
   void
-  RemoveFromRender();
+  SetVisibility(int theMode);
 
   //----------------------------------------------------------------------------
   virtual
@@ -159,6 +151,53 @@ class VTKOCC_EXPORT VISU_Actor :
   vtkFloatingPointType
   GetShrinkFactor();
 
+  //----------------------------------------------------------------------------
+  virtual
+  bool
+  IsFeatureEdgesAllowed();
+
+  virtual
+  void
+  SetFeatureEdgesAllowed(bool theIsFeatureEdgesAllowed);
+
+  virtual
+  bool
+  IsFeatureEdgesEnabled();
+
+  virtual
+  void
+  SetFeatureEdgesEnabled(bool theIsFeatureEdgesEnabled);
+
+  virtual
+  vtkFloatingPointType
+  GetFeatureEdgesAngle();
+
+  virtual
+  void
+  SetFeatureEdgesAngle(vtkFloatingPointType theAngle = 30.0); 
+
+  virtual
+  void
+  GetFeatureEdgesFlags(bool& theIsFeatureEdges,
+                      bool& theIsBoundaryEdges,
+                      bool& theIsManifoldEdges,
+                      bool& theIsNonManifoldEdges);
+
+  virtual
+  void
+  SetFeatureEdgesFlags(bool theIsFeatureEdges,
+                      bool theIsBoundaryEdges,
+                      bool theIsManifoldEdges,
+                      bool theIsNonManifoldEdges);
+
+  virtual
+  bool
+  GetFeatureEdgesColoring();
+
+  virtual
+  void
+  SetFeatureEdgesColoring(bool theIsColoring);
+
   //----------------------------------------------------------------------------
   virtual
   void
@@ -186,12 +225,30 @@ class VTKOCC_EXPORT VISU_Actor :
   RemoveFromRender( vtkRenderer* );
 
   //----------------------------------------------------------------------------
+  //! Just to update visibility of the highlight devices
+  virtual
+  void
+  highlight(bool theHighlight);  
+
+  //! To process prehighlight (called from #SVTK_InteractorStyle)
   virtual
   bool
   PreHighlight(vtkInteractorStyle* theInteractorStyle, 
               SVTK_SelectionEvent* theSelectionEvent,
               bool theIsHighlight);
 
+  //! To process highlight (called from #SVTK_InteractorStyle)
+  virtual
+  bool
+  Highlight(vtkInteractorStyle* theInteractorStyle, 
+           SVTK_SelectionEvent* theSelectionEvent,
+           bool theIsHighlight);
+
+  //! Internal highlight.
+  virtual
+  void
+  Highlight(bool theIsHighlight);
+
   virtual
   void 
   SetVTKMapping(bool theIsVTKMapping); 
@@ -235,6 +292,38 @@ class VTKOCC_EXPORT VISU_Actor :
   GetElemCell(vtkIdType theObjID);
 
   //----------------------------------------------------------------------------
+  virtual void RemoveAllClippingPlanes();
+
+  virtual vtkIdType GetNumberOfClippingPlanes();
+
+  virtual bool AddClippingPlane(vtkPlane* thePlane);
+
+  virtual vtkPlane* GetClippingPlane(vtkIdType theID);
+
+  virtual vtkImplicitFunctionCollection* GetClippingPlanes();
+
+  //----------------------------------------------------------------------------
+  //! Apply the picking settings on the actor.
+  void
+  UpdatePickingSettings();
+
+  //----------------------------------------------------------------------------
+  //! Methods for values labeling
+  virtual 
+  void 
+  SetValuesLabeled( const bool theIsValLabeled );
+
+  virtual 
+  bool 
+  GetValuesLabeled() const;
+
+  virtual
+  vtkDataSet*
+  GetValLabelsInput();
+
+  vtkTextProperty* 
+  GetsValLabelsProps() const;
+  
  protected:
   VISU_Actor();
 
@@ -250,20 +339,56 @@ class VTKOCC_EXPORT VISU_Actor :
   GetCurrentPL();
 
   //----------------------------------------------------------------------------
+  bool
+  isSubElementsHighlighted();
+
+  //----------------------------------------------------------------------------
+  vtkSmartPointer<vtkCallbackCommand> myEventCallbackCommand;
+
+  //! Main process VTK event method
+  static
+  void
+  ProcessEvents(vtkObject* theObject, 
+               unsigned long theEvent,
+               void* theClientData, 
+               void* theCallData);
+
+  //----------------------------------------------------------------------------
+ private:
+  void
+  ResetTextActor();
+
+  //----------------------------------------------------------------------------
+ protected:
+  vtkFloatingPointType myPriority;
   bool myIsVTKMapping;
   VISU::Prs3d_i* myPrs3d;
   vtkSmartPointer<VISU_PipeLine> myPipeLine;
 
-  VISU::TActorFactory* myActorFactory;
-  vtkTimeStamp myUpdateFromFactoryTime;
-  boost::signal1<void,VISU_Actor*> myDestroySignal;
-
   vtkSmartPointer<VTKViewer_ShrinkFilter> myShrinkFilter;
   bool myIsShrinkable;
   bool myIsShrunk;
 
   vtkSmartPointer<vtkTextMapper> myAnnotationMapper;
   vtkSmartPointer<vtkTextActor>  myAnnotationActor;
+
+  vtkSmartPointer<VISU_FramedTextActor> myTextActor;
+
+  vtkSmartPointer<vtkFeatureEdges> myFeatureEdges;
+  bool myIsFeatureEdgesAllowed;
+  bool myIsFeatureEdgesEnabled;
+
+  Selection_Mode myLastSelectionMode;
+  bool myIsSubElementsHighlighted;
+  
+  // fields for values labeling
+  bool                    myIsValLabeled;
+  vtkDataSet*             myValLblDataSet;
+  vtkActor2D*             myValLabels;
+  vtkMaskPoints*          myValMaskPoints;
+  vtkCellCenters*         myValCellCenters;
+  vtkLabeledDataMapper*   myValLabeledDataMapper;
+  vtkSelectVisiblePoints* myValSelectVisiblePoints;
 };
 
 #endif //VISU_ACTOR_H
diff --git a/src/OBJECT/VISU_ActorBase.cxx b/src/OBJECT/VISU_ActorBase.cxx
new file mode 100644 (file)
index 0000000..1a09a77
--- /dev/null
@@ -0,0 +1,182 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+//  File   : 
+//  Author : 
+//  Module : VISU
+//  $Header$
+//
+#include "VISU_ActorBase.h"
+#include "VISU_ActorFactory.h"
+#include "VTKViewer_ShrinkFilter.h"
+
+#include <vtkObjectFactory.h>
+#include <vtkProperty.h>
+#include <vtkPassThroughFilter.h>
+#include <vtkShrinkFilter.h>
+#include <vtkDataSet.h>
+#include <vtkShrinkPolyData.h>
+#include <vtkUnstructuredGrid.h>
+
+#include "utilities.h"
+
+#include <boost/bind.hpp>
+
+VISU_ActorBase
+::VISU_ActorBase() :
+  myActorFactory(NULL),
+  myShrinkFilter(VTKViewer_ShrinkFilter::New()),
+  myIsShrinkable(true),
+  myIsShrunk(false)
+{
+  myShrinkFilter->Delete();
+  
+  myStoreMapping = true;
+  
+  myShrinkFilter->SetStoreMapping(true);
+}
+
+VISU_ActorBase
+::~VISU_ActorBase()
+{
+  myUpdateActorsConnection.disconnect();
+  myRemoveFromRendererConnection.disconnect();
+}
+
+//----------------------------------------------------------------------------
+VISU::TActorFactory* 
+VISU_ActorBase
+::GetFactory()
+{ 
+  return myActorFactory;
+}
+
+void
+VISU_ActorBase
+::SetFactory(VISU::TActorFactory* theActorFactory)
+{ 
+  using namespace VISU;
+
+  if(myActorFactory == theActorFactory)
+    return;
+  
+  if(theActorFactory)
+     myDestroySignal.connect(boost::bind(&TActorFactory::RemoveActor,
+                                        theActorFactory,
+                                        _1));
+
+  myActorFactory = theActorFactory;
+}
+
+void
+VISU_ActorBase
+::UpdateFromFactory()
+{
+  if(myUpdateFromFactoryTime.GetMTime() < myActorFactory->GetMTime()){
+    myUpdateFromFactoryTime.Modified();
+    myActorFactory->UpdateActor(this);
+    Update();
+  }
+}
+
+//--------------------------------------------------------------------------
+
+void
+VISU_ActorBase
+::SetLineWidth(vtkFloatingPointType theLineWidth)
+{
+  GetProperty()->SetLineWidth(theLineWidth);
+}
+
+vtkFloatingPointType
+VISU_ActorBase
+::GetLineWidth()
+{
+  return GetProperty()->GetLineWidth();
+}
+
+//--------------------------------------------------------------------------
+void
+VISU_ActorBase
+::SetRepresentation(int theMode) 
+{ 
+  Superclass::SetRepresentation(theMode);
+  if(myRepresentation == VTK_POINTS)
+    UnShrink();
+}
+
+//----------------------------------------------------------------------------
+void VISU_ActorBase::SetShrink()
+{
+  if(!myIsShrinkable) 
+    return;
+  if(vtkDataSet* aDataSet = myPassFilter[0]->GetOutput()){
+    myShrinkFilter->SetInput(aDataSet);
+    myPassFilter[1]->SetInput(myShrinkFilter->GetOutput());
+    myIsShrunk = true;
+  }
+}
+
+void VISU_ActorBase::UnShrink()
+{
+  if(!myIsShrunk) 
+    return;
+  if(vtkDataSet* aDataSet = myPassFilter[0]->GetOutput()){
+    myPassFilter[1]->SetInput(aDataSet);
+    myPassFilter[1]->Modified();
+    myIsShrunk = false;
+    Modified();
+  }
+}
+
+bool VISU_ActorBase::IsShrunk()
+{
+  return myIsShrunk;
+}
+
+void VISU_ActorBase::SetShrinkable(bool theIsShrinkable)
+{
+  myIsShrinkable = theIsShrinkable;
+}
+
+bool VISU_ActorBase::IsShrunkable() 
+{ 
+  return myIsShrinkable;
+}
+
+//--------------------------------------------------------------------------------------
+
+void VISU_ActorBase::RemoveFromRender(vtkRenderer* theRenderer)
+{
+  Superclass::RemoveFromRender(theRenderer);
+}
+
+void VISU_ActorBase::RemoveFromRender()
+{
+  RemoveFromRender(GetRenderer());
+}
+
+void VISU_ActorBase::ConnectToFactory(boost::signal0<void>& theUpdateActorSignal, boost::signal0<void>& theRemoveFromRendererSignal)
+{
+  myUpdateActorsConnection = theUpdateActorSignal.connect(boost::bind(&VISU_ActorBase::UpdateFromFactory,this));
+  myRemoveFromRendererConnection = theRemoveFromRendererSignal.connect(boost::bind(&VISU_ActorBase::RemoveFromRender,this));
+}
diff --git a/src/OBJECT/VISU_ActorBase.h b/src/OBJECT/VISU_ActorBase.h
new file mode 100644 (file)
index 0000000..7a39f0a
--- /dev/null
@@ -0,0 +1,94 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+//  File   : 
+//  Author : 
+//  Module : VISU
+//  $Header$
+//
+#ifndef VISU_ACTOR_BASE_H
+#define VISU_ACTOR_BASE_H
+
+#include "VISU_OBJECT.h"
+#include "SALOME_Actor.h"
+#include "VISU_BoostSignals.h"
+#include <boost/bind.hpp>
+
+class VTKViewer_ShrinkFilter;
+
+//----------------------------------------------------------------------------
+namespace VISU 
+{ 
+  struct TActorFactory;
+}
+
+
+//! This class defines an abstaract interface to manage actors
+class VISU_OBJECT_EXPORT VISU_ActorBase: public SALOME_Actor,
+                                    public boost::signalslib::trackable
+{
+ public:
+  vtkTypeMacro(VISU_ActorBase, SALOME_Actor);
+
+  //----------------------------------------------------------------------------
+  VISU::TActorFactory* GetFactory();
+  virtual void SetFactory(VISU::TActorFactory* theActorFactory);
+  
+  //----------------------------------------------------------------------------
+  virtual void UpdateFromFactory();
+
+  //----------------------------------------------------------------------------
+
+  virtual void SetLineWidth(vtkFloatingPointType theLineWidth);
+  virtual vtkFloatingPointType GetLineWidth();
+
+  virtual void SetShrink();
+  virtual void UnShrink(); 
+  virtual bool IsShrunkable();
+  virtual bool IsShrunk();
+  virtual void SetShrinkable(bool theIsShrinkable);
+  
+  virtual void SetRepresentation(int theMode);
+
+  virtual void RemoveFromRender(vtkRenderer* theRenderer);
+  virtual void RemoveFromRender();
+
+  virtual void ConnectToFactory(boost::signal0<void>& , boost::signal0<void>&);
+
+ protected:
+  VISU_ActorBase();
+  virtual  ~VISU_ActorBase();
+
+  VISU::TActorFactory*                 myActorFactory;
+  vtkTimeStamp                         myUpdateFromFactoryTime;
+  boost::signal1<void,VISU_ActorBase*> myDestroySignal;
+
+  boost::signalslib::connection        myUpdateActorsConnection;
+  boost::signalslib::connection        myRemoveFromRendererConnection;
+
+  vtkSmartPointer<VTKViewer_ShrinkFilter> myShrinkFilter;
+
+  bool myIsShrinkable;
+  bool myIsShrunk;
+};
+
+#endif //VISU_ACTOR_BASE_H
index ec7af383883ded8345678438bf241d8fe1c8d2f6..fa4acf99cf279acc97e9a012faeb15c3d5c7abb0 100644 (file)
@@ -1,37 +1,37 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : 
 //  Author : 
 //  Module : VISU
 //  $Header$
-
+//
 #ifndef VISU_ACTOR_FACTORY_H
 #define VISU_ACTOR_FACTORY_H
 
 #include "VISU_BoostSignals.h"
+#include "VISU_ActorBase.h"
 
-class VISU_Actor;
+class VISU_ActorBase;
 
 //----------------------------------------------------------------------------
 namespace VISU 
@@ -66,12 +66,12 @@ namespace VISU
     //! To update the actor
     virtual 
     void
-    UpdateActor(VISU_Actor* theActor) = 0;
+    UpdateActor(VISU_ActorBase* theActor) = 0;
 
     //! To unregister the actor
     virtual 
     void
-    RemoveActor(VISU_Actor* theActor) = 0;
+    RemoveActor(VISU_ActorBase* theActor) = 0;
   };
 }
 
index f6eb6ac16c91044a14035d3d2934511193a32ac7..18cec9aa4434ffb6e31dadf099d9e877ad58fe3f 100644 (file)
@@ -1,31 +1,30 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : 
 //  Author : 
 //  Module : VISU
 //  $Header$
-
+//
 #ifndef VISU_BOOST_SIGNALS_H
 #define VISU_BOOST_SIGNALS_H
 
index 1b282c013ca792240c910e50a56103c980614bf3..128982abbe730ce84f5f002a4cb3af084aaafb5e 100644 (file)
@@ -1,36 +1,40 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : 
 //  Author : 
 //  Module : VISU
-
+//
 #include "VISU_DataSetActor.h"
 #include "VISU_UnstructuredGridPL.hxx"
 #include "VISU_PipeLineUtils.hxx"
 
 #include <vtkDataSetMapper.h>
 #include <vtkObjectFactory.h>
+#include <vtkImplicitBoolean.h>
+#include <SALOME_ExtractGeometry.h>
+#include <SALOME_ExtractPolyDataGeometry.h>
+#include <vtkImplicitFunctionCollection.h>
+#include <vtkPlane.h>
 
 #include <boost/bind.hpp>
 
@@ -48,11 +52,24 @@ vtkStandardNewMacro(VISU_DataSetActor);
 //----------------------------------------------------------------------------
 VISU_DataSetActor
 ::VISU_DataSetActor():
-  myMapper(vtkDataSetMapper::New())
+  myMapper(vtkDataSetMapper::New()),
+  myExtractor(SALOME_ExtractGeometry::New()),
+  myPolyDataExtractor(SALOME_ExtractPolyDataGeometry::New()),
+  myFunction(vtkImplicitBoolean::New())
 {
   if(MYDEBUG) MESSAGE("VISU_DataSetActor::VISU_DataSetActor - this = "<<this);
 
+  myExtractor->SetImplicitFunction(myFunction);
+  myPolyDataExtractor->SetImplicitFunction(myFunction);
+  //myExtractor->ExtractBoundaryCellsOn();
+  //myPolyDataExtractor->ExtractBoundaryCellsOn();
+
+  myFunction->SetOperationTypeToIntersection();
+
   myMapper->Delete();
+  myExtractor->Delete();
+  myPolyDataExtractor->Delete();
+  myFunction->Delete();
 }
 
 //----------------------------------------------------------------------------
@@ -71,9 +88,8 @@ VISU_DataSetActor
 
   if(VISU_UnstructuredGridPL* aPipeLine = dynamic_cast<VISU_UnstructuredGridPL*>(thePipeLine)){
     vtkDataSetMapper* aTarget = GetDataSetMapper();
-    vtkDataSetMapper* aSource = aPipeLine->GetDataSetMapper();
+    vtkDataSetMapper* aSource = aPipeLine->GetDataSetMapper();    
     VISU::CopyDataSetMapper(aTarget, aSource, true);
-    aTarget->SetLookupTable(aSource->GetLookupTable());
   }
 }
 
@@ -82,14 +98,67 @@ void
 VISU_DataSetActor
 ::SetMapperInput(vtkDataSet* theDataSet) 
 {
-  myMapper->SetInput(theDataSet);
+  if (theDataSet->IsA("vtkPolyData")) {
+    myPolyDataExtractor->SetInput(theDataSet);
+    myMapper->SetInput(myPolyDataExtractor->GetOutput());
+  } else {
+    myExtractor->SetInput(theDataSet);
+    myMapper->SetInput(myExtractor->GetOutput());
+  }
+  //  myMapper->SetInput(theDataSet);
   SetMapper(myMapper.GetPointer());
 }
 
 //----------------------------------------------------------------------------
-vtkDataSetMapper* 
-VISU_DataSetActor
-::GetDataSetMapper()
+vtkDataSetMapper* VISU_DataSetActor::GetDataSetMapper()
 {
   return myMapper.GetPointer();
 }
+
+//----------------------------------------------------------------------------
+void VISU_DataSetActor::RemoveAllClippingPlanes()
+{
+  myFunction->GetFunction()->RemoveAllItems();
+  myFunction->Modified();
+}
+
+//----------------------------------------------------------------------------
+vtkIdType VISU_DataSetActor::GetNumberOfClippingPlanes()
+{
+  return myFunction->GetFunction()->GetNumberOfItems();
+}
+
+//----------------------------------------------------------------------------
+bool VISU_DataSetActor::AddClippingPlane(vtkPlane* thePlane)
+{
+  vtkImplicitFunctionCollection* aFunctions = GetClippingPlanes();
+  aFunctions->InitTraversal();
+  vtkImplicitFunction* aItem;
+  while ((aItem = aFunctions->GetNextItem())) {
+    if (thePlane == aItem)
+      return false;
+  }
+  myFunction->AddFunction(thePlane);
+  return true;
+}
+
+//----------------------------------------------------------------------------
+vtkPlane* VISU_DataSetActor::GetClippingPlane(vtkIdType theID)
+{
+  vtkPlane* aPlane = NULL;
+  if ((theID >= 0) && (theID < GetNumberOfClippingPlanes())) {
+    vtkImplicitFunctionCollection* aFunction = myFunction->GetFunction();
+    vtkImplicitFunction* aFun = NULL;
+    aFunction->InitTraversal();
+    for (vtkIdType i = 0; i <= theID; i++)
+      aFun = aFunction->GetNextItem();
+    aPlane = dynamic_cast<vtkPlane*>(aFun);
+  }
+  return aPlane;
+}
+  
+//----------------------------------------------------------------------------
+vtkImplicitFunctionCollection* VISU_DataSetActor::GetClippingPlanes()
+{
+  return myFunction->GetFunction();
+}
index 9e7ef4573faf65264405be47e04dbda4700dee58..b3aa197aa6fe0afb3f443007c62cb8721bbed3c0 100644 (file)
@@ -1,45 +1,43 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : 
 //  Author : 
 //  Module : VISU
-
+//
 #ifndef VISU_DATASETACTOR_H
 #define VISU_DATASETACTOR_H
 
+#include "VISU_OBJECT.h"
 #include "VISU_Actor.h"
 
 class vtkDataSetMapper;
-
-#ifdef _WIN_32
-#define VTKOCC_EXPORT __declspec (dllexport)
-#else
-#define VTKOCC_EXPORT VTK_EXPORT
-#endif
+class SALOME_ExtractGeometry;
+class SALOME_ExtractPolyDataGeometry;
+class vtkImplicitBoolean;
+class vtkImplicitFunctionCollection;
 
 //----------------------------------------------------------------------------
-class VTKOCC_EXPORT VISU_DataSetActor : public VISU_Actor
+class VISU_OBJECT_EXPORT VISU_DataSetActor : public VISU_Actor
 {
  public:
   vtkTypeMacro(VISU_DataSetActor,VISU_Actor);
@@ -56,6 +54,17 @@ class VTKOCC_EXPORT VISU_DataSetActor : public VISU_Actor
   vtkDataSetMapper* 
   GetDataSetMapper();
 
+  //----------------------------------------------------------------------------
+  virtual void RemoveAllClippingPlanes();
+
+  virtual vtkIdType GetNumberOfClippingPlanes();
+
+  virtual bool AddClippingPlane(vtkPlane* thePlane);
+
+  virtual vtkPlane* GetClippingPlane(vtkIdType theID);
+
+  virtual vtkImplicitFunctionCollection* GetClippingPlanes();
+
   //----------------------------------------------------------------------------
  protected:
   VISU_DataSetActor();
@@ -69,6 +78,9 @@ class VTKOCC_EXPORT VISU_DataSetActor : public VISU_Actor
 
   //----------------------------------------------------------------------------
   vtkSmartPointer<vtkDataSetMapper> myMapper;
+  vtkSmartPointer<SALOME_ExtractGeometry> myExtractor;
+  vtkSmartPointer<SALOME_ExtractPolyDataGeometry> myPolyDataExtractor;
+  vtkSmartPointer<vtkImplicitBoolean> myFunction;
 };
 
 #endif //VISU_DATASETACTOR_H
index e815b62f5fd5988b3334f5fc669a5ad3aac2c4eb..4b50add95225ab1468c87d3aea50dc4da71f9dbf 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   : 
 //  Author : 
 //  Module : SALOME
 //  $Header$
-
+//
 #ifndef VISU_Event_h
 #define VISU_Event_h
 
index 5226e7c7eb0d2c481ebe915823845842899d6e0e..a26d58fbe969b7c5dea4364bd7f9176223a31294 100644 (file)
@@ -1,35 +1,35 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_MeshAct.hxx
 //  Author : Laurent CORNABE with the help of Nicolas REJNERI
 //  Module : VISU
 //  $Header$
-
+//
 #include "VISU_GaussPtsAct.h"
 #include "VISU_GaussPointsPL.hxx"
 #include "VISU_GaussPtsSettings.h"
 #include "VISU_GaussPtsDeviceActor.h"
+#include "VISU_PickingSettings.h"
 #include "VISU_WidgetCtrl.hxx"
 #include "VISU_SphereWidget.hxx"
 #include "VISU_OpenGLPointSpriteMapper.hxx"
 
 #include "VISU_Event.h" 
 #include "SVTK_Actor.h"
+#include <SALOME_ExtractPolyDataGeometry.h>
 
 #include <vtkCamera.h>
 #include <vtkRenderer.h>
 #include <vtkPointPicker.h>
+#include <vtkMatrix4x4.h>
 #include <vtkScalarBarWidget.h>
 #include <vtkTextMapper.h>
 #include <vtkTextProperty.h>
+#include <vtkImplicitBoolean.h>
+#include <vtkImplicitFunctionCollection.h>
+#include <vtkPlane.h>
 
 #include <vtkPointData.h>
+#include <vtkCellData.h>
 #include <vtkDataArray.h>
 
 #include <vtkSphereSource.h>
 #include <vtkPolyDataMapper.h>
 #include <vtkPolyData.h>
 #include <vtkActor.h>
+#include <vtkTransform.h>
 
 #include <vtkObjectFactory.h>
 #include <vtkCallbackCommand.h>
@@ -67,6 +74,8 @@
 #include <vtkPolyDataMapper.h>
 #include <vtkRenderWindow.h>
 #include <vtkCellArray.h>
+#include <vtkWarpVector.h>
+#include <vtkCellDataToPointData.h>
 #include <vtkCell.h>
 #include <vtkMath.h>
 
@@ -122,23 +131,24 @@ VISU_GaussPtsAct
   myWidgetCtrl(NULL),
   myGaussPointsPL(NULL),
   myLastPreHighlightObjID(-1),
-  myTextActor(VISU_FramedTextActor::New()),
   myCursorPyramid(VISU_CursorPyramid::New()),
   myCursorPyramidSelected(VISU_CursorPyramid::New()),
   myCellSource(vtkUnstructuredGrid::New()),
   myCellActor(SVTK_Actor::New()),
   myScalarBarCtrl(VISU_ScalarBarCtrl::New()),
   myBarVisibility(true),
-  myPickingSettings(NULL),
   myInsideCursorSettings(NULL),
   myCurrentPL(NULL),
-  myMapper(vtkPolyDataMapper::New())
+  myMapper(vtkPolyDataMapper::New()),
+  myPolyDataExtractor(SALOME_ExtractPolyDataGeometry::New()),
+  myFunction(vtkImplicitBoolean::New()),
+  myWarpVector(vtkWarpVector::New()),
+  myCellDataToPointData(vtkCellDataToPointData::New())
 {
   if(MYDEBUG) MESSAGE("VISU_GaussPtsAct::VISU_GaussPtsAct - this = "<<this);
 
   myEventCallbackCommand->Delete();
   myDeviceActor->Delete();
-  myTextActor->Delete();
 
   myCursorPyramid->Delete();
   myCursorPyramid->SetPickable(0);
@@ -154,18 +164,18 @@ VISU_GaussPtsAct
   myEventCallbackCommand->SetClientData(this); 
   myEventCallbackCommand->SetCallback(VISU_GaussPtsAct::ProcessEvents);
 
+  vtkMatrix4x4 *aMatrix = vtkMatrix4x4::New();
+
   myDeviceActor->SetProperty(GetProperty());
+  myDeviceActor->SetUserMatrix(aMatrix);
   myDeviceActor->SetVisibility(true);
   myDeviceActor->SetPickable(false);
 
-  myTextActor->SetVisibility(false);
-  myTextActor->SetPickable(false);
-
   myCellSource->Allocate();
   myCellActor->Initialize();
   myCellActor->SetRepresentation(VTK_WIREFRAME);
   myCellActor->SetSource(myCellSource.GetPointer());
-  
+
   myCellActor->SetVisibility(0);
   myCellActor->SetPickable(0);
   myCellActor->GetProperty()->SetAmbient(1.0);
@@ -174,6 +184,22 @@ VISU_GaussPtsAct
   myScalarBarCtrl->Delete();
 
   myMapper->Delete();
+  aMatrix->Delete();
+
+  myWarpVector->Delete();
+  myCellDataToPointData->Delete();
+
+  myPolyDataExtractor->SetImplicitFunction(myFunction);
+  //myPolyDataExtractor->ExtractBoundaryCellsOn();
+
+  myFunction->SetOperationTypeToIntersection();
+  myPolyDataExtractor->Delete();
+  myFunction->Delete();
+
+  if( VISU_PickingSettings* aPickingSettings = VISU_PickingSettings::Get() )
+    aPickingSettings->AddObserver(VISU::UpdatePickingSettingsEvent, 
+                                 myEventCallbackCommand.GetPointer(), 
+                                 myPriority);
 }
 
 VISU_GaussPtsAct
@@ -182,7 +208,6 @@ VISU_GaussPtsAct
   if(MYDEBUG) MESSAGE("VISU_GaussPtsAct::~VISU_GaussPtsAct - this = "<<this);
   SetWidgetCtrl(NULL);
   SetInteractor(NULL);
-  SetPickingSettings(NULL);
   SetInsideCursorSettings(NULL);
 }
 
@@ -291,7 +316,6 @@ VISU_GaussPtsAct
 
   myDeviceActor->AddToRender(theRenderer);
 
-  theRenderer->AddActor(myTextActor.GetPointer());
   theRenderer->AddActor(myCellActor.GetPointer());
 
   myCursorPyramid->AddToRender(theRenderer);
@@ -307,7 +331,6 @@ VISU_GaussPtsAct
 
   myDeviceActor->RemoveFromRender(theRenderer);
   
-  theRenderer->RemoveActor(myTextActor.GetPointer());
   theRenderer->RemoveActor(myCellActor.GetPointer());
   
   myCursorPyramid->RemoveFromRender(theRenderer);
@@ -330,6 +353,7 @@ int
 VISU_GaussPtsAct
 ::RenderOpaqueGeometry(vtkViewport *viewport)
 {
+  GetMatrix(myDeviceActor->GetUserMatrix());
   return 1;
 }
 
@@ -337,6 +361,7 @@ int
 VISU_GaussPtsAct
 ::RenderTranslucentGeometry(vtkViewport *viewport)
 {
+  GetMatrix(myDeviceActor->GetUserMatrix());
   return 1;
 }
 
@@ -415,11 +440,14 @@ VISU_GaussPtsAct
 {
   if(MYDEBUG) MESSAGE("VISU_GaussPtsAct::SetMapperInput - this = "<<this);
 
+  myDeviceActor->SetExtractor(myPolyDataExtractor);
   myDeviceActor->SetPipeLine(GetGaussPointsPL());
   myCurrentPL = myDeviceActor->GetPipeLine();
 
   //SetMapper(myCurrentPL->GetPointSpriteMapper());
 
+  //  myPolyDataExtractor->SetInput(myCurrentPL->GetPickableDataSet());
+  //myMapper->SetInput(myPolyDataExtractor->GetOutput());
   myMapper->SetInput(myCurrentPL->GetPickableDataSet());
   SetMapper(myMapper.GetPointer());
 }
@@ -518,6 +546,7 @@ VISU_GaussPtsAct
 ::SetVisibility(int theMode)
 {
   Superclass::SetVisibility(theMode);
+  myDeviceActor->SetVisibility(GetVisibility()); // VSV
   myScalarBarCtrl->SetVisibility(theMode);
   Highlight(isHighlighted());
 }
@@ -715,6 +744,8 @@ VISU_GaussPtsAct
   bool anIsChanged = (mySelectionMode != aSelectionMode);
   bool anIsPreselected = myIsPreselected;
   myIsPreselected = false;
+
+  VISU_PickingSettings* aPickingSettings = VISU_PickingSettings::Get();
   
   if(aSelectionMode == GaussPointSelection && theIsHighlight){
     myPointPicker->Pick(theSelectionEvent->myX, 
@@ -733,11 +764,27 @@ VISU_GaussPtsAct
       if(myIsPreselected){
        anIsChanged = (myLastPreHighlightObjID != anObjId);
        if(anIsChanged){
-         vtkFloatingPointType* aNodeCoord = GetNodeCoord(anObjId);
+         vtkFloatingPointType* aNodeCoord = GetNodeCoord(anObjId);          
+          //Take into account translation
+          vtkFloatingPointType aLocalNodeCoord[3];
+          this->Transform->Push();
+          this->Transform->PostMultiply();
+          this->Transform->Identity();
+          
+          this->Transform->Translate(this->Position[0],
+                                     this->Position[1],
+                                     this->Position[2]);
+          double aPosition[3];
+          this->Transform->GetPosition(aPosition);
+
+          aLocalNodeCoord[0] = aNodeCoord[0] + aPosition[0]; 
+          aLocalNodeCoord[1] = aNodeCoord[1] + aPosition[1];
+          aLocalNodeCoord[2] = aNodeCoord[2] + aPosition[2];
+
          vtkDataSet* aDataSet = GetInput();
          vtkPointData* aPointData = aDataSet->GetPointData();
          if(vtkDataArray *aScalarArray = aPointData->GetScalars()){
-           vtkFloatingPointType aPyramidHeight = myPickingSettings->GetPyramidHeight();
+           vtkFloatingPointType aPyramidHeight = aPickingSettings->GetPyramidHeight();
            aPyramidHeight = aPyramidHeight*myGaussPointsPL->GetMaxPointSize();
            //vtkFloatingPointType aColor[3] = myPreHighlightActor->GetProperty()->GetColor();
            vtkFloatingPointType aColor[3];
@@ -747,13 +794,14 @@ VISU_GaussPtsAct
            aColor[2] = 1. - aColor[2];
 
            myCursorPyramid->Init(aPyramidHeight,
-                                 myPickingSettings->GetCursorSize(),
+                                 aPickingSettings->GetCursorSize(),
                                  GetRadius(anObjId,aVtkId,aScalarArray),
                                  GetMagnification(anObjId),
                                  GetClamp(anObjId),
                                  aNodeCoord,
                                  aColor);
          }
+          this->Transform->Pop();
          myLastPreHighlightObjID = anObjId;
        }
        myCursorPyramid->SetVisibility(true);
@@ -776,7 +824,7 @@ ChangeZoom(VISU_PickingSettings *thePickingSettings,
           vtkIdType theInitialHasIndex,
           vtkIdType theCurrentHasIndex)
 {
-  if(theInitialHasIndex + theCurrentHasIndex == 1){
+  if( (theInitialHasIndex + theCurrentHasIndex == 1) && thePickingSettings){
     vtkCamera *aCamera = theRenderer->GetActiveCamera();
 
     vtkFloatingPointType aZoomFactor = thePickingSettings->GetZoomFactor();
@@ -800,9 +848,9 @@ VISU_GaussPtsAct
   if ( !GetPickable() )
     return false;
 
-  //  int anInitialHasIndex = myIsHighlighted && mySelectionMode == GaussPointSelection;
+  //  int anInitialHasIndex = myIsSubElementsHighlighted && mySelectionMode == GaussPointSelection;
   Handle(SALOME_InteractiveObject) anIO = getIO();
-  //  myIsHighlighted = false;
+  //  myIsSubElementsHighlighted = false;
 
   Selection_Mode aSelectionMode = theSelectionEvent->mySelectionMode;
 
@@ -901,6 +949,13 @@ VISU_GaussPtsAct
   return false;
 }
 
+
+
+void VISU_GaussPtsAct::SetPosition(double _arg[3]){
+  Superclass::SetPosition(_arg);
+  Highlight(isHighlighted());
+}
+
 //==================================================================
 // function : Highlight
 // purpose  :
@@ -912,46 +967,66 @@ VISU_GaussPtsAct
   if(!mySelector.GetPointer())
     return;
 
+  VISU_PickingSettings* aPickingSettings = VISU_PickingSettings::Get();
+
   Selection_Mode aSelectionMode = mySelector->SelectionMode();
   
-  bool anInitialHasIndex = isHighlighted() && mySelectionMode == GaussPointSelection;
+  bool anInitialHasIndex = isSubElementsHighlighted() && mySelectionMode == GaussPointSelection;
   
   TColStd_IndexedMapOfInteger aMapIndex;
   mySelector->GetIndex( getIO(), aMapIndex );
   bool aCurrentHasIndex = aMapIndex.Extent() == 1;
   bool anIsVisible = GetVisibility() && aCurrentHasIndex && theIsHighlight;
+  bool aShowTextActor = aPickingSettings->GetInfoWindowEnabled();
+  bool aShowCellActor = aPickingSettings->GetDisplayParentMesh();
 
   myOutlineActor->SetVisibility(false);
   myCursorPyramid->SetVisibility(false);
-
-  myTextActor->SetVisibility(anIsVisible);
-  myCellActor->SetVisibility(anIsVisible);
+  myTextActor->SetVisibility(anIsVisible && aShowTextActor);
+  myCellActor->SetVisibility(anIsVisible && aShowCellActor);
   GetScalarBarCtrl()->SetIsMarked(anIsVisible);
   myCursorPyramidSelected->SetVisibility(anIsVisible);
-//GetScalarBarCtrl()->Update();
+  //GetScalarBarCtrl()->Update();
 
-  myIsHighlighted = aCurrentHasIndex;
+  myIsSubElementsHighlighted = aCurrentHasIndex;
 
   // Zoom if necessary
-  ChangeZoom(myPickingSettings,
-            GetRenderer(),
-            anInitialHasIndex,
-            aCurrentHasIndex);
-
-  if(!theIsHighlight)
-    return;
+  if( GetVisibility() && aPickingSettings->GetCameraMovementEnabled() )
+  {
+    ChangeZoom(aPickingSettings,
+              GetRenderer(),
+              anInitialHasIndex,
+              aCurrentHasIndex);
+  }
 
   if( aSelectionMode == ActorSelection ) {
-    Superclass::highlight(theIsHighlight);
+    Superclass::Highlight(theIsHighlight);
     return;
   }
 
+  if(!theIsHighlight)
+    return;
+
   if( aSelectionMode != GaussPointSelection )
     return;
 
   if ( !aCurrentHasIndex || !myBarVisibility )
     return;
 
+  //  myTextActor->SetVisibility(anIsVisible);
+  //  myCellActor->SetVisibility(anIsVisible && myPickingSettings->GetDisplayParentMesh());
+  //  GetScalarBarCtrl()->SetIsMarked(anIsVisible);
+  //  myCursorPyramidSelected->SetVisibility(anIsVisible);
+//GetScalarBarCtrl()->Update();
+
+//  myIsHighlighted = aCurrentHasIndex;
+
+  // Zoom if necessary
+//   ChangeZoom(myPickingSettings,
+//          GetRenderer(),
+//          anInitialHasIndex,
+//          aCurrentHasIndex);
+
   //  TColStd_IndexedMapOfInteger aMapIndex;
   mySelector->GetIndex( getIO(), aMapIndex );
   if(aMapIndex.Extent() != 1 || !myBarVisibility) {
@@ -963,25 +1038,44 @@ VISU_GaussPtsAct
 
   int anObjId = aMapIndex(1);
   vtkFloatingPointType* aNodeCoord = GetNodeCoord(anObjId);
+  if ( !aNodeCoord )
+    return;
+  //Take into account translation
+  vtkFloatingPointType aLocalNodeCoord[3];
+  this->Transform->Push();
+  this->Transform->PostMultiply();
+  this->Transform->Identity();
+  this->Transform->Translate(this->Position[0],
+                             this->Position[1],
+                             this->Position[2]);
+  double aPosition[3];
+  this->Transform->GetPosition(aPosition);
+  aLocalNodeCoord[0] = aNodeCoord[0] + aPosition[0]; 
+  aLocalNodeCoord[1] = aNodeCoord[1] + aPosition[1];
+  aLocalNodeCoord[2] = aNodeCoord[2] + aPosition[2];
+  this->Transform->Pop();
 
   vtkFloatingPointType aFocalPnt[3];
   aCamera->GetFocalPoint(aFocalPnt);
 
-  if ( CheckIsSameVector( aNodeCoord, aFocalPnt, 3 ) ) 
+  if ( CheckIsSameVector(aLocalNodeCoord, aFocalPnt, 3 ) ) 
     return;
 
   // FlyTo
-  vtkRenderWindowInteractor* anInteractor = myInteractor;
-  vtkFloatingPointType aDollyWas = anInteractor->GetDolly();
-  int aNumberOfFlyFramesWas = anInteractor->GetNumberOfFlyFrames();
+  if( anIsVisible && aPickingSettings->GetCameraMovementEnabled() )
+  {
+    vtkRenderWindowInteractor* anInteractor = myInteractor;
+    vtkFloatingPointType aDollyWas = anInteractor->GetDolly();
+    int aNumberOfFlyFramesWas = anInteractor->GetNumberOfFlyFrames();
   
-  anInteractor->SetDolly(0.0);
-  anInteractor->SetNumberOfFlyFrames(myPickingSettings->GetStepNumber());
-  anInteractor->FlyTo(aRenderer, aNodeCoord);
-  aRenderer->ResetCameraClippingRange();
-  anInteractor->SetDolly(aDollyWas);
-  anInteractor->SetNumberOfFlyFrames(aNumberOfFlyFramesWas);
-  anInteractor->InvokeEvent(SVTK::ChangeRotationPoint, aNodeCoord);
+    anInteractor->SetDolly(0.0);
+    anInteractor->SetNumberOfFlyFrames(aPickingSettings->GetStepNumber());
+    anInteractor->FlyTo(aRenderer, aNodeCoord);
+    aRenderer->ResetCameraClippingRange();
+    anInteractor->SetDolly(aDollyWas);
+    anInteractor->SetNumberOfFlyFrames(aNumberOfFlyFramesWas);
+    anInteractor->InvokeEvent(SVTK::ChangeRotationPoint, aNodeCoord);
+  }
   //
   std::ostringstream aStr;
   //  int anObjId = aMapIndex(1);
@@ -989,8 +1083,7 @@ VISU_GaussPtsAct
   //
   vtkIdType aVtkId = GetNodeVTKID(anObjId);
   if(aVtkId >= 0){
-    vtkFloatingPointType *aNodeCoord = GetNodeCoord(anObjId);
-    vtkFloatingPointType aWorldCoord[4] = {aNodeCoord[0], aNodeCoord[1], aNodeCoord[2], 1.};
+    vtkFloatingPointType aWorldCoord[4] = {aLocalNodeCoord[0], aLocalNodeCoord[1], aLocalNodeCoord[2], 1.};
     //
     vtkDataSet* aDataSet = GetInput();
     vtkPointData* aDataSetAttributes = aDataSet->GetPointData();
@@ -1002,14 +1095,14 @@ VISU_GaussPtsAct
       GetScalarBarCtrl()->SetMarkValue(aVal);
       GetScalarBarCtrl()->Update();
       //
-      vtkFloatingPointType aPyramidHeight = myPickingSettings->GetPyramidHeight();
+      vtkFloatingPointType aPyramidHeight = aPickingSettings->GetPyramidHeight();
       aPyramidHeight = aPyramidHeight*myGaussPointsPL->GetMaxPointSize();
       myCursorPyramidSelected->Init(aPyramidHeight,
-                                   myPickingSettings->GetCursorSize(),
+                                   aPickingSettings->GetCursorSize(),
                                    GetRadius(anObjId,aVtkId,aScalarArray),
                                    GetMagnification(anObjId),
                                    GetClamp(anObjId),
-                                   aNodeCoord,
+                                   aLocalNodeCoord,
                                    myHighlightActor->GetProperty()->GetColor());
       myCursorPyramidSelected->SetVisibility(anIsVisible && theIsHighlight);
       //
@@ -1047,53 +1140,141 @@ VISU_GaussPtsAct
     //
     // myTextActor
     std::string aString = aStr.str();
-    myTextActor->SetModePosition(myPickingSettings->GetInfoWindowPosition());
-    myTextActor->SetTransparency(myPickingSettings->GetInfoWindowTransparency());
+    myTextActor->SetModePosition(aPickingSettings->GetInfoWindowPosition());
+    myTextActor->SetTransparency(aPickingSettings->GetInfoWindowTransparency());
     myTextActor->SetWorldPoint(aWorldCoord);
     myTextActor->SetText(aString.c_str());
-    myTextActor->SetVisibility(anIsVisible && theIsHighlight);
+    myTextActor->SetVisibility(anIsVisible && theIsHighlight && aShowTextActor);
     //
     // myCellActor
-    if(myPickingSettings->GetDisplayParentMesh()){
-      const VISU::PGaussPtsIDMapper& aGaussPtsIDMapper = 
-       myGaussPointsPL->GetGaussPtsIDMapper();
-      VISU::TNamedIDMapper* aParent = aGaussPtsIDMapper->GetParent();
+    const VISU::PGaussPtsIDMapper& aGaussPtsIDMapper = myGaussPointsPL->GetGaussPtsIDMapper();
+    VISU::TNamedIDMapper* aParent = aGaussPtsIDMapper->GetParent();
+    //
+    myCellSource->Reset();
+    myCellSource->Modified(); // a VTK bug
+    vtkUnstructuredGrid* aCellDataSet = aParent->GetUnstructuredGridOutput();
+    
+    // get parent cell and insert it to myCellSource
+    VISU::TGaussPointID aGaussPointID = aGaussPtsIDMapper->GetObjID(anObjId);
+    vtkIdType aCellID = aGaussPointID.first;
+    vtkCell* aCell = aParent->GetElemCell(aCellID);
+    myCellSource->InsertNextCell(aCell->GetCellType(),aCell->GetPointIds());
+    
+    if (myGaussPointsPL->GetIsDeformed()) {
+      // find neighbour cells ids
+      vtkIdList* aNeighbourCells = vtkIdList::New();
+      aNeighbourCells->Allocate(VTK_CELL_SIZE);
       
-      myCellSource->Reset();
-      myCellSource->Modified(); // a VTK bug
-      vtkUnstructuredGrid* aDataSet = aParent->GetUnstructuredGridOutput();
-      myCellSource->SetPoints(aDataSet->GetPoints());
+      vtkIdList* aCellPoints = aCell->GetPointIds();
       
-      VISU::TGaussPointID aGaussPointID = aGaussPtsIDMapper->GetObjID(anObjId);
-      vtkIdType aCellID = aGaussPointID.first;
-      vtkCell* aCell = aParent->GetElemCell(aCellID);
-      myCellSource->InsertNextCell(aCell->GetCellType(),aCell->GetPointIds());
-      myCellActor->SetVisibility(anIsVisible && theIsHighlight);
-      myCellActor->SetRepresentation(VTK_WIREFRAME);
-    }
-  }
-}
+      vtkIdList *aPointCells = vtkIdList::New();
+      aPointCells->Allocate(VTK_CELL_SIZE);
+      
+      vtkIdType aNbPoints = aCellPoints->GetNumberOfIds();
+      for (vtkIdType i = 0; i < aNbPoints; i++) {
+       aCellDataSet->GetPointCells(aCellPoints->GetId(i), aPointCells);
+
+       // add cell ids
+       vtkIdType aNbCells = aPointCells->GetNumberOfIds();
+       for (vtkIdType j = 0; j < aNbCells; j++)
+         aNeighbourCells->InsertUniqueId(aPointCells->GetId(j));
+      }
 
+      aPointCells->Delete();
 
-//----------------------------------------------------------------
-void
-VISU_GaussPtsAct
-::SetPickingSettings(VISU_PickingSettings* thePickingSettings)
-{
-  if(myPickingSettings == thePickingSettings)
-    return;
+      // get vector data
+      vtkDataArray* anInputVectors = aDataSetAttributes->GetVectors();
+      if (!anInputVectors)
+       return;
+      
+      // insert neighbour cells to the special dataset
+      vtkUnstructuredGrid *aCellsToWarp = vtkUnstructuredGrid::New();
+      aCellsToWarp->SetPoints(aCellDataSet->GetPoints());
 
-  if(myPickingSettings)
-    myPickingSettings->RemoveObserver(myEventCallbackCommand.GetPointer());
+      vtkIdType aNbNeighbourCells = aNeighbourCells->GetNumberOfIds();
 
-  myPickingSettings = thePickingSettings;
+      vtkDataArray *aVectorsToSet = vtkDataArray::CreateDataArray(anInputVectors->GetDataType());
+      aVectorsToSet->SetNumberOfComponents(3);
+      aVectorsToSet->SetNumberOfTuples(aNbNeighbourCells);
 
-  if(thePickingSettings)
-  {
-    thePickingSettings->AddObserver(VISU::UpdatePickingSettingsEvent, 
-                                   myEventCallbackCommand.GetPointer(), 
-                                   myPriority);
-    this->UpdatePickingSettings();
+      vtkDataArray *aCellVectors = vtkDataArray::CreateDataArray(anInputVectors->GetDataType());
+      aCellVectors->SetNumberOfComponents(3);
+      
+      int aNbComp = anInputVectors->GetNumberOfComponents();
+      std::vector<vtkFloatingPointType> aTuple(aNbComp);
+      
+      for (vtkIdType i = 0; i < aNbNeighbourCells; i++) {
+       vtkIdType aVTKCellId = aNeighbourCells->GetId(i);
+       vtkIdType anObjCellId = aParent->GetElemObjID(aVTKCellId);
+       
+       vtkCell* aCurCell = aParent->GetElemCell(anObjCellId);
+       
+       vtkIdType aNewCellId = aCellsToWarp->InsertNextCell(aCurCell->GetCellType(), aCurCell->GetPointIds());
+       
+       // get gauss points corresponding to the current cell
+       vtkIdType aPointVtkId = -1;
+       vtkIdType aLocalPntId = 0;
+       aPointVtkId = aGaussPtsIDMapper->GetVTKID(VISU::TGaussPointID(anObjCellId, aLocalPntId));
+       
+       if (aPointVtkId >= 0) {
+         // Compute average vector
+         aCellVectors->Reset();
+         while (aPointVtkId >= 0) {
+           anInputVectors->GetTuple(aPointVtkId, &aTuple[0]);
+
+           if (aNbComp >= 3)
+             aCellVectors->InsertNextTuple3(aTuple[0], aTuple[1], aTuple[2]);
+           else if (aNbComp == 2)
+             aCellVectors->InsertNextTuple3(aTuple[0], aTuple[1], 0);
+           else if (aNbComp == 1)
+             aCellVectors->InsertNextTuple3(aTuple[0], 0, 0);
+
+           aPointVtkId = aGaussPtsIDMapper->GetVTKID(VISU::TGaussPointID(anObjCellId, ++aLocalPntId));
+         }
+
+         double aXCoord = 0, anYCoord = 0, aZCoord = 0;
+
+         vtkIdType aNbVectors = aCellVectors->GetNumberOfTuples();
+         
+         for (vtkIdType aVecId = 0; aVecId < aNbVectors; aVecId++) {
+           aXCoord  += aCellVectors->GetComponent(aVecId, 0);
+           anYCoord += aCellVectors->GetComponent(aVecId, 1);
+           aZCoord  += aCellVectors->GetComponent(aVecId, 2);
+         }
+
+         aXCoord = aXCoord / aNbVectors;
+         anYCoord = anYCoord / aNbVectors;
+         aZCoord = aZCoord / aNbVectors;
+         
+         // set vector data for the cell
+         aVectorsToSet->SetTuple3(aNewCellId, aXCoord, anYCoord, aZCoord);
+       }
+       else
+         aVectorsToSet->SetTuple3(aNewCellId, 0, 0, 0);
+      }
+      
+      aCellsToWarp->GetCellData()->SetVectors(aVectorsToSet);
+      
+      aVectorsToSet->Delete();
+      aCellVectors->Delete();
+      aNeighbourCells->Delete();
+      
+      // warp
+      myWarpVector->SetScaleFactor(myGaussPointsPL->GetScale());
+      
+      myCellDataToPointData->SetInput(aCellsToWarp);
+      myCellDataToPointData->PassCellDataOn();
+      aCellsToWarp->Delete();
+             
+      myWarpVector->SetInput(myCellDataToPointData->GetUnstructuredGridOutput());
+      vtkUnstructuredGrid* aWarpedDataSet = myWarpVector->GetUnstructuredGridOutput();
+      aWarpedDataSet->Update();
+      myCellSource->SetPoints(aWarpedDataSet->GetPoints());
+    }
+    else
+      myCellSource->SetPoints(aCellDataSet->GetPoints());
+    
+    myCellActor->SetVisibility(anIsVisible && theIsHighlight && aShowCellActor);
   }
 }
 
@@ -1101,19 +1282,21 @@ void
 VISU_GaussPtsAct
 ::UpdatePickingSettings()
 {
-  if(!myPickingSettings || myPickingSettings->GetInitial())
+  //printf( "VISU_GaussPtsAct::UpdatePickingSettings()\n" );
+  VISU_PickingSettings* aPickingSettings = VISU_PickingSettings::Get();
+  if(!aPickingSettings)
     return;
 
-  myTextActor->SetModePosition(myPickingSettings->GetInfoWindowPosition());
-  myTextActor->SetTransparency(myPickingSettings->GetInfoWindowTransparency());
+  myTextActor->SetModePosition(aPickingSettings->GetInfoWindowPosition());
+  myTextActor->SetTransparency(aPickingSettings->GetInfoWindowTransparency());
 
-  vtkFloatingPointType aHeight = myGaussPointsPL->GetMaxPointSize()*myPickingSettings->GetPyramidHeight();
-  vtkFloatingPointType aCursorSize = myPickingSettings->GetCursorSize();
+  vtkFloatingPointType aHeight = myGaussPointsPL->GetMaxPointSize()*aPickingSettings->GetPyramidHeight();
+  vtkFloatingPointType aCursorSize = aPickingSettings->GetCursorSize();
   myCursorPyramid->SetPreferences(aHeight,aCursorSize);
   myCursorPyramidSelected->SetPreferences(aHeight,aCursorSize);
 
-  myHighlightActor->GetProperty()->SetColor( myPickingSettings->GetColor() );
-  myPointPicker->SetTolerance( myPickingSettings->GetPointTolerance() );
+  myHighlightActor->GetProperty()->SetColor( aPickingSettings->GetColor() );
+  myPointPicker->SetTolerance( aPickingSettings->GetPointTolerance() );
 
   Highlight(isHighlighted());
 
@@ -1195,6 +1378,51 @@ VISU_GaussPtsAct
   return aTime;
 }
 
+void VISU_GaussPtsAct::RemoveAllClippingPlanes()
+{
+  myFunction->GetFunction()->RemoveAllItems();
+  myFunction->Modified();
+}
+
+vtkIdType VISU_GaussPtsAct::GetNumberOfClippingPlanes()
+{
+  return myFunction->GetFunction()->GetNumberOfItems();
+}
+
+bool VISU_GaussPtsAct::AddClippingPlane(vtkPlane* thePlane)
+{
+  vtkImplicitFunctionCollection* aFunctions = GetClippingPlanes();
+  aFunctions->InitTraversal();
+  vtkImplicitFunction* aItem;
+  while ((aItem = aFunctions->GetNextItem())) {
+    if (thePlane == aItem)
+      return false;
+  }
+  myFunction->AddFunction(thePlane);
+  return true;
+}
+
+vtkPlane* VISU_GaussPtsAct::GetClippingPlane(vtkIdType theID)
+{
+  vtkPlane* aPlane = NULL;
+  if ((theID >= 0) && (theID < GetNumberOfClippingPlanes())) {
+    vtkImplicitFunctionCollection* aFunction = myFunction->GetFunction();
+    vtkImplicitFunction* aFun = NULL;
+    aFunction->InitTraversal();
+    for (vtkIdType i = 0; i <= theID; i++)
+      aFun = aFunction->GetNextItem();
+    aPlane = dynamic_cast<vtkPlane*>(aFun);
+  }
+  return aPlane;
+}
+
+vtkImplicitFunctionCollection* VISU_GaussPtsAct::GetClippingPlanes()
+{
+  return myFunction->GetFunction();
+}
+
+
+
 //==============================================================================
 vtkStandardNewMacro(VISU_GaussPtsAct1);
 
@@ -1210,13 +1438,18 @@ VISU_GaussPtsAct1
 
   myEventCallbackCommand->SetCallback(VISU_GaussPtsAct1::ProcessEvents);
 
+  vtkMatrix4x4 *aMatrix = vtkMatrix4x4::New();
+
   myInsideDeviceActor->SetVisibility(false);
   myInsideDeviceActor->SetPickable(false);
+  myInsideDeviceActor->SetUserMatrix(aMatrix);
   myInsideDeviceActor->Delete();
 
   myOutsideDeviceActor->SetVisibility(false);
   myOutsideDeviceActor->SetPickable(false);
+  myOutsideDeviceActor->SetUserMatrix(aMatrix);
   myOutsideDeviceActor->Delete();
+  aMatrix->Delete();
 }
 
 VISU_GaussPtsAct1
@@ -1248,16 +1481,16 @@ VISU_GaussPtsAct1
 {
   Superclass::AddToRender(theRenderer);
 
-  myInsideDeviceActor->AddToRender(theRenderer);
-  myOutsideDeviceActor->AddToRender(theRenderer);
+  //myInsideDeviceActor->AddToRender(theRenderer);
+  //myOutsideDeviceActor->AddToRender(theRenderer);
 }
 
 void 
 VISU_GaussPtsAct1
 ::RemoveFromRender(vtkRenderer* theRenderer)
 {
-  myInsideDeviceActor->RemoveFromRender(theRenderer);
-  myOutsideDeviceActor->RemoveFromRender(theRenderer);
+  //myInsideDeviceActor->RemoveFromRender(theRenderer);
+  //myOutsideDeviceActor->RemoveFromRender(theRenderer);
 
   Superclass::RemoveFromRender(theRenderer);
 }
@@ -1273,6 +1506,28 @@ VISU_GaussPtsAct1
 }
 
 
+int
+VISU_GaussPtsAct1
+::RenderOpaqueGeometry(vtkViewport *viewport)
+{
+
+  Superclass::RenderOpaqueGeometry(viewport);
+  GetMatrix(myInsideDeviceActor->GetUserMatrix());
+  GetMatrix(myOutsideDeviceActor->GetUserMatrix());
+  return 1;
+}
+
+int
+VISU_GaussPtsAct1
+::RenderTranslucentGeometry(vtkViewport *viewport)
+{ 
+  Superclass::RenderTranslucentGeometry(viewport);
+  GetMatrix(myInsideDeviceActor->GetUserMatrix());
+  GetMatrix(myOutsideDeviceActor->GetUserMatrix());
+
+  return 1;
+}
+
 //----------------------------------------------------------------------------
 void
 VISU_GaussPtsAct1
@@ -1313,18 +1568,18 @@ VISU_GaussPtsAct1
 
   Superclass::SetMapperInput(theDataSet);
 
-  if(VISU_GaussPointsPL* aPipeLine = CreatePipeLine(GetGaussPointsPL())){
-    myInsideDeviceActor->SetPipeLine(aPipeLine);
-    aPipeLine->Delete();
-  }
+//   if(VISU_GaussPointsPL* aPipeLine = CreatePipeLine(GetGaussPointsPL())){
+//     myInsideDeviceActor->SetPipeLine(aPipeLine);
+//     aPipeLine->Delete();
+//   }
 
-  if(VISU_GaussPointsPL* aPipeLine = CreatePipeLine(GetGaussPointsPL())){
-    myOutsideDeviceActor->SetPipeLine(aPipeLine);
-    aPipeLine->Delete();
+//   if(VISU_GaussPointsPL* aPipeLine = CreatePipeLine(GetGaussPointsPL())){
+//     myOutsideDeviceActor->SetPipeLine(aPipeLine);
+//     aPipeLine->Delete();
 
-    aPipeLine->SetExtractBoundaryCells(true);
-    aPipeLine->SetExtractInside(true);
-  }
+//     aPipeLine->SetExtractBoundaryCells(true);
+//     aPipeLine->SetExtractInside(true);
+//   }
 }
 
 
@@ -1378,11 +1633,20 @@ VISU_GaussPtsAct1
 
 
 //----------------------------------------------------------------
+
+void 
+VISU_GaussPtsAct1::SetPosition(double _arg[3]){
+  if(MYDEBUG1) MESSAGE("VISU_GaussPtsAct1::SetPosition - this = "<<this);              
+  Superclass::SetPosition(_arg);
+  myUpdatePositionSignal(_arg);
+}
+
 void 
 VISU_GaussPtsAct1
 ::Connect(VISU_GaussPtsAct2* theActor)
 {
   mySetVisibilitySignal.connect(boost::bind(&VISU_GaussPtsAct2::SetVisibility,theActor,_1));
+  myUpdatePositionSignal.connect(boost::bind(&VISU_GaussPtsAct2::SetPosition, theActor,_1));
 }
 
 void
@@ -1395,7 +1659,7 @@ VISU_GaussPtsAct1
 
   bool aVisisbility = GetVisibility();
   bool anIsSegementation = IsSegmentationEnabled();
-  myDeviceActor->SetVisibility(aVisisbility && !anIsSegementation);
+  myDeviceActor->SetVisibility(aVisisbility/* && !anIsSegementation*/);
   myInsideDeviceActor->SetVisibility(aVisisbility && anIsSegementation);
   myOutsideDeviceActor->SetVisibility(aVisisbility && anIsSegementation);
 
@@ -1448,7 +1712,7 @@ VISU_GaussPtsAct1
 
   aPipeline->SetImplicitFunction(anImplicitFunction); // To restore
   aPipeline->SetExtractBoundaryCells(true);
-  aPipeline->SetExtractInside(true);
+  //aPipeline->SetExtractInside(true);
   aPipeline->SetMagnification( aMagnification );
 
   aPipeline->SetPrimitiveType( myOutsideCursorSettings->GetPrimitiveType() );
@@ -1518,7 +1782,7 @@ VISU_GaussPtsAct1
   case vtkCommand::EndInteractionEvent: {
     bool aVisisbility = GetVisibility();
     bool anIsSegementation = IsSegmentationEnabled();
-    myDeviceActor->SetVisibility(aVisisbility && !anIsSegementation);
+    myDeviceActor->SetVisibility(aVisisbility/* && !anIsSegementation*/);
     myInsideDeviceActor->SetVisibility(aVisisbility && anIsSegementation);
     myOutsideDeviceActor->SetVisibility(aVisisbility && anIsSegementation);
     break;
@@ -1574,6 +1838,12 @@ VISU_GaussPtsAct2
   Superclass::ShallowCopyPL(thePipeLine);
 }
 
+//----------------------------------------------------------------------------
+void
+VISU_GaussPtsAct2::SetPosition(double _arg[3]){
+  if(MYDEBUG1) MESSAGE("VISU_GaussPtsAct2::SetPosition - this = "<<this);      
+  Superclass::SetPosition(_arg);
+}
 
 //----------------------------------------------------------------------------
 void
@@ -1581,15 +1851,15 @@ VISU_GaussPtsAct2
 ::SetMapperInput(vtkDataSet* theDataSet) 
 {
   if(MYDEBUG2) MESSAGE("VISU_GaussPtsAct2::SetMapperInput - this = "<<this);
-
-  if(VISU_GaussPointsPL* aPipeLine = CreatePipeLine(GetGaussPointsPL())){
-    myDeviceActor->SetPipeLine(aPipeLine);
-    myCurrentPL = aPipeLine;
-    aPipeLine->Delete();
-
-    myMapper->SetInput(myCurrentPL->GetPickableDataSet());
-    SetMapper(myMapper.GetPointer());
-  }
+  Superclass::SetMapperInput(theDataSet);
+//   if(VISU_GaussPointsPL* aPipeLine = CreatePipeLine(GetGaussPointsPL())){
+//     myDeviceActor->SetPipeLine(aPipeLine);
+//     myCurrentPL = aPipeLine;
+//     aPipeLine->Delete();
+
+//     myMapper->SetInput(myCurrentPL->GetPickableDataSet());
+//     SetMapper(myMapper.GetPointer());
+//   }
 }
 
 //----------------------------------------------------------------------------
index 5cf5086f746597e2c12b61ffc52f4d49f35ed857..891f391b9c7097a604a113f30dffe7fa23bbbd1e 100644 (file)
@@ -1,34 +1,34 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_ScalarMapAct.h
 //  Author : Laurent CORNABE with help of Nicolas REJNERI
 //  Module : VISU
 //  $Header$
-
+//
 #ifndef VISU_GaussPtsAct_HeaderFile
 #define VISU_GaussPtsAct_HeaderFile
 
+#include "VISU_OBJECT.h"
 #include "VISU_Actor.h"
 #include "VISU_GaussPtsActorFactory.h"
 
@@ -56,14 +56,18 @@ class vtkUnstructuredGrid;
 class vtkPolyDataMapper;
 class vtkDataArray;
 
+class vtkCellDataToPointData;
+class vtkWarpVector;
+
 class vtkInteractorObserver;
 class vtkCallbackCommand;
 
 class VISU_ScalarBarCtrl;
-class VISU_PickingSettings;
 class VISU_InsideCursorSettings;
 class VISU_OutsideCursorSettings;
 
+class SALOME_ExtractPolyDataGeometry;
+class vtkImplicitBoolean;
 
 //============================================================================
 //! Base class for Gauss Points Actors.
@@ -76,7 +80,7 @@ class VISU_OutsideCursorSettings;
   - defining a way to handle VISU_ImplicitFunctionWidget;
   - global / local scalar bar mamangement.
 */
-class VTKOCC_EXPORT VISU_GaussPtsAct : public VISU_Actor
+class VISU_OBJECT_EXPORT VISU_GaussPtsAct : public VISU_Actor
 {
  public:
   vtkTypeMacro(VISU_GaussPtsAct,VISU_Actor);
@@ -132,6 +136,10 @@ class VTKOCC_EXPORT VISU_GaussPtsAct : public VISU_Actor
   VISU::TGaussPtsActorFactory*
   GetGaussPtsFactory();    
 
+  virtual
+  void 
+  SetPosition(double _arg[3]);
+
   //----------------------------------------------------------------------------
   //! Add actor to the renderer.
   virtual
@@ -232,9 +240,6 @@ class VTKOCC_EXPORT VISU_GaussPtsAct : public VISU_Actor
   UpdateInsideCursorSettings( PDeviceActor );
 
   //----------------------------------------------------------------------------
-  void
-  SetPickingSettings(VISU_PickingSettings* thePickingSettings);
-
   //! Apply the picking settings on the actor.
   void
   UpdatePickingSettings();
@@ -252,6 +257,17 @@ class VTKOCC_EXPORT VISU_GaussPtsAct : public VISU_Actor
   unsigned long int 
   GetMTime();
 
+  //----------------------------------------------------------------------------
+  virtual void RemoveAllClippingPlanes();
+
+  virtual vtkIdType GetNumberOfClippingPlanes();
+
+  virtual bool AddClippingPlane(vtkPlane* thePlane);
+
+  virtual vtkPlane* GetClippingPlane(vtkIdType theID);
+
+  virtual vtkImplicitFunctionCollection* GetClippingPlanes();
+
  protected:
   //----------------------------------------------------------------------------
   VISU_GaussPtsAct();
@@ -315,22 +331,24 @@ class VTKOCC_EXPORT VISU_GaussPtsAct : public VISU_Actor
   vtkSmartPointer<VISU_GaussPointsPL> myGaussPointsPL;
 
   vtkSmartPointer<vtkPolyDataMapper> myMapper;
+  vtkSmartPointer<SALOME_ExtractPolyDataGeometry> myPolyDataExtractor;
+  vtkSmartPointer<vtkImplicitBoolean> myFunction;
 
   vtkIdType myLastPreHighlightObjID;
 
-  vtkSmartPointer<VISU_FramedTextActor> myTextActor;
-
   vtkSmartPointer<VISU_CursorPyramid> myCursorPyramid;
   vtkSmartPointer<VISU_CursorPyramid> myCursorPyramidSelected;
   
   vtkSmartPointer<vtkUnstructuredGrid> myCellSource;
   vtkSmartPointer<SVTK_Actor> myCellActor;
 
+  vtkSmartPointer<vtkWarpVector> myWarpVector;
+  vtkSmartPointer<vtkCellDataToPointData> myCellDataToPointData;
+
   bool myBarVisibility;
   vtkSmartPointer<VISU_ScalarBarCtrl> myScalarBarCtrl;
 
   VISU_InsideCursorSettings* myInsideCursorSettings;
-  VISU_PickingSettings* myPickingSettings;
 };
 
 
@@ -343,7 +361,7 @@ class VISU_GaussPtsAct2;
  * which has two representation modes - outside and
  * inside segmentation cursor.
  */
-class VTKOCC_EXPORT VISU_GaussPtsAct1 : public VISU_GaussPtsAct
+class VISU_OBJECT_EXPORT VISU_GaussPtsAct1 : public VISU_GaussPtsAct
 {
  public:
   vtkTypeMacro(VISU_GaussPtsAct1,VISU_GaussPtsAct);
@@ -399,6 +417,20 @@ class VTKOCC_EXPORT VISU_GaussPtsAct1 : public VISU_GaussPtsAct
   void
   SetWidgetCtrl(VISU_WidgetCtrl* theWidgetCtrl);
 
+  //! Redefined method of rendering the Opaque Geometry.
+  virtual
+  int
+  RenderOpaqueGeometry(vtkViewport *viewport);
+
+  //! Redefined method of rendering the Translucent Geometry.
+  virtual
+  int
+  RenderTranslucentGeometry(vtkViewport *viewport);
+                     
+  virtual
+  void 
+  SetPosition(double _arg[3]);
+
   //! Gets memory size used by the instance (bytes).
   virtual
   unsigned long int
@@ -448,6 +480,7 @@ class VTKOCC_EXPORT VISU_GaussPtsAct1 : public VISU_GaussPtsAct
   OnInteractorEvent(unsigned long theEvent);
 
   boost::signal1<void,int> mySetVisibilitySignal;
+  boost::signal1<void,double*> myUpdatePositionSignal;
   VISU_OutsideCursorSettings* myOutsideCursorSettings;
 
   //----------------------------------------------------------------------------
@@ -457,7 +490,7 @@ class VTKOCC_EXPORT VISU_GaussPtsAct1 : public VISU_GaussPtsAct
 
 
 //! Gauss Points Actor, displayed in the Segmented View.
-class VTKOCC_EXPORT VISU_GaussPtsAct2 : public VISU_GaussPtsAct
+class VISU_OBJECT_EXPORT VISU_GaussPtsAct2 : public VISU_GaussPtsAct
 {
  public:
   vtkTypeMacro(VISU_GaussPtsAct2,VISU_GaussPtsAct);
@@ -489,7 +522,11 @@ class VTKOCC_EXPORT VISU_GaussPtsAct2 : public VISU_GaussPtsAct
   virtual
   unsigned long int
   GetMemorySize();
+                     
+  virtual
+  void 
+  SetPosition(double _arg[3]);
+  
  protected:
   //----------------------------------------------------------------------------
   VISU_GaussPtsAct2();
index e2b52bf79633015eff9a9dca4701f0c66e2a06b3..b99a404682285d166347a25c352363d5e88d4394 100644 (file)
@@ -1,31 +1,30 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_ScalarMapAct.h
 //  Author : Laurent CORNABE with help of Nicolas REJNERI
 //  Module : VISU
 //  $Header$
-
+//
 #ifndef VISU_GAUSSPTS_ACTOR_FACTORY_H
 #define VISU_GAUSSPTS_ACTOR_FACTORY_H
 
index 3ee213001efd8c5852f5f22a9ce0503fd51caa32..2ea81b7f64dfea3a00c032c145484306ac9dd568 100644 (file)
@@ -1,32 +1,30 @@
-//  SMESH OBJECT : interactive object for SMESH visualization
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SMESH OBJECT : interactive object for SMESH visualization
 //  File   :
 //  Author : 
 //  Module :
 //  $Header$
-
-
+//
 #include "VISU_GaussPtsDeviceActor.h"
 
 #include "VISU_GaussPointsPL.hxx"
@@ -34,6 +32,7 @@
 
 #include "VTKViewer_Transform.h"
 #include "VTKViewer_TransformFilter.h"
+#include <SALOME_ExtractPolyDataGeometry.h>
 
 #include <vtkObjectFactory.h>
 #include <vtkPolyData.h>
@@ -44,7 +43,7 @@
 #include <vtkPassThroughFilter.h>
 #include <vtkImageData.h>
 
-#include <qfileinfo.h>
+#include <QFileInfo>
 
 #include "utilities.h"
 #include "VISU_PipeLineUtils.hxx"
@@ -63,18 +62,18 @@ namespace VISU
   std::string
   Image2VTI(const std::string& theImageFileName)
   {
-    QFileInfo aFileInfo(theImageFileName.c_str());
-    QString aFormat = aFileInfo.extension(FALSE);
+    QFileInfo aFileInfo( theImageFileName.c_str() );
+    QString aFormat = aFileInfo.suffix();
 #ifdef WIN32
     QString aTmpDir = getenv( "TEMP" );
 #else
     QString aTmpDir = QString( "/tmp/" ) + getenv("USER");
 #endif
-    QString aVTIName = aTmpDir + "-" + aFileInfo.baseName(TRUE) + ".vti";
-    QString aCommand = QString( "VISU_img2vti " ) + aFormat + " " +  theImageFileName + " " + aVTIName;
+    QString aVTIName = aTmpDir + "-" + aFileInfo.completeBaseName() + ".vti";
+    QString aCommand = QString( "VISU_img2vti " ) + aFormat + " " +  theImageFileName.c_str() + " " + aVTIName;
 
-    if(system( aCommand.latin1() ) == 0)
-      return aVTIName.latin1();
+    if ( system( aCommand.toLatin1().data() ) == 0 )
+      return aVTIName.toLatin1().data();
 
     return "";
   }
@@ -89,7 +88,7 @@ namespace VISU
 #else
       QString aCommand = QString( "del /F " ) + theFileName.c_str();
 #endif
-      system( aCommand.latin1() );
+      system( aCommand.toLatin1().data() );
     }
   }
   
@@ -109,20 +108,20 @@ namespace VISU
     if ( anIter != aTextureMap.end() ) {
       aTextureValue = anIter->second;
     } else {
-      QString aMainTextureVTI = Image2VTI(theMainTexture);
-      QString anAlphaTextureVTI = Image2VTI(theAlphaTexture);
+      QString aMainTextureVTI = Image2VTI(theMainTexture).c_str();
+      QString anAlphaTextureVTI = Image2VTI(theAlphaTexture).c_str();
       
       if( !aMainTextureVTI.isNull() && !anAlphaTextureVTI.isNull() ){
        aTextureValue =
-         VISU_GaussPointsPL::MakeTexture( aMainTextureVTI.latin1(), 
-                                          anAlphaTextureVTI.latin1());
+         VISU_GaussPointsPL::MakeTexture( aMainTextureVTI.toLatin1().data(), 
+                                          anAlphaTextureVTI.toLatin1().data() );
 
        if( aTextureValue.GetPointer() )
          aTextureMap[aTextureKey] = aTextureValue;
       }
 
-      RemoveFile(aMainTextureVTI);
-      RemoveFile(anAlphaTextureVTI);
+      RemoveFile(aMainTextureVTI.toLatin1().data());
+      RemoveFile(anAlphaTextureVTI.toLatin1().data());
     }
 
     return aTextureValue;
@@ -136,7 +135,8 @@ vtkStandardNewMacro(VISU_GaussDeviceActorBase);
 
 VISU_GaussDeviceActorBase
 ::VISU_GaussDeviceActorBase():
-  myTransformFilter(VTKViewer_TransformFilter::New())
+  myTransformFilter(VTKViewer_TransformFilter::New()),
+  myPolyDataExtractor(0)
 {
   if(MYDEBUG) MESSAGE("VISU_GaussDeviceActorBase - "<<this);
 
@@ -214,9 +214,14 @@ VISU_GaussDeviceActorBase
   myMapper = theMapper;
 
   int anId = 0;
-  myPassFilter[ anId ]->SetInput( aDataSet ); 
+  if (myPolyDataExtractor) {
+    myPolyDataExtractor->SetInput(aDataSet);
+    myPassFilter[ anId ]->SetInput( myPolyDataExtractor->GetOutput() ); 
+  } else {
+    myPassFilter[ anId ]->SetInput( aDataSet ); 
+  }
   myPassFilter[ anId + 1 ]->SetInput( myPassFilter[ anId ]->GetOutput() );
-  
+
   anId++;
   myTransformFilter->SetInput( myPassFilter[ anId ]->GetPolyDataOutput() );
   
@@ -586,7 +591,7 @@ VISU_FramedTextActor::VISU_FramedTextActor()
   myTextProperty->SetFontFamilyToArial();
   //
   myTextMapper=vtkTextMapper::New();
-  myTextMapper->SetInput("some text");
+  myTextMapper->SetInput("");
   myTextMapper->GetTextProperty()->ShallowCopy(myTextProperty);
   myTextActor=vtkActor2D::New();
   myTextActor->SetMapper(myTextMapper);
index 7ff5c369ea9e729b6e941d242b519ef9436161d4..d519780c2b57a964e403b7af5d8d89570ed146f3 100644 (file)
@@ -1,34 +1,34 @@
-//  SMESH OBJECT : interactive object for SMESH visualization
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SMESH OBJECT : interactive object for SMESH visualization
 //  File   : 
 //  Author : 
 //  Module : 
 //  $Header$
-
+//
 #ifndef VISU_GAUSS_PTS_DEVICE_ACTOR_H
 #define VISU_GAUSS_PTS_DEVICE_ACTOR_H
 
+#include "VISU_OBJECT.h"
 #include "VISU_Actor.h"
 #include "VTKViewer_GeometryFilter.h"
 
@@ -43,6 +43,7 @@ class VISU_GaussPointsPL;
 
 class vtkPassThroughFilter;
 class vtkImageData;
+class SALOME_ExtractPolyDataGeometry;
 
 
 //============================================================================
@@ -50,7 +51,7 @@ namespace VISU
 {
   typedef vtkSmartPointer<vtkImageData> TTextureValue;
 
-  VTKOCC_EXPORT
+  VISU_OBJECT_EXPORT
   TTextureValue
   GetTexture(const std::string& theMainTexture, 
             const std::string& theAlphaTexture);
@@ -58,7 +59,7 @@ namespace VISU
 
 
 //============================================================================
-class VISU_GaussDeviceActorBase: public vtkLODActor
+class VISU_OBJECT_EXPORT VISU_GaussDeviceActorBase: public vtkLODActor
 {
  public:
   vtkTypeMacro(VISU_GaussDeviceActorBase, vtkLODActor);
@@ -92,6 +93,13 @@ class VISU_GaussDeviceActorBase: public vtkLODActor
   virtual
   unsigned long int
   GetMemorySize();
+
+  //----------------------------------------------------------------------------
+  void SetExtractor(SALOME_ExtractPolyDataGeometry* theExtractor) 
+    { myPolyDataExtractor = theExtractor; }
+
+  SALOME_ExtractPolyDataGeometry* GetExtractor() const
+    { return myPolyDataExtractor; }
  
  protected:
   //----------------------------------------------------------------------------
@@ -101,6 +109,8 @@ class VISU_GaussDeviceActorBase: public vtkLODActor
   typedef vtkSmartPointer<vtkPassThroughFilter> PPassThroughFilter;
   std::vector<PPassThroughFilter> myPassFilter;
 
+  SALOME_ExtractPolyDataGeometry* myPolyDataExtractor;
+
   VISU_GaussDeviceActorBase();
   ~VISU_GaussDeviceActorBase();
 
index e1c592481080ec5d5b362df1dcd3b707bde2de84..bb9dd393956aadc23b1b0154fbd5d96e05d359ed 100644 (file)
@@ -1,41 +1,46 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : 
 //  Author : 
 //  Module : VISU
 //  $Header$
-
+//
 #include "VISU_GaussPtsSettings.h"
+#include <SUIT_ResourceMgr.h>
+#include <SUIT_Session.h>
+
+#include "SUIT_ResourceMgr.h"
+#include "SUIT_Session.h"
 
 #include <vtkObjectFactory.h>
 #include <vtkImageData.h>
 
+#include <QColor>
+
 //----------------------------------------------------------------
 vtkStandardNewMacro( VISU_GaussPtsSettings );
 vtkStandardNewMacro( VISU_InsideCursorSettings );
 vtkStandardNewMacro( VISU_OutsideCursorSettings );
-vtkStandardNewMacro( VISU_PickingSettings );
 
 //----------------------------------------------------------------
 VISU_GaussPtsSettings::VISU_GaussPtsSettings()
@@ -82,25 +87,3 @@ VISU_OutsideCursorSettings::VISU_OutsideCursorSettings() :
 VISU_OutsideCursorSettings::~VISU_OutsideCursorSettings()
 {
 }
-
-//----------------------------------------------------------------
-VISU_PickingSettings::VISU_PickingSettings()
-{
-  this->Initial                = true;
-
-  this->PyramidHeight          = -1;
-  this->CursorSize             = -1;
-  this->PointTolerance         = -1;
-  this->Color[0]               = -1;
-  this->Color[1]               = -1;
-  this->Color[2]               = -1;
-  this->InfoWindowTransparency = -1;
-  this->InfoWindowPosition     = -1;
-  this->ZoomFactor             = -1;
-  this->StepNumber             = -1;
-  this->DisplayParentMesh      = false;
-}
-
-VISU_PickingSettings::~VISU_PickingSettings()
-{
-}
index 473ddd103d5420e616005110bd3dffb77939a52f..627d8980eb7c61c417049dbcb5ad89ac0cfd588d 100644 (file)
@@ -1,34 +1,35 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : 
 //  Author : 
 //  Module : VISU
 //  $Header$
-
+//
 #ifndef VISU_GaussPtsSettings_HeaderFile
 #define VISU_GaussPtsSettings_HeaderFile
 
+#include "VISU_OBJECT.h"
+
 #include <vtkObject.h>
 #include <vtkCommand.h>
 
@@ -44,12 +45,11 @@ namespace VISU
   const vtkIdType UpdateFromSettingsEvent        = vtkCommand::UserEvent + 100; 
   const vtkIdType UpdateInsideSettingsEvent      = vtkCommand::UserEvent + 101; 
   const vtkIdType UpdateOutsideSettingsEvent     = vtkCommand::UserEvent + 102; 
-  const vtkIdType UpdatePickingSettingsEvent     = vtkCommand::UserEvent + 103; 
 }
 
 
 //! Base class of Gauss Points settings.
-class VTKOCC_EXPORT VISU_GaussPtsSettings : public vtkObject
+class VISU_OBJECT_EXPORT VISU_GaussPtsSettings : public vtkObject
 {
  public:
   vtkTypeMacro( VISU_GaussPtsSettings, vtkObject );
@@ -104,7 +104,7 @@ class VTKOCC_EXPORT VISU_GaussPtsSettings : public vtkObject
  * Clamp, Texture, Alpha threshold, Const size and Color.
  * Used by Gauss Points Actor.
  */
-class VTKOCC_EXPORT VISU_InsideCursorSettings : public VISU_GaussPtsSettings
+class VISU_OBJECT_EXPORT VISU_InsideCursorSettings : public VISU_GaussPtsSettings
 {
  public:
   vtkTypeMacro( VISU_InsideCursorSettings, vtkObject );
@@ -135,7 +135,7 @@ class VTKOCC_EXPORT VISU_InsideCursorSettings : public VISU_GaussPtsSettings
  * Clamp, Texture, Alpha threshold, Const size and Color.
  * Used by Gauss Points Actor.
  */
-class VTKOCC_EXPORT VISU_OutsideCursorSettings : public VISU_GaussPtsSettings
+class VISU_OBJECT_EXPORT VISU_OutsideCursorSettings : public VISU_GaussPtsSettings
 {
  public:
   vtkTypeMacro( VISU_OutsideCursorSettings, vtkObject );
@@ -162,73 +162,4 @@ class VTKOCC_EXPORT VISU_OutsideCursorSettings : public VISU_GaussPtsSettings
   vtkFloatingPointType Color[3];
 };
 
-
-//! Class of Picking settings.
-/*!
- * Contains information about the following parameters:
- * Cursor Pyramid height, Info Window transparency,
- * Info Window position, Zoom factor on first selected point,
- * Camera movement steps number and Display parent mesh.
- * Used by Gauss Points Actor.
- */
-class VTKOCC_EXPORT VISU_PickingSettings : public vtkObject
-{
- public:
-  enum { BelowPoint = 0, TopLeftCorner };
-
- public:
-  vtkTypeMacro( VISU_PickingSettings, vtkObject );
-
-  VISU_PickingSettings();
-  virtual ~VISU_PickingSettings();
-
-  static
-  VISU_PickingSettings*
-  New();
-
-  vtkSetMacro( Initial, bool );
-  vtkGetMacro( Initial, bool );
-
-  vtkSetMacro( PyramidHeight, vtkFloatingPointType );
-  vtkGetMacro( PyramidHeight, vtkFloatingPointType );
-
-  vtkSetMacro( CursorSize, vtkFloatingPointType );
-  vtkGetMacro( CursorSize, vtkFloatingPointType );
-
-  vtkSetVector3Macro( Color, vtkFloatingPointType );
-  vtkGetVector3Macro( Color, vtkFloatingPointType );
-
-  vtkSetMacro( PointTolerance, vtkFloatingPointType );
-  vtkGetMacro( PointTolerance, vtkFloatingPointType );
-
-  vtkSetMacro( InfoWindowTransparency, vtkFloatingPointType );
-  vtkGetMacro( InfoWindowTransparency, vtkFloatingPointType );
-
-  vtkSetMacro( InfoWindowPosition, int );
-  vtkGetMacro( InfoWindowPosition, int );
-
-  vtkSetMacro( ZoomFactor, vtkFloatingPointType );
-  vtkGetMacro( ZoomFactor, vtkFloatingPointType );
-
-  vtkSetMacro( StepNumber, int );
-  vtkGetMacro( StepNumber, int );
-
-  vtkSetMacro( DisplayParentMesh, bool );
-  vtkGetMacro( DisplayParentMesh, bool );
-
-private:
-  bool                Initial;
-
-  vtkFloatingPointType PyramidHeight;
-  vtkFloatingPointType CursorSize;
-  vtkFloatingPointType PointTolerance;
-  vtkFloatingPointType Color[3];
-  vtkFloatingPointType InfoWindowTransparency;
-  int                 InfoWindowPosition;
-  vtkFloatingPointType ZoomFactor;
-  int                 StepNumber;
-  bool                DisplayParentMesh;
-};
-
-
 #endif
diff --git a/src/OBJECT/VISU_IsoSurfActor.cxx b/src/OBJECT/VISU_IsoSurfActor.cxx
new file mode 100644 (file)
index 0000000..6a73d5a
--- /dev/null
@@ -0,0 +1,163 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+//  File   : VISU_IsoSurfActor.cxx
+//  Author : Vitaly Smetannikov
+//  Module : VISU
+//
+#include "VISU_IsoSurfActor.h"
+#include "VISU_PipeLine.hxx"
+#include "VISU_LabelPointsFilter.hxx"
+
+
+#include <vtkObjectFactory.h>
+#include <vtkUnstructuredGrid.h>
+#include <vtkPolyData.h>
+#include <vtkActor2D.h>
+//#include <vtkMaskPoints.h>
+#include <vtkLabeledDataMapper.h>
+#include <vtkProperty2D.h>
+#include <vtkRenderer.h>
+#include <vtkCellArray.h>
+#include <vtkPointData.h>
+
+
+
+//----------------------------------------------------------------------------
+vtkStandardNewMacro(VISU_IsoSurfActor);
+
+
+//----------------------------------------------------------------------------
+VISU_IsoSurfActor::VISU_IsoSurfActor():
+  VISU_ScalarMapAct(),
+  myIsLinesLabeled(true)
+{
+  myLabelsDataSet = vtkPolyData::New();
+
+//   myMaskPoints = vtkMaskPoints::New();
+//   myMaskPoints->SetInput(myLabelsDataSet);
+//   myMaskPoints->SetOnRatio(100);
+
+  myMaskPoints = VISU_LabelPointsFilter::New();
+  myMaskPoints->SetInput(myLabelsDataSet);
+
+  myLabeledDataMapper = vtkLabeledDataMapper::New();
+  myLabeledDataMapper->SetInput(myMaskPoints->GetOutput());
+  //myLabeledDataMapper->SetLabelFormat("%e");
+  myLabeledDataMapper->SetLabelModeToLabelScalars();
+    
+  myLabels = vtkActor2D::New();
+  myLabels->SetMapper(myLabeledDataMapper);
+  myLabels->GetProperty()->SetColor(1,1,1);
+  myLabels->SetVisibility(myIsLinesLabeled);
+}
+
+
+//----------------------------------------------------------------------------
+VISU_IsoSurfActor::~VISU_IsoSurfActor()
+{
+  myLabelsDataSet->Delete();
+  myMaskPoints->Delete();
+  myLabeledDataMapper->Delete();
+  myLabels->Delete();
+}
+
+//----------------------------------------------------------------------------
+void VISU_IsoSurfActor::SetLinesLabeled(bool theIsLinesLabeled, int theNbLbl)
+{
+  myIsLinesLabeled = theIsLinesLabeled;
+  myMaskPoints->SetPointsNb(theNbLbl);
+  Modified();
+}
+//----------------------------------------------------------------------------
+int VISU_IsoSurfActor::GetNbLabels() const 
+{ 
+  return myMaskPoints->GetPointsNb(); 
+}
+
+
+//----------------------------------------------------------------------------
+void VISU_IsoSurfActor::UpdateLabels()
+{
+  if (myIsLinesLabeled) {
+    vtkDataSet* aDataSet = GetPipeLine()->GetOutput();
+    if (aDataSet != NULL) {
+      unsigned long aTime = myLabelsDataSet->GetMTime();
+      unsigned long anObjTime = GetMTime();
+      if (aTime < anObjTime) {
+       myLabelsDataSet->ShallowCopy(aDataSet);
+       myLabelsDataSet->Modified();
+      }
+    }
+  }
+  myLabels->SetVisibility(myIsLinesLabeled);
+}
+
+
+//----------------------------------------------------------------------------
+void VISU_IsoSurfActor::AddToRender(vtkRenderer* theRenderer)
+{
+  VISU_ScalarMapAct::AddToRender(theRenderer);
+  theRenderer->AddActor2D(myLabels);
+}
+
+//----------------------------------------------------------------------------
+void VISU_IsoSurfActor::RemoveFromRender(vtkRenderer* theRenderer)
+{
+  VISU_ScalarMapAct::RemoveFromRender(theRenderer);
+  theRenderer->RemoveActor(myLabels);
+}
+
+//From vtkFollower
+int VISU_IsoSurfActor::RenderOpaqueGeometry(vtkViewport *vp)
+{
+  UpdateLabels();
+  return VISU_ScalarMapAct::RenderOpaqueGeometry(vp);
+}
+
+
+int VISU_IsoSurfActor::RenderTranslucentGeometry(vtkViewport *vp)
+{
+  UpdateLabels();
+  return VISU_ScalarMapAct::RenderTranslucentGeometry(vp);
+}
+
+void VISU_IsoSurfActor::SetVisibility(int theMode){
+  VISU_ScalarMapAct::SetVisibility(theMode);
+  if(GetVisibility())
+    myLabels->VisibilityOn();
+  else
+    myLabels->VisibilityOff();
+  Modified();
+}
+
+
+///!!!! For test purposes only
+// void VISU_IsoSurfActor::SetMapperInput(vtkDataSet* theDataSet)
+// {
+//   VISU_ScalarMapAct::SetMapperInput(theDataSet);
+
+//   vtkFeatureEdges* aFilter = vtkFeatureEdges::New();
+//   aFilter->SetInput(VISU_ScalarMapAct::GetInput());
+//   SetInput(aFilter->GetOutput());
+// }
diff --git a/src/OBJECT/VISU_IsoSurfActor.h b/src/OBJECT/VISU_IsoSurfActor.h
new file mode 100644 (file)
index 0000000..4513d42
--- /dev/null
@@ -0,0 +1,87 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+//  File   : VISU_IsoSurfActor.h
+//  Author : Vitaly Smetannikov
+//  Module : VISU
+//
+#ifndef VISU_VectorsAct_HeaderFile
+#define VISU_VectorsAct_HeaderFile
+
+#include "VISU_OBJECT.h"
+#include "VISU_ScalarMapAct.h"
+
+class vtkActor2D;
+//class vtkMaskPoints;
+class vtkLabeledDataMapper;
+class vtkPolyData;
+class VISU_LabelPointsFilter;
+
+
+class VISU_OBJECT_EXPORT VISU_IsoSurfActor : public VISU_ScalarMapAct 
+{
+ public:
+  vtkTypeMacro(VISU_IsoSurfActor, VISU_ScalarMapAct);
+  
+  static VISU_IsoSurfActor* New();
+  
+  
+  //----------------------------------------------------------------------------
+  virtual void AddToRender( vtkRenderer* ); 
+  
+  virtual void RemoveFromRender( vtkRenderer* );
+
+  virtual int RenderOpaqueGeometry(vtkViewport *viewport);
+  virtual int RenderTranslucentGeometry(vtkViewport *viewport);
+  
+  //virtual void SetPipeLine(VISU_PipeLine* thePipeLine);
+
+  void SetLinesLabeled(bool theIsLinesLabeled, int theNbLbl);
+  bool GetLinesLabeled() const { return myIsLinesLabeled;}
+   
+  int GetNbLabels() const;
+
+
+  //----------------------------------------------------------------------------
+  //! Visibility management
+  virtual void SetVisibility( int );
+
+
+ protected:
+
+  VISU_IsoSurfActor();
+  ~VISU_IsoSurfActor();
+
+  void UpdateLabels();
+
+  vtkActor2D *myLabels;
+  vtkLabeledDataMapper* myLabeledDataMapper;
+  //vtkMaskPoints* myMaskPoints;
+  VISU_LabelPointsFilter* myMaskPoints;
+  vtkPolyData* myLabelsDataSet;
+
+  bool myIsLinesLabeled;
+  //int myNbLabels;
+};
+
+
+#endif
index cf2e7cfc0a3a7c06339bd6af7f8aaa631c19d20c..2c3050dd51f23160010c3669db1371e10dace150 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_MeshAct.cxx
 //  Author : 
 //  Module : VISU
 //  $Header$
-
+//
 #include "VISU_MeshAct.h"
 
 #include <vtkObjectFactory.h>
@@ -212,6 +211,64 @@ VISU_MeshAct
   myEdgeActor->UnShrink();
 }
 
+//----------------------------------------------------------------------------
+void
+VISU_MeshAct
+::SetFeatureEdgesAllowed(bool theIsFeatureEdgesAllowed)
+{
+  Superclass::SetFeatureEdgesAllowed(theIsFeatureEdgesAllowed);
+
+  mySurfaceActor->SetFeatureEdgesAllowed(theIsFeatureEdgesAllowed);
+}
+
+void
+VISU_MeshAct
+::SetFeatureEdgesAngle(vtkFloatingPointType theValue)
+{
+  Superclass::SetFeatureEdgesAngle(theValue);
+
+  mySurfaceActor->SetFeatureEdgesAngle(theValue);
+}
+
+void
+VISU_MeshAct
+::SetFeatureEdgesFlags(bool theIsFeatureEdges,
+                      bool theIsBoundaryEdges,
+                      bool theIsManifoldEdges,
+                      bool theIsNonManifoldEdges)
+{
+  Superclass::SetFeatureEdgesFlags(theIsFeatureEdges,
+                                  theIsBoundaryEdges,
+                                  theIsManifoldEdges,
+                                  theIsNonManifoldEdges);
+
+  mySurfaceActor->SetFeatureEdgesFlags(theIsFeatureEdges,
+                                      theIsBoundaryEdges,
+                                      theIsManifoldEdges,
+                                      theIsNonManifoldEdges);
+}
+
+void
+VISU_MeshAct
+::SetFeatureEdgesColoring(bool theIsColoring)
+{
+  Superclass::SetFeatureEdgesColoring(theIsColoring);
+
+  mySurfaceActor->SetFeatureEdgesColoring(theIsColoring);
+}
+
+//----------------------------------------------------------------------------
+void
+VISU_MeshAct
+::SetFeatureEdgesEnabled(bool theIsFeatureEdgesEnabled)
+{
+  if(theIsFeatureEdgesEnabled && myRepresentation == VTK_POINTS)
+    return;
+
+  Superclass::SetFeatureEdgesEnabled(theIsFeatureEdgesEnabled);
+
+  mySurfaceActor->SetFeatureEdgesEnabled(theIsFeatureEdgesEnabled);
+}
 
 //----------------------------------------------------------------------------
 void 
@@ -288,6 +345,10 @@ VISU_MeshAct
     myEdgeActor->SetAllocatedRenderTime(this->AllocatedRenderTime/2.0,ren);
     myEdgeActor->RenderOpaqueGeometry(ren);
     break;
+  case FeatureEdges :
+    mySurfaceActor->SetAllocatedRenderTime(this->AllocatedRenderTime,ren);
+    mySurfaceActor->RenderOpaqueGeometry(ren);
+    break;
   }
   return 1;
 }
@@ -322,6 +383,10 @@ VISU_MeshAct
     myEdgeActor->SetAllocatedRenderTime(this->AllocatedRenderTime/2.0,ren);
     myEdgeActor->RenderTranslucentGeometry(ren);
     break;
+  case FeatureEdges :
+    mySurfaceActor->SetAllocatedRenderTime(this->AllocatedRenderTime,ren);
+    mySurfaceActor->RenderTranslucentGeometry(ren);
+    break;
   }
   return 1;
 }
index 5a5778d3832d7897ae4aeeed84e873ac551cb5a6..3c72e69e85a8fc8d1678f121523978852953279e 100644 (file)
@@ -1,39 +1,39 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_MeshAct.h
 //  Author : Laurent CORNABE with the help of Nicolas REJNERI
 //  Module : VISU
 //  $Header$
-
+//
 #ifndef VISU_MeshAct_HeaderFile
 #define VISU_MeshAct_HeaderFile
 
+#include "VISU_OBJECT.h"
 #include "VISU_DataSetActor.h"
 #include "SVTK_DeviceActor.h"
 
 
-class VTKOCC_EXPORT VISU_MeshAct : public VISU_DataSetActor 
+class VISU_OBJECT_EXPORT VISU_MeshAct : public VISU_DataSetActor 
 {
  public:
   vtkTypeMacro(VISU_MeshAct,VISU_DataSetActor);
@@ -99,6 +99,29 @@ class VTKOCC_EXPORT VISU_MeshAct : public VISU_DataSetActor
   void
   UnShrink(); 
 
+  virtual
+  void
+  SetFeatureEdgesAllowed(bool theIsFeatureEdgesAllowed);
+
+  virtual
+  void
+  SetFeatureEdgesEnabled(bool theIsFeatureEdgesEnabled);
+
+  virtual
+  void
+  SetFeatureEdgesAngle(vtkFloatingPointType theAngle = 30.0); 
+
+  virtual
+  void
+  SetFeatureEdgesFlags(bool theIsFeatureEdges,
+                      bool theIsBoundaryEdges,
+                      bool theIsManifoldEdges,
+                      bool theIsNonManifoldEdges);
+
+  virtual
+  void
+  SetFeatureEdgesColoring(bool theIsColoring);
+
   //! Gets memory size used by the instance (bytes).
   virtual
   unsigned long int
diff --git a/src/OBJECT/VISU_OBJECT.h b/src/OBJECT/VISU_OBJECT.h
new file mode 100755 (executable)
index 0000000..95ee35a
--- /dev/null
@@ -0,0 +1,34 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+#ifdef WIN32
+# ifdef VISU_OBJECT_EXPORTS
+#  define VISU_OBJECT_EXPORT __declspec(dllexport)
+# else
+#  define VISU_OBJECT_EXPORT __declspec(dllimport)
+# endif
+#else
+# define VISU_OBJECT_EXPORT
+#endif
+
+#if defined WIN32
+#pragma warning ( disable: 4251 )
+#endif
diff --git a/src/OBJECT/VISU_PickingSettings.cxx b/src/OBJECT/VISU_PickingSettings.cxx
new file mode 100644 (file)
index 0000000..9cbdeae
--- /dev/null
@@ -0,0 +1,89 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+//  File   : VISU_PickingSettings.cxx
+//  Author : Oleg UVAROV
+//  Module : VISU
+//
+#include "VISU_PickingSettings.h"
+
+#include "SUIT_ResourceMgr.h"
+#include "SUIT_Session.h"
+
+#include <vtkObjectFactory.h>
+
+vtkStandardNewMacro( VISU_PickingSettings );
+
+VISU_PickingSettings* VISU_PickingSettings::Get()
+{
+  static VISU_PickingSettings* aPickingSettings = VISU_PickingSettings::New();
+
+  if( aPickingSettings->GetIsInitial() )
+  {
+    SUIT_ResourceMgr* aResourceMgr = SUIT_Session::session()->resourceMgr();
+
+    aPickingSettings->SetCursorSize( aResourceMgr->doubleValue( "VISU", "picking_cursor_size", 0.5 ) );
+    aPickingSettings->SetPyramidHeight( aResourceMgr->doubleValue( "VISU", "picking_pyramid_height", 10.0 ) );
+    aPickingSettings->SetPointTolerance( aResourceMgr->doubleValue( "VISU", "picking_point_tolerance", 0.1 ) );
+    aPickingSettings->SetInfoWindowEnabled( aResourceMgr->booleanValue( "VISU", "picking_info_window", false ) );
+    aPickingSettings->SetInfoWindowTransparency( aResourceMgr->integerValue( "VISU", "picking_transparency", 50 ) / 100.0 );
+    aPickingSettings->SetInfoWindowPosition( aResourceMgr->integerValue( "VISU", "picking_position", VISU_PickingSettings::TopLeftCorner ) );
+    aPickingSettings->SetCameraMovementEnabled( aResourceMgr->booleanValue( "VISU", "picking_camera_movement", true ) );
+    aPickingSettings->SetZoomFactor( aResourceMgr->doubleValue( "VISU", "picking_zoom_factor", 1.5 ) );
+    aPickingSettings->SetStepNumber( aResourceMgr->integerValue( "VISU", "picking_step_number", 10 ) );
+    aPickingSettings->SetDisplayParentMesh( aResourceMgr->booleanValue( "VISU", "picking_display_parent_mesh", true ) );
+
+    QColor aSelectionColor = aResourceMgr->colorValue( "VISU", "picking_selection_color", Qt::yellow );
+    vtkFloatingPointType aColor[3];
+    aColor[0] = aSelectionColor.red() / 255.0;
+    aColor[1] = aSelectionColor.green() / 255.0;
+    aColor[2] = aSelectionColor.blue() / 255.0;
+    aPickingSettings->SetColor( aColor );
+
+    aPickingSettings->SetIsInitial( false );
+  }
+
+  return aPickingSettings;
+}
+
+VISU_PickingSettings::VISU_PickingSettings()
+{
+  this->IsInitial              = true;
+
+  this->PyramidHeight          = -1;
+  this->CursorSize             = -1;
+  this->PointTolerance         = -1;
+  this->Color[0]               = -1;
+  this->Color[1]               = -1;
+  this->Color[2]               = -1;
+  this->InfoWindowEnabled      = false;
+  this->InfoWindowTransparency = -1;
+  this->InfoWindowPosition     = -1;
+  this->CameraMovementEnabled  = false;
+  this->ZoomFactor             = -1;
+  this->StepNumber             = -1;
+  this->DisplayParentMesh      = false;
+}
+
+VISU_PickingSettings::~VISU_PickingSettings()
+{
+}
diff --git a/src/OBJECT/VISU_PickingSettings.h b/src/OBJECT/VISU_PickingSettings.h
new file mode 100644 (file)
index 0000000..e5b894d
--- /dev/null
@@ -0,0 +1,128 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+//  File   : VISU_PickingSettings.cxx
+//  Author : Oleg UVAROV
+//  Module : VISU
+//
+#ifndef VISU_PickingSettings_HeaderFile
+#define VISU_PickingSettings_HeaderFile
+
+#include "VISU_OBJECT.h"
+#include <vtkObject.h>
+#include <vtkCommand.h>
+
+#include "VTKViewer.h"
+
+#include "VISU_Actor.h"
+
+//============================================================================
+namespace VISU
+{
+  const vtkIdType UpdatePickingSettingsEvent     = vtkCommand::UserEvent + 103; 
+}
+
+//! Class of Picking settings.
+/*!
+ * Contains information about the following parameters:
+ * Cursor Pyramid height, Info Window transparency,
+ * Info Window position, Zoom factor on first selected point,
+ * Camera movement steps number and Display parent mesh.
+ */
+class VISU_OBJECT_EXPORT VISU_PickingSettings : public vtkObject
+{
+ public:
+  enum { BelowPoint = 0, TopLeftCorner };
+
+ public:
+  vtkTypeMacro( VISU_PickingSettings, vtkObject );
+
+  static
+  VISU_PickingSettings*
+  Get();
+
+  static
+  VISU_PickingSettings*
+  New();
+
+  vtkSetMacro( IsInitial, bool );
+  vtkGetMacro( IsInitial, bool );
+
+  vtkSetMacro( PyramidHeight, vtkFloatingPointType );
+  vtkGetMacro( PyramidHeight, vtkFloatingPointType );
+
+  vtkSetMacro( CursorSize, vtkFloatingPointType );
+  vtkGetMacro( CursorSize, vtkFloatingPointType );
+
+  vtkSetVector3Macro( Color, vtkFloatingPointType );
+  vtkGetVector3Macro( Color, vtkFloatingPointType );
+
+  vtkSetMacro( PointTolerance, vtkFloatingPointType );
+  vtkGetMacro( PointTolerance, vtkFloatingPointType );
+
+  vtkSetMacro( InfoWindowEnabled, bool );
+  vtkGetMacro( InfoWindowEnabled, bool );
+
+  vtkSetMacro( InfoWindowTransparency, vtkFloatingPointType );
+  vtkGetMacro( InfoWindowTransparency, vtkFloatingPointType );
+
+  vtkSetMacro( InfoWindowPosition, int );
+  vtkGetMacro( InfoWindowPosition, int );
+
+  vtkSetMacro( CameraMovementEnabled, bool );
+  vtkGetMacro( CameraMovementEnabled, bool );
+
+  vtkSetMacro( ZoomFactor, vtkFloatingPointType );
+  vtkGetMacro( ZoomFactor, vtkFloatingPointType );
+
+  vtkSetMacro( StepNumber, int );
+  vtkGetMacro( StepNumber, int );
+
+  vtkSetMacro( DisplayParentMesh, bool );
+  vtkGetMacro( DisplayParentMesh, bool );
+
+private:
+  VISU_PickingSettings();
+  virtual ~VISU_PickingSettings();
+
+private:
+  bool                 IsInitial;
+
+  vtkFloatingPointType PyramidHeight;
+  vtkFloatingPointType CursorSize;
+
+  vtkFloatingPointType PointTolerance;
+
+  vtkFloatingPointType Color[3];
+
+  bool                 InfoWindowEnabled;
+  vtkFloatingPointType InfoWindowTransparency;
+  int                  InfoWindowPosition;
+
+  bool                 CameraMovementEnabled;
+  vtkFloatingPointType ZoomFactor;
+  int                  StepNumber;
+
+  bool                 DisplayParentMesh;
+};
+
+#endif
diff --git a/src/OBJECT/VISU_PointMap3dActor.cxx b/src/OBJECT/VISU_PointMap3dActor.cxx
new file mode 100644 (file)
index 0000000..d92b698
--- /dev/null
@@ -0,0 +1,148 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+//  File   : 
+//  Author : 
+//  Module : VISU
+//  $Header$
+//
+#include "VISU_PointMap3dActor.h"
+#include "VISU_PipeLine.hxx"
+#include "VISU_ScalarBarActor.hxx"
+#include "VISU_DeformedGridPL.hxx"
+
+#include <SALOME_InteractiveObject.hxx>
+
+#include "utilities.h"
+#include <vtkRenderer.h>
+#include <vtkObjectFactory.h>
+
+#ifdef _DEBUG_
+static int MYDEBUG = 0;
+#else
+static int MYDEBUG = 0;
+#endif
+
+vtkStandardNewMacro(VISU_PointMap3dActor);
+
+//==================================================================
+// function: Constructor
+// purpose :
+//==================================================================
+
+VISU_PointMap3dActor
+::VISU_PointMap3dActor()
+{
+  if(MYDEBUG) MESSAGE("VISU_PointMap3dActor::VISU_PointMap3dActor - this = "<<this);
+  myScalarBar = VISU_ScalarBarActor::New();
+}
+
+//==================================================================
+// function: Destructor
+// purpose :
+//==================================================================
+
+VISU_PointMap3dActor
+::~VISU_PointMap3dActor()
+{
+  if(MYDEBUG) MESSAGE("VISU_PointMap3dActor::~VISU_PointMap3dActor - this = "<<this);
+  myScalarBar->Delete();
+}
+
+//==================================================================
+// function: AddToRender
+// purpose :
+//==================================================================
+void
+VISU_PointMap3dActor
+::AddToRender(vtkRenderer* theRenderer)
+{
+  Superclass::AddToRender(theRenderer);
+  theRenderer->AddActor2D(myScalarBar);
+}
+
+void
+VISU_PointMap3dActor
+::RemoveFromRender(vtkRenderer* theRenderer)
+{
+  if(myScalarBar)
+    theRenderer->RemoveActor(myScalarBar);
+
+  Superclass::RemoveFromRender(theRenderer);
+}
+
+//==================================================================
+// function: Set & Get PipeLine
+// purpose :
+//==================================================================
+void
+VISU_PointMap3dActor
+::SetPipeLine(VISU_DeformedGridPL* thePipeLine)
+{
+  myPipeLine = thePipeLine;
+  SetMapper(thePipeLine->GetMapper());
+  myScalarBar->SetLookupTable(thePipeLine->GetBarTable());
+}
+
+VISU_DeformedGridPL*
+VISU_PointMap3dActor
+::GetPipeLine()
+{
+  return myPipeLine.GetPointer();
+}
+
+//==================================================================
+// function: Visibility
+// purpose :
+//==================================================================
+
+void
+VISU_PointMap3dActor
+::SetVisibility(int theMode)
+{
+  Superclass::SetVisibility( theMode );
+
+  //  myPointsActor->SetVisibility( theMode );
+
+  if(myScalarBar)
+    myScalarBar->SetVisibility(theMode);
+}
+
+VISU_ScalarBarActor*
+VISU_PointMap3dActor
+::GetScalarBar()
+{
+  return myScalarBar;
+}
+
+//==================================================================
+// function: SetIO
+// purpose :
+//==================================================================
+
+void 
+VISU_PointMap3dActor
+::setIO(const Handle(SALOME_InteractiveObject)& theIO)
+{
+  Superclass::setIO(theIO); 
+  myName = theIO->getName(); 
+}
diff --git a/src/OBJECT/VISU_PointMap3dActor.h b/src/OBJECT/VISU_PointMap3dActor.h
new file mode 100644 (file)
index 0000000..cf0ab13
--- /dev/null
@@ -0,0 +1,95 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+//  File   : VISU_PointMap3dActor.h
+//  Author : Dmitry MATVEICHEV with help of Alexey PETROV
+//  Module : VISU
+//  $Header$
+//
+#ifndef VISU_PointMap3dActor_HeaderFile
+#define VISU_PointMap3dActor_HeaderFile
+
+#include "VISU_OBJECT.h"
+#include "SALOME_Actor.h"
+#include "VISU_DataSetActor.h"
+#include "VISU_BoostSignals.h"
+
+class VISU_ScalarBarActor;
+
+#ifdef _WIN32
+#define VTKOCC_EXPORT __declspec (dllexport)
+#else
+#define VTKOCC_EXPORT VTK_EXPORT
+#endif
+
+class VISU_DeformedGridPL;
+
+class VISU_OBJECT_EXPORT VISU_PointMap3dActor : public VISU_ActorBase
+{
+ public:
+  vtkTypeMacro(VISU_PointMap3dActor,SALOME_Actor);
+
+  static
+  VISU_PointMap3dActor* 
+  New();
+
+  ~VISU_PointMap3dActor();
+  
+//----------------------------------------------------------------------------
+  virtual
+    void
+    AddToRender( vtkRenderer* ); 
+  
+  virtual
+    void
+    RemoveFromRender( vtkRenderer* );
+  
+  virtual
+    void
+    SetVisibility(int theMode);
+  
+  virtual
+    VISU_ScalarBarActor* 
+    GetScalarBar();
+
+//----------------------------------------------------------------------------
+  virtual
+  void
+  setIO(const Handle(SALOME_InteractiveObject)& theIO);
+
+//----------------------------------------------------------------------------
+  virtual
+  VISU_DeformedGridPL* 
+  GetPipeLine();
+
+  virtual 
+  void
+  SetPipeLine(VISU_DeformedGridPL* thePipeLine);
+  
+ protected:
+  VISU_PointMap3dActor();
+  vtkSmartPointer<VISU_DeformedGridPL> myPipeLine;
+
+  VISU_ScalarBarActor* myScalarBar;
+};
+
+#endif
index 908165049a5b59754e0f9898a5ec74905c6b22aa..a1ce8e7142b1e514289edf23cc81d361b8bf23dd 100644 (file)
@@ -1,31 +1,30 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_MeshAct.hxx
 //  Author : Laurent CORNABE with the help of Nicolas REJNERI
 //  Module : VISU
 //  $Header$
-
+//
 #include "VISU_ScalarMapAct.h"
 #include "VISU_LookupTable.hxx"
 #include "VISU_ScalarBarActor.hxx"
@@ -36,6 +35,9 @@
 #include "VISU_DeformedShapePL.hxx"
 #include "VISU_PipeLineUtils.hxx"
 
+#include <SALOME_ExtractGeometry.h>
+#include <SALOME_ExtractPolyDataGeometry.h>
+
 #include <vtkObjectFactory.h>
 #include <vtkRenderer.h>
 #include <vtkProperty.h>
@@ -258,7 +260,7 @@ void
 VISU_ScalarMapAct
 ::ShallowCopyPL(VISU_PipeLine* thePipeLine)
 {
-  VISU_Actor::ShallowCopyPL( thePipeLine );
+  VISU_DataSetActor::ShallowCopyPL( thePipeLine );
 
   myEdgeActor->GetMapper()->ScalarVisibilityOff();
 
@@ -274,10 +276,19 @@ VISU_ScalarMapAct
 {
   Superclass::SetMapperInput( theDataSet );
 
-  myPointsActor->SetInput( theDataSet );
+//    myPointsActor->SetInput( theDataSet );
+//    mySurfaceActor->SetInput( theDataSet );
+//    myEdgeActor->SetInput( theDataSet );
 
-  mySurfaceActor->SetInput( theDataSet );
-  myEdgeActor->SetInput( theDataSet );
+  if (theDataSet->IsA("vtkPolyData")) {
+    myPointsActor->SetInput( myPolyDataExtractor->GetOutput() );
+    mySurfaceActor->SetInput( myPolyDataExtractor->GetOutput() );
+    myEdgeActor->SetInput( myPolyDataExtractor->GetOutput() );
+  } else {
+    myPointsActor->SetInput( myExtractor->GetOutput() );
+    mySurfaceActor->SetInput( myExtractor->GetOutput() );
+    myEdgeActor->SetInput( myExtractor->GetOutput() );
+  }
 }
 
 //----------------------------------------------------------------------------
@@ -334,6 +345,65 @@ VISU_ScalarMapAct
   mySurfaceActor->UnShrink();
 }
 
+//----------------------------------------------------------------------------
+void
+VISU_ScalarMapAct
+::SetFeatureEdgesAllowed(bool theIsFeatureEdgesAllowed)
+{
+  Superclass::SetFeatureEdgesAllowed(theIsFeatureEdgesAllowed);
+
+  mySurfaceActor->SetFeatureEdgesAllowed(theIsFeatureEdgesAllowed);
+}
+
+void
+VISU_ScalarMapAct
+::SetFeatureEdgesAngle(vtkFloatingPointType theValue)
+{
+  Superclass::SetFeatureEdgesAngle(theValue);
+
+  mySurfaceActor->SetFeatureEdgesAngle(theValue);
+}
+
+void
+VISU_ScalarMapAct
+::SetFeatureEdgesFlags(bool theIsFeatureEdges,
+                      bool theIsBoundaryEdges,
+                      bool theIsManifoldEdges,
+                      bool theIsNonManifoldEdges)
+{
+  Superclass::SetFeatureEdgesFlags(theIsFeatureEdges,
+                                  theIsBoundaryEdges,
+                                  theIsManifoldEdges,
+                                  theIsNonManifoldEdges);
+
+  mySurfaceActor->SetFeatureEdgesFlags(theIsFeatureEdges,
+                                      theIsBoundaryEdges,
+                                      theIsManifoldEdges,
+                                      theIsNonManifoldEdges);
+}
+
+void
+VISU_ScalarMapAct
+::SetFeatureEdgesColoring(bool theIsColoring)
+{
+  Superclass::SetFeatureEdgesColoring(theIsColoring);
+
+  mySurfaceActor->SetFeatureEdgesColoring(theIsColoring);
+}
+
+//----------------------------------------------------------------------------
+void
+VISU_ScalarMapAct
+::SetFeatureEdgesEnabled(bool theIsFeatureEdgesEnabled)
+{
+  if(theIsFeatureEdgesEnabled && myRepresentation == VTK_POINTS)
+    return;
+
+  Superclass::SetFeatureEdgesEnabled(theIsFeatureEdgesEnabled);
+
+  mySurfaceActor->SetFeatureEdgesEnabled(theIsFeatureEdgesEnabled);
+}
+
 //----------------------------------------------------------------------------
 void
 VISU_ScalarMapAct
index 8589d05df5c3f9dc2349268526b409b874c8d594..63b10ce0abbf367c7ed0b57b12d7cd4a691c64e1 100644 (file)
@@ -1,34 +1,34 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_ScalarMapAct.h
 //  Author : Laurent CORNABE with help of Nicolas REJNERI
 //  Module : VISU
 //  $Header$
-
+//
 #ifndef VISU_ScalarMapAct_HeaderFile
 #define VISU_ScalarMapAct_HeaderFile
 
+#include "VISU_OBJECT.h"
 #include "VISU_DataSetActor.h"
 
 class VISU_ScalarBarActor;
@@ -36,7 +36,7 @@ class VISU_PointsDeviceActor;
 
 
 //----------------------------------------------------------------------------
-class VTKOCC_EXPORT VISU_ScalarMapAct : public VISU_DataSetActor 
+class VISU_OBJECT_EXPORT VISU_ScalarMapAct : public VISU_DataSetActor 
 {
  public:
   vtkTypeMacro(VISU_ScalarMapAct,VISU_DataSetActor);
@@ -77,6 +77,29 @@ class VTKOCC_EXPORT VISU_ScalarMapAct : public VISU_DataSetActor
   void
   UnShrink(); 
   
+  virtual
+  void
+  SetFeatureEdgesAllowed(bool theIsFeatureEdgesAllowed);
+
+  virtual
+  void
+  SetFeatureEdgesEnabled(bool theIsFeatureEdgesEnabled);
+
+  virtual
+  void
+  SetFeatureEdgesAngle(vtkFloatingPointType theAngle = 30.0); 
+
+  virtual
+  void
+  SetFeatureEdgesFlags(bool theIsFeatureEdges,
+                      bool theIsBoundaryEdges,
+                      bool theIsManifoldEdges,
+                      bool theIsNonManifoldEdges);
+
+  virtual
+  void
+  SetFeatureEdgesColoring(bool theIsColoring);
+
   virtual
   void
   SetOpacity(vtkFloatingPointType theValue);
index 428cbb50e8f3bcd0fb1027c25599bf2fc6435ae7..0742a57a90efa6ca4c5f8e8c8e4550ee6a62418c 100644 (file)
@@ -1,33 +1,32 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_VectorsAct.cxx
 //  Author : Laurent CORNABE with help of Nicolas REJNERI
 //  Module : VISU
-//  $Header$
 
 #include "VISU_VectorsAct.h"
 #include "VISU_VectorsPL.hxx"
+#include <SVTK_Actor.h>
  
 // VTK Includes
 #include <vtkObjectFactory.h>
@@ -35,6 +34,9 @@
 #include <vtkPolyDataMapper.h>
 #include <vtkPolyData.h>
 #include <vtkPassThroughFilter.h>
+#include <VISU_UsedPointsFilter.hxx>
+#include <vtkUnstructuredGrid.h>
+#include <VISU_MergeFilter.hxx>
 
 //----------------------------------------------------------------------------
 vtkStandardNewMacro(VISU_VectorsAct);
@@ -58,8 +60,9 @@ void
 VISU_VectorsAct
 ::SetPipeLine(VISU_PipeLine* thePipeLine) 
 {
-  myVectorsPL = dynamic_cast<VISU_VectorsPL*>(thePipeLine);
-  VISU_Actor::SetPipeLine(myVectorsPL.GetPointer());
+  myVectorsPL = dynamic_cast<VISU_VectorsPL*>( thePipeLine );
+
+  Superclass::SetPipeLine( myVectorsPL.GetPointer() );
 }
 
 
@@ -77,8 +80,9 @@ void
 VISU_VectorsAct
 ::SetTransform(VTKViewer_Transform* theTransform)
 {
-  Superclass::SetTransform(theTransform);
-  myVectorsPL->SetTransform(theTransform);
+  // To perform only vector's specific action,
+  // there is nothing to be done for the Superclass
+  myVectorsPL->SetTransform( theTransform );
 }
 
 
@@ -101,6 +105,7 @@ VISU_VectorsAct
     else if(vtkPolyDataMapper* aMapper = dynamic_cast<vtkPolyDataMapper*>(theMapper))
       aMapper->SetInput(myPassFilter[3]->GetPolyDataOutput());
   }
+
   vtkLODActor::SetMapper(theMapper);
 }
 
@@ -116,3 +121,24 @@ VISU_VectorsAct
 
   return aSize;
 }
+
+//----------------------------------------------------------------------------
+vtkDataSet*
+VISU_VectorsAct
+::GetValLabelsInput()
+{
+  VISU_VectorsPL* aPL = dynamic_cast<VISU_VectorsPL*>( GetPipeLine() );
+  if ( aPL )
+  {
+    return aPL->GetMergedInput();
+    /*VISU_UsedPointsFilter* aFilter = aPL->GetUsedPointsFilter();
+    vtkSmartPointer< VISU_MergeFilter > aFilter = aPL->myMergeFilter;
+    if ( aFilter )
+    {
+      aFilter->Update();
+      return aFilter->GetOutput();
+    }*/
+  }
+
+  return Superclass::GetValLabelsInput();
+}
index cc76ce4867ac088aca2d862266239c82b518f31d..98db4124f45e3e8568773d4eccb14352df0a8c7b 100644 (file)
@@ -1,34 +1,33 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_VectorsAct.h
 //  Author : Laurent CORNABE with help of Nicolas REJNERI
 //  Module : VISU
-//  $Header$
 
 #ifndef VISU_VectorsAct_HeaderFile
 #define VISU_VectorsAct_HeaderFile
 
+#include "VISU_OBJECT.h"
 #include "VISU_ScalarMapAct.h"
 
 #include <vtkSmartPointer.h>
@@ -36,7 +35,7 @@
 class VTKViewer_Transform;
 class VISU_VectorsPL;
 
-class VTKOCC_EXPORT VISU_VectorsAct : public VISU_ScalarMapAct 
+class VISU_OBJECT_EXPORT VISU_VectorsAct : public VISU_ScalarMapAct 
 {
  public:
   vtkTypeMacro(VISU_VectorsAct,VISU_ScalarMapAct);
@@ -65,6 +64,10 @@ class VTKOCC_EXPORT VISU_VectorsAct : public VISU_ScalarMapAct
   virtual
   unsigned long int
   GetMemorySize();
+  
+  virtual
+  vtkDataSet*
+  GetValLabelsInput();
  
  protected:
   VISU_VectorsAct();
index 51adaa9a0713cb4a6107386c6a37cadbcfa128ed..f8ebc82ea012692cd38040f839ab60daf2b70150 100644 (file)
@@ -1,6 +1,6 @@
-#  VISU OBJECT : interactive object for VISU entities implementation
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 #
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 #  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 #
 #  This library is free software; you can redistribute it and/or
 #  License along with this library; if not, write to the Free Software
 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-#
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+#  VISU OBJECT : interactive object for VISU entities implementation
 #  File   : Makefile.in
 #  Module : VISU
-
+#
 include $(top_srcdir)/adm_local/unix/make_common_starter.am
 
 lib_LTLIBRARIES= libVisuPipeLine.la
@@ -36,6 +35,7 @@ salomeinclude_HEADERS= \
        VISU_PipeLineUtils.hxx \
        VISU_PipeLine.hxx \
        VISU_ColoredPL.hxx \
+       VISU_MergedPL.hxx \
        VISU_UnstructuredGridPL.hxx \
        VISU_MeshPL.hxx \
        VISU_ScalarMapPL.hxx \
@@ -50,8 +50,10 @@ salomeinclude_HEADERS= \
        VISU_Extractor.hxx \
        VISU_FieldTransform.hxx \
        VISU_MaskPointsFilter.hxx \
+       VISU_PolyDataPL.hxx \
        VISU_GaussPointsPL.hxx \
        VISU_Plot3DPL.hxx \
+       VISU_DeformedGridPL.hxx \
        VISU_OpenGLPointSpriteMapper.hxx \
        VISU_ImplicitFunctionWidget.hxx \
        SALOME_ExtractGeometry.h \
@@ -60,8 +62,14 @@ salomeinclude_HEADERS= \
        VISU_PlanesWidget.hxx \
        VISU_SphereWidget.hxx \
        VISU_WidgetCtrl.hxx \
-       VISU_ScalarMapOnDeformedShapePL.hxx \
-       VISUPipeline.hxx
+       VISU_DeformedShapeAndScalarMapPL.hxx \
+       VISUPipeline.hxx \
+       VISU_LabelPointsFilter.hxx \
+       VISU_ElnoDisassembleFilter.hxx \
+       VISU_ElnoAssembleFilter.hxx \
+       VISU_DeformationPL.hxx \
+       VISU_OptionalDeformationPL.hxx \
+       VISU_XYPlotActor.hxx
 
 dist_libVisuPipeLine_la_SOURCES= \
        VISU_MapperHolder.cxx \
@@ -71,6 +79,7 @@ dist_libVisuPipeLine_la_SOURCES= \
        VISU_PipeLineUtils.cxx \
        VISU_PipeLine.cxx \
        VISU_ColoredPL.cxx \
+       VISU_MergedPL.cxx \
        VISU_UnstructuredGridPL.cxx \
        VISU_MeshPL.cxx \
        VISU_ScalarMapPL.cxx \
@@ -85,8 +94,10 @@ dist_libVisuPipeLine_la_SOURCES= \
        VISU_Extractor.cxx \
        VISU_FieldTransform.cxx \
        VISU_MaskPointsFilter.cxx \
+       VISU_PolyDataPL.cxx \
        VISU_GaussPointsPL.cxx \
        VISU_Plot3DPL.cxx \
+       VISU_DeformedGridPL.cxx \
        SALOME_ExtractGeometry.cxx \
        SALOME_ExtractPolyDataGeometry.cxx \
        VISU_OpenGLPointSpriteMapper.cxx \
@@ -95,10 +106,17 @@ dist_libVisuPipeLine_la_SOURCES= \
        VISU_SphereWidget.cxx \
        VISU_WidgetCtrl.cxx \
        VISU_ScalarBarCtrl.cxx \
-       VISU_ScalarMapOnDeformedShapePL.cxx
+       VISU_DeformedShapeAndScalarMapPL.cxx \
+       VISU_LabelPointsFilter.cxx \
+       VISU_ElnoDisassembleFilter.cxx \
+       VISU_ElnoAssembleFilter.cxx \
+       VISU_DeformationPL.cxx \
+       VISU_OptionalDeformationPL.cxx\
+       VISU_XYPlotActor.cxx
 
 libVisuPipeLine_la_CPPFLAGS= \
        $(VTK_INCLUDES) \
+       $(QT_INCLUDES) \
        $(KERNEL_CXXFLAGS) \
        $(GUI_CXXFLAGS) \
        $(MED_CXXFLAGS) \
@@ -106,12 +124,13 @@ libVisuPipeLine_la_CPPFLAGS= \
        -I$(srcdir)/../CONVERTOR
 
 libVisuPipeLine_la_LDFLAGS= \
-       $(MED2_LIBS) \
-       $(VTK_LIBS) -lVTKViewer \
        $(KERNEL_LDFLAGS) -lSALOMELocalTrace \
        $(GUI_LDFLAGS) \
        $(MED_LDFLAGS) \
-       ../CONVERTOR/libVisuConvertor.la
+       ../CONVERTOR/libVisuConvertor.la \
+       $(VTK_LIBS) -lVTKViewer \
+       $(MED2_LIBS) \
+       $(QT_LIBS)
 
 
 # Executables targets
index caac091f4dae12b6a3f368133cd9370f100fca5a..92e952856d2b6fa218f37305934d4afa82900e34 100755 (executable)
@@ -1,4 +1,6 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
@@ -15,9 +17,8 @@
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-
-
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
 #include "SALOME_ExtractGeometry.h"
 
 #include <vtkCell.h>
@@ -130,7 +131,7 @@ SALOME_ExtractGeometry
 //----------------------------------------------------------------------------
 vtkIdType
 SALOME_ExtractGeometry
-::GetElemObjId(int theVtkID)
+::GetElemObjId(vtkIdType theVtkID)
 {
   if(!myStoreMapping || myIsDoneShallowCopy)
     return theVtkID;
@@ -144,7 +145,7 @@ SALOME_ExtractGeometry
 
 vtkIdType
 SALOME_ExtractGeometry
-::GetNodeObjId(int theVtkID)
+::GetNodeObjId(vtkIdType theVtkID)
 {
   if(!myStoreMapping || myIsDoneShallowCopy)
     return theVtkID;
index ed9c0749e948f8f8f98712142c8955bbff074d1a..93e73d8c7c4fdeca199bec0d79b9c9f401aa6313 100755 (executable)
@@ -1,4 +1,6 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
 #ifndef SALOME_ExtractGeometry_H
 #define SALOME_ExtractGeometry_H
 
+#include "VISUPipeline.hxx"
+
 #include <vtkExtractGeometry.h>
 #include <vtkSmartPointer.h>
 
@@ -27,7 +31,7 @@
 
 class vtkImplicitBoolean;
 
-class SALOME_ExtractGeometry : public vtkExtractGeometry
+class VISU_PIPELINE_EXPORT SALOME_ExtractGeometry : public vtkExtractGeometry
 {
 public:
   vtkTypeMacro(SALOME_ExtractGeometry, vtkExtractGeometry);
index d4398f1b196e25c60e9eb48f02188641118d6326..37c2dc699e06613876ed2a67edea99e30b15fdd0 100644 (file)
@@ -1,4 +1,6 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
@@ -15,9 +17,8 @@
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-
-
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
 #include "SALOME_ExtractPolyDataGeometry.h"
 
 #include <vtkCellArray.h>
@@ -122,7 +123,7 @@ SALOME_ExtractPolyDataGeometry
 //----------------------------------------------------------------------------
 vtkIdType
 SALOME_ExtractPolyDataGeometry
-::GetElemObjId(int theVtkID)
+::GetElemObjId(vtkIdType theVtkID)
 {
   if(!myStoreMapping || myIsDoneShallowCopy)
     return theVtkID;
@@ -136,7 +137,7 @@ SALOME_ExtractPolyDataGeometry
 
 vtkIdType
 SALOME_ExtractPolyDataGeometry
-::GetNodeObjId(int theVtkID)
+::GetNodeObjId(vtkIdType theVtkID)
 {
   if(!myStoreMapping || myIsDoneShallowCopy)
     return theVtkID;
index 05b039182416d3acab965f7a02a9a8f54c21a53b..862a9f2d69169b6ee74284dc2eaa50ae87af11c8 100644 (file)
@@ -1,4 +1,6 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
 #ifndef SALOME_ExtractPolyDataGeometry_H
 #define SALOME_ExtractPolyDataGeometry_H
 
+#include "VISUPipeline.hxx"
+
 #include <vtkExtractPolyDataGeometry.h>
 #include <vtkSmartPointer.h>
 
@@ -27,7 +31,7 @@
 
 class vtkImplicitBoolean;
 
-class SALOME_ExtractPolyDataGeometry : public vtkExtractPolyDataGeometry
+class VISU_PIPELINE_EXPORT SALOME_ExtractPolyDataGeometry : public vtkExtractPolyDataGeometry
 {
 public:
   vtkTypeMacro(SALOME_ExtractPolyDataGeometry, vtkExtractPolyDataGeometry);
index 2e9f12c027a663dc3105830e7899141f15878dd8..76d8fc46c25fa3bd5d131a05dedc0091d13c2b93 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_PipeLine.hxx
 // Author:  Alexey PETROV
 // Module : VISU
+// Salome includes
+//
+#include "VISU_Convertor.hxx"
+#include "VISU_ConvertorUtils.hxx"
 
 #include "VISU_MeshPL.hxx"
 #include "VISU_ScalarMapPL.hxx"
 #include "VISU_IsoSurfacesPL.hxx"
 #include "VISU_CutPlanesPL.hxx"
 #include "VISU_CutLinesPL.hxx"
+#include "VISU_ColoredPL.hxx"
 #include "VISU_DeformedShapePL.hxx"
 #include "VISU_VectorsPL.hxx"
 #include "VISU_StreamLinesPL.hxx"
 #include "VISU_GaussPointsPL.hxx"
-#include "VISU_ScalarMapOnDeformedShapePL.hxx"
+#include "VISU_DeformedShapeAndScalarMapPL.hxx"
 #include "VISU_Plot3DPL.hxx"
-#include "VISU_ScalarBarActor.hxx"
 
+#include "VISU_ScalarBarActor.hxx"
 #include "VISU_OpenGLPointSpriteMapper.hxx"
 #include "VTKViewer_GeometryFilter.h"
-#include <vtkMaskPoints.h>
-
-#include "VISU_Convertor.hxx"
-#include "VISU_ConvertorUtils.hxx"
-
-typedef VISU_GaussPointsPL TPresent;
 
+#include "VISU_ElnoDisassembleFilter.hxx"
+#include "VISU_ElnoAssembleFilter.hxx"
+
+//typedef VISU_CutPlanesPL TPresent;
+//typedef VISU_ScalarMapPL TPresent;
+typedef VISU_CutLinesPL TPresent;
+
+// VTK includes
+#include <vtkShrinkFilter.h>
+#include <vtkPointLocator.h>
+#include <vtkCutter.h>
+#include <vtkPlane.h>
+#include <vtkWarpVector.h>
+#include <vtkScalarBarActor.h>
+#include <vtkScalarBarWidget.h>
+#include <vtkMaskPoints.h>
+#include <vtkUnstructuredGridReader.h>
 #include <vtkUnstructuredGrid.h>
 #include <vtkDataSetMapper.h>
-
 #include <vtkInteractorStyleTrackballCamera.h>
 #include <vtkRenderWindowInteractor.h>
 #include <vtkRenderWindow.h>
 #include <vtkImageData.h>
+#include <vtkCellData.h>
 #include <vtkRenderer.h>
 #include <vtkCamera.h>
 #include <vtkActor.h>
 #include <vtk3DWidget.h>
-
 #include <vtkProperty.h>
 
+//RKV:Begin
+#include <vtkLookupTable.h>
+#include <vtkIntArray.h>
+#include <vtkPointData.h>
+#include <vtkCellData.h>
+#include <vtkPointSet.h>
+#include <vtkPolyData.h>
+#include <vtkXYPlotActor.h>
+#include <vtkProperty2D.h>
+#include <vtkTextProperty.h>
+
+#include <vtkXYPlotWidget.h>
+#include <vtkScalarBarWidget.h>
+#include <vtkScalarBarActor.h>
+#include <vtkMatrix4x4.h>
+
+/*#include <vtkBarChartActor.h>
+#include <vtkFloatArray.h>
+#include <vtkDataObject.h>
+#include <vtkFieldData.h>
+#include <vtkMath.h>
+#include <vtkTextProperty.h>
+#include <vtkPolyData.h>
+#include <vtkPoints.h>
+#include <vtkIdList.h>
+#include <vtkProperty2D.h>
+#include <vtkLegendBoxActor.h>
+#include <vtkTestUtilities.h>
+#include <vtkRegressionTestImage.h>
+*/
+//RKV:End
+
+#include "utilities.h"
+
 static int isOnlyMesh = false;
 
+void PrintMissing(){
+  MESSAGE(std::endl << "VISUPipeLine : missing operand after `VISUPipeLine'" <<
+          std::endl << "VISUPipeLine : Try `VISUPipeLine -h' for more information.");
+}
+
+void PrintHelp(){
+  MESSAGE_ADD(std::endl << " Usage: VISUPipeLine filename meshname fieldname [timestamp] [component] " <<
+              std::endl << "filename   - Name of the med file.                                       " <<
+              std::endl << "meshname   - Name of the mesh in the med file.                           " <<
+              std::endl << "fieldname  - Name of the mesh field.                                     " <<
+              std::endl << "timestamp  - Number of the time stamp in the field 1,2,3 ... (optionally)" <<
+              std::endl << "             by default used first time stamp.                           " <<
+              std::endl << "component  - Number of the component in the field 0,1,2,3 ...(optionally)" <<
+              std::endl << "             0 - modulus, 1 - first component, 2 - second component, ... " <<
+              std::endl << "             by default used modulus.                                    ");
+}
+
+void PrintErr(){
+  MESSAGE("***************************ERROR*****************************************");
+}
 //#define _DEBUG_ID_MAPPING_
 
+//RKV:Begin
+/*
+vtkActor* barChartActor()
+{
+  int numTuples = 6;
+
+  vtkFloatArray *bitter = vtkFloatArray::New();
+  bitter->SetNumberOfTuples(numTuples);
+  
+  for (int i=0; i<numTuples; i++)
+    {
+    bitter->SetTuple1(i, vtkMath::Random(7,100));
+    }
+
+  vtkDataObject *dobj = vtkDataObject::New();
+  dobj->GetFieldData()->AddArray(bitter);
+  
+  vtkBarChartActor *actor = vtkBarChartActor::New();
+  actor->SetInput(dobj);
+  actor->SetTitle("Bar Chart");
+  actor->GetPositionCoordinate()->SetValue(0.05,0.05,0.0);
+  actor->GetPosition2Coordinate()->SetValue(0.95,0.85,0.0);
+  actor->GetProperty()->SetColor(1,1,1);
+  actor->GetLegendActor()->SetNumberOfEntries(numTuples);
+  for (int i=0; i<numTuples; i++)
+    {
+    double red=vtkMath::Random(0,1);
+    double green=vtkMath::Random(0,1);
+    double blue=vtkMath::Random(0,1);
+    actor->SetBarColor(i,red,green,blue);
+    }
+  actor->SetBarLabel(0,"oil");
+  actor->SetBarLabel(1,"gas");
+  actor->SetBarLabel(2,"water");
+  actor->SetBarLabel(3,"snake oil");
+  actor->SetBarLabel(4,"tequila");
+  actor->SetBarLabel(5,"beer");
+  actor->LegendVisibilityOn();
+
+  // Set text colors (same as actor for backward compat with test)
+  actor->GetTitleTextProperty()->SetColor(1,1,0);
+  actor->GetLabelTextProperty()->SetColor(1,0,0);
+  return actor;
+}
+*/
+//RKV:End
 //----------------------------------------------------------------------------
 template<class TPipeLine>
 VISU_ColoredPL*
@@ -118,11 +233,9 @@ CreateColoredPL<VISU_GaussPointsPL>(VISU_Convertor* theConvertor,
     cout<<aCoord[0]<<"; "<<aCoord[1]<<"; "<<aCoord[2]<<endl;
   }
 #endif
-
   return aPresent;
 }
 
-
 //----------------------------------------------------------------------------
 template<class TPipeLine>
 VISU_ColoredPL*
@@ -140,6 +253,14 @@ CreateColoredPL(VISU_Convertor* theConvertor,
                                     theTimeStampNumber);
   aPresent->SetUnstructuredGridIDMapper(anUnstructuredGridIDMapper);
 
+  vtkFloatingPointType aRange[] = { 4, 5 };
+cout << "before filter limits set" << endl;
+      vtkObject::GlobalWarningDisplayOn();
+      aPresent->DebugOn();
+  aPresent->SetScalarFilterRange( aRange );
+  aPresent->UseScalarFiltering( true );
+cout << "after filter set" << endl;
+
   //aPresent->ClearGeometry();
   //{
   //  VISU::PUnstructuredGridIDMapper anIDMapper = 
@@ -160,6 +281,7 @@ CreateColoredPL(VISU_Convertor* theConvertor,
   //  aPresent->AddGeometry(anIDMapper->GetOutput());
   //}
   aPresent->Update();
+cout << "after update" << endl;
   return aPresent;
 }
 
@@ -169,7 +291,69 @@ int
 main(int argc, char** argv)
 {
   try{
-    if(argc > 1){
+    if(argc == 1){
+      PrintMissing();
+      return 1;
+    }
+    if(argc == 2 && !strcmp(argv[1],"-h")) {
+      PrintHelp();
+      return 1;
+    }
+    
+    char* aFileName =0;
+    char* aMeshName =0;
+    char* aFieldName =0;
+    int aTimeStampNumber = 1;
+    int aComponentNumber  = 0;
+    bool allInit = false;
+    bool isMeshOk = false;
+    bool isFieldOk = false;
+    bool isTimeStampOk = false;
+    bool isComponentOk = false;
+
+    if(argc == 4 ){
+      aFileName = new char[static_cast<int>(strlen(argv[1])) + 1];
+      aMeshName = new char[static_cast<int>(strlen(argv[2])) + 1];
+      aFieldName = new char[static_cast<int>(strlen(argv[3])) + 1];
+      
+      strcpy(aFileName,argv[1]);
+      strcpy(aMeshName,argv[2]);
+      strcpy(aFieldName,argv[3]);
+      
+      allInit = true;
+    }
+
+    if(argc == 5) {
+      aFileName = new char[static_cast<int>(strlen(argv[1])) + 1];
+      aMeshName = new char[static_cast<int>(strlen(argv[2])) + 1];
+      aFieldName = new char[static_cast<int>(strlen(argv[3])) + 1];
+      
+      strcpy(aFileName,argv[1]);
+      strcpy(aMeshName,argv[2]);
+      strcpy(aFieldName,argv[3]);
+
+      aTimeStampNumber = atoi(argv[4]);
+      allInit = true;
+    }
+    
+    if(argc == 6) {
+      aFileName = new char[static_cast<int>(strlen(argv[1])) + 1];
+      aMeshName = new char[static_cast<int>(strlen(argv[2])) + 1];
+      aFieldName = new char[static_cast<int>(strlen(argv[3])) + 1];
+      
+      strcpy(aFileName,argv[1]);
+      strcpy(aMeshName,argv[2]);
+      strcpy(aFieldName,argv[3]);
+
+      aTimeStampNumber = atoi(argv[4]);
+      aComponentNumber = atoi(argv[5]);
+      allInit = true;
+    }
+    
+
+
+    if(allInit){
+            
       vtkRenderWindow *aWindow = vtkRenderWindow::New();
       vtkRenderer *aRenderer = vtkRenderer::New();
 
@@ -184,7 +368,7 @@ main(int argc, char** argv)
       anInteractor->SetInteractorStyle(aStyle);
       aStyle->Delete();
 
-      VISU_Convertor* aConvertor = CreateConvertor(argv[1]);
+      VISU_Convertor* aConvertor = CreateConvertor(aFileName);
       aConvertor->BuildEntities();
       aConvertor->BuildGroups();
       aConvertor->BuildFields();
@@ -230,13 +414,13 @@ main(int argc, char** argv)
 //         continue;
          const std::string& aFieldName = aFieldMapIter->first;
          const VISU::TValField& aValField = aField->myValField;
-         VISU::TValField::const_iterator aValFieldIter = aValField.begin();
-         if(aValFieldIter == aValField.end()) return 0;
+         VISU::TValField::const_reverse_iterator aValFieldIter = aValField.rbegin();
+         if(aValFieldIter == aValField.rend()) return 0;
          int aTimeStamp = aValFieldIter->first;
 
          vtkActor* anActor = vtkActor::New();
          VISU_ColoredPL* aPresent = NULL;
-         if(anEntity != VISU::NODE_ENTITY){
+         if(anEntity == VISU::NODE_ENTITY){
            aPresent = CreateColoredPL<TPresent>(aConvertor,
                                                 aMeshName,
                                                 anEntity,
@@ -289,11 +473,156 @@ main(int argc, char** argv)
            aMapper->Delete();
          }
 
+
+
+
+
+//RKV:Begin
+  vtkLookupTable* lut = vtkLookupTable::New();
+  int nbColors = aPresent->GetNbColors();
+  lut->SetNumberOfTableValues(nbColors);
+  vtkDataArray* dataArr;
+    if(VISU::IsDataOnCells(aPresent->GetInput())) {
+       dataArr = aPresent->GetInput()->GetCellData()->GetScalars();
+    } else {
+       dataArr = aPresent->GetInput()->GetPointData()->GetScalars();
+    }
+  vtkFloatingPointType aRange[2];
+  dataArr->GetRange(aRange);
+  MSG(true, "Range[0]: "<<aRange[0]);
+  MSG(true, "Range[1]: "<<aRange[1]);
+
+  lut->SetTableRange(aRange);
+  lut->Build();
+    MSG(true, "1\n");
+  vtkIntArray* distr = vtkIntArray::New();
+  distr->SetNumberOfValues(nbColors);
+    MSG(true, "Number of colors: "<<nbColors);
+  distr->FillComponent(0, 0.);
+    MSG(true, "2\n");
+  int aNbVals = dataArr->GetNumberOfTuples();
+  int idx = 0, cnt = 0;
+  
+    MSG(true, "3\n");
+  for(vtkIdType aValId = 0; aValId < aNbVals; aValId++){
+//    MSG(true, "Value: "<< *(dataArr->GetTuple(aValId)));
+       idx = lut->GetIndex(*(dataArr->GetTuple(aValId)));
+//    MSG(true, "Value index "<<idx);
+       cnt = distr->GetValue(idx);
+       distr->SetValue(idx, cnt + 1);
+  }
+    MSG(true, "4\n");
+  distr->Modified();
+  double range[2];
+  distr->GetRange(range);
+  MSG(true, "DistrRange[0]: " << range[0]);
+  MSG(true, "DistrRange[1]: " << range[1]);
+    MSG(true, "5\n");
+//  vtkPoints* points = vtkPoints::New();
+//  aNbVals = distr->GetNumberOfTuples();
+//  points->Allocate(aNbVals);
+//  double x[3] = {0., 0., 0.};
+/*  for(vtkIdType aValId = 0; aValId < aNbVals; aValId++){
+       x[0] = aValId;
+       points->InsertPoint(aValId, x);
+*///    MSG(true, "Inserted point "<<aValId);
+//    MSG(true, ": "<<distr->GetValue(aValId));
+//  }
+//  points->SetData(distr);
+  
+/*  vtkPointSet* pset = vtkPolyData::New();
+  pset->SetPoints(points);
+  pset->GetPointData()->SetScalars(distr);
+*/    
+  vtkDataObject *dobj = vtkDataObject::New();
+  dobj->GetFieldData()->AddArray(distr);
+  
+  vtkXYPlotActor* xyplot = vtkXYPlotActor::New();
+//  xyplot->AddInput(pset);
+  xyplot->AddDataObjectInput(dobj);
+  xyplot->GetPositionCoordinate()->SetValue(0.0, 0.67, 0);
+  xyplot->GetPosition2Coordinate()->SetValue(1.0, 0.33, 0); // #relative to Position
+  xyplot->SetXValuesToIndex();
+//  xyplot->SetXValuesToNormalizedArcLength();
+//  xyplot->SetXValuesToArcLength();
+//  xyplot->SetNumberOfXLabels(0);
+  xyplot->SetTitle("");
+  xyplot->SetXTitle("");
+  xyplot->SetYTitle("Distribution");
+//  xyplot->ReverseYAxisOn();
+//  xyplot->SetDataObjectPlotModeToRows();
+  xyplot->SetLabelFormat("%.0f");
+  xyplot->SetXRange(0, nbColors-1);
+  xyplot->SetYRange(range[0], range[1]);
+/*  int ny = floor(fabs(range[1] - range[0]));
+    MSG(true, "ny = "<<ny);
+    MSG(true, "nbYLabels = "<<xyplot->GetNumberOfYLabels());
+  if (ny < xyplot->GetNumberOfYLabels()) {
+    MSG(true, "5.1");
+       xyplot->SetNumberOfYLabels(ny);
+    MSG(true, "nbYLabels = "<<xyplot->GetNumberOfYLabels());
+  }
+*/  xyplot->GetProperty()->SetColor(1, 1, 1);
+  xyplot->GetProperty()->SetLineWidth(2);
+  xyplot->GetProperty()->SetDisplayLocationToForeground();
+/*  vtkMatrix4x4 *m = vtkMatrix4x4::New();
+    MSG(true, "5.1\n");
+  m->Zero();
+    MSG(true, "5.2\n");
+  m->SetElement(0, 1, 1);
+  m->SetElement(1, 0, -1);
+  m->SetElement(2, 2, 1);
+  m->SetElement(3, 3, 1);
+    MSG(true, "5.3\n");
+  xyplot->PokeMatrix(m);
+*/  //# Set text prop color (same color for backward compat with test)
+  //# Assign same object to all text props
+  vtkTextProperty* tprop;
+  tprop = xyplot->GetTitleTextProperty();
+  tprop->SetColor(xyplot->GetProperty()->GetColor());
+  xyplot->SetAxisTitleTextProperty(tprop);
+  xyplot->SetAxisLabelTextProperty(tprop);
+  
+//RKV:End  
+  
+
+    MSG(true, "6\n");
+
+/*{
+  vtkXYPlotWidget* aWidget = vtkXYPlotWidget::New();
+  aWidget->SetInteractor( anInteractor );
+  aWidget->SetXYPlotActor( xyplot );
+  aWidget->SetEnabled( 1 );
+}*/
+
+
+      vtkObject::GlobalWarningDisplayOn();
+
          VISU_ScalarBarActor * aScalarBar = VISU_ScalarBarActor::New();
+         //vtkScalarBarActor * aScalarBar = vtkScalarBarActor::New();
+         aPresent->SetNbColors(5);
+         aPresent->DebugOn();
+         aPresent->Update();
          aScalarBar->SetLookupTable(aPresent->GetBarTable());
-
+         aScalarBar->DebugOn();
+         aScalarBar->SetDistribution(aPresent->GetDistribution());
+         aScalarBar->DistributionVisibilityOn();
+//       aScalarBar->SetOrientationToHorizontal();
+//       aScalarBar->GetPositionCoordinate()->SetValue(.1, .6, 0);
+//       aScalarBar->GetPosition2Coordinate()->SetValue(.8, .3, 0);
+
+/*{
+  vtkScalarBarWidget* aWidget = vtkScalarBarWidget::New();
+  aWidget->SetInteractor( anInteractor );
+  aWidget->SetScalarBarActor( aScalarBar );
+  aWidget->SetEnabled( 1 );
+}
+*/
          aRenderer->AddActor(anActor);
+//       aRenderer->AddActor2D(xyplot); //RKV
          aRenderer->AddActor2D(aScalarBar);
+         
+         //aRenderer->AddActor2D(barChartActor()); //RKV
 
          aWindow->Render();
          aRenderer->ResetCamera();
@@ -303,6 +632,34 @@ main(int argc, char** argv)
        }
       }
     }
+    else{
+      PrintMissing();
+      return 1;
+    }
+
+    if(!isMeshOk) {
+      PrintErr();
+      MESSAGE("Can not find mesh with name `"<<aMeshName<<"' in the file `"<<aFileName<<"'");
+      PrintErr();
+      return 1;
+    }
+    if(!isFieldOk) {
+      PrintErr();
+      MESSAGE("Can not find field with name `"<<aFieldName<<"' on the mesh `"<<aMeshName<<"'");
+      PrintErr();
+      return 1; 
+    }
+    if(!isComponentOk) {
+      PrintErr();
+      MESSAGE("Field field with name `"<<aFieldName<<"' containt less then `"<<aComponentNumber<<"' component(s).");
+      PrintErr();
+      return 1;
+    }
+    if(!isTimeStampOk) {
+      PrintErr();
+      MESSAGE("Can not find time stamp with number `"<<aTimeStampNumber<<"' on the field `"<<aFieldName<<"'");
+      PrintErr();
+    }
   }catch(std::exception& exc){
     MSG(true, "Follow exception was occured :\n"<<exc.what());
   }catch(...){
index 334195fa1a0439f023892915839929d4c0382a95..f6bae70add0248e16c12b604a1fc28c10246e363 100755 (executable)
@@ -1,28 +1,28 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-//  See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org 
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VISUPipeline.hxx
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #ifndef _VISUPipeline_HXX_
 #define _VISUPipeline_HXX_
 
index 5b7b0e3c278ac788ddc90316438873ce5318268f..2dafb037b8dc4d1fdb8de2550d1a180925862f07 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_ColoredPL.cxx
 // Author:  Alexey PETROV
 // Module : VISU
-
-
+//
 #include "VISU_ColoredPL.hxx"
 #include "VISU_Extractor.hxx"
 #include "VISU_FieldTransform.hxx"
 
 #include "VISU_PipeLineUtils.hxx"
 
+#include <vtkThreshold.h>
+#include <vtkPassThroughFilter.h>
+#include <vtkDoubleArray.h>
+
 
 //----------------------------------------------------------------------------
 VISU_ColoredPL
 ::VISU_ColoredPL():
-  myMapperTable(VISU_LookupTable::New()),
-  myBarTable(VISU_LookupTable::New()),
-  myExtractor(VISU_Extractor::New()),
-  myFieldTransform(VISU_FieldTransform::New())
+  myMapperTable( VISU_LookupTable::New() ),
+  myBarTable( VISU_LookupTable::New() ),
+  myExtractor( VISU_Extractor::New() ),
+  myFieldTransform( VISU_FieldTransform::New() ),
+  myThreshold ( vtkThreshold::New() ),
+  myPassFilter( vtkPassThroughFilter::New() ),
+  myDistribution( vtkDoubleArray::New() )
 {
   myMapperTable->Delete();
   myMapperTable->SetScale(VTK_SCALE_LINEAR);
@@ -54,6 +59,11 @@ VISU_ColoredPL
   myExtractor->Delete();
 
   myFieldTransform->Delete();
+
+  myThreshold->AllScalarsOn(); 
+  myThreshold->Delete();
+  myPassFilter->Delete();
+  myDistribution->Delete();
 }
 
 
@@ -74,6 +84,9 @@ VISU_ColoredPL
   aTime = std::max(aTime, myBarTable->GetMTime());
   aTime = std::max(aTime, myExtractor->GetMTime());
   aTime = std::max(aTime, myFieldTransform->GetMTime());
+  aTime = std::max(aTime, myThreshold->GetMTime());
+  aTime = std::max(aTime, myPassFilter->GetMTime());
+  aTime = std::max(aTime, myDistribution->GetMTime());
 
   return aTime;
 }
@@ -88,21 +101,16 @@ VISU_ColoredPL
   Superclass::DoShallowCopy(thePipeLine, theIsCopyInput);
 
   if(VISU_ColoredPL *aPipeLine = dynamic_cast<VISU_ColoredPL*>(thePipeLine)){
-    if(theIsCopyInput)
-      SetScalarRange(aPipeLine->GetScalarRange());
+    if ( theIsCopyInput ) {
+      SetScalarRange( aPipeLine->GetScalarRange() );
+      if ( this->IsScalarFilterUsed() )
+       SetScalarFilterRange( aPipeLine->GetScalarFilterRange() );
+    }
+
     SetScalarMode(aPipeLine->GetScalarMode());
     SetNbColors(aPipeLine->GetNbColors());
     SetScaling(aPipeLine->GetScaling());
     SetMapScale(aPipeLine->GetMapScale());
-    if(this != thePipeLine){
-      if(aPipeLine->IsExternalGeometryUsed()){
-       ClearGeometry();
-       int aNbOfGeometry = aPipeLine->GetNumberOfGeometry();
-       for(int aGeomNumber = 0; aGeomNumber < aNbOfGeometry; aGeomNumber++)
-         AddGeometry(aPipeLine->GetGeometry(aGeomNumber));
-      }else
-       SetSourceGeometry();
-    }
   }
 }
 
@@ -144,7 +152,6 @@ VISU_ColoredPL
   theExtractor->SetScalarMode(theScalarMode);
 }
 
-
 //----------------------------------------------------------------------------
 void
 VISU_ColoredPL
@@ -157,18 +164,144 @@ VISU_ColoredPL
 //----------------------------------------------------------------------------
 void
 VISU_ColoredPL
-::SetScalarRange(vtkFloatingPointType theRange[2])
+::SetScalarRange( vtkFloatingPointType theRange[2] )
 {
-  if(theRange[0] > theRange[1]
+  if ( theRange[0] > theRange[1] 
     return;
   
-  if(VISU::CheckIsSameRange(GetScalarRange(), theRange))
+  if (VISU::CheckIsSameRange( GetScalarRange(), theRange) )
+    return;
+
+  myFieldTransform->SetScalarRange( theRange );
+  myBarTable->SetRange( theRange );
+}
+
+
+//----------------------------------------------------------------------------
+void
+VISU_ColoredPL
+::SetScalarFilterRange( vtkFloatingPointType theRange[2] )
+{
+  vtkFloatingPointType aRange[ 2 ];
+  this->GetScalarFilterRange( aRange );
+
+  if ( VISU::CheckIsSameRange( aRange, theRange) )
     return;
 
-  myFieldTransform->SetScalarRange(theRange);
-  myBarTable->SetRange(theRange);
+  myThreshold->ThresholdBetween( theRange[0], theRange[1] );
+}
+
+
+//----------------------------------------------------------------------------
+void
+VISU_ColoredPL
+::GetScalarFilterRange( vtkFloatingPointType theRange[2] )
+{
+  theRange[ 0 ] = myThreshold->GetLowerThreshold();
+  theRange[ 1 ] = myThreshold->GetUpperThreshold();
 }
 
+
+//----------------------------------------------------------------------------
+vtkFloatingPointType*
+VISU_ColoredPL
+::GetScalarFilterRange()
+{
+  static vtkFloatingPointType aRange[ 2 ];
+
+  this->GetScalarFilterRange( aRange );
+
+  return aRange;
+}
+
+
+//----------------------------------------------------------------------------
+void
+VISU_ColoredPL
+::UseScalarFiltering( bool theUseScalarFilter )
+{
+  if ( theUseScalarFilter ) {
+    // Include threshold filter between the transform and the pass filters. 
+    myPassFilter->SetInput( myThreshold->GetOutput() );
+  } else {
+    // Exclude threshold filter before the pass filter. 
+    myPassFilter->SetInput( myFieldTransform->GetOutput() );
+  }
+}
+
+
+//----------------------------------------------------------------------------
+bool
+VISU_ColoredPL
+::IsScalarFilterUsed()
+{
+  return myThreshold->GetOutput() == myPassFilter->GetInput();
+}
+
+
+//----------------------------------------------------------------------------
+vtkDoubleArray* 
+VISU_ColoredPL
+::GetDistribution() 
+{
+  unsigned long int aTime = this->GetMTime();
+  // If modified then update the distribution array
+  if (aTime > myDistribution->GetMTime()) {
+       // Set number of colors for the distribution
+    int nbColors = this->GetNbColors();
+       this->myDistribution->SetNumberOfValues(nbColors);
+       // Initialize numbers of colored cells with zero
+       this->myDistribution->FillComponent(0, 0);
+       // Create a lookup table to compute a color of a cell
+    VISU_LookupTable* lut = GetMapperTable();
+    vtkFloatingPointType aMapScale = lut->GetMapScale();
+    // Get scalar values from the input data to calculate their distribution within cells
+    vtkDataArray* dataArr;
+    // Dtermine where we have to take scalars from: cells data or points data. 
+    if(VISU::IsDataOnCells(this->GetOutput())) {
+       dataArr = this->GetOutput()->GetCellData()->GetScalars();
+    } else {
+       dataArr = this->GetOutput()->GetPointData()->GetScalars();
+    }
+    // If scalars data array is not defined then create an empty one to avoid exceptions
+    if (dataArr == NULL) {
+       dataArr = vtkDoubleArray::New();
+    }
+    
+    // Get range of scalars values
+//    vtkFloatingPointType aRange[2];
+//    dataArr->GetRange(aRange);
+
+    // Build the lookup table with the found range
+    // Get number of scalar values
+    int aNbVals = dataArr->GetNumberOfTuples();
+    if (aNbVals > 0) {
+      // Count the number of scalar values for each color in the input data
+      int idx = 0;
+      double cnt = 0;
+      // For each scalar value
+      for(vtkIdType aValId = 0; aValId < aNbVals; aValId++){
+        // Find the color index for this scalar value
+        idx = lut->GetIndex(*(dataArr->GetTuple(aValId)) * aMapScale);
+        // Increment the distribution value for this color index
+        cnt = this->myDistribution->GetValue(idx);
+        this->myDistribution->SetValue(idx, cnt + 1);
+      }
+      // Compute relative values when 1 is according to the total number of scalar values
+      for(vtkIdType aValId = 0; aValId < nbColors; aValId++){
+        cnt = this->myDistribution->GetValue(aValId);
+        this->myDistribution->SetValue(aValId, cnt / aNbVals);
+      }
+    }
+    this->myDistribution->Modified();
+       
+  }
+  
+  return myDistribution;
+}
+//----------------------------------------------------------------------------
+  // RKV : End
+
 //----------------------------------------------------------------------------
 vtkFloatingPointType* 
 VISU_ColoredPL
@@ -224,7 +357,12 @@ VISU_ColoredPL
 ::Init()
 {
   SetScalarMode(0);
-  SetSourceRange();
+
+  vtkFloatingPointType aRange[2];
+  GetSourceRange( aRange );
+
+  SetScalarRange( aRange );
+  SetScalarFilterRange( aRange );
 }
 
 //----------------------------------------------------------------------------
@@ -232,9 +370,9 @@ vtkPointSet*
 VISU_ColoredPL
 ::GetClippedInput()
 {
-  if(GetFieldTransformFilter()->GetInput())
-    GetFieldTransformFilter()->Update();
-  return GetFieldTransformFilter()->GetUnstructuredGridOutput();
+  if(myPassFilter->GetInput())
+    myPassFilter->Update();
+  return myPassFilter->GetUnstructuredGridOutput();
 }
 
 
@@ -243,11 +381,17 @@ void
 VISU_ColoredPL
 ::Build() 
 {
-  myExtractor->SetInput(Superclass::GetClippedInput());
+  myExtractor->SetInput( Superclass::GetClippedInput() );
   myFieldTransform->SetInput(myExtractor->GetOutput());
 
+  myThreshold->SetInput( myFieldTransform->GetOutput() );
+  // The pass filter is used here for possibility to include/exclude 
+  // threshold filter before it.
+  myPassFilter->SetInput( myFieldTransform->GetOutput() );
+
   GetMapperHolder()->SetLookupTable(GetMapperTable());
-  GetMapper()->SetUseLookupTableScalarRange(true);
+  //GetMapper()->InterpolateScalarsBeforeMappingOn();
+  GetMapper()->SetUseLookupTableScalarRange( true );
   GetMapper()->SetColorModeToMapScalars();
   GetMapper()->ScalarVisibilityOn();
 }
@@ -351,7 +495,7 @@ VISU_ColoredPL
 ::GetSourceRange(vtkFloatingPointType theRange[2])
 {
   myExtractor->Update();
-  myExtractor->GetOutput()->GetScalarRange(theRange);
+  myExtractor->GetOutput()->GetScalarRange( theRange );
 }
 
 void
@@ -359,6 +503,6 @@ VISU_ColoredPL
 ::SetSourceRange()
 {
   vtkFloatingPointType aRange[2];
-  GetSourceRange(aRange);
-  SetScalarRange(aRange);
+  GetSourceRange( aRange );
+  SetScalarRange( aRange );
 }
index c22351b86169e115fce9aa1a49bf9145679b0a94..0f84580a01ca9cbe3a8fa6a4bcc7b09dfbdb3d05 100644 (file)
@@ -1,30 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_ColoredPL.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #ifndef VISU_ColoredPL_HeaderFile
 #define VISU_ColoredPL_HeaderFile
 
@@ -36,9 +35,13 @@ class VISU_Extractor;
 class VISU_FieldTransform;
 class VISU_LookupTable;
 
+class vtkPassThroughFilter;
+class vtkDoubleArray;
+class vtkThreshold;
+
 
 //----------------------------------------------------------------------------
-class VISU_ColoredPL : public VISU_PipeLine
+class VISU_PIPELINE_EXPORT VISU_ColoredPL : public VISU_PipeLine
 {
 public:
   vtkTypeMacro(VISU_ColoredPL, VISU_PipeLine);
@@ -62,7 +65,22 @@ public:
 
   virtual
   void
-  SetScalarRange(vtkFloatingPointType theRange[2]);
+  SetScalarRange( vtkFloatingPointType theRange[2] );
+
+  void
+  SetScalarFilterRange( vtkFloatingPointType theRange[2] );
+
+  void
+  GetScalarFilterRange( vtkFloatingPointType theRange[2] );
+
+  vtkFloatingPointType* 
+  GetScalarFilterRange();
+
+  bool
+  IsScalarFilterUsed();
+
+  void
+  UseScalarFiltering( bool theUseScalarFilter );
 
   virtual
   void
@@ -80,8 +98,11 @@ public:
   int
   GetNbColors();
   
-  //----------------------------------------------------------------------------
+  vtkDoubleArray* GetDistribution();
+
+
 public:
+  //----------------------------------------------------------------------------
   virtual
   void
   Init();
@@ -119,36 +140,6 @@ public:
   void
   SetSourceRange();
 
-public:
-  
-  virtual  
-  void  
-  SetSourceGeometry()=0;
-
-  virtual
-  int
-  AddGeometry(vtkDataSet* theGeometry)=0;
-
-  virtual
-  vtkDataSet*
-  GetGeometry(int theGeomNumber)=0;
-
-  virtual
-  int
-  GetNumberOfGeometry()=0;
-
-  virtual
-  bool 
-  IsExternalGeometryUsed()=0;
-
-  virtual
-  void
-  ClearGeometry()=0;
-
-  virtual 
-  vtkPointSet* 
-  GetMergedInput()=0;
-
 protected:
   //----------------------------------------------------------------------------
   VISU_ColoredPL();
@@ -187,11 +178,13 @@ protected:
                VISU_Extractor* theExtractor);
 
 private:
-  vtkSmartPointer<VISU_LookupTable> myMapperTable;
-  vtkSmartPointer<VISU_LookupTable> myBarTable;
-  vtkSmartPointer<VISU_Extractor> myExtractor;
-  vtkSmartPointer<VISU_FieldTransform> myFieldTransform;
-  
+  vtkSmartPointer< VISU_LookupTable > myMapperTable;
+  vtkSmartPointer< VISU_LookupTable > myBarTable;
+  vtkSmartPointer< VISU_Extractor > myExtractor;
+  vtkSmartPointer< VISU_FieldTransform > myFieldTransform;
+  vtkSmartPointer< vtkThreshold > myThreshold;
+  vtkSmartPointer< vtkPassThroughFilter > myPassFilter;
+  vtkSmartPointer< vtkDoubleArray > myDistribution;
 };
   
 #endif
index 3bad32d187df31620c822023e025f48bab754d2a..0a0b7340bf5b0190124f7ee5d706b46ad87f292f 100644 (file)
@@ -1,5 +1,6 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 // File:    VISU_PipeLine.cxx
 // Author:  Alexey PETROV
 // Module : VISU
-
-
+//
 #include "VISU_CutLinesPL.hxx"
 #include "VISU_FieldTransform.hxx"
 #include "VISU_PipeLineUtils.hxx"
@@ -41,6 +40,7 @@ VISU_CutLinesPL
 ::VISU_CutLinesPL()
 {
   SetIsShrinkable(false);
+  SetIsFeatureEdgesAllowed(false);
 
   myCondition = 1;
   myPosition = 0;
@@ -100,6 +100,12 @@ VISU_CutLinesPL
   Modified();
 }
 
+vtkDataSet* 
+VISU_CutLinesPL
+::InsertCustomPL()
+{
+  return myAppendPolyData->GetOutput();
+}
 
 //----------------------------------------------------------------------------
 vtkFloatingPointType 
index 5811683414924df07c684056fe9484f6c03008cf..5607bf3a2ad200281b1f6b5acfe876c03df35c26 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_PipeLine.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #ifndef VISU_CutLinesPL_HeaderFile
 #define VISU_CutLinesPL_HeaderFile
 
@@ -64,6 +64,9 @@ public:
   void
   Init();
 
+  vtkDataSet*
+  InsertCustomPL();
+
   virtual
   void
   Update();
index 22493a104f8b33e3ceb508f0d4579ff7479ce4af..ca90de17199298b574eea11196a3356400ac8093 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_PipeLine.cxx
 // Author:  Alexey PETROV
 // Module : VISU
-
-
+//
 #include "VISU_CutPlanesPL.hxx"
 #include "VISU_FieldTransform.hxx"
 #include "VISU_PipeLineUtils.hxx"
 #include "VTKViewer_GeometryFilter.h"
+#include "VISU_MapperHolder.hxx"
+#include "VISU_DeformationPL.hxx"
 
 #include <vtkAppendPolyData.h>
 #include <vtkCutter.h>
 #include <vtkPlane.h>
 
+//#include <vtkUnstructuredGrid.h>
+
 static vtkFloatingPointType EPS = 1.0E-3;
 
+#ifdef _DEBUG_
+static int MYDEBUG = 0;
+#else
+static int MYDEBUG = 0;
+#endif
+
 
 //----------------------------------------------------------------------------
 vtkStandardNewMacro(VISU_CutPlanesPL);
@@ -43,9 +52,15 @@ vtkStandardNewMacro(VISU_CutPlanesPL);
 
 //----------------------------------------------------------------------------
 VISU_CutPlanesPL
-::VISU_CutPlanesPL()
+::VISU_CutPlanesPL():
+  VISU_OptionalDeformationPL()
 {
+  if(MYDEBUG) MESSAGE("VISU_CutPlanesPL()::VISU_CutPlanesPL() - "<<this);
+  
   SetIsShrinkable(false);
+  SetIsFeatureEdgesAllowed(false);
+
+  SetElnoDisassembleState( true );
 
   myAppendPolyData = vtkAppendPolyData::New();
 
@@ -58,6 +73,7 @@ VISU_CutPlanesPL
 
   myAng[0][0] = myAng[0][1] = myAng[0][2] = 0.0;
   myAng[1][0] = myAng[1][1] = myAng[1][2] = 0.0;
+  UseDeformation(false);
 }
 
 
@@ -65,6 +81,7 @@ VISU_CutPlanesPL
 VISU_CutPlanesPL
 ::~VISU_CutPlanesPL()
 {
+  if(MYDEBUG) MESSAGE("VISU_CutPlanesPL()::~VISU_CutPlanesPL() - "<<this);
   myAppendPolyData->Delete();
   myAppendPolyData = NULL;
 }
@@ -76,7 +93,11 @@ VISU_CutPlanesPL
 ::GetMTime()
 {
   unsigned long int aTime = Superclass::GetMTime();
-
+  
+  if(IsDeformed()) {
+    aTime = std::max(aTime, VISU_OptionalDeformationPL::GetMTime());
+  }
+  
   aTime = std::max(aTime, myAppendPolyData->GetMTime());
 
   return aTime;
@@ -113,11 +134,11 @@ VISU_CutPlanesPL
 ::Init()
 {
   Superclass::Init();
-
   SetNbParts(10);
   myBasePlane[0] = YZ;
   myDisplacement[0] = 0.5;
   myAng[0][0] = myAng[0][1] = myAng[0][2] = 0.0;
+  SetScale(VISU_DeformationPL::GetDefaultScaleFactor(this));
 }
 
 
@@ -126,7 +147,7 @@ vtkDataSet*
 VISU_CutPlanesPL
 ::InsertCustomPL()
 {
-  return myAppendPolyData->GetOutput();
+  return GetWarpVectorOutput();
 }
 
 
@@ -137,18 +158,32 @@ VISU_CutPlanesPL
 {
   ClearAppendPolyData(myAppendPolyData);
 
-  SetPartPosition();
 
+  if(!myVectorialField || !IsDeformed()){
+    SetMergeFilterInput(GetMergedInput(),GetMergedInput());
+  }
+  
+
+  if(VISU::IsDataOnCells(GetMergedInput()))
+    GetMapper()->SetScalarModeToUseCellData();
+  else
+    GetMapper()->SetScalarModeToUsePointData();
+
+  SetPartPosition();
+  
   vtkFloatingPointType aDir[3];
   GetDir(aDir, 
         myAng[0], 
         myBasePlane[0]);
-
+  
   vtkFloatingPointType aBounds[6];
-  GetMergedInput()->GetBounds(aBounds);
+
+  vtkDataSet* aFilterOutput = GetMergeFilterOutput();
+  
+  aFilterOutput->GetBounds(aBounds);
 
   CutWithPlanes(myAppendPolyData,
-               GetMergedInput(),
+                aFilterOutput,
                myNbParts,
                aDir,
                aBounds,
@@ -156,6 +191,9 @@ VISU_CutPlanesPL
                myPartCondition, 
                myDisplacement[0]);
 
+  
+
+  SetWarpVectorInput(myAppendPolyData->GetOutput());
   Superclass::Update();
 }
 
@@ -412,7 +450,11 @@ VISU_CutPlanesPL
   vtkFloatingPointType aPosition = myPartPosition[thePartNumber];
   if(myPartCondition[thePartNumber]){
       vtkFloatingPointType aDir[3], aBounds[6], aBoundPrj[3];
-      GetMergedInput()->GetBounds(aBounds);
+      if(!IsDeformed()) 
+        GetMergedInput()->GetBounds(aBounds);
+      else
+        GetMergeFilterOutput()->GetBounds(aBounds);
+
 
       GetDir(aDir,
             myAng[theNum],
@@ -564,3 +606,33 @@ VISU_CutPlanesPL
 
 
 //----------------------------------------------------------------------------
+void
+VISU_CutPlanesPL::SetVectorialField(VISU::PUnstructuredGridIDMapper theMapper)
+{  
+  if(myVectorialField == theMapper)
+    return;
+
+  if(CheckCanDeformate(theMapper->GetOutput())){
+    myVectorialField = theMapper;
+    
+    SetMergeFilterInput(GetMergedInput(),theMapper->GetOutput());
+  }
+  else
+    UseDeformation(false);
+  
+  Modified();
+}
+
+//----------------------------------------------------------------------------
+VISU::PUnstructuredGridIDMapper VISU_CutPlanesPL::
+getVectorialField()
+{
+  return myVectorialField;
+}
+
+//----------------------------------------------------------------------------
+void VISU_CutPlanesPL::SetMapScale(vtkFloatingPointType theMapScale){
+  Superclass::SetMapScale(theMapScale);
+  if(IsDeformed())
+    VISU_OptionalDeformationPL::SetMapScale(theMapScale);
+}
index 27d377fd8971d3ecac67413a3a3f132c601d419f..537d0ba905ad6bdcf9fc5f6c91594496bad13ef7 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_CutPlanesPL.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #ifndef VISU_CutPlanesPL_HeaderFile
 #define VISU_CutPlanesPL_HeaderFile
 
 #include "VISUPipeline.hxx"
 #include "VISU_ScalarMapPL.hxx"
+#include "VISU_OptionalDeformationPL.hxx"
+#include "VISU_MapperHolder.hxx"
 
 #include <vector>
 
@@ -36,7 +38,8 @@ class vtkAppendPolyData;
 
 
 //----------------------------------------------------------------------------
-class VISU_PIPELINE_EXPORT VISU_CutPlanesPL : public VISU_ScalarMapPL
+class VISU_PIPELINE_EXPORT VISU_CutPlanesPL : public VISU_ScalarMapPL,
+                                              public VISU_OptionalDeformationPL
 {
 public:
   vtkTypeMacro(VISU_CutPlanesPL, VISU_ScalarMapPL);
@@ -182,6 +185,14 @@ public:
                const std::vector<int>& thePlaneCondition,
                vtkFloatingPointType theDisplacement);
 
+  virtual void SetVectorialField(VISU::PUnstructuredGridIDMapper);
+  VISU::PUnstructuredGridIDMapper getVectorialField();
+
+  virtual
+  void
+  SetMapScale(vtkFloatingPointType theMapScale = 1.0);
+
+
 protected:
   VISU_CutPlanesPL();
 
index 313c6d683595e6f37b4d510adecc54123e2f4434..88dccf477b1c53a40d1e0ab874cf449834ccf4e0 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_DataSetMapperHolder.cxx
 // Author:  Alexey PETROV
 // Module : VISU
-
-
+//
 #include "VISU_DataSetMapperHolder.hxx"
 #include "SALOME_ExtractGeometry.h"
+#include "VISU_ElnoDisassembleFilter.hxx"
 #include "VISU_LookupTable.hxx"
 
 #include "VISU_PipeLineUtils.hxx"
@@ -41,6 +40,8 @@
 #include <vtkImplicitFunctionCollection.h>
 #include <vtkMath.h>
 
+#include <cmath>
+
 #ifdef _DEBUG_
 static int MYDEBUG = 0;
 #else
@@ -55,10 +56,13 @@ vtkStandardNewMacro(VISU_DataSetMapperHolder);
 //----------------------------------------------------------------------------
 VISU_DataSetMapperHolder
 ::VISU_DataSetMapperHolder():
-  myExtractGeometry(SALOME_ExtractGeometry::New())
+  myElnoDisassembleFilter( VISU_ElnoDisassembleFilter::New() ),
+  myExtractGeometry( SALOME_ExtractGeometry::New() )
 {
   if(MYDEBUG) MESSAGE("VISU_DataSetMapperHolder::VISU_DataSetMapperHolder - "<<this);
 
+  myElnoDisassembleFilter->Delete();
+
   // Clipping functionality
   myExtractGeometry->Delete();
   myExtractGeometry->SetStoreMapping(true);
@@ -92,10 +96,24 @@ VISU_DataSetMapperHolder
     VISU::CopyDataSetMapper(GetDataSetMapper(), 
                            aMapperHolder->GetDataSetMapper(), 
                            theIsCopyInput);
+    myExtractGeometry->SetImplicitFunction(aMapperHolder->GetImplicitFunction());
   }
 }
 
 
+//----------------------------------------------------------------------------
+void
+VISU_DataSetMapperHolder
+::SetElnoDisassembleState( bool theIsShrunk )
+{
+  vtkFloatingPointType aShrinkFactor = std::abs( myElnoDisassembleFilter->GetShrinkFactor() );
+  if ( theIsShrunk )
+    myElnoDisassembleFilter->SetShrinkFactor( aShrinkFactor );
+  else
+    myElnoDisassembleFilter->SetShrinkFactor( -aShrinkFactor );
+}
+
+
 //----------------------------------------------------------------------------
 unsigned long int
 VISU_DataSetMapperHolder
@@ -116,9 +134,10 @@ void
 VISU_DataSetMapperHolder
 ::SetUnstructuredGridIDMapper(const VISU::PUnstructuredGridIDMapper& theIDMapper)
 {
-  myExtractGeometry->SetInput(theIDMapper->GetUnstructuredGridOutput());
+  myElnoDisassembleFilter->SetInput( theIDMapper->GetUnstructuredGridOutput() );
+  myExtractGeometry->SetInput( myElnoDisassembleFilter->GetOutput() );
   myUnstructuredGridIDMapper = theIDMapper;
-  SetIDMapper(theIDMapper);
+  SetIDMapper( theIDMapper );
 }
 
 
@@ -215,7 +234,7 @@ VISU_DataSetMapperHolder
 //----------------------------------------------------------------------------
 vtkFloatingPointType* 
 VISU_DataSetMapperHolder
-::GetNodeCoord(int theObjID)
+::GetNodeCoord(vtkIdType theObjID)
 {
   return Superclass::GetNodeCoord(theObjID);
 }
@@ -297,6 +316,7 @@ VISU_DataSetMapperHolder
     if (vtkImplicitBoolean* aBoolean = myExtractGeometry->GetImplicitBoolean()) {
       vtkImplicitFunctionCollection* aFunction = aBoolean->GetFunction();
       aFunction->AddItem(thePlane);
+      aBoolean->Modified();
       // Check, that at least one cell present after clipping.
       // This check was introduced because of bug IPAL8849.
       vtkDataSet* aClippedDataSet = GetClippedInput();
@@ -326,6 +346,19 @@ VISU_DataSetMapperHolder
   return aPlane;
 }
 
+//----------------------------------------------------------------------------
+void VISU_DataSetMapperHolder::RemoveClippingPlane(vtkIdType theID)
+{
+  if(theID >= 0 && theID < GetNumberOfClippingPlanes()){
+    if(vtkImplicitBoolean* aBoolean = myExtractGeometry->GetImplicitBoolean()){
+      vtkImplicitFunctionCollection* aFunctions = aBoolean->GetFunction();
+      aFunctions->RemoveItem(theID);
+      aBoolean->Modified();
+    }
+  }
+}
+
+
 //----------------------------------------------------------------------------
 void
 VISU_DataSetMapperHolder
index 45fa07fe6d703347cb8f0a29d564f2ca1bc360a0..99cd7ea8d1e5e6964ac9d3af7729f25181472d8a 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_DataSetMapperHolder.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #ifndef VISU_DataSetMapperHolder_HeaderFile
 #define VISU_DataSetMapperHolder_HeaderFile
 
@@ -32,6 +32,7 @@
 class vtkDataSetMapper;
 class vtkUnstructuredGrid;
 class SALOME_ExtractGeometry;
+class VISU_ElnoDisassembleFilter;
 
 
 //----------------------------------------------------------------------------
@@ -50,6 +51,9 @@ public:
   ShallowCopy(VISU_MapperHolder *theMapperHolder,
              bool theIsCopyInput);
 
+  void
+  SetElnoDisassembleState( bool theIsShrunk );
+
   //! Gets memory size used by the instance (bytes).
   virtual
   unsigned long int
@@ -130,6 +134,8 @@ public:
   vtkPlane* 
   GetClippingPlane(vtkIdType theID);
 
+  virtual void RemoveClippingPlane(vtkIdType theID);
+
 protected:
   //----------------------------------------------------------------------------
   VISU_DataSetMapperHolder();
@@ -158,8 +164,9 @@ protected:
 private:
   //----------------------------------------------------------------------------
   VISU::PUnstructuredGridIDMapper myUnstructuredGridIDMapper;
-  vtkSmartPointer<vtkDataSetMapper> myDataSetMapper;
-  vtkSmartPointer<SALOME_ExtractGeometry> myExtractGeometry; //!< Clipping
+  vtkSmartPointer< VISU_ElnoDisassembleFilter > myElnoDisassembleFilter; //!< Handling ELNO data
+  vtkSmartPointer< SALOME_ExtractGeometry > myExtractGeometry; //!< Clipping
+  vtkSmartPointer< vtkDataSetMapper > myDataSetMapper;
 };
 
 #endif
diff --git a/src/PIPELINE/VISU_DeformationPL.cxx b/src/PIPELINE/VISU_DeformationPL.cxx
new file mode 100755 (executable)
index 0000000..2705981
--- /dev/null
@@ -0,0 +1,164 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+// File:    VISU_ScalarMapPL.cxx
+// Author:  Roman NIKOLAEV
+// Module : VISU
+//Salome includes
+//
+#include "VISU_DeformationPL.hxx"
+#include "VISU_MergeFilter.hxx"
+#include "VISU_DeformedShapePL.hxx"
+#include "VISU_PipeLineUtils.hxx"
+
+//VTK includes
+#include <vtkDataSet.h>
+#include <vtkPassThroughFilter.h>
+#include <vtkWarpVector.h>
+#include <vtkCellDataToPointData.h>
+#include <vtkUnstructuredGrid.h>
+#ifdef _DEBUG_
+static int MYDEBUG = 0;
+#else
+static int MYDEBUG = 0;
+#endif
+
+
+//----------------------------------------------------------------------------
+VISU_DeformationPL::VISU_DeformationPL():
+  myScaleFactor(1.0),
+  myMapScaleFactor(1.0)
+{
+  if(MYDEBUG) MESSAGE("VISU_DeformationPL()::VISU_DeformationPL() - "<<this);
+  myWarpVector = vtkWarpVector::New();
+  myWarpVector->SetScaleFactor(myScaleFactor);
+  
+  myVectorMergeFilter = VISU_MergeFilter::New();
+  myVectorMergeFilter->SetMergingInputs(true);
+  myInputPassFilter = vtkPassThroughFilter::New();
+  myOutputPassFiler = vtkPassThroughFilter::New();
+  myCellDataToPointData = vtkCellDataToPointData::New();
+  myCellDataToPointData->PassCellDataOn();
+
+  myInputPassFilter->SetInput(vtkUnstructuredGrid::New());
+
+  myCellDataToPointData->SetInput(myInputPassFilter->GetOutput());
+
+  myWarpVector->SetInput(myCellDataToPointData->GetOutput());
+  
+  myOutputPassFiler->SetInput(myWarpVector->GetOutput());
+}
+
+//----------------------------------------------------------------------------
+VISU_DeformationPL::~VISU_DeformationPL()
+{
+  if(MYDEBUG) MESSAGE("VISU_DeformationPL()::~VISU_DeformationPL() - "<<this);
+  myWarpVector->Delete();
+  myVectorMergeFilter->Delete();
+  myInputPassFilter->Delete();
+  myOutputPassFiler->Delete();
+  myCellDataToPointData->Delete();
+}
+
+
+//----------------------------------------------------------------------------
+unsigned long int 
+VISU_DeformationPL::GetMTime(){
+  unsigned long int aTime = std::max(myWarpVector->GetMTime(), 
+                                     myVectorMergeFilter->GetMTime());
+
+  aTime = std::max(aTime,myInputPassFilter->GetMTime());
+  aTime = std::max(aTime,myOutputPassFiler->GetMTime());
+  aTime = std::max(aTime,myCellDataToPointData->GetMTime());
+  return 0;
+}
+
+//----------------------------------------------------------------------------
+void VISU_DeformationPL::SetScale(vtkFloatingPointType theScaleFactor)
+{
+  if(myScaleFactor == theScaleFactor)
+    return;
+  myScaleFactor = theScaleFactor;
+  myWarpVector->SetScaleFactor(myScaleFactor*myMapScaleFactor);
+}
+
+void VISU_DeformationPL::SetMapScale(vtkFloatingPointType theMapScaleFactor)
+{
+  if(myMapScaleFactor == theMapScaleFactor)
+    return;
+  myMapScaleFactor = theMapScaleFactor;
+  
+  myWarpVector->SetScaleFactor(myScaleFactor*myMapScaleFactor);
+}
+
+
+vtkFloatingPointType VISU_DeformationPL::GetScale()
+{
+  return myScaleFactor;
+}
+
+//----------------------------------------------------------------------------
+void VISU_DeformationPL::SetWarpVectorInput(vtkDataSet *theInput)
+{
+  myInputPassFilter->SetInput(theInput);
+}
+
+//----------------------------------------------------------------------------
+vtkDataSet* VISU_DeformationPL::GetWarpVectorOutput()
+{
+  return myOutputPassFiler->GetOutput();
+}
+
+//----------------------------------------------------------------------------
+void VISU_DeformationPL::SetMergeFilterInput(vtkDataSet* ScalarInput,
+                         vtkDataSet* VectorialInput)
+{
+  myVectorMergeFilter->SetScalars(ScalarInput);
+  myVectorMergeFilter->AddField("VISU_CELLS_MAPPER",ScalarInput);
+  myVectorMergeFilter->AddField("VISU_POINTS_MAPPER",ScalarInput);
+  
+  myVectorMergeFilter->SetGeometry(VectorialInput);
+  myVectorMergeFilter->SetVectors(VectorialInput);
+}
+
+//----------------------------------------------------------------------------
+vtkDataSet* VISU_DeformationPL::GetMergeFilterOutput(){
+ return myVectorMergeFilter->GetOutput();
+}
+
+//----------------------------------------------------------------------------
+vtkFloatingPointType VISU_DeformationPL::GetDefaultScaleFactor(VISU_DeformationPL *thePipeLine)
+{
+  if(!thePipeLine || !thePipeLine->GetMergeFilterOutput())
+    return 0.0;
+  
+  vtkFloatingPointType aSourceRange[2];
+  thePipeLine->GetMergeFilterOutput()->GetScalarRange(aSourceRange);
+  
+  static vtkFloatingPointType EPS = 1.0 / VTK_LARGE_FLOAT;
+  if(fabs(aSourceRange[1]) > EPS){
+    vtkDataSet* aDataSet = thePipeLine->GetMergeFilterOutput();
+    vtkFloatingPointType aScaleFactor = VISU_DeformedShapePL::GetScaleFactor(aDataSet);
+    return aScaleFactor / aSourceRange[1];
+  }
+  return 0.0;
+}
+
diff --git a/src/PIPELINE/VISU_DeformationPL.hxx b/src/PIPELINE/VISU_DeformationPL.hxx
new file mode 100755 (executable)
index 0000000..85409d3
--- /dev/null
@@ -0,0 +1,87 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  File   : VISU_DeformationPL.hxx
+//  Author : 
+//  Module : SALOME
+//
+#ifndef VISU_DeformationPL_HeaderFile
+#define VISU_DeformationPL_HeaderFile
+
+#include "VISUPipeline.hxx"
+#include "VISU_MapperHolder.hxx"
+#include <vtkSmartPointer.h>
+
+class vtkDataSet;
+class VISU_MergeFilter;
+class vtkPassThroughFilter;
+class vtkWarpVector;
+class vtkCellDataToPointData;
+
+class VISU_PIPELINE_EXPORT VISU_DeformationPL {
+  
+public:
+  VISU_DeformationPL();
+  virtual ~VISU_DeformationPL();
+
+  //-----------------------------------------------------------
+  virtual void SetScale(vtkFloatingPointType theScaleFactor);
+  virtual void SetMapScale(vtkFloatingPointType theMapScaleFactor);
+  virtual vtkFloatingPointType GetScale();
+
+  //-----------------------------------------------------------
+  virtual void SetVectorialField(VISU::PUnstructuredGridIDMapper theIdMapper) = 0;
+  virtual VISU::PUnstructuredGridIDMapper getVectorialField() = 0;
+
+
+  //-----------------------------------------------------------
+  virtual 
+  unsigned 
+  long int
+  GetMTime();
+
+  static vtkFloatingPointType GetDefaultScaleFactor(VISU_DeformationPL *thePipeLine);
+
+  void SetWarpVectorInput(vtkDataSet *theInput);
+  vtkDataSet* GetWarpVectorOutput();
+
+  //-----------------------------------------------------------
+  void SetMergeFilterInput(vtkDataSet* ScalarInput,
+                           vtkDataSet* VectorialInput);
+
+  vtkDataSet* GetMergeFilterOutput();
+
+protected:
+
+  VISU::PUnstructuredGridIDMapper myVectorialField;
+  vtkWarpVector *myWarpVector;
+  vtkSmartPointer<VISU_MergeFilter> myVectorMergeFilter;
+  vtkPassThroughFilter *myInputPassFilter;
+  vtkPassThroughFilter *myOutputPassFiler;
+  vtkCellDataToPointData *myCellDataToPointData;
+
+private:
+  vtkFloatingPointType myScaleFactor;
+  vtkFloatingPointType myMapScaleFactor;
+
+};
+
+#endif
diff --git a/src/PIPELINE/VISU_DeformedGridPL.cxx b/src/PIPELINE/VISU_DeformedGridPL.cxx
new file mode 100644 (file)
index 0000000..e0a85cb
--- /dev/null
@@ -0,0 +1,237 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+// File:    VISU_DeformedGridPL.cxx
+// Author:  Alexey PETROV
+// Module : VISU
+//
+#include "VISU_DeformedGridPL.hxx"
+#include "VISU_FieldTransform.hxx"
+#include "VISU_Plot3DPL.hxx"
+
+#include "VISU_PipeLineUtils.hxx"
+
+#include <vtkPolyDataMapper.h>
+#include <vtkContourFilter.h>
+#include <vtkWarpScalar.h>
+
+
+//----------------------------------------------------------------------------
+vtkStandardNewMacro(VISU_DeformedGridPL);
+
+
+//----------------------------------------------------------------------------
+VISU_DeformedGridPL
+::VISU_DeformedGridPL():
+  myContourFilter(vtkContourFilter::New()),
+  myWarpScalar(vtkWarpScalar::New()),
+  myIsContour(false),
+  myScaleFactor(1.0),
+  myMapScaleFactor(1.0)
+{
+  SetIsShrinkable(false);
+  SetNumberOfContours(32);
+}
+
+
+//----------------------------------------------------------------------------
+VISU_DeformedGridPL
+::~VISU_DeformedGridPL()
+{}
+
+
+//----------------------------------------------------------------------------
+unsigned long int 
+VISU_DeformedGridPL
+::GetMTime()
+{
+  unsigned long int aTime = Superclass::GetMTime();
+
+  aTime = std::max(aTime, myContourFilter->GetMTime());
+  aTime = std::max(aTime, myWarpScalar->GetMTime());
+
+  return aTime;
+}
+
+
+//----------------------------------------------------------------------------
+unsigned long int
+VISU_DeformedGridPL
+::GetMemorySize()
+{
+  unsigned long int aSize = Superclass::GetMemorySize();
+
+  if(vtkDataObject* aDataObject = myContourFilter->GetInput())
+    aSize += aDataObject->GetActualMemorySize() * 1024;
+
+  if(vtkDataObject* aDataObject = myWarpScalar->GetInput())
+    aSize += aDataObject->GetActualMemorySize() * 1024;
+
+  return aSize;
+}
+
+
+//----------------------------------------------------------------------------
+void
+VISU_DeformedGridPL
+::DoShallowCopy(VISU_PipeLine *thePipeLine,
+               bool theIsCopyInput)
+{
+  Superclass::DoShallowCopy(thePipeLine, theIsCopyInput);
+
+  if(VISU_DeformedGridPL *aPipeLine = dynamic_cast<VISU_DeformedGridPL*>(thePipeLine)){
+    SetScaleFactor( aPipeLine->GetScaleFactor() );
+    SetContourPrs( aPipeLine->GetIsContourPrs() );
+    SetNumberOfContours( aPipeLine->GetNumberOfContours() );
+  }
+}
+
+
+//----------------------------------------------------------------------------
+void
+VISU_DeformedGridPL
+::Init()
+{
+  Superclass::Init();
+
+  vtkPointSet* aPointSet = GetFieldTransformFilter()->GetPolyDataOutput();
+  SetScaleFactor( VISU_Plot3DPL::GetScaleFactor( this, aPointSet ) );
+}
+
+
+//----------------------------------------------------------------------------
+void
+VISU_DeformedGridPL
+::Build()
+{
+  Superclass::Build();
+
+  myWarpScalar->SetInput( GetFieldTransformFilter()->GetPolyDataOutput() );
+  GetPolyDataMapper()->SetInput( myWarpScalar->GetPolyDataOutput() );
+}
+
+
+//----------------------------------------------------------------------------
+void
+VISU_DeformedGridPL
+::Update()
+{
+  vtkPointSet* aPointSet = GetFieldTransformFilter()->GetPolyDataOutput();
+  if ( !myIsContour ) // surface prs
+  {
+    myWarpScalar->SetInput( aPointSet );
+  }
+  else // contour prs
+  {
+    myContourFilter->SetInput( aPointSet );
+
+    vtkFloatingPointType aScalarRange[2];
+    GetSourceRange( aScalarRange );
+
+    myContourFilter->GenerateValues( GetNumberOfContours(), aScalarRange );
+    myWarpScalar->SetInput( myContourFilter->GetOutput() );
+  }
+
+  Superclass::Update();
+}
+
+
+//----------------------------------------------------------------------------
+void
+VISU_DeformedGridPL
+::SetNumberOfContours(int theNumber)
+{
+  myContourFilter->SetNumberOfContours(theNumber);
+}
+
+
+//----------------------------------------------------------------------------
+int
+VISU_DeformedGridPL
+::GetNumberOfContours()
+{
+  return myContourFilter->GetNumberOfContours();
+}
+
+
+//----------------------------------------------------------------------------
+void
+VISU_DeformedGridPL
+::SetScaleFactor(vtkFloatingPointType theScaleFactor)
+{
+  if ( VISU::CheckIsSameValue( myWarpScalar->GetScaleFactor(), theScaleFactor ) )
+    return;
+
+  myScaleFactor = theScaleFactor;
+  myWarpScalar->SetScaleFactor(theScaleFactor*myMapScaleFactor);
+}
+
+
+//----------------------------------------------------------------------------
+vtkFloatingPointType
+VISU_DeformedGridPL
+::GetScaleFactor()
+{
+  return myScaleFactor;
+}
+
+
+//----------------------------------------------------------------------------
+void
+VISU_DeformedGridPL
+::SetContourPrs(bool theIsContourPrs )
+{
+  if(myIsContour == theIsContourPrs)
+    return;
+
+  myIsContour = theIsContourPrs;
+  Modified();
+}
+
+
+//----------------------------------------------------------------------------
+bool
+VISU_DeformedGridPL
+::GetIsContourPrs()
+{
+  return myIsContour;
+}
+
+
+//----------------------------------------------------------------------------
+void 
+VISU_DeformedGridPL
+::SetMapScale(vtkFloatingPointType theMapScale)
+{
+  Superclass::SetMapScale(theMapScale);
+  myMapScaleFactor = theMapScale;
+
+  if ( myIsContour ) {
+    vtkFloatingPointType aSourceRange[2];
+    GetSourceRange( aSourceRange );
+    vtkFloatingPointType aDeltaRange = aSourceRange[1] - aSourceRange[0];
+    vtkFloatingPointType aNewRange[2] = { aSourceRange[1] - theMapScale*aDeltaRange, aSourceRange[1] };
+    myContourFilter->GenerateValues( GetNumberOfContours(), aNewRange );
+  }
+
+  myWarpScalar->SetScaleFactor( myScaleFactor * theMapScale );
+}
diff --git a/src/PIPELINE/VISU_DeformedGridPL.hxx b/src/PIPELINE/VISU_DeformedGridPL.hxx
new file mode 100644 (file)
index 0000000..90c1604
--- /dev/null
@@ -0,0 +1,116 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+// File:    VISU_ScalarMapPL.hxx
+// Author:  Alexey PETROV
+// Module : VISU
+//
+#ifndef VISU_DeformedGridPL_HeaderFile
+#define VISU_DeformedGridPL_HeaderFile
+
+#include "VISUPipeline.hxx"
+#include "VISU_PolyDataPL.hxx"
+
+class vtkWarpScalar;
+class vtkContourFilter;
+
+
+//----------------------------------------------------------------------------
+class VISU_PIPELINE_EXPORT VISU_DeformedGridPL : public VISU_PolyDataPL
+{
+public:
+  vtkTypeMacro(VISU_DeformedGridPL, VISU_PolyDataPL);
+
+  static 
+  VISU_DeformedGridPL* 
+  New();
+
+  //----------------------------------------------------------------------------
+  virtual
+  unsigned long int 
+  GetMTime();
+
+  //! Gets memory size used by the instance (bytes).
+  virtual
+  unsigned long int
+  GetMemorySize();
+
+  //----------------------------------------------------------------------------
+  void
+  SetScaleFactor( vtkFloatingPointType theScaleFactor );
+
+  vtkFloatingPointType
+  GetScaleFactor();
+
+  void
+  SetContourPrs( bool theIsContourPrs );
+
+  bool
+  GetIsContourPrs();
+
+  void
+  SetNumberOfContours( int theNumber );
+
+  int
+  GetNumberOfContours();
+
+  virtual
+  void
+  SetMapScale(vtkFloatingPointType theMapScale = 1.0);
+
+  //----------------------------------------------------------------------------
+  virtual
+  void
+  Init();
+
+  virtual
+  void
+  Update();
+
+protected:
+  //----------------------------------------------------------------------------
+  VISU_DeformedGridPL();
+  
+  virtual
+  ~VISU_DeformedGridPL();
+
+  virtual
+  void
+  Build();
+
+  virtual
+  void
+  DoShallowCopy(VISU_PipeLine *thePipeLine,
+               bool theIsCopyInput);
+
+private:
+  VISU_DeformedGridPL(const VISU_DeformedGridPL&);  // Not implemented.
+  void operator=(const VISU_DeformedGridPL&);  // Not implemented.
+
+  vtkFloatingPointType myScaleFactor;
+  vtkFloatingPointType myMapScaleFactor;
+  vtkContourFilter* myContourFilter;
+  vtkWarpScalar *myWarpScalar;
+  bool myIsContour;
+};
+  
+#endif
diff --git a/src/PIPELINE/VISU_DeformedShapeAndScalarMapPL.cxx b/src/PIPELINE/VISU_DeformedShapeAndScalarMapPL.cxx
new file mode 100644 (file)
index 0000000..001eb96
--- /dev/null
@@ -0,0 +1,463 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU DeformedShapeAndScalarMapPL
+// File:    VISU_DeformedShapeAndScalarMapPL.cxx
+// Author:  Eugeny Nikolaev
+// Module : VISU
+//
+#include "VISU_DeformedShapeAndScalarMapPL.hxx"
+#include "VISU_FieldTransform.hxx"
+#include "VISU_Extractor.hxx"
+#include "VISU_LookupTable.hxx"
+#include "VISU_DeformedShapePL.hxx"
+#include "VTKViewer_TransformFilter.h"
+#include "VTKViewer_Transform.h"
+#include "VISU_MergeFilter.hxx"
+#include "VISU_ElnoDisassembleFilter.hxx"
+#include "VISU_PipeLineUtils.hxx"
+#include "SALOME_ExtractGeometry.h"
+
+#include <vtkPlane.h>
+#include <vtkWarpVector.h>
+#include <vtkImplicitBoolean.h>
+#include <vtkImplicitFunction.h>
+#include <vtkUnstructuredGrid.h>
+#include <vtkCellDataToPointData.h>
+#include <vtkPointDataToCellData.h>
+#include <vtkImplicitFunctionCollection.h>
+
+
+//----------------------------------------------------------------------------
+vtkStandardNewMacro(VISU_DeformedShapeAndScalarMapPL)
+
+//----------------------------------------------------------------------------
+/*!
+ * Constructor. Creating new instances of vtkWarpVector,vtkMergeFilter,vtkUnstructuredGrid
+ * Where:
+ * \li myDeformVectors is vtkWarpVector  - deformation vectors data
+ * \li myScalarsMergeFilter   is vtkMergeFilter - merge filter.
+ * Merge filter which unify the deformation and scalars
+ * \li myScalars is vtk shared pointer to vtkUnstructuredGrid - scalars data
+*/
+VISU_DeformedShapeAndScalarMapPL
+::VISU_DeformedShapeAndScalarMapPL():
+  myScaleFactor(1.0),
+  myMapScaleFactor(1.0)
+{
+  myWarpVector = vtkWarpVector::New();
+
+  myScalarsMergeFilter = VISU_MergeFilter::New();
+  myScalarsMergeFilter->SetMergingInputs(true);
+
+  myScalarsExtractor = VISU_Extractor::New();
+
+  myScalarsFieldTransform = VISU_FieldTransform::New();
+
+  myCellDataToPointData = vtkCellDataToPointData::New();
+  myScalarsElnoDisassembleFilter = VISU_ElnoDisassembleFilter::New();
+
+  vtkImplicitBoolean* anImplicitBoolean = vtkImplicitBoolean::New();
+  anImplicitBoolean->SetOperationTypeToIntersection();
+
+  myExtractGeometry = SALOME_ExtractGeometry::New();
+  myExtractGeometry->SetImplicitFunction(anImplicitBoolean);
+}
+
+//----------------------------------------------------------------------------
+/*!
+ * Destructor.
+ * Delete all fields.
+*/
+VISU_DeformedShapeAndScalarMapPL
+::~VISU_DeformedShapeAndScalarMapPL()
+{
+  myWarpVector->Delete();
+
+  myScalarsMergeFilter->Delete();
+  
+  myScalarsExtractor->Delete();
+
+  myScalarsFieldTransform->Delete();
+
+  myCellDataToPointData->Delete();
+}
+
+//----------------------------------------------------------------------------
+/*!
+ * Initial method
+ */
+void
+VISU_DeformedShapeAndScalarMapPL
+::Init()
+{
+  Superclass::Init();
+  
+  SetScale(VISU_DeformedShapePL::GetDefaultScale(this));
+}
+
+//----------------------------------------------------------------------------
+/*!
+ * Build method
+ * Building of deformation and puts result to merge filter.
+ */
+void
+VISU_DeformedShapeAndScalarMapPL
+::Build()
+{
+  Superclass::Build();
+}
+
+
+//----------------------------------------------------------------------------
+vtkDataSet* 
+VISU_DeformedShapeAndScalarMapPL
+::InsertCustomPL()
+{
+  GetMapper()->SetColorModeToMapScalars();
+  GetMapper()->ScalarVisibilityOn();
+
+  VISU::CellDataToPoint(myWarpVector,
+                       myCellDataToPointData,
+                       GetMergedInput());
+  
+  myScalars = GetMergedInput();
+
+  UpdateScalars();
+
+  myScalarsFieldTransform->SetInput(myScalarsExtractor->GetOutput());
+
+  // Sets geometry for merge filter
+  myScalarsMergeFilter->SetGeometry(myWarpVector->GetUnstructuredGridOutput());
+
+  vtkDataSet* aScalarsDataSet = myScalarsFieldTransform->GetOutput();
+  myScalarsMergeFilter->SetScalars(aScalarsDataSet);
+  myScalarsMergeFilter->AddField("VISU_CELLS_MAPPER", aScalarsDataSet);
+  myScalarsMergeFilter->AddField("VISU_POINTS_MAPPER", aScalarsDataSet);
+
+  return myScalarsMergeFilter->GetOutput();
+}
+
+
+//----------------------------------------------------------------------------
+/*!
+ *  Update method
+ */
+void
+VISU_DeformedShapeAndScalarMapPL
+::Update()
+{
+  Superclass::Update();
+  //{
+  //  std::string aFileName = std::string(getenv("HOME"))+"/"+getenv("USER")+"-myScalarsExtractor.vtk";
+  //  VISU::WriteToFile(myScalarsExtractor->GetUnstructuredGridOutput(), aFileName);
+  //}
+  //{
+  //  std::string aFileName = std::string(getenv("HOME"))+"/"+getenv("USER")+"-myWarpVector.vtk";
+  //  VISU::WriteToFile(myWarpVector->GetUnstructuredGridOutput(), aFileName);
+  //}
+  //{
+  //  std::string aFileName = std::string(getenv("HOME"))+"/"+getenv("USER")+"-myScalarsMergeFilter.vtk";
+  //  VISU::WriteToFile(myScalarsMergeFilter->GetUnstructuredGridOutput(), aFileName);
+  //}
+}
+
+//----------------------------------------------------------------------------
+unsigned long int
+VISU_DeformedShapeAndScalarMapPL
+::GetMemorySize()
+{
+  unsigned long int aSize = Superclass::GetMemorySize();
+
+  if(vtkDataSet* aDataSet = myWarpVector->GetOutput())
+    aSize += aDataSet->GetActualMemorySize() * 1024;
+  
+  if(vtkDataSet* aDataSet = myScalarsExtractor->GetOutput())
+    aSize += aDataSet->GetActualMemorySize() * 1024;
+
+  if(vtkDataSet* aDataSet = myScalarsMergeFilter->GetOutput())
+    aSize += aDataSet->GetActualMemorySize() * 1024;
+
+  if(myCellDataToPointData->GetInput())
+    if(vtkDataSet* aDataSet = myCellDataToPointData->GetOutput())
+      aSize += aDataSet->GetActualMemorySize() * 1024;
+
+  return aSize;
+}
+
+//----------------------------------------------------------------------------
+/*!
+ * Update scalars method.
+ * Put scalars to merge filter.
+ */
+void
+VISU_DeformedShapeAndScalarMapPL
+::UpdateScalars()
+{
+  vtkDataSet* aScalars = GetScalars();
+  myScalarsElnoDisassembleFilter->SetInput(aScalars);
+  myExtractGeometry->SetInput(myScalarsElnoDisassembleFilter->GetOutput());
+  myScalarsExtractor->SetInput(myExtractGeometry->GetOutput());
+
+  if(VISU::IsDataOnCells(myScalarsElnoDisassembleFilter->GetOutput()))
+    GetMapper()->SetScalarModeToUseCellData();
+  else
+    GetMapper()->SetScalarModeToUsePointData();
+}
+
+//----------------------------------------------------------------------------
+/*!
+ * Copy information about pipline.
+ * Copy scale and scalars.
+ */
+void
+VISU_DeformedShapeAndScalarMapPL
+::DoShallowCopy(VISU_PipeLine *thePipeLine,
+               bool theIsCopyInput)
+{
+  Superclass::DoShallowCopy(thePipeLine, theIsCopyInput);
+
+  if(VISU_DeformedShapeAndScalarMapPL *aPipeLine = dynamic_cast<VISU_DeformedShapeAndScalarMapPL*>(thePipeLine)){
+     SetImplicitFunction(aPipeLine->GetImplicitFunction());
+     SetScale(aPipeLine->GetScale());
+     SetScalars(aPipeLine->GetScalars());
+  }
+}
+
+//----------------------------------------------------------------------------
+/*!
+ * Set scalars.
+ * Sets vtkDataSet with scalars values to VISU_Extractor filter for scalars extraction.
+ */
+void
+VISU_DeformedShapeAndScalarMapPL
+::SetScalars(vtkDataSet *theScalars)
+{
+  if(GetScalars() == theScalars)
+    return;
+  
+  myScalars = theScalars;
+  UpdateScalars();
+}
+
+//----------------------------------------------------------------------------
+/*!
+ * Get pointer to input scalars.
+ */
+vtkDataSet* 
+VISU_DeformedShapeAndScalarMapPL
+::GetScalars()
+{
+  return myScalars.GetPointer();
+}
+
+//----------------------------------------------------------------------------
+/*!
+ * Removes all clipping planes (for myScalars)
+ */
+void
+VISU_DeformedShapeAndScalarMapPL
+::RemoveAllClippingPlanes()
+{
+  if(vtkImplicitBoolean* aBoolean = myExtractGeometry->GetImplicitBoolean()){
+    vtkImplicitFunctionCollection* aFunction = aBoolean->GetFunction();
+    aFunction->RemoveAllItems();
+    aBoolean->Modified();
+  }
+  Superclass::RemoveAllClippingPlanes();
+}
+
+//----------------------------------------------------------------------------
+/*!
+ * Removes a clipping plane (for myScalars)
+ */
+void
+VISU_DeformedShapeAndScalarMapPL
+::RemoveClippingPlane(vtkIdType theID)
+{
+  if(vtkImplicitBoolean* aBoolean = myExtractGeometry->GetImplicitBoolean()){
+    vtkImplicitFunctionCollection* aFunction = aBoolean->GetFunction();
+    if(theID >= 0 && theID < aFunction->GetNumberOfItems())
+      aFunction->RemoveItem(theID);
+    aBoolean->Modified();
+  }
+  Superclass::RemoveClippingPlane(theID);
+}
+
+//----------------------------------------------------------------------------
+/*!
+ * Adds a clipping plane (for myScalars)
+ */
+bool 
+VISU_DeformedShapeAndScalarMapPL
+::AddClippingPlane(vtkPlane* thePlane)
+{
+  if (thePlane) {
+    if (vtkImplicitBoolean* aBoolean = myExtractGeometry->GetImplicitBoolean()) {
+      vtkImplicitFunctionCollection* aFunction = aBoolean->GetFunction();
+      aFunction->AddItem(thePlane);
+
+      // Check, that at least one cell present after clipping.
+      // This check was introduced because of bug IPAL8849.
+      vtkDataSet* aClippedDataSet = GetClippedInput();
+      if(aClippedDataSet->GetNumberOfCells() < 1)
+        return false;
+    }
+  }
+  return Superclass::AddClippingPlane(thePlane);
+}
+
+//----------------------------------------------------------------------------
+/*!
+ * Sets implicit function of clipping
+ */
+void
+VISU_DeformedShapeAndScalarMapPL
+::SetImplicitFunction(vtkImplicitFunction *theFunction)
+{
+  myExtractGeometry->SetImplicitFunction(theFunction);
+} 
+
+//----------------------------------------------------------------------------
+/*!
+ * Gets implicit function of clipping
+ */
+vtkImplicitFunction * 
+VISU_DeformedShapeAndScalarMapPL
+::GetImplicitFunction()
+{
+  return myExtractGeometry->GetImplicitFunction();
+}
+
+//----------------------------------------------------------------------------
+/*!
+ * Sets scale for deformed shape
+ */
+void
+VISU_DeformedShapeAndScalarMapPL
+::SetScale(vtkFloatingPointType theScale) 
+{
+  if(VISU::CheckIsSameValue(myScaleFactor, theScale))
+    return;
+
+  myScaleFactor = theScale;
+  myWarpVector->SetScaleFactor(theScale*myMapScaleFactor);
+}
+
+//----------------------------------------------------------------------------
+/*!
+ * Gets scale of deformed shape.
+ */
+vtkFloatingPointType
+VISU_DeformedShapeAndScalarMapPL
+::GetScale() 
+{
+  return myScaleFactor;
+}
+
+//----------------------------------------------------------------------------
+/*!
+ * Set scale factor of deformation.
+ */
+void
+VISU_DeformedShapeAndScalarMapPL
+::SetMapScale(vtkFloatingPointType theMapScale)
+{
+  myMapScaleFactor = theMapScale;
+  Superclass::SetMapScale(theMapScale);
+  myWarpVector->SetScaleFactor(myScaleFactor*theMapScale);
+}
+
+//----------------------------------------------------------------------------
+/*!
+ * Gets scalar mode.
+ */
+int
+VISU_DeformedShapeAndScalarMapPL
+::GetScalarMode()
+{
+  return myScalarsExtractor->GetScalarMode();
+}
+
+//----------------------------------------------------------------------------
+/*!
+ * Sets scalar mode.
+ */
+void
+VISU_DeformedShapeAndScalarMapPL
+::SetScalarMode(int theScalarMode)
+{
+  VISU_ScalarMapPL::SetScalarMode(theScalarMode, GetScalars(), myScalarsExtractor);
+}
+
+//----------------------------------------------------------------------------
+void
+VISU_DeformedShapeAndScalarMapPL
+::SetScaling(int theScaling) 
+{
+  if(GetScaling() == theScaling)
+    return;
+
+  GetBarTable()->SetScale(theScaling);
+
+  if(theScaling == VTK_SCALE_LOG10)
+    myScalarsFieldTransform->SetScalarTransform(&(VISU_FieldTransform::Log10));
+  else
+    myScalarsFieldTransform->SetScalarTransform(&(VISU_FieldTransform::Ident));
+}
+
+
+//----------------------------------------------------------------------------
+void
+VISU_DeformedShapeAndScalarMapPL
+::SetScalarRange(vtkFloatingPointType theRange[2])
+{
+  if(VISU::CheckIsSameRange(theRange, GetScalarRange()))
+    return;
+
+  myScalarsFieldTransform->SetScalarRange(theRange);
+  GetBarTable()->SetRange(theRange);
+}
+
+
+//----------------------------------------------------------------------------
+vtkFloatingPointType* 
+VISU_DeformedShapeAndScalarMapPL
+::GetScalarRange() 
+{
+  return myScalarsFieldTransform->GetScalarRange();
+}
+
+
+//----------------------------------------------------------------------------
+/*!
+ * Gets ranges of extracted scalars
+ * \param theRange[2] - output values
+ * \li theRange[0] - minimum value
+ * \li theRange[1] - maximum value
+ */
+void 
+VISU_DeformedShapeAndScalarMapPL
+::GetSourceRange(vtkFloatingPointType theRange[2])
+{
+  myScalarsExtractor->Update();
+  myScalarsExtractor->GetUnstructuredGridOutput()->GetScalarRange(theRange);
+}
diff --git a/src/PIPELINE/VISU_DeformedShapeAndScalarMapPL.hxx b/src/PIPELINE/VISU_DeformedShapeAndScalarMapPL.hxx
new file mode 100644 (file)
index 0000000..05eedb5
--- /dev/null
@@ -0,0 +1,172 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+// File:    VISU_DeformedShapeAndScalarMapPL.hxx
+// Author:  Eugeny Nikolaev
+// Module : VISU
+//
+#ifndef VISU_DeformedShapeAndScalarMapPL_HeaderFile
+#define VISU_DeformedShapeAndScalarMapPL_HeaderFile
+
+#include "VISUPipeline.hxx"
+#include "VISU_ScalarMapPL.hxx"
+
+class VISU_MergeFilter;
+class vtkWarpVector;
+class vtkUnstructuredGrid;
+class vtkCellDataToPointData;
+class vtkPointDataToCellData;
+class VISU_ElnoDisassembleFilter;
+class SALOME_ExtractGeometry;
+class vtkImplicitFunction;
+
+
+//----------------------------------------------------------------------------
+class VISU_PIPELINE_EXPORT VISU_DeformedShapeAndScalarMapPL : public VISU_ScalarMapPL
+{
+public:
+  vtkTypeMacro(VISU_DeformedShapeAndScalarMapPL, VISU_ScalarMapPL);
+
+  static 
+  VISU_DeformedShapeAndScalarMapPL* 
+  New();
+
+  virtual
+  void
+  SetScale(vtkFloatingPointType theScale);
+
+  virtual
+  vtkFloatingPointType
+  GetScale();
+
+  virtual
+  int
+  GetScalarMode();
+
+  virtual
+  void
+  SetScalarMode(int theScalarMode = 0);
+
+  virtual
+  void
+  SetScaling(int theScaling);
+  
+  virtual
+  void
+  SetScalarRange(vtkFloatingPointType theRange[2]);
+
+  virtual
+  vtkFloatingPointType* 
+  GetScalarRange();
+
+  virtual
+  void
+  GetSourceRange(vtkFloatingPointType theRange[2]);
+
+  virtual
+  void
+  SetScalars(vtkDataSet *theScalars);
+
+  virtual
+  vtkDataSet* 
+  GetScalars();
+
+  virtual
+  void 
+  RemoveAllClippingPlanes();
+
+  virtual
+  void
+  RemoveClippingPlane(vtkIdType theID);
+
+  virtual
+  bool
+  AddClippingPlane(vtkPlane* thePlane);
+
+  virtual
+  void
+  SetImplicitFunction(vtkImplicitFunction *theFunction);
+
+  virtual
+  vtkImplicitFunction* 
+  GetImplicitFunction();
+
+public:
+  //! Redefined method for initialization of the pipeline.
+  virtual
+  void
+  Init();
+
+  //! Redefined method for building the pipeline.
+  virtual
+  void
+  Build();
+
+  //! Redefined method for updating the pipeline.
+  virtual
+  void
+  Update();
+
+  //! Gets memory size used by the instance (bytes).
+  virtual
+  unsigned long int
+  GetMemorySize();
+
+  //! Update scalars.
+  void
+  UpdateScalars();
+  
+  virtual
+  void
+  SetMapScale(vtkFloatingPointType theMapScale = 1.0);
+  
+protected:
+  VISU_DeformedShapeAndScalarMapPL();
+  
+  virtual
+  ~VISU_DeformedShapeAndScalarMapPL();
+  
+  virtual
+  vtkDataSet* 
+  InsertCustomPL();
+
+  virtual
+  void
+  DoShallowCopy(VISU_PipeLine *thePipeLine,
+               bool theIsCopyInput);
+
+private:
+  VISU_DeformedShapeAndScalarMapPL(const VISU_DeformedShapeAndScalarMapPL&);
+
+  vtkFloatingPointType myScaleFactor;
+  vtkFloatingPointType myMapScaleFactor;
+  vtkWarpVector  *myWarpVector;
+  VISU_MergeFilter *myScalarsMergeFilter;
+  vtkSmartPointer<vtkUnstructuredGrid> myScalars;
+  vtkCellDataToPointData* myCellDataToPointData;
+  VISU_FieldTransform* myScalarsFieldTransform;
+  VISU_Extractor* myScalarsExtractor;
+  VISU_ElnoDisassembleFilter* myScalarsElnoDisassembleFilter;
+  SALOME_ExtractGeometry* myExtractGeometry;
+};
+
+#endif
index 6631af081dda168fcf1ec15b0334ffc25b797cec..2f316876249a94e2357e0bf301f824f71b8ea0ef 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_PipeLine.cxx
 // Author:  Alexey PETROV
 // Module : VISU
-
-
+//
 #include "VISU_DeformedShapePL.hxx"
 #include "VISU_PipeLineUtils.hxx"
 #include "VTKViewer_Transform.h"
@@ -39,9 +38,11 @@ vtkStandardNewMacro(VISU_DeformedShapePL);
 //----------------------------------------------------------------------------
 VISU_DeformedShapePL
 ::VISU_DeformedShapePL():
-  myScaleFactor(0.0)
+  myScaleFactor(0.0),
+  myMapScaleFactor(1.0)
 {
   SetIsShrinkable(true);
+  SetIsFeatureEdgesAllowed(true);
 
   myWarpVector = vtkWarpVector::New();
   myCellDataToPointData = vtkCellDataToPointData::New();
@@ -109,6 +110,8 @@ VISU_DeformedShapePL
       aVolume *= aVol;
     }
   }
+  if( aNbElem == 0 || fabs(idim) < 1.0 / VTK_LARGE_FLOAT )
+    return 0.0; // to avoid division by zero
   aVolume /= aNbElem;
   return pow(aVolume, vtkFloatingPointType(1.0/idim));
 }
@@ -139,8 +142,8 @@ VISU_DeformedShapePL
 {
   if(VISU::CheckIsSameValue(myWarpVector->GetScaleFactor(), theScale))
     return;
-
-  myWarpVector->SetScaleFactor(theScale);
+  
+  myWarpVector->SetScaleFactor(theScale*myMapScaleFactor);
   myScaleFactor = theScale;
 }
 
@@ -215,9 +218,14 @@ void
 VISU_DeformedShapePL
 ::SetMapScale(vtkFloatingPointType theMapScale)
 {
+  myMapScaleFactor = theMapScale;
   Superclass::SetMapScale(theMapScale);
 
-  myWarpVector->SetScaleFactor(myScaleFactor*theMapScale);
+  vtkFloatingPointType aMapScale = myScaleFactor * theMapScale;
+  if(VISU::CheckIsSameValue(myWarpVector->GetScaleFactor(), aMapScale))
+    return;
+
+  myWarpVector->SetScaleFactor( aMapScale );
 }
 
 
index 6011e501175ce531c838a7011fb2883612867382..e92e3a0e13c13c2201e94b317a57d7a2267d2c0f 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_PipeLine.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #ifndef VISU_DeformedShapePL_HeaderFile
 #define VISU_DeformedShapePL_HeaderFile
 
@@ -99,6 +99,7 @@ protected:
                bool theIsCopyInput);
 
   vtkFloatingPointType myScaleFactor;
+  vtkFloatingPointType myMapScaleFactor;
   vtkWarpVector *myWarpVector;
   vtkCellDataToPointData* myCellDataToPointData;
 
diff --git a/src/PIPELINE/VISU_ElnoAssembleFilter.cxx b/src/PIPELINE/VISU_ElnoAssembleFilter.cxx
new file mode 100644 (file)
index 0000000..dcebe4b
--- /dev/null
@@ -0,0 +1,173 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+#include "VISU_ElnoAssembleFilter.hxx"
+#include "VISU_PipeLineUtils.hxx"
+#include "VISU_ElnoMeshValue.hxx"
+
+#include <vtkCellData.h>
+#include <vtkInformation.h>
+#include <vtkInformationVector.h>
+#include <vtkObjectFactory.h>
+#include <vtkPointData.h>
+#include <vtkUnstructuredGrid.h>
+#include <vtkPoints.h>
+#include <vtkCellArray.h>
+
+
+//----------------------------------------------------------------------------
+vtkStandardNewMacro( VISU_ElnoAssembleFilter );
+
+
+//----------------------------------------------------------------------------
+VISU_ElnoAssembleFilter::VISU_ElnoAssembleFilter()
+{
+  this->SetInputArrayToProcess( 0, // idx
+                               0, // port
+                               0, // connection
+                               vtkDataObject::FIELD_ASSOCIATION_POINTS, // field association
+                               "ELNO_POINT_COORDS" ); // name
+
+  this->myIsRestorePoints = false;
+}
+
+
+//----------------------------------------------------------------------------
+VISU_ElnoAssembleFilter::~VISU_ElnoAssembleFilter()
+{}
+
+
+//----------------------------------------------------------------------------
+void VISU_ElnoAssembleFilter::SetElnoAssembleState( bool theIsRestorePoints )
+{
+  if ( myIsRestorePoints == theIsRestorePoints )
+    return;
+    
+  myIsRestorePoints = theIsRestorePoints;
+  this->Modified();
+}
+
+//----------------------------------------------------------------------------
+namespace
+{
+  //----------------------------------------------------------------------------
+  template < int points_type, int elno_type >
+  int Execute2( vtkPointSet *theInput, 
+               vtkPointSet *theOutput,
+               vtkDataArray *theElnoPointCoords )
+  {
+    theOutput->CopyStructure( theInput );
+    
+    vtkCellData *aCellData = theOutput->GetCellData();
+    aCellData->PassData( theInput->GetCellData() );
+
+    vtkPointData *aPointData = theOutput->GetPointData();
+    aPointData->PassData( theInput->GetPointData() );
+
+    vtkPoints *anInputPoints = theInput->GetPoints();
+    vtkPoints *aPoints = anInputPoints->New( elno_type );
+    vtkIdType aNbPoints = theInput->GetNumberOfPoints();
+    aPoints->SetNumberOfPoints( aNbPoints );
+    
+    typedef typename VISU::TL::TEnum2VTKArrayType< elno_type >::TResult TPointsDataArray;
+    typedef typename VISU::TL::TEnum2VTKBasicType< elno_type >::TResult TPointsDataType;
+    TPointsDataArray* anOutputPointsArray = TPointsDataArray::SafeDownCast( aPoints->GetData() );
+
+    TPointsDataArray* anElnoPointCoords = TPointsDataArray::SafeDownCast( theElnoPointCoords );
+    
+    for ( vtkIdType aPointId = 0; aPointId < aNbPoints; aPointId++ ) {
+      TPointsDataType aCoords[ 3 ];
+      anElnoPointCoords->GetTupleValue( aPointId, aCoords );
+      anOutputPointsArray->SetTupleValue( aPointId, aCoords );
+    }
+    
+    theOutput->SetPoints( aPoints );
+
+    return 1;
+  } 
+
+
+  //----------------------------------------------------------------------------
+  template < int points_type >
+  int Execute( vtkPointSet *theInput, 
+              vtkPointSet *theOutput,
+              vtkDataArray *theElnoPointCoords )
+  {
+    switch( theElnoPointCoords->GetDataType() ){
+    case VTK_DOUBLE:
+      return Execute2< points_type, VTK_DOUBLE >( theInput, theOutput, theElnoPointCoords );
+    case VTK_FLOAT:
+      return Execute2< points_type, VTK_FLOAT >( theInput, theOutput, theElnoPointCoords );
+    case VTK_INT:
+      return Execute2< points_type, VTK_INT >( theInput, theOutput, theElnoPointCoords );
+    case VTK_LONG:
+      return Execute2< points_type, VTK_LONG >( theInput, theOutput, theElnoPointCoords );
+    default:
+      break;
+    }
+    
+    return 0;
+  } 
+
+
+  //----------------------------------------------------------------------------
+}
+
+
+//----------------------------------------------------------------------------
+int VISU_ElnoAssembleFilter::RequestData( vtkInformation *vtkNotUsed(request),
+                                         vtkInformationVector **inputVector,
+                                         vtkInformationVector *outputVector )
+{
+  // get the info objects
+  vtkInformation *inInfo = inputVector[0]->GetInformationObject(0);
+  vtkInformation *outInfo = outputVector->GetInformationObject(0);
+
+  // get the input and ouptut
+  vtkPointSet *anInput = vtkPointSet::SafeDownCast( inInfo->Get( vtkDataObject::DATA_OBJECT() ) );
+  vtkPointSet *anOutput = vtkPointSet::SafeDownCast( outInfo->Get( vtkDataObject::DATA_OBJECT() ) );
+
+  vtkDataArray *anElnoPointCoords = this->GetInputArrayToProcess( 0, inputVector );
+
+  if ( !myIsRestorePoints || !anElnoPointCoords ) {
+    anOutput->ShallowCopy( anInput );
+    return 1;
+  }
+
+  vtkPoints *aPoints = anInput->GetPoints();
+  switch( aPoints->GetDataType() ){
+  case VTK_DOUBLE:
+    return ::Execute< VTK_DOUBLE >( anInput, anOutput, anElnoPointCoords );
+  case VTK_FLOAT:
+    return ::Execute< VTK_FLOAT >( anInput, anOutput, anElnoPointCoords );
+  case VTK_INT:
+    return ::Execute< VTK_INT >( anInput, anOutput, anElnoPointCoords );
+  case VTK_LONG:
+    return ::Execute< VTK_LONG >( anInput, anOutput, anElnoPointCoords );
+  default:
+    break;
+  }  
+  
+  return 0;
+}
+
+
+//----------------------------------------------------------------------------
diff --git a/src/PIPELINE/VISU_ElnoAssembleFilter.hxx b/src/PIPELINE/VISU_ElnoAssembleFilter.hxx
new file mode 100644 (file)
index 0000000..ca023a3
--- /dev/null
@@ -0,0 +1,49 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+#ifndef VISU_ElnoAssembleFilter_H
+#define VISU_ElnoAssembleFilter_H
+
+#include <vtkPointSetAlgorithm.h>
+
+class VISU_ElnoAssembleFilter : public vtkPointSetAlgorithm
+{
+public:
+  typedef vtkPointSetAlgorithm Superclass;
+
+  static VISU_ElnoAssembleFilter *New();
+
+  void SetElnoAssembleState( bool theIsRestorePoints );
+
+protected:
+  VISU_ElnoAssembleFilter();
+  ~VISU_ElnoAssembleFilter();
+
+  int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
+
+  bool myIsRestorePoints;
+
+private:
+  VISU_ElnoAssembleFilter(const VISU_ElnoAssembleFilter&);  // Not implemented.
+  void operator=(const VISU_ElnoAssembleFilter&);  // Not implemented.
+};
+
+#endif
diff --git a/src/PIPELINE/VISU_ElnoDisassembleFilter.cxx b/src/PIPELINE/VISU_ElnoDisassembleFilter.cxx
new file mode 100644 (file)
index 0000000..3c73cbf
--- /dev/null
@@ -0,0 +1,402 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+#include "VISU_ElnoDisassembleFilter.hxx"
+#include "VISU_PipeLineUtils.hxx"
+#include "VISU_ElnoMeshValue.hxx"
+
+#include <vtkCellData.h>
+#include <vtkInformation.h>
+#include <vtkInformationVector.h>
+#include <vtkObjectFactory.h>
+#include <vtkPointData.h>
+#include <vtkUnstructuredGrid.h>
+#include <vtkPoints.h>
+#include <vtkCellArray.h>
+
+
+//----------------------------------------------------------------------------
+vtkStandardNewMacro( VISU_ElnoDisassembleFilter );
+
+
+//----------------------------------------------------------------------------
+VISU_ElnoDisassembleFilter::VISU_ElnoDisassembleFilter()
+{
+  this->SetInputArrayToProcess( 0, // idx
+                               0, // port
+                               0, // connection
+                               vtkDataObject::FIELD_ASSOCIATION_CELLS, // field association
+                               "ELNO_FIELD" ); // name
+
+  this->SetInputArrayToProcess( 1, // idx
+                               0, // port
+                               0, // connection
+                               vtkDataObject::FIELD_ASSOCIATION_CELLS, // field association
+                               "ELNO_COMPONENT_MAPPER" ); // name
+
+  this->myShrinkFactor = -0.999;
+}
+
+
+//----------------------------------------------------------------------------
+VISU_ElnoDisassembleFilter::~VISU_ElnoDisassembleFilter()
+{}
+
+
+//----------------------------------------------------------------------------
+void VISU_ElnoDisassembleFilter::SetShrinkFactor( vtkFloatingPointType theValue )
+{
+  if ( VISU::CheckIsSameValue( theValue, myShrinkFactor ) )
+    return;
+
+  myShrinkFactor = theValue;
+  this->Modified();
+}
+
+
+//----------------------------------------------------------------------------
+vtkFloatingPointType VISU_ElnoDisassembleFilter::GetShrinkFactor()
+{
+  return myShrinkFactor;
+}
+
+
+//----------------------------------------------------------------------------
+namespace
+{
+  //----------------------------------------------------------------------------
+  template < int points_type, int elno_type >
+  struct TExecute2
+  {
+    vtkUnstructuredGrid *myInput;
+    vtkUnstructuredGrid *myOutput;
+    vtkDataArray *myElnoDataArray;
+    vtkDataArray *myElnoDataMapper;
+    vtkFloatingPointType myShrinkFactor;
+
+    typedef typename VISU::TL::TEnum2VTKArrayType< points_type >::TResult TPointsDataArray;
+    typedef typename VISU::TL::TEnum2VTKBasicType< points_type >::TResult TPointsDataType;
+
+    typedef typename VISU::TL::TEnum2VTKArrayType< elno_type >::TResult TElnoDataArray;
+    typedef typename VISU::TL::TEnum2VTKBasicType< elno_type >::TResult TElnoDataType;
+
+    VISU::TGetElnoNodeData< elno_type > myGetElnoNodeData;
+    vtkCellArray *myConnectivity;
+    vtkPointData *myInputPointData;
+    vtkPointData *myOutputPointData;
+    TPointsDataArray *myInputPointsArray;
+    TPointsDataArray *myOutputPointsArray;
+    TElnoDataArray* myElnoFullDataArray;
+    TElnoDataArray* myElnoPartialDataArray;
+    TPointsDataArray *myElnoPointCoords;
+    vtkIntArray* myInputPointsMapper;
+    vtkIntArray* myOutputPointsMapper;
+
+    //----------------------------------------------------------------------------
+    TExecute2( vtkUnstructuredGrid *theInput, 
+              vtkUnstructuredGrid *theOutput, 
+              vtkDataArray *theElnoDataArray,
+              vtkDataArray *theElnoDataMapper,
+              vtkFloatingPointType theShrinkFactor )
+      : myGetElnoNodeData( theElnoDataArray, theElnoDataMapper )
+      , myInput( theInput )
+      , myOutput( theOutput )
+      , myElnoDataArray( theElnoDataArray )
+      , myElnoDataMapper( theElnoDataMapper )
+      , myShrinkFactor( theShrinkFactor )
+    {
+      myConnectivity = vtkCellArray::New();
+      myConnectivity->DeepCopy( theInput->GetCells() );
+    
+      vtkPoints *anInputPoints = theInput->GetPoints();
+      vtkPoints *aPoints = anInputPoints->New( anInputPoints->GetDataType() );
+      vtkIdType aNbCells = myConnectivity->GetNumberOfCells();
+      vtkIdType aNbPoints = myConnectivity->GetNumberOfConnectivityEntries() - aNbCells;
+      aPoints->Allocate( aNbPoints );
+    
+      myInputPointsArray = TPointsDataArray::SafeDownCast( anInputPoints->GetData() );
+      myOutputPointsArray = TPointsDataArray::SafeDownCast( aPoints->GetData() );
+    
+      myInputPointData = theInput->GetPointData();
+      myOutputPointData = theOutput->GetPointData();
+      myOutputPointData->Allocate( aNbPoints );
+    
+      vtkCellData *anInputCellData = theInput->GetCellData();
+
+      // To create a new copy of initial data for output
+      myElnoFullDataArray = TElnoDataArray::New();
+      myElnoFullDataArray->SetName( "VISU_FIELD" );
+      myElnoFullDataArray->SetNumberOfComponents( myGetElnoNodeData.getNbComp() );
+      myElnoFullDataArray->SetNumberOfTuples( aNbPoints );
+
+      // To create a new copy of partial initial data for output
+      myElnoPartialDataArray = TElnoDataArray::New();
+      // This partial data can be represented as in terms of vectors as scalars
+      if ( anInputCellData->GetVectors() != NULL ) 
+       myElnoPartialDataArray->SetNumberOfComponents( 3 );
+      else
+       myElnoPartialDataArray->SetNumberOfComponents( 1 );
+      myElnoPartialDataArray->SetNumberOfTuples( aNbPoints );
+
+      myElnoPointCoords = TPointsDataArray::New();
+      myElnoPointCoords->SetName( "ELNO_POINT_COORDS" );
+      myElnoPointCoords->SetNumberOfComponents( 3 );
+      myElnoPointCoords->SetNumberOfTuples( aNbPoints );
+
+      vtkDataArray* anArray = myInputPointData->GetArray( "VISU_POINTS_MAPPER" );
+      myInputPointsMapper = vtkIntArray::SafeDownCast( anArray );
+      
+      myOutputPointsMapper = vtkIntArray::New();
+      myOutputPointsMapper->SetName( myInputPointsMapper->GetName() );
+      myOutputPointsMapper->SetNumberOfComponents( myInputPointsMapper->GetNumberOfComponents() );
+      myOutputPointsMapper->SetNumberOfTuples( aNbPoints );
+
+      if ( theShrinkFactor > 0.0 )
+       this->ShrinkExecute();
+      else
+       this->SimpleExecute();
+
+      theOutput->SetPoints( aPoints );
+      
+      theOutput->SetCells( theInput->GetCellTypesArray(), 
+                          theInput->GetCellLocationsArray(),
+                          myConnectivity );
+
+      myConnectivity->Delete();
+      
+      vtkCellData *anOutputCellData = theOutput->GetCellData();
+      anOutputCellData->PassData( anInputCellData );
+      
+      anOutputCellData->RemoveArray( "ELNO_COMPONENT_MAPPER" );
+      anOutputCellData->RemoveArray( "ELNO_FIELD" );
+      anOutputCellData->RemoveArray( "VISU_FIELD" );
+      anOutputCellData->SetVectors( NULL );
+      
+      //anOutputPointData->PassData( anInputPointData );
+      
+      myOutputPointData->AddArray( myElnoFullDataArray );
+      myElnoFullDataArray->Delete();
+      
+      if ( anInputCellData->GetVectors() != NULL ) 
+       myOutputPointData->SetVectors( myElnoPartialDataArray );
+      else
+       myOutputPointData->SetScalars( myElnoPartialDataArray );
+      myElnoPartialDataArray->Delete();
+      
+      myOutputPointData->AddArray( myElnoPointCoords );
+      myElnoPointCoords->Delete();
+      
+      myOutputPointData->AddArray( myOutputPointsMapper );
+      myOutputPointsMapper->Delete();
+    }
+
+    //----------------------------------------------------------------------------
+    void SimpleExecute()
+    {
+      // To reserve a temproary value holder
+      vtkIdType aNbComp = std::max( 3, myGetElnoNodeData.getNbComp() );
+      std::vector< TElnoDataType > anElnoDataValues( aNbComp ); 
+
+      std::vector< int > anPointsMapperValues( myInputPointsMapper->GetNumberOfComponents() ); 
+   
+      myConnectivity->InitTraversal();
+      vtkIdType aNbPts = 0, *aPts = 0;
+      for ( vtkIdType aCellId = 0; myConnectivity->GetNextCell( aNbPts, aPts ); aCellId++ ) {
+        for ( vtkIdType aPntId = 0; aPntId < aNbPts; aPntId++ ) {
+         TPointsDataType aCoords[ 3 ];
+         vtkIdType aCurrentPntId = aPts[ aPntId ];
+         myInputPointsArray->GetTupleValue( aCurrentPntId, aCoords );
+         
+         aPts[ aPntId ] = myOutputPointsArray->InsertNextTupleValue( aCoords );
+         vtkIdType aNewPntId = aPts[ aPntId ];
+         
+         myElnoPointCoords->SetTupleValue( aNewPntId, aCoords );
+         
+         myOutputPointData->CopyData( myInputPointData, aCurrentPntId, aNewPntId );
+         
+         TElnoDataType* anElnoData = myGetElnoNodeData( aCellId, aPntId );
+         myElnoFullDataArray->SetTupleValue( aNewPntId,  anElnoData );
+         
+         myElnoFullDataArray->GetTupleValue( aNewPntId, &anElnoDataValues[ 0 ] );
+         myElnoPartialDataArray->SetTupleValue( aNewPntId, &anElnoDataValues[ 0 ] );
+
+         myInputPointsMapper->GetTupleValue( aCurrentPntId, &anPointsMapperValues[ 0 ] );
+         myOutputPointsMapper->SetTupleValue( aNewPntId, &anPointsMapperValues[ 0 ] );
+        }
+      }
+    }
+
+    //----------------------------------------------------------------------------
+    void ShrinkExecute()
+    {
+      // To reserve a temproary value holder
+      vtkIdType aNbComp = std::max( 3, myGetElnoNodeData.getNbComp() );
+      std::vector< TElnoDataType > anElnoDataValues( aNbComp ); 
+      
+      std::vector< int > anPointsMapperValues( myInputPointsMapper->GetNumberOfComponents() ); 
+   
+      myConnectivity->InitTraversal();
+      vtkIdType aNbPts = 0, *aPts = 0;
+      for ( vtkIdType aCellId = 0; myConnectivity->GetNextCell( aNbPts, aPts ); aCellId++ ) {
+       
+       TPointsDataType aCenter[ 3 ] = { TPointsDataType(), TPointsDataType(), TPointsDataType() };
+       
+       for ( vtkIdType aPntId = 0; aPntId < aNbPts; aPntId++ ) {
+         TPointsDataType aCoords[ 3 ];
+         myInputPointsArray->GetTupleValue( aPts[ aPntId ], aCoords );
+         
+         aCenter[ 0 ] += aCoords[ 0 ];
+         aCenter[ 1 ] += aCoords[ 1 ];
+         aCenter[ 2 ] += aCoords[ 2 ];
+       }
+       
+       aCenter[ 0 ] /= aNbPts;
+       aCenter[ 1 ] /= aNbPts;
+       aCenter[ 2 ] /= aNbPts;
+       
+       for ( vtkIdType aPntId = 0; aPntId < aNbPts; aPntId++ ) {
+         TPointsDataType aCoords[ 3 ];
+         vtkIdType aCurrentPntId = aPts[ aPntId ];
+         myInputPointsArray->GetTupleValue( aCurrentPntId, aCoords );
+         
+         TPointsDataType aNewCoords[ 3 ];
+         
+         aNewCoords[ 0 ] = aCenter[ 0 ]  + 
+           TPointsDataType( myShrinkFactor * ( aCoords[ 0 ] - aCenter[ 0 ] ) );
+         aNewCoords[ 1 ] = aCenter[ 1 ]  + 
+           TPointsDataType( myShrinkFactor * ( aCoords[ 1 ] - aCenter[ 1 ] ) );
+         aNewCoords[ 2 ] = aCenter[ 2 ]  + 
+           TPointsDataType( myShrinkFactor * ( aCoords[ 2 ] - aCenter[ 2 ] ) );
+         
+         aPts[ aPntId ] = myOutputPointsArray->InsertNextTupleValue( aNewCoords );
+         vtkIdType aNewPntId = aPts[ aPntId ];
+         
+         myElnoPointCoords->SetTupleValue( aNewPntId, aCoords );
+         
+         myOutputPointData->CopyData( myInputPointData, aCurrentPntId, aNewPntId );
+         
+         TElnoDataType* anElnoData = myGetElnoNodeData( aCellId, aPntId );
+         myElnoFullDataArray->SetTupleValue( aNewPntId, anElnoData );
+         
+         myElnoFullDataArray->GetTupleValue( aNewPntId, &anElnoDataValues[ 0 ] );
+         myElnoPartialDataArray->SetTupleValue( aNewPntId, &anElnoDataValues[ 0 ] );
+
+         myInputPointsMapper->GetTupleValue( aCurrentPntId, &anPointsMapperValues[ 0 ] );
+         myOutputPointsMapper->SetTupleValue( aNewPntId, &anPointsMapperValues[ 0 ] );
+       }
+      }
+    }
+  };
+
+
+  //----------------------------------------------------------------------------
+  template < int points_type, int elno_type >
+  int Execute2( vtkUnstructuredGrid *theInput, 
+               vtkUnstructuredGrid *theOutput, 
+               vtkDataArray *theElnoDataArray,
+               vtkDataArray *theElnoDataMapper,
+               vtkFloatingPointType theShrinkFactor )
+  {
+    TExecute2< points_type, elno_type >( theInput, 
+                                        theOutput, 
+                                        theElnoDataArray, 
+                                        theElnoDataMapper, 
+                                        theShrinkFactor );
+        
+    return 1;
+  }
+          
+
+  //----------------------------------------------------------------------------
+  template < int points_type >
+  int Execute( vtkUnstructuredGrid *theInput, 
+              vtkUnstructuredGrid *theOutput, 
+              vtkDataArray *theElnoDataArray,
+              vtkDataArray *theElnoDataMapper,
+              vtkFloatingPointType theShrinkFactor )
+  {
+    switch( theElnoDataArray->GetDataType() ){
+    case VTK_DOUBLE:
+      return Execute2< points_type, VTK_DOUBLE >
+       ( theInput, theOutput, theElnoDataArray, theElnoDataMapper, theShrinkFactor );
+    case VTK_FLOAT:
+      return Execute2< points_type, VTK_FLOAT >
+       ( theInput, theOutput, theElnoDataArray, theElnoDataMapper, theShrinkFactor );
+    case VTK_INT:
+      return Execute2< points_type, VTK_INT >
+       ( theInput, theOutput, theElnoDataArray, theElnoDataMapper, theShrinkFactor );
+    case VTK_LONG:
+      return Execute2< points_type, VTK_LONG >
+       ( theInput, theOutput, theElnoDataArray, theElnoDataMapper, theShrinkFactor );
+    default:
+      break;
+    }
+    
+    return 0;
+  } 
+
+
+  //----------------------------------------------------------------------------
+}
+
+
+//----------------------------------------------------------------------------
+int VISU_ElnoDisassembleFilter::RequestData( vtkInformation *vtkNotUsed(request),
+                                            vtkInformationVector **inputVector,
+                                            vtkInformationVector *outputVector )
+{
+  // get the info objects
+  vtkInformation *inInfo = inputVector[0]->GetInformationObject(0);
+  vtkInformation *outInfo = outputVector->GetInformationObject(0);
+
+  // get the input and ouptut
+  vtkUnstructuredGrid *anInput =
+    vtkUnstructuredGrid::SafeDownCast( inInfo->Get( vtkDataObject::DATA_OBJECT() ) );
+  vtkUnstructuredGrid *anOutput = 
+    vtkUnstructuredGrid::SafeDownCast( outInfo->Get( vtkDataObject::DATA_OBJECT() ) );
+
+  vtkDataArray *anElnoDataArray = this->GetInputArrayToProcess( 0, inputVector );
+  vtkDataArray *anElnoDataMapper = this->GetInputArrayToProcess( 1, inputVector );
+
+  if ( !anElnoDataArray ) {
+    anOutput->ShallowCopy( anInput );
+    return 1;
+  }
+
+  vtkPoints *aPoints = anInput->GetPoints();
+  switch( aPoints->GetDataType() ){
+  case VTK_DOUBLE:
+    return ::Execute< VTK_DOUBLE >( anInput, anOutput, anElnoDataArray, anElnoDataMapper, myShrinkFactor );
+  case VTK_FLOAT:
+    return ::Execute< VTK_FLOAT >( anInput, anOutput, anElnoDataArray, anElnoDataMapper, myShrinkFactor );
+  case VTK_INT:
+    return ::Execute< VTK_INT >( anInput, anOutput, anElnoDataArray, anElnoDataMapper, myShrinkFactor );
+  case VTK_LONG:
+    return ::Execute< VTK_LONG >( anInput, anOutput, anElnoDataArray, anElnoDataMapper, myShrinkFactor );
+  default:
+    break;
+  }  
+  
+  return 0;
+}
+
+
+//----------------------------------------------------------------------------
diff --git a/src/PIPELINE/VISU_ElnoDisassembleFilter.hxx b/src/PIPELINE/VISU_ElnoDisassembleFilter.hxx
new file mode 100644 (file)
index 0000000..9276887
--- /dev/null
@@ -0,0 +1,52 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+#ifndef VISU_ElnoDisassembleFilter_H
+#define VISU_ElnoDisassembleFilter_H
+
+#include "VISUPipeline.hxx"
+
+#include <vtkUnstructuredGridAlgorithm.h>
+
+class VISU_PIPELINE_EXPORT VISU_ElnoDisassembleFilter : public vtkUnstructuredGridAlgorithm
+{
+public:
+  typedef vtkUnstructuredGridAlgorithm Superclass;
+
+  static VISU_ElnoDisassembleFilter *New();
+
+  void SetShrinkFactor( vtkFloatingPointType theValue );
+  vtkFloatingPointType GetShrinkFactor();
+
+protected:
+  VISU_ElnoDisassembleFilter();
+  ~VISU_ElnoDisassembleFilter();
+
+  int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
+
+  vtkFloatingPointType myShrinkFactor;
+
+private:
+  VISU_ElnoDisassembleFilter(const VISU_ElnoDisassembleFilter&);  // Not implemented.
+  void operator=(const VISU_ElnoDisassembleFilter&);  // Not implemented.
+};
+
+#endif
index e44145e30dccbdaaa385401558b0beab5ad32c2a..0a53d67553c7d6d77acbc89adb02ea87f42e8e16 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_Extractor.cxx
 //  Module : VISU
-
+//
 #include "VISU_Extractor.hxx"
 #include "VISU_PipeLineUtils.hxx"
 #include "VISU_ConvertorUtils.hxx"
@@ -168,27 +168,27 @@ VISU_Extractor
              vtkInformationVector **theInputVector,
              vtkInformationVector *theOutputVector)
 {
-  vtkDataSet *anInput = VISU::GetInput(theInputVector, 0);
-  vtkDataSet *anOutput = VISU::GetOutput(theOutputVector);
+  vtkDataSet *anInput = VISU::GetInput( theInputVector, 0 );
+  vtkDataSet *anOutput = VISU::GetOutput( theOutputVector );
 
-  anOutput->CopyStructure(anInput);
+  anOutput->CopyStructure( anInput );
 
   vtkPointData *anInputPointData = anInput->GetPointData();
   vtkPointData *anOutputPointData = anOutput->GetPointData();
-  anOutputPointData->PassData(anInputPointData); 
-  if(VISU::IsDataOnPoints(anInput)){
+  anOutputPointData->PassData( anInputPointData ); 
+  if ( VISU::IsDataOnPoints( anInput ) ) {
     int aNbElems = anInput->GetNumberOfPoints();
-    if(anInputPointData->GetAttribute(vtkDataSetAttributes::VECTORS))
-      ExecuteScalars(aNbElems, myScalarMode, anInputPointData, anOutputPointData);
+    if ( anInputPointData->GetAttribute( vtkDataSetAttributes::VECTORS ) )
+      ExecuteScalars( aNbElems, myScalarMode, anInputPointData, anOutputPointData );
   }
   
   vtkCellData *anInputCellData = anInput->GetCellData();
   vtkCellData *anOutputCellData = anOutput->GetCellData();
-  anOutputCellData->PassData(anInputCellData); 
-  if(VISU::IsDataOnCells(anInput)){
+  anOutputCellData->PassData( anInputCellData ); 
+  if ( VISU::IsDataOnCells( anInput ) ) {
     int aNbElems = anInput->GetNumberOfCells();
-    if(anInputCellData->GetAttribute(vtkDataSetAttributes::VECTORS))
-      ExecuteScalars(aNbElems, myScalarMode, anInputCellData, anOutputCellData);
+    if ( anInputCellData->GetAttribute( vtkDataSetAttributes::VECTORS ) )
+      ExecuteScalars( aNbElems, myScalarMode, anInputCellData, anOutputCellData );
   }
 
   return 1;
index 944b48669c9bdfd17ec5542153c1d60f14ac5e20..53f038bdcaf3b5cd4c4f023122a86756a57e3585 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_Extractor.hxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_Extractor_HeaderFile
 #define VISU_Extractor_HeaderFile
 
index 7816f8efed11371c8e0f525a566acad4120c6f7f..d448165c70fb12c2767c5b497bccfa44b97953eb 100644 (file)
@@ -1,25 +1,27 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VISU_FieldTransform.cxx
 //  Module : VISU
-
+//
 #include "VISU_FieldTransform.hxx"
 #include "VTKViewer_Transform.h"
 #include "VISU_PipeLineUtils.hxx"
index 591044e3735038a9872a69a5e8ee18da77e8d296..62dfe0ee36cb1f03e161b8f6d8aa836406c86031 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_FieldTransform.hxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_FieldTransform_HeaderFile
 #define VISU_FieldTransform_HeaderFile
 
index ea42aaca6fe06f4a97b0187a5c9c0beac273cebd..23fa92231a9ef38ea6fc94ad652868041c747747 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_GaussPoints.cxx
 // Author:  Alexey PETROV
 // Module : VISU
-
-
+//
 #include "VISU_GaussPointsPL.hxx"
 #include "VISU_PointSpriteMapperHolder.hxx"
 #include "VISU_OpenGLPointSpriteMapper.hxx"
@@ -60,6 +58,7 @@ VISU_GaussPointsPL
   myMergeFilter(VISU_GaussMergeFilter::New())
 {
   SetIsShrinkable(false);
+  SetIsFeatureEdgesAllowed(false);
 
   myWarpVector = vtkWarpVector::New();
 
@@ -194,6 +193,7 @@ VISU_GaussPointsPL
                bool theIsCopyInput)
 {
   Superclass::DoShallowCopy(thePipeLine, theIsCopyInput);
+  VISU_MergedPL::DoShallowCopy(thePipeLine, theIsCopyInput);
 
   if(VISU_GaussPointsPL *aPipeLine = dynamic_cast<VISU_GaussPointsPL*>(thePipeLine)){
     SetPrimitiveType(aPipeLine->GetPrimitiveType());
@@ -244,7 +244,7 @@ VISU_GaussPointsPL
 {
   Superclass::Init();
 
-  SetExtractInside(false);
+  //SetExtractInside(false);
 
   vtkDataSet* aDataSet = GetParentMesh();
   vtkFloatingPointType aScaleFactor = VISU_DeformedShapePL::GetScaleFactor( aDataSet );
index 051362357ff8325393e766182e7cd9b1f011cc8a..2ecb13f0a17a5360904d6897ba1a5c8afe730ae4 100644 (file)
@@ -1,34 +1,34 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_GaussPointsPL.hxx
 // Author:  
 // Module : VISU
-
+//
 #ifndef VISU_GaussPointsPL_HeaderFile
 #define VISU_GaussPointsPL_HeaderFile
 
 #include "VISUPipeline.hxx"
+#include "VISU_MergedPL.hxx"
 #include "VISU_ColoredPL.hxx"
 
 #include <vector>
@@ -57,7 +57,8 @@ class VISU_GaussMergeFilter;
  * This class uses the special mapper (VISU_OpenGLPointSpriteMapper)
  * for rendering the Gauss Points as Point Sprites.
  */
-class VISU_PIPELINE_EXPORT VISU_GaussPointsPL : public VISU_ColoredPL
+class VISU_PIPELINE_EXPORT VISU_GaussPointsPL : public VISU_MergedPL,
+                                               public VISU_ColoredPL
 {
 public:
   //----------------------------------------------------------------------------
index 776d0b5f7c247f5d9012e95efa3cb54a432ffd22..f3270860a3c6a8e3a063a07d8895fce876b4231e 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   : VVTK_ImplicitFunctionWidget.cxx
 //  Author : Peter KURNEV
 //  Module : SALOME
 //  $Header$
-
+//
 #include "VISU_ImplicitFunctionWidget.hxx"
 //
 #include <vtkFollower.h>
index 55632fd5ebf4c841e631f64ffb38cfb5330c3176..7adb1b8c0e9197bb299f1966af9592559cb02143 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   : VISU_PlanesWidget.h
 //  Author : Peter KURNEV
 //  Module : SALOME
 //  $Header$
-
+//
 #ifndef __VISU_ImplicitFunctionWidget_h
 #define __VISU_ImplicitFunctionWidget_h
 
index bea9854f35cfe9ffd5ba52774d85447d5dcf67e6..25abb517505a28ff7e1a674122215c8cb4d34300 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_PipeLine.cxx
 // Author:  Alexey PETROV
 // Module : VISU
-
-
+//
 #include "VISU_IsoSurfacesPL.hxx"
 #include "VISU_LookupTable.hxx"
 
 #include "VISU_PipeLineUtils.hxx"
+#include "VISU_LabelPointsFilter.hxx"
 
 #include <vtkContourFilter.h>
 
 
+
 //----------------------------------------------------------------------------
 vtkStandardNewMacro(VISU_IsoSurfacesPL);
 
@@ -43,6 +43,9 @@ VISU_IsoSurfacesPL
 ::VISU_IsoSurfacesPL()
 {
   SetIsShrinkable(false);
+  SetIsFeatureEdgesAllowed(false);
+
+  SetElnoDisassembleState( true );
 
   myContourFilter = vtkContourFilter::New();
 
@@ -100,6 +103,14 @@ VISU_IsoSurfacesPL
   return myContourFilter->GetNumberOfContours();
 }
 
+//----------------------------------------------------------------------------
+vtkFloatingPointType
+VISU_IsoSurfacesPL
+::GetValue(int i) 
+{
+  return myContourFilter->GetValue(i);
+}
+
 
 //----------------------------------------------------------------------------
 void
@@ -113,9 +124,9 @@ VISU_IsoSurfacesPL
 //----------------------------------------------------------------------------
 void
 VISU_IsoSurfacesPL
-::SetScalarRange(vtkFloatingPointType theRange[2]
+::SetScalarRange( vtkFloatingPointType theRange[2] 
 {
-  Superclass::SetScalarRange(theRange);
+  Superclass::SetScalarRange( theRange );
   SetRange(myRange);
 }
 
@@ -181,6 +192,7 @@ VISU_IsoSurfacesPL
   VISU::CellDataToPoint(myContourFilter,
                        myCellDataToPointData,
                        GetMergedInput());
+
 }
 
 
index 83a646dd8d3623b6574854fe2696f8d4ffb4bf81..9c8b8a80b3cc78bfbd6c080f1bea252002bca86f 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_PipeLine.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #ifndef VISU_IsoSurfacesPL_HeaderFile
 #define VISU_IsoSurfacesPL_HeaderFile
 
@@ -53,13 +53,15 @@ public:
   int
   GetNbParts();
 
+  virtual vtkFloatingPointType GetValue(int i);
+
   virtual
   void
   SetNbParts(int theNb = 10);
 
   virtual
   void
-  SetScalarRange(vtkFloatingPointType theRange[2]);
+  SetScalarRange( vtkFloatingPointType theRange[2] );
 
   virtual
   void
diff --git a/src/PIPELINE/VISU_LabelPointsFilter.cxx b/src/PIPELINE/VISU_LabelPointsFilter.cxx
new file mode 100644 (file)
index 0000000..b0f14eb
--- /dev/null
@@ -0,0 +1,293 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+// File:    VISU_LabelPointsFilter.cxx
+// Author:  Vitaly Smetannikov
+// Module : VISU
+//
+#include "VISU_LabelPointsFilter.hxx"
+
+#include <vtkPolyData.h>
+#include <vtkObjectFactory.h>
+#include <vtkInformation.h>
+#include <vtkInformationVector.h>
+#include <vtkFeatureEdges.h>
+#include <vtkCellArray.h>
+#include <vtkPointData.h>
+#include <vtkCellData.h>
+#include <vtkDataArray.h>
+#include <vtkDoubleArray.h>
+#include <vtkGeometryFilter.h>
+#include <vtkPolyDataConnectivityFilter.h>
+#include <vtkMath.h>
+
+#include <set>
+#include <vector>
+
+
+#define CONTAINS(SET, PT) (SET.find(PT) != SET.end())
+
+struct ltIdType 
+{
+  bool operator()(const vtkIdType a1, const vtkIdType a2) const
+  {
+    return a1 < a2;
+  }
+};
+
+
+
+//----------------------------------------------------------------------------
+vtkStandardNewMacro(VISU_LabelPointsFilter);
+
+
+//----------------------------------------------------------------------------
+void VISU_LabelPointsFilter::SetPointsNb(int theNb)
+{
+  if (myPointsNb == theNb) return;
+  myPointsNb = (theNb < 1)? 1:theNb;
+  Modified();
+}
+
+//----------------------------------------------------------------------------
+VISU_LabelPointsFilter::VISU_LabelPointsFilter():
+  vtkPolyDataAlgorithm(),
+  myPointsNb(3)
+{
+}
+
+//----------------------------------------------------------------------------
+VISU_LabelPointsFilter::~VISU_LabelPointsFilter()
+{}
+
+
+
+//----------------------------------------------------------------------------
+int VISU_LabelPointsFilter::RequestData(vtkInformation* vtkNotUsed(request),
+                                       vtkInformationVector** inputVector,
+                                       vtkInformationVector* outputVector)
+{
+  // get the info objects
+  vtkInformation* inInfo = inputVector[0]->GetInformationObject(0);
+  vtkInformation* outInfo = outputVector->GetInformationObject(0);
+
+  // get the input and ouptut
+  vtkPolyData* input = vtkPolyData::SafeDownCast(inInfo->Get(vtkDataObject::DATA_OBJECT()));
+  vtkPolyData* output = vtkPolyData::SafeDownCast(outInfo->Get(vtkDataObject::DATA_OBJECT()));
+
+  GetRegions(input, output);
+
+  return 1;
+}
+
+int VISU_LabelPointsFilter::RequestUpdateExtent(vtkInformation* vtkNotUsed(request),
+                                               vtkInformationVector** inputVector,
+                                               vtkInformationVector* outputVector)
+{
+  // get the info objects
+  vtkInformation *inInfo = inputVector[0]->GetInformationObject(0);
+  vtkInformation *outInfo = outputVector->GetInformationObject(0);
+
+  vtkPolyData* input = vtkPolyData::SafeDownCast(inInfo->Get(vtkDataObject::DATA_OBJECT()));
+  vtkPolyData* output = vtkPolyData::SafeDownCast(outInfo->Get(vtkDataObject::DATA_OBJECT()));
+
+  GetRegions(input, output);
+  return 1;
+}
+
+
+
+int VISU_LabelPointsFilter::GetRegions(vtkPolyData* theInput, 
+                                      vtkPolyData* theOutput)
+{
+  vtkIdType cellId, i;
+  vtkIdType numPts, numCells;
+  vtkPoints *inPts;
+
+  vtkPointData *aInpPD=theInput->GetPointData(), *aOutPD=theOutput->GetPointData();
+  vtkCellData *aInpCD=theInput->GetCellData(), *aOutCD=theOutput->GetCellData();
+  
+  //  Check input/allocate storage
+  //
+  inPts = theInput->GetPoints();
+
+  if (inPts == NULL)
+    return 1;
+
+  numPts = inPts->GetNumberOfPoints();
+  numCells = theInput->GetNumberOfCells();
+
+  if ( numPts < 1 || numCells < 1 )
+    return 1;
+
+  // Build cell structure
+  //
+  vtkPolyData* aMesh = vtkPolyData::New();
+  aMesh->CopyStructure(theInput);
+  aMesh->BuildLinks();
+
+  // Initialize.  Keep track of points and cells visited.
+  //
+  vtkIdTypeArray* aRegionSizes = vtkIdTypeArray::New();
+  int* aVisited = new int[numCells];
+  for ( i=0; i < numCells; i++ )
+     aVisited[i] = -1;
+
+  vtkIdType* aPointMap = new vtkIdType[numPts];  
+  for ( i=0; i < numPts; i++ )
+    aPointMap[i] = -1;
+
+  vtkPoints* newPts = vtkPoints::New();
+  newPts->Allocate(numPts);
+
+  // Traverse all cells marking those visited.  Each new search
+  // starts a new connected region. Connected region grows 
+  // using a connected wave propagation.
+  //
+  vtkIdList* aWave = vtkIdList::New();
+  aWave->Allocate(numPts/4+1,numPts);
+  vtkIdList* aWave2 = vtkIdList::New();
+  aWave2->Allocate(numPts/4+1,numPts);
+
+  vtkIdType aPointNumber = 0;
+  int aRegionNumber = 0;
+
+  vtkIdList* aCellIds = vtkIdList::New(); 
+  aCellIds->Allocate(8, VTK_CELL_SIZE);
+  vtkIdList* aPointIds = vtkIdList::New(); 
+  aPointIds->Allocate(8, VTK_CELL_SIZE);
+
+  //  vtkIdType aNumCellsInRegion;
+
+  aOutPD->CopyAllocate(aInpPD);
+  aOutCD->CopyAllocate(aInpCD);
+
+  //visit all cells marking with region number
+  for (cellId=0; cellId < numCells; cellId++) {
+    if ( aVisited[cellId] < 0 ) {
+      aWave->InsertNextId(cellId);
+      aPointNumber = 0;
+      TraverseAndMark(aWave, aWave2, aVisited, aPointMap, 
+                     aRegionNumber, aPointNumber, aMesh);
+      
+      if (aPointNumber >= myPointsNb) {
+       std::set<vtkIdType, ltIdType> aIdxSet;
+       for (i=0; i < numPts; i++) {
+         if ( aPointMap[i] > -1 ) {
+           aIdxSet.insert(i);
+           aPointMap[i] = -1;
+         }
+       }
+       std::vector<vtkIdType> aIdx(aIdxSet.begin(), aIdxSet.end());
+       int aActualPts = aIdx.size();
+       int aNewId;
+       if (myPointsNb > 2) {
+         int k = aActualPts/(myPointsNb - 1);
+         int count;
+         for (i=0, count = 0; i < aActualPts; i+=k, count++) {
+           aNewId = newPts->InsertNextPoint(inPts->GetPoint(aIdx[i]));
+           aOutPD->CopyData(aInpPD, aIdx[i], aNewId);
+         }
+         if (count < myPointsNb) {
+           aNewId = newPts->InsertNextPoint(inPts->GetPoint(aIdx[aActualPts - 1]));
+           aOutPD->CopyData(aInpPD, aIdx[aActualPts - 1], aNewId);
+         }
+       } else {          
+         aNewId = newPts->InsertNextPoint(inPts->GetPoint(aIdx[0]));
+         aOutPD->CopyData(aInpPD, aIdx[0], aNewId);
+         if (myPointsNb == 2) {
+           aNewId = newPts->InsertNextPoint(inPts->GetPoint(aIdx[aActualPts - 1]));
+           aOutPD->CopyData(aInpPD, aIdx[aActualPts - 1], aNewId);
+         }
+       }
+      }
+      aWave->Reset();
+      aWave2->Reset(); 
+    }
+  }
+
+  aWave->Delete();
+  aWave2->Delete();
+
+  theOutput->SetPoints(newPts);
+  newPts->Delete();
+
+
+  delete [] aVisited;
+  delete [] aPointMap;
+  aMesh->Delete();
+  theOutput->Squeeze();
+  aCellIds->Delete();
+  aPointIds->Delete();
+
+  return aRegionSizes->GetMaxId() + 1;
+}
+
+
+// Mark current cell as visited and assign region number.  Note:
+// traversal occurs across shared vertices.
+//
+void VISU_LabelPointsFilter::TraverseAndMark (vtkIdList* theWave, 
+                                             vtkIdList* theWave2, 
+                                             int* theVisited,
+                                             vtkIdType* thePointMap,
+                                             int& theRegionNumber,
+                                             vtkIdType& thePointNumber,
+                                             vtkPolyData* theMesh)
+{
+  vtkIdType cellId, ptId, numIds, i;
+  int j, k;
+  vtkIdType *pts, *cells, npts;
+  vtkIdList *tmpWave;
+  unsigned short ncells;
+  vtkIdList* aNeighborCellPointIds = vtkIdList::New();
+
+
+  while ( (numIds=theWave->GetNumberOfIds()) > 0 ) {
+    for ( i=0; i < numIds; i++ ) {
+      cellId = theWave->GetId(i);
+      if ( theVisited[cellId] < 0 ) {
+        theVisited[cellId] = theRegionNumber;
+        theMesh->GetCellPoints(cellId, npts, pts);
+       
+        for (j=0; j < npts; j++) {
+          if ( thePointMap[ptId=pts[j]] < 0 ) {
+            thePointMap[ptId] = thePointNumber++;
+         }       
+          theMesh->GetPointCells(ptId,ncells,cells);
+         
+          // check connectivity criterion (geometric + scalar)
+          for (k=0; k < ncells; k++) {
+            cellId = cells[k];
+           theWave2->InsertNextId(cellId);
+           //              }
+         }//for all cells using this point
+       }//for all points of this cell
+      }//if cell not yet visited
+    }//for all cells in this wave
+    
+    tmpWave = theWave;
+    theWave = theWave2;
+    theWave2 = tmpWave;
+    tmpWave->Reset();
+  } //while wave is not empty
+}
diff --git a/src/PIPELINE/VISU_LabelPointsFilter.hxx b/src/PIPELINE/VISU_LabelPointsFilter.hxx
new file mode 100644 (file)
index 0000000..d2e10a8
--- /dev/null
@@ -0,0 +1,76 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+// File:    VISU_LabelPointsFilter.hxx
+// Author:  Vitaly Smetannikov
+// Module : VISU
+//
+#ifndef VISU_LabelPointsFilter_HeaderFile
+#define VISU_LabelPointsFilter_HeaderFile
+
+#include "VISUPipeline.hxx"
+#include <vtkPolyDataAlgorithm.h>
+
+class vtkPolyData;
+
+class VISU_PIPELINE_EXPORT VISU_LabelPointsFilter : public vtkPolyDataAlgorithm
+{
+public:
+  vtkTypeMacro(VISU_LabelPointsFilter, vtkPolyDataAlgorithm);
+
+  static VISU_LabelPointsFilter* New();
+
+  void SetPointsNb(int theNb);
+
+  int GetPointsNb() const { return myPointsNb; }
+
+protected:
+  VISU_LabelPointsFilter();
+
+  virtual ~VISU_LabelPointsFilter();
+
+  virtual int RequestData(vtkInformation* request,
+                          vtkInformationVector** inputVector,
+                          vtkInformationVector* outputVector);
+
+  virtual int RequestUpdateExtent(vtkInformation*,
+                                  vtkInformationVector**,
+                                  vtkInformationVector*);
+
+
+  void TraverseAndMark (vtkIdList* theWave, 
+                       vtkIdList* theWave2, 
+                       int* theVisited,
+                       vtkIdType* thePointMap,
+                       int& theRegionNumber,
+                       vtkIdType& thePointNumber,
+                       vtkPolyData* theMesh);
+  
+  int GetRegions(vtkPolyData* theInput, 
+                vtkPolyData* theOutput);
+
+  int myPointsNb;
+
+};
+
+
+#endif
index 8c4dfc9008c49672de178fd7c26a7c4163186b56..2400418b5b6973be924c53efcbaebff787ceb36d 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_LookupTable.cxx
 //  Author : Vitaliy Smetannikov
 //  Module : VISU
-
+//
 #include "VISU_LookupTable.hxx"
 
 #include <vtkObjectFactory.h>
 
 using namespace std;
 
+
+//----------------------------------------------------------------------------
 vtkStandardNewMacro(VISU_LookupTable);
 
+
+//----------------------------------------------------------------------------
 VISU_LookupTable
 ::VISU_LookupTable(int sze, int ext):
   vtkLookupTable(sze, ext), 
@@ -41,6 +45,73 @@ VISU_LookupTable
   myBicolor(false) 
 {}
 
+//----------------------------------------------------------------------------
+namespace
+{
+  inline
+  void
+  CopyColor( unsigned char* theTaget, const unsigned char* theSource )
+  {
+    theTaget[0] = theSource[0];
+    theTaget[1] = theSource[1];
+    theTaget[2] = theSource[2];
+  }
+}
+
+
+//----------------------------------------------------------------------------
+void
+VISU_LookupTable
+::MarkValueByColor( vtkFloatingPointType theValue,
+                   unsigned char* theColor )
+{ 
+  vtkIdType anIndex = this->GetIndex( theValue );
+  unsigned char *aTablePtr = this->GetPointer( anIndex );
+  CopyColor( aTablePtr, theColor );
+}
+
+
+//----------------------------------------------------------------------------
+void
+VISU_LookupTable
+::FillByColor( unsigned char* theColor )
+{
+  vtkIdType aNbColors = this->GetNumberOfColors();
+  for(int i = 0; i < aNbColors; i++){
+    unsigned char *aTablePtr = this->GetPointer(i);
+    CopyColor( aTablePtr, theColor );
+  }
+}
+
+
+//----------------------------------------------------------------------------
+void
+VISU_LookupTable
+::MakeBiColor()
+{
+  unsigned char aRedPtr[3] = {255, 0, 0};
+  unsigned char aBluePtr[3] = {0, 0, 255};
+  
+  vtkFloatingPointType aRange[2];
+  this->GetTableRange(aRange);
+  vtkIdType aNbColors = this->GetNumberOfColors();
+  
+  vtkFloatingPointType aDelta = (aRange[1]-aRange[0])/aNbColors;
+  vtkFloatingPointType aValue = aRange[0]+0.5*aDelta;
+  for(int i = 0; i < aNbColors; i++){
+    vtkIdType anIndex = this->GetIndex(aValue);
+    unsigned char* aTablePtr = this->GetPointer(anIndex);
+    if(aValue > 0.0){
+      CopyColor(aTablePtr,aRedPtr);
+    }else{
+      CopyColor(aTablePtr,aBluePtr);
+    }
+    aValue += aDelta;
+  }
+}
+
+
+//----------------------------------------------------------------------------
 void 
 VISU_LookupTable
 ::SetMapScale(vtkFloatingPointType theScale)
index 93fc7a47b137c19cadbe062c5ac3158baa7d93bd..1acbecb607acfed4d48c727e90b4fa5b04ad2930 100644 (file)
@@ -1,34 +1,38 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VISU_LookupTable.h
 //  Author : Vitaliy Smetannikov
 //  Module : VISU
-
+//
 #ifndef VISU_LookupTable_H
 #define VISU_LookupTable_H
 
+#include "VISUPipeline.hxx"
+
 #include <vtkLookupTable.h>
 
 #include "VTKViewer.h"
 
-class VISU_LookupTable: public vtkLookupTable 
+class VISU_PIPELINE_EXPORT VISU_LookupTable: public vtkLookupTable 
 {
  public:
    vtkTypeMacro(VISU_LookupTable,vtkLookupTable);
@@ -44,8 +48,17 @@ class VISU_LookupTable: public vtkLookupTable
   bool GetBicolor() { return myBicolor; }
   void SetBicolor( bool theBicolor );
 
-   static int ComputeLogRange(vtkFloatingPointType inRange[2], vtkFloatingPointType outRange[2]);
-   unsigned char *MapValue(vtkFloatingPointType v);
+  static int ComputeLogRange( vtkFloatingPointType inRange[2], 
+                             vtkFloatingPointType outRange[2] );
+  
+  unsigned char *MapValue(vtkFloatingPointType v);
+
+  void MarkValueByColor( vtkFloatingPointType theValue,
+                        unsigned char* theColor );
+
+  void FillByColor( unsigned char* theColor );
+
+  void MakeBiColor();
 
  protected:
    VISU_LookupTable(int sze=256, int ext=256);
index d64efa6c52c5a6c61eaf1186d1d1ed81e551b637..4c3261d772297c4806143467d3638d29c560a686 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_MapperHolder.cxx
 // Author:  Alexey PETROV
 // Module : VISU
-
-
+//
 #include "VISU_MapperHolder.hxx"
 #include "VISU_PipeLine.hxx"
 
index 756abdeed99bba7a2990864f94bf774978cab4da..0f146d4c6451f9d9a2e785b7a7b3ef04d16d9cdf 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_MapperHolder.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #ifndef VISU_MapperHolder_HeaderFile
 #define VISU_MapperHolder_HeaderFile
 
@@ -139,6 +139,8 @@ public:
   vtkPlane* 
   GetClippingPlane(vtkIdType theID) = 0;
 
+  virtual void RemoveClippingPlane(vtkIdType theID) = 0;
+
   //----------------------------------------------------------------------------
   virtual
   void
index c879e29c74267f269f6ebe578b90ccc0ca8462f7..02c53dc7dd2fde07f7c3c89b9611a5edd25ce28b 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_StreamLinesPL.cxx
 // Author:  Alexey PETROV
 // Module : VISU
-
-
+//
 #include "VISU_MaskPointsFilter.hxx"
 
 #include <vtkObjectFactory.h>
index 38d879231a5b250d053714203aeee9e34666c1ef..a3fb63a7c0073aee5300fe60c1f58f87cfc173ca 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_MaskPointsFilter.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #ifndef VISU_MaskPointsFilter_HeaderFile
 #define VISU_MaskPointsFilter_HeaderFile
 
diff --git a/src/PIPELINE/VISU_MergedPL.cxx b/src/PIPELINE/VISU_MergedPL.cxx
new file mode 100644 (file)
index 0000000..ca29ede
--- /dev/null
@@ -0,0 +1,49 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+// File:    VISU_MergedPL.cxx
+// Author:  Alexey PETROV
+// Module : VISU
+//
+#include "VISU_MergedPL.hxx"
+#include "VISU_PipeLine.hxx"
+
+
+//----------------------------------------------------------------------------
+void
+VISU_MergedPL
+::DoShallowCopy(VISU_PipeLine *thePipeLine,
+               bool theIsCopyInput)
+{
+  if(VISU_MergedPL *aPipeLine = dynamic_cast<VISU_MergedPL*>(thePipeLine)){
+    if ( this == aPipeLine ) 
+      return;
+
+    if ( aPipeLine->IsExternalGeometryUsed() ) {
+      ClearGeometry();
+      int aNbOfGeometry = aPipeLine->GetNumberOfGeometry();
+      for ( int aGeomNumber = 0; aGeomNumber < aNbOfGeometry; aGeomNumber++ )
+       AddGeometry( aPipeLine->GetGeometry( aGeomNumber ) );
+    }else
+      SetSourceGeometry();
+  }
+}
diff --git a/src/PIPELINE/VISU_MergedPL.hxx b/src/PIPELINE/VISU_MergedPL.hxx
new file mode 100644 (file)
index 0000000..7c30a4c
--- /dev/null
@@ -0,0 +1,74 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+// File:    VISU_MergedPL.hxx
+// Author:  Alexey PETROV
+// Module : VISU
+//
+#ifndef VISU_MergedPL_HeaderFile
+#define VISU_MergedPL_HeaderFile
+
+#include "VISUPipeline.hxx"
+
+class vtkDataSet;
+class vtkPointSet;
+class VISU_PipeLine;
+
+//----------------------------------------------------------------------------
+struct VISU_PIPELINE_EXPORT VISU_MergedPL
+{
+  virtual  
+  void  
+  SetSourceGeometry() = 0;
+
+  virtual
+  int
+  AddGeometry( vtkDataSet* theGeometry ) = 0;
+
+  virtual
+  vtkDataSet*
+  GetGeometry( int theGeomNumber ) = 0;
+
+  virtual
+  int
+  GetNumberOfGeometry() = 0;
+
+  virtual
+  bool 
+  IsExternalGeometryUsed() = 0;
+
+  virtual
+  void
+  ClearGeometry() = 0;
+
+  virtual 
+  vtkPointSet* 
+  GetMergedInput() = 0;
+
+  virtual
+  void
+  DoShallowCopy(VISU_PipeLine *thePipeLine,
+               bool theIsCopyInput);
+};
+  
+#endif
index 66317af0eac9ae44764e8dae18c56784f12284bb..cff1dbf397f0def3fdcf3a1ad06d72da74b15afc 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_MeshPL.cxx
 // Author:  Alexey PETROV
 // Module : VISU
-
-
+//
 #include "VISU_MeshPL.hxx"
 
 #include "VISU_DataSetMapperHolder.hxx"
@@ -44,6 +42,7 @@ VISU_MeshPL
   VISU_UnstructuredGridPL(this)
 {
   SetIsShrinkable(true);
+  SetIsFeatureEdgesAllowed(true);
 }
 
 
@@ -61,7 +60,7 @@ void
 VISU_MeshPL
 ::Build()
 {
-  GetDataSetMapperHolder()->GetDataSetMapper()->SetInput(GetClippedInput());
+  GetDataSetMapper()->SetInput(GetClippedInput());
 }
 
 
index 08546ed66fa2241f234336e93a75a1d58065a66e..9ae7bb7e978f6ffabf1b6e8560af01793fca8635 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_MeshPL.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #ifndef VISU_MeshPL_HeaderFile
 #define VISU_MeshPL_HeaderFile
 
index 85184e7841154019982c556e192e5a1b026094c0..fd54f6e014905a3bfdc4b6ab4331ed59de36082c 100755 (executable)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_OpenGLPointSpriteMapper.cxx
 // Author:  
 // Module : VISU
-
+//
 #include "VISU_OpenGLPointSpriteMapper.hxx"
 
 #include "SVTK_Extension.h"
@@ -49,6 +48,8 @@
 #include <cmath>
 #include <string>
 
+#include "utilities.h"
+
 #ifndef WNT
 # ifndef GLX_GLXEXT_LEGACY
 #  define GLX_GLXEXT_LEGACY
@@ -350,6 +351,7 @@ void VISU_OpenGLPointSpriteMapper::SetPrimitiveType( int thePrimitiveType )
     return;
 
   this->PrimitiveType = thePrimitiveType;
+  this->Modified();
 }
 
 //-----------------------------------------------------------------------------
@@ -481,12 +483,10 @@ float ViewToDisplay( vtkRenderer* theRenderer )
 //
 void VISU_OpenGLPointSpriteMapper::RenderPiece(vtkRenderer *ren, vtkActor *act)
 {
-  bool isUseThisMapper = !( this->UseOpenGLMapper ||
-                           this->PrimitiveType == VISU_OpenGLPointSpriteMapper::GeomSphere );
+  bool isUseThisMapper = this->PrimitiveType != VISU_OpenGLPointSpriteMapper::GeomSphere;
 
   if( isUseThisMapper )
-    if( !this->InitExtensions() )
-      return;
+    this->InitExtensions();
 
   if( !isUseThisMapper )
   {
@@ -557,11 +557,10 @@ void VISU_OpenGLPointSpriteMapper::RenderPiece(vtkRenderer *ren, vtkActor *act)
   {
 #ifdef _DEBUG_RENDERING_PERFORMANCE_
     // To control when the mapper is recalculated
-    cout<<"VISU_OpenGLPointSpriteMapper::RenderPiece - "
-       <<(this->GetMTime() > this->BuildTime)<<"; "
-       <<(input->GetMTime() > this->BuildTime)<<"; "
-       <<(act->GetProperty()->GetMTime() > this->BuildTime)<<"; "
-       <<endl;
+    MESSAGE( "VISU_OpenGLPointSpriteMapper::RenderPiece - "
+             <<(this->GetMTime() > this->BuildTime)<<"; "
+             <<(input->GetMTime() > this->BuildTime)<<"; "
+             <<(act->GetProperty()->GetMTime() > this->BuildTime)<<"; ");
 #endif
     // sets this->Colors as side effect
     this->MapScalars( act->GetProperty()->GetOpacity() );
@@ -963,8 +962,7 @@ void DrawCellsPoints( vtkPolyData *theInput,
 int VISU_OpenGLPointSpriteMapper::Draw(vtkRenderer *theRenderer, vtkActor *theActor)
 {
 
-  if( this->UseOpenGLMapper ||
-      this->PrimitiveType == VISU_OpenGLPointSpriteMapper::GeomSphere )
+  if( this->PrimitiveType == VISU_OpenGLPointSpriteMapper::GeomSphere )
     return MAPPER_SUPERCLASS::Draw( theRenderer, theActor );
 
   vtkUnsignedCharArray *colors = NULL;
@@ -1040,39 +1038,52 @@ int VISU_OpenGLPointSpriteMapper::Draw(vtkRenderer *theRenderer, vtkActor *theAc
        delete aColorFunctor;
       }
 
-      GLuint aBufferObjectID = 0;
-      vglGenBuffersARB( 1, &aBufferObjectID );
-      vglBindBufferARB( GL_ARRAY_BUFFER_ARB, aBufferObjectID );
-      
-      int anArrayObjectSize = sizeof( TVertex ) * aTotalConnectivitySize;
-      vglBufferDataARB( GL_ARRAY_BUFFER_ARB, anArrayObjectSize, aVertexArr, GL_STATIC_DRAW_ARB );
-      
-      delete [] aVertexArr;
-      
-      vglBindBufferARB( GL_ARRAY_BUFFER_ARB, 0 );
-      vglBindBufferARB( GL_ARRAY_BUFFER_ARB, aBufferObjectID );
-      
-      glColorPointer( 4, GL_FLOAT, sizeof(TVertex), (void*)0 );
-      glVertexPointer( 3, GL_FLOAT, sizeof(TVertex), (void*)(4*sizeof(GLfloat)) );
-      
-      glEnableClientState( GL_VERTEX_ARRAY );
-      glEnableClientState( GL_COLOR_ARRAY );
-      
-      glDrawArrays( GL_POINTS, 0, aTotalConnectivitySize );
-      
-      glDisableClientState( GL_COLOR_ARRAY );
-      glDisableClientState( GL_VERTEX_ARRAY );
-      
-      vglDeleteBuffersARB( 1, &aBufferObjectID );
+      if( this->ExtensionsInitialized ) {
+       GLuint aBufferObjectID = 0;
+       vglGenBuffersARB( 1, &aBufferObjectID );
+       vglBindBufferARB( GL_ARRAY_BUFFER_ARB, aBufferObjectID );
+       
+       int anArrayObjectSize = sizeof( TVertex ) * aTotalConnectivitySize;
+       vglBufferDataARB( GL_ARRAY_BUFFER_ARB, anArrayObjectSize, aVertexArr, GL_STATIC_DRAW_ARB );
+       
+       delete [] aVertexArr;
+       
+       vglBindBufferARB( GL_ARRAY_BUFFER_ARB, 0 );
+       vglBindBufferARB( GL_ARRAY_BUFFER_ARB, aBufferObjectID );
+       
+       glColorPointer( 4, GL_FLOAT, sizeof(TVertex), (void*)0 );
+       glVertexPointer( 3, GL_FLOAT, sizeof(TVertex), (void*)(4*sizeof(GLfloat)) );
+       
+       glEnableClientState( GL_VERTEX_ARRAY );
+       glEnableClientState( GL_COLOR_ARRAY );
+       
+       glDrawArrays( GL_POINTS, 0, aTotalConnectivitySize );
+       
+       glDisableClientState( GL_COLOR_ARRAY );
+       glDisableClientState( GL_VERTEX_ARRAY );
+       
+       vglDeleteBuffersARB( 1, &aBufferObjectID );
+      } else { // there are not extensions
+       glColorPointer( 4, GL_FLOAT, sizeof(TVertex), aVertexArr );
+       glVertexPointer( 3, GL_FLOAT, sizeof(TVertex), 
+                        (void*)((GLfloat*)((void*)(aVertexArr)) + 4));
+
+       glEnableClientState( GL_VERTEX_ARRAY );
+       glEnableClientState( GL_COLOR_ARRAY );
+       
+       glDrawArrays( GL_POINTS, 0, aTotalConnectivitySize );
+       
+       glDisableClientState( GL_COLOR_ARRAY );
+       glDisableClientState( GL_VERTEX_ARRAY );
+
+       delete [] aVertexArr;
+      }
     }
 
     input->GetVerts()->GetNumberOfCells() + 
     input->GetLines()->GetNumberOfCells() + 
     input->GetPolys()->GetNumberOfCells() + 
     input->GetStrips()->GetNumberOfCells();
-    
-
-
   }
 
 
index a36ff1c096d7cd3b5cc209b9aa9410a0c28ce762..080461c32c3752d341d33a8ea0b4c5888497de29 100755 (executable)
@@ -1,30 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_OpenGLPointSpriteMapper.hxx
 // Author:  
 // Module : VISU
-
+//
 #ifndef VISU_OpenGLPointSpriteMapper_HeaderFile
 #define VISU_OpenGLPointSpriteMapper_HeaderFile
 
diff --git a/src/PIPELINE/VISU_OptionalDeformationPL.cxx b/src/PIPELINE/VISU_OptionalDeformationPL.cxx
new file mode 100755 (executable)
index 0000000..496ebd1
--- /dev/null
@@ -0,0 +1,101 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+// File:    VISU_ScalarMapPL.cxx
+// Author:  Roman NIKOLAEV
+// Module : VISU
+//Salome includes
+//
+#include "VISU_OptionalDeformationPL.hxx"
+#include "VISU_PipeLineUtils.hxx"
+
+//VTK includes
+#include <vtkDataSet.h>
+#include <vtkPassThroughFilter.h>
+#include <vtkWarpVector.h>
+#include <vtkCellDataToPointData.h>
+#ifdef _DEBUG_
+static int MYDEBUG = 0;
+#else
+static int MYDEBUG = 0;
+#endif
+
+//----------------------------------------------------------------------------
+VISU_OptionalDeformationPL::VISU_OptionalDeformationPL():
+  VISU_DeformationPL(),
+  myIsDeformed(true)
+{
+    if(MYDEBUG) MESSAGE("VISU_OptionalDeformationPL()::VISU_OptionalDeformationPL() - "<<this);
+}
+
+//----------------------------------------------------------------------------
+VISU_OptionalDeformationPL::~VISU_OptionalDeformationPL()
+{
+  if(MYDEBUG) MESSAGE("VISU_OptionalDeformationPL()::~VISU_OptionalDeformationPL() - "<<this);
+}
+
+//----------------------------------------------------------------------------
+unsigned long int
+VISU_OptionalDeformationPL::GetMTime(){
+  return Superclass::GetMTime();
+}
+
+//----------------------------------------------------------------------------
+void VISU_OptionalDeformationPL::UseDeformation(bool flag){
+  if(myIsDeformed == flag)
+    return;
+
+  myIsDeformed = flag;
+  if(myIsDeformed)
+    OnDeformation();
+  else
+    OffDeformation();
+}
+
+//----------------------------------------------------------------------------
+bool VISU_OptionalDeformationPL::IsDeformed(){
+  return myIsDeformed;
+}
+
+//----------------------------------------------------------------------------
+void VISU_OptionalDeformationPL::OnDeformation(){
+
+  myCellDataToPointData->SetInput(myInputPassFilter->GetOutput());
+  myWarpVector->SetInput(myCellDataToPointData->GetOutput());
+  myOutputPassFiler->SetInput(myWarpVector->GetOutput());
+}
+
+//----------------------------------------------------------------------------
+void VISU_OptionalDeformationPL::OffDeformation(){
+  myOutputPassFiler->SetInput(myInputPassFilter->GetOutput());
+}
+
+
+
+bool VISU_OptionalDeformationPL::CheckCanDeformate(vtkDataSet* theInput){
+  if(theInput) {
+    if(VISU::IsDataOnCells(theInput))
+      return theInput->GetCellData()->GetVectors() != NULL;
+    else if(VISU::IsDataOnPoints(theInput))
+      return theInput->GetPointData()->GetVectors() != NULL;
+  }
+  return false;
+}
diff --git a/src/PIPELINE/VISU_OptionalDeformationPL.hxx b/src/PIPELINE/VISU_OptionalDeformationPL.hxx
new file mode 100755 (executable)
index 0000000..0bd3073
--- /dev/null
@@ -0,0 +1,59 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  File   : VISU_OptionalDeformationPL.hxx
+//  Author : 
+//  Module : SALOME
+//
+#ifndef VISU_OptionalDeformationPL_HeaderFile
+#define VISU_OptionalDeformationPL_HeaderFile
+
+#include "VISUPipeline.hxx"
+#include "VISU_DeformationPL.hxx"
+
+class VISU_PIPELINE_EXPORT VISU_OptionalDeformationPL: public VISU_DeformationPL
+{
+public:
+  VISU_OptionalDeformationPL();
+  virtual ~VISU_OptionalDeformationPL();
+
+  typedef VISU_DeformationPL Superclass;
+
+  void UseDeformation(bool flag);
+  bool IsDeformed();
+
+  virtual 
+  unsigned 
+  long int
+  GetMTime();
+
+protected:
+  bool CheckCanDeformate(vtkDataSet* theInput);
+
+private:
+  void OnDeformation();
+  void OffDeformation();
+
+private:
+  bool myIsDeformed;
+};
+
+#endif
index ea165bc078c1c073b603e35d5ab35e7f35cf4f2e..d9519403bc48c7aa69ab2d9b38428a3587c6436a 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_PipeLine.cxx
 // Author:  Alexey PETROV
 // Module : VISU
-
-
+//
 #include "VISU_PipeLine.hxx"
 #include "VISU_MapperHolder.hxx"
 
@@ -36,6 +34,8 @@
 
 #include <float.h>
 #include <algorithm>
+#include <climits>
+#include <limits>
 
 #ifdef _DEBUG_
 static int MYDEBUG = 0;
@@ -47,7 +47,8 @@ static int MYDEBUG = 0;
 //----------------------------------------------------------------------------
 VISU_PipeLine
 ::VISU_PipeLine():
-  myIsShrinkable(true)
+  myIsShrinkable(true),
+  myIsFeatureEdgesAllowed(true)
 {
   if(MYDEBUG) MESSAGE("VISU_PipeLine::VISU_PipeLine - "<<this);
 }
@@ -231,7 +232,7 @@ VISU_PipeLine
 //----------------------------------------------------------------------------
 vtkFloatingPointType* 
 VISU_PipeLine
-::GetNodeCoord(int theObjID)
+::GetNodeCoord(vtkIdType theObjID)
 {
   return GetMapperHolder()->GetNodeCoord(theObjID);
 }
@@ -282,6 +283,26 @@ VISU_PipeLine
 }
 
 
+//----------------------------------------------------------------------------
+bool 
+VISU_PipeLine
+::IsFeatureEdgesAllowed()
+{
+  return myIsFeatureEdgesAllowed;
+}
+
+void 
+VISU_PipeLine
+::SetIsFeatureEdgesAllowed(bool theIsFeatureEdgesAllowed)
+{
+  if(myIsFeatureEdgesAllowed == theIsFeatureEdgesAllowed)
+    return;
+
+  myIsFeatureEdgesAllowed = theIsFeatureEdgesAllowed;
+  Modified();
+}
+
+
 //----------------------------------------------------------------------------
 void
 VISU_PipeLine
@@ -347,6 +368,12 @@ VISU_PipeLine
   return GetMapperHolder()->GetClippingPlane(theID);
 }
 
+//----------------------------------------------------------------------------
+void VISU_PipeLine::RemoveClippingPlane(vtkIdType theID)
+{
+  return GetMapperHolder()->RemoveClippingPlane(theID);
+}
+
 //----------------------------------------------------------------------------
 vtkDataSet* 
 VISU_PipeLine
index 5301593714de39a4d3468f01f40db3f3edee2cbd..ffc8138b2547ceb59c1b7621ff94be05b59a33ff 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_PipeLine.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #ifndef VISU_PipeLine_HeaderFile
 #define VISU_PipeLine_HeaderFile
 
@@ -132,6 +132,9 @@ public:
   bool 
   IsShrinkable();
 
+  bool 
+  IsFeatureEdgesAllowed();
+
   //----------------------------------------------------------------------------
   void
   SetImplicitFunction(vtkImplicitFunction *theFunction);
@@ -146,12 +149,14 @@ public:
   SetExtractBoundaryCells(bool theMode);
 
   //----------------------------------------------------------------------------
+  virtual
   void 
   RemoveAllClippingPlanes();
 
   vtkIdType
   GetNumberOfClippingPlanes();
 
+  virtual
   bool
   AddClippingPlane(vtkPlane* thePlane);
 
@@ -159,6 +164,8 @@ public:
   vtkPlane* 
   GetClippingPlane(vtkIdType theID);
 
+  virtual void RemoveClippingPlane(vtkIdType theID);
+
   virtual
   void
   SetPlaneParam(vtkFloatingPointType theDir[3], 
@@ -209,10 +216,14 @@ protected:
   void 
   SetIsShrinkable(bool theIsShrinkable);
 
+  void 
+  SetIsFeatureEdgesAllowed(bool theIsFeatureEdgesAllowed);
+
 private:
   //----------------------------------------------------------------------------
   vtkSmartPointer<VISU_MapperHolder> myMapperHolder;
   bool myIsShrinkable;
+  bool myIsFeatureEdgesAllowed;
 };
 
 #endif
index 6c31a35605a2e5859be61840e2a5f4b987b905cb..259682e779fdb60dc777c805f6adff0a392c3ca2 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_PipeLine.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #include "VISU_PipeLineUtils.hxx"
 
 #include "VISU_OpenGLPointSpriteMapper.hxx"
@@ -95,6 +95,7 @@ namespace VISU
     theTarget->SetScalarMode(theSource->GetScalarMode());
     theTarget->SetImmediateModeRendering(theSource->GetImmediateModeRendering());
     theTarget->SetUseLookupTableScalarRange(theSource->GetUseLookupTableScalarRange());
+    theTarget->SetInterpolateScalarsBeforeMapping(theSource->GetInterpolateScalarsBeforeMapping());
     if(theSource->GetArrayAccessMode() == VTK_GET_ARRAY_BY_ID)
       theTarget->ColorByArrayComponent(theSource->GetArrayId(), theSource->GetArrayComponent());
     else
index 65909900e69c2d219a4221c578b75ac603e38522..d19c466707d667789d05129810ba6e73ab8bb6b2 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_PipeLine.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #ifndef VISU_PipeLineUtils_HeaderFile
 #define VISU_PipeLineUtils_HeaderFile
 
@@ -95,12 +95,12 @@ namespace VISU
                   vtkFloatingPointType theSource);
 
   //! Checks whether the scalar range is the same or not
-  bool
+  bool VISU_PIPELINE_EXPORT
   CheckIsSameRange(vtkFloatingPointType* theTarget,
                   vtkFloatingPointType* theSource);
 
   //! Customizes vtkMapper::ShallowCopy
-  void
+  void VISU_PIPELINE_EXPORT
   CopyMapper(vtkMapper* theTarget, 
             vtkMapper* theSource,
             bool theIsCopyInput);
@@ -112,20 +112,20 @@ namespace VISU
                    bool theIsCopyInput);
 
   //! Customizes vtkPolyDataMapper::ShallowCopy
-  void
+  void VISU_PIPELINE_EXPORT
   CopyPolyDataMapper(vtkPolyDataMapper* theTarget, 
                     vtkPolyDataMapper* theSource,
                     bool theIsCopyInput);
 
   //! Customizes VISU_OpenGLPointSpriteMapper::ShallowCopy
-  void
+  void VISU_PIPELINE_EXPORT
   CopyPointSpriteDataMapper(VISU_OpenGLPointSpriteMapper* theTarget, 
                            VISU_OpenGLPointSpriteMapper* theSource,
                            bool theIsCopyInput);
 
 
   //----------------------------------------------------------------------------
-  void
+  void VISU_PIPELINE_EXPORT
   ComputeBoundsParam(vtkDataSet* theDataSet,
                     vtkFloatingPointType theDirection[3], 
                     vtkFloatingPointType theMinPnt[3],
@@ -134,7 +134,7 @@ namespace VISU
 
 
   //----------------------------------------------------------------------------
-  void
+  void VISU_PIPELINE_EXPORT
   DistanceToPosition(vtkDataSet* theDataSet,
                     vtkFloatingPointType theDirection[3], 
                     vtkFloatingPointType theDist, 
@@ -142,7 +142,7 @@ namespace VISU
 
 
   //----------------------------------------------------------------------------
-  void
+  void VISU_PIPELINE_EXPORT
   PositionToDistance(vtkDataSet* theDataSet,
                     vtkFloatingPointType theDirection[3], 
                     vtkFloatingPointType thePos[3], 
index 60229e88a0b045af6b0d5f7f5bb25e43be1e5858..7ed31a8ecf3d266f1be4044bb945a13e6c009331 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   : VVTK_ImplicitFunctionWidget.cxx
 //  Author : Peter KURNEV
 //  Module : SALOME
 //  $Header$
-
+//
 #include "VISU_PlanesWidget.hxx"
 #include "VISU_ImplicitFunctionWidget.hxx"
 
index 77d3dcd01ffab4691958faa9323f641877008d3e..34006817be7a7178bb5e3e6999937332028c1aff 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   : VISU_PlanesWidget.h
 //  Author : Peter KURNEV
 //  Module : SALOME
 //  $Header$
-
+//
 #ifndef __VISU_PlanesWidget_h
 #define __VISU_PlanesWidget_h
 
index 7696d62e5d5453ae344ec30efd6e543808ef9011..8c3d9aeac9cfb9693c3e56e537d53b88805d3f4a 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_PipeLine.cxx
 // Author:  Alexey PETROV
 // Module : VISU
-
-
+//
 #include "VISU_Plot3DPL.hxx"
 #include "VISU_CutPlanesPL.hxx"
 #include "VISU_PipeLineUtils.hxx"
@@ -56,9 +55,11 @@ VISU_Plot3DPL
   myIsRelative(true),
   myIsContour(false),
   myPosition(0.5),
-  myScaleFactor(1.0)
+  myScaleFactor(1.0),
+  myMapScaleFactor(1.0)
 {
   SetIsShrinkable(false);
+  SetIsFeatureEdgesAllowed(false);
 
   myCellDataToPointData->Delete();
   myAppendPolyData->Delete();
@@ -151,13 +152,14 @@ VISU_Plot3DPL
 //----------------------------------------------------------------------------
 vtkFloatingPointType
 VISU_Plot3DPL
-::GetScaleFactor(vtkDataSet* theDataSet)
+::GetScaleFactor( VISU_ColoredPL* theColoredPL,
+                 vtkDataSet* theDataSet )
 {
   theDataSet->Update();
   vtkFloatingPointType aLength = theDataSet->GetLength(); // diagonal length
 
   vtkFloatingPointType aScalarRange[2];
-  GetSourceRange(aScalarRange);
+  theColoredPL->GetSourceRange(aScalarRange);
 
   static vtkFloatingPointType EPS = 0.3;
   vtkFloatingPointType aRange = aScalarRange[1];
@@ -176,7 +178,7 @@ VISU_Plot3DPL
   Superclass::Init();
 
   myOrientation = GetOrientation(GetMergedInput());
-  SetScaleFactor(GetScaleFactor(GetMergedInput()));
+  SetScaleFactor( GetScaleFactor( this, GetMergedInput() ) );
 }
 
 
@@ -314,7 +316,7 @@ VISU_Plot3DPL
 ::SetScaleFactor(vtkFloatingPointType theScaleFactor)
 {
   myScaleFactor = theScaleFactor;
-  myWarpScalar->SetScaleFactor(theScaleFactor);
+  myWarpScalar->SetScaleFactor(theScaleFactor*myMapScaleFactor);
 }
 
 
@@ -523,6 +525,7 @@ void
 VISU_Plot3DPL
 ::SetMapScale(vtkFloatingPointType theMapScale)
 {
+  myMapScaleFactor = theMapScale;
   Superclass::SetMapScale(theMapScale);
 
   if ( myIsContour ) {
index 2cb63767ca03c63e1779a09b764e83ec2bf035b7..d1e7f802e2d5104ea357bf217b2150506c178b85 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_CutPlanesPL.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #ifndef VISU_Plot3DPL_HeaderFile
 #define VISU_Plot3DPL_HeaderFile
 
@@ -121,13 +121,17 @@ public:
   VISU_CutPlanesPL::PlaneOrientation
   GetOrientation(vtkDataSet* theDataSet);
 
+  static
   vtkFloatingPointType
-  GetScaleFactor(vtkDataSet* theDataSet);
+  GetScaleFactor( VISU_ColoredPL* theColoredPL,
+                 vtkDataSet* theDataSet );
 
-  void SetMapScale(vtkFloatingPointType theMapScale);
+  void 
+  SetMapScale(vtkFloatingPointType theMapScale);
 
 protected:
   VISU_Plot3DPL();
+
   virtual 
   ~VISU_Plot3DPL();
 
@@ -142,7 +146,7 @@ protected:
 
   vtkFloatingPointType myAngle[3];
   bool myIsRelative, myIsContour;
-  vtkFloatingPointType myPosition, myScaleFactor;
+  vtkFloatingPointType myPosition, myScaleFactor, myMapScaleFactor;
   VISU_CutPlanesPL::PlaneOrientation myOrientation;
 
   vtkSmartPointer<vtkCellDataToPointData> myCellDataToPointData;
index 69c9be266c204dedd9873c979b750f77cd7664af..6f6e16872d2beef1ceb9eb4cb92f882fc640fabf 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_PointSpriteMapperHolder.cxx
 // Author:  Alexey PETROV
 // Module : VISU
-
-
+//
 #include "VISU_PointSpriteMapperHolder.hxx"
 #include "VISU_OpenGLPointSpriteMapper.hxx"
 
 #include "VISU_PipeLineUtils.hxx"
+#include "SALOME_ExtractPolyDataGeometry.h"
 
 #ifdef _DEBUG_
 static int MYDEBUG = 0;
@@ -73,6 +72,7 @@ VISU_PointSpriteMapperHolder
     VISU::CopyPointSpriteDataMapper(GetPointSpriteMapper(), 
                                    aMapperHolder->GetPointSpriteMapper(), 
                                    theIsCopyInput);
+    myExtractPolyDataGeometry->SetImplicitFunction(aMapperHolder->GetImplicitFunction());
   }
 }
 
index 9aedbc6211a781efa630caa215022a10735903a1..79ef77aa0d6fc11103ab792df048c1c67c6b941d 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_PointSpriteMapperHolder.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #ifndef VISU_PointSpriteMapperHolder_HeaderFile
 #define VISU_PointSpriteMapperHolder_HeaderFile
 
index 0b9cd22766a47430e96165a29f0e401554023c34..74d39f1e670d86d873a8ce2ca6350157703c6794 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_PolyDataMapperHolder.cxx
 // Author:  Alexey PETROV
 // Module : VISU
-
-
+//
 #include "VISU_PolyDataMapperHolder.hxx"
 #include "SALOME_ExtractPolyDataGeometry.h"
 #include "VISU_LookupTable.hxx"
@@ -40,6 +38,7 @@
 #include <vtkImplicitFunction.h>
 #include <vtkImplicitFunctionCollection.h>
 #include <vtkMath.h>
+//#include <vtkExtractPolyDataGeometry.h>
 
 #ifdef _DEBUG_
 static int MYDEBUG = 0;
@@ -67,6 +66,7 @@ VISU_PolyDataMapperHolder
   myExtractPolyDataGeometry->SetImplicitFunction(anImplicitBoolean);
   anImplicitBoolean->SetOperationTypeToIntersection();
   anImplicitBoolean->Delete();
+  //myExtractPolyDataGeometry->ExtractInsideOn();
 }
 
 
@@ -92,6 +92,7 @@ VISU_PolyDataMapperHolder
     VISU::CopyPolyDataMapper(GetPolyDataMapper(), 
                             aMapperHolder->GetPolyDataMapper(), 
                             theIsCopyInput);
+    myExtractPolyDataGeometry->SetImplicitFunction(aMapperHolder->GetImplicitFunction());
   }
 }
 
@@ -257,6 +258,7 @@ VISU_PolyDataMapperHolder
     if (vtkImplicitBoolean* aBoolean = myExtractPolyDataGeometry->GetImplicitBoolean()) {
       vtkImplicitFunctionCollection* aFunction = aBoolean->GetFunction();
       aFunction->AddItem(thePlane);
+      aBoolean->Modified();
       // Check, that at least one cell present after clipping.
       // This check was introduced because of bug IPAL8849.
       vtkDataSet* aClippedDataSet = GetClippedInput();
@@ -286,6 +288,18 @@ VISU_PolyDataMapperHolder
   return aPlane;
 }
 
+//----------------------------------------------------------------------------
+void VISU_PolyDataMapperHolder::RemoveClippingPlane(vtkIdType theID)
+{
+  if(theID >= 0 && theID < GetNumberOfClippingPlanes()){
+    if(vtkImplicitBoolean* aBoolean = myExtractPolyDataGeometry->GetImplicitBoolean()){
+      vtkImplicitFunctionCollection* aFunctions = aBoolean->GetFunction();
+      aFunctions->RemoveItem(theID);
+      aBoolean->Modified();  
+    }
+  }
+}
+
 //----------------------------------------------------------------------------
 void
 VISU_PolyDataMapperHolder
index dc9848eccc1ebfbd02123f08b4312d89b1f68482..35e909b2387a71932a2df0815e09f90a05bd8228 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_PolyDataMapperHolder.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #ifndef VISU_PolyDataMapperHolder_HeaderFile
 #define VISU_PolyDataMapperHolder_HeaderFile
 
@@ -129,6 +129,8 @@ public:
   virtual
   vtkPlane* 
   GetClippingPlane(vtkIdType theID);
+  
+  void RemoveClippingPlane(vtkIdType theID);
 
 protected:
   //----------------------------------------------------------------------------
@@ -159,6 +161,8 @@ private:
   //----------------------------------------------------------------------------
   VISU::PPolyDataIDMapper myPolyDataIDMapper;
   vtkSmartPointer<vtkPolyDataMapper> myPolyDataMapper;
+
+protected:
   vtkSmartPointer<SALOME_ExtractPolyDataGeometry> myExtractPolyDataGeometry; //!< Clipping
 };
 
index 76e4c05a512c7856f85ce574170bd6f66da9e2ff..2655054d513c6cf4d490cda7d23b7d8ee8e5d1f5 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_PolyDataPL.cxx
 // Author:  Alexey PETROV
 // Module : VISU
-
-
+//
 #include "VISU_PolyDataPL.hxx"
-#include "SALOME_ExtractPolyDataGeometry.h"
-
-#include "VISU_PipeLineUtils.hxx"
+#include "VISU_PolyDataMapperHolder.hxx"
 
-#include <float.h>
-#include <algorithm>
-
-#include <vtkPolyDataMapper.h>
-#include <vtkPolyData.h>
-
-#include <vtkPlane.h>
-#include <vtkImplicitBoolean.h>
-#include <vtkImplicitFunction.h>
-#include <vtkImplicitFunctionCollection.h>
-#include <vtkMath.h>
-
-#ifdef _DEBUG_
-static int MYDEBUG = 0;
-#else
-static int MYDEBUG = 0;
-#endif
 
 //----------------------------------------------------------------------------
 VISU_PolyDataPL
-::VISU_PolyDataPL():
-  myExtractPolyDataGeometry(SALOME_ExtractPolyDataGeometry::New())
-{
-  if(MYDEBUG) MESSAGE("VISU_PolyDataPL::VISU_PolyDataPL - "<<this);
-
-  // Clipping functionality
-  myExtractPolyDataGeometry->Delete();
-  myExtractPolyDataGeometry->SetStoreMapping(true);
-
-  vtkImplicitBoolean* anImplicitBoolean = vtkImplicitBoolean::New();
-  myExtractPolyDataGeometry->SetImplicitFunction(anImplicitBoolean);
-  anImplicitBoolean->SetOperationTypeToIntersection();
-  anImplicitBoolean->Delete();
-}
+::VISU_PolyDataPL()
+{}
 
 
 //----------------------------------------------------------------------------
 VISU_PolyDataPL
 ::~VISU_PolyDataPL()
-{
-  if(MYDEBUG)
-    MESSAGE("VISU_PolyDataPL::~VISU_PolyDataPL - "<<this);
-}
-
-
-//----------------------------------------------------------------------------
-void
-VISU_PolyDataPL
-::SetPolyDataIDMapper(const VISU::PPolyDataIDMapper& theIDMapper)
-{
-  myExtractPolyDataGeometry->SetInput(theIDMapper->GetPolyDataOutput());
-  myPolyDataIDMapper = theIDMapper;
-  SetIDMapper(theIDMapper);
-}
-
-
-//----------------------------------------------------------------------------
-const VISU::PPolyDataIDMapper&  
-VISU_PolyDataPL
-::GetPolyDataIDMapper() const
-{
-  return myPolyDataIDMapper;
-}
+{}
 
 
 //----------------------------------------------------------------------------
-vtkPolyData* 
+void  
 VISU_PolyDataPL
-::GetPolyDataInput()
+::OnCreateMapperHolder()
 {
-  if(myPolyDataIDMapper)
-    return myPolyDataIDMapper->GetPolyDataOutput();
+  myPolyDataMapperHolder = VISU_PolyDataMapperHolder::New();
+  myPolyDataMapperHolder->Delete();
 
-  return NULL;
-}
-
-
-//----------------------------------------------------------------------------
-vtkPointSet* 
-VISU_PolyDataPL
-::GetClippedInput() const
-{
-  vtkPolyData* aDataSet = myExtractPolyDataGeometry->GetOutput();
-  aDataSet->Update();
-  return aDataSet;
+  SetMapperHolder(myPolyDataMapperHolder.GetPointer());
 }
 
 
 //----------------------------------------------------------------------------
 void
 VISU_PolyDataPL
-::OnCreateMapper()
-{
-  myPolyDataMapper = vtkPolyDataMapper::New();
-  myPolyDataMapper->Delete();
-  SetMapper(myPolyDataMapper.GetPointer());
-}
-
-
-//----------------------------------------------------------------------------
-void
-VISU_PolyDataPL
-::SetPolyDataMapper(vtkPolyDataMapper* theMapper)
-{
-  myPolyDataMapper = theMapper;
-  SetMapper(theMapper);
-}
-
-
-//----------------------------------------------------------------------------
-vtkPolyDataMapper* 
-VISU_PolyDataPL
-::GetPolyDataMapper()
-{
-  return myPolyDataMapper.GetPointer();
-}
-
-
-//----------------------------------------------------------------------------
-void 
-VISU_PolyDataPL
-::DoCopyMapper(VISU_PipeLine *thePipeLine,
-              bool theIsCopyInput)
-{
-  if(VISU_PolyDataPL* aPipeLine = dynamic_cast<VISU_PolyDataPL*>(thePipeLine)){
-    if(theIsCopyInput)
-      SetPolyDataIDMapper(aPipeLine->GetPolyDataIDMapper());
-    Update();
-    VISU::CopyPolyDataMapper(GetPolyDataMapper(), 
-                            aPipeLine->GetPolyDataMapper(), 
-                            theIsCopyInput);
-  }
-}
-
-
-//----------------------------------------------------------------------------
-void
-VISU_PolyDataPL
-::SetLookupTable(VISU_LookupTable* theLookupTable)
-{
-  myPolyDataMapper->SetLookupTable(theLookupTable);
-}
-
-
-//----------------------------------------------------------------------------
-unsigned long int
-VISU_PolyDataPL
-::GetMemorySize()
-{
-  unsigned long int aSize = 0;
-  if(myExtractPolyDataGeometry->GetInput())
-    if(vtkDataSet* aDataSet = myExtractPolyDataGeometry->GetOutput())
-      aSize = aDataSet->GetActualMemorySize() * 1024;
-  
-  aSize += Superclass::GetMemorySize();
-
-  return aSize;
-}
-
-
-//------------------------ Clipping planes -----------------------------------
-bool 
-VISU_PolyDataPL
-::AddClippingPlane(vtkPlane* thePlane)
-{
-  if (thePlane) {
-    if (vtkImplicitBoolean* aBoolean = myExtractPolyDataGeometry->GetImplicitBoolean()) {
-      vtkImplicitFunctionCollection* aFunction = aBoolean->GetFunction();
-      aFunction->AddItem(thePlane);
-      // Check, that at least one cell present after clipping.
-      // This check was introduced because of bug IPAL8849.
-      vtkDataSet* aClippedDataSet = GetClippedInput();
-      if(aClippedDataSet->GetNumberOfCells() < 1)
-        return false;
-    }
-  }
-  return true;
-}
-
-//----------------------------------------------------------------------------
-vtkPlane* 
-VISU_PolyDataPL
-::GetClippingPlane(vtkIdType theID) const
-{
-  vtkPlane* aPlane = NULL;
-  if(theID >= 0 && theID < GetNumberOfClippingPlanes()){
-    if(vtkImplicitBoolean* aBoolean = myExtractPolyDataGeometry->GetImplicitBoolean()){
-      vtkImplicitFunctionCollection* aFunction = aBoolean->GetFunction();
-      vtkImplicitFunction* aFun = NULL;
-      aFunction->InitTraversal();
-      for(vtkIdType anID = 0; anID <= theID; anID++)
-       aFun = aFunction->GetNextItem();
-      aPlane = dynamic_cast<vtkPlane*>(aFun);
-    }
-  }
-  return aPlane;
-}
-
-//----------------------------------------------------------------------------
-void
-VISU_PolyDataPL
-::RemoveAllClippingPlanes()
-{
-  if(vtkImplicitBoolean* aBoolean = myExtractPolyDataGeometry->GetImplicitBoolean()){
-    vtkImplicitFunctionCollection* aFunction = aBoolean->GetFunction();
-    aFunction->RemoveAllItems();
-    aBoolean->Modified(); // VTK bug
-  }
-}
-
-//----------------------------------------------------------------------------
-vtkIdType
-VISU_PolyDataPL
-::GetNumberOfClippingPlanes() const
-{
-  if(vtkImplicitBoolean* aBoolean = myExtractPolyDataGeometry->GetImplicitBoolean()){
-    vtkImplicitFunctionCollection* aFunction = aBoolean->GetFunction();
-    return aFunction->GetNumberOfItems();
-  }
-  return 0;
-}
-
-//----------------------------------------------------------------------------
-vtkIdType 
-VISU_PolyDataPL
-::GetNodeObjID(vtkIdType theID)
-{
-  vtkIdType anID = myExtractPolyDataGeometry->GetNodeObjId(theID);
-  return Superclass::GetNodeObjID(anID);
-}
-
-vtkIdType 
-VISU_PolyDataPL
-::GetNodeVTKID(vtkIdType theID)
-{
-  vtkIdType anID = Superclass::GetNodeVTKID(theID);
-  return myExtractPolyDataGeometry->GetNodeVTKId(anID);
-}
-
-vtkFloatingPointType* 
-VISU_PolyDataPL
-::GetNodeCoord(int theObjID)
+::SetPolyDataIDMapper(const VISU::PPolyDataIDMapper& theIDMapper)
 {
-  return Superclass::GetNodeCoord(theObjID);
+  GetPolyDataMapperHolder()->SetPolyDataIDMapper( theIDMapper );
 }
 
 
 //----------------------------------------------------------------------------
-vtkIdType 
+VISU_PolyDataMapperHolder*  
 VISU_PolyDataPL
-::GetElemObjID(vtkIdType theID)
+::GetPolyDataMapperHolder()
 {
-  vtkIdType anID = myExtractPolyDataGeometry->GetElemObjId(theID);
-  return Superclass::GetElemObjID(anID);
-}
-
-vtkIdType
-VISU_PolyDataPL
-::GetElemVTKID(vtkIdType theID)
-{
-  vtkIdType anID = Superclass::GetElemVTKID(theID);
-  return myExtractPolyDataGeometry->GetElemVTKId(anID);
-}
+  GetMapperHolder();
 
-vtkCell* 
-VISU_PolyDataPL
-::GetElemCell(vtkIdType  theObjID)
-{
-  return Superclass::GetElemCell(theObjID);
+  return myPolyDataMapperHolder.GetPointer();
 }
 
 
 //----------------------------------------------------------------------------
-void
+vtkPolyDataMapper*  
 VISU_PolyDataPL
-::SetImplicitFunction(vtkImplicitFunction *theFunction)
-{
-  myExtractPolyDataGeometry->SetImplicitFunction(theFunction);
-} 
-
-vtkImplicitFunction * 
-VISU_PolyDataPL
-::GetImplicitFunction()
+::GetPolyDataMapper()
 {
-  return myExtractPolyDataGeometry->GetImplicitFunction();
+  return GetPolyDataMapperHolder()->GetPolyDataMapper();
 }
 
-SALOME_ExtractPolyDataGeometry*
-VISU_PolyDataPL
-::GetExtractPolyDataGeometryFilter()
-{
-  return myExtractPolyDataGeometry.GetPointer();
-} 
-
 
 //----------------------------------------------------------------------------
index 1b8fa32526e8797691b92bf087b94ece231b7871..3dc1aa0bdc4b8533b2f51c91519f3bc83ae21ef2 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_UnstructuredGripPL.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #ifndef VISU_PolyDataPL_HeaderFile
 #define VISU_PolyDataPL_HeaderFile
 
+#include "VISUPipeline.hxx"
 #include "VISU_ColoredPL.hxx"
 
+class VISU_PolyDataMapperHolder;
 class vtkPolyDataMapper;
-class vtkPolyData;
-class SALOME_ExtractPolyDataGeometry;
 
 
 //----------------------------------------------------------------------------
-class VISU_PolyDataPL : public VISU_ColoredPL
+class VISU_PIPELINE_EXPORT VISU_PolyDataPL : public VISU_ColoredPL
 {
 public:
   vtkTypeMacro(VISU_PolyDataPL, VISU_ColoredPL);
 
-  //----------------------------------------------------------------------------
-  virtual 
-  vtkPolyDataMapper* 
-  GetPolyDataMapper();
-
-  virtual
-  vtkPolyData* 
-  GetPolyDataInput();
-
-  //! Gets memory size used by the instance (bytes).
-  virtual
-  unsigned long int
-  GetMemorySize();
-
-  //----------------------------------------------------------------------------
-  virtual
-  void
-  SetImplicitFunction(vtkImplicitFunction *theFunction);
-
-  virtual
-  vtkImplicitFunction* 
-  GetImplicitFunction();
-
-  virtual
-  SALOME_ExtractPolyDataGeometry*
-  GetExtractPolyDataGeometryFilter();
-
-  //----------------------------------------------------------------------------
-  // Clipping planes
-  virtual
-  void 
-  RemoveAllClippingPlanes();
-
-  virtual
-  vtkIdType
-  GetNumberOfClippingPlanes() const;
-
-  virtual
-  bool
-  AddClippingPlane(vtkPlane* thePlane);
-
-  virtual
-  vtkPlane* 
-  GetClippingPlane(vtkIdType theID) const;
-
-  //----------------------------------------------------------------------------
-  virtual
-  vtkIdType
-  GetNodeObjID(vtkIdType theID);
-
-  virtual
-  vtkIdType
-  GetNodeVTKID(vtkIdType theID);
-
-  virtual
-  vtkFloatingPointType* 
-  GetNodeCoord(vtkIdType theObjID);
-
-  virtual
-  vtkIdType
-  GetElemObjID(vtkIdType theID);
-
-  virtual
-  vtkIdType
-  GetElemVTKID(vtkIdType theID);
-
-  virtual
-  vtkCell*
-  GetElemCell(vtkIdType theObjID);
-
   //----------------------------------------------------------------------------
   void 
   SetPolyDataIDMapper(const VISU::PPolyDataIDMapper& theIDMapper);
 
-  const VISU::PPolyDataIDMapper&
-  GetPolyDataIDMapper() const;
+  VISU_PolyDataMapperHolder*
+  GetPolyDataMapperHolder();
+
+  vtkPolyDataMapper* 
+  GetPolyDataMapper();
 
 protected:
   VISU_PolyDataPL();
@@ -126,28 +59,10 @@ protected:
 
   virtual
   void
-  DoCopyMapper(VISU_PipeLine *thePipeLine,
-              bool theIsCopyInput);
-
-  virtual
-  void
-  OnCreateMapper();
-
-  void 
-  SetPolyDataMapper(vtkPolyDataMapper* theMapper);
-
-  virtual
-  void
-  SetLookupTable(VISU_LookupTable* theLookupTable);
-
-  virtual
-  vtkPointSet* 
-  GetClippedInput() const;
+  OnCreateMapperHolder();
 
 private:
-  VISU::PPolyDataIDMapper myPolyDataIDMapper;
-  vtkSmartPointer<vtkPolyDataMapper> myPolyDataMapper;
-  vtkSmartPointer<SALOME_ExtractPolyDataGeometry> myExtractPolyDataGeometry; //!< Clipping
+  vtkSmartPointer<VISU_PolyDataMapperHolder> myPolyDataMapperHolder;
 };
 
 #endif
index 9adbc3877e5f8cba524fe862b11418d55967292c..fcb77b2d05996fbee5ce86bcf9ba5064709dcf5d 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_PipeLine.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #include "VISU_ScalarBarActor.hxx"
 
 #include <vtkPolyDataMapper2D.h>
@@ -38,6 +38,8 @@
 #include <vtkViewport.h>
 #include <vtkWindow.h>
 #include <vtkLogLookupTable.h>
+#include <vtkProperty2D.h> // RKV
+#include <vtkAxisActor2D.h> // RKV
 
 using namespace std;
 
@@ -103,12 +105,36 @@ VISU_ScalarBarActor::VISU_ScalarBarActor()
   this->LastSize[0] = 0;
   this->LastSize[1] = 0;
 
-  this->TitleRatioWidth = 0;
+  this->TitleRatioSize = 0;
   this->LabelRatioWidth = 0;
   this->BarRatioWidth = 0;
-  this->TitleRatioHeight = 0;
-  this->LabelRatioHeight = 0;
   this->BarRatioHeight = 0;
+  
+  // RKV : Begin
+  this->Distribution = vtkDoubleArray::New();
+  this->DistributionObj = vtkDataObject::New();
+  this->DistributionActor = VISU_XYPlotActor::New();
+  this->DistributionActor->SetTitle("");
+  this->DistributionActor->SetXTitle("");
+  this->DistributionActor->SetYTitle("");
+  this->DistributionActor->GetXAxisActor2D()->LabelVisibilityOff();
+  this->DistributionActor->GetXAxisActor2D()->TitleVisibilityOff();
+  this->DistributionActor->GetXAxisActor2D()->TickVisibilityOff();
+//  this->DistributionActor->GetXAxisActor2D()->SetFontFactor(0.);
+  this->DistributionActor->SetNumberOfYLabels(1);
+//  this->DistributionActor->SetNumberOfXLabels(2);
+  this->DistributionActor->GetXAxisActor2D()->AdjustLabelsOff();
+  this->DistributionActor->GetYAxisActor2D()->AdjustLabelsOff();
+  this->DistributionActor->LegendOff();
+  this->DistributionActor->SetLabelFormat("%4.3f");
+  this->DistributionActor->SetXValuesToIndex();
+//  this->DistributionActor->GetPositionCoordinate()->SetValue(0.0, 0.67, 0);
+//  this->DistributionActor->GetPosition2Coordinate()->SetValue(1.0, 0.33, 0); // #relative to Position
+  this->DistributionActor->GetPositionCoordinate()->
+    SetReferenceCoordinate(this->PositionCoordinate);
+  this->DistributionVisibilityOff(); // Don't show the distribution curve by default
+  
+  // RKV : End
 }
 
 void VISU_ScalarBarActor::ReleaseGraphicsResources(vtkWindow *win)
@@ -122,6 +148,7 @@ void VISU_ScalarBarActor::ReleaseGraphicsResources(vtkWindow *win)
       }
     }
   this->ScalarBarActor->ReleaseGraphicsResources(win);
+  this->DistributionActor->ReleaseGraphicsResources(win); // RKV
 }
 
 VISU_ScalarBarActor::~VISU_ScalarBarActor()
@@ -146,10 +173,16 @@ VISU_ScalarBarActor::~VISU_ScalarBarActor()
     delete [] this->TextActors;
     }
 
+  // RKV : Begin
+  this->DistributionActor->Delete();
+  this->DistributionObj->Delete();
+  this->SetDistribution(NULL);
+  // RKV : End
+
   this->ScalarBar->Delete();
   this->ScalarBarMapper->Delete();
   this->ScalarBarActor->Delete();
-
+  
   if (this->Title)
     {
     delete [] this->Title;
@@ -172,6 +205,10 @@ int VISU_ScalarBarActor::RenderOverlay(vtkViewport *viewport)
     renderedSomething += this->TitleActor->RenderOverlay(viewport);
     }
   this->ScalarBarActor->RenderOverlay(viewport);
+  // RKV : Begin
+  if (this->DistributionVisibility)
+    this->DistributionActor->RenderOverlay(viewport);
+  // RKV : End
   if( this->TextActors == NULL)
     {
      vtkWarningMacro(<<"Need a mapper to render a scalar bar");
@@ -238,11 +275,19 @@ int VISU_ScalarBarActor::RenderOpaqueGeometry(vtkViewport *viewport)
     }
   
   // Check to see whether we have to rebuild everything
+  // RKV : Begin
   if (positionsHaveChanged ||
       this->GetMTime() > this->BuildTime || 
       this->LookupTable->GetMTime() > this->BuildTime ||
       this->LabelTextProperty->GetMTime() > this->BuildTime ||
-      this->TitleTextProperty->GetMTime() > this->BuildTime)
+      this->TitleTextProperty->GetMTime() > this->BuildTime ||
+      this->Distribution->GetMTime() > this->BuildTime)
+  // RKV : End
+/* RKV  if (positionsHaveChanged ||
+      this->GetMTime() > this->BuildTime || 
+      this->LookupTable->GetMTime() > this->BuildTime ||
+      this->LabelTextProperty->GetMTime() > this->BuildTime ||
+      this->TitleTextProperty->GetMTime() > this->BuildTime)*/
     {
 
     // Delete previously constructed objects
@@ -276,6 +321,32 @@ int VISU_ScalarBarActor::RenderOpaqueGeometry(vtkViewport *viewport)
     colors->SetNumberOfComponents(3);
     colors->SetNumberOfTuples(numColors);
 
+// RKV : Begin
+    // If the distribution is changed then recalculate the total
+    if (this->Distribution->GetMTime() > this->BuildTime) {
+         int aNbVals = this->Distribution->GetNumberOfTuples();
+      double range[2];
+      this->Distribution->GetRange(range);
+      this->DistributionActor->SetYRange(0, range[1]);
+/*       int total = 0;
+         for(vtkIdType aValId = 0; aValId < aNbVals; aValId++){
+               total += this->Distribution->GetValue(aValId);
+         }
+         this->DistributionActor->SetYRange(0, total);
+*/
+      }
+  
+    this->DistributionActor->SetProperty(this->GetProperty());
+    this->DistributionActor->GetProperty()->SetColor(1, 1, 1);
+    this->DistributionActor->GetProperty()->SetLineWidth(2);
+    this->DistributionActor->GetProperty()->SetDisplayLocationToForeground();
+    vtkTextProperty* tprop;
+    tprop = this->DistributionActor->GetTitleTextProperty();
+    tprop->SetColor(this->DistributionActor->GetProperty()->GetColor());
+//  this->DistributionActor->SetAxisTitleTextProperty(tprop);
+//  this->DistributionActor->SetAxisLabelTextProperty(tprop);
+    
+// RKV : End
     this->ScalarBarActor->SetProperty(this->GetProperty());
     this->ScalarBar->Initialize();
     this->ScalarBar->SetPoints(pts);
@@ -394,6 +465,7 @@ int VISU_ScalarBarActor::RenderOpaqueGeometry(vtkViewport *viewport)
         this->TextActors[i]->SetPosition(barWidth+3,
                                          val - sizeTextData[1]/2);
         }
+        
       }
     else
       {
@@ -405,7 +477,11 @@ int VISU_ScalarBarActor::RenderOpaqueGeometry(vtkViewport *viewport)
         val = (vtkFloatingPointType)i/(this->NumberOfLabels-1) * barWidth;
         this->TextActors[i]->SetPosition(val, barHeight + 0.05*size[1]);
         }
+        
       }
+      
+    // Compute the position of the distribution curve
+    this->PlaceDistribution(viewport, barWidth, barHeight); // RKV
 
     this->BuildTime.Modified();
     }
@@ -416,6 +492,10 @@ int VISU_ScalarBarActor::RenderOpaqueGeometry(vtkViewport *viewport)
     renderedSomething += this->TitleActor->RenderOpaqueGeometry(viewport);
     }
   this->ScalarBarActor->RenderOpaqueGeometry(viewport);
+  // RKV : Begin
+  if (this->DistributionVisibility)
+    this->DistributionActor->RenderOpaqueGeometry(viewport);
+  // RKV : End
   for (i=0; i<this->NumberOfLabels; i++)
     {
     renderedSomething += this->TextActors[i]->RenderOpaqueGeometry(viewport);
@@ -571,13 +651,10 @@ void VISU_ScalarBarActor::AllocateAndSizeLabels(int *labelSize, int *size,
     else
       targetWidth = (int)(0.01*LabelRatioWidth*size[0]);
 
-    if(LabelRatioHeight == 0)
-      if ( this->Orientation == VTK_ORIENT_VERTICAL )
-       targetHeight = (int)(0.86*size[1]/this->NumberOfLabels);
-      else
-       targetHeight = (int)(0.25*size[1]);
+    if ( this->Orientation == VTK_ORIENT_VERTICAL )
+      targetHeight = (int)(0.86*size[1]/this->NumberOfLabels);
     else
-      targetHeight = (int)(0.01*LabelRatioHeight*size[1]);
+      targetHeight = (int)(0.25*size[1]);
 
     vtkTextMapper::SetMultipleConstrainedFontSize(viewport, 
                                                   targetWidth, 
@@ -600,18 +677,15 @@ void VISU_ScalarBarActor::SizeTitle(int *titleSize, int *size,
 
   int targetWidth, targetHeight;
   
-  if(TitleRatioWidth == 0)
+  if(TitleRatioSize == 0)
     targetWidth = size[0];
   else
-    targetWidth = (int)(0.01*TitleRatioWidth*size[0]);
+    targetWidth = (int)(0.01*TitleRatioSize*size[0]);
 
-  if(TitleRatioHeight == 0)
-    if ( this->Orientation == VTK_ORIENT_VERTICAL )
-      targetHeight = (int)(0.1*size[1]);
-    else
-      targetHeight = (int)(0.25*size[1]);
+  if ( this->Orientation == VTK_ORIENT_VERTICAL )
+    targetHeight = (int)(0.1*size[1]);
   else
-    targetHeight = (int)(0.01*TitleRatioHeight*size[1]);
+    targetHeight = (int)(0.25*size[1]);
 
   this->TitleMapper->SetConstrainedFontSize(
     viewport, targetWidth, targetHeight);
@@ -619,21 +693,66 @@ void VISU_ScalarBarActor::SizeTitle(int *titleSize, int *size,
   this->TitleMapper->GetSize(viewport, titleSize);
 }
 
-void VISU_ScalarBarActor::SetRatios(int titleRatioWidth, int titleRatioHeight,
-                                   int labelRatioWidth, int labelRatioHeight,
+// RKV : Begin
+void VISU_ScalarBarActor::SetDistributionVisibility(int v) 
+{
+  this->DistributionVisibility = v;
+  if (v) {
+       this->DistributionActor->VisibilityOn();
+  } else {
+       this->DistributionActor->VisibilityOff();
+  }
+}
+
+void VISU_ScalarBarActor::SetDistribution(vtkDoubleArray *distr) 
+{
+  this->Distribution = distr;
+  if (distr == NULL) return;
+  
+  this->DistributionObj->Initialize();
+  this->DistributionObj->GetFieldData()->AddArray(this->Distribution);
+  this->DistributionActor->AddDataObjectInput(this->DistributionObj);
+  // Set ranges of axes for the distribution curve
+  this->DistributionActor->SetXRange(0, this->Distribution->GetNumberOfTuples()-1);
+  double range[2];
+  this->Distribution->GetRange(range);
+  int aNbVals = this->Distribution->GetNumberOfTuples();
+//  int total = 0;
+  if (this->GetDebug()) {
+  for(vtkIdType aValId = 0; aValId < aNbVals; aValId++){
+//     if (this->GetDebug()) {
+               if (this->Distribution->GetValue(aValId) > 0)
+             vtkDebugMacro(<< "D(" << aValId << ") = " << this->Distribution->GetValue(aValId));
+//     }
+//     total += this->Distribution->GetValue(aValId);
+  }
+  }
+//  this->DistributionActor->SetYRange(0, total);
+  this->DistributionActor->SetYRange(0, range[1]);
+  vtkDebugMacro(<< "max X = " << this->Distribution->GetNumberOfTuples());
+  vtkDebugMacro(<< "Y = (" << range[0] << ", " << range[1] << ")");
+//  vtkDebugMacro(<< "total = " << total);
+}
+
+void VISU_ScalarBarActor::DebugOn() {
+       this->DistributionActor->DebugOn();
+       Superclass::DebugOn();
+} 
+
+void VISU_ScalarBarActor::DebugOff() {
+       this->DistributionActor->DebugOff();
+       Superclass::DebugOff();
+} 
+// RKV : End
+
+void VISU_ScalarBarActor::SetRatios(int titleRatioSize, int labelRatioWidth, 
                                    int barRatioWidth, int barRatioHeight)
 {
-  TitleRatioWidth=titleRatioWidth;
-  if(TitleRatioWidth>100)
-    TitleRatioWidth=100;
-  else if(TitleRatioWidth<0)
-    TitleRatioWidth=0;
-
-  TitleRatioHeight=titleRatioHeight;
-  if(TitleRatioHeight>100)
-    TitleRatioHeight=100;
-  else if(TitleRatioHeight<0)
-    TitleRatioHeight=0;
+  TitleRatioSize=titleRatioSize;
+  if(TitleRatioSize>100)
+    TitleRatioSize=100;
+  else if(TitleRatioSize<0)
+    TitleRatioSize=0;
 
   LabelRatioWidth=labelRatioWidth;
   if(LabelRatioWidth>100)
@@ -641,12 +760,6 @@ void VISU_ScalarBarActor::SetRatios(int titleRatioWidth, int titleRatioHeight,
   else if(LabelRatioWidth<0)
     LabelRatioWidth=0;
 
-  LabelRatioHeight=labelRatioHeight;
-  if(LabelRatioHeight>100)
-    LabelRatioHeight=100;
-  else if(LabelRatioHeight<0)
-    LabelRatioHeight=0;
-
   BarRatioWidth=barRatioWidth;
   if(BarRatioWidth>100)
     BarRatioWidth=100;
@@ -660,14 +773,11 @@ void VISU_ScalarBarActor::SetRatios(int titleRatioWidth, int titleRatioHeight,
     BarRatioHeight=0;
 }
 
-void VISU_ScalarBarActor::GetRatios(int& titleRatioWidth, int& titleRatioHeight,
-                                   int& labelRatioWidth, int& labelRatioHeight,
-                                   int& barRatioWidth, int& barRatioHeight)
+void VISU_ScalarBarActor::GetRatios(int& titleRatioSize, int& labelRatioWidth, 
+                                    int& barRatioWidth, int& barRatioHeight)
 {
-  titleRatioWidth=TitleRatioWidth;
-  titleRatioHeight=TitleRatioHeight;
+  titleRatioSize=TitleRatioSize;
   labelRatioWidth=LabelRatioWidth;
-  labelRatioHeight=LabelRatioHeight;
   barRatioWidth=BarRatioWidth;
   barRatioHeight=BarRatioHeight;
 }
@@ -694,3 +804,91 @@ void VISU_ScalarBarActor::SizeBar(int& barSizeWidth, int& barSizeHeight, int *si
   else
     barSizeHeight = (int)(0.01*BarRatioHeight*size[1]);
 }
+// RKV : Begin
+//------------------------------------------------------------------------------
+/** Place the distribution plot actor in the viewport according to the 
+ * scalar bar location and orientation */
+void VISU_ScalarBarActor::PlaceDistribution(vtkViewport *viewport, const int barWidth, const int barHeight) {
+    vtkDebugMacro(<< "barOrigin[0]=" << this->LastOrigin[0] << "; barOrigin[1]=" << this->LastOrigin[1]);
+    // Detect the side of the viewport where the curve should be placed by the bar origin.
+    double u = (double)(this->LastOrigin[0]), v = (double)(this->LastOrigin[1]), z=0;
+    viewport->ViewportToNormalizedViewport(u, v);
+    
+    if ( this->Orientation == VTK_ORIENT_VERTICAL ) {
+      // Position the distribution curve vertically
+      if (u > 0.5) {
+       // X - UP, Y - TO THE LEFT
+       this->DistributionActor->SetPlotLocation(VISU_XYPLOT_RIGHT);
+       // Curve to be placed on the left side of the bar
+        vtkDebugMacro(<< "Curve to be placed on the left side of the bar");
+        // relative to the bar origin
+       u = 0;
+       v = 0;
+        viewport->ViewportToNormalizedViewport(u, v);
+        vtkDebugMacro(<< "u=" << u << "; v=" << v);
+        this->DistributionActor->GetPositionCoordinate()->SetValue(u, v, 0);
+        // relative to Position
+        u = - barWidth;
+        v = barHeight;
+        viewport->ViewportToNormalizedViewport(u, v);
+        vtkDebugMacro("u2=" << u << "; v2=" << v);
+        this->DistributionActor->GetPosition2Coordinate()->SetValue(u, v, 0);
+      } else {
+       // X - UP, Y - TO THE RIGHT
+       this->DistributionActor->SetPlotLocation(VISU_XYPLOT_LEFT);
+       // Curve to be placed on the right side of the bar
+        vtkDebugMacro(<< "Curve to be placed on the right side of the bar");
+        // relative to the bar origin
+        u = barWidth;
+       v = 0;
+        viewport->ViewportToNormalizedViewport(u, v);
+        vtkDebugMacro(<< "u=" << u << "; v=" << v);
+        this->DistributionActor->GetPositionCoordinate()->SetValue(u, v, 0);
+        // relative to Position
+        u = barWidth;
+        v = barHeight;
+        viewport->ViewportToNormalizedViewport(u, v);
+        vtkDebugMacro("u2=" << u << "; v2=" << v);
+        this->DistributionActor->GetPosition2Coordinate()->SetValue(u, v, 0);
+      }
+    } else {
+      // Position the distribution curve horizontally
+      if (v > 0.5) {
+       // X - TO THE LEFT, Y - DOWN
+       this->DistributionActor->SetPlotLocation(VISU_XYPLOT_TOP);
+       // Curve to be placed below the bar
+        vtkDebugMacro(<< "Curve to be placed below the bar");
+        // relative to the bar origin
+               u = 0;
+       v = 0;
+        viewport->ViewportToNormalizedViewport(u, v);
+        vtkDebugMacro(<< "u=" << u << "; v=" << v);
+        this->DistributionActor->GetPositionCoordinate()->SetValue(u, v, 0);
+        // relative to Position
+        u = barWidth;
+        v = - barHeight;
+        viewport->ViewportToNormalizedViewport(u, v);
+        vtkDebugMacro("u2=" << u << "; v2=" << v);
+        this->DistributionActor->GetPosition2Coordinate()->SetValue(u, v, 0);
+      } else {
+       // X - TO THE RIGHT, Y - UP
+       this->DistributionActor->SetPlotLocation(VISU_XYPLOT_BOTTOM);
+       // Curve to be placed on the top of the bar
+        vtkDebugMacro(<< "Curve to be placed on the top of the bar");
+        // relative to the bar origin
+               u = 0;
+       v = barHeight;
+        viewport->ViewportToNormalizedViewport(u, v);
+        vtkDebugMacro(<< "u=" << u << "; v=" << v);
+        this->DistributionActor->GetPositionCoordinate()->SetValue(u, v, 0);
+        // relative to Position
+        u = barWidth;
+        v = barHeight;
+        viewport->ViewportToNormalizedViewport(u, v);
+        vtkDebugMacro("u2=" << u << "; v2=" << v);
+        this->DistributionActor->GetPosition2Coordinate()->SetValue(u, v, 0);
+      }
+    }
+}
+// RKV : End
+
index 3252e6e82de664eaeaf09c58e639e2de172c5fb8..e624af0db4b72189aa79526c906abc72d077d95f 100644 (file)
@@ -1,36 +1,38 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_PipeLine.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #ifndef VISU_ScalarBarActor_HeaderFile
 #define VISU_ScalarBarActor_HeaderFile
 
 #include "VISUPipeline.hxx"
 #include "VISU_LookupTable.hxx"
+#include "VISU_XYPlotActor.hxx"
 
 #include <vtkActor2D.h>
+#include <vtkDoubleArray.h> // RKV
 
 class vtkPolyData;
 class vtkPolyDataMapper2D;
@@ -106,15 +108,31 @@ public:
   // Set/Get the labels text property.
   virtual void SetLabelTextProperty(vtkTextProperty *p);
   vtkGetObjectMacro(LabelTextProperty,vtkTextProperty);
+
+// RKV : Begin
+  // Description:
+  // Set/Get the values distribution array
+  virtual void SetDistribution(vtkDoubleArray *d);
+  vtkGetObjectMacro(Distribution,vtkDoubleArray);
+  
+  // Description:
+  // Set/Get the flag of distribution plot visibility
+  void SetDistributionVisibility(int v);
+  vtkGetMacro(DistributionVisibility, int);
+  void DistributionVisibilityOn()
+       {this->SetDistributionVisibility(1);};
+  void DistributionVisibilityOff() {this->SetDistributionVisibility(0);};
+
+  void DebugOn();
+  void DebugOff();
+// RKV : End
     
   // Description:
   // Set/Get the scalar bar dimention properties in persents.
   // 0 <= ration <= 100
-  void SetRatios(int titleRatioWidth, int titleRatioHeight,
-                int labelRatioWidth, int labelRatioHeight,
+  void SetRatios(int titleRatioSize,int labelRatioWidth,
                 int barRatioWidth, int barRatioHeight);
-  void GetRatios(int& titleRatioWidth, int& titleRatioHeight,
-                int& labelRatioWidth, int& labelRatioHeight,
+  void GetRatios(int& titleRatioSize, int& labelRatioWidth,
                 int& barRatioWidth, int& barRatioHeight);
 
   // Description:
@@ -139,6 +157,13 @@ protected:
   VISU_LookupTable *LookupTable;
   vtkTextProperty *TitleTextProperty;
   vtkTextProperty *LabelTextProperty;
+  
+  /** Array for keeping the distribution of colors within cells.
+   * For each color index the appropriate element of the array contains 
+   * a number of cells for this color.*/ 
+  vtkDoubleArray     *Distribution; // RKV
+  /** Visibility flag for the distribution plot */
+  int             DistributionVisibility; // RKV
 
   int   MaximumNumberOfColors;
   int   NumberOfLabels;
@@ -146,11 +171,9 @@ protected:
   int   Orientation;
   char  *Title;
   char  *LabelFormat;
-  int   TitleRatioWidth;
+  int   TitleRatioSize;
   int   LabelRatioWidth;
   int   BarRatioWidth;
-  int   TitleRatioHeight;
-  int   LabelRatioHeight;
   int   BarRatioHeight;
 
   vtkTextMapper **TextMappers;
@@ -167,6 +190,9 @@ private:
   vtkPolyDataMapper2D *ScalarBarMapper;
   vtkActor2D          *ScalarBarActor;
 
+  vtkDataObject       *DistributionObj; // RKV
+  VISU_XYPlotActor    *DistributionActor; // RKV
+
   vtkTimeStamp  BuildTime;
   int LastSize[2];
   int LastOrigin[2];
@@ -175,6 +201,10 @@ private:
 
   void SizeBar(int& barSizeWidth, int& barSizeHeight, int *size,
               vtkViewport *viewport, vtkFloatingPointType *range);
+              
+  /** Place the distribution plot actor in the viewport according to the 
+   * scalar bar location and orientation */
+  void PlaceDistribution(vtkViewport *viewport, const int barWidth, const int barHeight);
 
 private:
   VISU_ScalarBarActor(const VISU_ScalarBarActor&);  // Not implemented.
index 5dbf6e47845fbcb471eba2af6b5a238ca41bbe15..fda224a3c4010d0130a116e80bf46ea5e9a250e3 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_ScalarBarCtrl.cxx
 // Author:  Peter KURNEV
 // Module : VISU
-
+//
 #include "VISU_ScalarBarCtrl.hxx"
 #include <VISU_LookupTable.hxx>
 #include <VISU_ScalarBarActor.hxx>
 #include <string.h>
 
 
-//----------------------------------------------------------------------------
-namespace
-{
-  inline
-  void
-  MarkValueByColor(VISU_LookupTable* theTable,
-                  vtkFloatingPointType theValue,
-                  unsigned char* theColor)
-  { 
-    vtkIdType anIndex = theTable->GetIndex(theValue);
-    unsigned char *aTablePtr = theTable->GetPointer(anIndex);
-    aTablePtr[0] = theColor[0];
-    aTablePtr[1] = theColor[1];
-    aTablePtr[2] = theColor[2];
-  }
-
-  inline
-  void
-  CopyColor(unsigned char* theTaget, const unsigned char* theSource)
-  {
-    theTaget[0] = theSource[0];
-    theTaget[1] = theSource[1];
-    theTaget[2] = theSource[2];
-  }
-
-  void
-  FillByColor(VISU_LookupTable* theTable,
-             unsigned char* theColor)
-  {
-    vtkIdType aNbColors = theTable->GetNumberOfColors();
-    for(int i = 0; i < aNbColors; i++){
-      unsigned char *aTablePtr = theTable->GetPointer(i);
-      CopyColor(aTablePtr,theColor);
-    }
-  }
-
-  void
-  MakeBiColor(VISU_LookupTable* theTable)
-  {
-    unsigned char aRedPtr[3] = {255, 0, 0};
-    unsigned char aBluePtr[3] = {0, 0, 255};
-
-    vtkFloatingPointType aRange[2];
-    theTable->GetTableRange(aRange);
-    vtkIdType aNbColors = theTable->GetNumberOfColors();
-
-    vtkFloatingPointType aDelta = (aRange[1]-aRange[0])/aNbColors;
-    vtkFloatingPointType aValue = aRange[0]+0.5*aDelta;
-    for(int i = 0; i < aNbColors; i++){
-      vtkIdType anIndex = theTable->GetIndex(aValue);
-      unsigned char* aTablePtr = theTable->GetPointer(anIndex);
-      if(aValue > 0.0){
-       CopyColor(aTablePtr,aRedPtr);
-      }else{
-       CopyColor(aTablePtr,aBluePtr);
-      }
-      aValue += aDelta;
-    }
-  }
-}
-
-
 //----------------------------------------------------------------------------
 vtkStandardNewMacro(VISU_ScalarBarCtrl);
 
@@ -435,16 +373,16 @@ VISU_ScalarBarCtrl
 {
   if(myMarked){
     if(myMode == eGlobal){
-      MarkValueByColor(myGlobalLookupTable, myMarkedValue, myBlack);
+      myGlobalLookupTable->MarkValueByColor( myMarkedValue, myBlack );
     }else{
-      MarkValueByColor(myLocalLookupTable, myMarkedValue, myBlack);
+      myLocalLookupTable->MarkValueByColor( myMarkedValue, myBlack );
     }
   }
   if(myGlobalRangeIsDefined){
     vtkFloatingPointType aLocalRange[2];
     myLocalLookupTable->GetTableRange(aLocalRange);
-    MarkValueByColor(myGlobalLookupTable, aLocalRange[0], myBlack);
-    MarkValueByColor(myGlobalLookupTable, aLocalRange[1], myBlack);
+    myGlobalLookupTable->MarkValueByColor( aLocalRange[0], myBlack );
+    myGlobalLookupTable->MarkValueByColor( aLocalRange[1], myBlack );
   }
 }
 
@@ -490,9 +428,9 @@ VISU_ScalarBarCtrl
 ::UpdateForColor()
 {
   if(myMode == eGlobal){ 
-    FillByColor(myLocalLookupTable,myGrey);
+    myLocalLookupTable->FillByColor( myGrey );
   }else if(myMode == eLocal){
-    FillByColor(myGlobalLookupTable,myGrey);
+    myGlobalLookupTable->FillByColor( myGrey );
   }
 }
 
@@ -506,15 +444,15 @@ VISU_ScalarBarCtrl
   myLocalLookupTable->Build();
 
   if(myMode == eSimple){
-    MakeBiColor(myLocalLookupTable);
+    myLocalLookupTable->MakeBiColor();
     return;
   }
 
   if(myMode == eGlobal){
-    MakeBiColor(myGlobalLookupTable);
-    FillByColor(myLocalLookupTable,myGrey);
+    myGlobalLookupTable->MakeBiColor();
+    myLocalLookupTable->FillByColor( myGrey );
   }else if(myMode == eLocal){
-    MakeBiColor(myLocalLookupTable);
-    FillByColor(myGlobalLookupTable,myGrey);
+    myLocalLookupTable->MakeBiColor();
+    myGlobalLookupTable->FillByColor( myGrey );
   }
 }
index 86866d752f95babea17cd0fc0532a15da6b5e612..b6155e5c83ffb0d6b0774dc97877908124f31e86 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_ScalarBarCtrl.hxx
 // Author:  Peter KURNEV
 // Module : VISU
-
+//
 #ifndef VISU_ScalarBarCtrl_HeaderFile
 #define VISU_ScalarBarCtrl_HeaderFile
 
diff --git a/src/PIPELINE/VISU_ScalarMapOnDeformedShapePL.cxx b/src/PIPELINE/VISU_ScalarMapOnDeformedShapePL.cxx
deleted file mode 100644 (file)
index 54ff4f8..0000000
+++ /dev/null
@@ -1,368 +0,0 @@
-//  VISU ScalarMapOnDeformedShapePL
-//
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-//  This library is free software; you can redistribute it and/or
-//  modify it under the terms of the GNU Lesser General Public
-//  License as published by the Free Software Foundation; either
-//  version 2.1 of the License.
-//
-//  This library is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-//  Lesser General Public License for more details.
-//
-//  You should have received a copy of the GNU Lesser General Public
-//  License along with this library; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
-// File:    VISU_ScalarMapOnDeformedShapePL.cxx
-// Author:  Eugeny Nikolaev
-// Module : VISU
-
-#include "VISU_ScalarMapOnDeformedShapePL.hxx"
-#include "VISU_FieldTransform.hxx"
-#include "VISU_Extractor.hxx"
-#include "VISU_LookupTable.hxx"
-#include "VISU_DeformedShapePL.hxx"
-#include "VTKViewer_TransformFilter.h"
-#include "VTKViewer_Transform.h"
-#include "VISU_MergeFilter.hxx"
-
-#include "VISU_PipeLineUtils.hxx"
-
-#include <vtkWarpVector.h>
-#include <vtkUnstructuredGrid.h>
-#include <vtkCellDataToPointData.h>
-#include <vtkPointDataToCellData.h>
-
-
-//----------------------------------------------------------------------------
-vtkStandardNewMacro(VISU_ScalarMapOnDeformedShapePL)
-
-//----------------------------------------------------------------------------
-/*!
- * Constructor. Creating new instances of vtkWarpVector,vtkMergeFilter,vtkUnstructuredGrid
- * Where:
- * \li myDeformVectors is vtkWarpVector  - deformation vectors data
- * \li myScalarsMergeFilter   is vtkMergeFilter - merge filter.
- * Merge filter which unify the deformation and scalars
- * \li myScalars is vtk shared pointer to vtkUnstructuredGrid - scalars data
-*/
-VISU_ScalarMapOnDeformedShapePL
-::VISU_ScalarMapOnDeformedShapePL():
-  myScaleFactor(0.0)
-{
-  myWarpVector = vtkWarpVector::New();
-
-  myScalarsMergeFilter = VISU_MergeFilter::New();
-  myScalarsMergeFilter->SetMergingInputs(true);
-
-  myScalarsExtractor = VISU_Extractor::New();
-
-  myScalarsFieldTransform = VISU_FieldTransform::New();
-
-  myCellDataToPointData = vtkCellDataToPointData::New();
-}
-
-//----------------------------------------------------------------------------
-/*!
- * Destructor.
- * Delete all fields.
-*/
-VISU_ScalarMapOnDeformedShapePL
-::~VISU_ScalarMapOnDeformedShapePL()
-{
-  myWarpVector->Delete();
-
-  myScalarsMergeFilter->Delete();
-  
-  myScalarsExtractor->Delete();
-
-  myScalarsFieldTransform->Delete();
-
-  myCellDataToPointData->Delete();
-}
-
-//----------------------------------------------------------------------------
-/*!
- * Initial method
- */
-void
-VISU_ScalarMapOnDeformedShapePL
-::Init()
-{
-  Superclass::Init();
-  
-  SetScale(VISU_DeformedShapePL::GetDefaultScale(this));
-}
-
-//----------------------------------------------------------------------------
-/*!
- * Build method
- * Building of deformation and puts result to merge filter.
- */
-void
-VISU_ScalarMapOnDeformedShapePL
-::Build()
-{
-  Superclass::Build();
-}
-
-
-//----------------------------------------------------------------------------
-vtkDataSet* 
-VISU_ScalarMapOnDeformedShapePL
-::InsertCustomPL()
-{
-  GetMapper()->SetColorModeToMapScalars();
-  GetMapper()->ScalarVisibilityOn();
-
-  VISU::CellDataToPoint(myWarpVector,
-                       myCellDataToPointData,
-                       GetMergedInput());
-  
-  myScalars = GetMergedInput();
-
-  UpdateScalars();
-
-  myScalarsFieldTransform->SetInput(myScalarsExtractor->GetOutput());
-
-  // Sets geometry for merge filter
-  myScalarsMergeFilter->SetGeometry(myWarpVector->GetUnstructuredGridOutput());
-
-  vtkDataSet* aScalarsDataSet = myScalarsFieldTransform->GetOutput();
-  myScalarsMergeFilter->SetScalars(aScalarsDataSet);
-  myScalarsMergeFilter->AddField("VISU_CELLS_MAPPER", aScalarsDataSet);
-  myScalarsMergeFilter->AddField("VISU_POINTS_MAPPER", aScalarsDataSet);
-
-  return myScalarsMergeFilter->GetOutput();
-}
-
-
-//----------------------------------------------------------------------------
-/*!
- *  Update method
- */
-void
-VISU_ScalarMapOnDeformedShapePL
-::Update()
-{
-  Superclass::Update();
-  //{
-  //  std::string aFileName = std::string(getenv("HOME"))+"/"+getenv("USER")+"-myScalarsExtractor.vtk";
-  //  VISU::WriteToFile(myScalarsExtractor->GetUnstructuredGridOutput(), aFileName);
-  //}
-  //{
-  //  std::string aFileName = std::string(getenv("HOME"))+"/"+getenv("USER")+"-myWarpVector.vtk";
-  //  VISU::WriteToFile(myWarpVector->GetUnstructuredGridOutput(), aFileName);
-  //}
-  //{
-  //  std::string aFileName = std::string(getenv("HOME"))+"/"+getenv("USER")+"-myScalarsMergeFilter.vtk";
-  //  VISU::WriteToFile(myScalarsMergeFilter->GetUnstructuredGridOutput(), aFileName);
-  //}
-}
-
-//----------------------------------------------------------------------------
-unsigned long int
-VISU_ScalarMapOnDeformedShapePL
-::GetMemorySize()
-{
-  unsigned long int aSize = Superclass::GetMemorySize();
-
-  if(vtkDataSet* aDataSet = myWarpVector->GetOutput())
-    aSize += aDataSet->GetActualMemorySize() * 1024;
-  
-  if(vtkDataSet* aDataSet = myScalarsExtractor->GetOutput())
-    aSize += aDataSet->GetActualMemorySize() * 1024;
-
-  if(vtkDataSet* aDataSet = myScalarsMergeFilter->GetOutput())
-    aSize += aDataSet->GetActualMemorySize() * 1024;
-
-  if(myCellDataToPointData->GetInput())
-    if(vtkDataSet* aDataSet = myCellDataToPointData->GetOutput())
-      aSize += aDataSet->GetActualMemorySize() * 1024;
-
-  return aSize;
-}
-
-//----------------------------------------------------------------------------
-/*!
- * Update scalars method.
- * Put scalars to merge filter.
- */
-void
-VISU_ScalarMapOnDeformedShapePL
-::UpdateScalars()
-{
-  vtkDataSet* aScalars = GetScalars();
-  myScalarsExtractor->SetInput(aScalars);
-
-  if(VISU::IsDataOnCells(aScalars))
-    GetMapper()->SetScalarModeToUseCellData();
-  else
-    GetMapper()->SetScalarModeToUsePointData();
-}
-
-//----------------------------------------------------------------------------
-/*!
- * Copy information about pipline.
- * Copy scale and scalars.
- */
-void
-VISU_ScalarMapOnDeformedShapePL
-::DoShallowCopy(VISU_PipeLine *thePipeLine,
-               bool theIsCopyInput)
-{
-  Superclass::DoShallowCopy(thePipeLine, theIsCopyInput);
-
-  if(VISU_ScalarMapOnDeformedShapePL *aPipeLine = dynamic_cast<VISU_ScalarMapOnDeformedShapePL*>(thePipeLine)){
-     SetScale(aPipeLine->GetScale());
-     SetScalars(aPipeLine->GetScalars());
-  }
-}
-
-//----------------------------------------------------------------------------
-/*!
- * Set scalars.
- * Sets vtkDataSet with scalars values to VISU_Extractor filter for scalars extraction.
- */
-void
-VISU_ScalarMapOnDeformedShapePL
-::SetScalars(vtkDataSet *theScalars)
-{
-  if(GetScalars() == theScalars)
-    return;
-
-  myScalars = theScalars;
-  UpdateScalars();
-}
-
-//----------------------------------------------------------------------------
-/*!
- * Get pointer to input scalars.
- */
-vtkDataSet* 
-VISU_ScalarMapOnDeformedShapePL
-::GetScalars()
-{
-  return myScalars.GetPointer();
-}
-
-//----------------------------------------------------------------------------
-/*!
- * Sets scale for deformed shape
- */
-void
-VISU_ScalarMapOnDeformedShapePL
-::SetScale(vtkFloatingPointType theScale) 
-{
-  if(VISU::CheckIsSameValue(myScaleFactor, theScale))
-    return;
-
-  myWarpVector->SetScaleFactor(theScale);
-  myScaleFactor = theScale;
-}
-
-//----------------------------------------------------------------------------
-/*!
- * Gets scale of deformed shape.
- */
-vtkFloatingPointType
-VISU_ScalarMapOnDeformedShapePL
-::GetScale() 
-{
-  return myWarpVector->GetScaleFactor();
-}
-
-//----------------------------------------------------------------------------
-/*!
- * Set scale factor of deformation.
- */
-void
-VISU_ScalarMapOnDeformedShapePL
-::SetMapScale(vtkFloatingPointType theMapScale)
-{
-  Superclass::SetMapScale(theMapScale);
-  myWarpVector->SetScaleFactor(myScaleFactor*theMapScale);
-}
-
-//----------------------------------------------------------------------------
-/*!
- * Gets scalar mode.
- */
-int
-VISU_ScalarMapOnDeformedShapePL
-::GetScalarMode()
-{
-  return myScalarsExtractor->GetScalarMode();
-}
-
-//----------------------------------------------------------------------------
-/*!
- * Sets scalar mode.
- */
-void
-VISU_ScalarMapOnDeformedShapePL
-::SetScalarMode(int theScalarMode)
-{
-  VISU_ScalarMapPL::SetScalarMode(theScalarMode, GetScalars(), myScalarsExtractor);
-}
-
-//----------------------------------------------------------------------------
-void
-VISU_ScalarMapOnDeformedShapePL
-::SetScaling(int theScaling) 
-{
-  if(GetScaling() == theScaling)
-    return;
-
-  GetBarTable()->SetScale(theScaling);
-
-  if(theScaling == VTK_SCALE_LOG10)
-    myScalarsFieldTransform->SetScalarTransform(&(VISU_FieldTransform::Log10));
-  else
-    myScalarsFieldTransform->SetScalarTransform(&(VISU_FieldTransform::Ident));
-}
-
-
-//----------------------------------------------------------------------------
-void
-VISU_ScalarMapOnDeformedShapePL
-::SetScalarRange(vtkFloatingPointType theRange[2])
-{
-  if(VISU::CheckIsSameRange(theRange, GetScalarRange()))
-    return;
-
-  myScalarsFieldTransform->SetScalarRange(theRange);
-  GetBarTable()->SetRange(theRange);
-}
-
-
-//----------------------------------------------------------------------------
-vtkFloatingPointType* 
-VISU_ScalarMapOnDeformedShapePL
-::GetScalarRange() 
-{
-  return myScalarsFieldTransform->GetScalarRange();
-}
-
-
-//----------------------------------------------------------------------------
-/*!
- * Gets ranges of extracted scalars
- * \param theRange[2] - output values
- * \li theRange[0] - minimum value
- * \li theRange[1] - maximum value
- */
-void 
-VISU_ScalarMapOnDeformedShapePL
-::GetSourceRange(vtkFloatingPointType theRange[2])
-{
-  myScalarsExtractor->Update();
-  myScalarsExtractor->GetUnstructuredGridOutput()->GetScalarRange(theRange);
-}
diff --git a/src/PIPELINE/VISU_ScalarMapOnDeformedShapePL.hxx b/src/PIPELINE/VISU_ScalarMapOnDeformedShapePL.hxx
deleted file mode 100644 (file)
index 041a37d..0000000
+++ /dev/null
@@ -1,146 +0,0 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
-//
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
-// File:    VISU_ScalarMapOnDeformedShapePL.hxx
-// Author:  Eugeny Nikolaev
-// Module : VISU
-
-#ifndef VISU_ScalarMapOnDeformedShapePL_HeaderFile
-#define VISU_ScalarMapOnDeformedShapePL_HeaderFile
-
-#include "VISUPipeline.hxx"
-#include "VISU_ScalarMapPL.hxx"
-
-class VISU_MergeFilter;
-class vtkWarpVector;
-class vtkUnstructuredGrid;
-class vtkCellDataToPointData;
-class vtkPointDataToCellData;
-
-
-//----------------------------------------------------------------------------
-class VISU_PIPELINE_EXPORT VISU_ScalarMapOnDeformedShapePL : public VISU_ScalarMapPL
-{
-public:
-  vtkTypeMacro(VISU_ScalarMapOnDeformedShapePL, VISU_ScalarMapPL);
-
-  static 
-  VISU_ScalarMapOnDeformedShapePL* 
-  New();
-
-  virtual
-  void
-  SetScale(vtkFloatingPointType theScale);
-
-  virtual
-  vtkFloatingPointType
-  GetScale();
-
-  virtual
-  int
-  GetScalarMode();
-
-  virtual
-  void
-  SetScalarMode(int theScalarMode = 0);
-
-  virtual
-  void
-  SetScaling(int theScaling);
-  
-  virtual
-  void
-  SetScalarRange(vtkFloatingPointType theRange[2]);
-
-  virtual
-  vtkFloatingPointType* 
-  GetScalarRange();
-
-  virtual
-  void
-  GetSourceRange(vtkFloatingPointType theRange[2]);
-
-  virtual
-  void
-  SetScalars(vtkDataSet *theScalars);
-
-  virtual
-  vtkDataSet* 
-  GetScalars();
-
-public:
-  //! Redefined method for initialization of the pipeline.
-  virtual
-  void
-  Init();
-
-  //! Redefined method for building the pipeline.
-  virtual
-  void
-  Build();
-
-  //! Redefined method for updating the pipeline.
-  virtual
-  void
-  Update();
-
-  //! Gets memory size used by the instance (bytes).
-  virtual
-  unsigned long int
-  GetMemorySize();
-
-  //! Update scalars.
-  void
-  UpdateScalars();
-  
-  virtual
-  void
-  SetMapScale(vtkFloatingPointType theMapScale = 1.0);
-  
-protected:
-  VISU_ScalarMapOnDeformedShapePL();
-  
-  virtual
-  ~VISU_ScalarMapOnDeformedShapePL();
-  
-  virtual
-  vtkDataSet* 
-  InsertCustomPL();
-
-  virtual
-  void
-  DoShallowCopy(VISU_PipeLine *thePipeLine,
-               bool theIsCopyInput);
-
-private:
-  VISU_ScalarMapOnDeformedShapePL(const VISU_ScalarMapOnDeformedShapePL&);
-
-  vtkFloatingPointType myScaleFactor;
-  vtkWarpVector  *myWarpVector;
-  VISU_MergeFilter *myScalarsMergeFilter;
-  vtkSmartPointer<vtkUnstructuredGrid> myScalars;
-  vtkCellDataToPointData* myCellDataToPointData;
-  VISU_FieldTransform* myScalarsFieldTransform;
-  VISU_Extractor* myScalarsExtractor;
-};
-
-#endif
index a8784c811a2ee3154c3bd036e4adb6687e5c6917..7af434d51b63a33c9cfd4c5f9088c2d0097153a9 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_ScalarMapPL.cxx
 // Author:  Alexey PETROV
 // Module : VISU
-
-
+//
 #include "VISU_ScalarMapPL.hxx"
 #include "VISU_DataSetMapperHolder.hxx"
+#include "VISU_ElnoAssembleFilter.hxx"
 #include "VISU_FieldTransform.hxx"
 
 #include "VISU_AppendFilter.hxx"
@@ -50,10 +49,16 @@ vtkStandardNewMacro(VISU_ScalarMapPL);
 VISU_ScalarMapPL
 ::VISU_ScalarMapPL():
   VISU_UnstructuredGridPL(this),
+  myElnoAssembleFilter( VISU_ElnoAssembleFilter::New() ),
   myAppendFilter(VISU_AppendFilter::New()),
   myMergeFilter(VISU_MergeFilter::New())
 {
   SetIsShrinkable(true);
+  SetIsFeatureEdgesAllowed(true);
+
+  SetElnoDisassembleState( false );
+
+  myElnoAssembleFilter->Delete();
 
   myAppendFilter->SetMergingInputs(true);
   myAppendFilter->Delete();
@@ -111,8 +116,11 @@ VISU_ScalarMapPL
   myMergeFilter->AddField("VISU_FIELD", aDataSet);
   myMergeFilter->AddField("VISU_CELLS_MAPPER", aDataSet);
   myMergeFilter->AddField("VISU_POINTS_MAPPER", aDataSet);
+  myMergeFilter->AddField("ELNO_POINT_COORDS", aDataSet);
+
+  myElnoAssembleFilter->SetInput( InsertCustomPL() );
 
-  GetDataSetMapper()->SetInput(InsertCustomPL());
+  GetDataSetMapper()->SetInput( myElnoAssembleFilter->GetOutput() );
 }
 
 
@@ -144,9 +152,19 @@ VISU_ScalarMapPL
                bool theIsCopyInput)
 {
   Superclass::DoShallowCopy(thePipeLine, theIsCopyInput);
+  VISU_MergedPL::DoShallowCopy(thePipeLine, theIsCopyInput);
 }
 
 
+//----------------------------------------------------------------------------
+void
+VISU_ScalarMapPL
+::SetElnoDisassembleState( bool theIsShrunk )
+{
+  GetDataSetMapperHolder()->SetElnoDisassembleState( theIsShrunk );
+  myElnoAssembleFilter->SetElnoAssembleState( theIsShrunk );
+}
+
 //----------------------------------------------------------------------------
 void
 VISU_ScalarMapPL
index c23e95a68e1ba9d58c9358efec50c0a239b7cf89..06647d30565be0c9fa8d7b8f6b3636df934d15e0 100644 (file)
@@ -1,44 +1,46 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_ScalarMapPL.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #ifndef VISU_ScalarMapPL_HeaderFile
 #define VISU_ScalarMapPL_HeaderFile
 
 #include "VISUPipeline.hxx"
+#include "VISU_MergedPL.hxx"
 #include "VISU_ColoredPL.hxx"
 #include "VISU_UnstructuredGridPL.hxx"
 
 class VISU_DataSetMapperHolder;
+class VISU_ElnoAssembleFilter;
 class VISU_AppendFilter;
 class VISU_MergeFilter;
 
 
 //----------------------------------------------------------------------------
-class VISU_PIPELINE_EXPORT VISU_ScalarMapPL : public VISU_ColoredPL,
+class VISU_PIPELINE_EXPORT VISU_ScalarMapPL : public VISU_MergedPL,
+                                             public VISU_ColoredPL,
                                              public VISU_UnstructuredGridPL
 {
 public:
@@ -109,12 +111,16 @@ protected:
   DoShallowCopy(VISU_PipeLine *thePipeLine,
                bool theIsCopyInput);
 
+  void
+  SetElnoDisassembleState( bool theIsShrunk );
+
 private:
   VISU_ScalarMapPL(const VISU_ScalarMapPL&);  // Not implemented.
   void operator=(const VISU_ScalarMapPL&);  // Not implemented.
 
-  vtkSmartPointer<VISU_AppendFilter> myAppendFilter;
-  vtkSmartPointer<VISU_MergeFilter> myMergeFilter;
+  vtkSmartPointer< VISU_ElnoAssembleFilter > myElnoAssembleFilter;
+  vtkSmartPointer< VISU_AppendFilter > myAppendFilter;
+  vtkSmartPointer< VISU_MergeFilter > myMergeFilter;
 };
   
 #endif
index 3ae4c7b5d9053e6a5960184a1b883a8aab5779b0..42eecb1de2804c7bc82c6c2f832caa71f3b078e1 100755 (executable)
@@ -1,21 +1,23 @@
-// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// This library is distributed in the hope that it will be useful
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 #include "VISU_SphereWidget.hxx"
 
index 1248d273dd5ed26bd0a3454c01fb4516f7fea2d8..914638040b79ad07ae17b0e949ee4a0eb32bfc4d 100755 (executable)
@@ -1,21 +1,23 @@
-// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// This library is distributed in the hope that it will be useful
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 #ifndef __VISU_SphereWidget_h
 #define __VISU_SphereWidget_h
index b596155ea19ace0fa2ba5c57a50bf5a0647b4f16..5ea2c4f9933d64a47e9098d041239ce494da7377 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_StreamLinesPL.cxx
 // Author:  Alexey PETROV
 // Module : VISU
-
-
+//
 #include "VISU_StreamLinesPL.hxx"
 
 #include "VISU_Extractor.hxx"
@@ -62,6 +61,7 @@ VISU_StreamLinesPL
 ::VISU_StreamLinesPL()
 {
   SetIsShrinkable(false);
+  SetIsFeatureEdgesAllowed(false);
 
   myStream = vtkStreamLine::New();
   myCenters = vtkCellCenters::New();
index 6bff1d61edfc09eb63880a485631da6c9fa4e6a9..96d0b60840cdda5a875058f6d6d60e4c62255d26 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_StreamLinesPL.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #ifndef VISU_StreamLinesPL_HeaderFile
 #define VISU_StreamLinesPL_HeaderFile
 
index 9e4f84cc0f56353b41e4a51ed10156b51e549e45..070aafc02e6fa04537a816d13fc18ec5b08a9ae5 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_UnstructuredGridPL.cxx
 // Author:  Alexey PETROV
 // Module : VISU
-
-
+//
 #include "VISU_UnstructuredGridPL.hxx"
 #include "VISU_DataSetMapperHolder.hxx"
 
index 2d76f20126a061ea4194d79f6a063f5a343f01f5..4ef55391e2e2dc112f3d14f006bd4e9850846cf9 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_UnstructuredGripPL.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #ifndef VISU_UnstructuredGridPL_HeaderFile
 #define VISU_UnstructuredGridPL_HeaderFile
 
index 5192eefb9364d98ace4df4742eceac1571b35a0f..e6871f90bd3319f0cbaded2f3a998263c0e53de1 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_PipeLine.cxx
 // Author:  Alexey PETROV
 // Module : VISU
-
-
+//
 #include "VISU_VectorsPL.hxx"
 #include "VISU_FieldTransform.hxx"
 #include "VISU_PipeLineUtils.hxx"
@@ -44,18 +43,18 @@ vtkStandardNewMacro(VISU_VectorsPL);
 
 //----------------------------------------------------------------------------
 template<class TOutputFilter>
-void ToCellCenters(TOutputFilter *theOutputFilter, 
-                  vtkCellCenters *theCellCenters,
-                  vtkDataSet* theDataSet,
-                  VISU_UsedPointsFilter* theUsedPointsFilter)
+void ToCellCenters( TOutputFilter *theOutputFilter, 
+                   vtkCellCenters *theCellCenters,
+                   vtkDataSet* theDataSet,
+                   VISU_UsedPointsFilter* theUsedPointsFilter )
 {
-  if(VISU::IsDataOnCells(theDataSet)){
-    theCellCenters->SetInput(theDataSet);
+  if ( VISU::IsDataOnCells( theDataSet ) ) {
+    theCellCenters->SetInput( theDataSet );
     theCellCenters->VertexCellsOn();
-    theOutputFilter->SetInput(theCellCenters->GetOutput());
+    theOutputFilter->SetInput( theCellCenters->GetOutput() );
   }else {
-    theUsedPointsFilter->SetInput(theDataSet);
-    theOutputFilter->SetInput(theUsedPointsFilter->GetOutput());
+    theUsedPointsFilter->SetInput( theDataSet );
+    theOutputFilter->SetInput( theUsedPointsFilter->GetOutput() );
   }
 }
 
@@ -64,9 +63,9 @@ VISU_VectorsPL
 ::VISU_VectorsPL()
 {
   SetIsShrinkable(false);
+  SetIsFeatureEdgesAllowed(false);
 
-  myBaseGlyph = vtkGlyph3D::New();
-  myTransformedGlyph = vtkGlyph3D::New();
+  myGlyph = vtkGlyph3D::New();
 
   myGlyphSource = vtkGlyphSource2D::New();
   myConeSource = vtkConeSource::New();
@@ -83,8 +82,7 @@ VISU_VectorsPL
 VISU_VectorsPL
 ::~VISU_VectorsPL()
 {
-  myBaseGlyph->Delete();
-  myTransformedGlyph->Delete();
+  myGlyph->Delete();
 
   myCenters->Delete();
 
@@ -107,8 +105,7 @@ VISU_VectorsPL
 {
   unsigned long int aTime = Superclass::GetMTime();
 
-  aTime = std::max(aTime, myBaseGlyph->GetMTime());
-  aTime = std::max(aTime, myTransformedGlyph->GetMTime());
+  aTime = std::max(aTime, myGlyph->GetMTime());
   aTime = std::max(aTime, myCenters->GetMTime());
   aTime = std::max(aTime, myGlyphSource->GetMTime());
   aTime = std::max(aTime, myConeSource->GetMTime());
@@ -137,10 +134,9 @@ VISU_VectorsPL
 //----------------------------------------------------------------------------
 void
 VISU_VectorsPL
-::SetTransform(VTKViewer_Transform* theTransform)
+::SetTransform( VTKViewer_Transform* theTransform )
 {
-  GetFieldTransformFilter()->SetSpaceTransform(theTransform);
-  myTransformFilter->SetTransform(theTransform);
+  myTransformFilter->SetTransform( theTransform );
   myTransformFilter->Modified();
 }
 
@@ -150,7 +146,7 @@ VTKViewer_Transform*
 VISU_VectorsPL
 ::GetTransform()
 {
-  return GetFieldTransformFilter()->GetSpaceTransform();
+  return static_cast< VTKViewer_Transform* >( myTransformFilter->GetTransform() );
 }
 
 
@@ -159,13 +155,12 @@ void
 VISU_VectorsPL
 ::SetScale(vtkFloatingPointType theScale) 
 {
-  if(myScaleFactor == theScale) 
+  if ( VISU::CheckIsSameValue( myScaleFactor, theScale ) )
     return;
 
-  myScaleFactor = theScale;
+  myGlyph->SetScaleFactor( theScale );
 
-  myBaseGlyph->SetScaleFactor(myScaleFactor);
-  myTransformedGlyph->SetScaleFactor(myScaleFactor);
+  myScaleFactor = theScale;
 
   Modified();
 }
@@ -176,7 +171,7 @@ vtkFloatingPointType
 VISU_VectorsPL
 ::GetScale() 
 {
-  return myTransformedGlyph->GetScaleFactor();
+  return myGlyph->GetScaleFactor();
 }
 
 
@@ -243,22 +238,15 @@ VISU_VectorsPL
 {
   Superclass::Build();
   
-  ToCellCenters(myBaseGlyph,
-               myCenters,
-               GetMergedInput(),
-               myUsedPointsFilter);
-  myBaseGlyph->SetVectorModeToUseVector();
-  myBaseGlyph->SetScaleModeToScaleByVector();
-  myBaseGlyph->SetColorModeToColorByScalar();
-
-  ToCellCenters(myTransformFilter,
-               myCenters,
-               GetMergedInput(),
-               myUsedPointsFilter);
-  myTransformedGlyph->SetInput(myTransformFilter->GetOutput());
-  myTransformedGlyph->SetVectorModeToUseVector();
-  myTransformedGlyph->SetScaleModeToScaleByVector();
-  myTransformedGlyph->SetColorModeToColorByScalar();
+  ToCellCenters( myTransformFilter,
+                myCenters,
+                GetMergedInput(),
+                myUsedPointsFilter );
+
+  myGlyph->SetInput( myTransformFilter->GetOutput() );
+  myGlyph->SetVectorModeToUseVector();
+  myGlyph->SetScaleModeToScaleByVector();
+  myGlyph->SetColorModeToColorByScalar();
 }
 
 
@@ -267,7 +255,7 @@ vtkDataSet*
 VISU_VectorsPL
 ::InsertCustomPL()
 {
-  return myTransformedGlyph->GetOutput();
+  return myGlyph->GetOutput();
 }
 
 
@@ -290,8 +278,7 @@ VISU_VectorsPL
     case CENTER:
       myGlyphSource->SetCenter(0.0, 0.0, 0.0);
     }
-    myBaseGlyph->SetSource(myGlyphSource->GetOutput());
-    myTransformedGlyph->SetSource(myGlyphSource->GetOutput());
+    myGlyph->SetSource(myGlyphSource->GetOutput());
   }
     break;
   case CONE2:
@@ -313,14 +300,12 @@ VISU_VectorsPL
     case CENTER:
       myConeSource->SetCenter(0.0, 0.0, 0.0);
     }
-    myBaseGlyph->SetSource(myConeSource->GetOutput());
-    myTransformedGlyph->SetSource(myConeSource->GetOutput());
+    myGlyph->SetSource(myConeSource->GetOutput());
   }
     break;
   case NONE:
   default: {
-    myBaseGlyph->SetSource(myLineSource->GetOutput());
-    myTransformedGlyph->SetSource(myLineSource->GetOutput());
+    myGlyph->SetSource(myLineSource->GetOutput());
   }
   }
 
@@ -335,19 +320,12 @@ VISU_VectorsPL
 {
   unsigned long int aSize = Superclass::GetMemorySize();
 
-  if(vtkDataSet* aDataSet = myBaseGlyph->GetOutput())
-    aSize += aDataSet->GetActualMemorySize() * 1024;
-
-  if(vtkDataSet* aDataSet = myTransformedGlyph->GetOutput())
+  if(vtkDataSet* aDataSet = myGlyph->GetOutput())
     aSize += aDataSet->GetActualMemorySize() * 1024;
   
   if(vtkDataSet* aDataSet = myCenters->GetOutput())
     aSize += aDataSet->GetActualMemorySize() * 1024;
 
-  if(myCellDataToPointData->GetInput())
-    if(vtkDataSet* aDataSet = myCellDataToPointData->GetOutput())
-      aSize += aDataSet->GetActualMemorySize() * 1024;
-
   return aSize;
 }
 
@@ -357,8 +335,9 @@ vtkDataSet*
 VISU_VectorsPL
 ::GetOutput()
 {
-  myBaseGlyph->Update();
-  return myBaseGlyph->GetOutput();
+  myGlyph->Update();
+
+  return myGlyph->GetOutput();
 }
 
 
@@ -368,9 +347,9 @@ VISU_VectorsPL
 ::SetMapScale(vtkFloatingPointType theMapScale)
 {
   VISU_ScalarMapPL::SetMapScale(theMapScale);
+  myMapScaleFactor = theMapScale;
 
-  myBaseGlyph->SetScaleFactor(myScaleFactor*theMapScale);
-  myTransformedGlyph->SetScaleFactor(myScaleFactor*theMapScale);
+  myGlyph->SetScaleFactor( myScaleFactor*theMapScale );
 
   Modified();
 }
index 09fe54cb5c603f031fe4a4fa2471fde1f2df4b63..7621f725023786def5816258d56f423f54ee7ac1 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_PipeLine.hxx
 // Author:  Alexey PETROV
 // Module : VISU
-
+//
 #ifndef VISU_VectorsPL_HeaderFile
 #define VISU_VectorsPL_HeaderFile
 
@@ -135,8 +135,7 @@ protected:
 
   GlyphType myTypeGlyph;
   GlyphPos myPosGlyph;
-  vtkGlyph3D *myBaseGlyph;
-  vtkGlyph3D *myTransformedGlyph;
+  vtkGlyph3D *myGlyph;
 
   vtkGlyphSource2D *myGlyphSource;
   vtkLineSource *myLineSource;
index 452b8e9307cf5d78192f3fd4d5c23c1baaaa7027..9f86db002e4c9fe3abdfab7f29fc7219f3ba4b8c 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   : VVTK_WidgetCtrl.cxx
 //  Author : Peter KURNEV
 //  Module : SALOME
 //  $Header$
-
+//
 #include "VISU_WidgetCtrl.hxx"
 //
 #include "VISU_ImplicitFunctionWidget.hxx"
index 78c283d83665a236e6ceb56a4cedc77ec31e5c57..7024e145bff49fe7b3ba6ed0a1b334e736ce8d78 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   : VISU_WidgetCtrl.hxx
 //  Author : Peter KURNEV
 //  Module : SALOME
 //  $Header$
-
+//
 #ifndef __VISU_WidgetCtrl_hxx
 #define __VISU_WidgetCtrl_hxx
 
diff --git a/src/PIPELINE/VISU_XYPlotActor.cxx b/src/PIPELINE/VISU_XYPlotActor.cxx
new file mode 100644 (file)
index 0000000..a151b2f
--- /dev/null
@@ -0,0 +1,2244 @@
+/*=========================================================================
+
+  Program:   Visualization Toolkit
+  Module:    $RCSfile$
+
+  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
+  All rights reserved.
+  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
+
+     This software is distributed WITHOUT ANY WARRANTY; without even
+     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+     PURPOSE.  See the above copyright notice for more information.
+
+=========================================================================*/
+#include "VISU_XYPlotActor.hxx"
+
+#include "vtkAppendPolyData.h"
+#include "vtkAxisActor2D.h"
+#include "vtkCellArray.h"
+#include "vtkDataObjectCollection.h"
+#include "vtkDataSetCollection.h"
+#include "vtkFieldData.h"
+#include "vtkDoubleArray.h"
+#include "vtkGlyph2D.h"
+#include "vtkGlyphSource2D.h"
+#include "vtkIntArray.h"
+#include "vtkLegendBoxActor.h"
+#include "vtkMath.h"
+#include "vtkObjectFactory.h"
+#include "vtkPlane.h"
+#include "vtkPlanes.h"
+#include "vtkPointData.h"
+#include "vtkPolyData.h"
+#include "vtkPolyDataMapper2D.h"
+#include "vtkProperty2D.h"
+#include "vtkTextMapper.h"
+#include "vtkTextProperty.h"
+#include "vtkViewport.h"
+#include "vtkTransformPolyDataFilter.h" // RKV
+#include "vtkTransform.h" // RKV
+
+#define VTK_MAX_PLOTS 50
+
+using namespace std;
+
+vtkCxxRevisionMacro(VISU_XYPlotActor, "$Revision$");
+vtkStandardNewMacro(VISU_XYPlotActor);
+
+vtkCxxSetObjectMacro(VISU_XYPlotActor,TitleTextProperty,vtkTextProperty);
+vtkCxxSetObjectMacro(VISU_XYPlotActor,AxisLabelTextProperty,vtkTextProperty);
+vtkCxxSetObjectMacro(VISU_XYPlotActor,AxisTitleTextProperty,vtkTextProperty);
+
+//----------------------------------------------------------------------------
+// Instantiate object
+VISU_XYPlotActor::VISU_XYPlotActor()
+{
+  this->PositionCoordinate->SetCoordinateSystemToNormalizedViewport();
+  this->PositionCoordinate->SetValue(0.25,0.25);
+  this->Position2Coordinate->SetValue(0.5, 0.5);
+
+  this->InputList = vtkDataSetCollection::New();
+  this->SelectedInputScalars = NULL;
+  this->SelectedInputScalarsComponent = vtkIntArray::New();
+  this->DataObjectInputList = vtkDataObjectCollection::New();
+
+  this->Title = NULL;
+  this->XTitle = new char[7];
+  sprintf(this->XTitle,"%s","X Axis");
+  this->YTitle = new char[7];
+  sprintf(this->YTitle,"%s","Y Axis");
+
+  this->XValues = VTK_XYPLOT_INDEX;
+  this->PlotLocation = VISU_XYPLOT_BOTTOM; // RKV
+
+  this->NumberOfXLabels = 5;
+  this->NumberOfYLabels = 5;
+
+  this->TitleTextProperty = vtkTextProperty::New();
+  this->TitleTextProperty->SetBold(1);
+  this->TitleTextProperty->SetItalic(1);
+  this->TitleTextProperty->SetShadow(1);
+  this->TitleTextProperty->SetFontFamilyToArial();
+
+  this->AxisLabelTextProperty = vtkTextProperty::New();
+  this->AxisLabelTextProperty->ShallowCopy(this->TitleTextProperty);
+
+  this->AxisTitleTextProperty = vtkTextProperty::New();
+  this->AxisTitleTextProperty->ShallowCopy(this->AxisLabelTextProperty);
+
+  this->LabelFormat = new char[8]; 
+  sprintf(this->LabelFormat,"%s","%-#6.3g");
+
+  this->Logx = 0;
+  
+  this->XRange[0] = 0.0;
+  this->XRange[1] = 0.0;
+  this->YRange[0] = 0.0;
+  this->YRange[1] = 0.0;
+
+  this->Border = 5;
+  this->PlotLines = 1;
+  this->PlotPoints = 0;
+  this->PlotCurveLines = 0;
+  this->PlotCurvePoints = 0;
+  this->ExchangeAxes = 0;
+  this->ReverseXAxis = 0;
+  this->ReverseYAxis = 0;
+
+  this->TitleMapper = vtkTextMapper::New();
+  this->TitleActor = vtkActor2D::New();
+  this->TitleActor->SetMapper(this->TitleMapper);
+  this->TitleActor->GetPositionCoordinate()->SetCoordinateSystemToViewport();
+
+  this->XAxis = vtkAxisActor2D::New();
+  this->XAxis->GetPositionCoordinate()->SetCoordinateSystemToViewport();
+  this->XAxis->GetPosition2Coordinate()->SetCoordinateSystemToViewport();
+  this->XAxis->SetProperty(this->GetProperty());
+
+  this->YAxis = vtkAxisActor2D::New();
+  this->YAxis->GetPositionCoordinate()->SetCoordinateSystemToViewport();
+  this->YAxis->GetPosition2Coordinate()->SetCoordinateSystemToViewport();
+  this->YAxis->SetProperty(this->GetProperty());
+  
+  this->NumberOfInputs = 0;
+  this->PlotData = NULL;
+  this->PlotGlyph = NULL;
+  this->PlotAppend = NULL;
+  this->PlotTransform = NULL; // RKV
+  this->PlotMapper = NULL;
+  this->PlotActor = NULL;
+
+  this->ViewportCoordinate[0] = 0.0;
+  this->ViewportCoordinate[1] = 0.0;
+  this->PlotCoordinate[0] = 0.0;
+  this->PlotCoordinate[1] = 0.0;
+
+  this->DataObjectPlotMode = VTK_XYPLOT_COLUMN;
+  this->XComponent = vtkIntArray::New();
+  this->XComponent->SetNumberOfValues(VTK_MAX_PLOTS);
+  this->YComponent = vtkIntArray::New();
+  this->YComponent->SetNumberOfValues(VTK_MAX_PLOTS);
+
+  this->LinesOn = vtkIntArray::New();
+  this->LinesOn->SetNumberOfValues(VTK_MAX_PLOTS);
+  this->PointsOn = vtkIntArray::New();
+  this->PointsOn->SetNumberOfValues(VTK_MAX_PLOTS);
+  for (int i=0; i<VTK_MAX_PLOTS; i++)
+    {
+    this->XComponent->SetValue(i,0);
+    this->YComponent->SetValue(i,0);
+    this->LinesOn->SetValue(i,this->PlotLines);
+    this->PointsOn->SetValue(i,this->PlotPoints);
+    }
+
+  this->Legend = 0;
+  this->LegendPosition[0] = 0.85;
+  this->LegendPosition[1] = 0.75;
+  this->LegendPosition2[0] = 0.15;
+  this->LegendPosition2[1] = 0.20;
+  this->LegendActor = vtkLegendBoxActor::New();
+  this->LegendActor->GetPositionCoordinate()->SetCoordinateSystemToViewport();
+  this->LegendActor->GetPosition2Coordinate()->SetCoordinateSystemToViewport();
+  this->LegendActor->GetPosition2Coordinate()->SetReferenceCoordinate(NULL);
+  this->LegendActor->BorderOff();
+  this->LegendActor->SetNumberOfEntries(VTK_MAX_PLOTS); //initial allocation
+  this->GlyphSource = vtkGlyphSource2D::New();
+  this->GlyphSource->SetGlyphTypeToNone();
+  this->GlyphSource->DashOn();
+  this->GlyphSource->FilledOff();
+  this->GlyphSize = 0.020;
+
+  this->ClipPlanes = vtkPlanes::New();
+  vtkPoints *pts = vtkPoints::New();
+  pts->SetNumberOfPoints(4);
+  this->ClipPlanes->SetPoints(pts);
+  pts->Delete();
+  vtkDoubleArray *n = vtkDoubleArray::New();
+  n->SetNumberOfComponents(3);
+  n->SetNumberOfTuples(4);
+  this->ClipPlanes->SetNormals(n);
+  n->Delete();
+
+  this->CachedSize[0] = 0;
+  this->CachedSize[1] = 0;
+}
+
+//----------------------------------------------------------------------------
+VISU_XYPlotActor::~VISU_XYPlotActor()
+{
+  // Get rid of the list of array names.
+  int num = this->InputList->GetNumberOfItems();
+  if (this->SelectedInputScalars)
+    {
+    for (int i = 0; i < num; ++i)
+      {
+      if (this->SelectedInputScalars[i])
+        {
+        delete [] this->SelectedInputScalars[i];
+        this->SelectedInputScalars[i] = NULL;
+        }
+      }
+    delete [] this->SelectedInputScalars;
+    this->SelectedInputScalars = NULL;  
+    }
+  this->SelectedInputScalarsComponent->Delete();
+  this->SelectedInputScalarsComponent = NULL;
+
+  //  Now we can get rid of the inputs. 
+  this->InputList->Delete();
+  this->InputList = NULL;
+
+  this->DataObjectInputList->Delete();
+  this->DataObjectInputList = NULL;
+
+  this->TitleMapper->Delete();
+  this->TitleMapper = NULL;
+  this->TitleActor->Delete();
+  this->TitleActor = NULL;
+
+  this->SetTitle(0);
+  this->SetXTitle(0);
+  this->SetYTitle(0);
+  this->SetLabelFormat(0);
+
+  this->XAxis->Delete();
+  this->YAxis->Delete();
+  
+  this->InitializeEntries();
+
+  this->LegendActor->Delete();
+  this->GlyphSource->Delete();
+  this->ClipPlanes->Delete();
+  
+  this->XComponent->Delete();
+  this->YComponent->Delete();
+
+  this->LinesOn->Delete();
+  this->PointsOn->Delete();
+
+  this->SetTitleTextProperty(NULL);
+  this->SetAxisLabelTextProperty(NULL);
+  this->SetAxisTitleTextProperty(NULL);
+}
+
+//----------------------------------------------------------------------------
+void VISU_XYPlotActor::InitializeEntries()
+{
+  if ( this->NumberOfInputs > 0 )
+    {
+    for (int i=0; i<this->NumberOfInputs; i++)
+      {
+      this->PlotData[i]->Delete();
+      this->PlotGlyph[i]->Delete();
+      this->PlotAppend[i]->Delete();
+      this->PlotTransform[i]->Delete(); // RKV
+      this->PlotMapper[i]->Delete();
+      this->PlotActor[i]->Delete();
+      }//for all entries
+    delete [] this->PlotData; this->PlotData = NULL;
+    delete [] this->PlotGlyph; this->PlotGlyph = NULL;
+    delete [] this->PlotAppend; this->PlotAppend = NULL;
+    delete [] this->PlotTransform; this->PlotTransform = NULL; // RKV
+    delete [] this->PlotMapper; this->PlotMapper = NULL;
+    delete [] this->PlotActor; this->PlotActor = NULL;
+    this->NumberOfInputs = 0;
+    }//if entries have been defined
+}
+  
+//----------------------------------------------------------------------------
+// Add a dataset and array to the list of data to plot.
+void VISU_XYPlotActor::AddInput(vtkDataSet *ds, const char *arrayName, int component)
+{
+  int idx, num;
+  char** newNames;
+
+  // I cannot change the input list, because the user has direct 
+  // access to the collection.  I cannot store the index of the array, 
+  // because the index might change from render to render ...
+  // I have to store the list of string array names.
+
+  // I believe idx starts at 1 and goes to "NumberOfItems".
+  idx = this->InputList->IsItemPresent(ds);
+  if (idx > 0)
+    { // Return if arrays are the same.
+    if (arrayName == NULL && this->SelectedInputScalars[idx-1] == NULL &&
+        component == this->SelectedInputScalarsComponent->GetValue(idx-1))
+      {
+      return;
+      }
+    if (arrayName != NULL && this->SelectedInputScalars[idx-1] != NULL &&
+        strcmp(arrayName, this->SelectedInputScalars[idx-1]) == 0 &&
+        component == this->SelectedInputScalarsComponent->GetValue(idx-1))
+      {
+      return;
+      }
+    }
+
+  // The input/array/component must be a unique combination.  Add it to our input list.
+
+  // Now reallocate the list of strings and add the new value.
+  num = this->InputList->GetNumberOfItems();
+  newNames = new char*[num+1];
+  for (idx = 0; idx < num; ++idx)
+    {
+    newNames[idx] = this->SelectedInputScalars[idx];
+    }
+  if (arrayName == NULL)
+    {
+    newNames[num] = NULL;
+    }
+  else
+    {
+    newNames[num] = new char[strlen(arrayName)+1];
+    strcpy(newNames[num],arrayName);
+    }
+  delete [] this->SelectedInputScalars;
+  this->SelectedInputScalars = newNames;
+
+  // Save the component in the int array.
+  this->SelectedInputScalarsComponent->InsertValue(num, component);
+
+  // Add the data set to the collection
+  this->InputList->AddItem(ds);
+
+  // In case of multiple use of a XYPlotActor the NumberOfEntries could be set
+  // to n. Then when a call to SetEntryString(n+1, bla) was done the string was lost
+  // Need to update the number of entries for the legend actor
+  this->LegendActor->SetNumberOfEntries(this->LegendActor->GetNumberOfEntries()+1);
+
+  this->Modified();
+}
+
+//----------------------------------------------------------------------------
+void VISU_XYPlotActor::RemoveAllInputs()
+{
+  int idx, num;
+
+  num = this->InputList->GetNumberOfItems();
+  this->InputList->RemoveAllItems();
+
+  for (idx = 0; idx < num; ++idx)
+    {
+    if (this->SelectedInputScalars[idx])
+      {
+      delete [] this->SelectedInputScalars[idx];
+      this->SelectedInputScalars[idx] = NULL;
+      }
+    }
+  this->SelectedInputScalarsComponent->Reset();
+
+  this->DataObjectInputList->RemoveAllItems();
+}
+
+//----------------------------------------------------------------------------
+// Remove a dataset from the list of data to plot.
+void VISU_XYPlotActor::RemoveInput(vtkDataSet *ds, const char *arrayName, int component)
+{
+  int idx, num;
+  vtkDataSet *input;
+  int found = -1;
+
+  // This is my own find routine, because the array names have to match also.
+  num = this->InputList->GetNumberOfItems();
+  vtkCollectionSimpleIterator dsit;
+  this->InputList->InitTraversal(dsit);
+  for (idx = 0; idx < num && found == -1; ++idx)
+    {
+    input = this->InputList->GetNextDataSet(dsit);
+    if (input == ds)
+      {
+      if (arrayName == NULL && this->SelectedInputScalars[idx] == NULL &&
+          component == this->SelectedInputScalarsComponent->GetValue(idx))
+        {
+        found = idx;
+        }
+      if (arrayName != NULL && this->SelectedInputScalars[idx] != NULL &&
+          strcmp(arrayName, this->SelectedInputScalars[idx]) == 0 &&
+          component == this->SelectedInputScalarsComponent->GetValue(idx))
+        {
+        found = idx;
+        }
+      }
+    }
+
+  if (found == -1)
+    {
+    return;
+    }
+  
+  this->Modified();
+  // Collections index their items starting at 1.
+  this->InputList->RemoveItem(found);
+
+  // Do not bother reallocating the SelectedInputScalars 
+  // string array to make it smaller.
+  if (this->SelectedInputScalars[found])
+    {
+    delete [] this->SelectedInputScalars[found];
+    this->SelectedInputScalars[found] = NULL;
+    }
+  for (idx = found+1; idx < num; ++idx)
+    {
+    this->SelectedInputScalars[idx-1] = this->SelectedInputScalars[idx];
+    this->SelectedInputScalarsComponent->SetValue(idx-1, 
+                          this->SelectedInputScalarsComponent->GetValue(idx));
+    }
+  // Reseting the last item is not really necessary, 
+  // but to be clean we do it anyway.
+  this->SelectedInputScalarsComponent->SetValue(num-1, -1); 
+  this->SelectedInputScalars[num-1] = NULL;
+}
+
+//----------------------------------------------------------------------------
+// Add a data object to the list of data to plot.
+void VISU_XYPlotActor::AddDataObjectInput(vtkDataObject *in)
+{
+  if ( ! this->DataObjectInputList->IsItemPresent(in) )
+    {
+    this->Modified();
+    this->DataObjectInputList->AddItem(in);
+    }
+}
+
+//----------------------------------------------------------------------------
+// Remove a data object from the list of data to plot.
+void VISU_XYPlotActor::RemoveDataObjectInput(vtkDataObject *in)
+{
+  if ( this->DataObjectInputList->IsItemPresent(in) )
+    {
+    this->Modified();
+    this->DataObjectInputList->RemoveItem(in);
+    }
+}
+
+//----------------------------------------------------------------------------
+// Plot scalar data for each input dataset.
+int VISU_XYPlotActor::RenderOverlay(vtkViewport *viewport)
+{
+  int renderedSomething = 0;
+
+  // Make sure input is up to date.
+  if ( this->InputList->GetNumberOfItems() < 1 && 
+       this->DataObjectInputList->GetNumberOfItems() < 1 )
+    {
+    vtkErrorMacro(<< "Nothing to plot!");
+    return 0;
+    }
+
+  renderedSomething += this->XAxis->RenderOverlay(viewport);
+  renderedSomething += this->YAxis->RenderOverlay(viewport);
+  if ( this->Title )
+    {
+    renderedSomething += this->TitleActor->RenderOverlay(viewport);
+    }
+  for (int i=0; i < this->NumberOfInputs; i++)
+    {
+    renderedSomething += this->PlotActor[i]->RenderOverlay(viewport);
+    }
+  if ( this->Legend )
+    {
+    renderedSomething += this->LegendActor->RenderOverlay(viewport);
+    }
+
+  return renderedSomething;
+}
+
+//----------------------------------------------------------------------------
+// Plot scalar data for each input dataset.
+int VISU_XYPlotActor::RenderOpaqueGeometry(vtkViewport *viewport)
+{
+  unsigned long mtime, dsMtime;
+  vtkDataSet *ds;
+  vtkDataObject *dobj;
+  int numDS, numDO, renderedSomething=0;
+
+  // Initialize
+  // Make sure input is up to date.
+  numDS = this->InputList->GetNumberOfItems();
+  numDO = this->DataObjectInputList->GetNumberOfItems();
+  if ( numDS > 0 )
+    {
+    vtkDebugMacro(<<"Plotting input data sets");
+    vtkCollectionSimpleIterator dsit;
+    for (mtime=0, this->InputList->InitTraversal(dsit); 
+         (ds = this->InputList->GetNextDataSet(dsit)); )
+      {
+      ds->Update();
+      dsMtime = ds->GetMTime();
+      if ( dsMtime > mtime )
+        {
+        mtime = dsMtime;
+        }
+      }
+    }
+  else if ( numDO > 0 )
+    {
+    vtkDebugMacro(<<"Plotting input data objects");
+    vtkCollectionSimpleIterator doit;
+    for (mtime=0, this->DataObjectInputList->InitTraversal(doit); 
+         (dobj = this->DataObjectInputList->GetNextDataObject(doit)); )
+      {
+      dobj->Update();
+      dsMtime = dobj->GetMTime();
+      if ( dsMtime > mtime )
+        {
+        mtime = dsMtime;
+        }
+      }
+    }
+  else
+    {
+    vtkErrorMacro(<< "Nothing to plot!");
+    return 0;
+    }
+
+  if (this->Title && this->Title[0] && !this->TitleTextProperty)
+    {
+    vtkErrorMacro(<< "Need a title text property to render plot title");
+    return 0;
+    }
+
+  // Check modified time to see whether we have to rebuild.
+  // Pay attention that GetMTime() has been redefined (see below)
+
+  int *size=viewport->GetSize();
+  if (mtime > this->BuildTime || 
+      size[0] != this->CachedSize[0] || size[1] != this->CachedSize[1] ||
+      this->GetMTime() > this->BuildTime ||
+      (this->Title && this->Title[0] && 
+       this->TitleTextProperty->GetMTime() > this->BuildTime) ||
+      (this->AxisLabelTextProperty &&
+       this->AxisLabelTextProperty->GetMTime() > this->BuildTime) ||
+      (this->AxisTitleTextProperty &&
+       this->AxisTitleTextProperty->GetMTime() > this->BuildTime))
+    {
+    double range[2], yrange[2], xRange[2], yRange[2], interval, *lengths=NULL;
+    int pos[2], pos2[2], numTicks;
+    int stringSize[2];
+    int num = ( numDS > 0 ? numDS : numDO );
+
+    vtkDebugMacro(<<"Rebuilding plot");
+    this->CachedSize[0] = size[0];
+    this->CachedSize[1] = size[1];
+
+    // RKV : Begin
+    if ((this->PlotLocation == VISU_XYPLOT_RIGHT) || (this->PlotLocation == VISU_XYPLOT_LEFT))
+      this->ReverseYAxis = 1;
+    else
+      this->ReverseYAxis = 0;
+    // RKV : End
+
+    // manage legend
+    vtkDebugMacro(<<"Rebuilding legend");
+    if ( this->Legend )
+      {
+      int legPos[2], legPos2[2];
+      int *p1 = this->PositionCoordinate->GetComputedViewportValue(viewport);
+      int *p2 = this->Position2Coordinate->GetComputedViewportValue(viewport);
+      legPos[0] = (int)(p1[0] + this->LegendPosition[0]*(p2[0]-p1[0]));
+      legPos2[0] = (int)(legPos[0] + this->LegendPosition2[0]*(p2[0]-p1[0]));
+      legPos[1] = (int)(p1[1] + this->LegendPosition[1]*(p2[1]-p1[1]));
+      legPos2[1] = (int)(legPos[1] + this->LegendPosition2[1]*(p2[1]-p1[1]));
+      
+      this->LegendActor->GetPositionCoordinate()->SetValue(
+        (double)legPos[0], (double)legPos[1]);
+      this->LegendActor->GetPosition2Coordinate()->SetValue(
+        (double)legPos2[0], (double)legPos2[1]);
+      this->LegendActor->SetNumberOfEntries(num);
+      for (int i=0; i<num; i++)
+        {
+        if ( ! this->LegendActor->GetEntrySymbol(i) )
+          {
+          this->LegendActor->SetEntrySymbol(i,this->GlyphSource->GetOutput());
+          }
+        if ( ! this->LegendActor->GetEntryString(i) )
+          {
+          static char legendString[12];
+          sprintf(legendString, "%s%d", "Curve ", i);
+          this->LegendActor->SetEntryString(i,legendString);
+          }
+        }
+
+      this->LegendActor->SetPadding(2);
+      this->LegendActor->GetProperty()->DeepCopy(this->GetProperty());
+      this->LegendActor->ScalarVisibilityOff();
+      }
+
+    // Rebuid text props
+    // Perform shallow copy here since each individual axis can be
+    // accessed through the class API (i.e. each individual axis text prop
+    // can be changed). Therefore, we can not just assign pointers otherwise
+    // each individual axis text prop would point to the same text prop.
+
+    if (this->AxisLabelTextProperty &&
+        this->AxisLabelTextProperty->GetMTime() > this->BuildTime)
+      {
+      if (this->XAxis->GetTitleTextProperty())
+        {
+        this->XAxis->GetLabelTextProperty()->ShallowCopy(
+          this->AxisLabelTextProperty);
+        }
+      if (this->YAxis->GetTitleTextProperty())
+        {
+        this->YAxis->GetLabelTextProperty()->ShallowCopy(
+          this->AxisLabelTextProperty);
+        }
+      }
+    
+    if (this->AxisTitleTextProperty &&
+        this->AxisTitleTextProperty->GetMTime() > this->BuildTime)
+      {
+      if (this->XAxis->GetTitleTextProperty())
+        {
+        this->XAxis->GetTitleTextProperty()->ShallowCopy(
+          this->AxisTitleTextProperty);
+        }
+      if (this->YAxis->GetTitleTextProperty())
+        {
+        this->YAxis->GetTitleTextProperty()->ShallowCopy(
+          this->AxisTitleTextProperty);
+        }
+      }
+    
+    // setup x-axis
+    vtkDebugMacro(<<"Rebuilding x-axis");
+    
+    this->XAxis->SetTitle(this->XTitle);
+    this->XAxis->SetNumberOfLabels(this->NumberOfXLabels);
+    this->XAxis->SetProperty(this->GetProperty());
+
+    vtkDebugMacro(<<"xrange = (" << range[0] << ", " << range[1] << ")"); // RKV
+    lengths = new double[num];
+    if ( numDS > 0 ) //plotting data sets
+      {
+      this->ComputeXRange(range, lengths);
+      }
+    else
+      {
+      this->ComputeDORange(range, yrange, lengths);
+      }
+    if ( this->XRange[0] < this->XRange[1] )
+      {
+      range[0] = this->XRange[0];
+      range[1] = this->XRange[1];
+      }
+
+/* RKV    vtkAxisActor2D::ComputeRange(range, xRange, this->NumberOfXLabels,
+                                 numTicks, interval);
+*/    // RKV : Begin
+    vtkDebugMacro(<<"XRange = (" << XRange[0] << ", " << XRange[1] << ")");
+    vtkDebugMacro(<<"xrange = (" << range[0] << ", " << range[1] << ")");
+    xRange[0] = range[0];
+    xRange[1] = range[1];
+    // RKV : End
+    if ( !this->ExchangeAxes )
+      {
+      this->XComputedRange[0] = xRange[0];
+      this->XComputedRange[1] = xRange[1];
+      if ( this->ReverseXAxis )
+        {
+        this->XAxis->SetRange(range[1],range[0]);
+        }
+      else
+        {
+        this->XAxis->SetRange(range[0],range[1]);
+        }
+      }
+    else
+      {
+      this->XComputedRange[1] = xRange[0];
+      this->XComputedRange[0] = xRange[1];
+      if ( this->ReverseYAxis )
+        {
+        this->XAxis->SetRange(range[0],range[1]);
+        }
+      else
+        {
+        this->XAxis->SetRange(range[1],range[0]);
+        }
+      }
+    
+    // setup y-axis
+    vtkDebugMacro(<<"Rebuilding y-axis");
+    this->YAxis->SetTitle(this->YTitle);
+    this->YAxis->SetNumberOfLabels(this->NumberOfYLabels);
+
+    vtkDebugMacro(<<"yrange = (" << yrange[0] << ", " << yrange[1] << ")"); // RKV
+    if ( this->YRange[0] >= this->YRange[1] )
+      {
+      if ( numDS > 0 ) //plotting data sets
+        {
+        this->ComputeYRange(yrange);
+        }
+      }
+    else
+      {
+      yrange[0] = this->YRange[0];
+      yrange[1] = this->YRange[1];
+      }
+/* RKV   vtkAxisActor2D::ComputeRange(yrange, yRange, this->NumberOfYLabels,
+                                 numTicks, interval);
+*/
+    // RKV : Begin
+    vtkDebugMacro(<<"YRange = (" << YRange[0] << ", " << YRange[1] << ")");
+    vtkDebugMacro(<<"yrange = (" << yrange[0] << ", " << yrange[1] << ")");
+    yRange[0] = yrange[0];
+    yRange[1] = yrange[1];
+    // RKV : End
+    
+    if ( !this->ExchangeAxes )
+      {
+      this->YComputedRange[0] = yRange[0];
+      this->YComputedRange[1] = yRange[1];
+      if ( this->ReverseYAxis )
+        {
+        this->YAxis->SetRange(yrange[0],yrange[1]);
+        }
+      else
+        {
+        this->YAxis->SetRange(yrange[1],yrange[0]);
+        }
+      }
+    else
+      {
+      this->YComputedRange[1] = yRange[0];
+      this->YComputedRange[0] = yRange[1];
+      if ( this->ReverseXAxis )
+        {
+        this->YAxis->SetRange(yrange[1],yrange[0]);
+        }
+      else
+        {
+        this->YAxis->SetRange(yrange[0],yrange[1]);
+        }
+      }
+      
+
+    this->PlaceAxes(viewport, size, pos, pos2);
+    
+    // manage title
+    if (this->Title != NULL && this->Title[0])
+      {
+      this->TitleMapper->SetInput(this->Title);
+      if (this->TitleTextProperty->GetMTime() > this->BuildTime)
+        {
+        this->TitleMapper->GetTextProperty()->ShallowCopy(
+          this->TitleTextProperty);
+        }
+
+      vtkAxisActor2D::SetFontSize(viewport, 
+                                  this->TitleMapper, 
+                                  size, 
+                                  1.0,
+                                  stringSize);
+
+      this->TitleActor->GetPositionCoordinate()->SetValue(
+        pos[0] + 0.5 * (pos2[0] - pos[0]) - stringSize[0] / 2.0, 
+        pos2[1] - stringSize[1] / 2.0);
+
+      this->TitleActor->SetProperty(this->GetProperty());
+      }
+
+    vtkDebugMacro(<<"Creating Plot Data");
+    // Okay, now create the plot data and set up the pipeline
+    this->CreatePlotData(pos, pos2, xRange, yRange, lengths, numDS, numDO);
+    delete [] lengths;
+    
+    this->BuildTime.Modified();
+
+    }//if need to rebuild the plot
+
+  vtkDebugMacro(<<"Rendering Axes");
+  renderedSomething += this->XAxis->RenderOpaqueGeometry(viewport);
+  renderedSomething += this->YAxis->RenderOpaqueGeometry(viewport);
+  for (int i=0; i < this->NumberOfInputs; i++)
+    {
+    vtkDebugMacro(<<"Rendering plotactors");
+    renderedSomething += this->PlotActor[i]->RenderOpaqueGeometry(viewport);
+    }
+  if ( this->Title )
+    {
+    vtkDebugMacro(<<"Rendering titleactors");
+    renderedSomething += this->TitleActor->RenderOpaqueGeometry(viewport);
+    }
+  if ( this->Legend )
+    {
+    vtkDebugMacro(<<"Rendering legendeactors");
+    renderedSomething += this->LegendActor->RenderOpaqueGeometry(viewport);
+    }
+
+  return renderedSomething;
+}
+
+//----------------------------------------------------------------------------
+const char *VISU_XYPlotActor::GetXValuesAsString()
+{
+  switch (this->XValues)
+    {
+    case VTK_XYPLOT_INDEX:
+      return "Index";
+    case VTK_XYPLOT_ARC_LENGTH:
+      return "ArcLength";
+    case VTK_XYPLOT_NORMALIZED_ARC_LENGTH:
+      return "NormalizedArcLength";
+    default:
+      return "Value";
+    }
+}
+
+//----------------------------------------------------------------------------
+const char *VISU_XYPlotActor::GetDataObjectPlotModeAsString()
+{
+  if ( this->DataObjectPlotMode == VTK_XYPLOT_ROW )
+    {
+    return "Plot Rows";
+    }
+  else 
+    {
+    return "Plot Columns";
+    }
+}
+
+//----------------------------------------------------------------------------
+// Release any graphics resources that are being consumed by this actor.
+// The parameter window could be used to determine which graphic
+// resources to release.
+void VISU_XYPlotActor::ReleaseGraphicsResources(vtkWindow *win)
+{
+  this->TitleActor->ReleaseGraphicsResources(win);
+  this->XAxis->ReleaseGraphicsResources(win);
+  this->YAxis->ReleaseGraphicsResources(win);
+  for (int i=0; i < this->NumberOfInputs; i++)
+    {
+    this->PlotActor[i]->ReleaseGraphicsResources(win);
+    }
+  this->LegendActor->ReleaseGraphicsResources(win);
+}
+
+//----------------------------------------------------------------------------
+unsigned long VISU_XYPlotActor::GetMTime()
+{
+  unsigned long mtime, mtime2;
+  mtime = this->vtkActor2D::GetMTime();
+
+  if (this->Legend)
+    {
+    mtime2 = this->LegendActor->GetMTime();
+    if (mtime2 > mtime)
+      {
+      mtime = mtime2;
+      }
+    }
+
+  return mtime;
+}
+
+//----------------------------------------------------------------------------
+void VISU_XYPlotActor::PrintSelf(ostream& os, vtkIndent indent)
+{
+  vtkIndent i2 = indent.GetNextIndent();
+  vtkDataSet *input;
+  char *array;
+  int component;
+  int idx, num;
+
+  this->Superclass::PrintSelf(os,indent);
+
+  vtkCollectionSimpleIterator dsit;
+  this->InputList->InitTraversal(dsit);
+  num = this->InputList->GetNumberOfItems();
+  os << indent << "DataSetInputs: " << endl;
+  for (idx = 0; idx < num; ++idx)
+    {
+    input = this->InputList->GetNextDataSet(dsit);
+    array = this->SelectedInputScalars[idx];
+    component = this->SelectedInputScalarsComponent->GetValue((vtkIdType)idx);
+    if (array == NULL)
+      {
+      os << i2 << "(" << input << ") Default Scalars,  Component = " << component << endl;
+      }
+    else
+      {
+      os << i2 << "(" << input << ") " << array << ",  Component = " << component << endl;
+      }
+    }
+
+  os << indent << "Input DataObjects:\n";
+  this->DataObjectInputList->PrintSelf(os,indent.GetNextIndent());
+  
+  if (this->TitleTextProperty)
+    {
+    os << indent << "Title Text Property:\n";
+    this->TitleTextProperty->PrintSelf(os,indent.GetNextIndent());
+    }
+  else
+    {
+    os << indent << "Title Text Property: (none)\n";
+    }
+
+  if (this->AxisTitleTextProperty)
+    {
+    os << indent << "Axis Title Text Property:\n";
+    this->AxisTitleTextProperty->PrintSelf(os,indent.GetNextIndent());
+    }
+  else
+    {
+    os << indent << "Axis Title Text Property: (none)\n";
+    }
+
+  if (this->AxisLabelTextProperty)
+    {
+    os << indent << "Axis Label Text Property:\n";
+    this->AxisLabelTextProperty->PrintSelf(os,indent.GetNextIndent());
+    }
+  else
+    {
+    os << indent << "Axis Label Text Property: (none)\n";
+    }
+
+  os << indent << "Data Object Plot Mode: " << this->GetDataObjectPlotModeAsString() << endl;
+
+  os << indent << "Title: " << (this->Title ? this->Title : "(none)") << "\n";
+  os << indent << "X Title: " 
+     << (this->XTitle ? this->XTitle : "(none)") << "\n";
+  os << indent << "Y Title: " 
+     << (this->YTitle ? this->YTitle : "(none)") << "\n";
+  os << indent << "X Values: " << this->GetXValuesAsString() << endl;
+  os << indent << "Log X Values: " << (this->Logx ? "On\n" : "Off\n");
+
+  os << indent << "Plot global-points: " << (this->PlotPoints ? "On\n" : "Off\n");
+  os << indent << "Plot global-lines: " << (this->PlotLines ? "On\n" : "Off\n");
+  os << indent << "Plot per-curve points: " << (this->PlotCurvePoints ? "On\n" : "Off\n");
+  os << indent << "Plot per-curve lines: " << (this->PlotCurveLines ? "On\n" : "Off\n");
+  os << indent << "Exchange Axes: " << (this->ExchangeAxes ? "On\n" : "Off\n");
+  os << indent << "Reverse X Axis: " << (this->ReverseXAxis ? "On\n" : "Off\n");
+  os << indent << "Reverse Y Axis: " << (this->ReverseYAxis ? "On\n" : "Off\n");
+
+  os << indent << "Number Of X Labels: " << this->NumberOfXLabels << "\n";
+  os << indent << "Number Of Y Labels: " << this->NumberOfYLabels << "\n";
+
+  os << indent << "Label Format: " << this->LabelFormat << "\n";
+  os << indent << "Border: " << this->Border << "\n";
+  
+  os << indent << "X Range: ";
+  if ( this->XRange[0] >= this->XRange[1] )
+    {
+    os << indent << "(Automatically Computed)\n";
+    }
+  else
+    {
+    os << "(" << this->XRange[0] << ", " << this->XRange[1] << ")\n";
+    }
+
+  os << indent << "Y Range: ";
+  if ( this->XRange[0] >= this->YRange[1] )
+    {
+    os << indent << "(Automatically Computed)\n";
+    }
+  else
+    {
+    os << "(" << this->YRange[0] << ", " << this->YRange[1] << ")\n";
+    }
+
+  os << indent << "Viewport Coordinate: ("
+     << this->ViewportCoordinate[0] << ", " 
+     << this->ViewportCoordinate[1] << ")\n";
+
+  os << indent << "Plot Coordinate: ("
+     << this->PlotCoordinate[0] << ", " 
+     << this->PlotCoordinate[1] << ")\n";
+
+  os << indent << "Legend: " << (this->Legend ? "On\n" : "Off\n");
+  os << indent << "Legend Position: ("
+     << this->LegendPosition[0] << ", " 
+     << this->LegendPosition[1] << ")\n";
+  os << indent << "Legend Position2: ("
+     << this->LegendPosition2[0] << ", " 
+     << this->LegendPosition2[1] << ")\n";
+
+  os << indent << "Glyph Size: " << this->GlyphSize << endl;
+
+  os << indent << "Legend Actor:";
+  this->LegendActor->PrintSelf( os << endl, i2);
+  os << indent << "Glyph Source:";
+  this->GlyphSource->PrintSelf( os << endl, i2);
+}
+
+//----------------------------------------------------------------------------
+void VISU_XYPlotActor::ComputeXRange(double range[2], double *lengths)
+{
+  int dsNum;
+  vtkIdType numPts, ptId, maxNum;
+  double maxLength=0.0, xPrev[3], x[3];
+  vtkDataSet *ds;
+
+  range[0] = VTK_DOUBLE_MAX, range[1] = VTK_DOUBLE_MIN;
+
+  vtkCollectionSimpleIterator dsit;
+  for ( dsNum=0, maxNum=0, this->InputList->InitTraversal(dsit); 
+        (ds = this->InputList->GetNextDataSet(dsit)); dsNum++)
+    {
+    numPts = ds->GetNumberOfPoints();
+
+    if ( this->XValues != VTK_XYPLOT_INDEX )
+      {
+      ds->GetPoint(0, xPrev);
+      for ( lengths[dsNum]=0.0, ptId=0; ptId < numPts; ptId++ )
+        {
+        ds->GetPoint(ptId, x);
+        switch (this->XValues)
+          {
+          case VTK_XYPLOT_VALUE:
+            if (this->GetLogx() == 0)
+              {
+              if ( x[this->XComponent->GetValue(dsNum)] < range[0] )
+                {
+                range[0] = x[this->XComponent->GetValue(dsNum)];
+                }
+              if ( x[this->XComponent->GetValue(dsNum)] > range[1] )
+                {
+                range[1] = x[this->XComponent->GetValue(dsNum)];
+                }
+              }
+            else
+              {
+              //ensure range strictly > 0 for log
+              if ( (x[this->XComponent->GetValue(dsNum)]) < range[0] && 
+                   (x[this->XComponent->GetValue(dsNum)] > 0))
+                {
+                range[0] = x[this->XComponent->GetValue(dsNum)];
+                }
+              if ( (x[this->XComponent->GetValue(dsNum)] > range[1]) && 
+                   (x[this->XComponent->GetValue(dsNum)] > 0))
+                {
+                range[1] = x[this->XComponent->GetValue(dsNum)];
+                }
+              }
+            break;
+          default:
+            lengths[dsNum] += sqrt(vtkMath::Distance2BetweenPoints(x,xPrev));
+            xPrev[0] = x[0]; xPrev[1] = x[1]; xPrev[2] = x[2];
+          }
+        }//for all points
+      if ( lengths[dsNum] > maxLength )
+        {
+        maxLength = lengths[dsNum];
+        }
+      }//if need to visit all points
+    
+    else //if ( this->XValues == VTK_XYPLOT_INDEX )
+      {
+      if ( numPts > maxNum )
+        {
+        maxNum = numPts;
+        }
+      }
+    }//over all datasets
+
+  // determine the range
+  switch (this->XValues)
+    {
+    case VTK_XYPLOT_ARC_LENGTH:
+      range[0] = 0.0;
+      range[1] = maxLength;
+      break;
+    case VTK_XYPLOT_NORMALIZED_ARC_LENGTH:
+      range[0] = 0.0;
+      range[1] = 1.0;
+      break;
+    case VTK_XYPLOT_INDEX:
+      range[0] = 0.0;
+      range[1] = (double)(maxNum - 1);
+      break;
+    case VTK_XYPLOT_VALUE:
+      if (this->GetLogx() == 1)
+        {
+        if (range[0] > range[1]) 
+          {
+          range[0] = 0;
+          range[1] = 0;
+          }
+        else
+          {
+          range[0] = log10(range[0]);
+          range[1] = log10(range[1]);
+          }
+        }
+      break; //range computed in for loop above
+    default:
+      vtkErrorMacro(<< "Unkown X-Value option.");
+      return;
+    }
+}
+
+//----------------------------------------------------------------------------
+void VISU_XYPlotActor::ComputeYRange(double range[2])
+{
+  vtkDataSet *ds;
+  vtkDataArray *scalars;
+  double sRange[2];
+  int count;
+  int component;
+
+  range[0]=VTK_DOUBLE_MAX, range[1]=VTK_DOUBLE_MIN;
+
+  vtkCollectionSimpleIterator dsit;
+  for ( this->InputList->InitTraversal(dsit), count = 0; 
+        (ds = this->InputList->GetNextDataSet(dsit)); ++count)
+    {
+    scalars = ds->GetPointData()->GetScalars(this->SelectedInputScalars[count]);
+    component = this->SelectedInputScalarsComponent->GetValue(count);
+    if ( !scalars)
+      {
+      vtkErrorMacro(<<"No scalar data to plot!");
+      continue;
+      }
+    if ( component < 0 || component >= scalars->GetNumberOfComponents())
+      {
+      vtkErrorMacro(<<"Bad component!");
+      continue;
+      }
+    
+    scalars->GetRange(sRange, component);
+    if ( sRange[0] < range[0] )
+      {
+      range[0] = sRange[0];
+      }
+
+    if ( sRange[1] > range[1] )
+      {
+      range[1] = sRange[1];
+      }
+    }//over all datasets
+}
+
+//----------------------------------------------------------------------------
+void VISU_XYPlotActor::ComputeDORange(double xrange[2], double yrange[2], 
+                                    double *lengths)
+{
+  int i;
+  vtkDataObject *dobj;
+  vtkFieldData *field;
+  int doNum, numColumns;
+  vtkIdType numTuples, numRows, num, ptId, maxNum;
+  double maxLength=0.0, x, y, xPrev = 0.0;
+  vtkDataArray *array;
+
+  xrange[0] = yrange[0] = VTK_DOUBLE_MAX;
+  xrange[1] = yrange[1] = -VTK_DOUBLE_MAX;
+  vtkCollectionSimpleIterator doit;
+  for ( doNum=0, maxNum=0, this->DataObjectInputList->InitTraversal(doit); 
+        (dobj = this->DataObjectInputList->GetNextDataObject(doit)); doNum++)
+    {
+    lengths[doNum] = 0.0;
+    field = dobj->GetFieldData();
+    numColumns = field->GetNumberOfComponents(); //number of "columns"
+    for (numRows = VTK_LARGE_ID, i=0; i<field->GetNumberOfArrays(); i++)
+      {
+      array = field->GetArray(i);
+      numTuples = array->GetNumberOfTuples();
+      if ( numTuples < numRows )
+        {
+        numRows = numTuples;
+        }
+      }
+
+    num = (this->DataObjectPlotMode == VTK_XYPLOT_ROW ? 
+           numColumns : numRows);
+
+    if ( this->XValues != VTK_XYPLOT_INDEX )
+      {
+      // gather the information to form a plot
+      for ( ptId=0; ptId < num; ptId++ )
+        {
+        if ( this->DataObjectPlotMode == VTK_XYPLOT_ROW )
+          {
+          x = field->GetComponent(this->XComponent->GetValue(doNum), ptId);
+          }
+        else //if ( this->DataObjectPlotMode == VTK_XYPLOT_COLUMN )
+          {
+          x = field->GetComponent(ptId, this->XComponent->GetValue(doNum));
+          }
+        if ( ptId == 0 )
+          {
+          xPrev = x;
+          }
+              
+        switch (this->XValues)
+          {
+          case VTK_XYPLOT_VALUE:
+            if (this->GetLogx() == 0)
+              {
+              if ( x < xrange[0] )
+                {
+                xrange[0] = x;
+                }
+              if ( x > xrange[1] )
+                {
+                xrange[1] = x;
+                }
+              }
+            else //ensure positive values
+              {
+              if ( (x < xrange[0]) && (x > 0) )
+                {
+                xrange[0] = x;
+                }
+              if ( x > xrange[1]  && (x > 0) )
+                {
+                xrange[1] = x;
+                }
+              }
+            break;
+          default:
+            lengths[doNum] += fabs(x-xPrev);
+            xPrev = x;
+          }
+        }//for all points
+      if ( lengths[doNum] > maxLength )
+        {
+        maxLength = lengths[doNum];
+        }
+      }//if all data has to be visited
+    
+    else //if (this->XValues == VTK_XYPLOT_INDEX)
+      {
+      if ( num > maxNum )
+        {
+        maxNum = num;
+        }
+      }
+
+    // Get the y-values
+    for ( ptId=0; ptId < num; ptId++ )
+      {
+      if ( this->DataObjectPlotMode == VTK_XYPLOT_ROW )
+        {
+        y = field->GetComponent(this->YComponent->GetValue(doNum), ptId);
+        }
+      else //if ( this->DataObjectPlotMode == VTK_XYPLOT_COLUMN )
+        {
+        y = field->GetComponent(ptId, this->YComponent->GetValue(doNum));
+        }
+      if ( y < yrange[0] )
+        {
+        yrange[0] = y;
+        }
+      if ( y > yrange[1] )
+        {
+        yrange[1] = y;
+        }
+      }//over all y values
+    }//over all dataobjects
+
+  // determine the range
+  switch (this->XValues)
+    {
+    case VTK_XYPLOT_ARC_LENGTH:
+      xrange[0] = 0.0;
+      xrange[1] = maxLength;
+      break;
+    case VTK_XYPLOT_NORMALIZED_ARC_LENGTH:
+      xrange[0] = 0.0;
+      xrange[1] = 1.0;
+      break;
+    case VTK_XYPLOT_INDEX:
+      xrange[0] = 0.0;
+      xrange[1] = (double)(maxNum - 1);
+      break;
+    case VTK_XYPLOT_VALUE:
+      if (this->GetLogx() == 1)
+        {
+        xrange[0] = log10(xrange[0]);
+        xrange[1] = log10(xrange[1]);
+        }
+      break;
+    default:
+      vtkErrorMacro(<< "Unknown X-Value option");
+      return;
+    }
+}
+
+//----------------------------------------------------------------------------
+/* RKV void VISU_XYPlotActor::CreatePlotData(int *pos, int *pos2, double xRange[2], 
+                                    double yRange[2], double *lengths,
+                                    int numDS, int numDO) */
+// RKV : Begin
+void VISU_XYPlotActor::CreatePlotData(int *pos, int *pos2Extern, double xRange[2], 
+                                    double yRange[2], double *lengths,
+                                    int numDS, int numDO)
+// RKV : End
+{
+  double xyz[3]; xyz[2] = 0.0;
+  int i, numLinePts, dsNum, doNum, num;
+  vtkIdType numPts, ptId, id;
+  double length, x[3], xPrev[3];
+  vtkDataArray *scalars;
+  int component;
+  vtkDataSet *ds;
+  vtkCellArray *lines;
+  vtkPoints *pts;
+  int clippingRequired = 0;
+
+  // Allocate resources for the polygonal plots
+  //
+  num = (numDS > numDO ? numDS : numDO);
+  this->InitializeEntries();
+  this->NumberOfInputs = num;
+  this->PlotData = new vtkPolyData* [num];
+  this->PlotGlyph = new vtkGlyph2D* [num];
+  this->PlotAppend = new vtkAppendPolyData* [num];
+  this->PlotTransform = new vtkTransformPolyDataFilter* [num]; // RKV
+  this->PlotMapper = new vtkPolyDataMapper2D* [num];
+  this->PlotActor = new vtkActor2D* [num];
+  
+  // RKV : Begin
+  // Prepare the transformation of the curve according to the plot location
+  vtkTransform *tf = vtkTransform::New();
+  tf->Translate(pos[0], pos[1], 0);
+  if ((this->PlotLocation == VISU_XYPLOT_LEFT) || (this->PlotLocation == VISU_XYPLOT_RIGHT))
+    tf->RotateZ(90);
+  tf->Translate(-pos[0], -pos[1], 0);
+  
+  // Compute the position2 to build the curve before the transformation
+  int pos2[2];
+  vtkDebugMacro(<< "pos = (" << pos[0] << ", " << pos[1] << ")"); 
+  vtkDebugMacro(<< "pos2 = (" << pos2Extern[0] << ", " << pos2Extern[1] << ")"); 
+  if ((this->PlotLocation == VISU_XYPLOT_LEFT) || (this->PlotLocation == VISU_XYPLOT_RIGHT))
+    {
+    pos2[0] = pos[0] + pos2Extern[1] - pos[1];
+    pos2[1] = pos[1] + pos[0] - pos2Extern[0];
+    }
+  else
+    {
+    pos2[0] = pos2Extern[0];
+    pos2[1] = pos2Extern[1];
+    }
+  // RKV : End
+  
+  for (i=0; i<num; i++)
+    {
+    this->PlotData[i] = vtkPolyData::New();
+    this->PlotGlyph[i] = vtkGlyph2D::New();
+    this->PlotGlyph[i]->SetInput(this->PlotData[i]);
+    this->PlotGlyph[i]->SetScaleModeToDataScalingOff();
+    this->PlotAppend[i] = vtkAppendPolyData::New();
+    this->PlotAppend[i]->AddInput(this->PlotData[i]);
+    if ( this->LegendActor->GetEntrySymbol(i) != NULL &&
+         this->LegendActor->GetEntrySymbol(i) != this->GlyphSource->GetOutput() )
+      {
+      this->PlotGlyph[i]->SetSource(this->LegendActor->GetEntrySymbol(i));
+      this->PlotGlyph[i]->SetScaleFactor(this->ComputeGlyphScale(i,pos,pos2));
+      this->PlotAppend[i]->AddInput(this->PlotGlyph[i]->GetOutput());
+      }
+    this->PlotMapper[i] = vtkPolyDataMapper2D::New();
+    
+    // RKV : Begin
+    // Insert a transformation filter into the pipeline to 
+    // take into account a plot location.
+    this->PlotTransform[i] = vtkTransformPolyDataFilter::New();
+    this->PlotTransform[i]->SetInput(this->PlotAppend[i]->GetOutput());
+    this->PlotTransform[i]->SetTransform(tf); 
+    this->PlotMapper[i]->SetInput(this->PlotTransform[i]->GetOutput());
+    // RKV : End
+    
+// RKV    this->PlotMapper[i]->SetInput(this->PlotAppend[i]->GetOutput());
+    this->PlotMapper[i]->ScalarVisibilityOff();
+    this->PlotActor[i] = vtkActor2D::New();
+    this->PlotActor[i]->SetMapper(this->PlotMapper[i]);
+    this->PlotActor[i]->GetProperty()->DeepCopy(this->GetProperty());
+    if ( this->LegendActor->GetEntryColor(i)[0] < 0.0 )
+      {
+      this->PlotActor[i]->GetProperty()->SetColor(
+        this->GetProperty()->GetColor());
+      }
+    else
+      {
+      this->PlotActor[i]->GetProperty()->SetColor(
+        this->LegendActor->GetEntryColor(i));
+      }
+    }
+    
+  tf->Delete(); // RKV
+
+  // Prepare to receive data
+  this->GenerateClipPlanes(pos,pos2);
+  for (i=0; i<this->NumberOfInputs; i++)
+    {
+    lines = vtkCellArray::New();
+    pts = vtkPoints::New();
+
+    lines->Allocate(10,10);
+    pts->Allocate(10,10);
+    this->PlotData[i]->SetPoints(pts);
+    this->PlotData[i]->SetVerts(lines);
+    this->PlotData[i]->SetLines(lines);
+
+    pts->Delete();
+    lines->Delete();
+    }
+   
+  // Okay, for each input generate plot data. Depending on the input
+  // we use either dataset or data object.
+  //
+  if ( numDS > 0 )
+    {
+    vtkCollectionSimpleIterator dsit;
+    for ( dsNum=0, this->InputList->InitTraversal(dsit); 
+          (ds = this->InputList->GetNextDataSet(dsit)); dsNum++ )
+      {
+      clippingRequired = 0;
+      numPts = ds->GetNumberOfPoints();
+      scalars = ds->GetPointData()->GetScalars(this->SelectedInputScalars[dsNum]);
+      if ( !scalars)
+        {
+        continue;
+        }
+      component = this->SelectedInputScalarsComponent->GetValue(dsNum);
+      if ( component < 0 || component >= scalars->GetNumberOfComponents())
+        {
+        continue;
+        }
+
+      pts = this->PlotData[dsNum]->GetPoints();
+      lines = this->PlotData[dsNum]->GetLines();
+      lines->InsertNextCell(0); //update the count later
+
+      ds->GetPoint(0, xPrev);
+      for ( numLinePts=0, length=0.0, ptId=0; ptId < numPts; ptId++ )
+        {
+        xyz[1] = scalars->GetComponent(ptId, component);
+        ds->GetPoint(ptId, x);
+        switch (this->XValues)
+          {
+          case VTK_XYPLOT_NORMALIZED_ARC_LENGTH:
+            length += sqrt(vtkMath::Distance2BetweenPoints(x,xPrev));
+            xyz[0] = length / lengths[dsNum];
+            xPrev[0] = x[0]; xPrev[1] = x[1]; xPrev[2] = x[2];
+            break;
+          case VTK_XYPLOT_INDEX:
+            xyz[0] = (double)ptId;
+            break;
+          case VTK_XYPLOT_ARC_LENGTH:
+            length += sqrt(vtkMath::Distance2BetweenPoints(x,xPrev));
+            xyz[0] = length;
+            xPrev[0] = x[0]; xPrev[1] = x[1]; xPrev[2] = x[2];
+            break;
+          case VTK_XYPLOT_VALUE:
+            xyz[0] = x[this->XComponent->GetValue(dsNum)];
+            break;
+          default:
+            vtkErrorMacro(<< "Unknown X-Component option");
+          }
+        
+        if ( this->GetLogx() == 1 )
+          {
+          if (xyz[0] > 0)
+            {
+            xyz[0] = log10(xyz[0]);
+            // normalize and position
+            if ( xyz[0] < xRange[0] || xyz[0] > xRange[1] ||
+                 xyz[1] < yRange[0] || xyz[1] > yRange[1] )
+              {
+              clippingRequired = 1;
+              }
+
+            numLinePts++;
+            xyz[0] = fabs( xRange[1] - xRange[0] ) < 1.0 / VTK_LARGE_FLOAT ? pos[0] : pos[0] + 
+              (xyz[0]-xRange[0])/(xRange[1]-xRange[0])*(pos2[0]-pos[0]);
+            xyz[1] = fabs( yRange[1] - yRange[0] ) < 1.0 / VTK_LARGE_FLOAT ? pos[1] : pos[1] + 
+              (xyz[1]-yRange[0])/(yRange[1]-yRange[0])*(pos2[1]-pos[1]);
+            id = pts->InsertNextPoint(xyz);
+            lines->InsertCellPoint(id);
+            }
+          } 
+        else
+          {
+          // normalize and position
+          if ( xyz[0] < xRange[0] || xyz[0] > xRange[1] ||
+               xyz[1] < yRange[0] || xyz[1] > yRange[1] )
+            {
+            clippingRequired = 1;
+            }
+
+          numLinePts++;
+          xyz[0] = fabs( xRange[1] - xRange[0] ) < 1.0 / VTK_LARGE_FLOAT ? pos[0] : pos[0] + 
+            (xyz[0]-xRange[0])/(xRange[1]-xRange[0])*(pos2[0]-pos[0]);
+          xyz[1] = fabs( yRange[1] - yRange[0] ) < 1.0 / VTK_LARGE_FLOAT ? pos[1] : pos[1] + 
+            (xyz[1]-yRange[0])/(yRange[1]-yRange[0])*(pos2[1]-pos[1]);
+          id = pts->InsertNextPoint(xyz);
+          lines->InsertCellPoint(id);
+          }
+        }//for all input points
+
+      lines->UpdateCellCount(numLinePts);
+      if ( clippingRequired )
+        {
+        this->ClipPlotData(pos,pos2,this->PlotData[dsNum]);
+        }
+      }//loop over all input data sets
+    }//if plotting datasets
+
+  else //plot data from data objects
+    {
+    vtkDataObject *dobj;
+    int numColumns;
+    vtkIdType numRows, numTuples;
+    vtkDataArray *array;
+    vtkFieldData *field;
+    vtkCollectionSimpleIterator doit;
+    for ( doNum=0, this->DataObjectInputList->InitTraversal(doit); 
+          (dobj = this->DataObjectInputList->GetNextDataObject(doit)); 
+          doNum++ )
+      {
+      // determine the shape of the field
+      field = dobj->GetFieldData();
+      numColumns = field->GetNumberOfComponents(); //number of "columns"
+      for (numRows = VTK_LARGE_ID, i=0; i<field->GetNumberOfArrays(); i++)
+        {
+        array = field->GetArray(i);
+        numTuples = array->GetNumberOfTuples();
+        if ( numTuples < numRows )
+          {
+          numRows = numTuples;
+          }
+        }
+
+      pts = this->PlotData[doNum]->GetPoints();
+      lines = this->PlotData[doNum]->GetLines();
+      lines->InsertNextCell(0); //update the count later
+
+      numPts = (this->DataObjectPlotMode == VTK_XYPLOT_ROW ? 
+                numColumns : numRows);
+
+      // gather the information to form a plot
+      for ( numLinePts=0, length=0.0, ptId=0; ptId < numPts; ptId++ )
+        {
+        if ( this->DataObjectPlotMode == VTK_XYPLOT_ROW )
+          {
+          x[0] = field->GetComponent(this->XComponent->GetValue(doNum),ptId);
+          xyz[1] = field->GetComponent(this->YComponent->GetValue(doNum),ptId);
+          }
+        else //if ( this->DataObjectPlotMode == VTK_XYPLOT_COLUMN )
+          {
+          x[0] = field->GetComponent(ptId, this->XComponent->GetValue(doNum));
+          xyz[1] = field->GetComponent(ptId, this->YComponent->GetValue(doNum));
+          }
+
+        switch (this->XValues)
+          {
+          case VTK_XYPLOT_NORMALIZED_ARC_LENGTH:
+            length += fabs(x[0]-xPrev[0]);
+            xyz[0] = length / lengths[doNum];
+            xPrev[0] = x[0];
+            break;
+          case VTK_XYPLOT_INDEX:
+            xyz[0] = (double)ptId;
+            break;
+          case VTK_XYPLOT_ARC_LENGTH:
+            length += fabs(x[0]-xPrev[0]);
+            xyz[0] = length;
+            xPrev[0] = x[0];
+            break;
+          case VTK_XYPLOT_VALUE:
+            xyz[0] = x[0];
+            break;
+          default:
+            vtkErrorMacro(<< "Unknown X-Value option");
+          }
+
+        if ( this->GetLogx() == 1 )
+          {
+          if (xyz[0] > 0)
+            {
+            xyz[0] = log10(xyz[0]);
+            // normalize and position
+            if ( xyz[0] < xRange[0] || xyz[0] > xRange[1] ||
+                 xyz[1] < yRange[0] || xyz[1] > yRange[1] )
+              {
+              clippingRequired = 1;
+              }
+            numLinePts++;
+            xyz[0] = fabs( xRange[1] - xRange[0] ) < 1.0 / VTK_LARGE_FLOAT ? pos[0] : pos[0] + 
+              (xyz[0]-xRange[0])/(xRange[1]-xRange[0])*(pos2[0]-pos[0]);
+            xyz[1] = fabs( yRange[1] - yRange[0] ) < 1.0 / VTK_LARGE_FLOAT ? pos[1] : pos[1] + 
+              (xyz[1]-yRange[0])/(yRange[1]-yRange[0])*(pos2[1]-pos[1]);
+            id = pts->InsertNextPoint(xyz);
+            lines->InsertCellPoint(id);
+            }
+          } 
+        else
+          {
+          // normalize and position
+          if ( xyz[0] < xRange[0] || xyz[0] > xRange[1] ||
+               xyz[1] < yRange[0] || xyz[1] > yRange[1] )
+            {
+            clippingRequired = 1;
+            }    
+          numLinePts++;
+          xyz[0] = fabs( xRange[1] - xRange[0] ) < 1.0 / VTK_LARGE_FLOAT ? pos[0] : pos[0] +
+            (xyz[0]-xRange[0])/(xRange[1]-xRange[0])*(pos2[0]-pos[0]);
+          xyz[1] = fabs( yRange[1] - yRange[0] ) < 1.0 / VTK_LARGE_FLOAT ? pos[1] : pos[1] +
+            (xyz[1]-yRange[0])/(yRange[1]-yRange[0])*(pos2[1]-pos[1]);
+          id = pts->InsertNextPoint(xyz);
+          lines->InsertCellPoint(id);
+          }
+        }//for all input points
+
+      lines->UpdateCellCount(numLinePts);
+      if ( clippingRequired )
+        {
+        this->ClipPlotData(pos,pos2,this->PlotData[doNum]);
+        }
+      }//loop over all input data sets
+    }
+  
+  // Remove points/lines as directed by the user
+  for ( i = 0; i < num; i++)
+    {
+    if (!this->PlotCurveLines) 
+      {
+      if ( !this->PlotLines ) 
+        {
+        this->PlotData[i]->SetLines(NULL);
+        }
+      }
+    else
+      {
+      if ( this->GetPlotLines(i) == 0)
+        {
+        this->PlotData[i]->SetLines(NULL);
+        }
+      }
+
+    if (!this->PlotCurvePoints) 
+      {
+      if ( !this->PlotPoints || (this->LegendActor->GetEntrySymbol(i) &&
+                                 this->LegendActor->GetEntrySymbol(i) != 
+                                 this->GlyphSource->GetOutput()))
+        {
+        this->PlotData[i]->SetVerts(NULL);
+        }
+      }
+    else
+      {
+      if ( this->GetPlotPoints(i) == 0 || 
+          (this->LegendActor->GetEntrySymbol(i) &&
+           this->LegendActor->GetEntrySymbol(i) != 
+           this->GlyphSource->GetOutput()))
+        {
+        this->PlotData[i]->SetVerts(NULL);
+        }
+      }
+    }
+}
+
+//----------------------------------------------------------------------------
+// Position the axes taking into account the expected padding due to labels
+// and titles. We want the result to fit in the box specified. This method
+// knows something about how the vtkAxisActor2D functions, so it may have 
+// to change if that class changes dramatically.
+//
+void VISU_XYPlotActor::PlaceAxes(vtkViewport *viewport, int *size,
+                               int pos[2], int pos2[2])
+{
+  int titleSizeX[2], titleSizeY[2], labelSizeX[2], labelSizeY[2];
+  double labelFactorX, labelFactorY;
+  double fontFactorX, fontFactorY;
+  double tickOffsetX, tickOffsetY;
+  double tickLengthX, tickLengthY;
+
+  vtkAxisActor2D *axisX;
+  vtkAxisActor2D *axisY;
+
+  char str1[512], str2[512];
+
+  if (this->ExchangeAxes)
+    {
+    axisX = this->YAxis;
+    axisY = this->XAxis;
+    }
+  else
+    {
+    axisX = this->XAxis;
+    axisY = this->YAxis;
+    }
+
+  // RKV : Begin
+  // Take into account a location of the plot.
+  if ((this->PlotLocation == VISU_XYPLOT_LEFT) || (this->PlotLocation == VISU_XYPLOT_RIGHT))
+    {
+    vtkAxisActor2D *axisBid;
+    axisBid = axisX;
+    axisX = axisY;
+    axisY = axisBid;
+    }
+    
+  // RKV : End
+  
+  fontFactorY = axisY->GetFontFactor();
+  fontFactorX = axisX->GetFontFactor();
+
+  labelFactorY = axisY->GetLabelFactor();
+  labelFactorX = axisX->GetLabelFactor();
+
+  // Create a dummy text mapper for getting font sizes
+  vtkTextMapper *textMapper = vtkTextMapper::New();
+  vtkTextProperty *tprop = textMapper->GetTextProperty();
+
+  // Get the location of the corners of the box
+  int *p1 = this->PositionCoordinate->GetComputedViewportValue(viewport);
+  int *p2 = this->Position2Coordinate->GetComputedViewportValue(viewport);
+
+  // Estimate the padding around the X and Y axes
+  tprop->ShallowCopy(axisX->GetTitleTextProperty());
+  textMapper->SetInput(axisX->GetTitle());
+  vtkAxisActor2D::SetFontSize(
+    viewport, textMapper, size, fontFactorX, titleSizeX);
+
+  tprop->ShallowCopy(axisY->GetTitleTextProperty());
+  textMapper->SetInput(axisY->GetTitle());
+  vtkAxisActor2D::SetFontSize(
+    viewport, textMapper, size, fontFactorY, titleSizeY);
+
+  // At this point the thing to do would be to actually ask the Y axis
+  // actor to return the largest label.
+  // In the meantime, let's try with the min and max
+  sprintf(str1, axisY->GetLabelFormat(), axisY->GetAdjustedRange()[0]);
+  sprintf(str2, axisY->GetLabelFormat(), axisY->GetAdjustedRange()[1]);
+  tprop->ShallowCopy(axisY->GetLabelTextProperty());
+  textMapper->SetInput(strlen(str1) > strlen(str2) ? str1 : str2);
+  vtkAxisActor2D::SetFontSize(
+    viewport, textMapper, size, labelFactorY * fontFactorY, labelSizeY);
+
+  // We do only care of the height of the label in the X axis, so let's
+  // use the min for example
+  sprintf(str1, axisX->GetLabelFormat(), axisX->GetAdjustedRange()[0]);
+  tprop->ShallowCopy(axisX->GetLabelTextProperty());
+  textMapper->SetInput(str1);
+  vtkAxisActor2D::SetFontSize(
+    viewport, textMapper, size, labelFactorX * fontFactorX, labelSizeX);
+
+  tickOffsetX = axisX->GetTickOffset();
+  tickOffsetY = axisY->GetTickOffset();
+  tickLengthX = axisX->GetTickLength();
+  tickLengthY = axisY->GetTickLength();
+
+  // Okay, estimate the size
+/* RKV  pos[0] = (int)(p1[0] + titleSizeY[0] + 2.0 * tickOffsetY + tickLengthY + 
+                 labelSizeY[0] + this->Border);
+
+  pos[1] = (int)(p1[1] + titleSizeX[1] + 2.0 * tickOffsetX + tickLengthX + 
+                 labelSizeX[1] + this->Border);
+
+  pos2[0] = (int)(p2[0] - labelSizeY[0] / 2 - tickOffsetY - this->Border);
+
+  pos2[1] = (int)(p2[1] - labelSizeX[1] / 2 - tickOffsetX - this->Border);
+  */
+  // RKV : Begin
+  pos[0] = (int)(p1[0]);
+
+  pos[1] = (int)(p1[1]);
+
+  pos2[0] = (int)(p2[0]);
+
+  pos2[1] = (int)(p2[1]);
+  // RKV : End
+
+  // Now specify the location of the axes
+  axisX->GetPositionCoordinate()->SetValue(
+    (double)pos[0], (double)pos[1]);
+  axisX->GetPosition2Coordinate()->SetValue(
+    (double)pos2[0], (double)pos[1]);
+  axisY->GetPositionCoordinate()->SetValue(
+    (double)pos[0], (double)pos2[1]);
+  axisY->GetPosition2Coordinate()->SetValue(
+    (double)pos[0], (double)pos[1]);
+    
+  textMapper->Delete();
+}
+
+//----------------------------------------------------------------------------
+void VISU_XYPlotActor::ViewportToPlotCoordinate(vtkViewport *viewport, double &u, double &v)
+{
+  int *p0, *p1, *p2;
+
+  // XAxis, YAxis are in viewport coordinates already
+  p0 = this->XAxis->GetPositionCoordinate()->GetComputedViewportValue(viewport);
+  p1 = this->XAxis->GetPosition2Coordinate()->GetComputedViewportValue(viewport);
+  p2 = this->YAxis->GetPositionCoordinate()->GetComputedViewportValue(viewport);
+
+  u = ((u - p0[0]) / (double)(p1[0] - p0[0]))
+    *(this->XComputedRange[1] - this->XComputedRange[0])
+    + this->XComputedRange[0];
+  v = ((v - p0[1]) / (double)(p2[1] - p0[1]))
+    *(this->YComputedRange[1] - this->YComputedRange[0])
+    + this->YComputedRange[0];
+}
+
+//----------------------------------------------------------------------------
+void VISU_XYPlotActor::PlotToViewportCoordinate(vtkViewport *viewport,
+                                              double &u, double &v)
+{
+  int *p0, *p1, *p2;
+
+  // XAxis, YAxis are in viewport coordinates already
+  p0 = this->XAxis->GetPositionCoordinate()->GetComputedViewportValue(viewport);
+  p1 = this->XAxis->GetPosition2Coordinate()->GetComputedViewportValue(viewport);
+  p2 = this->YAxis->GetPositionCoordinate()->GetComputedViewportValue(viewport);
+
+  u = (((u - this->XComputedRange[0])
+        / (this->XComputedRange[1] - this->XComputedRange[0]))
+       * (double)(p1[0] - p0[0])) + p0[0];
+  v = (((v - this->YComputedRange[0])
+        / (this->YComputedRange[1] - this->YComputedRange[0]))
+       * (double)(p2[1] - p0[1])) + p0[1];
+}
+
+//----------------------------------------------------------------------------
+void VISU_XYPlotActor::ViewportToPlotCoordinate(vtkViewport *viewport)
+{
+  this->ViewportToPlotCoordinate(viewport, 
+                                 this->ViewportCoordinate[0],
+                                 this->ViewportCoordinate[1]);
+}
+
+//----------------------------------------------------------------------------
+void VISU_XYPlotActor::PlotToViewportCoordinate(vtkViewport *viewport)
+{
+  this->PlotToViewportCoordinate(viewport, 
+                                 this->PlotCoordinate[0],
+                                 this->PlotCoordinate[1]);
+}
+
+//----------------------------------------------------------------------------
+int VISU_XYPlotActor::IsInPlot(vtkViewport *viewport, double u, double v)
+{
+  int *p0, *p1, *p2;
+
+  // Bounds of the plot are based on the axes...
+  p0 = this->XAxis->GetPositionCoordinate()->GetComputedViewportValue(viewport);
+  p1 = this->XAxis->GetPosition2Coordinate()->GetComputedViewportValue(viewport);
+  p2 = this->YAxis->GetPositionCoordinate()->GetComputedViewportValue(viewport);
+  
+  if (u >= p0[0] && u <= p1[0] && v >= p0[1] && v <= p2[1])
+    {
+    return 1;
+    }
+
+  return 0;
+}
+
+//----------------------------------------------------------------------------
+void VISU_XYPlotActor::SetPlotLines(int i, int isOn)
+{
+  i = ( i < 0 ? 0 : (i >=VTK_MAX_PLOTS ? VTK_MAX_PLOTS-1 : i));
+  int val = this->LinesOn->GetValue(i);
+  if ( val != isOn )
+    {
+    this->Modified();
+    this->LinesOn->SetValue(i, isOn);
+    }
+}
+
+//----------------------------------------------------------------------------
+int VISU_XYPlotActor::GetPlotLines(int i)
+{
+  i = ( i < 0 ? 0 : (i >=VTK_MAX_PLOTS ? VTK_MAX_PLOTS-1 : i));
+  return this->LinesOn->GetValue(i);
+}
+
+//----------------------------------------------------------------------------
+void VISU_XYPlotActor::SetPlotPoints(int i, int isOn)
+{
+  i = ( i < 0 ? 0 : (i >=VTK_MAX_PLOTS ? VTK_MAX_PLOTS-1 : i));
+  int val = this->PointsOn->GetValue(i);
+  if ( val != isOn )
+    {
+    this->Modified();
+    this->PointsOn->SetValue(i, isOn);
+    }
+}
+
+//----------------------------------------------------------------------------
+int VISU_XYPlotActor::GetPlotPoints(int i)
+{
+  i = ( i < 0 ? 0 : (i >=VTK_MAX_PLOTS ? VTK_MAX_PLOTS-1 : i));
+  return this->PointsOn->GetValue(i);
+}
+
+//----------------------------------------------------------------------------
+void VISU_XYPlotActor::SetPlotColor(int i, double r, double g, double b)
+{
+  this->LegendActor->SetEntryColor(i, r, g, b);
+}
+
+//----------------------------------------------------------------------------
+double *VISU_XYPlotActor::GetPlotColor(int i)
+{
+  return this->LegendActor->GetEntryColor(i);
+}
+
+//----------------------------------------------------------------------------
+void VISU_XYPlotActor::SetPlotSymbol(int i,vtkPolyData *input)
+{
+  this->LegendActor->SetEntrySymbol(i, input);
+}
+
+//----------------------------------------------------------------------------
+vtkPolyData *VISU_XYPlotActor::GetPlotSymbol(int i)
+{
+  return this->LegendActor->GetEntrySymbol(i);
+}
+
+//----------------------------------------------------------------------------
+void VISU_XYPlotActor::SetPlotLabel(int i, const char *label)
+{
+  this->LegendActor->SetEntryString(i, label);
+}
+
+//----------------------------------------------------------------------------
+const char *VISU_XYPlotActor::GetPlotLabel(int i)
+{
+  return this->LegendActor->GetEntryString(i);
+}
+
+//----------------------------------------------------------------------------
+void VISU_XYPlotActor::GenerateClipPlanes(int *pos, int *pos2)
+{
+  double n[3], x[3];
+  vtkPoints *pts=this->ClipPlanes->GetPoints();
+  vtkDataArray *normals=this->ClipPlanes->GetNormals();
+  
+  n[2] = x[2] = 0.0;
+  
+  //first
+  n[0] = 0.0;
+  n[1] = -1.0;
+  normals->SetTuple(0,n);
+  x[0] = (double)0.5*(pos[0]+pos2[0]);
+  x[1] = (double)pos[1];
+  pts->SetPoint(0,x);
+  
+  //second
+  n[0] = 1.0;
+  n[1] = 0.0;
+  normals->SetTuple(1,n);
+  x[0] = (double)pos2[0];
+  x[1] = (double)0.5*(pos[1]+pos2[1]);
+  pts->SetPoint(1,x);
+  
+  //third
+  n[0] = 0.0;
+  n[1] = 1.0;
+  normals->SetTuple(2,n);
+  x[0] = (double)0.5*(pos[0]+pos2[0]);
+  x[1] = (double)pos2[1];
+  pts->SetPoint(2,x);
+  
+  //fourth
+  n[0] = -1.0;
+  n[1] = 0.0;
+  normals->SetTuple(3,n);
+  x[0] = (double)pos[0];
+  x[1] = (double)0.5*(pos[1]+pos2[1]);
+  pts->SetPoint(3,x);
+}
+
+//----------------------------------------------------------------------------
+double VISU_XYPlotActor::ComputeGlyphScale(int i, int *pos, int *pos2)
+{
+  vtkPolyData *pd=this->LegendActor->GetEntrySymbol(i);
+  pd->Update();
+  double length=pd->GetLength();
+  double sf = this->GlyphSize * sqrt((double)(pos[0]-pos2[0])*(pos[0]-pos2[0]) + 
+                                    (pos[1]-pos2[1])*(pos[1]-pos2[1])) / length;
+
+  return sf;
+}
+
+//----------------------------------------------------------------------------
+//This assumes that there are multiple polylines
+void VISU_XYPlotActor::ClipPlotData(int *pos, int *pos2, vtkPolyData *pd)
+{
+  vtkPoints *points=pd->GetPoints();
+  vtkPoints *newPoints;
+  vtkCellArray *lines=pd->GetLines();
+  vtkCellArray *newLines, *newVerts;
+  vtkIdType numPts=pd->GetNumberOfPoints();
+  vtkIdType npts = 0;
+  vtkIdType newPts[2];
+  vtkIdType *pts=0;
+  vtkIdType i, id;
+  int j;
+  double x1[3], x2[3], px[3], n[3], xint[3], t;
+  double p1[2], p2[2];
+
+  p1[0] = (double)pos[0]; p1[1] = (double)pos[1];
+  p2[0] = (double)pos2[0]; p2[1] = (double)pos2[1];
+  
+  newPoints = vtkPoints::New();
+  newPoints->Allocate(numPts);
+  newVerts = vtkCellArray::New();
+  newVerts->Allocate(lines->GetSize());
+  newLines = vtkCellArray::New();
+  newLines->Allocate(2*lines->GetSize());
+  int *pointMap = new int [numPts];
+  for (i=0; i<numPts; i++)
+    {
+    pointMap[i] = -1;
+    }
+  
+  //Loop over polyverts eliminating those that are outside
+  for ( lines->InitTraversal(); lines->GetNextCell(npts,pts); )
+    {
+    //loop over verts keeping only those that are not clipped
+    for (i=0; i<npts; i++)
+      {
+      points->GetPoint(pts[i], x1);
+
+      if (x1[0] >= p1[0] && x1[0] <= p2[0] && x1[1] >= p1[1] && x1[1] <= p2[1] )
+        {
+        id = newPoints->InsertNextPoint(x1);
+        pointMap[i] = id;
+        newPts[0] = id;
+        newVerts->InsertNextCell(1,newPts);
+        }
+      }
+    }
+
+  //Loop over polylines clipping each line segment
+  for ( lines->InitTraversal(); lines->GetNextCell(npts,pts); )
+    {
+    //loop over line segment making up the polyline
+    for (i=0; i<(npts-1); i++)
+      {
+      points->GetPoint(pts[i], x1);
+      points->GetPoint(pts[i+1], x2);
+
+      //intersect each segment with the four planes
+      if ( (x1[0] < p1[0] && x2[0] < p1[0]) || (x1[0] > p2[0] && x2[0] > p2[0]) ||
+           (x1[1] < p1[1] && x2[1] < p1[1]) || (x1[1] > p2[1] && x2[1] > p2[1]) )
+        {
+        ;//trivial rejection
+        }
+      else if (x1[0] >= p1[0] && x2[0] >= p1[0] && x1[0] <= p2[0] && x2[0] <= p2[0] &&
+               x1[1] >= p1[1] && x2[1] >= p1[1] && x1[1] <= p2[1] && x2[1] <= p2[1] )
+        {//trivial acceptance
+        newPts[0] = pointMap[pts[i]];
+        newPts[1] = pointMap[pts[i+1]];
+        newLines->InsertNextCell(2,newPts);
+        }
+      else
+        {
+        if (x1[0] >= p1[0] && x1[0] <= p2[0] && x1[1] >= p1[1] && x1[1] <= p2[1] )
+          {//first point in
+          newPts[0] = pointMap[pts[i]];
+          }
+        else
+          {//second point in
+          newPts[0] = pointMap[pts[i+1]];
+          }
+        for (j=0; j<4; j++)
+          {
+          this->ClipPlanes->GetPoints()->GetPoint(j, px);
+          this->ClipPlanes->GetNormals()->GetTuple(j, n);
+          if ( vtkPlane::IntersectWithLine(x1,x2,n,px,t,xint) && t >= 0 && t <= 1.0 )
+            {
+            newPts[1] = newPoints->InsertNextPoint(xint);
+            break;
+            }
+          }
+        newLines->InsertNextCell(2,newPts);
+        }
+      }
+    }
+  delete [] pointMap;
+  
+  //Update the lines
+  pd->SetPoints(newPoints);
+  pd->SetVerts(newVerts);
+  pd->SetLines(newLines);
+  
+  newPoints->Delete();
+  newVerts->Delete();
+  newLines->Delete();
+  
+}
+
+//----------------------------------------------------------------------------
+void VISU_XYPlotActor::SetDataObjectXComponent(int i, int comp)
+{
+  i = ( i < 0 ? 0 : (i >=VTK_MAX_PLOTS ? VTK_MAX_PLOTS-1 : i));
+  int val=this->XComponent->GetValue(i);
+  if ( val != comp )
+    {
+    this->Modified();
+    this->XComponent->SetValue(i,comp);
+    }
+}
+
+//----------------------------------------------------------------------------
+int VISU_XYPlotActor::GetDataObjectXComponent(int i)
+{
+  i = ( i < 0 ? 0 : (i >=VTK_MAX_PLOTS ? VTK_MAX_PLOTS-1 : i));
+  return this->XComponent->GetValue(i);
+}
+
+//----------------------------------------------------------------------------
+void VISU_XYPlotActor::SetDataObjectYComponent(int i, int comp)
+{
+  i = ( i < 0 ? 0 : (i >=VTK_MAX_PLOTS ? VTK_MAX_PLOTS-1 : i));
+  int val=this->YComponent->GetValue(i);
+  if ( val != comp )
+    {
+    this->Modified();
+    this->YComponent->SetValue(i,comp);
+    }
+}
+
+//----------------------------------------------------------------------------
+int VISU_XYPlotActor::GetDataObjectYComponent(int i)
+{
+  i = ( i < 0 ? 0 : (i >=VTK_MAX_PLOTS ? VTK_MAX_PLOTS-1 : i));
+  return this->YComponent->GetValue(i);
+}
+
+//----------------------------------------------------------------------------
+void VISU_XYPlotActor::SetPointComponent(int i, int comp)
+{
+  i = ( i < 0 ? 0 : (i >=VTK_MAX_PLOTS ? VTK_MAX_PLOTS-1 : i));
+  int val = this->XComponent->GetValue(i);
+  if ( val != comp )
+    {
+    this->Modified();
+    this->XComponent->SetValue(i,comp);
+    }
+}
+
+//----------------------------------------------------------------------------
+int VISU_XYPlotActor::GetPointComponent(int i)
+{
+  i = ( i < 0 ? 0 : (i >=VTK_MAX_PLOTS ? VTK_MAX_PLOTS-1 : i));
+  return this->XComponent->GetValue(i);
+}
+
+//----------------------------------------------------------------------------
+double *VISU_XYPlotActor::TransformPoint(int pos[2], int pos2[2],
+                                       double x[3], double xNew[3])
+{
+  // First worry about exchanging axes
+  if ( this->ExchangeAxes )
+    {
+    double sx = (x[0]-pos[0]) / (pos2[0]-pos[0]);
+    double sy = (x[1]-pos[1]) / (pos2[1]-pos[1]);
+    xNew[0] = sy*(pos2[0]-pos[0]) + pos[0];
+    xNew[1] = sx*(pos2[1]-pos[1]) + pos[1];
+    xNew[2] = x[2];
+    }
+  else
+    {
+    xNew[0] = x[0];
+    xNew[1] = x[1];
+    xNew[2] = x[2];
+    }
+
+  // Okay, now swap the axes around if reverse is on
+  if ( this->ReverseXAxis )
+    {
+    xNew[0] = pos[0] + (pos2[0]-xNew[0]);
+    }
+  if ( this->ReverseYAxis )
+    {
+    xNew[1] = pos[1] + (pos2[1]-xNew[1]);
+    }
+
+  return xNew;
+}
+    
+//----------------------------------------------------------------------------
+void VISU_XYPlotActor::SetLabelFormat(const char* _arg)
+{
+  if (this->LabelFormat == NULL && _arg == NULL) 
+    { 
+    return;
+    }
+
+  if (this->LabelFormat && _arg && (!strcmp(this->LabelFormat,_arg))) 
+    { 
+    return;
+    }
+
+  if (this->LabelFormat) 
+    { 
+    delete [] this->LabelFormat; 
+    }
+
+  if (_arg)
+    {
+    this->LabelFormat = new char[strlen(_arg)+1];
+    strcpy(this->LabelFormat,_arg);
+    }
+  else
+    {
+    this->LabelFormat = NULL;
+    }
+
+  this->XAxis->SetLabelFormat(this->LabelFormat);
+  this->YAxis->SetLabelFormat(this->LabelFormat);
+
+  this->Modified();
+}
+
+//----------------------------------------------------------------------------
+void VISU_XYPlotActor::PrintAsCSV(ostream &os)
+{
+  vtkDataArray *scalars;
+  vtkDataSet *ds;
+  vtkCollectionSimpleIterator dsit;
+  double s;
+  int dsNum,component;
+  for ( dsNum=0, this->InputList->InitTraversal(dsit); 
+    (ds = this->InputList->GetNextDataSet(dsit)); dsNum++ )
+    {
+    vtkIdType numPts = ds->GetNumberOfPoints();
+    scalars = ds->GetPointData()->GetScalars(this->SelectedInputScalars[dsNum]);
+    component = this->SelectedInputScalarsComponent->GetValue(dsNum);
+    for ( vtkIdType ptId=0; ptId < numPts; ptId++ )
+      {
+      s = scalars->GetComponent(ptId, component);
+      if( ptId == 0 )
+        {
+        os << s;
+        }
+      else
+        {
+        os << "," << s;
+        }
+      }
+    os << endl;
+    }
+}
+
diff --git a/src/PIPELINE/VISU_XYPlotActor.hxx b/src/PIPELINE/VISU_XYPlotActor.hxx
new file mode 100644 (file)
index 0000000..1647a84
--- /dev/null
@@ -0,0 +1,581 @@
+#ifndef VISU_XYPLOTACTOR_HXX_
+#define VISU_XYPLOTACTOR_HXX_
+
+#include "VISUPipeline.hxx"
+
+/*=========================================================================
+
+  Program:   Visualization Toolkit
+  Module:    $RCSfile$
+
+  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
+  All rights reserved.
+  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
+
+     This software is distributed WITHOUT ANY WARRANTY; without even
+     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+     PURPOSE.  See the above copyright notice for more information.
+
+=========================================================================*/
+// .NAME vtkXYPlotActor - generate an x-y plot from input dataset(s) or field data
+// .SECTION Description
+// vtkXYPlotActor creates an x-y plot of data from one or more input data
+// sets or field data. The class plots dataset scalar values (y-axis) against
+// the points (x-axis). The x-axis values are generated by taking the point
+// ids, computing a cumulative arc length, or a normalized arc length. More
+// than one input data set can be specified to generate multiple plots.
+// Alternatively, if field data is supplied as input, the class plots one
+// component against another. (The user must specify which component to use
+// as the x-axis and which for the y-axis.)
+//
+// To use this class to plot dataset(s), you must specify one or more
+// input datasets containing scalar and point data.  You'll probably also
+// want to invoke a method to control how the point coordinates are converted
+// into x values (by default point ids are used).
+//
+// To use this class to plot field data, you must specify one or more input
+// data objects with its associated field data. You'll also want to specify
+// which component to use as the x-axis and which to use as the y-axis.
+// Note that when plotting field data, the x and y values are used directly
+// (i.e., there are no options to normalize the components).
+//
+// Once you've set up the plot, you'll want to position it.  The
+// PositionCoordinate defines the lower-left location of the x-y plot
+// (specified in normalized viewport coordinates) and the Position2Coordinate
+// define the upper-right corner. (Note: the Position2Coordinate is relative
+// to PositionCoordinate, so you can move the vtkXYPlotActor around the
+// viewport by setting just the PositionCoordinate.) The combination of the
+// two position coordinates specifies a rectangle in which the plot will lie.
+//
+// Optional features include the ability to specify axes labels, label
+// format and plot title. You can also
+// manually specify the x and y plot ranges (by default they are computed
+// automatically). The Border instance variable is used to create space 
+// between the boundary of the plot window (specified by PositionCoordinate
+// and Position2Coordinate) and the plot itself.
+//
+// The font property of the plot title can be modified through the 
+// TitleTextProperty attribute.
+// The font property of the axes titles and labels can be modified through the
+// AxisTitleTextProperty and AxisLabelTextProperty attributes. You may also
+// use the GetXAxisActor2D or GetYAxisActor2D methods 
+// to access each individual axis actor to modify their font properties.
+// In the same way, the GetLegendBoxActor method can be used to access
+// the legend box actor to modify its font properties.
+//
+// There are several advanced features as well. You can assign per curve 
+// properties (such as color and a plot symbol). (Note that each input 
+// dataset and/or data object creates a single curve.) Another option is to
+// add a plot legend that graphically indicates the correspondance between
+// the curve, curve symbols, and the data source. You can also exchange the
+// x and y axes if you prefer you plot orientation that way.
+
+// .SECTION Caveats
+// If you are interested in plotting something other than scalar data, you
+// can use the vtk data shuffling filters (e.g., 
+// vtkAttributeDataToFieldDataFilter and vtkFieldDataToAttributeDataFilter) 
+// to convert the data into scalar data and/or points.
+
+// .SECTION See Also
+// vtkActor2D vtkTextMapper vtkScalarBarActor vtkAxisActor2D vtkCubeAxesActor2D
+// vtkAttributeDataToFieldDataFilter vtkFieldDataToAttributeDataFilter 
+// vtkTextProperty
+
+#include "vtkActor2D.h"
+#include "vtkTransformPolyDataFilter.h" // RKV
+
+#define VTK_XYPLOT_INDEX                 0
+#define VTK_XYPLOT_ARC_LENGTH            1
+#define VTK_XYPLOT_NORMALIZED_ARC_LENGTH 2
+#define VTK_XYPLOT_VALUE                 3
+
+#define VTK_XYPLOT_ROW 0
+#define VTK_XYPLOT_COLUMN 1
+
+class vtkAppendPolyData;
+class vtkAxisActor2D;
+class vtkDataObject;
+class vtkDataObjectCollection;
+class vtkDataSet;
+class vtkDataSetCollection;
+class vtkGlyph2D;
+class vtkGlyphSource2D;
+class vtkIntArray;
+class vtkLegendBoxActor;
+class vtkPlanes;
+class vtkPolyData;
+class vtkPolyDataMapper2D;
+class vtkTextMapper;
+class vtkTextProperty;
+
+// RKV : Begin
+/** Location of the actor in the viewport. 
+ * Axes and a curve is plotted according to the selected side.
+ * Axes origin is plotted at:
+ *  VISU_XYPLOT_BOTTOM - the left bottom corner,
+ *  VISU_XYPLOT_TOP    - the left upper corner (Y axis is directed to the bottom),
+ *  VISU_XYPLOT_LEFT   - the left bottom corner (axes are exchanged),
+ *  VISU_XYPLOT_RIGHT  - the right bottom corner (X axis is directed to the top, Y - to the left)
+ */
+enum VISU_XYPlotLocation { VISU_XYPLOT_BOTTOM = 0,
+       VISU_XYPLOT_TOP, VISU_XYPLOT_LEFT, VISU_XYPLOT_RIGHT };
+// RKV : End
+
+class VISU_PIPELINE_EXPORT VISU_XYPlotActor : public vtkActor2D
+{
+public:
+  vtkTypeRevisionMacro(VISU_XYPlotActor,vtkActor2D);
+  void PrintSelf(ostream& os, vtkIndent indent);
+
+  // Description:
+  // Instantiate object with autorange computation; bold, italic, and shadows
+  // on; arial font family; the number of labels set to 5 for the x and y
+  // axes; a label format of "%-#6.3g"; and x coordinates computed from point
+  // ids.
+  static VISU_XYPlotActor *New();
+
+  //---Data Set Input----------------------------------------------------------
+  // The following methods are used to plot input datasets. Datasets
+  // will be plotted if set as input; otherwise the input data objects
+  // will be plotted (if defined).
+  
+  // Description:
+  // Add a dataset to the list of data to append. The array name specifies
+  // which point array to plot.  If the array name is NULL, then the default
+  // scalars are used.  The array can have multiple components, but only the
+  // first component is ploted.
+  void AddInput(vtkDataSet *in, const char* arrayName, int component);
+  void AddInput(vtkDataSet *in) {this->AddInput(in, NULL, 0);}
+
+  // Description:
+  // Remove a dataset from the list of data to append.
+  void RemoveInput(vtkDataSet *in, const char* arrayName, int component);
+  void RemoveInput(vtkDataSet *in) {this->RemoveInput(in, NULL, 0);}
+
+  // Description:
+  // This removes all of the data set inputs, 
+  // but does not change the data object inputs.
+  void RemoveAllInputs();
+
+  // Description:
+  // Return the list of inputs to this filter.
+  vtkDataSetCollection *GetInputList() {return this->InputList;}
+
+  // Description:
+  // If plotting points by value, which component to use to determine the
+  // value. This sets a value per each input dataset (i.e., the ith dataset).
+  void SetPointComponent(int i, int comp);
+  int GetPointComponent(int i);
+  //---end Data Set Input-----------------------------------------------------
+
+  // Description:
+  // Specify how the independent (x) variable is computed from the points.
+  // The independent variable can be the scalar/point index (i.e., point id),
+  // the accumulated arc length along the points, the normalized arc length,
+  // or by component value. If plotting datasets (e.g., points), the value
+  // that is used is specified by the PointComponent ivar.  (Note: these
+  // methods also control how field data is plotted. Field data is usually
+  // plotted by value or index, if plotting length 1-dimensional length
+  // measures are used.)
+  vtkSetClampMacro(XValues,int,VTK_XYPLOT_INDEX,VTK_XYPLOT_VALUE);
+  vtkGetMacro(XValues,int);
+  void SetXValuesToIndex(){this->SetXValues(VTK_XYPLOT_INDEX);};
+  void SetXValuesToArcLength() {this->SetXValues(VTK_XYPLOT_ARC_LENGTH);};
+  void SetXValuesToNormalizedArcLength()
+    {this->SetXValues(VTK_XYPLOT_NORMALIZED_ARC_LENGTH);};
+  void SetXValuesToValue() {this->SetXValues(VTK_XYPLOT_VALUE);};
+  const char *GetXValuesAsString();
+
+  //---Data Object Input------------------------------------------------------
+  // The following methods are used to plot input data objects. Datasets will
+  // be plotted in preference to data objects if set as input; otherwise the
+  // input data objects will be plotted (if defined).
+  
+  // Description:
+  // Add a dataset to the list of data to append.
+  void AddDataObjectInput(vtkDataObject *in);
+
+  // Description:
+  // Remove a dataset from the list of data to append.
+  void RemoveDataObjectInput(vtkDataObject *in);
+
+  // Description:
+  // Return the list of inputs to this filter.
+  vtkDataObjectCollection *GetDataObjectInputList() 
+    {return this->DataObjectInputList;}
+
+  // Description:
+  // Indicate whether to plot rows or columns. If plotting rows, then
+  // the dependent variables is taken from a specified row,
+  // versus rows (y). 
+  vtkSetClampMacro(DataObjectPlotMode,int,VTK_XYPLOT_ROW,VTK_XYPLOT_COLUMN);
+  vtkGetMacro(DataObjectPlotMode,int);
+  void SetDataObjectPlotModeToRows()
+    {this->SetDataObjectPlotMode(VTK_XYPLOT_ROW);}
+  void SetDataObjectPlotModeToColumns()
+    {this->SetDataObjectPlotMode(VTK_XYPLOT_COLUMN);}
+  const char *GetDataObjectPlotModeAsString();
+
+  // Description:
+  // Specify which component of the input data object to use as the
+  // independent variable for the ith input data object. (This ivar is
+  // ignored if plotting the index.) Note that the value is interpreted
+  // differently depending on DataObjectPlotMode. If the mode is Rows, then
+  // the value of DataObjectXComponent is the row number; otherwise it's the
+  // column number.
+  void SetDataObjectXComponent(int i, int comp);
+  int GetDataObjectXComponent(int i);
+
+  // Description:
+  // Specify which component of the input data object to use as the
+  // dependent variable for the ith input data object. (This ivar is
+  // ignored if plotting the index.) Note that the value is interpreted
+  // differently depending on DataObjectPlotMode. If the mode is Rows, then
+  // the value of DataObjectYComponent is the row number; otherwise it's the
+  // column number.
+  void SetDataObjectYComponent(int i, int comp);
+  int GetDataObjectYComponent(int i);
+  //---end Data Object Input--------------------------------------------------
+
+  //---Per Curve Properties---------------------------------------------------
+  // The following methods are used to set properties on each curve that is
+  // plotted. Each input dataset (or data object) results in one curve. The
+  // methods that follow have an index i that corresponds to the input dataset
+  // or data object. 
+  void SetPlotColor(int i, double r, double g, double b);
+  void SetPlotColor(int i, const double color[3]) {
+    this->SetPlotColor(i, color[0], color[1], color[2]); };
+  double *GetPlotColor(int i);
+  void SetPlotSymbol(int i,vtkPolyData *input);
+  vtkPolyData *GetPlotSymbol(int i);
+  void SetPlotLabel(int i, const char *label);
+  const char *GetPlotLabel(int i);
+
+  // Allow per-curve specification of line and point rendering.  These override
+  // global settings PlotPoints and PlotLines.  If not on, the default behavior
+  // is governed by PlotPoints and PlotLines ivars.
+  vtkGetMacro(PlotCurvePoints, int);
+  vtkSetMacro(PlotCurvePoints, int);
+  vtkBooleanMacro(PlotCurvePoints, int);
+
+  vtkGetMacro(PlotCurveLines, int);
+  vtkSetMacro(PlotCurveLines, int);
+  vtkBooleanMacro(PlotCurveLines, int);
+
+  void SetPlotLines(int i, int);
+  int GetPlotLines(int i);
+
+  void SetPlotPoints(int i, int);
+  int GetPlotPoints(int i);
+  //---end Per Curve Properties-----------------------------------------------
+
+  // Description:
+  // Enable/Disable exchange of the x-y axes (i.e., what was x becomes y, and
+  // vice-versa). Exchanging axes affects the labeling as well.
+  vtkSetMacro(ExchangeAxes, int);
+  vtkGetMacro(ExchangeAxes, int);
+  vtkBooleanMacro(ExchangeAxes, int);
+
+  // Description:
+  // Normally the x-axis is plotted from minimum to maximum. Setting this instance
+  // variable causes the x-axis to be plotted from maximum to minimum. Note that
+  // boolean always applies to the x-axis even if ExchangeAxes is set.
+  vtkSetMacro(ReverseXAxis, int);
+  vtkGetMacro(ReverseXAxis, int);
+  vtkBooleanMacro(ReverseXAxis, int);
+
+  // Description:
+  // Normally the y-axis is plotted from minimum to maximum. Setting this instance
+  // variable causes the y-axis to be plotted from maximum to minimum. Note that
+  // boolean always applies to the y-axis even if ExchangeAxes is set.
+  vtkSetMacro(ReverseYAxis, int);
+  vtkGetMacro(ReverseYAxis, int);
+  vtkBooleanMacro(ReverseYAxis, int);
+
+  // Description:
+  // Retrieve handles to the legend box and glyph source. This is useful
+  // if you would like to change the default behavior of the legend box
+  // or glyph source. For example, the default glyph can be changed from
+  // a line to a vertex plus line, etc.)
+  vtkGetObjectMacro(LegendActor,vtkLegendBoxActor);
+  vtkGetObjectMacro(GlyphSource,vtkGlyphSource2D);
+
+  // Description:
+  // Set/Get the title of the x-y plot, and the title along the 
+  // x and y axes.
+  vtkSetStringMacro(Title);
+  vtkGetStringMacro(Title);
+  vtkSetStringMacro(XTitle);
+  vtkGetStringMacro(XTitle);
+  vtkSetStringMacro(YTitle);
+  vtkGetStringMacro(YTitle);
+
+  // Description:
+  // Retrieve handles to the X and Y axis (so that you can set their text
+  // properties for example)
+  vtkAxisActor2D *GetXAxisActor2D()
+    {return this->XAxis;}
+  vtkAxisActor2D *GetYAxisActor2D()
+    {return this->YAxis;}
+
+  // Description:
+  // Set the plot range (range of independent and dependent variables)
+  // to plot. Data outside of the range will be clipped. If the plot
+  // range of either the x or y variables is set to (v1,v2), where
+  // v1 == v2, then the range will be computed automatically. Note that
+  // the x-range values should be consistent with the way the independent
+  // variable is created (via INDEX, DISTANCE, or ARC_LENGTH).
+  vtkSetVector2Macro(XRange,double);
+  vtkGetVectorMacro(XRange,double,2);
+  vtkSetVector2Macro(YRange,double);
+  vtkGetVectorMacro(YRange,double,2);
+  void SetPlotRange(double xmin, double ymin, double xmax, double ymax)
+    {this->SetXRange(xmin,xmax); this->SetYRange(ymin,ymax);}
+  
+  // Description:
+  // Set/Get the number of annotation labels to show along the x and y axes.
+  // This values is a suggestion: the number of labels may vary depending
+  // on the particulars of the data. The convenience method 
+  // SetNumberOfLables() sets the number of x and y labels to the same value.
+  vtkSetClampMacro(NumberOfXLabels, int, 0, 50);
+  vtkGetMacro(NumberOfXLabels, int);
+  vtkSetClampMacro(NumberOfYLabels, int, 0, 50);
+  vtkGetMacro(NumberOfYLabels, int);
+  void SetNumberOfLabels(int num)
+    {this->SetNumberOfXLabels(num); this->SetNumberOfYLabels(num);}
+  
+  // Description:
+  // Enable/Disable the creation of a legend. If on, the legend labels will
+  // be created automatically unless the per plot legend symbol has been
+  // set.
+  vtkSetMacro(Legend, int);
+  vtkGetMacro(Legend, int);
+  vtkBooleanMacro(Legend, int);
+
+  // Description: 
+  // Use these methods to control the position of the legend. The variables
+  // LegendPosition and LegendPosition2 define the lower-left and upper-right
+  // position of the legend. The coordinates are expressed as normalized
+  // values with respect to the rectangle defined by PositionCoordinate and
+  // Position2Coordinate. Note that LegendPosition2 is relative to
+  // LegendPosition.
+  vtkSetVector2Macro(LegendPosition,double);
+  vtkGetVector2Macro(LegendPosition,double);
+  vtkSetVector2Macro(LegendPosition2,double);
+  vtkGetVector2Macro(LegendPosition2,double);
+  
+  // Description:
+  // Set/Get the title text property.
+  virtual void SetTitleTextProperty(vtkTextProperty *p);
+  vtkGetObjectMacro(TitleTextProperty,vtkTextProperty);
+  
+  // Description:
+  // Set/Get the title text property of all axes. Note that each axis can
+  // be controlled individually through the GetX/YAxisActor2D() methods.
+  virtual void SetAxisTitleTextProperty(vtkTextProperty *p);
+  vtkGetObjectMacro(AxisTitleTextProperty,vtkTextProperty);
+  
+  // Description:
+  // Set/Get the labels text property of all axes. Note that each axis can
+  // be controlled individually through the GetX/YAxisActor2D() methods.
+  virtual void SetAxisLabelTextProperty(vtkTextProperty *p);
+  vtkGetObjectMacro(AxisLabelTextProperty,vtkTextProperty);
+      
+  // Description:
+  // Enable/Disable plotting of Log of x-values.
+  vtkSetMacro(Logx, int);
+  vtkGetMacro(Logx, int);
+  vtkBooleanMacro(Logx, int);
+
+  // Description:
+  // Set/Get the format with which to print the labels on the scalar
+  // bar.
+  virtual void SetLabelFormat (const char* _arg);
+  vtkGetStringMacro(LabelFormat);
+
+  // Description:
+  // Set/Get the spacing between the plot window and the plot. The value
+  // is specified in pixels.
+  vtkSetClampMacro(Border, int, 0, 50);
+  vtkGetMacro(Border, int);
+
+  // Description:
+  // Set/Get whether the points are rendered.  The point size can be set in
+  // the property object. This is a global flag which affects the plot only 
+  // if per curve symbols are not defined.
+  vtkGetMacro(PlotPoints, int);
+  vtkSetMacro(PlotPoints, int);
+  vtkBooleanMacro(PlotPoints, int);
+
+  // Description:
+  // Set/Get whether the lines are rendered.  The line width can be set in
+  // the property object. 
+  vtkGetMacro(PlotLines, int);
+  vtkSetMacro(PlotLines, int);
+  vtkBooleanMacro(PlotLines, int);
+  
+  // RKV : Begin
+  // Description:
+  // Set/Get the location in the viewport 
+  vtkGetMacro(PlotLocation, VISU_XYPlotLocation);
+  vtkSetMacro(PlotLocation, VISU_XYPlotLocation);
+  // RKV : End
+  
+  // Description:
+  // Set/Get the factor that controls how big glyphs are in the plot.
+  // The number is expressed as a fraction of the length of the diagonal
+  // of the plot bounding box.
+  vtkSetClampMacro(GlyphSize, double, 0.0, 0.2);
+  vtkGetMacro(GlyphSize, double);
+
+  // Description:
+  // Given a position within the viewport used by the plot, return the
+  // the plot coordinates (XAxis value, YAxis value)
+  void ViewportToPlotCoordinate(vtkViewport *viewport, double &u, double &v);
+
+  // Description:
+  // An alternate form of ViewportToPlotCoordinate() above. This method
+  // inputs the viewport coordinate pair (defined by the ivar 
+  // ViewportCoordinate)and then stores them in the ivar PlotCoordinate. 
+  void ViewportToPlotCoordinate(vtkViewport *viewport);
+  vtkSetVector2Macro(PlotCoordinate,double);
+  vtkGetVector2Macro(PlotCoordinate,double);
+
+  // Description:
+  // Given a plot coordinate, return the viewpoint position
+  void PlotToViewportCoordinate(vtkViewport *viewport, double &u, double &v);
+
+  // Description:
+  // An alternate form of PlotToViewportCoordinate() above. This method
+  // inputs the plot coordinate pair (defined in the ivar PlotCoordinate)
+  // and then stores them in the ivar ViewportCoordinate. (This method 
+  // can be wrapped.)
+  void PlotToViewportCoordinate(vtkViewport *viewport);
+  vtkSetVector2Macro(ViewportCoordinate,double);
+  vtkGetVector2Macro(ViewportCoordinate,double);
+
+  // Description:
+  // Is the specified viewport position within the plot area (as opposed to the
+  // region used by the plot plus the labels)?
+  int IsInPlot(vtkViewport *viewport, double u, double v);
+  
+  // Description:
+  // Take into account the modified time of internal helper classes.
+  unsigned long GetMTime();
+  
+  // Description:
+  // Write the XY Ploat Actor as a CSV (comma separated value) representation.
+  void PrintAsCSV(ostream &os);
+
+//BTX  
+  // Description:
+  // WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE
+  // DO NOT USE THIS METHOD OUTSIDE OF THE RENDERING PROCESS.
+  // Draw the x-y plot.
+  int RenderOpaqueGeometry(vtkViewport*);
+  int RenderOverlay(vtkViewport*);
+  int RenderTranslucentGeometry(vtkViewport *) {return 0;}
+
+  // Description:
+  // Release any graphics resources that are being consumed by this actor.
+  // The parameter window could be used to determine which graphic
+  // resources to release.
+  void ReleaseGraphicsResources(vtkWindow *);
+//ETX  
+
+protected:
+  VISU_XYPlotActor();
+  ~VISU_XYPlotActor();
+
+  vtkDataSetCollection *InputList; //list of data sets to plot
+  char** SelectedInputScalars; // list of data set arrays to plot
+  vtkIntArray* SelectedInputScalarsComponent; // list of componenents
+  vtkDataObjectCollection *DataObjectInputList; //list of data objects to plot
+  char  *Title;
+  char  *XTitle;
+  char  *YTitle;
+  int   XValues;
+  int   NumberOfXLabels;
+  int   NumberOfYLabels;
+  int   Logx;
+  char  *LabelFormat;
+  double XRange[2];
+  double YRange[2];
+  double XComputedRange[2];  //range actually used by plot
+  double YComputedRange[2];  //range actually used by plot
+  int Border;
+  int PlotLines;
+  int PlotPoints;
+  int PlotCurveLines;
+  int PlotCurvePoints;
+  int ExchangeAxes;
+  int ReverseXAxis;
+  int ReverseYAxis;
+  
+  vtkTextMapper   *TitleMapper;
+  vtkActor2D      *TitleActor;
+  vtkTextProperty *TitleTextProperty;
+
+  vtkAxisActor2D      *XAxis;
+  vtkAxisActor2D      *YAxis;
+
+  vtkTextProperty *AxisTitleTextProperty;
+  vtkTextProperty *AxisLabelTextProperty;
+
+  double ViewportCoordinate[2];
+  double PlotCoordinate[2];
+  
+  //Handle data objects and datasets
+  int DataObjectPlotMode;
+  vtkIntArray *XComponent;
+  vtkIntArray *YComponent;
+  vtkIntArray *LinesOn;
+  vtkIntArray *PointsOn;
+
+  //The data drawn within the axes. Each curve is one polydata.
+  //color is controlled by scalar data. The curves are appended
+  //together, possibly glyphed with point symbols.
+  int NumberOfInputs;
+  vtkPolyData             **PlotData; 
+  vtkGlyph2D              **PlotGlyph;
+  vtkAppendPolyData       **PlotAppend;
+  vtkTransformPolyDataFilter  **PlotTransform; // RKV
+  vtkPolyDataMapper2D     **PlotMapper;
+  vtkActor2D              **PlotActor;
+  void                    InitializeEntries();
+  
+  // Legends and plot symbols. The legend also keeps track of
+  // the symbols and such.
+  int Legend;
+  double LegendPosition[2];
+  double LegendPosition2[2];
+  vtkLegendBoxActor *LegendActor;
+  vtkGlyphSource2D *GlyphSource;
+  vtkPlanes *ClipPlanes;
+  double GlyphSize;
+
+  // Keep track of changes.
+  VISU_XYPlotLocation PlotLocation; // RKV
+  int CachedSize[2];
+  vtkTimeStamp  BuildTime;
+
+  void ComputeXRange(double range[2], double *lengths);
+  void ComputeYRange(double range[2]);
+  void ComputeDORange(double xrange[2], double yrange[2], double *lengths);
+
+  virtual void CreatePlotData(int *pos, int *pos2, double xRange[2], 
+                              double yRange[2], double *norms, 
+                              int numDS, int numDO);
+  void PlaceAxes(vtkViewport *viewport, int *size, int pos[2], int pos2[2]);
+  void GenerateClipPlanes(int *pos, int *pos2);
+  double ComputeGlyphScale(int i, int *pos, int *pos2);
+  void ClipPlotData(int *pos, int *pos2, vtkPolyData *pd);
+  double *TransformPoint(int pos[2], int pos2[2], double x[3], double xNew[3]);
+  
+private:
+  VISU_XYPlotActor(const VISU_XYPlotActor&);  // Not implemented.
+  void operator=(const VISU_XYPlotActor&);  // Not implemented.
+};
+
+
+#endif /*VISU_XYPLOTACTOR_HXX_*/
index bba49bfc2da7cab5cd767cd5b86050222796fe3f..33a7c2aa126c8b1c5c68be3220c9262b8488d05c 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 // File:    VISU_img2vti.cxx
 // Author:  Oleg UVAROV
 // Module : VISU
-
+//
 #include <vtkImageData.h>
 #include <vtkBMPReader.h>
 #include <vtkPNGReader.h>
index f5ad51ad09e5bf09c4796a4798136ac14e2a376b..7ff782177330816aadc52774606b6e96b5cf2573 100644 (file)
@@ -1,49 +1,91 @@
-#  VISU VISUGUI : GUI of VISU component
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
 #
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
 #
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+#  VISU VISUGUI : GUI of VISU component
 #  File   : Makefile.am
 #  Author : Marc Tajchman (CEA)
 #  Module : VISU
-#  $Header$
 
 include $(top_srcdir)/adm_local/unix/make_common_starter.am
 
 lib_LTLIBRARIES= libVISU.la
 
-salomeinclude_HEADERS= VisuGUI_Tools.h
-
 # .po files to transform in .qm
 nodist_salomeres_DATA= \
        VISU_msg_en.qm VISU_images.qm
 
+salomeinclude_HEADERS= \
+       VisuGUI_Tools.h \
+       VisuGUI_Prs3dTools.h \
+       VisuGUI_ActionsDef.h \
+       VisuGUI.h \
+       VisuGUI_Module.h \
+       VisuGUI_Selection.h \
+       VisuGUI_Tools.h \
+       VisuGUI_ViewTools.h \
+       VisuGUI_NameDlg.h \
+       VisuGUI_FileDlg.h \
+       VisuGUI_CursorDlg.h \
+       VisuGUI_TimeAnimation.h \
+       VisuGUI_EditContainerDlg.h \
+       VisuGUI_ClippingDlg.h \
+       VisuGUI_DialogRunner.h \
+       VisuGUI_OffsetDlg.h \
+       VisuGUI_Prs3dDlg.h \
+       VisuGUI_ScalarBarDlg.h \
+       VisuGUI_Plot3DDlg.h \
+       VisuGUI_GaussPointsDlg.h \
+       VisuGUI_DeformedShapeDlg.h \
+       VisuGUI_IsoSurfacesDlg.h \
+       VisuGUI_CutLinesDlg.h \
+       VisuGUI_CutPlanesDlg.h \
+       VisuGUI_StreamLinesDlg.h \
+       VisuGUI_VectorsDlg.h \
+       VisuGUI_Displayer.h \
+       VisuGUI_DeformedShapeAndScalarMapDlg.h \
+       VisuGUI_SetupPlot2dDlg.h \
+       VisuGUI_BuildProgressDlg.h \
+       VisuGUI_TransparencyDlg.h \
+       VisuGUI_Timer.h \
+       VisuGUI_Slider.h \
+       VisuGUI_InputPane.h \
+       VisuGUI_CacheDlg.h \
+       VisuGUI_FieldFilter.h \
+       VisuGUI_ValuesLabelingDlg.h
+
 dist_libVISU_la_SOURCES= \
        VisuGUI.cxx \
        VisuGUI_Factory.cxx \
        VisuGUI_Module.cxx \
-       VisuGUI_Selection.cxx \
+       VisuGUI_InputPanel.cxx \
+       VisuGUI_BasePanel.cxx \
+       VisuGUI_Panel.cxx \
+       VisuGUI_SelectionPanel.cxx \
+       VisuGUI_SelectionPrefDlg.cxx \
+       VisuGUI_GaussPointsSelectionPane.cxx \
+       VisuGUI_FindPane.cxx \
+       VisuGUI_FeatureEdgesPanel.cxx \
        VisuGUI_Tools.cxx \
        VisuGUI_ViewTools.cxx \
-       VisuGUI_PopupTools.cxx \
+       VisuGUI_Selection.cxx \
        VisuGUI_NameDlg.cxx \
        VisuGUI_FileDlg.cxx \
        VisuGUI_CursorDlg.cxx \
@@ -63,20 +105,34 @@ dist_libVISU_la_SOURCES= \
        VisuGUI_StreamLinesDlg.cxx \
        VisuGUI_VectorsDlg.cxx \
        VisuGUI_Displayer.cxx \
-       VisuGUI_ScalarMapOnDeformedShapeDlg.cxx \
+       VisuGUI_DeformedShapeAndScalarMapDlg.cxx \
        VisuGUI_SetupPlot2dDlg.cxx \
        VisuGUI_BuildProgressDlg.cxx \
+       VisuGUI_Table3dDlg.cxx \
        VisuGUI_TransparencyDlg.cxx \
        VisuGUI_Timer.cxx \
        VisuGUI_Slider.cxx \
+       VisuGUI_Sweep.cxx \
        VisuGUI_InputPane.cxx \
        VisuGUI_CacheDlg.cxx \
-       VisuGUI_FieldFilter.cxx
+       VisuGUI_FileInfoDlg.cxx \
+       VisuGUI_FieldFilter.cxx \
+       VisuGUI_ClippingPanel.cxx \
+       VisuGUI_ClippingPlaneDlg.cxx \
+       VisuGUI_FilterScalarsDlg.cxx \
+       VisuGUI_ValuesLabelingDlg.cxx
 
 MOC_FILES= \
        VisuGUI_moc.cxx \
        VisuGUI_Module_moc.cxx \
-       VisuGUI_Selection_moc.cxx \
+       VisuGUI_InputPanel_moc.cxx \
+       VisuGUI_BasePanel_moc.cxx \
+       VisuGUI_Panel_moc.cxx \
+       VisuGUI_SelectionPanel_moc.cxx \
+       VisuGUI_SelectionPrefDlg_moc.cxx \
+       VisuGUI_GaussPointsSelectionPane_moc.cxx \
+       VisuGUI_FindPane_moc.cxx \
+       VisuGUI_FeatureEdgesPanel_moc.cxx \
        VisuGUI_NameDlg_moc.cxx \
        VisuGUI_FileDlg_moc.cxx \
        VisuGUI_CursorDlg_moc.cxx \
@@ -95,13 +151,21 @@ MOC_FILES= \
        VisuGUI_CutPlanesDlg_moc.cxx \
        VisuGUI_StreamLinesDlg_moc.cxx \
        VisuGUI_VectorsDlg_moc.cxx \
-       VisuGUI_ScalarMapOnDeformedShapeDlg_moc.cxx \
+       VisuGUI_DeformedShapeAndScalarMapDlg_moc.cxx \
        VisuGUI_SetupPlot2dDlg_moc.cxx \
        VisuGUI_BuildProgressDlg_moc.cxx \
+       VisuGUI_Table3dDlg_moc.cxx \
        VisuGUI_TransparencyDlg_moc.cxx \
        VisuGUI_Slider_moc.cxx \
+       VisuGUI_Sweep_moc.cxx \
        VisuGUI_InputPane_moc.cxx \
-       VisuGUI_CacheDlg_moc.cxx
+       VisuGUI_CacheDlg_moc.cxx \
+       VisuGUI_FileInfoDlg_moc.cxx \
+       VisuGUI_ClippingPanel_moc.cxx \
+       VisuGUI_ClippingPlaneDlg_moc.cxx \
+       VisuGUI_FilterScalarsDlg_moc.cxx \
+       VisuGUI_ValuesLabelingDlg_moc.cxx
+
 
 nodist_libVISU_la_SOURCES=$(MOC_FILES)
 
diff --git a/src/VISUGUI/VISU_images.po b/src/VISUGUI/VISU_images.po
deleted file mode 100644 (file)
index c676492..0000000
+++ /dev/null
@@ -1,253 +0,0 @@
-#  VISU VISUGUI : GUI of VISU component
-#
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-#
-#
-#  File   : VisuGUI_icons.po
-#  Module : VISU
-
-msgid ""
-msgstr ""
-"Project-Id-Version: PROJECT VERSION\n"
-"POT-Creation-Date: 2002-05-28 10:57:43 AM CEST\n"
-"PO-Revision-Date: 2005-05-10 15:20+0400\n"
-"Last-Translator: FULLNAME <EMAIL@ADDRESS>\n"
-"Content-Type: text/plain; charset=iso-8859-1\n"
-
-msgid "ICON_IMPORT_MED"
-msgstr "Visu_import_med.png"
-
-msgid "ICON_OBJBROWSER_Visu"
-msgstr "Visu_tree_visu.png"
-
-msgid "ICON_MULTIPR_VIEW_FULL"
-msgstr "Visu_tree_multipr_full.png"
-
-msgid "ICON_MULTIPR_VIEW_MEDIUM"
-msgstr "Visu_tree_multipr_medium.png"
-
-msgid "ICON_MULTIPR_VIEW_LOW"
-msgstr "Visu_tree_multipr_low.png"
-
-msgid "ICON_MULTIPR_VIEW_HIDE"
-msgstr "Visu_tree_multipr_hide.png"
-
-msgid "ICON_HOLO_RENDER"
-msgstr "Visu_holo_render.png"
-
-msgid "ICON_SCALAR_MAP"
-msgstr "Visu_scalars.png"
-
-msgid "ICON_DEFORMED_SHAPE"
-msgstr "Visu_deformed.png"
-
-msgid "ICON_SCALAR_MAP_ON_DEFORMED_SHAPE"
-msgstr "Visu_scalarmapondeformedshape.png"
-
-msgid "ICON_VECTORS"
-msgstr "Visu_vectors.png"
-
-msgid "ICON_ISO_SURFACES"
-msgstr "Visu_isosurfaces.png"
-
-msgid "ICON_CUT_PLANES"
-msgstr "Visu_cutplanes.png"
-
-msgid "ICON_CUT_LINES"
-msgstr "Visu_cutlines.png"
-
-msgid "ICON_STREAM_LINES"
-msgstr "Visu_streamlines.png"
-
-msgid "ICON_PLOT2D"
-msgstr "Visu_plot2d.png"
-
-# Tree icons for presentations
-
-msgid "ICON_TREE_RESULT"
-msgstr "Visu_tree_result.png"
-
-msgid "ICON_TREE_TABLE"
-msgstr "Visu_tree_table.png"
-
-msgid "ICON_TREE_CURVE"
-msgstr "Visu_tree_curve.png"
-
-msgid "ICON_TREE_CONTAINER"
-msgstr "Visu_tree_container.png"
-
-msgid "ICON_TREE_MESH"
-msgstr "Visu_tree_mesh.png"
-
-msgid "ICON_TREE_SCALAR_MAP"
-msgstr "Visu_tree_scalars.png"
-
-msgid "ICON_TREE_SCALAR_MAP_GROUPS"
-msgstr "Visu_tree_scalars_gr.png"
-
-msgid "ICON_TREE_DEFORMED_SHAPE"
-msgstr "Visu_tree_deformed.png"
-
-msgid "ICON_TREE_DEFORMED_SHAPE_GROUPS"
-msgstr "Visu_tree_deformed_gr.png"
-
-msgid "ICON_TREE_SCALAR_MAP_ON_DEFORMED_SHAPE"
-msgstr "Visu_tree_scalarmapondeformedshape.png"
-
-msgid "ICON_TREE_SCALAR_MAP_ON_DEFORMED_SHAPE_GROUPS"
-msgstr "Visu_tree_scalarmapondeformedshape_gr.png"
-
-msgid "ICON_TREE_VECTORS"
-msgstr "Visu_tree_vectors.png"
-
-msgid "ICON_TREE_VECTORS_GROUPS"
-msgstr "Visu_tree_vectors_gr.png"
-
-msgid "ICON_TREE_ISO_SURFACES"
-msgstr "Visu_tree_isosurfaces.png"
-
-msgid "ICON_TREE_ISO_SURFACES_GROUPS"
-msgstr "Visu_tree_isosurfaces_gr.png"
-
-msgid "ICON_TREE_CUT_PLANES"
-msgstr "Visu_tree_cutplanes.png"
-
-msgid "ICON_TREE_CUT_PLANES_GROUPS"
-msgstr "Visu_tree_cutplanes_gr.png"
-
-msgid "ICON_TREE_CUT_LINES"
-msgstr "Visu_tree_cutlines.png"
-
-msgid "ICON_TREE_CUT_LINES_GROUPS"
-msgstr "Visu_tree_cutlines_gr.png"
-
-msgid "ICON_TREE_STREAM_LINES"
-msgstr "Visu_tree_streamlines.png"
-
-msgid "ICON_TREE_STREAM_LINES_GROUPS"
-msgstr "Visu_tree_streamlines_gr.png"
-
-msgid "ICON_TREE_PLOT_3D"
-msgstr "Visu_tree_plot3d.png"
-
-msgid "ICON_TREE_PLOT_3D_GROUPS"
-msgstr "Visu_tree_plot3d_gr.png"
-
-msgid "ICON_TREE_GAUSS_POINTS"
-msgstr "Visu_tree_gauss_points.png"
-
-# Representation menu
-
-msgid "ICON_POINTS"
-msgstr "Visu_points.png"
-
-msgid "ICON_WIREFRAME"
-msgstr "Visu_wireframe.png"
-
-msgid "ICON_SURFACE"
-msgstr "Visu_surface.png"
-
-msgid "ICON_ERASE_ALL"
-msgstr "Visu_eraseall.png"
-
-msgid "ICON_GLOBAL_SELECTION"
-msgstr "Visu_selectall.png"
-
-msgid "ICON_PARTIAL_SELECTION"
-msgstr "Visu_selectonly.png"
-
-msgid "ICON_SCALING"
-msgstr "Visu_scaling.png"
-
-msgid "ICON_TIMEANIMATION"
-msgstr "Visu_anim.png"
-
-msgid "ICON_SWEEP"
-msgstr "Visu_scalars_anim.png"
-
-msgid "ICON_PLOT_3D"
-msgstr "Visu_plot3d.png"
-
-msgid "ICON_CUBE_AXES"
-msgstr "Visu_graduated_axes.png"
-
-msgid "ICON_GAUSS_NEW_VIEWER"
-msgstr "Visu_points.png"
-
-msgid "ICON_GAUSS_POINTS"
-msgstr "Visu_gauss_points.png"
-
-msgid "ICON_VVTK_INTERACTOR_STYLE_SWITCH"
-msgstr "Visu_vvtk_switch.png"
-
-msgid "ICON_VVTK_SELECTION_MODE_SWITCH"
-msgstr "Visu_points.png"
-
-msgid "ICON_VVTK_PLANE_SEGMENTATION_SWITCH"
-msgstr "Visu_PlaneSegmentation.png"
-
-msgid "ICON_VVTK_SPHERE_SEGMENTATION_SWITCH"
-msgstr "Visu_SphereSegmentation.png"
-
-msgid "ICON_VVTK_RECORDING_START"
-msgstr "Visu_recording_start.png"
-
-msgid "ICON_VVTK_RECORDING_PLAY"
-msgstr "Visu_recording_play.png"
-
-msgid "ICON_VVTK_RECORDING_PAUSE"
-msgstr "Visu_recording_pause.png"
-
-msgid "ICON_VVTK_RECORDING_STOP"
-msgstr "Visu_recording_stop.png"
-
-msgid "ICON_LOAD_TEXTURE"
-msgstr "Visu_load_texture.png"
-
-msgid "ICON_ADD"
-msgstr "Visu_add.png"
-
-msgid "ICON_REMOVE"
-msgstr "Visu_remove.png"
-
-msgid "ICON_SLIDER_MORE"
-msgstr "Visu_slider_more.png"
-
-msgid "ICON_SLIDER_AVI"
-msgstr "Visu_slider_avi.png"
-
-msgid "ICON_SLIDER_FIRST"
-msgstr "Visu_slider_first.png"
-
-msgid "ICON_SLIDER_PREVIOUS"
-msgstr "Visu_slider_previous.png"
-
-msgid "ICON_SLIDER_PLAY"
-msgstr "Visu_slider_play.png"
-
-msgid "ICON_SLIDER_PAUSE"
-msgstr "Visu_slider_pause.png"
-
-msgid "ICON_SLIDER_NEXT"
-msgstr "Visu_slider_next.png"
-
-msgid "ICON_SLIDER_LAST"
-msgstr "Visu_slider_last.png"
diff --git a/src/VISUGUI/VISU_images.ts b/src/VISUGUI/VISU_images.ts
new file mode 100644 (file)
index 0000000..143e756
--- /dev/null
@@ -0,0 +1,367 @@
+<!DOCTYPE TS>
+<!--
+  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+
+  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+
+  This library is free software; you can redistribute it and/or
+  modify it under the terms of the GNU Lesser General Public
+  License as published by the Free Software Foundation; either
+  version 2.1 of the License.
+
+  This library is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public
+  License along with this library; if not, write to the Free Software
+  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+
+  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+
+-->
+<TS version="1.1" >
+    <context>
+        <name>@default</name>
+        <message>
+            <source>ICON_ACTOR_SELECTION</source>
+            <translation>Visu_actor_selection.png</translation>
+        </message>
+        <message>
+            <source>ICON_ADD</source>
+            <translation>Visu_add.png</translation>
+        </message>
+        <message>
+            <source>ICON_APPLY</source>
+            <translation>Visu_apply.png</translation>
+        </message>
+        <message>
+            <source>ICON_CELL_SELECTION</source>
+            <translation>Visu_cell_selection.png</translation>
+        </message>
+        <message>
+            <source>ICON_CLOSE</source>
+            <translation>Visu_close.png</translation>
+        </message>
+        <message>
+            <source>ICON_CUBE_AXES</source>
+            <translation>Visu_graduated_axes.png</translation>
+        </message>
+        <message>
+            <source>ICON_CUT_LINES</source>
+            <translation>Visu_cutlines.png</translation>
+        </message>
+        <message>
+            <source>ICON_CUT_PLANES</source>
+            <translation>Visu_cutplanes.png</translation>
+        </message>
+        <message>
+            <source>ICON_DEFORMED_SHAPE</source>
+            <translation>Visu_deformed.png</translation>
+        </message>
+        <message>
+            <source>ICON_ERASE_ALL</source>
+            <translation>Visu_eraseall.png</translation>
+        </message>
+        <message>
+            <source>ICON_GAUSS_NEW_VIEWER</source>
+            <translation>Visu_points.png</translation>
+        </message>
+        <message>
+            <source>ICON_GAUSS_POINT_SELECTION</source>
+            <translation>Visu_gauss_point_selection.png</translation>
+        </message>
+        <message>
+            <source>ICON_GAUSS_POINTS</source>
+            <translation>Visu_gauss_points.png</translation>
+        </message>
+        <message>
+            <source>ICON_GLOBAL_SELECTION</source>
+            <translation>Visu_selectall.png</translation>
+        </message>
+        <message>
+            <source>ICON_HELP</source>
+            <translation>Visu_help.png</translation>
+        </message>
+        <message>
+            <source>ICON_HOLO_RENDER</source>
+            <translation>Visu_holo_render.png</translation>
+        </message>
+        <message>
+            <source>ICON_IMPORT_MED</source>
+            <translation>Visu_import_med.png</translation>
+        </message>
+        <message>
+            <source>ICON_ISO_SURFACES</source>
+            <translation>Visu_isosurfaces.png</translation>
+        </message>
+        <message>
+            <source>ICON_LOAD_TEXTURE</source>
+            <translation>Visu_load_texture.png</translation>
+        </message>
+        <message>
+            <source>ICON_MULTIPR_VIEW_FULL</source>
+            <translation>Visu_tree_multipr_full.png</translation>
+        </message>
+        <message>
+            <source>ICON_MULTIPR_VIEW_HIDE</source>
+            <translation>Visu_tree_multipr_hide.png</translation>
+        </message>
+        <message>
+            <source>ICON_MULTIPR_VIEW_LOW</source>
+            <translation>Visu_tree_multipr_low.png</translation>
+        </message>
+        <message>
+            <source>ICON_MULTIPR_VIEW_MEDIUM</source>
+            <translation>Visu_tree_multipr_medium.png</translation>
+        </message>
+        <message>
+            <source>ICON_OBJBROWSER_Visu</source>
+            <translation>Visu_tree_visu.png</translation>
+        </message>
+        <message>
+            <source>ICON_OK</source>
+            <translation>Visu_ok.png</translation>
+        </message>
+        <message>
+            <source>ICON_PARTIAL_SELECTION</source>
+            <translation>Visu_selectonly.png</translation>
+        </message>
+        <message>
+            <source>ICON_PLOT2D</source>
+            <translation>Visu_plot2d.png</translation>
+        </message>
+        <message>
+            <source>ICON_PLOT_3D</source>
+            <translation>Visu_plot3d.png</translation>
+        </message>
+        <message>
+            <source>ICON_POINT_SELECTION</source>
+            <translation>Visu_point_selection.png</translation>
+        </message>
+        <message>
+            <source>ICON_POINTS</source>
+            <translation>Visu_points.png</translation>
+        </message>
+        <message>
+            <source>ICON_REMOVE</source>
+            <translation>Visu_remove.png</translation>
+        </message>
+        <message>
+            <source>ICON_SCALAR_MAP</source>
+            <translation>Visu_scalars.png</translation>
+        </message>
+        <message>
+            <source>ICON_SCALAR_MAP_ON_DEFORMED_SHAPE</source>
+            <translation>Visu_scalarmapondeformedshape.png</translation>
+        </message>
+        <message>
+            <source>ICON_SCALING</source>
+            <translation>Visu_scaling.png</translation>
+        </message>
+        <message>
+            <source>ICON_SELECTION_PANEL</source>
+            <translation>Visu_selection_panel.png</translation>
+        </message>
+        <message><source>ICON_SLIDER_PANEL</source><translation>Visu_slider_panel.png</translation></message>
+        <message><source>ICON_SWEEP_PANEL</source><translation>Visu_sweep_panel.png</translation></message>
+        <message>
+            <source>ICON_SLIDER_AVI</source>
+            <translation>Visu_slider_avi.png</translation>
+        </message>
+        <message>
+            <source>ICON_SLIDER_FIRST</source>
+            <translation>Visu_slider_first.png</translation>
+        </message>
+        <message>
+            <source>ICON_SLIDER_LAST</source>
+            <translation>Visu_slider_last.png</translation>
+        </message>
+        <message>
+            <source>ICON_SLIDER_MORE</source>
+            <translation>Visu_slider_more.png</translation>
+        </message>
+        <message>
+            <source>ICON_SLIDER_NEXT</source>
+            <translation>Visu_slider_next.png</translation>
+        </message>
+        <message>
+            <source>ICON_SLIDER_PAUSE</source>
+            <translation>Visu_slider_pause.png</translation>
+        </message>
+        <message>
+            <source>ICON_SLIDER_PLAY</source>
+            <translation>Visu_slider_play.png</translation>
+        </message>
+        <message>
+            <source>ICON_SLIDER_PREVIOUS</source>
+            <translation>Visu_slider_previous.png</translation>
+        </message>
+        <message>
+            <source>ICON_STREAM_LINES</source>
+            <translation>Visu_streamlines.png</translation>
+        </message>
+        <message>
+            <source>ICON_SURFACE</source>
+            <translation>Visu_surface.png</translation>
+        </message>
+        <message>
+            <source>ICON_SWEEP</source>
+            <translation>Visu_scalars_anim.png</translation>
+        </message>
+        <message>
+            <source>ICON_TIMEANIMATION</source>
+            <translation>Visu_anim.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_CONTAINER</source>
+            <translation>Visu_tree_container.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_CURVE</source>
+            <translation>Visu_tree_curve.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_CUT_LINES</source>
+            <translation>Visu_tree_cutlines.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_CUT_LINES_GROUPS</source>
+            <translation>Visu_tree_cutlines_gr.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_CUT_PLANES</source>
+            <translation>Visu_tree_cutplanes.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_CUT_PLANES_GROUPS</source>
+            <translation>Visu_tree_cutplanes_gr.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_DEFORMED_SHAPE</source>
+            <translation>Visu_tree_deformed.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_DEFORMED_SHAPE_GROUPS</source>
+            <translation>Visu_tree_deformed_gr.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_GAUSS_POINTS</source>
+            <translation>Visu_tree_gauss_points.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_ISO_SURFACES</source>
+            <translation>Visu_tree_isosurfaces.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_ISO_SURFACES_GROUPS</source>
+            <translation>Visu_tree_isosurfaces_gr.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_MESH</source>
+            <translation>Visu_tree_mesh.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_PLOT_3D</source>
+            <translation>Visu_tree_plot3d.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_PLOT_3D_GROUPS</source>
+            <translation>Visu_tree_plot3d_gr.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_RESULT</source>
+            <translation>Visu_tree_result.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_SCALAR_MAP</source>
+            <translation>Visu_tree_scalars.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_SCALAR_MAP_GROUPS</source>
+            <translation>Visu_tree_scalars_gr.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_SCALAR_MAP_ON_DEFORMED_SHAPE</source>
+            <translation>Visu_tree_scalarmapondeformedshape.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_SCALAR_MAP_ON_DEFORMED_SHAPE_GROUPS</source>
+            <translation>Visu_tree_scalarmapondeformedshape_gr.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_STREAM_LINES</source>
+            <translation>Visu_tree_streamlines.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_STREAM_LINES_GROUPS</source>
+            <translation>Visu_tree_streamlines_gr.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_TABLE</source>
+            <translation>Visu_tree_table.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_VECTORS</source>
+            <translation>Visu_tree_vectors.png</translation>
+        </message>
+        <message>
+            <source>ICON_TREE_VECTORS_GROUPS</source>
+            <translation>Visu_tree_vectors_gr.png</translation>
+        </message>
+        <message>
+            <source>ICON_VECTORS</source>
+            <translation>Visu_vectors.png</translation>
+        </message>
+        <message>
+            <source>ICON_VVTK_INTERACTOR_STYLE_SWITCH</source>
+            <translation>Visu_vvtk_switch.png</translation>
+        </message>
+        <message>
+            <source>ICON_VVTK_PLANE_SEGMENTATION_SWITCH</source>
+            <translation>Visu_PlaneSegmentation.png</translation>
+        </message>
+        <message>
+            <source>ICON_VVTK_RECORDING_PAUSE</source>
+            <translation>Visu_recording_pause.png</translation>
+        </message>
+        <message>
+            <source>ICON_VVTK_RECORDING_PLAY</source>
+            <translation>Visu_recording_play.png</translation>
+        </message>
+        <message>
+            <source>ICON_VVTK_RECORDING_START</source>
+            <translation>Visu_recording_start.png</translation>
+        </message>
+        <message>
+            <source>ICON_VVTK_RECORDING_STOP</source>
+            <translation>Visu_recording_stop.png</translation>
+        </message>
+        <message>
+            <source>ICON_SWEEP_STOP</source>
+            <translation>Visu_recording_stop.png</translation>
+        </message>
+        <message>
+            <source>ICON_VVTK_SELECTION_MODE_SWITCH</source>
+            <translation>Visu_points.png</translation>
+        </message>
+        <message>
+            <source>ICON_VVTK_SPHERE_SEGMENTATION_SWITCH</source>
+            <translation>Visu_SphereSegmentation.png</translation>
+        </message>
+        <message>
+            <source>ICON_WIREFRAME</source>
+            <translation>Visu_wireframe.png</translation>
+        </message>
+        <message>
+            <source>ICON_DEACTIVATE_PLANES</source>
+            <translation>Visu_DeactivatePlane.png</translation>
+        </message>
+        <message>
+            <source>ICON_PLANES_MGR</source>
+            <translation>Visu_planemanager.png</translation>
+        </message>
+    </context>
+</TS>
diff --git a/src/VISUGUI/VISU_msg_en.po b/src/VISUGUI/VISU_msg_en.po
deleted file mode 100644 (file)
index 1b619f7..0000000
+++ /dev/null
@@ -1,2358 +0,0 @@
-#  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-#
-#  This library is free software; you can redistribute it and/or
-#  modify it under the terms of the GNU Lesser General Public
-#  License as published by the Free Software Foundation; either
-#  version 2.1 of the License.
-#
-#  This library is distributed in the hope that it will be useful,
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-#  Lesser General Public License for more details.
-#
-#  You should have received a copy of the GNU Lesser General Public
-#  License along with this library; if not, write to the Free Software
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: PROJECT VERSION\n"
-"POT-Creation-Date: 2002-02-22 16:56:46 CET\n"
-"PO-Revision-Date: 2007-12-11 17:26+0300\n"
-"Last-Translator: FULLNAME <EMAIL@ADDRESS>\n"
-"Content-Type: text/plain; charset=iso-8859-1\n"
-
-msgid "WRN_VISU"
-msgstr "Post-Pro Warning"
-
-msgid "WRN_VISU_WARNING"
-msgstr "Warning"
-
-msgid "INF_DONE"
-msgstr " done"
-
-msgid "INF_FAILED"
-msgstr " failed!"
-
-msgid "WRN_STUDY_LOCKED"
-msgstr "Current Study is locked"
-
-msgid "WRN_NO_AVAILABLE_DATA"
-msgstr "No Available data in selection"
-
-msgid "WRN_EXTRA_MEMORY_REQUIRED"
-msgstr "Cache need more memory to build the presentation (%1 Mb).\nDo you want to enlarge the cache?"
-
-msgid "ERR_NO_MEMORY_TO_BUILD"
-msgstr "Please, free %1 Mb to make the cache enlarging possible\n(for example, try to delete some holders)"
-
-msgid "ERR_CANT_FIND_VISU_COMPONENT"
-msgstr "Failed to activate VISU engine!"
-
-msgid "ERR_CANT_FIND_MED_COMPONENT"
-msgstr "Failed to activate MED engine!"
-
-msgid "ERR_CANT_BUILD_PRESENTATION"
-msgstr "The object can't be built"
-
-msgid "ERR_CANT_CREATE_ACTOR"
-msgstr "Can't create actor for this presentation"
-
-msgid "ERR_CANT_CREATE_ANIMATION"
-msgstr "Can't create animation for these fields:\n number of time stamps or number of components is not the same!"
-
-# Preferences for VISU module (VisuGUI.cxx)
-
-msgid "VISU_SCALAR_BAR"
-msgstr "Scalar Bar"
-
-msgid "VISU_FONT"
-msgstr "Font"
-
-msgid "VISU_FONT_ARIAL"
-msgstr "Arial"
-
-msgid "VISU_FONT_COURIER"
-msgstr "Courier"
-
-msgid "VISU_FONT_TIMES"
-msgstr "Times"
-
-msgid "VISU_TITLE"
-msgstr "Title"
-
-msgid "VISU_LABELS"
-msgstr "Labels"
-
-msgid "VISU_COLORS_AND_LABELS"
-msgstr "Colors && Labels"
-
-msgid "VISU_NB_COLORS"
-msgstr "Nb. of colors"
-
-msgid "VISU_IS_UNITS"
-msgstr "Display units in title"
-
-msgid "VISU_NB_LABELS"
-msgstr "Nb. of labels"
-
-msgid "VISU_LABELS_FORMAT"
-msgstr "Labels format"
-
-msgid "VISU_ORIENTATION"
-msgstr "Orientation"
-
-msgid "VISU_VERTICAL"
-msgstr "Vertical"
-
-msgid "VISU_HORIZONTAL"
-msgstr "Horizontal"
-
-msgid "VISU_ORIGIN_AND_SIZE"
-msgstr "Origin && Size"
-
-msgid "VISU_X"
-msgstr "X:"
-
-msgid "VISU_Y"
-msgstr "Y:"
-
-msgid "VISU_WIDTH"
-msgstr "Width:"
-
-msgid "VISU_HEIGHT"
-msgstr "Height:"
-
-msgid "VISU_TITLE_WIDTH"
-msgstr "Title width (%):"
-
-msgid "VISU_TITLE_HEIGHT"
-msgstr "Title height (%):"
-
-msgid "VISU_LABEL_WIDTH"
-msgstr "Label width (%):"
-
-msgid "VISU_LABEL_HEIGHT"
-msgstr "Label height (%):"
-
-msgid "VISU_BAR_WIDTH"
-msgstr "Bar width (%):"
-
-msgid "VISU_BAR_HEIGHT"
-msgstr "Bar height (%):"
-
-msgid "VISU_PREF_SECOND_TAB"
-msgstr "Scalar range, Sweep, MED import, Shading"
-
-msgid "NO_GROUPS"
-msgstr "No groups in the mesh"
-
-msgid "VISU_SCALAR_RANGE"
-msgstr "Scalar range"
-
-msgid "VISU_SCALAR_MODE"
-msgstr "Scalar mode"
-
-msgid "VISU_MODULUS"
-msgstr "Modulus"
-
-msgid "VISU_COMPONENT"
-msgstr "Component"
-
-msgid "VISU_LOGARITHMIC_SCALING"
-msgstr "Logarithmic scaling"
-
-msgid "VISU_RANGE_TO_USE"
-msgstr "Range to use"
-
-msgid "VISU_FIELD_RANGE"
-msgstr "Field range"
-
-msgid "VISU_IMPOSED_RANGE"
-msgstr "Imposed range"
-
-msgid "VISU_MINMAX_IMPOSED_RANGE"
-msgstr "Min and max for imposed range"
-
-msgid "VISU_MIN"
-msgstr "Min:"
-
-msgid "VISU_MAX"
-msgstr "Max:"
-
-msgid "VISU_SWEEPING_PREF"
-msgstr "Sweeping preferences"
-
-msgid "VISU_LINEAR_SWEEP"
-msgstr "Linear" 
-
-msgid "VISU_COS_SWEEP"
-msgstr "Cosinusoidal ( (1 - cos(t))/2 )"
-
-msgid "VISU_SIN_SWEEP"
-msgstr "Sinusoidal ( sin( t - PI/2 ) )"
-
-msgid "VISU_SWEEPING_MODES"
-msgstr "Mode of the sweeping "
-
-msgid "VISU_IS2PI"
-msgstr "Parameter varies:"
-
-msgid "PERIOD_2PI"
-msgstr "From -PI to PI"
-
-msgid "PERIOD_PI"
-msgstr "From 0 to PI"
-
-msgid "VISU_TIME_STEP"
-msgstr "Time step(second)"
-
-msgid "VISU_NB_CYCLES"
-msgstr "Number of cycles"
-
-msgid "VISU_NB_STEPS"
-msgstr "Number of steps"
-
-msgid "VISU_CUTLINE_PREF"
-msgstr "CutLine preferences"
-
-msgid "VISU_PREF_MED_IMPORT"
-msgstr "MED files import"
-
-msgid "VISU_PREF_MED_FULL_LOAD"
-msgstr "Full MED loading"
-
-msgid "VISU_REPRESENT_PROPS"
-msgstr "Representation properties"
-
-msgid "VISU_USE_SHADING"
-msgstr "Use Shading"
-
-msgid "VISU_DISP_ONLY"
-msgstr "Display only on creation"
-
-msgid "VISU_SHRINK"
-msgstr "Shrink"
-
-msgid "VISU_3DCACHE_PROPS"
-msgstr "3D Cache properties"
-
-msgid "VISU_MEMORY_MODE"
-msgstr "Memory mode"
-
-msgid "VISU_MINIMAL"
-msgstr "Minimal"
-
-msgid "VISU_LIMITED"
-msgstr "Limited"
-
-msgid "VISU_MEMORY_LIMIT"
-msgstr "Memory limit (Mb)"
-
-#: VisuGUI.cxx
-
-msgid "VisuGUI::MEN_IMPORT"
-msgstr "Import"
-
-msgid "VisuGUI::MEN_IMPORT_FROM_FILE"
-msgstr "MED file"
-
-msgid "VisuGUI::IMPORT_FROM_FILE"
-msgstr "Import from File"
-
-msgid "VisuGUI::USE_BUILD_PROGRESS"
-msgstr "Use build progress"
-
-msgid "VisuGUI::MEN_IMPORT_TABLE"
-msgstr "Table from file"
-
-msgid "VisuGUI::MEN_SCALAR_MAP"
-msgstr "Scalar Map"
-
-msgid "VisuGUI::MEN_DEFORMED_SHAPE"
-msgstr "Deformed Shape"
-
-msgid "VisuGUI::MEN_SCALAR_MAP_ON_DEFORMED_SHAPE"
-msgstr "Scalar Map on Deformed Shape"
-
-msgid "VisuGUI::MEN_VISUALIZATION"
-msgstr "Visualization"
-
-msgid "VisuGUI::TOOL_IMPORT"
-msgstr "Import Toolbar"
-
-msgid "VisuGUI::TOOL_VISUALISATION"
-msgstr "Visualization Toolbar"
-
-msgid "VisuGUI::TOOL_REPRESENTATION"
-msgstr "Representation Toolbar"
-
-msgid "VisuGUI::MEN_SHOW_ANIMATION"
-msgstr "Show..."
-
-msgid "VisuGUI::MEN_PARALLEL_ANIMATION"
-msgstr "Parallel Animation..."
-
-msgid "VisuGUI::MEN_SUCCCESSIVE_ANIMATION"
-msgstr "Successive Animation..."
-
-msgid "PARALLEL_ANIMATION"
-msgstr "Parallel Animation"
-
-msgid "SUCCESSIVE_ANIMATION"
-msgstr "Successive Animation"
-
-msgid "VisuGUI::MEN_CELL_COLOR"
-msgstr "Cell color"
-
-msgid "VisuGUI::MEN_CLEAR_CONTAINER"
-msgstr "Clear"
-
-msgid "VisuGUI::MEN_COLOR"
-msgstr "Color..."
-
-msgid "VisuGUI::MEN_CREATE_CURVES"
-msgstr "Create Curves"
-
-msgid "VisuGUI::MEN_CREATE_MANY_PRS"
-msgstr "Create Presentations"
-
-msgid "VisuGUI::MEN_CREATE_PLOT2D"
-msgstr "Create Plot2d View"
-
-msgid "VisuGUI::MEN_CREATE_PRS"
-msgstr "Create Presentation"
-
-msgid "VisuGUI::MEN_CREATE_TABLE"
-msgstr "Create Table"
-
-msgid "VisuGUI::MEN_CURVE_PROPS"
-msgstr "Properties..."
-
-msgid "VisuGUI::MEN_CUT_LINES"
-msgstr "Cut Lines"
-
-msgid "VisuGUI::MEN_CUT_PLANES"
-msgstr "Cut Planes"
-
-msgid "VisuGUI::MEN_SHOW"
-msgstr "Show"
-
-msgid "VisuGUI::MEN_DISPLAY_ONLY"
-msgstr "Show Only "
-
-msgid "VisuGUI::MEN_EDGE_COLOR"
-msgstr "Edge Color"
-
-msgid "VisuGUI::MEN_EDIT_CONTAINER"
-msgstr "Edit..."
-
-msgid "VisuGUI::MEN_EDIT_PRS"
-msgstr "Edit..."
-
-msgid "VisuGUI::MEN_HIDE"
-msgstr "Hide"
-
-msgid "VisuGUI::MEN_EXPORT_TABLE"
-msgstr "Export Table"
-
-msgid "VisuGUI::MEN_INSIDEFRAME"
-msgstr "Insideframe"
-
-msgid "VisuGUI::MEN_ISO_SURFACES"
-msgstr "Iso Surfaces"
-
-msgid "VisuGUI::MEN_LINE_WIDTH"
-msgstr "Line Width"
-
-msgid "VisuGUI::MEN_OPACITY"
-msgstr "Opacity"
-
-msgid "VisuGUI::MEN_POINTS"
-msgstr "Points"
-
-msgid "VisuGUI::MEN_PROPERTIES"
-msgstr "Properties"
-
-msgid "VisuGUI::MEN_RENAME"
-msgstr "Rename..."
-
-msgid "VisuGUI::MEN_RENAME_CONTAINER"
-msgstr "Rename..."
-
-msgid "VisuGUI::MEN_RENAME_TABLE"
-msgstr "Rename..."
-
-msgid "VisuGUI::MEN_REPRESENTATION"
-msgstr "Representation"
-
-msgid "VisuGUI::MEN_SELECTION_INFO"
-msgstr "Selection Info..."
-
-msgid "VisuGUI::MEN_SHOW_TABLE"
-msgstr "Show Table"
-
-msgid "VisuGUI::MEN_SHRINK"
-msgstr "Shrink"
-
-msgid "VisuGUI::MEN_SHADING"
-msgstr "Shading On"
-
-msgid "VisuGUI::MEN_NOSHADING"
-msgstr "Shading Off"
-
-msgid "VisuGUI::MEN_STREAM_LINES"
-msgstr "Stream Lines"
-
-msgid "VisuGUI::MEN_SURFACE"
-msgstr "Surface"
-
-msgid "VisuGUI::MEN_SURFACEFRAME"
-msgstr "Surfaceframe"
-
-msgid "VisuGUI::MEN_SWEEP"
-msgstr "Sweep"
-
-msgid "VisuGUI::MEN_UNSHRINK"
-msgstr "Unshrink"
-
-msgid "VisuGUI::MEN_VECTORS"
-msgstr "Vectors"
-
-msgid "VisuGUI::MEN_WIREFRAME"
-msgstr "Wireframe"
-
-msgid "VisuGUI::MEN_DELETE_VIEWPARAMS"
-msgstr "Delete view parameters"
-
-msgid "VisuGUI::MEN_RESTORE_VIEWPARAMS"
-msgstr "Restore view parameters"
-
-msgid "VisuGUI::MEN_SAVE_VIEWPARAMS"
-msgstr "Save view parameters"
-
-msgid "VisuGUI::MEN_COPY_PRS"
-msgstr "Copy"
-
-msgid "VisuGUI::MEN_SELECTION"
-msgstr "Selection"
-
-msgid "VisuGUI::MEN_DISPLAY_SELECTION"
-msgstr "Display Selection"
-
-msgid "VisuGUI::MEN_ERASE_ALL"
-msgstr "Hide All"
-
-msgid "VisuGUI::MEN_SCALING"
-msgstr "Scaling"
-
-msgid "VisuGUI::MEN_CUBE_AXES"
-msgstr "Graduated axes"
-
-msgid "VisuGUI::MEN_GLOBAL_SELECTION"
-msgstr "Global Selection"
-
-msgid "VisuGUI::MEN_PARTIAL_SELECTION"
-msgstr "Partial Selection"
-
-msgid "VisuGUI::MEN_IMPORT_MED_STRUCTURE"
-msgstr "Import Structure"
-
-msgid "VisuGUI::MEN_IMPORT_MED_TIMESTAMP"
-msgstr "Import TimeStamp"
-
-msgid "VisuGUI::MEN_IMPORT_MED_FIELD"
-msgstr "Import Field"
-
-msgid "VisuGUI::MEN_LOAD_COMPONENT_DATA"
-msgstr "Load Component Data"
-
-msgid "VisuGUI::MEN_DELETE_OBJS"
-msgstr "Delete"
-
-msgid "VisuGUI::MEN_PLOT_3D"
-msgstr "Plot3D"
-
-msgid "VisuGUI::MEN_TRANSLATE_PRS"
-msgstr "Translate Presentation"
-
-msgid "VisuGUI::MEN_CLIPPING"
-msgstr "Clipping planes"
-
-msgid "VisuGUI::MEN_MERGE_SCALAR_BARS"
-msgstr "Merge Scalar Range"
-
-msgid "VisuGUI::MEN_FREE_SCALAR_BARS"
-msgstr "Use Field Range"
-
-msgid "VisuGUI::MEN_ARRANGE_ACTORS"
-msgstr "Arrange Actors"
-
-msgid "VisuGUI::MEN_PLOT3D_FROM_CUTPLANE"
-msgstr "Plot3d"
-
-msgid "VisuGUI::MEN_CACHE_PROPERTIES"
-msgstr "Properties"
-
-
-msgid "VisuGUI::ERR_ERROR_DURING_EXPORT"
-msgstr "Error has been occured during exporting to file"
-
-msgid "VisuGUI::ERR_ACTIVATE_VIEW3D"
-msgstr "Please activate 3D view before"
-
-msgid "VisuGUI::ERR_SCALARBAR_PARAMS"
-msgstr "Warning! The parameters is incorrect"
-
-msgid "VisuGUI::FLT_ALL_FILES"
-msgstr "All Files (*.*)"
-
-msgid "VisuGUI::FLT_MED_FILES"
-msgstr "MED Files (*.med)"
-
-msgid "VisuGUI::FLT_DISTRIBUTED_MED_FILES"
-msgstr "Distributed MED Files (*_maitre.med)"
-
-msgid "VisuGUI::FLT_TABLE_FILES"
-msgstr "Tables (*.xls *.txt *.tab)"
-
-
-msgid "VisuGUI::DLG_OPACITY_TITLE"
-msgstr "Opacity"
-
-msgid "VisuGUI::DLG_OPACITY_CMT1"
-msgstr "Set value between"
-
-msgid "VisuGUI::DLG_OPACITY_CMT2"
-msgstr "0 (transparent) and 100 (opaque)"
-
-msgid "VisuGUI::DLG_LINEWIDTH_TITLE"
-msgstr "Line Width"
-
-msgid "VisuGUI::DLG_LINEWIDTH_CMT1"
-msgstr "Set value between"
-
-msgid "VisuGUI::DLG_LINEWIDTH_CMT2"
-msgstr "1 (thin) and 10 (thick)"
-
-
-#: VisuGUI_CursorDlg.cxx
-
-msgid "VisuGUI_CursorDlg::&OK"
-msgstr ""
-
-msgid "VisuGUI_CursorDlg::&Cancel"
-msgstr ""
-
-msgid "VisuGUI_CursorDlg::TextLabel1"
-msgstr "Set value between"
-
-msgid "VisuGUI_CursorDlg::TextLabel2"
-msgstr "minimal and maximal"
-
-
-#: VisuGUI_CutLinesDlg.cxx
-
-msgid "VisuGUI_CutLinesDlg::LBL_INVERT_CURVES"
-msgstr "Invert all curves"
-
-msgid "VisuGUI_CutLinesDlg::LBL_ABSOLUTE_LENGTH"
-msgstr "Use absolute length"
-
-msgid "VisuGUI_CutLinesDlg::LBL_GENERATE_CURVES"
-msgstr "Generate Curves"
-
-msgid "VisuGUI_CutLinesDlg::LBL_GENERATE_TABLE"
-msgstr "Generate Data Table"
-
-msgid "VisuGUI_CutLinesDlg::LBL_LINES_CUT"
-msgstr "Cut planes"
-#?msgstr "Cut lines"
-
-msgid "VisuGUI_CutLinesDlg::LBL_LINES_PLANE"
-msgstr "Plane of lines"
-
-msgid "VisuGUI_CutLinesDlg::LBL_NB_PLANS"
-msgstr "Number of planes:"
-
-msgid "VisuGUI_CutLinesDlg::LBL_POS"
-msgstr "Displacement (0...1):"
-
-msgid "VisuGUI_CutLinesDlg::LBL_ROTATION"
-msgstr "Rotations"
-
-msgid "VisuGUI_CutLinesDlg::LBL_ROT_X"
-msgstr "Rotation around X (Y to Z):"
-
-msgid "VisuGUI_CutLinesDlg::LBL_ROT_Y"
-msgstr "Rotation around Y (Z to X):"
-
-msgid "VisuGUI_CutLinesDlg::LBL_ROT_Z"
-msgstr "Rotation around Z (X to Y):"
-
-msgid "VisuGUI_CutLinesDlg::LBL_SHOW_PREVIEW"
-msgstr "Show preview"
-
-msgid "VisuGUI_CutLinesDlg::TXT_ORIENTATION"
-msgstr "Orientation"
-
-msgid "VisuGUI_CutLinesDlg::BASE_PLANE_POS"
-msgstr "Base plane position"
-
-msgid "VisuGUI_CutLinesDlg::SET_DEFAULT"
-msgstr "Set default"
-
-msgid "VisuGUI_CutLinesDlg::PARALLEL_XOY"
-msgstr "|| X-Y"
-
-msgid "VisuGUI_CutLinesDlg::PARALLEL_YOZ"
-msgstr "|| Y-Z"
-
-msgid "VisuGUI_CutLinesDlg::PARALLEL_ZOX"
-msgstr "|| Z-X"
-
-
-#: VisuGUI_CutPlanesDlg.cxx
-
-msgid "VisuGUI_CutPlanesDlg::&Cancel"
-msgstr ""
-
-msgid "VisuGUI_CutPlanesDlg::&OK"
-msgstr ""
-
-msgid "VisuGUI_CutPlanesPane::PARALLEL_XOY"
-msgstr "// X-Y"
-
-msgid "VisuGUI_CutPlanesPane::PARALLEL_YOZ"
-msgstr "// Y-Z"
-
-msgid "VisuGUI_CutPlanesPane::PARALLEL_ZOX"
-msgstr "// Z-X"
-
-msgid "VisuGUI_CutPlanesPane::LBL_POS"
-msgstr "Displacement (0...1):"
-
-msgid "VisuGUI_CutPlanesPane::LBL_SHOW_PREVIEW"
-msgstr "Show preview"
-
-msgid "VisuGUI_CutPlanesPane::LBL_NB_PLANS"
-msgstr "Number of planes:"
-
-msgid "VisuGUI_CutPlanesPane::TXT_ORIENTATION"
-msgstr "Orientation"
-
-msgid "VisuGUI_CutPlanesPane::LBL_ROT_X"
-msgstr "Rotation around X (Y to Z):"
-
-msgid "VisuGUI_CutPlanesPane::LBL_ROT_Y"
-msgstr "Rotation around Y (Z to X):"
-
-msgid "VisuGUI_CutPlanesPane::LBL_ROT_Z"
-msgstr "Rotation around Z (X to Y):"
-
-msgid "VisuGUI_CutPlanesPane::LBL_ROTATION"
-msgstr "Rotations"
-
-
-#: VisuGUI_DeformedShapeDlg.cxx
-
-msgid "VisuGUI_DeformedShapeDlg::&Cancel"
-msgstr ""
-
-msgid "VisuGUI_DeformedShapeDlg::&OK"
-msgstr ""
-
-msgid "VisuGUI_DeformedShapeDlg::DLG_TITLE"
-msgstr "Deformed Shape"
-
-msgid "VisuGUI_DeformedShapeDlg::DEFORMED_SHAPE_TAB"
-msgstr "Deformed Shape"
-
-msgid "VisuGUI_DeformedShapeDlg::SCALAR_BAR_TAB"
-msgstr "Scalar Bar"
-
-msgid "VisuGUI_DeformedShapeDlg::INPUT_TAB"
-msgstr "Input"
-
-msgid "VisuGUI_DeformedShapeDlg::MAGNITUDE_COLORING"
-msgstr "Magnitude coloring"
-
-msgid "VisuGUI_DeformedShapeDlg::SCALE_FACTOR"
-msgstr "Scale Factor:"
-
-
-#: VisuGUI_ScalarMapOnDeformedShapeDlg.cxx
-
-msgid "VisuGUI_ScalarMapOnDeformedShapeDlg::DLG_TITLE"
-msgstr "Scalar Map on Deformed Shape"
-
-msgid "VisuGUI_ScalarMapOnDeformedShapeDlg::&Cancel"
-msgstr ""
-
-msgid "VisuGUI_ScalarMapOnDeformedShapeDlg::&OK"
-msgstr ""
-
-msgid "VisuGUI_ScalarMapOnDeformedShapeDlg::SCALAR_MAP_ON_DEFORMED_SHAPE_TAB"
-msgstr "Scalar Map on Deformed Shape"
-                                            
-msgid "VisuGUI_ScalarMapOnDeformedShapeDlg::SCALAR_BAR_TAB"
-msgstr "Scalar Bar"
-
-msgid "VisuGUI_ScalarMapOnDeformedShapeDlg::INPUT_TAB"
-msgstr "Input"
-
-msgid "VisuGUI_ScalarMapOnDeformedShapeDlg::SCALE_FACTOR"
-msgstr "Scale Factor:"
-
-msgid "VisuGUI_ScalarMapOnDeformedShapeDlg::FIELD_ITEM"
-msgstr "Scalar Field:"
-
-msgid "VisuGUI_ScalarMapOnDeformedShapeDlg::TIMESTAMP_ITEM"
-msgstr "Current Time Stamp:"
-
-#: VisuGUI_EditContainerDlg.cxx
-
-msgid "VisuGUI_EditContainerDlg::&Cancel"
-msgstr ""
-
-msgid "VisuGUI_EditContainerDlg::&OK"
-msgstr ""
-
-msgid "VisuGUI_EditContainerDlg::LBL_STUDY"
-msgstr "Study"
-
-msgid "VisuGUI_EditContainerDlg::LBL_CONTAINER"
-msgstr "Container"
-
-msgid "VisuGUI_EditContainerDlg::TXT_TABLE"
-msgstr "Table"
-
-msgid "VisuGUI_EditContainerDlg::TXT_CURVE"
-msgstr "Curve"
-
-
-#: VisuGUI_FileDlg.cxx
-
-msgid "VisuGUI_FileDlg::FULL_LOAD"
-msgstr "Full loading for current file"
-
-
-#: VisuGUI_IsoSurfacesDlg.cxx
-
-msgid "VisuGUI_IsoSurfacesDlg::&OK"
-msgstr ""
-
-msgid "VisuGUI_IsoSurfacesDlg::&Cancel"
-msgstr ""
-
-msgid "VisuGUI_IsoSurfPane::MSG_MINMAX_VALUES"
-msgstr "Min value can not be higher or equal to Max value"
-
-msgid "VisuGUI_IsoSurfPane::MAX_VALUE"
-msgstr "Maximum value:"
-
-msgid "VisuGUI_IsoSurfPane::MIN_VALUE"
-msgstr "Minimum value:"
-
-msgid "VisuGUI_IsoSurfPane::NB_SURFACES"
-msgstr "Number of surfaces:"
-
-msgid "VisuGUI_IsoSurfacesDlg::DEFINE_ISOSURFACES"
-msgstr "Iso Surfaces Definition"
-
-msgid "VisuGUI_IsoSurfPane::SHOW_LEVEL_LABELS"
-msgstr "Show level labels"
-
-
-#: VisuGUI_NonIsometricDlg.cxx
-
-msgid "VisuGUI_NonIsometricDlg::O&K"
-msgstr ""
-
-msgid "VisuGUI_NonIsometricDlg::&Apply"
-msgstr ""
-
-msgid "VisuGUI_NonIsometricDlg::&Cancel"
-msgstr ""
-
-msgid "VisuGUI_NonIsometricDlg::&Reset"
-msgstr ""
-
-msgid "VisuGUI_NonIsometricDlg::DLG_TITLE"
-msgstr "Scaling"
-
-msgid "VisuGUI_NonIsometricDlg::LBL_X"
-msgstr "X :"
-
-msgid "VisuGUI_NonIsometricDlg::LBL_Y"
-msgstr "Y :"
-
-msgid "VisuGUI_NonIsometricDlg::LBL_Z"
-msgstr "Z :"
-
-
-#: VisuGUI_InputPane.cxx
-
-msgid "VisuGUI_InputPane::PRS_DATA_SOUIRCE"
-msgstr "Data Source"
-
-msgid "VisuGUI_InputPane::MED_FILE"
-msgstr "Source File :"
-
-msgid "VisuGUI_InputPane::MESH"
-msgstr "Mesh :"
-
-msgid "VisuGUI_InputPane::ENTITY"
-msgstr "Entity :"
-
-msgid "VisuGUI_InputPane::FIELD"
-msgstr "Field :"
-
-msgid "VisuGUI_InputPane::TIME_STAMP"
-msgstr "Time Stamp :"
-
-msgid "VisuGUI_InputPane::REINITIALIZE"
-msgstr "Auto Update"
-
-msgid "PRS_ON_GROUPS"
-msgstr "Use Only Groups"
-
-
-#: VisuGUI_ScalarBarDlg.cxx
-
-msgid "VisuGUI_ScalarBarDlg::&OK"
-msgstr ""
-
-msgid "VisuGUI_ScalarBarDlg::&Cancel"
-msgstr ""
-
-msgid "VisuGUI_ScalarBarDlg::DLG_PREF_TITLE"
-msgstr "Scalar Bar Preferences"
-
-msgid "VisuGUI_ScalarBarDlg::DLG_PROP_TITLE"
-msgstr "Scalar Bar Properties"
-
-msgid "VisuGUI_ScalarBarPane::SCALAR_RANGE_GRP"
-msgstr "Scalar range"
-
-msgid "VisuGUI_ScalarBarPane::LOGARITHMIC_SCALING"
-msgstr "Logarithmic scaling"
-
-msgid "VisuGUI_ScalarBarPane::FIELD_RANGE_BTN"
-msgstr "Use field range"
-
-msgid "VisuGUI_ScalarBarPane::IMPOSED_RANGE_BTN"
-msgstr "Use imposed range"
-
-msgid "VisuGUI_ScalarBarPane::LBL_MIN"
-msgstr "Min:"
-
-msgid "VisuGUI_ScalarBarPane::LBL_MAX"
-msgstr "Max:"
-
-msgid "VisuGUI_ScalarBarPane::COLORS_LABELS_GRP"
-msgstr "Colors and labels"
-
-msgid "VisuGUI_ScalarBarPane::LBL_NB_COLORS"
-msgstr "Nb. of colors:"
-
-msgid "VisuGUI_ScalarBarPane::LBL_NB_LABELS"
-msgstr "Nb. of labels:"
-
-msgid "VisuGUI_ScalarBarPane::ORIENTATION_GRP"
-msgstr "Orientation"
-
-msgid "VisuGUI_ScalarBarPane::VERTICAL_BTN"
-msgstr "Vertical"
-
-msgid "VisuGUI_ScalarBarPane::HORIZONTAL_BTN"
-msgstr "Horizontal"
-
-msgid "VisuGUI_ScalarBarPane::ORIGIN_GRP"
-msgstr "Origin"
-
-msgid "VisuGUI_ScalarBarPane::LBL_X"
-msgstr "X:"
-
-msgid "VisuGUI_ScalarBarPane::LBL_Y"
-msgstr "Y:"
-
-msgid "VisuGUI_ScalarBarPane::LBL_SHOW_PREVIEW"
-msgstr "Show preview"
-
-msgid "VisuGUI_ScalarBarPane::DIMENSIONS_GRP"
-msgstr "Dimensions"
-
-msgid "VisuGUI_ScalarBarPane::LBL_WIDTH"
-msgstr "Width:"
-
-msgid "VisuGUI_ScalarBarPane::LBL_HEIGHT"
-msgstr "Height:"
-
-msgid "VisuGUI_ScalarBarPane::SAVE_DEFAULT_CHK"
-msgstr "Save as default values"
-
-msgid "VisuGUI_ScalarBarPane::MSG_MINMAX_VALUES"
-msgstr "Min value can not be higher or equal to Max value"
-
-msgid "VisuGUI_ScalarBarPane::WRN_LOGARITHMIC_RANGE"
-msgstr "Logarithmic scaling: use imposed range values > 0"
-
-msgid "VisuGUI_ScalarBarPane::WRN_LOGARITHMIC_FIELD_RANGE"
-msgstr "Logarithmic scaling: field range contains negative values, use imposed range instead"
-
-msgid "VisuGUI_TextPrefDlg::&OK"
-msgstr ""
-
-msgid "VisuGUI_TextPrefDlg::&Cancel"
-msgstr ""
-
-msgid "VisuGUI_TextPrefDlg::TIT_TEXT_PREF"
-msgstr "Text properties"
-
-msgid "VisuGUI_TextPrefDlg::LBL_TITLE"
-msgstr "Title"
-
-msgid "VisuGUI_TextPrefDlg::LBL_BOLD"
-msgstr "Bold"
-
-msgid "VisuGUI_TextPrefDlg::LBL_ITALIC"
-msgstr "Italic"
-
-msgid "VisuGUI_TextPrefDlg::LBL_SHADOW"
-msgstr "Shadow"
-
-msgid "VisuGUI_TextPrefDlg::LBL_LABELS"
-msgstr "Labels"
-
-msgid "VisuGUI_BarPrefDlg::&OK"
-msgstr ""
-
-msgid "VisuGUI_BarPrefDlg::&Cancel"
-msgstr ""
-
-msgid "VisuGUI_BarPrefDlg::TIT_BAR_PREF"
-msgstr "Bar properties"
-
-msgid "VisuGUI_BarPrefDlg::LBL_TITLE_W"
-msgstr "Title width (%)"
-
-msgid "VisuGUI_BarPrefDlg::LBL_TITLE_H"
-msgstr "Title height (%)"
-
-msgid "VisuGUI_BarPrefDlg::LBL_LABEL_W"
-msgstr "Label width (%)"
-
-msgid "VisuGUI_BarPrefDlg::LBL_LABEL_H"
-msgstr "Label height (%)"
-
-msgid "VisuGUI_BarPrefDlg::LBL_BAR_W"
-msgstr "Bar width (%)"
-
-msgid "VisuGUI_BarPrefDlg::LBL_BAR_H"
-msgstr "Bar height (%)"
-
-msgid "VisuGUI_BarPrefDlg::LBL_SHOW_UNITS"
-msgstr "Show units"
-
-msgid "VisuGUI_BarPrefDlg::LBL_UNITS_FORMAT"
-msgstr "Format:"
-
-msgid "VisuGUI_BarPrefDlg::MSG_LABEL_FORMAT"
-msgstr "Labels format is invalid."
-
-msgid "VisuGUI_BarPrefDlg::MSG_BIG_SCALE"
-msgstr "The common (Title, Label, Bar) width or height should not be greater then 100%."
-
-msgid "VisuGUI_BarPrefDlg::AUTO"
-msgstr "auto"
-
-
-#: VisuGUI_StreamLinesDlg.cxx
-
-msgid "VisuGUI_StreamLinesDlg::&OK"
-msgstr ""
-
-msgid "VisuGUI_StreamLinesDlg::&Cancel"
-msgstr ""
-
-msgid "VisuGUI_StreamLinesDlg::DLG_TITLE"
-msgstr "Stream lines Preferences"
-
-msgid "VisuGUI_StreamLinesDlg::SOURCE_GRP"
-msgstr "Source"
-
-msgid "VisuGUI_StreamLinesDlg::LBL_SOURCE_TYPE"
-msgstr "Source type"
-
-msgid "VisuGUI_StreamLinesDlg::LBL_USED_POINTS"
-msgstr "Used points (0..1)"
-
-msgid "VisuGUI_StreamLinesDlg::LBL_STEP_LENGTH"
-msgstr "Step Length"
-
-msgid "VisuGUI_StreamLinesDlg::LBL_INTEGRATION_STEP"
-msgstr "Integration Step"
-
-msgid "VisuGUI_StreamLinesDlg::LBL_PROPAGATION_TIME"
-msgstr "Propagation Time"
-
-msgid "VisuGUI_StreamLinesDlg::LBL_DIRECTION"
-msgstr "Direction"
-
-msgid "VisuGUI_StreamLinesDlg::MAGNITUDE_COLORING_CHK"
-msgstr "Magnitude coloring"
-
-msgid "VisuGUI_StreamLinesDlg::USE_COLOR_BTN"
-msgstr "Use Color"
-
-
-#: VisuGUI_SweepPrefDlg.cxx
-
-msgid "VisuGUI_SweepPrefDlg::&OK"
-msgstr ""
-
-msgid "VisuGUI_SweepPrefDlg::&Cancel"
-msgstr ""
-
-msgid "VisuGUI_SweepPrefDlg::DLG_TITLE"
-msgstr "Sweeping Preferences"
-
-msgid "VisuGUI_SweepPrefDlg::LBL_TIME_STEP"
-msgstr "Time step (second):"
-
-msgid "VisuGUI_SweepPrefDlg::LBL_NB_CYCLES"
-msgstr "Number of cycles:"
-
-msgid "VisuGUI_SweepPrefDlg::LBL_NB_STEPS"
-msgstr "Number of steps:"
-
-
-#: VisuGUI_TimeAnimation.cxx
-
-msgid "VisuGUI_TimeAnimationDlg::&OK"
-msgstr ""
-
-msgid "VisuGUI_TimeAnimationDlg::ERROR"
-msgstr "Error"
-
-msgid "VisuGUI_TimeAnimationDlg::MSG_NO_ANIMATIONDATA"
-msgstr "There is no data for animation"
-
-msgid "VisuGUI_TimeAnimationDlg::MSG_NO_AVI_MAKER"
-msgstr "Tool jpeg2yuv, necessary for AVI recording, is not available.\nPlease, refer to the documentation."
-
-
-#: VisuGUI_VectorsDlg.cxx
-
-msgid "VisuGUI_VectorsDlg::&OK"
-msgstr ""
-
-msgid "VisuGUI_VectorsDlg::&Cancel"
-msgstr ""
-
-msgid "VisuGUI_VectorsDlg::DLG_TITLE"
-msgstr "Vector Field Representation"
-
-msgid "VisuGUI_VectorsDlg::LBL_SCALE_FACTOR"
-msgstr "Scale factor:"
-
-msgid "VisuGUI_VectorsDlg::LBL_LINE_WIDTH"
-msgstr "Line width:"
-
-msgid "VisuGUI_VectorsDlg::MAGNITUDE_COLORING_CHK"
-msgstr "Magnitude coloring"
-
-msgid "VisuGUI_VectorsDlg::SEL_COLOR_BTN"
-msgstr "Select Color"
-
-msgid "VisuGUI_VectorsDlg::USE_GLYPHS_CHK"
-msgstr "Use glyphs"
-
-msgid "VisuGUI_VectorsDlg::GLYPH_TYPE_GRP"
-msgstr "Glyph type"
-
-msgid "VisuGUI_VectorsDlg::ARROWS_BTN"
-msgstr "Arrows"
-
-msgid "VisuGUI_VectorsDlg::CONES2_BTN"
-msgstr "Cones (2)"
-
-msgid "VisuGUI_VectorsDlg::CONES6_BTN"
-msgstr "Cones (6)"
-
-msgid "VisuGUI_VectorsDlg::GLYPH_POSITION_GRP"
-msgstr "Glyph position"
-
-msgid "VisuGUI_VectorsDlg::TAIL_BTN"
-msgstr "Tail"
-
-msgid "VisuGUI_VectorsDlg::CENTER_BTN"
-msgstr "Center"
-
-msgid "VisuGUI_VectorsDlg::HEAD_BTN"
-msgstr "Head"
-
-
-#: VisuGUI_NameDlg.cxx
-
-msgid "VisuGUI_NameDlg::TLT_RENAME"
-msgstr "Rename"
-
-msgid "VisuGUI_NameDlg::NAME_LBL"
-msgstr "Name: "
-
-#: VisuGUI_TableDlg.cxx
-
-msgid "VisuGUI_TableDlg::VIEW_TABLE_TLT"
-msgstr "View Table"
-
-msgid "VisuGUI_TableDlg::EDIT_TABLE_TLT"
-msgstr "Edit Table"
-
-msgid "VisuGUI_TableDlg::TABLE_OF_INTEGER_TLT"
-msgstr "Table of integer"
-
-msgid "VisuGUI_TableDlg::TABLE_OF_REAL_TLT"
-msgstr "Table of real"
-
-msgid "VisuGUI_TableDlg::ERR_TABLE_NOT_AVAILABLE"
-msgstr "Table is not available"
-
-msgid "VisuGUI_TableWidget::UNITS_TLT"
-msgstr "Units"
-
-msgid "VisuGUI_TableWidget::ADD_ROW_BTN"
-msgstr "Add Row"
-
-msgid "VisuGUI_TableWidget::REMOVE_ROW_BTN"
-msgstr "Remove Row(s)"
-
-msgid "VisuGUI_TableWidget::ADD_COLUMN_BTN"
-msgstr "Add Column"
-
-msgid "VisuGUI_TableWidget::REMOVE_COLUMN_BTN"
-msgstr "Remove Column(s)"
-
-msgid "VisuGUI_TableWidget::ADJUST_CELLS_BTN"
-msgstr "Adjust Cells"
-
-msgid "VisuGUI_TableWidget::SELECT_ALL_BTN"
-msgstr "Select All"
-
-msgid "VisuGUI_TableWidget::CLEAR_BTN"
-msgstr "Clear"
-
-msgid "VisuGUI_TableWidget::SET_TITLE_TLT"
-msgstr "Set title"
-
-msgid "VisuGUI_TableWidget::TITLE_LBL"
-msgstr "Title:"
-
-# -------------- Clipping --------------
-
-#Title
-msgid "VisuGUI_ClippingDlg::TITLE"
-msgstr "Change Clipping"
-
-msgid "VisuGUI_ClippingDlg::GRP_PLANES"
-msgstr "Clipping planes"
-
-msgid "VisuGUI_ClippingDlg::BUT_NEW"
-msgstr "New"
-
-msgid "VisuGUI_ClippingDlg::BUT_DELETE"
-msgstr "Delete"
-
-msgid "VisuGUI_ClippingDlg::GRP_PARAMETERS"
-msgstr "Parameters"
-
-msgid "VisuGUI_ClippingDlg::TAB_NON_STRUCTURED"
-msgstr "Non structured"
-
-msgid "VisuGUI_ClippingDlg::TAB_IJK_STRUCTURED"
-msgstr "IJK (Structured)"
-
-msgid "VisuGUI_ClippingDlg::SHOW_PREVIEW_CHK"
-msgstr "Show preview"
-
-msgid "VisuGUI_ClippingDlg::AUTO_APPLY_CHK"
-msgstr "Auto Apply"
-
-msgid "VisuGUI_ClippingDlg::PARALLEL_XOY_COMBO_ITEM"
-msgstr "|| X-Y"
-
-msgid "VisuGUI_ClippingDlg::PARALLEL_YOZ_COMBO_ITEM"
-msgstr "|| Y-Z"
-
-msgid "VisuGUI_ClippingDlg::PARALLEL_ZOX_COMBO_ITEM"
-msgstr "|| Z-X"
-
-msgid "VisuGUI_ClippingDlg::LBL_ORIENTATION"
-msgstr "Orientation"
-
-msgid "VisuGUI_ClippingDlg::LBL_DISTANCE"
-msgstr "Distance"
-
-msgid "VisuGUI_ClippingDlg::LBL_ROTATION_YZ"
-msgstr "Rotation around X (Y to Z):"
-
-msgid "VisuGUI_ClippingDlg::LBL_ROTATION_ZY"
-msgstr "Rotation around X (Z to Y):"
-
-msgid "VisuGUI_ClippingDlg::LBL_ROTATION_ZX"
-msgstr "Rotation around Y (Z to X):"
-
-msgid "VisuGUI_ClippingDlg::LBL_ROTATION_XZ"
-msgstr "Rotation around Y (X to Z):"
-
-msgid "VisuGUI_ClippingDlg::LBL_ROTATION_XY"
-msgstr "Rotation around Z (X to Y):"
-
-msgid "VisuGUI_ClippingDlg::LBL_ROTATION_YX"
-msgstr "Rotation around Z (Y to X):"
-
-msgid "VisuGUI_ClippingDlg::GRP_IJK_AXIS"
-msgstr "Axis"
-
-msgid "VisuGUI_ClippingDlg::I_RADIO_BTN"
-msgstr "I"
-
-msgid "VisuGUI_ClippingDlg::J_RADIO_BTN"
-msgstr "J"
-
-msgid "VisuGUI_ClippingDlg::K_RADIO_BTN"
-msgstr "K"
-
-msgid "VisuGUI_ClippingDlg::LBL_IJK_INDEX"
-msgstr "Index (from 0 to ...)"
-
-msgid "VisuGUI_ClippingDlg::LBL_IJK_INDEX_TO_arg"
-msgstr "Index (from 0 to %1) "
-
-msgid "VisuGUI_ClippingDlg::REVERSE_NORMAL_CHK"
-msgstr "Reverse normal"
-
-msgid "VisuGUI_ClippingDlg::PLANES_COMBO_ITEM_i"
-msgstr "Plane# %1"
-
-msgid "VisuGUI_ClippingDlg::PLANES_COMBO_ITEM_no"
-msgstr "No planes"
-
-msgid "VisuGUI_ClippingDlg::WRN_EMPTY_RESULTING_PRS"
-msgstr "Impossible to use given clipping planes because of VTK restrictions. \n Please, provide non-empty resulting presentation."
-
-# -------------- Plot 3D --------------
-
-msgid "VisuGUI_Plot3DDlg::TITLE"
-msgstr "Plot3D Definition"
-
-msgid "VisuGUI_Plot3DDlg::PLOT3D_TAB_TITLE"
-msgstr "Plot 3D"
-
-msgid "VisuGUI_Plot3DDlg::SCALAR_BAR_TAB_TITLE"
-msgstr "Scalar Bar"
-
-msgid "VisuGUI_Plot3DDlg::INPUT_TAB_TITLE"
-msgstr "Input"
-
-msgid "VisuGUI_Plot3DPane::ORIENTATION"
-msgstr "Orientation"
-
-msgid "VisuGUI_Plot3DPane::ROTATIONS"
-msgstr "Rotations"
-
-msgid "VisuGUI_Plot3DPane::ROTATION_X"
-msgstr "Rotation around X (Y to Z):"
-
-msgid "VisuGUI_Plot3DPane::ROTATION_Y"
-msgstr "Rotation around Y (Z to X):"
-
-msgid "VisuGUI_Plot3DPane::ROTATION_Z"
-msgstr "Rotation around Z (X to Y):"
-
-msgid "VisuGUI_Plot3DPane::POSITION"
-msgstr "Position"
-
-msgid "VisuGUI_Plot3DPane::POSITION_VALUE"
-msgstr "Value: "
-
-msgid "VisuGUI_Plot3DPane::RELATIVE"
-msgstr "Relative"
-
-msgid "VisuGUI_Plot3DPane::SCALE"
-msgstr "Scale Factor:"
-
-msgid "VisuGUI_Plot3DPane::PRESENTATION_TYPE"
-msgstr "Presentation type"
-
-msgid "VisuGUI_Plot3DPane::SURFACE"
-msgstr "Surface"
-
-msgid "VisuGUI_Plot3DPane::CONTOUR"
-msgstr "Contour"
-
-msgid "VisuGUI_Plot3DPane::NUMBER_CONTOURS"
-msgstr "Number of contours:"
-
-msgid "VisuGUI_Plot3DPane::PREVIEW"
-msgstr "Preview cutting plane"
-
-# --------------------------------------
-
-msgid "TIT_OFFSETDLG"
-msgstr "Translate Presentation"
-
-msgid "BTN_RESET"
-msgstr "Reset"
-
-# --------------------------------------
-
-msgid "VisuGUI_CubeAxesDlg::CAPTION"
-msgstr "Graduated axes"
-
-msgid "VisuGUI_AxisWg::AXIS_NAME"
-msgstr "Axis name"
-
-msgid "VisuGUI_AxisWg::IS_VISIBLE"
-msgstr "Is visible"
-
-msgid "VisuGUI_CubeAxesDlg::X_AXIS"
-msgstr "X axis"
-
-msgid "VisuGUI_CubeAxesDlg::Y_AXIS"
-msgstr "Y axis"
-
-msgid "VisuGUI_CubeAxesDlg::Z_AXIS"
-msgstr "Z axis"
-
-msgid "VisuGUI_AxisWg::NAME"
-msgstr "Name"
-
-msgid "VisuGUI_AxisWg::FONT"
-msgstr "Font"
-
-msgid "VisuGUI_AxisWg::LABELS"
-msgstr "Labels"
-
-msgid "VisuGUI_AxisWg::NUMBER"
-msgstr "Number"
-
-msgid "VisuGUI_AxisWg::OFFSET"
-msgstr "Offset"
-
-msgid "VisuGUI_AxisWg::TICK_MARKS"
-msgstr "Tick marks"
-
-msgid "VisuGUI_AxisWg::LENGTH"
-msgstr "Length"
-
-msgid "VisuGUI_FontWg::ARIAL"
-msgstr "Arial"
-
-msgid "VisuGUI_FontWg::COURIER"
-msgstr "Courier"
-
-msgid "VisuGUI_FontWg::TIMES"
-msgstr "Times"
-
-msgid "VisuGUI_FontWg::BOLD"
-msgstr "Bold"
-
-msgid "VisuGUI_FontWg::ITALIC"
-msgstr "Italic"
-
-msgid "VisuGUI_FontWg::SHADOW"
-msgstr "Shadow"
-
-msgid "VisuGUI_CubeAxesDlg::IS_VISIBLE"
-msgstr "Is visible"
-
-
-#: VisuGUI_SetupPlot2dDlg.cxx:71
-msgid "ATTRIBUTES_LBL"
-msgstr "Attributes"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:68
-msgid "AXIS_LBL"
-msgstr "Axis"
-
-msgid "ASSIGNED"
-msgstr "Assigned"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:69
-msgid "DATA_LBL"
-msgstr "Data"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:49
-msgid "TLT_SETUP_PLOT2D"
-msgstr "Setup Plot 2d"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:70
-msgid "UNITS_LBL"
-msgstr "Units"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:445
-msgid "VisuGUI_ItemContainer::H"
-msgstr " H "
-
-#: VisuGUI_SetupPlot2dDlg.cxx:450
-msgid "VisuGUI_ItemContainer::V"
-msgstr " V "
-
-#: VisuGUI_SetupPlot2dDlg.cxx:458
-msgid "VisuGUI_ItemContainer::AUTO_CHECK_LBL"
-msgstr "Auto assign"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:475
-msgid "VisuGUI_ItemContainer::CIRCLE_MARKER_LBL"
-msgstr "Circle"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:482
-msgid "VisuGUI_ItemContainer::CROSS_MARKER_LBL"
-msgstr "Cross"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:467
-msgid "VisuGUI_ItemContainer::DAHSDOTDOT_LINE_LBL"
-msgstr "DashDotDot"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:466
-msgid "VisuGUI_ItemContainer::DASHDOT_LINE_LBL"
-msgstr "DashDot"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:464
-msgid "VisuGUI_ItemContainer::DASH_LINE_LBL"
-msgstr "Dash"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:477
-msgid "VisuGUI_ItemContainer::DIAMOND_MARKER_LBL"
-msgstr "Diamond"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:465
-msgid "VisuGUI_ItemContainer::DOT_LINE_LBL"
-msgstr "Dot"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:478
-msgid "VisuGUI_ItemContainer::DTRIANGLE_MARKER_LBL"
-msgstr "Downward triangle"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:480
-msgid "VisuGUI_ItemContainer::LTRIANGLE_MARKER_LBL"
-msgstr "Leftward triangle"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:462
-msgid "VisuGUI_ItemContainer::NONE_LINE_LBL"
-msgstr "None"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:474
-msgid "VisuGUI_ItemContainer::NONE_MARKER_LBL"
-msgstr "None"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:476
-msgid "VisuGUI_ItemContainer::RECTANGLE_MARKER_LBL"
-msgstr "Rectangle"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:481
-msgid "VisuGUI_ItemContainer::RTRIANGLE_MARKER_LBL"
-msgstr "Rightward triangle"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:463
-msgid "VisuGUI_ItemContainer::SOLID_LINE_LBL"
-msgstr "Solid"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:479
-msgid "VisuGUI_ItemContainer::UTRIANGLE_MARKER_LBL"
-msgstr "Upward triangle"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:483
-msgid "VisuGUI_ItemContainer::XCROSS_MARKER_LBL"
-msgstr "Diagonal cross"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:404
-msgid "VisuGUI_SetupPlot2dDlg::BUT_NO"
-msgstr "No"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:403
-msgid "VisuGUI_SetupPlot2dDlg::BUT_YES"
-msgstr "Yes"
-
-#: VisuGUI_SetupPlot2dDlg.cxx:402
-msgid "VisuGUI_SetupPlot2dDlg::QUE_WANT_SAME_UNITS"
-msgstr "Do you want to choose all items with the same units for vertical axis?"
-
-msgid "INF_VISU"
-msgstr "Post-Pro Info"
-
-msgid "IMPORT_DONE"
-msgstr "Importing is done"
-
-msgid "VisuGUI_Module::MEN_VISUALISATION"
-msgstr "Visualization"
-
-msgid "VisuGUI_Module::TOOL_IMPORT"
-msgstr "Import Toolbar"
-
-msgid "VisuGUI_Module::TOOL_VISUALISATION"
-msgstr "Visualization Toolbar"
-
-msgid "VisuGUI_Module::MEN_SAVE_CONFIGURATION"
-msgstr "Store current configuration"
-
-msgid "VisuGUI_Module::MEN_OVERWRITE_CONFIGURATION"
-msgstr "Overwrite current configuration"
-
-msgid "VisuGUI_Module::MEN_RESTORE_CONFIGURATION"
-msgstr "Restore current configuration"
-
-msgid "VisuGUI_Module::MEN_GAUSS"
-msgstr "Gauss"
-
-msgid "VisuGUI_Module::MEN_GAUSS_NEW_VIEWER"
-msgstr "Points view"
-
-msgid "VisuGUI_Module::MEN_GAUSS_CREATE_PRS"
-msgstr "Gauss Points"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_TAB_TTL"
-msgstr "Gauss Points"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_PRIMITIVE_GROUP_TTL"
-msgstr "Primitive"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_PRIMITIVE_TYPE"
-msgstr "Primitive Type"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_POINTSPRITE"
-msgstr "Point sprite"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_OPENGLPOINT"
-msgstr "OpenGL point"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_GEOMSPHERE"
-msgstr "Geometrical sphere"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_CLAMP"
-msgstr "Maximum Size (Clamp)"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_MAIN_TEXTURE"
-msgstr "Main Texture (16x16)"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_ALPHA_TEXTURE"
-msgstr "Alpha Channel Texture (16x16)"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_ALPHA_THRESHOLD"
-msgstr "Alpha Channel Threshold"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_RESOLUTION"
-msgstr "Geometrical sphere resolution"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_FACE_LIMIT"
-msgstr "Notify when number of faces exceeds"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_SIZE_GROUP_TTL"
-msgstr "Size"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_MIN_SIZE"
-msgstr "Range value for min size (%)"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_MAX_SIZE"
-msgstr "Range value for max size (%)"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_MAGNIFICATION"
-msgstr "Magnification (%)"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_INCREMENT"
-msgstr "+/- Ratio"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_GEOM_GROUP_TTL"
-msgstr "Geometry"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_SIZE"
-msgstr "Size of points (%)"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_COLOR"
-msgstr "Color"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_DEFORMED_SHAPE_GROUP_TTL"
-msgstr "Deformed Shape"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_SCALE_FACTOR"
-msgstr "Scale factor"
-
-msgid "VisuGUI_Module::VISU_GAUSS_SCALAR_BAR_PREF_TAB_TTL"
-msgstr "Gauss Points Scalar Bar"
-
-msgid "VisuGUI_Module::VISU_GAUSS_SCALAR_BAR_PREF_GROUP_TTL"
-msgstr "Gauss Points Scalar Bar"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_ACTIVE_BAR"
-msgstr "Active bar"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_LOCAL"
-msgstr "Local"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_GLOBAL"
-msgstr "Global"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_DISPLAY_GLOBAL"
-msgstr "Display global bar"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_SCALAR_BAR_MODE"
-msgstr "Scalar bar mode"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_BICOLOR"
-msgstr "Bicolor"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_RAINBOW"
-msgstr "Rainbow"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_SPACING"
-msgstr "Spacing"
-
-msgid "VisuGUI_Module::VISU_GAUSS_INSIDE_CURSOR_PREF_TAB_TTL"
-msgstr "Inside Cursor"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_MAGNIFICATION_GROUP_TTL"
-msgstr "Magnification (Inside and Outside)"
-
-msgid "VisuGUI_Module::VISU_GAUSS_OUTSIDE_CURSOR_PREF_TAB_TTL"
-msgstr "Outside Cursor"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_UNIFORM_COLOR"
-msgstr "Uniform Color"
-
-msgid "VisuGUI_Module::VISU_GAUSS_PREF_COLOR_GROUP_TTL"
-msgstr "Color"
-
-msgid "VisuGUI_Module::VISU_PICKING_PREF_TAB_TTL"
-msgstr "Picking"
-
-msgid "VisuGUI_Module::VISU_PICKING_PREF_CURSOR_GROUP_TTL"
-msgstr "Cursor"
-
-msgid "VisuGUI_Module::VISU_PICKING_PREF_CURSOR_SIZE"
-msgstr "Size of the cursor"
-
-msgid "VisuGUI_Module::VISU_PICKING_PREF_PYRAMID_HEIGHT"
-msgstr "Height of the pyramids"
-
-msgid "VisuGUI_Module::VISU_PICKING_PREF_SELECTION_COLOR"
-msgstr "Selection cursor color"
-
-msgid "VisuGUI_Module::VISU_PICKING_PREF_TOLERANCE_GROUP_TTL"
-msgstr "Tolerance"
-
-msgid "VisuGUI_Module::VISU_PICKING_PREF_POINT_SELECTION_TOLERANCE"
-msgstr "Point selection tolerance"
-
-msgid "VisuGUI_Module::VISU_PICKING_PREF_INFO_WINDOW_GROUP_TTL"
-msgstr "Information window"
-
-msgid "VisuGUI_Module::VISU_PICKING_PREF_TRANSPARENCY"
-msgstr "Transparency"
-
-msgid "VisuGUI_Module::VISU_PICKING_PREF_POSITION"
-msgstr "Position"
-
-msgid "VisuGUI_Module::VISU_PICKING_PREF_BELOW_POINT"
-msgstr "Centered below the point"
-
-msgid "VisuGUI_Module::VISU_PICKING_PREF_TOP_LEFT_CORNER"
-msgstr "Top-left corner of the 3D view"
-
-msgid "VisuGUI_Module::VISU_PICKING_PREF_CAMERA_GROUP_TTL"
-msgstr "Movement of the camera"
-
-msgid "VisuGUI_Module::VISU_PICKING_PREF_ZOOM_FACTOR"
-msgstr "Zoom at first selected point (ratio)"
-
-msgid "VisuGUI_Module::VISU_PICKING_PREF_STEP_NUMBER"
-msgstr "Number of steps between two positions"
-
-msgid "VVTK_PickingDlg::DATA_POSITION"
-msgstr "Position"
-
-msgid "VVTK_PickingDlg::PARENT_ELEMENT"
-msgstr "Parent mesh element ID:"
-
-msgid "VVTK_PickingDlg::LOCAL_POINT"
-msgstr "Local Gauss Point ID:"
-
-msgid "VisuGUI_Module::VISU_PICKING_PREF_PARENT_MESH_TTL"
-msgstr "Parent mesh element"
-
-msgid "VisuGUI_Module::VISU_PICKING_PREF_DISPLAY_PARENT_MESH"
-msgstr "Display parent mesh element"
-
-msgid "VisuGUI_Module::VISU_MOUSE_PREF_TAB_TLT"
-msgstr "Navigation"
-
-msgid "VisuGUI_Module::VISU_MOUSE_PREF_GROUP_TLT"
-msgstr "Mouse"
-
-msgid "VisuGUI_Module::VISU_MOUSE_PREF"
-msgstr "Mouse behaviour"
-
-msgid "VisuGUI_Module::VISU_MOUSE_PREF_STANDARD"
-msgstr "Salome standard controls"
-
-msgid "VisuGUI_Module::VISU_MOUSE_PREF_KEYBOARD_FREE"
-msgstr "Keyboard free"
-
-msgid "VisuGUI_Module::VISU_KEYBOARD_PREF_GROUP_TTL"
-msgstr "Keyboard"
-
-msgid "VisuGUI_Module::VISU_KEYBOARD_PREF"
-msgstr "[+]/[-] Speed increment"
-
-msgid "VisuGUI_Module::VISU_SPACEMOUSE_PREF"
-msgstr "Spacemouse"
-
-msgid "VisuGUI_Module::VISU_SPACEMOUSE_PREF_1"
-msgstr "Decrease speed increment"
-
-msgid "VisuGUI_Module::VISU_SPACEMOUSE_PREF_2"
-msgstr "Increase speed increment"
-
-msgid "VisuGUI_Module::VISU_SPACEMOUSE_PREF_3"
-msgstr "Decrease Gauss points magnification"
-
-msgid "VisuGUI_Module::VISU_SPACEMOUSE_PREF_4"
-msgstr "Increase Gauss points magnification"
-
-msgid "VisuGUI_Module::VISU_SPACEMOUSE_PREF_5"
-msgstr "Dominant / combined switch"
-
-msgid "VisuGUI_Module::VISU_SPACEMOUSE_PREF_BTN_1"
-msgstr "Button 1"
-
-msgid "VisuGUI_Module::VISU_SPACEMOUSE_PREF_BTN_2"
-msgstr "Button 2"
-
-msgid "VisuGUI_Module::VISU_SPACEMOUSE_PREF_BTN_3"
-msgstr "Button 3"
-
-msgid "VisuGUI_Module::VISU_SPACEMOUSE_PREF_BTN_4"
-msgstr "Button 4"
-
-msgid "VisuGUI_Module::VISU_SPACEMOUSE_PREF_BTN_5"
-msgstr "Button 5"
-
-msgid "VisuGUI_Module::VISU_SPACEMOUSE_PREF_BTN_6"
-msgstr "Button 6"
-
-msgid "VisuGUI_Module::VISU_SPACEMOUSE_PREF_BTN_7"
-msgstr "Button 7"
-
-msgid "VisuGUI_Module::VISU_SPACEMOUSE_PREF_BTN_8"
-msgstr "Button 8"
-
-msgid "VisuGUI_Module::VISU_SPACEMOUSE_PREF_BTN_10"
-msgstr "Button 10"
-
-msgid "VisuGUI_Module::VISU_SPACEMOUSE_PREF_BTN_11"
-msgstr "Button 11"
-
-msgid "VisuGUI_Module::VISU_SPACEMOUSE_PREF_BTN_*"
-msgstr "Button *"
-
-msgid "VisuGUI_Module::VISU_CAMERA_PREF_GROUP_TTL"
-msgstr "Camera movements"
-
-msgid "VisuGUI_Module::VISU_CAMERA_MOVE_PREF"
-msgstr "Number of steps between two positions"
-
-msgid "VisuGUI_Module::VISU_RECORDER_PREF_TAB_TTL"
-msgstr "Recorder"
-
-msgid "VisuGUI_Module::VISU_RECORDER_PREF_GROUP_TTL"
-msgstr "Settings"
-
-msgid "VisuGUI_Module::VISU_RECORDER_PREF_RECORDING_MODE"
-msgstr "Mode"
-
-msgid "VisuGUI_Module::VISU_RECORDER_PREF_SKIPPED_FRAMES"
-msgstr "Recording at a given FPS"
-
-msgid "VisuGUI_Module::VISU_RECORDER_PREF_ALL_DISLPAYED_FRAMES"
-msgstr "Recording all displayed frames"
-
-msgid "VisuGUI_Module::VISU_RECORDER_PREF_FPS"
-msgstr "FPS"
-
-msgid "VisuGUI_Module::VISU_RECORDER_PREF_QUALITY"
-msgstr "Quality"
-
-msgid "VisuGUI_Module::VISU_RECORDER_PREF_PROGRESSIVE"
-msgstr "Progressive"
-
-msgid "VisuGUI_Slider::TOOLBAR_TITLE"
-msgstr "Slider"
-
-msgid "VisuGUI_Slider::MORE"
-msgstr "More..."
-
-msgid "VisuGUI_Slider::CACHE_MEMORY"
-msgstr "Cache:"
-
-msgid "VisuGUI_Slider::FREE_MEMORY"
-msgstr "Free:"
-
-msgid "VisuGUI_Slider::SPEED"
-msgstr "Speed:"
-
-msgid "VisuGUI_Slider::AVI"
-msgstr "AVI"
-
-msgid "VisuGUI_GaussPointsDlg::DLG_PREF_TITLE"
-msgstr "Gauss Points Preferences"
-
-msgid "VisuGUI_GaussPointsDlg::DLG_PROP_TITLE"
-msgstr "Gauss Points Properties"
-
-msgid "VisuGUI_BuildProgressDlg::DLG_BUILD_PROGRESS_TITLE"
-msgstr "Build progress"
-
-msgid "VisuGUI_BuildProgressDlg::IMPORT_SETTINGS"
-msgstr "Settings"
-
-msgid "VisuGUI_BuildProgressDlg::FILE_NAME"
-msgstr "Import file : "
-
-msgid "VisuGUI_BuildProgressDlg::BUILD_AT_ONCE"
-msgstr "Build at once"
-
-msgid "VisuGUI_BuildProgressDlg::BUILD_ALL"
-msgstr "Build all"
-
-msgid "VisuGUI_BuildProgressDlg::IMPORT_PROGRESS"
-msgstr "Import progress"
-
-msgid "VisuGUI_BuildProgressDlg::BUILD_ENTITIES"
-msgstr "Build entities"
-
-msgid "VisuGUI_BuildProgressDlg::BUILD_FIELDS"
-msgstr "Build fields"
-
-msgid "VisuGUI_BuildProgressDlg::BUILD_GROUPS"
-msgstr "Build groups"
-
-msgid "VisuGUI_BuildProgressDlg::BUILD_MINMAX"
-msgstr "Build min/max"
-
-msgid "VisuGUI_BuildProgressDlg::IMPORT_TIME"
-msgstr "Time"
-
-msgid "VisuGUI_BuildProgressDlg::TIME"
-msgstr "Elapsed time : "
-
-msgid "VisuGUI_BuildProgressDlg::IMPORT_FROM_FILE"
-msgstr "Import from File"
-
-msgid "VisuGUI_BuildProgressDlg::FLT_ALL_FILES"
-msgstr "All Files (*.*)"
-
-msgid "VisuGUI_BuildProgressDlg::FLT_MED_FILES"
-msgstr "MED Files (*.med)"
-
-msgid "VisuGUI_BuildProgressDlg::CLOSE_AT_FINISH"
-msgstr "Close dialog at finish"
-
-msgid "VisuGUI_BuildProgressDlg::START"
-msgstr "Start"
-
-msgid "VisuGUI_BuildProgressDlg::CLOSE"
-msgstr "Close"
-
-msgid "VisuGUI_BuildProgressDlg::HELP"
-msgstr "Help"
-
-msgid "VisuGUI_BuildProgressDlg::ERR_ERROR_IN_THE_FILE"
-msgstr "Error in the file"
-
-msgid "VVTK_RecorderDlg::DLG_RECORDER_TITLE"
-msgstr "Recorder"
-
-msgid "VVTK_RecorderDlg::SETTINGS"
-msgstr "Settings"
-
-msgid "VVTK_RecorderDlg::FILE_NAME"
-msgstr "Save to file : "
-
-msgid "VVTK_RecorderDlg::FLT_ALL_FILES"
-msgstr "All Files (*.*)"
-
-msgid "VVTK_RecorderDlg::FLT_AVI_FILES"
-msgstr "AVI Files (*.avi)"
-
-msgid "VVTK_RecorderDlg::RECORDING_MODE"
-msgstr "Mode : "
-
-msgid "VVTK_RecorderDlg::SKIPPED_FRAMES"
-msgstr "Recording at a given FPS"
-
-msgid "VVTK_RecorderDlg::ALL_DISLPAYED_FRAMES"
-msgstr "Recording all displayed frames"
-
-msgid "VVTK_RecorderDlg::FPS"
-msgstr "FPS : "
-
-msgid "VVTK_RecorderDlg::QUALITY"
-msgstr "Quality : "
-
-msgid "VVTK_RecorderDlg::PROGRESSIVE"
-msgstr "Progressive"
-
-msgid "VVTK_RecorderDlg::START"
-msgstr "Start"
-
-msgid "VVTK_RecorderDlg::CLOSE"
-msgstr "Close"
-
-msgid "VisuGUI_TransparencyDlg::TRANSPARENCY_TITLE"
-msgstr "Change Transparency"
-
-msgid "VisuGUI_TransparencyDlg::TRANSPARENCY_TRANSPARENT"
-msgstr "Transparent"
-
-msgid "VisuGUI_TransparencyDlg::TRANSPARENCY_OPAQUE"
-msgstr "Opaque"
-
-msgid "VisuGUI_TransparencyDlg::BUT_CLOSE"
-msgstr "Close"
-
-msgid "VisuGUI_CacheDlg::CACHE_TITLE"
-msgstr "Cache properties"
-
-msgid "VisuGUI_CacheDlg::MEMORY_MODE"
-msgstr "Memory mode"
-
-msgid "VisuGUI_CacheDlg::MINIMAL_MEMORY"
-msgstr "Minimal memory"
-
-msgid "VisuGUI_CacheDlg::LIMITED_MEMORY"
-msgstr "Limited memory"
-
-msgid "VisuGUI_CacheDlg::MEMORY STATE"
-msgstr "Memory state"
-
-msgid "VisuGUI_CacheDlg::USED_BY_CACHE"
-msgstr "Used by cache"
-
-msgid "VisuGUI_CacheDlg::FREE"
-msgstr "Free"
-
-msgid "VVTK_ViewManager::VTK_VIEW_TITLE"
-msgstr "Gauss scene:%1 - viewer:%2"
-
-msgid "VVTK_MainWindow::LBL_TOOLBAR_RECORD_LABEL"
-msgstr "Recording Operations"
-
-msgid "VVTK_MainWindow::MNU_VVTK_RECORDING_START"
-msgstr "Start recording"
-
-msgid "VVTK_MainWindow::DSC_VVTK_RECORDING_START"
-msgstr "Start recording"
-
-msgid "VVTK_MainWindow::MNU_VVTK_RECORDING_PLAY"
-msgstr "Play recording"
-
-msgid "VVTK_MainWindow::DSC_VVTK_RECORDING_PLAY"
-msgstr "Play recording"
-
-msgid "VVTK_MainWindow::MNU_VVTK_RECORDING_PAUSE"
-msgstr "Pause recording"
-
-msgid "VVTK_MainWindow::DSC_VVTK_RECORDING_PAUSE"
-msgstr "Pause recording"
-
-msgid "VVTK_MainWindow::MNU_VVTK_RECORDING_STOP"
-msgstr "Stop recording"
-
-msgid "VVTK_MainWindow::DSC_VVTK_RECORDING_STOP"
-msgstr "Stop recording"
-
-msgid "VVTK_MainWindow::MSG_NO_AVI_MAKER"
-msgstr "Tool jpeg2yuv, necessary for AVI recording, is not available.\nPlease, refer to the documentation."
-
-msgid "VVTK_MainWindow1::LBL_TOOLBAR_GAUSS_LABEL"
-msgstr "Gauss Viewer Tools"
-
-msgid "VVTK_MainWindow1::MNU_VVTK_INTERACTOR_STYLE_SWITCH"
-msgstr "Interaction Style Switch"
-
-msgid "VVTK_MainWindow1::DSC_VVTK_INTERACTOR_STYLE_SWITCH"
-msgstr "Interaction Style Switch"
-
-msgid "VVTK_MainWindow1::MNU_VVTK_SELECTION_MODE_SWITCH"
-msgstr "Selection Mode Switch"
-
-msgid "VVTK_MainWindow1::DSC_VVTK_SELECTION_MODE_SWITCH"
-msgstr "Selection Mode Switch"
-
-msgid "VVTK_MainWindow1::MNU_VVTK_PLANE_SEGMENTATION_SWITCH"
-msgstr "Plane Segmentation"
-
-msgid "VVTK_MainWindow1::DSC_VVTK_PLANE_SEGMENTATION_SWITCH"
-msgstr "Plane Segmentation"
-
-msgid "VVTK_MainWindow1::MNU_VVTK_SPHERE_SEGMENTATION_SWITCH"
-msgstr "Sphere Segmentation"
-
-msgid "VVTK_MainWindow1::DSC_VVTK_SPHERE_SEGMENTATION_SWITCH"
-msgstr "Sphere Segmentation"
-
-msgid "VVTK_PrimitiveBox::PRIMITIVE_TITLE"
-msgstr "Primitive"
-
-msgid "VVTK_PrimitiveBox::POINT_SPRITE"
-msgstr "Point Sprite"
-
-msgid "VVTK_PrimitiveBox::OPENGL_POINT"
-msgstr "OpenGL Point"
-
-msgid "VVTK_PrimitiveBox::GEOMETRICAL_SPHERE"
-msgstr "Geometrical Sphere"
-
-msgid "VVTK_PrimitiveBox::CLAMP"
-msgstr "Maximum Size (Clamp) : "
-
-msgid "VVTK_PrimitiveBox::MAIN_TEXTURE"
-msgstr "Main Texture (16x16) : "
-
-msgid "VVTK_PrimitiveBox::ALPHA_TEXTURE"
-msgstr "Alpha Channel Texture (16x16) : "
-
-msgid "VVTK_PrimitiveBox::ALPHA_THRESHOLD"
-msgstr "Alpha Channel Threshold : "
-
-msgid "VVTK_PrimitiveBox::RESOLUTION"
-msgstr "Resolution : "
-
-msgid "VVTK_PrimitiveBox::FACE_NUMBER"
-msgstr "Number of faces : "
-
-msgid "VVTK_PrimitiveBox::FACE_LIMIT"
-msgstr "Notify when number of faces exceeds : "
-
-msgid "VVTK_SizeBox::SIZE_TITLE"
-msgstr "Size"
-
-msgid "VVTK_SizeBox::OUTSIDE_SIZE"
-msgstr "Percentage of normal size(%) : "
-
-msgid "VVTK_SizeBox::GEOM_SIZE"
-msgstr "Size of points (%) : "
-
-msgid "VVTK_SizeBox::MIN_SIZE"
-msgstr "Range values for min size (%) : "
-
-msgid "VVTK_SizeBox::MAX_SIZE"
-msgstr "max size (%) : "
-
-msgid "VVTK_SizeBox::MAGNIFICATION"
-msgstr "Magnification (%) : "
-
-msgid "VVTK_SizeBox::INCREMENT"
-msgstr "+/- Ratio : "
-
-msgid "VVTK_SizeBox::COLOR_TITLE"
-msgstr "Color"
-
-msgid "VVTK_SizeBox::UNIFORM_COLOR"
-msgstr "Uniform Color"
-
-msgid "VVTK_SizeBox::COLOR"
-msgstr "Color : "
-
-msgid "VisuGUI_GaussPointsDlg::&Cancel"
-msgstr ""
-
-msgid "VisuGUI_GaussPointsDlg::&OK"
-msgstr ""
-
-msgid "VisuGUI_GaussPointsDlg::WARNING"
-msgstr "Warning"
-
-msgid "VisuGUI_GaussPointsDlg::DLG_TITLE"
-msgstr "Gauss Points"
-
-msgid "VisuGUI_GaussPointsDlg::GAUSS_POINTS_TAB"
-msgstr "Gauss Points"
-
-msgid "VisuGUI_GaussPointsDlg::SCALAR_BAR_TAB"
-msgstr "Scalar Bar"
-
-msgid "VisuGUI_GaussPointsDlg::INPUT_TAB"
-msgstr "Input"
-
-msgid "VisuGUI_GaussPointsDlg::PRS_TITLE"
-msgstr "Presentation"
-
-msgid "VisuGUI_GaussPointsDlg::RESULTS"
-msgstr "Results"
-
-msgid "VisuGUI_GaussPointsDlg::GEOMETRY"
-msgstr "Geometry"
-
-msgid "VisuGUI_GaussPointsDlg::DEFORMED_SHAPE"
-msgstr "Deformed Shape"
-
-msgid "VisuGUI_GaussPointsDlg::DEFORMED_SHAPE_TITLE"
-msgstr "Deformed Shape"
-
-msgid "VisuGUI_GaussPointsDlg::SCALE_FACTOR"
-msgstr "Scale Factor :"
-
-msgid "VisuGUI_GaussScalarBarPane::ACTIVE_BAR_GRP"
-msgstr "Active bar"
-
-msgid "VisuGUI_GaussScalarBarPane::LOCAL"
-msgstr "Local"
-
-msgid "VisuGUI_GaussScalarBarPane::GLOBAL"
-msgstr "Global"
-
-msgid "VisuGUI_GaussScalarBarPane::DISPLAYED"
-msgstr "Displayed"
-
-msgid "VisuGUI_GaussScalarBarPane::SCALAR_RANGE_GRP"
-msgstr "Scalar range"
-
-msgid "VisuGUI_GaussScalarBarPane::LOGARITHMIC_SCALING"
-msgstr "Logarithmic scaling"
-
-msgid "VisuGUI_GaussScalarBarPane::FIELD_RANGE_BTN"
-msgstr "Use field range"
-
-msgid "VisuGUI_GaussScalarBarPane::IMPOSED_RANGE_BTN"
-msgstr "Use imposed range"
-
-msgid "VisuGUI_GaussScalarBarPane::LBL_MIN"
-msgstr "Min:"
-
-msgid "VisuGUI_GaussScalarBarPane::LBL_MAX"
-msgstr "Max:"
-
-msgid "VisuGUI_GaussScalarBarPane::COLORS_LABELS_GRP"
-msgstr "Colors and labels"
-
-msgid "VisuGUI_GaussScalarBarPane::BICOLOR"
-msgstr "Bicolor"
-
-msgid "VisuGUI_GaussScalarBarPane::RAINBOW"
-msgstr "Rainbow"
-
-msgid "VisuGUI_GaussScalarBarPane::LBL_NB_COLORS"
-msgstr "Nb. of colors:"
-
-msgid "VisuGUI_GaussScalarBarPane::LBL_NB_LABELS"
-msgstr "Nb. of labels:"
-
-msgid "VisuGUI_GaussScalarBarPane::ORIENTATION_GRP"
-msgstr "Orientation"
-
-msgid "VisuGUI_GaussScalarBarPane::VERTICAL_BTN"
-msgstr "Vertical"
-
-msgid "VisuGUI_GaussScalarBarPane::HORIZONTAL_BTN"
-msgstr "Horizontal"
-
-msgid "VisuGUI_GaussScalarBarPane::ORIGIN_GRP"
-msgstr "Origin"
-
-msgid "VisuGUI_GaussScalarBarPane::LBL_X"
-msgstr "X:"
-
-msgid "VisuGUI_GaussScalarBarPane::LBL_Y"
-msgstr "Y:"
-
-msgid "VisuGUI_GaussScalarBarPane::DIMENSIONS_GRP"
-msgstr "Dimensions"
-
-msgid "VisuGUI_GaussScalarBarPane::LBL_WIDTH"
-msgstr "Width:"
-
-msgid "VisuGUI_GaussScalarBarPane::LBL_HEIGHT"
-msgstr "Height:"
-
-msgid "VisuGUI_GaussScalarBarPane::LBL_SPACING"
-msgstr "Spacing:"
-
-msgid "VisuGUI_GaussScalarBarPane::SAVE_DEFAULT_CHK"
-msgstr "Save as default values"
-
-msgid "VVTK_ViewWindow::LBL_TOOLBAR_LABEL"
-msgstr "GAUSS viewer tools"
-
-msgid "VVTK_SegmentationCursorDlg::SEGMENTATION_CURSOR_DLG_TITLE"
-msgstr "Segmentation Cursor"
-
-msgid "VVTK_SegmentationCursorDlg::ORIGIN_TITLE"
-msgstr "Origin"
-
-msgid "VVTK_SegmentationCursorDlg::ORIGIN_X"
-msgstr "X: "
-
-msgid "VVTK_SegmentationCursorDlg::ORIGIN_Y"
-msgstr "Y: "
-
-msgid "VVTK_SegmentationCursorDlg::ORIGIN_Z"
-msgstr "Z: "
-
-msgid "VVTK_SegmentationCursorDlg::DIRECTION_TITLE"
-msgstr "Direction"
-
-msgid "VVTK_SegmentationCursorDlg::DIRECTION_DX"
-msgstr "DX: "
-
-msgid "VVTK_SegmentationCursorDlg::DIRECTION_DY"
-msgstr "DY: "
-
-msgid "VVTK_SegmentationCursorDlg::DIRECTION_DZ"
-msgstr "DZ: "
-
-msgid "VVTK_SegmentationCursorDlg::DEPTH_TITLE"
-msgstr "Depth"
-
-msgid "VVTK_SegmentationCursorDlg::DEPTH"
-msgstr "Depth of the cursor: "
-
-msgid "VVTK_SegmentationCursorDlg::RADIUS_TITLE"
-msgstr "Radius"
-
-msgid "VVTK_SegmentationCursorDlg::RADIUS"
-msgstr "Radius of the cursor :"
-
-msgid "VVTK_SegmentationCursorDlg::RATIO"
-msgstr "+/- Ratio :"
-
-msgid "VVTK_SegmentationCursorDlg::SEGMENTATION_CURSOR_TAB"
-msgstr "Segmentation Cursor"
-
-msgid "VVTK_SegmentationCursorDlg::GAUSS_POINTS_TAB"
-msgstr "Gauss Points"
-
-msgid "VVTK_SegmentationCursorDlg::INSIDE_GAUSS_POINTS"
-msgstr "Inside Cursor Gauss Points Presentation"
-
-msgid "VVTK_SegmentationCursorDlg::OUTSIDE_GAUSS_POINTS"
-msgstr "Outside Cursor Gauss Points Presentation"
-
-msgid "VVTK_SegmentationCursorDlg::MAGNIFICATION_TITLE"
-msgstr "Magnification"
-
-msgid "VVTK_SegmentationCursorDlg::MAGNIFICATION"
-msgstr "Magnification (%) : "
-
-msgid "VVTK_SegmentationCursorDlg::INCREMENT"
-msgstr "+/- Ratio : "
-
-msgid "VVTK_PickingDlg::PICKING_DLG_TITLE"
-msgstr "Picking"
-
-msgid "VVTK_PickingDlg::CURSOR_TITLE"
-msgstr "Cursor"
-
-msgid "VVTK_PickingDlg::CURSOR_SIZE"
-msgstr "Size of the cursor :"
-
-msgid "VVTK_PickingDlg::PYRAMID_HEIGHT"
-msgstr "Height of the pyramids :"
-
-msgid "VVTK_PickingDlg::SELECTION_COLOR"
-msgstr "Selection cursor color :"
-
-msgid "VVTK_PickingDlg::TOLERANCE_TITLE"
-msgstr "Tolerance"
-
-msgid "VVTK_PickingDlg::POINT_TOLERANCE"
-msgstr "Point tolerance :"
-
-msgid "VVTK_PickingDlg::INFO_WINDOW_TITLE"
-msgstr "Information window"
-
-msgid "VVTK_PickingDlg::TRANSPARENCY"
-msgstr "Transparency :"
-
-msgid "VVTK_PickingDlg::POSITION"
-msgstr "Position :"
-
-msgid "VVTK_PickingDlg::BELOW_POINT"
-msgstr "Centered below the point"
-
-msgid "VVTK_PickingDlg::TOP_LEFT_CORNER"
-msgstr "Top-left corner of the 3D view"
-
-msgid "VVTK_PickingDlg::CAMERA_TITLE"
-msgstr "Movement of the camera"
-
-msgid "VVTK_PickingDlg::ZOOM_FACTOR"
-msgstr "Zoom at first selected point (ratio) :"
-
-msgid "VVTK_PickingDlg::STEP_NUMBER"
-msgstr "Number of steps between two positions :"
-
-msgid "VVTK_PickingDlg::PARENT_MESH_TITLE"
-msgstr "Parent mesh element"
-
-msgid "VVTK_PickingDlg::DISPLAY_PARENT_MESH"
-msgstr "Display parent mesh element"
-
-msgid "VisuGUI_Module::TOT_DESK_FILE_SAVE_GUI_STATE"
-msgstr "Save VISU state"
-
-msgid "VisuGUI_Module::MEN_DESK_FILE_SAVE_GUI_STATE"
-msgstr "Save VISU state"
-
-msgid "VisuGUI_Module::PRP_DESK_FILE_SAVE_GUI_STATE"
-msgstr "Saves current state of viewers, displayed objects, etc."
-
-msgid "VISU_MESH"
-msgstr "Mesh"
-
-msgid "VISU_SCALAR_MAP"
-msgstr "Scalar Map"
-
-msgid "VISU_ISO_SURFACES"
-msgstr "Iso Surfaces"
-
-msgid "VISU_CUT_PLANES"
-msgstr "Cut Planes"
-
-msgid "VISU_CUT_LINES"
-msgstr "Cut Lines"
-
-msgid "VISU_DEFORMED_SHAPE"
-msgstr "Deformed Shape"
-
-msgid "VISU_VECTORS"
-msgstr "Vectors"
-
-msgid "VISU_STREAM_LINES"
-msgstr "Stream Lines"
-
-msgid "VISU_PLOT3D"
-msgstr "Plot3D"
-
-msgid "VISU_SCALAR_MAP_ON_DEFORMED_SHAPE"
-msgstr "Scalar Map on Def. Shape"
-
-# MULTIPR
-msgid "VisuGUI::MEN_MULTIPR_VIEW_FULL_RES"
-msgstr "Display at full resolution"
-
-msgid "VisuGUI::MEN_MULTIPR_VIEW_MEDIUM_RES"
-msgstr "Display at medium resolution"
-
-msgid "VisuGUI::MEN_MULTIPR_VIEW_LOW_RES"
-msgstr "Display at low resolution"
-
-msgid "VisuGUI::MEN_MULTIPR_VIEW_HIDE"
-msgstr "Hide"
-
-msgid "VisuGUI::MEN_HOLO_RENDER"
-msgstr "Holo render"
diff --git a/src/VISUGUI/VISU_msg_en.ts b/src/VISUGUI/VISU_msg_en.ts
new file mode 100644 (file)
index 0000000..4878980
--- /dev/null
@@ -0,0 +1,4011 @@
+<!DOCTYPE TS>
+<!--
+  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+
+  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+
+  This library is free software; you can redistribute it and/or
+  modify it under the terms of the GNU Lesser General Public
+  License as published by the Free Software Foundation; either
+  version 2.1 of the License.
+
+  This library is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+  Lesser General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public
+  License along with this library; if not, write to the Free Software
+  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+
+  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+
+-->
+<TS version="1.1" >
+    <context>
+        <name>@default</name>
+        <message>
+            <source>ASSIGNED</source>
+            <translation>Assigned</translation>
+        </message>
+        <message>
+            <source>ATTRIBUTES_LBL</source>
+            <translation>Attributes</translation>
+        </message>
+        <message>
+            <source>AXIS_LBL</source>
+            <translation>Axis</translation>
+        </message>
+        <message>
+            <source>BTN_RESET</source>
+            <translation>Reset</translation>
+        </message>
+        <message>
+            <source>DATA_LBL</source>
+            <translation>Data</translation>
+        </message>
+        <message>
+            <source>ERR_CANT_BUILD_PRESENTATION</source>
+            <translation>The object can't be built</translation>
+        </message>
+        <message>
+            <source>ERR_CANT_CREATE_ACTOR</source>
+            <translation>Can't create actor for this presentation</translation>
+        </message>
+        <message>
+            <source>ERR_CANT_CREATE_ANIMATION</source>
+            <translation>Can't create animation for these fields:
+number of time stamps or number of components is not the same!</translation>
+        </message>
+        <message>
+            <source>ERR_CANT_FIND_MED_COMPONENT</source>
+            <translation>Failed to activate MED engine!</translation>
+        </message>
+        <message>
+            <source>ERR_CANT_FIND_VISU_COMPONENT</source>
+            <translation>Failed to activate VISU engine!</translation>
+        </message>
+        <message>
+            <source>ERR_NO_MEMORY_TO_BUILD</source>
+            <translation>Please, free %1 Mb to make the cache enlarging possible
+(for example, try to delete some holders)</translation>
+        </message>
+        <message>
+            <source>IMPORT_DONE</source>
+            <translation>Importing is done</translation>
+        </message>
+        <message>
+            <source>INF_DONE</source>
+            <translation> done</translation>
+        </message>
+        <message>
+            <source>INF_VISU</source>
+            <translation>Post-Pro Info</translation>
+        </message>
+        <message>
+            <source>NO_GROUPS</source>
+            <translation>No groups in the mesh</translation>
+        </message>
+        <message>
+            <source>PARALLEL_ANIMATION</source>
+            <translation>Parallel Animation</translation>
+        </message>
+        <message>
+            <source>PERIOD_2PI</source>
+            <translation>From -PI to PI</translation>
+        </message>
+        <message>
+            <source>PERIOD_PI</source>
+            <translation>From 0 to PI</translation>
+        </message>
+        <message>
+            <source>PRS_ON_GROUPS</source>
+            <translation>Use Only Groups</translation>
+        </message>
+        <message>
+            <source>SUCCESSIVE_ANIMATION</source>
+            <translation>Successive Animation</translation>
+        </message>
+        <message>
+            <source>TIT_OFFSETDLG</source>
+            <translation>Translate Presentation</translation>
+        </message>
+        <message>
+            <source>TLT_SETUP_PLOT2D</source>
+            <translation>Setup Plot 2d</translation>
+        </message>
+        <message>
+            <source>UNITS_LBL</source>
+            <translation>Units</translation>
+        </message>
+        <message><source>VISU_3DCACHE_PREFERENCES</source><translation>3D Cache</translation></message>
+        <message><source>VISU_ANIMATION_PREFERENCES</source><translation>Animation</translation></message>
+        <message>
+            <source>VISU_COLORS_AND_LABELS</source>
+            <translation>Colors &amp;&amp; Labels</translation>
+        </message>
+        <message>
+            <source>VISU_COMPONENT</source>
+            <translation>Component</translation>
+        </message>
+        <message>
+            <source>VISU_COS_SWEEP</source>
+            <translation>Cosinusoidal ( (1 - cos(t))/2 )</translation>
+        </message>
+        <message>
+            <source>VISU_CUTLINE_PREF</source>
+            <translation>CutLine preferences</translation>
+        </message>
+        <message>
+            <source>VISU_CUT_LINES</source>
+            <translation>Cut Lines</translation>
+        </message>
+        <message>
+            <source>VISU_CUT_PLANES</source>
+            <translation>Cut Planes</translation>
+        </message>
+        <message>
+            <source>VISU_DEFORMED_SHAPE</source>
+            <translation>Deformed Shape</translation>
+        </message>
+        <message>
+            <source>VISU_DISP_ONLY</source>
+            <translation>Display only on creation</translation>
+        </message>
+        <message>
+            <source>VISU_FEATURE_EDGES</source>
+            <translation>Feature edges</translation>
+        </message>
+        <message>
+            <source>VISU_FEATURE_EDGES_ANGLE</source>
+            <translation>Feature edges angle</translation>
+        </message>
+        <message>
+            <source>VISU_FEATURE_EDGES_COLORING</source>
+            <translation>Coloring</translation>
+        </message>
+        <message>
+            <source>VISU_FEATURE_EDGES_PROPS</source>
+            <translation>Feature edges properties</translation>
+        </message>
+        <message>
+            <source>VISU_FIELD_RANGE</source>
+            <translation>Field range</translation>
+        </message>
+        <message>
+            <source>VISU_FONT</source>
+            <translation>Font</translation>
+        </message>
+        <message>
+            <source>VISU_FONT_ARIAL</source>
+            <translation>Arial</translation>
+        </message>
+        <message>
+            <source>VISU_FONT_COURIER</source>
+            <translation>Courier</translation>
+        </message>
+        <message>
+            <source>VISU_FONT_TIMES</source>
+            <translation>Times</translation>
+        </message>
+        <message>
+            <source>VISU_HEIGHT</source>
+            <translation>Height:</translation>
+        </message>
+        <message>
+            <source>VISU_HORIZONTAL</source>
+            <translation>Horizontal</translation>
+        </message>
+        <message>
+            <source>VISU_IMPOSED_RANGE</source>
+            <translation>Imposed range</translation>
+        </message>
+        <message>
+            <source>VISU_IS2PI</source>
+            <translation>Parameter varies:</translation>
+        </message>
+        <message>
+            <source>VISU_ISO_SURFACES</source>
+            <translation>Iso Surfaces</translation>
+        </message>
+        <message>
+            <source>VISU_LABELS</source>
+            <translation>Labels</translation>
+        </message>
+        <message>
+            <source>VISU_LIMITED</source>
+            <translation>Limited</translation>
+        </message>
+        <message>
+            <source>VISU_LINEAR_SWEEP</source>
+            <translation>Linear</translation>
+        </message>
+        <message>
+            <source>VISU_LOGARITHMIC_SCALING</source>
+            <translation>Logarithmic</translation>
+        </message>
+        <message>
+            <source>VISU_MAX</source>
+            <translation>Max:</translation>
+        </message>
+        <message>
+            <source>VISU_MEMORY_LIMIT</source>
+            <translation>Memory limit (Mb)</translation>
+        </message>
+        <message>
+            <source>VISU_MEMORY_MODE</source>
+            <translation>Memory mode</translation>
+        </message>
+        <message>
+            <source>VISU_MESH</source>
+            <translation>Mesh</translation>
+        </message>
+        <message>
+            <source>VISU_MIN</source>
+            <translation>Min:</translation>
+        </message>
+        <message>
+            <source>VISU_MINIMAL</source>
+            <translation>Minimal</translation>
+        </message>
+        <message>
+            <source>VISU_MINMAX_IMPOSED_RANGE</source>
+            <translation>Min and max for imposed range</translation>
+        </message>
+        <message>
+            <source>VISU_MODULUS</source>
+            <translation>Modulus</translation>
+        </message>
+        <message>
+            <source>VISU_NB_COLORS</source>
+            <translation>Nb. of colors</translation>
+        </message>
+        <message>
+            <source>VISU_NB_CYCLES</source>
+            <translation>Number of cycles</translation>
+        </message>
+        <message>
+            <source>VISU_NB_LABELS</source>
+            <translation>Nb. of labels</translation>
+        </message>
+        <message>
+            <source>VISU_NB_STEPS</source>
+            <translation>Number of steps</translation>
+        </message>
+        <message>
+            <source>VISU_ORIENTATION</source>
+            <translation>Orientation</translation>
+        </message>
+        <message>
+            <source>VISU_ORIGIN_AND_SIZE</source>
+            <translation>Origin &amp;&amp; Size</translation>
+        </message>
+        <message>
+            <source>VISU_PLOT3D</source>
+            <translation>Plot3D</translation>
+        </message>
+        <message>
+            <source>VISU_PREF_MED_FULL_LOAD</source>
+            <translation>Full MED loading</translation>
+        </message>
+        <message>
+            <source>VISU_PREF_MED_IMPORT</source>
+            <translation>MED files import</translation>
+        </message>
+        <message>
+            <source>VISU_PREF_SECOND_TAB</source>
+            <translation>Scalar range, Sweep, MED import, Shading</translation>
+        </message>
+        <message>
+            <source>VISU_RANGE_TO_USE</source>
+            <translation>Range to use</translation>
+        </message>
+        <message>
+            <source>VISU_REPRESENT_PROPS</source>
+            <translation>Representation properties</translation>
+        </message>
+        <message>
+            <source>VISU_SCALAR_BAR</source>
+            <translation>Scalar Bar</translation>
+        </message>
+        <message>
+            <source>VISU_SCALAR_MAP</source>
+            <translation>Scalar Map</translation>
+        </message>
+        <message>
+            <source>VISU_SCALAR_MAP_ON_DEFORMED_SHAPE</source>
+            <translation>Scalar Map on Def. Shape</translation>
+        </message>
+        <message>
+            <source>VISU_SCALAR_MODE</source>
+            <translation>Scalar mode</translation>
+        </message>
+        <message>
+            <source>VISU_SCALAR_RANGE</source>
+            <translation>Scalar range:</translation>
+        </message>
+        <message>
+            <source>VISU_SHOW_BOUNDARY_EDGES</source>
+            <translation>Show boundary edges</translation>
+        </message>
+        <message>
+            <source>VISU_SHOW_FEATURE_EDGES</source>
+            <translation>Show feature edges</translation>
+        </message>
+        <message>
+            <source>VISU_SHOW_MANIFOLD_EDGES</source>
+            <translation>Show manifold edges</translation>
+        </message>
+        <message>
+            <source>VISU_SHOW_NON_MANIFOLD_EDGES</source>
+            <translation>Show non-manifold edges</translation>
+        </message>
+        <message>
+            <source>VISU_SHRINK</source>
+            <translation>Shrink</translation>
+        </message>
+        <message>
+            <source>VISU_SIN_SWEEP</source>
+            <translation>Sinusoidal ( sin( t - PI/2 ) )</translation>
+        </message>
+        <message>
+            <source>VISU_STREAM_LINES</source>
+            <translation>Stream Lines</translation>
+        </message>
+        <message>
+            <source>VISU_SWEEPING_MODES</source>
+            <translation>Mode of the sweeping </translation>
+        </message>
+        <message>
+            <source>VISU_SWEEPING_PREF</source>
+            <translation>Sweeping preferences</translation>
+        </message>
+        <message>
+            <source>VISU_TIME_STEP</source>
+            <translation>Time step(second)</translation>
+        </message>
+        <message>
+            <source>VISU_TITLE</source>
+            <translation>Title</translation>
+        </message>
+        <message>
+            <source>VISU_USE_SHADING</source>
+            <translation>Use Shading</translation>
+        </message>
+        <message>
+            <source>VISU_VECTORS</source>
+            <translation>Vectors</translation>
+        </message>
+        <message>
+            <source>VISU_VERTICAL</source>
+            <translation>Vertical</translation>
+        </message>
+        <message>
+            <source>VISU_WIDTH</source>
+            <translation>Width:</translation>
+        </message>
+        <message>
+            <source>VISU_X</source>
+            <translation>X:</translation>
+        </message>
+        <message>
+            <source>VISU_Y</source>
+            <translation>Y:</translation>
+        </message>
+        <message>
+            <source>WRN_EXTRA_MEMORY_REQUIRED</source>
+            <translation>Cache need more memory to build the presentation (%1 Mb).
+Do you want to enlarge the cache?</translation>
+        </message>
+        <message>
+            <source>WRN_NO_AVAILABLE_DATA</source>
+            <translation>No Available data in selection</translation>
+        </message>
+        <message>
+            <source>WRN_STUDY_LOCKED</source>
+            <translation>Current Study is locked</translation>
+        </message>
+        <message>
+            <source>WRN_VISU</source>
+            <translation>Post-Pro Warning</translation>
+        </message>
+        <message>
+            <source>WRN_VISU_WARNING</source>
+            <translation>Warning</translation>
+        </message>
+        <message>
+            <source>INF_FAILED</source>
+            <translation> failed!</translation>
+        </message>
+        <message>
+            <source>VISU_IS_UNITS</source>
+            <translation>Display units in title</translation>
+        </message>
+        <message>
+            <source>VISU_LABELS_FORMAT</source>
+            <translation>Labels format</translation>
+        </message>
+        <message>
+            <source>VISU_TITLE_SIZE</source>
+            <translation>Title size (%):</translation>
+        </message>
+        <message>
+            <source>VISU_TITLE_HEIGHT</source>
+            <translation>Title height (%):</translation>
+        </message>
+        <message>
+            <source>VISU_LABEL_SIZE</source>
+            <translation>Label size (%):</translation>
+        </message>
+        <message>
+            <source>VISU_LABEL_HEIGHT</source>
+            <translation>Label height (%):</translation>
+        </message>
+        <message>
+            <source>VISU_BAR_WIDTH</source>
+            <translation>Bar width (%):</translation>
+        </message>
+        <message>
+            <source>VISU_BAR_HEIGHT</source>
+            <translation>Bar height (%):</translation>
+        </message>
+        <message>
+            <source>VISU_AUTOMATIC_FIT_ALL</source>
+            <translation>Automatic Fit All</translation>
+        </message>
+        <message>
+            <source>VISU_DEFORMED_SHAPE_AND_SCALAR_MAP</source>
+            <translation>Def. Shape and Scalar Map</translation>
+        </message>
+        <message>
+            <source>VISU_FLOATING_POINT_PRECISION</source>
+            <translation>Floating Point Precision</translation>
+        </message>
+        <message>
+            <source>VISU_REALLY_DELETE</source>
+            <translation>Do you really want to delete this %1 object(s): %2</translation>
+        </message>
+        <message>
+            <source>WRN_NO_APPROPRIATE_SELECTION</source>
+            <translation>No appropriate objects selected</translation>
+        </message>
+    </context>
+    <context>
+        <name>VVTK_MainWindow</name>
+        <message>
+            <source>DSC_VVTK_RECORDING_PAUSE</source>
+            <translation>Pause recording</translation>
+        </message>
+        <message>
+            <source>DSC_VVTK_RECORDING_PLAY</source>
+            <translation>Play recording</translation>
+        </message>
+        <message>
+            <source>DSC_VVTK_RECORDING_START</source>
+            <translation>Start recording</translation>
+        </message>
+        <message>
+            <source>DSC_VVTK_RECORDING_STOP</source>
+            <translation>Stop recording</translation>
+        </message>
+        <message>
+            <source>LBL_TOOLBAR_RECORD_LABEL</source>
+            <translation>Recording Operations</translation>
+        </message>
+        <message>
+            <source>MNU_VVTK_RECORDING_PAUSE</source>
+            <translation>Pause recording</translation>
+        </message>
+        <message>
+            <source>MNU_VVTK_RECORDING_PLAY</source>
+            <translation>Play recording</translation>
+        </message>
+        <message>
+            <source>MNU_VVTK_RECORDING_START</source>
+            <translation>Start recording</translation>
+        </message>
+        <message>
+            <source>MNU_VVTK_RECORDING_STOP</source>
+            <translation>Stop recording</translation>
+        </message>
+        <message>
+            <source>MSG_NO_AVI_MAKER</source>
+            <translation>Tool jpeg2yuv, necessary for AVI recording, is not available.
+Please, refer to the documentation.</translation>
+        </message>
+    </context>
+    <context>
+        <name>VVTK_MainWindow1</name>
+        <message>
+            <source>DSC_VVTK_INTERACTOR_STYLE_SWITCH</source>
+            <translation>Interaction Style Switch</translation>
+        </message>
+        <message>
+            <source>DSC_VVTK_PLANE_SEGMENTATION_SWITCH</source>
+            <translation>Plane Segmentation</translation>
+        </message>
+        <message>
+            <source>DSC_VVTK_SELECTION_MODE_SWITCH</source>
+            <translation>Selection Mode Switch</translation>
+        </message>
+        <message>
+            <source>DSC_VVTK_SPHERE_SEGMENTATION_SWITCH</source>
+            <translation>Sphere Segmentation</translation>
+        </message>
+        <message>
+            <source>LBL_TOOLBAR_GAUSS_LABEL</source>
+            <translation>Gauss Viewer Tools</translation>
+        </message>
+        <message>
+            <source>MNU_VVTK_INTERACTOR_STYLE_SWITCH</source>
+            <translation>Interaction Style Switch</translation>
+        </message>
+        <message>
+            <source>MNU_VVTK_PLANE_SEGMENTATION_SWITCH</source>
+            <translation>Plane Segmentation</translation>
+        </message>
+        <message>
+            <source>MNU_VVTK_SELECTION_MODE_SWITCH</source>
+            <translation>Selection Mode Switch</translation>
+        </message>
+        <message>
+            <source>MNU_VVTK_SPHERE_SEGMENTATION_SWITCH</source>
+            <translation>Sphere Segmentation</translation>
+        </message>
+    </context>
+    <context>
+        <name>VVTK_PickingDlg</name>
+        <message>
+            <source>BELOW_POINT</source>
+            <translation>Centered below the point</translation>
+        </message>
+        <message>
+            <source>CAMERA_TITLE</source>
+            <translation>Movement of the camera</translation>
+        </message>
+        <message>
+            <source>CURSOR_SIZE</source>
+            <translation>Size of the cursor :</translation>
+        </message>
+        <message>
+            <source>CURSOR_TITLE</source>
+            <translation>Cursor</translation>
+        </message>
+        <message>
+            <source>DISPLAY_PARENT_MESH</source>
+            <translation>Display parent mesh element</translation>
+        </message>
+        <message>
+            <source>INFO_WINDOW_TITLE</source>
+            <translation>Information window</translation>
+        </message>
+        <message>
+            <source>PARENT_MESH_TITLE</source>
+            <translation>Parent mesh element</translation>
+        </message>
+        <message>
+            <source>PICKING_DLG_TITLE</source>
+            <translation>Picking</translation>
+        </message>
+        <message>
+            <source>POINT_TOLERANCE</source>
+            <translation>Point tolerance :</translation>
+        </message>
+        <message>
+            <source>POSITION</source>
+            <translation>Position :</translation>
+        </message>
+        <message>
+            <source>PYRAMID_HEIGHT</source>
+            <translation>Height of the pyramids :</translation>
+        </message>
+        <message>
+            <source>SELECTION_COLOR</source>
+            <translation>Selection cursor color :</translation>
+        </message>
+        <message>
+            <source>STEP_NUMBER</source>
+            <translation>Number of steps between two positions :</translation>
+        </message>
+        <message>
+            <source>TOLERANCE_TITLE</source>
+            <translation>Tolerance</translation>
+        </message>
+        <message>
+            <source>TOP_LEFT_CORNER</source>
+            <translation>Top-left corner of the 3D view</translation>
+        </message>
+        <message>
+            <source>TRANSPARENCY</source>
+            <translation>Transparency :</translation>
+        </message>
+        <message>
+            <source>ZOOM_FACTOR</source>
+            <translation>Zoom at first selected point (ratio) :</translation>
+        </message>
+        <message>
+            <source>DATA_POSITION</source>
+            <translation>Position</translation>
+        </message>
+        <message>
+            <source>PARENT_ELEMENT</source>
+            <translation>Parent mesh element ID:</translation>
+        </message>
+        <message>
+            <source>LOCAL_POINT</source>
+            <translation>Local Gauss Point ID:</translation>
+        </message>
+    </context>
+    <context>
+        <name>VVTK_PrimitiveBox</name>
+        <message>
+            <source>ALPHA_TEXTURE</source>
+            <translation>Alpha Channel Texture (16x16) : </translation>
+        </message>
+        <message>
+            <source>ALPHA_THRESHOLD</source>
+            <translation>Alpha Channel Threshold : </translation>
+        </message>
+        <message>
+            <source>CLAMP</source>
+            <translation>Maximum Size (Clamp) : </translation>
+        </message>
+        <message>
+            <source>FACE_LIMIT</source>
+            <translation>Notify when number of faces exceeds : </translation>
+        </message>
+        <message>
+            <source>FACE_NUMBER</source>
+            <translation>Number of faces : </translation>
+        </message>
+        <message>
+            <source>GEOMETRICAL_SPHERE</source>
+            <translation>Geometrical Sphere</translation>
+        </message>
+        <message>
+            <source>MAIN_TEXTURE</source>
+            <translation>Main Texture (16x16) : </translation>
+        </message>
+        <message>
+            <source>OPENGL_POINT</source>
+            <translation>OpenGL Point</translation>
+        </message>
+        <message>
+            <source>POINT_SPRITE</source>
+            <translation>Point Sprite</translation>
+        </message>
+        <message>
+            <source>PRIMITIVE_TITLE</source>
+            <translation>Primitive</translation>
+        </message>
+        <message>
+            <source>RESOLUTION</source>
+            <translation>Resolution : </translation>
+        </message>
+    </context>
+    <context>
+        <name>VVTK_RecorderDlg</name>
+        <message>
+            <source>ALL_DISLPAYED_FRAMES</source>
+            <translation>Recording all displayed frames</translation>
+        </message>
+        <message>
+            <source>CLOSE</source>
+            <translation>Close</translation>
+        </message>
+        <message>
+            <source>DLG_RECORDER_TITLE</source>
+            <translation>Recorder</translation>
+        </message>
+        <message>
+            <source>FILE_NAME</source>
+            <translation>Save to file : </translation>
+        </message>
+        <message>
+            <source>FLT_ALL_FILES</source>
+            <translation>All Files (*.*)</translation>
+        </message>
+        <message>
+            <source>FLT_AVI_FILES</source>
+            <translation>AVI Files (*.avi)</translation>
+        </message>
+        <message>
+            <source>FPS</source>
+            <translation>FPS : </translation>
+        </message>
+        <message>
+            <source>PROGRESSIVE</source>
+            <translation>Progressive</translation>
+        </message>
+        <message>
+            <source>QUALITY</source>
+            <translation>Quality : </translation>
+        </message>
+        <message>
+            <source>RECORDING_MODE</source>
+            <translation>Mode : </translation>
+        </message>
+        <message>
+            <source>SETTINGS</source>
+            <translation>Settings</translation>
+        </message>
+        <message>
+            <source>SKIPPED_FRAMES</source>
+            <translation>Recording at a given FPS</translation>
+        </message>
+        <message>
+            <source>START</source>
+            <translation>Start</translation>
+        </message>
+    </context>
+    <context>
+        <name>VVTK_SegmentationCursorDlg</name>
+        <message>
+            <source>DEPTH</source>
+            <translation>Depth of the cursor: </translation>
+        </message>
+        <message>
+            <source>DEPTH_TITLE</source>
+            <translation>Depth</translation>
+        </message>
+        <message>
+            <source>DIRECTION_DX</source>
+            <translation>DX: </translation>
+        </message>
+        <message>
+            <source>DIRECTION_DY</source>
+            <translation>DY: </translation>
+        </message>
+        <message>
+            <source>DIRECTION_DZ</source>
+            <translation>DZ: </translation>
+        </message>
+        <message>
+            <source>DIRECTION_TITLE</source>
+            <translation>Direction</translation>
+        </message>
+        <message>
+            <source>GAUSS_POINTS_TAB</source>
+            <translation>Gauss Points</translation>
+        </message>
+        <message>
+            <source>INCREMENT</source>
+            <translation>+/- Ratio : </translation>
+        </message>
+        <message>
+            <source>INSIDE_GAUSS_POINTS</source>
+            <translation>Inside Cursor Gauss Points Presentation</translation>
+        </message>
+        <message>
+            <source>MAGNIFICATION</source>
+            <translation>Magnification (%) : </translation>
+        </message>
+        <message>
+            <source>MAGNIFICATION_TITLE</source>
+            <translation>Magnification</translation>
+        </message>
+        <message>
+            <source>ORIGIN_TITLE</source>
+            <translation>Origin</translation>
+        </message>
+        <message>
+            <source>ORIGIN_X</source>
+            <translation>X: </translation>
+        </message>
+        <message>
+            <source>ORIGIN_Y</source>
+            <translation>Y: </translation>
+        </message>
+        <message>
+            <source>ORIGIN_Z</source>
+            <translation>Z: </translation>
+        </message>
+        <message>
+            <source>OUTSIDE_GAUSS_POINTS</source>
+            <translation>Outside Cursor Gauss Points Presentation</translation>
+        </message>
+        <message>
+            <source>RADIUS</source>
+            <translation>Radius of the cursor :</translation>
+        </message>
+        <message>
+            <source>RADIUS_TITLE</source>
+            <translation>Radius</translation>
+        </message>
+        <message>
+            <source>RATIO</source>
+            <translation>+/- Ratio :</translation>
+        </message>
+        <message>
+            <source>SEGMENTATION_CURSOR_DLG_TITLE</source>
+            <translation>Segmentation Cursor</translation>
+        </message>
+        <message>
+            <source>SEGMENTATION_CURSOR_TAB</source>
+            <translation>Segmentation Cursor</translation>
+        </message>
+    </context>
+    <context>
+        <name>VVTK_SizeBox</name>
+        <message>
+            <source>COLOR</source>
+            <translation>Color : </translation>
+        </message>
+        <message>
+            <source>COLOR_TITLE</source>
+            <translation>Color</translation>
+        </message>
+        <message>
+            <source>GEOM_SIZE</source>
+            <translation>Size of points (%) : </translation>
+        </message>
+        <message>
+            <source>INCREMENT</source>
+            <translation>+/- Ratio : </translation>
+        </message>
+        <message>
+            <source>MAGNIFICATION</source>
+            <translation>Magnification (%) : </translation>
+        </message>
+        <message>
+            <source>MAX_SIZE</source>
+            <translation>max size (%) : </translation>
+        </message>
+        <message>
+            <source>MIN_SIZE</source>
+            <translation>Range values for min size (%) : </translation>
+        </message>
+        <message>
+            <source>OUTSIDE_SIZE</source>
+            <translation>Percentage of normal size(%) : </translation>
+        </message>
+        <message>
+            <source>SIZE_TITLE</source>
+            <translation>Size</translation>
+        </message>
+        <message>
+            <source>UNIFORM_COLOR</source>
+            <translation>Uniform Color</translation>
+        </message>
+    </context>
+    <context>
+        <name>VVTK_ViewManager</name>
+        <message>
+            <source>VTK_VIEW_TITLE</source>
+            <translation>Gauss scene:%1 - viewer:%2</translation>
+        </message>
+    </context>
+    <context>
+        <name>VVTK_ViewWindow</name>
+        <message>
+            <source>LBL_TOOLBAR_LABEL</source>
+            <translation>GAUSS viewer tools</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI</name>
+        <message>
+            <source>PRECISION</source>
+            <translation>Precision</translation>
+        </message>
+        <message>
+            <source>DLG_LINEWIDTH_CMT1</source>
+            <translation>Set value between</translation>
+        </message>
+        <message>
+            <source>DLG_LINEWIDTH_CMT2</source>
+            <translation>1 (thin) and 10 (thick)</translation>
+        </message>
+        <message>
+            <source>DLG_LINEWIDTH_TITLE</source>
+            <translation>Line Width</translation>
+        </message>
+        <message>
+            <source>DLG_OPACITY_CMT1</source>
+            <translation>Set value between</translation>
+        </message>
+        <message>
+            <source>DLG_OPACITY_CMT2</source>
+            <translation>0 (transparent) and 100 (opaque)</translation>
+        </message>
+        <message>
+            <source>DLG_OPACITY_TITLE</source>
+            <translation>Opacity</translation>
+        </message>
+        <message>
+            <source>ERR_ACTIVATE_VIEW3D</source>
+            <translation>Please activate 3D view before</translation>
+        </message>
+        <message>
+            <source>ERR_ERROR_DURING_EXPORT</source>
+            <translation>Error has been occured during exporting to file</translation>
+        </message>
+        <message>
+            <source>ERR_SCALARBAR_PARAMS</source>
+            <translation>Warning! The parameters is incorrect</translation>
+        </message>
+        <message>
+            <source>FLT_ALL_FILES</source>
+            <translation>All Files (*.*)</translation>
+        </message>
+        <message>
+            <source>FLT_MED_FILES</source>
+            <translation>MED Files (*.med)</translation>
+        </message>
+        <message>
+            <source>FLT_TABLE_FILES</source>
+            <translation>Tables (*.xls *.txt *.tab)</translation>
+        </message>
+        <message>
+            <source>IMPORT_FROM_FILE</source>
+            <translation>Import from File</translation>
+        </message>
+        <message>
+            <source>MEN_ACTOR_SELECTION</source>
+            <translation>Actor Selection</translation>
+        </message>
+        <message>
+            <source>MEN_ARRANGE_ACTORS</source>
+            <translation>Arrange Actors</translation>
+        </message>
+        <message>
+            <source>MEN_MANAGE_CACHE</source>
+            <translation>Manage</translation>
+        </message>
+        <message>
+            <source>MEN_CELL_COLOR</source>
+            <translation>Cell Color</translation>
+        </message>
+        <message>
+            <source>MEN_CELL_SELECTION</source>
+            <translation>Cell Selection</translation>
+        </message>
+        <message>
+            <source>MEN_CLEAR_CONTAINER</source>
+            <translation>Clear</translation>
+        </message>
+        <message>
+            <source>MEN_CLIPPING</source>
+            <translation>Clipping Planes</translation>
+        </message>
+        <message>
+            <source>MEN_COLOR</source>
+            <translation>Color...</translation>
+        </message>
+        <message>
+            <source>MEN_COPY_PRS</source>
+            <translation>Copy</translation>
+        </message>
+        <message>
+            <source>MEN_CREATE_CURVES</source>
+            <translation>Create Curves</translation>
+        </message>
+        <message>
+            <source>MEN_CREATE_MANY_PRS</source>
+            <translation>Create Presentations</translation>
+        </message>
+        <message>
+            <source>MEN_CREATE_PLOT2D</source>
+            <translation>Create Plot2d View</translation>
+        </message>
+        <message>
+            <source>MEN_CREATE_PRS</source>
+            <translation>Create Presentation</translation>
+        </message>
+        <message>
+            <source>MEN_CREATE_TABLE</source>
+            <translation>Create Table</translation>
+        </message>
+        <message>
+            <source>MEN_CUBE_AXES</source>
+            <translation>Graduated Axes</translation>
+        </message>
+        <message>
+            <source>MEN_CURVE_PROPS</source>
+            <translation>Properties...</translation>
+        </message>
+        <message>
+            <source>MEN_CUT_LINES</source>
+            <translation>Cut Lines</translation>
+        </message>
+        <message>
+            <source>MEN_CUT_PLANES</source>
+            <translation>Cut Planes</translation>
+        </message>
+        <message>
+            <source>MEN_DEFORMED_SHAPE</source>
+            <translation>Deformed Shape</translation>
+        </message>
+        <message>
+            <source>MEN_DELETE_OBJS</source>
+            <translation>Delete</translation>
+        </message>
+        <message>
+            <source>MEN_DELETE_VIEWPARAMS</source>
+            <translation>Delete View Parameters</translation>
+        </message>
+        <message>
+            <source>MEN_SHOW</source>
+            <translation>Show</translation>
+        </message>
+       <message>
+            <source>MEN_SHOW_SCALAR_BAR</source>
+            <translation>Show Scalar Bar</translation>
+        </message>
+        <message>
+            <source>MEN_DISPLAY_ONLY</source>
+            <translation>Show Only</translation>
+        </message>
+        <message>
+            <source>MEN_DISPLAY_SELECTION</source>
+            <translation>Display Selection</translation>
+        </message>
+        <message>
+            <source>MEN_EDGE_COLOR</source>
+            <translation>Edge Color</translation>
+        </message>
+        <message>
+            <source>MEN_EDIT_CONTAINER</source>
+            <translation>Edit...</translation>
+        </message>
+        <message>
+            <source>MEN_EDIT_PRS</source>
+            <translation>Edit...</translation>
+        </message>
+        <message>
+            <source>MEN_HIDE</source>
+            <translation>Hide</translation>
+        </message>
+       <message>
+            <source>MEN_HIDE_SCALAR_BAR</source>
+            <translation>Hide Scalar Bar</translation>
+        </message>
+        <message>
+            <source>MEN_ERASE_ALL</source>
+            <translation>Hide All</translation>
+        </message>
+        <message>
+            <source>MEN_EXPORT_TABLE</source>
+            <translation>Export Table</translation>
+        </message>
+        <message>
+            <source>MEN_FEATURE_EDGES</source>
+            <translation>Feature Edges</translation>
+        </message>
+        <message>
+            <source>MEN_FEATURE_EDGES_DISABLE</source>
+            <translation>Disable Feature Edges</translation>
+        </message>
+        <message>
+            <source>MEN_FREE_SCALAR_BARS</source>
+            <translation>Use Field Range</translation>
+        </message>
+        <message>
+            <source>MEN_GAUSS_POINT_SELECTION</source>
+            <translation>Gauss Point Selection</translation>
+        </message>
+        <message>
+            <source>MEN_GLOBAL_SELECTION</source>
+            <translation>Global Selection</translation>
+        </message>
+        <message>
+            <source>MEN_HOLO_RENDER</source>
+            <translation>Holo Render</translation>
+        </message>
+        <message>
+            <source>MEN_IMPORT</source>
+            <translation>Import</translation>
+        </message>
+        <message>
+            <source>MEN_IMPORT_FROM_FILE</source>
+            <translation>MED File</translation>
+        </message>
+        <message>
+            <source>MEN_IMPORT_MED_FIELD</source>
+            <translation>Import Field</translation>
+        </message>
+        <message>
+            <source>MEN_IMPORT_MED_STRUCTURE</source>
+            <translation>Import Structure</translation>
+        </message>
+        <message>
+            <source>MEN_IMPORT_MED_TIMESTAMP</source>
+            <translation>Import TimeStamp</translation>
+        </message>
+        <message>
+            <source>MEN_IMPORT_TABLE</source>
+            <translation>Table From File</translation>
+        </message>
+        <message>
+            <source>MEN_INSIDEFRAME</source>
+            <translation>Insideframe</translation>
+        </message>
+        <message>
+            <source>MEN_ISO_SURFACES</source>
+            <translation>Iso Surfaces</translation>
+        </message>
+        <message>
+            <source>MEN_LINE_WIDTH</source>
+            <translation>Line Width</translation>
+        </message>
+        <message>
+            <source>MEN_MERGE_SCALAR_BARS</source>
+            <translation>Merge Scalar Range</translation>
+        </message>
+        <message>
+            <source>MEN_MULTIPR_VIEW_FULL_RES</source>
+            <translation>Display at Full Resolution</translation>
+        </message>
+        <message>
+            <source>MEN_MULTIPR_VIEW_HIDE</source>
+            <translation>Hide</translation>
+        </message>
+        <message>
+            <source>MEN_MULTIPR_VIEW_LOW_RES</source>
+            <translation>Display at Low Resolution</translation>
+        </message>
+        <message>
+            <source>MEN_MULTIPR_VIEW_MEDIUM_RES</source>
+            <translation>Display at Medium Resolution</translation>
+        </message>
+        <message>
+            <source>MEN_NOSHADING</source>
+            <translation>Shading Off</translation>
+        </message>
+        <message>
+            <source>MEN_OPACITY</source>
+            <translation>Opacity</translation>
+        </message>
+        <message>
+            <source>MEN_PARALLEL_ANIMATION</source>
+            <translation>Parallel Animation...</translation>
+        </message>
+        <message>
+            <source>MEN_PARTIAL_SELECTION</source>
+            <translation>Partial Selection</translation>
+        </message>
+        <message>
+            <source>MEN_PLOT3D_FROM_CUTPLANE</source>
+            <translation>Plot3d</translation>
+        </message>
+        <message>
+            <source>MEN_PLOT_3D</source>
+            <translation>Plot3D</translation>
+        </message>
+        <message>
+            <source>MEN_POINT_SELECTION</source>
+            <translation>Point Selection</translation>
+        </message>
+        <message>
+            <source>MEN_POINTS</source>
+            <translation>Points</translation>
+        </message>
+        <message>
+            <source>MEN_PROPERTIES</source>
+            <translation>Properties</translation>
+        </message>
+        <message>
+            <source>MEN_RENAME</source>
+            <translation>Rename...</translation>
+        </message>
+        <message>
+            <source>MEN_RENAME_CONTAINER</source>
+            <translation>Rename...</translation>
+        </message>
+        <message>
+            <source>MEN_RENAME_TABLE</source>
+            <translation>Rename...</translation>
+        </message>
+        <message>
+            <source>MEN_REPRESENTATION</source>
+            <translation>Representation</translation>
+        </message>
+        <message>
+            <source>MEN_RESTORE_VIEWPARAMS</source>
+            <translation>Restore View Parameters</translation>
+        </message>
+        <message>
+            <source>MEN_SAVE_VIEWPARAMS</source>
+            <translation>Save View Parameters</translation>
+        </message>
+        <message>
+            <source>MEN_SCALAR_MAP</source>
+            <translation>Scalar Map</translation>
+        </message>
+        <message>
+            <source>MEN_DEFORMED_SHAPE_AND_SCALAR_MAP</source>
+            <translation>Deformed Shape and Scalar Map</translation>
+        </message>
+        <message>
+            <source>MEN_SCALING</source>
+            <translation>Scaling</translation>
+        </message>
+        <message>
+            <source>MEN_SELECTION</source>
+            <translation>Selection</translation>
+        </message>
+        <message>
+            <source>MEN_SELECTION_PANEL</source>
+            <translation>Selection Panel</translation>
+        </message>
+        <message>
+            <source>MEN_SHADING</source>
+            <translation>Shading On</translation>
+        </message>
+        <message>
+            <source>MEN_SHOW_ANIMATION</source>
+            <translation>Show...</translation>
+        </message>
+        <message>
+            <source>MEN_SHOW_TABLE</source>
+            <translation>Show Table</translation>
+        </message>
+        <message>
+            <source>MEN_SHRINK</source>
+            <translation>Shrink</translation>
+        </message>
+        <message>
+            <source>MEN_STREAM_LINES</source>
+            <translation>Stream Lines</translation>
+        </message>
+        <message>
+            <source>MEN_SUCCCESSIVE_ANIMATION</source>
+            <translation>Successive Animation...</translation>
+        </message>
+        <message>
+            <source>MEN_SURFACE</source>
+            <translation>Surface</translation>
+        </message>
+        <message>
+            <source>MEN_SURFACEFRAME</source>
+            <translation>Surfaceframe</translation>
+        </message>
+        <message>
+            <source>MEN_SWEEP</source>
+            <translation>Sweep</translation>
+        </message>
+        <message>
+            <source>MEN_TRANSLATE_PRS</source>
+            <translation>Translate Presentation</translation>
+        </message>
+        <message>
+            <source>MEN_UNSHRINK</source>
+            <translation>Unshrink</translation>
+        </message>
+        <message>
+            <source>MEN_VECTORS</source>
+            <translation>Vectors</translation>
+        </message>
+        <message>
+            <source>MEN_VISUALIZATION</source>
+            <translation>Visualization</translation>
+        </message>
+        <message>
+            <source>MEN_WIREFRAME</source>
+            <translation>Wireframe</translation>
+        </message>
+        <message>
+            <source>MEN_FILTER_SCALARS</source>
+            <translation>Filter by Scalars...</translation>
+        </message>
+         <message>
+            <source>MEN_VALUES_LABELING</source>
+            <translation>Values labeling</translation>
+        </message>
+        <message>
+            <source>VISU_VALUES_LABELING_PARAMS</source>
+            <translation>Labeling parameters</translation>
+        </message>
+        <message><source>TOOL_IMPORT</source><translation>Import</translation></message>
+        <message><source>TOOL_REPRESENTATION</source><translation>Representation</translation></message>
+        <message><source>TOOL_SELECTION</source><translation>Selection</translation></message>
+        <message><source>TOOL_NAVIGATION</source><translation>Navigation</translation></message>
+        <message><source>TOOL_VISUALISATION</source><translation>Visualization</translation>
+        </message>
+        <message>
+            <source>USE_BUILD_PROGRESS</source>
+            <translation>Use build progress</translation>
+        </message>
+        <message>
+            <source>MEN_LOAD_COMPONENT_DATA</source>
+            <translation>Load Component Data</translation>
+        </message>
+        <message>
+            <source>FLT_DISTRIBUTED_MED_FILES</source>
+            <translation>Distributed MED Files (*_maitre.med)</translation>
+        </message>
+        <message>
+            <source>SHOW_LEVEL_LABELS</source>
+            <translation>Show level labels</translation>
+        </message>
+        <message>
+            <source>MEN_FILE_INFO</source>
+            <translation>MED File Information</translation>
+        </message>
+        <message>
+            <source>ERR_ERROR_IN_THE_FILE</source>
+            <translation>Error in the file</translation>
+        </message>
+        <message>
+            <source>ERR_FILE_NOT_EXISTS</source>
+            <translation>File does not exist</translation>
+        </message>
+        <message>
+            <source>IMPORT_ERRORS</source>
+            <translation>Import operation has finished with errors:</translation>
+        </message>
+        <message>
+            <source>TLT_IMPORT_TABLE</source>
+            <translation>Import table</translation>
+        </message>
+        <message>
+            <source>UNKNOWN_IMPORT_ERROR</source>
+            <translation>Unknown error</translation>
+        </message>
+        <message>
+            <source>VALUES_LABELING</source>
+            <translation>Values labeling</translation>
+        </message>
+        <message>
+            <source>LABELS</source>
+            <translation>Labels</translation>
+        </message>
+        <message>
+            <source>COLOR</source>
+            <translation>Color</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_AxisWg</name>
+        <message>
+            <source>AXIS_NAME</source>
+            <translation>Axis name</translation>
+        </message>
+        <message>
+            <source>FONT</source>
+            <translation>Font</translation>
+        </message>
+        <message>
+            <source>IS_VISIBLE</source>
+            <translation>Is visible</translation>
+        </message>
+        <message>
+            <source>LABELS</source>
+            <translation>Labels</translation>
+        </message>
+        <message>
+            <source>LENGTH</source>
+            <translation>Length</translation>
+        </message>
+        <message>
+            <source>NAME</source>
+            <translation>Name</translation>
+        </message>
+        <message>
+            <source>NUMBER</source>
+            <translation>Number</translation>
+        </message>
+        <message>
+            <source>OFFSET</source>
+            <translation>Offset</translation>
+        </message>
+        <message>
+            <source>TICK_MARKS</source>
+            <translation>Tick marks</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_BuildProgressDlg</name>
+        <message>
+            <source>BUILD_ALL</source>
+            <translation>Build all</translation>
+        </message>
+        <message>
+            <source>BUILD_AT_ONCE</source>
+            <translation>Build at once</translation>
+        </message>
+        <message>
+            <source>BUILD_ENTITIES</source>
+            <translation>Build entities</translation>
+        </message>
+        <message>
+            <source>BUILD_FIELDS</source>
+            <translation>Build fields</translation>
+        </message>
+        <message>
+            <source>BUILD_GROUPS</source>
+            <translation>Build groups</translation>
+        </message>
+        <message>
+            <source>BUILD_MINMAX</source>
+            <translation>Build min/max</translation>
+        </message>
+        <message>
+            <source>CLOSE</source>
+            <translation>Close</translation>
+        </message>
+        <message>
+            <source>CLOSE_AT_FINISH</source>
+            <translation>Close dialog at finish</translation>
+        </message>
+        <message>
+            <source>DLG_BUILD_PROGRESS_TITLE</source>
+            <translation>Build progress</translation>
+        </message>
+        <message>
+            <source>ERR_ERROR_IN_THE_FILE</source>
+            <translation>Error in the file</translation>
+        </message>
+        <message>
+            <source>FILE_NAME</source>
+            <translation>Import file : </translation>
+        </message>
+        <message>
+            <source>FLT_ALL_FILES</source>
+            <translation>All Files (*.*)</translation>
+        </message>
+        <message>
+            <source>FLT_MED_FILES</source>
+            <translation>MED Files (*.med)</translation>
+        </message>
+        <message>
+            <source>HELP</source>
+            <translation>Help</translation>
+        </message>
+        <message>
+            <source>IMPORT_FROM_FILE</source>
+            <translation>Import from File</translation>
+        </message>
+        <message>
+            <source>IMPORT_PROGRESS</source>
+            <translation>Import progress</translation>
+        </message>
+        <message>
+            <source>IMPORT_SETTINGS</source>
+            <translation>Settings</translation>
+        </message>
+        <message>
+            <source>IMPORT_TIME</source>
+            <translation>Time</translation>
+        </message>
+        <message>
+            <source>START</source>
+            <translation>Start</translation>
+        </message>
+        <message>
+            <source>TIME</source>
+            <translation>Elapsed time : </translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_ClippingDlg</name>
+        <message>
+            <source>AUTO_APPLY_CHK</source>
+            <translation>Auto Apply</translation>
+        </message>
+        <message>
+            <source>BUT_DELETE</source>
+            <translation>Delete</translation>
+        </message>
+        <message>
+            <source>BUT_NEW</source>
+            <translation>New</translation>
+        </message>
+        <message>
+            <source>GRP_IJK_AXIS</source>
+            <translation>Axis</translation>
+        </message>
+        <message>
+            <source>GRP_PARAMETERS</source>
+            <translation>Parameters</translation>
+        </message>
+        <message>
+            <source>GRP_PLANES</source>
+            <translation>Clipping planes</translation>
+        </message>
+        <message>
+            <source>I_RADIO_BTN</source>
+            <translation>I</translation>
+        </message>
+        <message>
+            <source>J_RADIO_BTN</source>
+            <translation>J</translation>
+        </message>
+        <message>
+            <source>K_RADIO_BTN</source>
+            <translation>K</translation>
+        </message>
+        <message>
+            <source>LBL_DISTANCE</source>
+            <translation>Distance</translation>
+        </message>
+        <message>
+            <source>LBL_IJK_INDEX</source>
+            <translation>Index (from 0 to ...)</translation>
+        </message>
+        <message>
+            <source>LBL_IJK_INDEX_TO_arg</source>
+            <translation>Index (from 0 to %1) </translation>
+        </message>
+        <message>
+            <source>LBL_ORIENTATION</source>
+            <translation>Orientation</translation>
+        </message>
+        <message>
+            <source>LBL_ROTATION_XY</source>
+            <translation>Rotation around Z (X to Y):</translation>
+        </message>
+        <message>
+            <source>LBL_ROTATION_XZ</source>
+            <translation>Rotation around Y (X to Z):</translation>
+        </message>
+        <message>
+            <source>LBL_ROTATION_YX</source>
+            <translation>Rotation around Z (Y to X):</translation>
+        </message>
+        <message>
+            <source>LBL_ROTATION_YZ</source>
+            <translation>Rotation around X (Y to Z):</translation>
+        </message>
+        <message>
+            <source>LBL_ROTATION_ZX</source>
+            <translation>Rotation around Y (Z to X):</translation>
+        </message>
+        <message>
+            <source>LBL_ROTATION_ZY</source>
+            <translation>Rotation around X (Z to Y):</translation>
+        </message>
+        <message>
+            <source>PARALLEL_XOY_COMBO_ITEM</source>
+            <translation>|| X-Y</translation>
+        </message>
+        <message>
+            <source>PARALLEL_YOZ_COMBO_ITEM</source>
+            <translation>|| Y-Z</translation>
+        </message>
+        <message>
+            <source>PARALLEL_ZOX_COMBO_ITEM</source>
+            <translation>|| Z-X</translation>
+        </message>
+        <message>
+            <source>PLANES_COMBO_ITEM_i</source>
+            <translation>Plane# %1</translation>
+        </message>
+        <message>
+            <source>PLANES_COMBO_ITEM_no</source>
+            <translation>No planes</translation>
+        </message>
+        <message>
+            <source>REVERSE_NORMAL_CHK</source>
+            <translation>Reverse normal</translation>
+        </message>
+        <message>
+            <source>SHOW_PREVIEW_CHK</source>
+            <translation>Show preview</translation>
+        </message>
+        <message>
+            <source>TAB_IJK_STRUCTURED</source>
+            <translation>IJK (Structured)</translation>
+        </message>
+        <message>
+            <source>TAB_NON_STRUCTURED</source>
+            <translation>Non structured</translation>
+        </message>
+        <message>
+            <source>TITLE</source>
+            <translation>Change Clipping</translation>
+        </message>
+        <message>
+            <source>WRN_EMPTY_RESULTING_PRS</source>
+            <translation>Impossible to use given clipping planes because of VTK restrictions.
+Please, provide non-empty resulting presentation.</translation>
+        </message>
+        <message>
+            <source>GRP_TYPE</source>
+            <translation>Type of plane</translation>
+        </message>
+        <message>
+            <source>GLOBAL_BTN</source>
+            <translation>Global planes</translation>
+        </message>
+        <message>
+            <source>LOCAL_BTN</source>
+            <translation>Local planes</translation>
+        </message>
+        <message>
+            <source>GRP_VIEWER_PLANES</source>
+            <translation>Planes defined in viewer</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_CubeAxesDlg</name>
+        <message>
+            <source>CAPTION</source>
+            <translation>Graduated axes</translation>
+        </message>
+        <message>
+            <source>IS_VISIBLE</source>
+            <translation>Is visible</translation>
+        </message>
+        <message>
+            <source>X_AXIS</source>
+            <translation>X axis</translation>
+        </message>
+        <message>
+            <source>Y_AXIS</source>
+            <translation>Y axis</translation>
+        </message>
+        <message>
+            <source>Z_AXIS</source>
+            <translation>Z axis</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_CursorDlg</name>
+        <message>
+            <source>&amp;Cancel</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>&amp;OK</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>TextLabel1</source>
+            <translation>Set value between</translation>
+        </message>
+        <message>
+            <source>TextLabel2</source>
+            <translation>minimal and maximal</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_CutLinesDlg</name>
+        <message>
+            <source>BASE_PLANE_POS</source>
+            <translation>Base plane position</translation>
+        </message>
+        <message>
+            <source>LBL_ABSOLUTE_LENGTH</source>
+            <translation>Use absolute length</translation>
+        </message>
+        <message>
+            <source>LBL_GENERATE_CURVES</source>
+            <translation>Generate Curves</translation>
+        </message>
+        <message>
+            <source>LBL_GENERATE_TABLE</source>
+            <translation>Generate Data Table</translation>
+        </message>
+        <message>
+            <source>LBL_INVERT_CURVES</source>
+            <translation>Invert all curves</translation>
+        </message>
+        <message>
+            <source>LBL_LINES_CUT</source>
+            <translation>Cut planes</translation>
+        </message>
+        <message>
+            <source>LBL_LINES_PLANE</source>
+            <translation>Plane of lines</translation>
+        </message>
+        <message>
+            <source>LBL_NB_PLANS</source>
+            <translation>Number of planes:</translation>
+        </message>
+        <message>
+            <source>LBL_POS</source>
+            <translation>Displacement (0...1):</translation>
+        </message>
+        <message>
+            <source>LBL_ROTATION</source>
+            <translation>Rotations</translation>
+        </message>
+        <message>
+            <source>LBL_ROT_X</source>
+            <translation>Rotation around X (Y to Z):</translation>
+        </message>
+        <message>
+            <source>LBL_ROT_Y</source>
+            <translation>Rotation around Y (Z to X):</translation>
+        </message>
+        <message>
+            <source>LBL_ROT_Z</source>
+            <translation>Rotation around Z (X to Y):</translation>
+        </message>
+        <message>
+            <source>LBL_SHOW_PREVIEW</source>
+            <translation>Show preview</translation>
+        </message>
+        <message>
+            <source>PARALLEL_XOY</source>
+            <translation>|| X-Y</translation>
+        </message>
+        <message>
+            <source>PARALLEL_YOZ</source>
+            <translation>|| Y-Z</translation>
+        </message>
+        <message>
+            <source>PARALLEL_ZOX</source>
+            <translation>|| Z-X</translation>
+        </message>
+        <message>
+            <source>SET_DEFAULT</source>
+            <translation>Set default</translation>
+        </message>
+        <message>
+            <source>TXT_ORIENTATION</source>
+            <translation>Orientation</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_CutPlanesDlg</name>
+        <message>
+            <source>&amp;Cancel</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>&amp;OK</source>
+            <translation></translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_CutPlanesPane</name>
+        <message>
+            <source>LBL_NB_PLANS</source>
+            <translation>Number of planes:</translation>
+        </message>
+        <message>
+            <source>LBL_POS</source>
+            <translation>Displacement (0...1):</translation>
+        </message>
+        <message>
+            <source>LBL_ROTATION</source>
+            <translation>Rotations</translation>
+        </message>
+        <message>
+            <source>LBL_ROT_X</source>
+            <translation>Rotation around X (Y to Z):</translation>
+        </message>
+        <message>
+            <source>LBL_ROT_Y</source>
+            <translation>Rotation around Y (Z to X):</translation>
+        </message>
+        <message>
+            <source>LBL_ROT_Z</source>
+            <translation>Rotation around Z (X to Y):</translation>
+        </message>
+        <message>
+            <source>LBL_SHOW_PREVIEW</source>
+            <translation>Show preview</translation>
+        </message>
+        <message>
+            <source>PARALLEL_XOY</source>
+            <translation>// X-Y</translation>
+        </message>
+        <message>
+            <source>PARALLEL_YOZ</source>
+            <translation>// Y-Z</translation>
+        </message>
+        <message>
+            <source>PARALLEL_ZOX</source>
+            <translation>// Z-X</translation>
+        </message>
+        <message>
+            <source>TXT_ORIENTATION</source>
+            <translation>Orientation</translation>
+        </message>
+        <message>
+            <source>LBL_DEFORMATION</source>
+            <translation>Deformation</translation>
+        </message>
+        <message>
+            <source>LBL_DEFROMATION_SCALE</source>
+            <translation>Scale Factor :</translation>
+        </message>
+        <message>
+            <source>LBL_DEFROMATION_VECT</source>
+            <translation>Vectors :</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_DeformedShapeDlg</name>
+        <message>
+            <source>&amp;Cancel</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>&amp;OK</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>DEFORMED_SHAPE_TAB</source>
+            <translation>Deformed Shape</translation>
+        </message>
+        <message>
+            <source>DLG_TITLE</source>
+            <translation>Deformed Shape</translation>
+        </message>
+        <message>
+            <source>INPUT_TAB</source>
+            <translation>Input</translation>
+        </message>
+        <message>
+            <source>MAGNITUDE_COLORING</source>
+            <translation>Magnitude coloring</translation>
+        </message>
+        <message>
+            <source>SCALAR_BAR_TAB</source>
+            <translation>Scalar Bar</translation>
+        </message>
+        <message>
+            <source>SCALE_FACTOR</source>
+            <translation>Scale Factor:</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_EditContainerDlg</name>
+        <message>
+            <source>&amp;Cancel</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>&amp;OK</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>LBL_CONTAINER</source>
+            <translation>Container</translation>
+        </message>
+        <message>
+            <source>LBL_STUDY</source>
+            <translation>Study</translation>
+        </message>
+        <message>
+            <source>TXT_CURVE</source>
+            <translation>Curve</translation>
+        </message>
+        <message>
+            <source>TXT_TABLE</source>
+            <translation>Table</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_FeatureEdgesPanel</name>
+        <message>
+            <source>WINDOW_TITLE</source>
+            <translation>Feature edges</translation>
+        </message>
+        <message>
+            <source>FEATURE_EDGES_ANGLE</source>
+            <translation>Feature edges angle</translation>
+        </message>
+        <message>
+            <source>FEATURE_EDGES_COLORING</source>
+            <translation>Coloring</translation>
+        </message>
+        <message>
+            <source>FEATURE_EDGES_PROPERTIES</source>
+            <translation>Feature edges properties</translation>
+        </message>
+        <message>
+            <source>SHOW_BOUNDARY_EDGES</source>
+            <translation>Show boundary edges</translation>
+        </message>
+        <message>
+            <source>SHOW_FEATURE_EDGES</source>
+            <translation>Show feature edges</translation>
+        </message>
+        <message>
+            <source>SHOW_MANIFOLD_EDGES</source>
+            <translation>Show manifold edges</translation>
+        </message>
+        <message>
+            <source>SHOW_NON_MANIFOLD_EDGES</source>
+            <translation>Show non-manifold edges</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_FileDlg</name>
+        <message>
+            <source>FULL_LOAD</source>
+            <translation>Full loading for current file</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_FindPane</name>
+        <message>
+            <source>BETWEEN</source>
+            <translation>Between</translation>
+        </message>
+        <message>
+            <source>CONDITION</source>
+            <translation>Where scalar value is:</translation>
+        </message>
+        <message>
+            <source>FIND_TITLE</source>
+            <translation>Find</translation>
+        </message>
+        <message>
+            <source>INCORRECT_VALUES</source>
+            <translation>Input values are incorrect</translation>
+        </message>
+        <message>
+            <source>MAXIMUM</source>
+            <translation>Maximum</translation>
+        </message>
+        <message>
+            <source>MINIMUM</source>
+            <translation>Minimum</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_FontWg</name>
+        <message>
+            <source>ARIAL</source>
+            <translation>Arial</translation>
+        </message>
+        <message>
+            <source>BOLD</source>
+            <translation>Bold</translation>
+        </message>
+        <message>
+            <source>COURIER</source>
+            <translation>Courier</translation>
+        </message>
+        <message>
+            <source>ITALIC</source>
+            <translation>Italic</translation>
+        </message>
+        <message>
+            <source>SHADOW</source>
+            <translation>Shadow</translation>
+        </message>
+        <message>
+            <source>TIMES</source>
+            <translation>Times</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_GaussPointsDlg</name>
+        <message>
+            <source>&amp;Cancel</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>&amp;OK</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>DEFORMED_SHAPE</source>
+            <translation>Deformed Shape</translation>
+        </message>
+        <message>
+            <source>DEFORMED_SHAPE_TITLE</source>
+            <translation>Deformed Shape</translation>
+        </message>
+        <message>
+            <source>DLG_PREF_TITLE</source>
+            <translation>Gauss Points Preferences</translation>
+        </message>
+        <message>
+            <source>DLG_PROP_TITLE</source>
+            <translation>Gauss Points Properties</translation>
+        </message>
+        <message>
+            <source>DLG_TITLE</source>
+            <translation>Gauss Points</translation>
+        </message>
+        <message>
+            <source>GAUSS_POINTS_TAB</source>
+            <translation>Gauss Points</translation>
+        </message>
+        <message>
+            <source>GEOMETRY</source>
+            <translation>Geometry</translation>
+        </message>
+        <message>
+            <source>INPUT_TAB</source>
+            <translation>Input</translation>
+        </message>
+        <message>
+            <source>PRS_TITLE</source>
+            <translation>Presentation</translation>
+        </message>
+        <message>
+            <source>RESULTS</source>
+            <translation>Results</translation>
+        </message>
+        <message>
+            <source>SCALAR_BAR_TAB</source>
+            <translation>Scalar Bar</translation>
+        </message>
+        <message>
+            <source>SCALE_FACTOR</source>
+            <translation>Scale Factor :</translation>
+        </message>
+        <message>
+            <source>WARNING</source>
+            <translation>Warning</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_GaussScalarBarPane</name>
+        <message>
+            <source>ACTIVE_BAR_GRP</source>
+            <translation>Active bar</translation>
+        </message>
+        <message>
+            <source>BICOLOR</source>
+            <translation>Bicolor</translation>
+        </message>
+        <message>
+            <source>COLORS_LABELS_GRP</source>
+            <translation>Colors and labels</translation>
+        </message>
+        <message>
+            <source>DIMENSIONS_GRP</source>
+            <translation>Dimensions</translation>
+        </message>
+        <message>
+            <source>DISPLAYED</source>
+            <translation>Displayed</translation>
+        </message>
+        <message>
+            <source>FIELD_RANGE_BTN</source>
+            <translation>Use field range</translation>
+        </message>
+        <message>
+            <source>GLOBAL</source>
+            <translation>Global</translation>
+        </message>
+        <message>
+            <source>HORIZONTAL_BTN</source>
+            <translation>Horizontal</translation>
+        </message>
+        <message>
+            <source>IMPOSED_RANGE_BTN</source>
+            <translation>Use imposed range</translation>
+        </message>
+        <message>
+            <source>LBL_HEIGHT</source>
+            <translation>Height:</translation>
+        </message>
+        <message>
+            <source>LBL_MAX</source>
+            <translation>Max:</translation>
+        </message>
+        <message>
+            <source>LBL_MIN</source>
+            <translation>Min:</translation>
+        </message>
+        <message>
+            <source>LBL_NB_COLORS</source>
+            <translation>Nb. of colors:</translation>
+        </message>
+        <message>
+            <source>LBL_NB_LABELS</source>
+            <translation>Nb. of labels:</translation>
+        </message>
+        <message>
+            <source>LBL_SPACING</source>
+            <translation>Spacing:</translation>
+        </message>
+        <message>
+            <source>LBL_WIDTH</source>
+            <translation>Width:</translation>
+        </message>
+        <message>
+            <source>LBL_X</source>
+            <translation>X:</translation>
+        </message>
+        <message>
+            <source>LBL_Y</source>
+            <translation>Y:</translation>
+        </message>
+        <message>
+            <source>LOCAL</source>
+            <translation>Local</translation>
+        </message>
+        <message>
+            <source>LOGARITHMIC_SCALING</source>
+            <translation>Logarithmic</translation>
+        </message>
+        <message>
+            <source>ORIENTATION_GRP</source>
+            <translation>Orientation</translation>
+        </message>
+        <message>
+            <source>ORIGIN_GRP</source>
+            <translation>Origin</translation>
+        </message>
+        <message>
+            <source>RAINBOW</source>
+            <translation>Rainbow</translation>
+        </message>
+        <message>
+            <source>SAVE_DEFAULT_CHK</source>
+            <translation>Save as default</translation>
+        </message>
+        <message>
+            <source>SCALAR_RANGE_GRP</source>
+            <translation>Scalar range:</translation>
+        </message>
+        <message>
+            <source>VERTICAL_BTN</source>
+            <translation>Vertical</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_GaussPointsSelectionPane</name>
+        <message>
+            <source>DISPLAY_PARENT_MESH</source>
+            <translation>Display parent mesh element</translation>
+        </message>
+        <message>
+            <source>PICKING_DLG_TITLE</source>
+            <translation>Picking</translation>
+        </message>
+        <message>
+            <source>DATA_POSITION</source>
+            <translation>Position</translation>
+        </message>
+        <message>
+            <source>PARENT_ELEMENT</source>
+            <translation>Parent ID:</translation>
+        </message>
+        <message>
+            <source>PARENT_ELEMENT_TIP</source>
+            <translation>Parent mesh element ID</translation>
+        </message>
+        <message>
+            <source>LOCAL_POINT</source>
+            <translation>Local ID:</translation>
+        </message>
+        <message>
+            <source>LOCAL_POINT_TIP</source>
+            <translation>Local Gauss Point ID</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_InputPanel</name>
+        <message>
+            <source>WINDOW_TITLE</source>
+            <translation>Input Panel</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_InputPane</name>
+        <message>
+            <source>ENTITY</source>
+            <translation>Entity :</translation>
+        </message>
+        <message>
+            <source>FIELD</source>
+            <translation>Field :</translation>
+        </message>
+        <message>
+            <source>MED_FILE</source>
+            <translation>Source File :</translation>
+        </message>
+        <message>
+            <source>MESH</source>
+            <translation>Mesh :</translation>
+        </message>
+        <message>
+            <source>PRS_DATA_SOUIRCE</source>
+            <translation>Data Source</translation>
+        </message>
+        <message>
+            <source>REINITIALIZE</source>
+            <translation>Auto Update</translation>
+        </message>
+        <message>
+            <source>TIME_STAMP</source>
+            <translation>Time Stamp :</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_IsoSurfPane</name>
+        <message>
+            <source>MAX_VALUE</source>
+            <translation>Maximum value:</translation>
+        </message>
+        <message>
+            <source>MIN_VALUE</source>
+            <translation>Minimum value:</translation>
+        </message>
+        <message>
+            <source>MSG_MINMAX_VALUES</source>
+            <translation>Min value can not be higher or equal to Max value</translation>
+        </message>
+        <message>
+            <source>NB_SURFACES</source>
+            <translation>Number of surfaces:</translation>
+        </message>
+        <message>
+            <source>MAGNITUDE_COLORING_CHK</source>
+            <translation>Magnitude coloring</translation>
+        </message>
+        <message>
+            <source>SEL_COLOR_BTN</source>
+            <translation>Select Color</translation>
+        </message>
+        <message>
+            <source>SHOW_VALUES_CHK</source>
+            <translation>Show values (nb per surface)</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_IsoSurfacesDlg</name>
+        <message>
+            <source>&amp;Cancel</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>&amp;OK</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>DEFINE_ISOSURFACES</source>
+            <translation>Iso Surfaces Definition</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_ItemContainer</name>
+        <message>
+            <source>AUTO_CHECK_LBL</source>
+            <translation>Auto assign</translation>
+        </message>
+        <message>
+            <source>CIRCLE_MARKER_LBL</source>
+            <translation>Circle</translation>
+        </message>
+        <message>
+            <source>CROSS_MARKER_LBL</source>
+            <translation>Cross</translation>
+        </message>
+        <message>
+            <source>DAHSDOTDOT_LINE_LBL</source>
+            <translation>DashDotDot</translation>
+        </message>
+        <message>
+            <source>DASHDOT_LINE_LBL</source>
+            <translation>DashDot</translation>
+        </message>
+        <message>
+            <source>DASH_LINE_LBL</source>
+            <translation>Dash</translation>
+        </message>
+        <message>
+            <source>DIAMOND_MARKER_LBL</source>
+            <translation>Diamond</translation>
+        </message>
+        <message>
+            <source>DOT_LINE_LBL</source>
+            <translation>Dot</translation>
+        </message>
+        <message>
+            <source>DTRIANGLE_MARKER_LBL</source>
+            <translation>Downward triangle</translation>
+        </message>
+        <message>
+            <source>H</source>
+            <translation> H </translation>
+        </message>
+        <message>
+            <source>LTRIANGLE_MARKER_LBL</source>
+            <translation>Leftward triangle</translation>
+        </message>
+        <message>
+            <source>NONE_LINE_LBL</source>
+            <translation>None</translation>
+        </message>
+        <message>
+            <source>NONE_MARKER_LBL</source>
+            <translation>None</translation>
+        </message>
+        <message>
+            <source>RECTANGLE_MARKER_LBL</source>
+            <translation>Rectangle</translation>
+        </message>
+        <message>
+            <source>RTRIANGLE_MARKER_LBL</source>
+            <translation>Rightward triangle</translation>
+        </message>
+        <message>
+            <source>SOLID_LINE_LBL</source>
+            <translation>Solid</translation>
+        </message>
+        <message>
+            <source>UTRIANGLE_MARKER_LBL</source>
+            <translation>Upward triangle</translation>
+        </message>
+        <message>
+            <source>V</source>
+            <translation> V </translation>
+        </message>
+        <message>
+            <source>XCROSS_MARKER_LBL</source>
+            <translation>Diagonal cross</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_Module</name>
+        <message>
+            <source>MEN_DESK_FILE_SAVE_GUI_STATE</source>
+            <translation>Save VISU State</translation>
+        </message>
+        <message>
+            <source>MEN_GAUSS</source>
+            <translation>Gauss</translation>
+        </message>
+        <message>
+            <source>MEN_GAUSS_CREATE_PRS</source>
+            <translation>Gauss Points</translation>
+        </message>
+        <message>
+            <source>MEN_GAUSS_NEW_VIEWER</source>
+            <translation>Points View</translation>
+        </message>
+        <message>
+            <source>MEN_OVERWRITE_CONFIGURATION</source>
+            <translation>Overwrite Current Configuration</translation>
+        </message>
+        <message>
+            <source>MEN_RESTORE_CONFIGURATION</source>
+            <translation>Restore Current Configuration</translation>
+        </message>
+        <message>
+            <source>MEN_SAVE_CONFIGURATION</source>
+            <translation>Store Current Configuration</translation>
+        </message>
+        <message>
+            <source>MEN_VISUALISATION</source>
+            <translation>Visualization</translation>
+        </message>
+        <message>
+            <source>PRP_DESK_FILE_SAVE_GUI_STATE</source>
+            <translation>Saves current state of viewers, displayed objects, etc.</translation>
+        </message>
+        <message>
+            <source>TOOL_IMPORT</source>
+            <translation>Import Toolbar</translation>
+        </message>
+        <message>
+            <source>TOOL_VISUALISATION</source>
+            <translation>Visualization</translation>
+        </message>
+        <message>
+            <source>TOT_DESK_FILE_SAVE_GUI_STATE</source>
+            <translation>Save VISU state</translation>
+        </message>
+        <message>
+            <source>VISU_CAMERA_MOVE_PREF</source>
+            <translation>Number of steps between two positions</translation>
+        </message>
+        <message>
+            <source>VISU_CAMERA_PREF_GROUP_TTL</source>
+            <translation>Camera movements</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_INSIDE_CURSOR_PREF_TAB_TTL</source>
+            <translation>Inside Cursor</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_OUTSIDE_CURSOR_PREF_TAB_TTL</source>
+            <translation>Outside Cursor</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_ACTIVE_BAR</source>
+            <translation>Active bar</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_ALPHA_TEXTURE</source>
+            <translation>Alpha Channel Texture (16x16)</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_ALPHA_THRESHOLD</source>
+            <translation>Alpha Channel Threshold</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_BICOLOR</source>
+            <translation>Bicolor</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_CLAMP</source>
+            <translation>Maximum Size (Clamp)</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_COLOR</source>
+            <translation>Color</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_COLOR_GROUP_TTL</source>
+            <translation>Color</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_DEFORMED_SHAPE_GROUP_TTL</source>
+            <translation>Deformed Shape</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_DISPLAY_GLOBAL</source>
+            <translation>Display global bar</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_FACE_LIMIT</source>
+            <translation>Notify when number of faces exceeds</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_GEOMSPHERE</source>
+            <translation>Geometrical sphere</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_GEOM_GROUP_TTL</source>
+            <translation>Geometry</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_GLOBAL</source>
+            <translation>Global</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_INCREMENT</source>
+            <translation>+/- Ratio</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_LOCAL</source>
+            <translation>Local</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_MAGNIFICATION</source>
+            <translation>Magnification (%)</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_MAGNIFICATION_GROUP_TTL</source>
+            <translation>Magnification (Inside and Outside)</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_MAIN_TEXTURE</source>
+            <translation>Main Texture (16x16)</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_MAX_SIZE</source>
+            <translation>Range value for max size (%)</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_MIN_SIZE</source>
+            <translation>Range value for min size (%)</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_OPENGLPOINT</source>
+            <translation>OpenGL point</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_POINTSPRITE</source>
+            <translation>Point sprite</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_PRIMITIVE_GROUP_TTL</source>
+            <translation>Primitive</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_PRIMITIVE_TYPE</source>
+            <translation>Primitive Type</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_RAINBOW</source>
+            <translation>Rainbow</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_RESOLUTION</source>
+            <translation>Geometrical sphere resolution</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_SCALAR_BAR_MODE</source>
+            <translation>Scalar bar mode</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_SCALE_FACTOR</source>
+            <translation>Scale factor</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_SIZE</source>
+            <translation>Size of points (%)</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_SIZE_GROUP_TTL</source>
+            <translation>Size</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_SPACING</source>
+            <translation>Spacing</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_TAB_TTL</source>
+            <translation>Gauss Points</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_PREF_UNIFORM_COLOR</source>
+            <translation>Uniform Color</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_SCALAR_BAR_PREF_GROUP_TTL</source>
+            <translation>Gauss Points Scalar Bar</translation>
+        </message>
+        <message>
+            <source>VISU_GAUSS_SCALAR_BAR_PREF_TAB_TTL</source>
+            <translation>Gauss Points Scalar Bar</translation>
+        </message>
+        <message>
+            <source>VISU_KEYBOARD_PREF</source>
+            <translation>[+]/[-] Speed increment</translation>
+        </message>
+        <message>
+            <source>VISU_KEYBOARD_PREF_GROUP_TTL</source>
+            <translation>Keyboard</translation>
+        </message>
+        <message>
+            <source>VISU_MOUSE_PREF</source>
+            <translation>Mouse behaviour</translation>
+        </message>
+        <message>
+            <source>VISU_MOUSE_PREF_GROUP_TLT</source>
+            <translation>Mouse</translation>
+        </message>
+        <message>
+            <source>VISU_MOUSE_PREF_KEYBOARD_FREE</source>
+            <translation>Keyboard free</translation>
+        </message>
+        <message>
+            <source>VISU_MOUSE_PREF_STANDARD</source>
+            <translation>Salome standard controls</translation>
+        </message>
+        <message>
+            <source>VISU_MOUSE_PREF_TAB_TLT</source>
+            <translation>Navigation</translation>
+        </message>
+        <message>
+            <source>VISU_PICKING_PREF_BELOW_POINT</source>
+            <translation>Centered below the point</translation>
+        </message>
+        <message>
+            <source>VISU_PICKING_PREF_CAMERA_GROUP_TTL</source>
+            <translation>Movement of the camera</translation>
+        </message>
+        <message>
+            <source>VISU_PICKING_PREF_CAMERA_MOVEMENT</source>
+            <translation>Enable movement of the camera</translation>
+        </message>
+        <message>
+            <source>VISU_PICKING_PREF_CURSOR_GROUP_TTL</source>
+            <translation>Cursor</translation>
+        </message>
+        <message>
+            <source>VISU_PICKING_PREF_CURSOR_SIZE</source>
+            <translation>Size of the cursor</translation>
+        </message>
+        <message>
+            <source>VISU_PICKING_PREF_DISPLAY_PARENT_MESH</source>
+            <translation>Display parent mesh element</translation>
+        </message>
+        <message>
+            <source>VISU_PICKING_PREF_INFO_WINDOW</source>
+            <translation>Enable information window</translation>
+        </message>
+        <message>
+            <source>VISU_PICKING_PREF_INFO_WINDOW_GROUP_TTL</source>
+            <translation>Information window</translation>
+        </message>
+        <message>
+            <source>VISU_PICKING_PREF_PARENT_MESH_TTL</source>
+            <translation>Parent mesh element</translation>
+        </message>
+        <message>
+            <source>VISU_PICKING_PREF_POINT_SELECTION_TOLERANCE</source>
+            <translation>Point selection tolerance</translation>
+        </message>
+        <message>
+            <source>VISU_PICKING_PREF_POSITION</source>
+            <translation>Position</translation>
+        </message>
+        <message>
+            <source>VISU_PICKING_PREF_PYRAMID_HEIGHT</source>
+            <translation>Height of the pyramids</translation>
+        </message>
+        <message>
+            <source>VISU_PICKING_PREF_SELECTION_COLOR</source>
+            <translation>Selection cursor color</translation>
+        </message>
+        <message>
+            <source>VISU_PICKING_PREF_STEP_NUMBER</source>
+            <translation>Number of steps between two positions</translation>
+        </message>
+        <message>
+            <source>VISU_PICKING_PREF_TAB_TTL</source>
+            <translation>Picking</translation>
+        </message>
+        <message>
+            <source>VISU_PICKING_PREF_TOLERANCE_GROUP_TTL</source>
+            <translation>Tolerance</translation>
+        </message>
+        <message>
+            <source>VISU_PICKING_PREF_TOP_LEFT_CORNER</source>
+            <translation>Top-left corner of the 3D view</translation>
+        </message>
+        <message>
+            <source>VISU_PICKING_PREF_TRANSPARENCY</source>
+            <translation>Transparency</translation>
+        </message>
+        <message>
+            <source>VISU_PICKING_PREF_ZOOM_FACTOR</source>
+            <translation>Zoom factor</translation>
+        </message>
+        <message>
+            <source>VISU_RECORDER_PREF_ALL_DISLPAYED_FRAMES</source>
+            <translation>Recording all displayed frames</translation>
+        </message>
+        <message>
+            <source>VISU_RECORDER_PREF_FPS</source>
+            <translation>FPS</translation>
+        </message>
+        <message>
+            <source>VISU_RECORDER_PREF_GROUP_TTL</source>
+            <translation>Settings</translation>
+        </message>
+        <message>
+            <source>VISU_RECORDER_PREF_PROGRESSIVE</source>
+            <translation>Progressive</translation>
+        </message>
+        <message>
+            <source>VISU_RECORDER_PREF_QUALITY</source>
+            <translation>Quality</translation>
+        </message>
+        <message>
+            <source>VISU_RECORDER_PREF_RECORDING_MODE</source>
+            <translation>Mode</translation>
+        </message>
+        <message>
+            <source>VISU_RECORDER_PREF_SKIPPED_FRAMES</source>
+            <translation>Recording at a given FPS</translation>
+        </message>
+        <message>
+            <source>VISU_RECORDER_PREF_TAB_TTL</source>
+            <translation>Recorder</translation>
+        </message>
+        <message>
+            <source>VISU_SPACEMOUSE_PREF</source>
+            <translation>Spacemouse</translation>
+        </message>
+        <message>
+            <source>VISU_SPACEMOUSE_PREF_1</source>
+            <translation>Decrease speed increment</translation>
+        </message>
+        <message>
+            <source>VISU_SPACEMOUSE_PREF_2</source>
+            <translation>Increase speed increment</translation>
+        </message>
+        <message>
+            <source>VISU_SPACEMOUSE_PREF_3</source>
+            <translation>Decrease Gauss points magnification</translation>
+        </message>
+        <message>
+            <source>VISU_SPACEMOUSE_PREF_4</source>
+            <translation>Increase Gauss points magnification</translation>
+        </message>
+        <message>
+            <source>VISU_SPACEMOUSE_PREF_5</source>
+            <translation>Dominant / combined switch</translation>
+        </message>
+        <message>
+            <source>VISU_SPACEMOUSE_PREF_BTN_*</source>
+            <translation>Button *</translation>
+        </message>
+        <message>
+            <source>VISU_SPACEMOUSE_PREF_BTN_1</source>
+            <translation>Button 1</translation>
+        </message>
+        <message>
+            <source>VISU_SPACEMOUSE_PREF_BTN_10</source>
+            <translation>Button 10</translation>
+        </message>
+        <message>
+            <source>VISU_SPACEMOUSE_PREF_BTN_11</source>
+            <translation>Button 11</translation>
+        </message>
+        <message>
+            <source>VISU_SPACEMOUSE_PREF_BTN_2</source>
+            <translation>Button 2</translation>
+        </message>
+        <message>
+            <source>VISU_SPACEMOUSE_PREF_BTN_3</source>
+            <translation>Button 3</translation>
+        </message>
+        <message>
+            <source>VISU_SPACEMOUSE_PREF_BTN_4</source>
+            <translation>Button 4</translation>
+        </message>
+        <message>
+            <source>VISU_SPACEMOUSE_PREF_BTN_5</source>
+            <translation>Button 5</translation>
+        </message>
+        <message>
+            <source>VISU_SPACEMOUSE_PREF_BTN_6</source>
+            <translation>Button 6</translation>
+        </message>
+        <message>
+            <source>VISU_SPACEMOUSE_PREF_BTN_7</source>
+            <translation>Button 7</translation>
+        </message>
+        <message>
+            <source>VISU_SPACEMOUSE_PREF_BTN_8</source>
+            <translation>Button 8</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_NameDlg</name>
+        <message>
+            <source>NAME_LBL</source>
+            <translation>Name: </translation>
+        </message>
+        <message>
+            <source>TLT_RENAME</source>
+            <translation>Rename</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_NonIsometricDlg</name>
+        <message>
+            <source>&amp;Apply</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>&amp;Cancel</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>&amp;Reset</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>DLG_TITLE</source>
+            <translation>Scaling</translation>
+        </message>
+        <message>
+            <source>LBL_X</source>
+            <translation>X :</translation>
+        </message>
+        <message>
+            <source>LBL_Y</source>
+            <translation>Y :</translation>
+        </message>
+        <message>
+            <source>LBL_Z</source>
+            <translation>Z :</translation>
+        </message>
+        <message>
+            <source>O&amp;K</source>
+            <translation></translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_Plot3DDlg</name>
+        <message>
+            <source>INPUT_TAB_TITLE</source>
+            <translation>Input</translation>
+        </message>
+        <message>
+            <source>PLOT3D_TAB_TITLE</source>
+            <translation>Plot 3D</translation>
+        </message>
+        <message>
+            <source>SCALAR_BAR_TAB_TITLE</source>
+            <translation>Scalar Bar</translation>
+        </message>
+        <message>
+            <source>TITLE</source>
+            <translation>Plot3D Definition</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_Plot3DPane</name>
+        <message>
+            <source>CONTOUR</source>
+            <translation>Contour</translation>
+        </message>
+        <message>
+            <source>NUMBER_CONTOURS</source>
+            <translation>Number of contours:</translation>
+        </message>
+        <message>
+            <source>ORIENTATION</source>
+            <translation>Orientation</translation>
+        </message>
+        <message>
+            <source>POSITION</source>
+            <translation>Position</translation>
+        </message>
+        <message>
+            <source>POSITION_VALUE</source>
+            <translation>Value: </translation>
+        </message>
+        <message>
+            <source>PRESENTATION_TYPE</source>
+            <translation>Presentation type</translation>
+        </message>
+        <message>
+            <source>PREVIEW</source>
+            <translation>Preview cutting plane</translation>
+        </message>
+        <message>
+            <source>RELATIVE</source>
+            <translation>Relative</translation>
+        </message>
+        <message>
+            <source>ROTATIONS</source>
+            <translation>Rotations</translation>
+        </message>
+        <message>
+            <source>ROTATION_X</source>
+            <translation>Rotation around X (Y to Z):</translation>
+        </message>
+        <message>
+            <source>ROTATION_Y</source>
+            <translation>Rotation around Y (Z to X):</translation>
+        </message>
+        <message>
+            <source>ROTATION_Z</source>
+            <translation>Rotation around Z (X to Y):</translation>
+        </message>
+        <message>
+            <source>SCALE</source>
+            <translation>Scale Factor:</translation>
+        </message>
+        <message>
+            <source>SURFACE</source>
+            <translation>Surface</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_ScalarBarDlg</name>
+        <message>
+            <source>&amp;Cancel</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>&amp;OK</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>DLG_PREF_TITLE</source>
+            <translation>Scalar Bar Preferences</translation>
+        </message>
+        <message>
+            <source>DLG_PROP_TITLE</source>
+            <translation>Scalar Bar Properties</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_ScalarBarPane</name>
+        <message>
+            <source>COLORS_LABELS_GRP</source>
+            <translation>Colors and labels</translation>
+        </message>
+        <message>
+            <source>DIMENSIONS_GRP</source>
+            <translation>Dimensions (in % of the size of view)</translation>
+        </message>
+        <message>
+            <source>FIELD_RANGE_BTN</source>
+            <translation>Use field range</translation>
+        </message>
+        <message>
+            <source>HORIZONTAL_BTN</source>
+            <translation>Horizontal</translation>
+        </message>
+        <message>
+            <source>IMPOSED_RANGE_BTN</source>
+            <translation>Use imposed range</translation>
+        </message>
+        <message>
+            <source>LBL_HEIGHT</source>
+            <translation>Height:</translation>
+        </message>
+        <message>
+            <source>LBL_MAX</source>
+            <translation>Max:</translation>
+        </message>
+        <message>
+            <source>LBL_MIN</source>
+            <translation>Min:</translation>
+        </message>
+        <message>
+            <source>LBL_NB_COLORS</source>
+            <translation>Nb. of colors:</translation>
+        </message>
+        <message>
+            <source>LBL_NB_LABELS</source>
+            <translation>Nb. of labels:</translation>
+        </message>
+        <message>
+            <source>LBL_SHOW_PREVIEW</source>
+            <translation>Preview</translation>
+        </message>
+        <message>
+            <source>SHOW_DISTRIBUTION</source>
+            <translation>Show distribution</translation>
+        </message>
+        <message>
+            <source>FILTER_BY_SCALARS</source>
+            <translation>Filter by scalars</translation>
+        </message>
+        <message>
+            <source>VALUES_LABELING</source>
+            <translation>Values labeling</translation>
+        </message>
+        <message>
+            <source>LBL_WIDTH</source>
+            <translation>Width:</translation>
+        </message>
+        <message>
+            <source>LBL_X</source>
+            <translation>X:</translation>
+        </message>
+        <message>
+            <source>LBL_Y</source>
+            <translation>Y:</translation>
+        </message>
+        <message>
+            <source>LOGARITHMIC_SCALING</source>
+            <translation>Logarithmic</translation>
+        </message>
+        <message>
+            <source>MSG_MINMAX_VALUES</source>
+            <translation>Min value can not be higher or equal to Max value</translation>
+        </message>
+        <message>
+            <source>ORIENTATION_GRP</source>
+            <translation>Orientation</translation>
+        </message>
+        <message>
+            <source>ORIGIN_GRP</source>
+            <translation>Origin</translation>
+        </message>
+        <message>
+            <source>SAVE_DEFAULT_CHK</source>
+            <translation>Save as default</translation>
+        </message>
+        <message>
+            <source>SCALAR_RANGE_GRP</source>
+            <translation>Scalar range:</translation>
+        </message>
+        <message>
+            <source>VERTICAL_BTN</source>
+            <translation>Vertical</translation>
+        </message>
+        <message>
+            <source>WRN_LOGARITHMIC_FIELD_RANGE</source>
+            <translation>Logarithmic scaling: field range contains negative values, use imposed range instead</translation>
+        </message>
+        <message>
+            <source>WRN_LOGARITHMIC_RANGE</source>
+            <translation>Logarithmic scaling: use imposed range values > 0</translation>
+        </message>
+        <message>
+            <source>HIDE_SCALAR_BAR</source>
+            <translation>Hide scalar bar</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_DeformedShapeAndScalarMapDlg</name>
+        <message>
+            <source>&amp;Cancel</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>&amp;OK</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>DLG_TITLE</source>
+            <translation>Deformed Shape and Scalar Map</translation>
+        </message>
+        <message>
+            <source>FIELD_ITEM</source>
+            <translation>Scalar Field:</translation>
+        </message>
+        <message>
+            <source>INPUT_TAB</source>
+            <translation>Input</translation>
+        </message>
+        <message>
+            <source>SCALAR_BAR_TAB</source>
+            <translation>Scalar Bar</translation>
+        </message>
+        <message>
+            <source>DEFORMED_SHAPE_AND_SCALAR_MAP_TAB</source>
+            <translation>Deformed Shape and Scalar Map</translation>
+        </message>
+        <message>
+            <source>SCALE_FACTOR</source>
+            <translation>Scale Factor:</translation>
+        </message>
+        <message>
+            <source>TIMESTAMP_ITEM</source>
+            <translation>Current Time Stamp:</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_SetupPlot2dDlg</name>
+        <message>
+            <source>BUT_NO</source>
+            <translation>No</translation>
+        </message>
+        <message>
+            <source>BUT_YES</source>
+            <translation>Yes</translation>
+        </message>
+        <message>
+            <source>QUE_WANT_SAME_UNITS</source>
+            <translation>Do you want to choose all items with the same units for vertical axis?</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_Sweep</name>
+
+        <message><source>TITLE</source><translation>Sweep</translation></message>
+        <message><source>MEN_SWEEP_PANE</source><translation>Sweep</translation></message>
+
+        <message><source>NAVIGATION_TAB</source><translation>Navigation</translation></message>
+        <message><source>START_SWEEP_POSITION</source><translation>0 %</translation></message>
+        <message><source>END_SWEEP_POSITION</source><translation>100 %</translation></message>
+        <message><source>IS_CYCLED</source><translation>Cycled</translation></message>
+
+        <message><source>PROPERTIES_TAB</source><translation>Properties</translation></message>
+
+        <message><source>MODE</source><translation>Mode:</translation></message>
+        <message><source>LINEAR</source><translation>Linear</translation></message>
+        <message><source>COSINUSOIDAL</source><translation>1 - cos( t ) / 2</translation></message>
+        <message><source>SINUSOIDAL</source><translation>sin( t - Pi / 2 )</translation></message>
+
+        <message><source>NUMBER_OF_STEPS</source><translation>Number Steps:</translation></message>
+
+        <message><source>INTERVAL</source><translation>Interval</translation></message>
+        <message><source>[ 0, +PI ]</source><translation>[ 0, +PI ]</translation></message>
+        <message><source>[ -PI, +PI ]</source><translation>[ -PI, +PI ]</translation></message>
+
+        <message><source>DELAY_BETWEEN_STEPS</source><translation>Step Delay [ sec ]:</translation></message>
+    </context>
+    <context>
+        <name>VisuGUI_Slider</name>
+
+        <message><source>TITLE</source><translation>Slider</translation></message>
+        <message><source>MEN_SLIDER_PANE</source><translation>Slider</translation></message>
+
+        <message><source>NAVIGATION_TAB</source><translation>Navigation</translation></message>
+        <message><source>IS_CYCLED</source><translation>Cycled</translation></message>
+
+        <message><source>PROPERTIES_TAB</source><translation>Properties</translation></message>
+        <message><source>MINIMAL_MEMORY</source><translation>Minimal</translation></message>
+        <message><source>LIMITED_MEMORY</source><translation>Limited</translation></message>
+        <message><source>MEMORY_UNITS</source><translation>Mb</translation></message>
+
+        <message><source>USED_BY_CACHE</source><translation>Used:</translation></message>
+        <message><source>AVAILABLE_MEMORY</source><translation>Free:</translation></message>
+
+        <message><source>SPEED</source><translation>Speed</translation></message>
+    </context>
+    <context>
+        <name>VisuGUI_StreamLinesDlg</name>
+        <message>
+            <source>&amp;Cancel</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>&amp;OK</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>DLG_TITLE</source>
+            <translation>Stream lines Preferences</translation>
+        </message>
+        <message>
+            <source>LBL_DIRECTION</source>
+            <translation>Direction</translation>
+        </message>
+        <message>
+            <source>LBL_INTEGRATION_STEP</source>
+            <translation>Integration Step</translation>
+        </message>
+        <message>
+            <source>LBL_PROPAGATION_TIME</source>
+            <translation>Propagation Time</translation>
+        </message>
+        <message>
+            <source>LBL_SOURCE_TYPE</source>
+            <translation>Source type</translation>
+        </message>
+        <message>
+            <source>LBL_STEP_LENGTH</source>
+            <translation>Step Length</translation>
+        </message>
+        <message>
+            <source>LBL_USED_POINTS</source>
+            <translation>Used points (0..1)</translation>
+        </message>
+        <message>
+            <source>MAGNITUDE_COLORING_CHK</source>
+            <translation>Magnitude coloring</translation>
+        </message>
+        <message>
+            <source>SOURCE_GRP</source>
+            <translation>Source</translation>
+        </message>
+        <message>
+            <source>USE_COLOR_BTN</source>
+            <translation>Use Color</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_SweepPrefDlg</name>
+        <message>
+            <source>&amp;Cancel</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>&amp;OK</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>DLG_TITLE</source>
+            <translation>Sweeping Preferences</translation>
+        </message>
+        <message>
+            <source>LBL_NB_CYCLES</source>
+            <translation>Number of cycles:</translation>
+        </message>
+        <message>
+            <source>LBL_NB_STEPS</source>
+            <translation>Number of steps:</translation>
+        </message>
+        <message>
+            <source>LBL_TIME_STEP</source>
+            <translation>Time step (second):</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_TableDlg</name>
+        <message>
+            <source>EDIT_TABLE_TLT</source>
+            <translation>Edit Table</translation>
+        </message>
+        <message>
+            <source>ERR_TABLE_NOT_AVAILABLE</source>
+            <translation>Table is not available</translation>
+        </message>
+        <message>
+            <source>TABLE_OF_INTEGER_TLT</source>
+            <translation>Table of integer</translation>
+        </message>
+        <message>
+            <source>TABLE_OF_REAL_TLT</source>
+            <translation>Table of real</translation>
+        </message>
+        <message>
+            <source>VIEW_TABLE_TLT</source>
+            <translation>View Table</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_TableWidget</name>
+        <message>
+            <source>ADD_COLUMN_BTN</source>
+            <translation>Add Column</translation>
+        </message>
+        <message>
+            <source>ADD_ROW_BTN</source>
+            <translation>Add Row</translation>
+        </message>
+        <message>
+            <source>ADJUST_CELLS_BTN</source>
+            <translation>Adjust Cells</translation>
+        </message>
+        <message>
+            <source>CLEAR_BTN</source>
+            <translation>Clear</translation>
+        </message>
+        <message>
+            <source>REMOVE_COLUMN_BTN</source>
+            <translation>Remove Column(s)</translation>
+        </message>
+        <message>
+            <source>REMOVE_ROW_BTN</source>
+            <translation>Remove Row(s)</translation>
+        </message>
+        <message>
+            <source>SELECT_ALL_BTN</source>
+            <translation>Select All</translation>
+        </message>
+        <message>
+            <source>SET_TITLE_TLT</source>
+            <translation>Set title</translation>
+        </message>
+        <message>
+            <source>TITLE_LBL</source>
+            <translation>Title:</translation>
+        </message>
+        <message>
+            <source>UNITS_TLT</source>
+            <translation>Units</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_TextPrefDlg</name>
+        <message>
+            <source>&amp;Cancel</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>&amp;OK</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>LBL_BOLD</source>
+            <translation>Bold</translation>
+        </message>
+        <message>
+            <source>LBL_ITALIC</source>
+            <translation>Italic</translation>
+        </message>
+        <message>
+            <source>LBL_LABELS</source>
+            <translation>Labels</translation>
+        </message>
+        <message>
+            <source>LBL_SHADOW</source>
+            <translation>Shadow</translation>
+        </message>
+        <message>
+            <source>LBL_TITLE</source>
+            <translation>Title</translation>
+        </message>
+        <message>
+            <source>TIT_TEXT_PREF</source>
+            <translation>Text properties</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_TimeAnimationDlg</name>
+        <message>
+            <source>&amp;OK</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>ERROR</source>
+            <translation>Error</translation>
+        </message>
+        <message>
+            <source>MSG_NO_ANIMATIONDATA</source>
+            <translation>There is no data for animation</translation>
+        </message>
+        <message>
+            <source>MSG_NO_AVI_MAKER</source>
+            <translation>Tool jpeg2yuv, necessary for AVI recording, is not available.
+Please, refer to the documentation.</translation>
+        </message>
+        <message>
+            <source>MSG_NO_SUPPORTED_IMAGE_FORMATS</source>
+            <translation>There are no formats available for images output.
+Please, refer to the QT documentation.</translation>
+        </message>
+        <message>
+            <source>MSG_INVALID_IMAGE_FORMAT_INDEX</source>
+            <translation>Selected image format is out of supported scope.</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_TransparencyDlg</name>
+        <message>
+            <source>BUT_CLOSE</source>
+            <translation>Close</translation>
+        </message>
+        <message>
+            <source>TRANSPARENCY_OPAQUE</source>
+            <translation>Opaque</translation>
+        </message>
+        <message>
+            <source>TRANSPARENCY_TITLE</source>
+            <translation>Change Transparency</translation>
+        </message>
+        <message>
+            <source>TRANSPARENCY_TRANSPARENT</source>
+            <translation>Transparent</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_VectorsDlg</name>
+        <message>
+            <source>&amp;Cancel</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>&amp;OK</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>ARROWS_BTN</source>
+            <translation>Arrows</translation>
+        </message>
+        <message>
+            <source>CENTER_BTN</source>
+            <translation>Center</translation>
+        </message>
+        <message>
+            <source>CONES2_BTN</source>
+            <translation>Cones (2)</translation>
+        </message>
+        <message>
+            <source>CONES6_BTN</source>
+            <translation>Cones (6)</translation>
+        </message>
+        <message>
+            <source>DLG_TITLE</source>
+            <translation>Vector Field Representation</translation>
+        </message>
+        <message>
+            <source>GLYPH_POSITION_GRP</source>
+            <translation>Glyph position</translation>
+        </message>
+        <message>
+            <source>GLYPH_TYPE_GRP</source>
+            <translation>Glyph type</translation>
+        </message>
+        <message>
+            <source>HEAD_BTN</source>
+            <translation>Head</translation>
+        </message>
+        <message>
+            <source>LBL_LINE_WIDTH</source>
+            <translation>Line width:</translation>
+        </message>
+        <message>
+            <source>LBL_SCALE_FACTOR</source>
+            <translation>Scale factor:</translation>
+        </message>
+        <message>
+            <source>MAGNITUDE_COLORING_CHK</source>
+            <translation>Magnitude coloring</translation>
+        </message>
+        <message>
+            <source>SEL_COLOR_BTN</source>
+            <translation>Select Color</translation>
+        </message>
+        <message>
+            <source>TAIL_BTN</source>
+            <translation>Tail</translation>
+        </message>
+        <message>
+            <source>USE_GLYPHS_CHK</source>
+            <translation>Use glyphs</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_SelectionPanel</name>
+        <message>
+            <source>WINDOW_TITLE</source>
+            <translation>Selection</translation>
+        </message>
+        <message>
+            <source>MODE_TITLE</source>
+            <translation>Selection</translation>
+        </message>
+       <message>
+            <source>MODE_GAUSS_POINT</source>
+            <translation>Gauss point</translation>
+        </message>
+       <message>
+            <source>MODE_POINT</source>
+            <translation>Point</translation>
+        </message>
+       <message>
+            <source>MODE_CELL</source>
+            <translation>Cell</translation>
+        </message>
+       <message>
+            <source>MODE_ACTOR</source>
+            <translation>Actor</translation>
+        </message>
+       <message>
+            <source>MESH_NAME_LBL</source>
+            <translation>Mesh name:</translation>
+        </message>
+       <message>
+           <source>FIELD_NAME_LBL</source>
+            <translation>Field name:</translation>
+        </message>
+       <message>
+           <source>POINT_DATA_TITLE</source>
+            <translation>Data of Point</translation>
+        </message>
+       <message>
+           <source>DATA_ID_LBL</source>
+            <translation>ID:</translation>
+        </message>
+       <message>
+           <source>POINT_ID_HDR</source>
+            <translation>PointID</translation>
+        </message>
+       <message>
+           <source>CELL_ID_HDR</source>
+            <translation>CellID</translation>
+        </message>
+       <message>
+           <source>DATA_SCALAR_HDR</source>
+            <translation>Scalar</translation>
+        </message>
+       <message>
+           <source>DATA_VECTOR_HDR</source>
+            <translation>Vector</translation>
+        </message>
+       <message>
+           <source>POINT_INFO</source>
+            <translation>Point Info</translation>
+        </message>
+       <message>
+           <source>CELL_INFO</source>
+            <translation>Cell Info</translation>
+        </message>
+        <message>
+           <source>POINT_COORD_TITLE</source>
+            <translation>Coordinates</translation>
+        </message>
+       <message>
+           <source>CELL_DATA_TITLE</source>
+            <translation>Data of Cell</translation>
+        </message>
+       <message>
+           <source>CELL_DATA_ID_LBL</source>
+            <translation>ID:</translation>
+        </message>
+       <message>
+           <source>ACTOR_DATA_POSITION_TITLE</source>
+            <translation>Position</translation>
+        </message>
+       <message>
+           <source>ACTOR_DATA_SIZE_TITLE</source>
+            <translation>Size</translation>
+        </message>
+        <message>
+            <source>SELECTION_PREFERENCES</source>
+            <translation>Selection preferences...</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_SelectionPrefDlg</name>
+        <message>
+            <source>TLT_SELECTION_PREFERENCES</source>
+            <translation>Selection preferences</translation>
+        </message>
+        <message>
+            <source>BELOW_POINT</source>
+            <translation>Centered</translation>
+        </message>
+        <message>
+            <source>CAMERA_TITLE</source>
+            <translation>Movement of the camera</translation>
+        </message>
+        <message>
+            <source>CURSOR_SIZE</source>
+            <translation>Size of the cursor:</translation>
+        </message>
+        <message>
+            <source>CURSOR_TITLE</source>
+            <translation>Cursor</translation>
+        </message>
+        <message>
+            <source>INFO_WINDOW_TITLE</source>
+            <translation>Information window</translation>
+        </message>
+        <message>
+            <source>POINT_TOLERANCE</source>
+            <translation>Point tolerance:</translation>
+        </message>
+        <message>
+            <source>POSITION</source>
+            <translation>Position:</translation>
+        </message>
+        <message>
+            <source>PYRAMID_HEIGHT</source>
+            <translation>Height of the pyramids:</translation>
+        </message>
+        <message>
+            <source>SELECTION_COLOR</source>
+            <translation>Selection cursor color:</translation>
+        </message>
+        <message>
+            <source>STEP_NUMBER</source>
+            <translation>Number of steps:</translation>
+        </message>
+        <message>
+            <source>STEP_NUMBER_TIP</source>
+            <translation>Number of steps between two positions</translation>
+        </message>
+        <message>
+            <source>TOLERANCE_TITLE</source>
+            <translation>Tolerance</translation>
+        </message>
+        <message>
+            <source>TOP_LEFT_CORNER</source>
+            <translation>Top-left corner</translation>
+        </message>
+        <message>
+            <source>TRANSPARENCY</source>
+            <translation>Transparency:</translation>
+        </message>
+        <message>
+            <source>ZOOM_FACTOR</source>
+            <translation>Zoom factor:</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_BarPrefDlg</name>
+        <message>
+            <source>DIMENSIONS</source>
+            <translation>Dimensions (in % of the size of widget)</translation>
+        </message>  
+        <message>
+            <source>WIDTH</source>
+            <translation>Width</translation>
+        </message>  
+        <message>
+            <source>PRECISION</source>
+            <translation>Precision</translation>
+        </message>        
+        <message>
+            <source>&amp;OK</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>&amp;Cancel</source>
+            <translation></translation>
+        </message>
+        <message>
+            <source>TIT_BAR_PREF</source>
+            <translation>Bar properties</translation>
+        </message>
+        <message>
+            <source>LBL_TITLE_W</source>
+            <translation>Title size (%)</translation>
+        </message>
+        <message>
+            <source>LBL_LABEL_W</source>
+            <translation>Label size (%)</translation>
+        </message>
+        <message>
+            <source>LBL_LABEL_H</source>
+            <translation>Label height (%)</translation>
+        </message>
+        <message>
+            <source>LBL_BAR_W</source>
+            <translation>Bar width (%)</translation>
+        </message>
+        <message>
+            <source>LBL_BAR_H</source>
+            <translation>Bar height (%)</translation>
+        </message>
+        <message>
+            <source>LBL_SHOW_UNITS</source>
+            <translation>Show units</translation>
+        </message>
+        <message>
+            <source>LBL_UNITS_FORMAT</source>
+            <translation>Format:</translation>
+        </message>
+        <message>
+            <source>MSG_LABEL_FORMAT</source>
+            <translation>Labels format is invalid.</translation>
+        </message>
+        <message>
+            <source>MSG_BIG_SCALE</source>
+            <translation>The common Label size and Bar width or height should not be greater then 100%.</translation>
+        </message>
+        <message>
+            <source>MSG_BIG_SCALE_TLT</source>
+            <translation>The Title size should not be greater then 100%.</translation>
+        </message>
+        <message>
+            <source>AUTO</source>
+            <translation>auto</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_Table3DDlg</name>
+        <message>
+            <source>DLG_PREF_TITLE</source>
+            <translation>Table 3D Bar Preferences</translation>
+        </message>
+        <message>
+            <source>DLG_PROP_TITLE</source>
+            <translation>Scalar Bar Properties</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_TableScalarBarPane</name>
+        <message>
+            <source>SCALAR_RANGE_GRP</source>
+            <translation>Scalar range</translation>
+        </message>
+        <message>
+            <source>LOGARITHMIC_SCALING</source>
+            <translation>Logarithmic scaling</translation>
+        </message>
+        <message>
+            <source>FIELD_RANGE_BTN</source>
+            <translation>Use field range</translation>
+        </message>
+        <message>
+            <source>IMPOSED_RANGE_BTN</source>
+            <translation>Use imposed range</translation>
+        </message>
+        <message>
+            <source>LBL_MIN</source>
+            <translation>Min:</translation>
+        </message>
+        <message>
+            <source>LBL_MAX</source>
+            <translation>Max:</translation>
+        </message>
+        <message>
+            <source>COLORS_LABELS_GRP</source>
+            <translation>Colors and labels</translation>
+        </message>
+        <message>
+            <source>LBL_NB_COLORS</source>
+            <translation>Nb. of colors:</translation>
+        </message>
+        <message>
+            <source>LBL_NB_LABELS</source>
+            <translation>Nb. of labels:</translation>
+        </message>
+        <message>
+            <source>ORIENTATION_GRP</source>
+            <translation>Orientation</translation>
+        </message>
+        <message>
+            <source>VERTICAL_BTN</source>
+            <translation>Vertical</translation>
+        </message>
+        <message>
+            <source>HORIZONTAL_BTN</source>
+            <translation>Horizontal</translation>
+        </message>
+        <message>
+            <source>ORIGIN_GRP</source>
+            <translation>Origin</translation>
+        </message>
+        <message>
+            <source>LBL_X</source>
+            <translation>X:</translation>
+        </message>
+        <message>
+            <source>LBL_Y</source>
+            <translation>Y:</translation>
+        </message>
+        <message>
+            <source>LBL_SHOW_PREVIEW</source>
+            <translation>Show preview</translation>
+        </message>
+        <message>
+            <source>DIMENSIONS_GRP</source>
+            <translation>Dimensions</translation>
+        </message>
+        <message>
+            <source>LBL_WIDTH</source>
+            <translation>Width:</translation>
+        </message>
+        <message>
+            <source>LBL_HEIGHT</source>
+            <translation>Height:</translation>
+        </message>
+        <message>
+            <source>SAVE_DEFAULT_CHK</source>
+            <translation>Save as default values</translation>
+        </message>
+        <message>
+            <source>MSG_MINMAX_VALUES</source>
+            <translation>Min value can not be higher or equal to Max value</translation>
+        </message>
+        <message>
+            <source>WRN_LOGARITHMIC_RANGE</source>
+            <translation>Logarithmic scaling: use imposed range values > 0</translation>
+        </message>
+        <message>
+            <source>WRN_LOGARITHMIC_FIELD_RANGE</source>
+            <translation>Logarithmic scaling: field range contains negative values, use imposed range instead</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_Table3DPane</name>
+        <message>
+            <source>SCALE</source>
+            <translation>Scale Factor:</translation>
+        </message>
+        <message>
+            <source>PRESENTATION_TYPE</source>
+            <translation>Presentation type</translation>
+        </message>
+        <message>
+            <source>SURFACE</source>
+            <translation>Surface</translation>
+        </message>
+        <message>
+            <source>CONTOUR</source>
+            <translation>Contour</translation>
+        </message>
+        <message>
+            <source>NUMBER_CONTOURS</source>
+            <translation>Number of contours:</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_FileInfoDlg</name>
+        <message>
+            <source>CAPTION</source>
+            <translation>File information</translation>
+        </message>
+        <message>
+            <source>FILE_NAME</source>
+            <translation>File name</translation>
+        </message>
+        <message>
+            <source>FILE_SIZE</source>
+            <translation>File size (bytes)</translation>
+        </message>
+        <message>
+            <source>MED_VERSION</source>
+            <translation>MED version</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_ClippingPlaneMgr</name>
+        <message>
+            <source>TITLE</source>
+            <translation>Clipping planes configuration</translation>
+        </message>
+        <message>
+            <source>TITLE_PLANES</source>
+            <translation>Planes definition</translation>
+        </message>
+        <message>
+            <source>LBL_NAME</source>
+            <translation>Name of the plane</translation>
+        </message>
+        <message>
+            <source>BYVECTOR_TITLE</source>
+            <translation>Normal vector</translation>
+        </message>
+        <message>
+            <source>BYPLANE_TITLE</source>
+            <translation>Main plane</translation>
+        </message>
+        <message>
+            <source>CHK_AUTOAPPLY</source>
+            <translation>Auto apply</translation>
+        </message>
+        <message>
+            <source>CHK_SHOW_PREVIEW</source>
+            <translation>Show preview</translation>
+        </message>
+        <message>
+            <source>ORIGIN_TITLE</source>
+            <translation>Origin</translation>
+        </message>
+        <message>
+            <source>DIRECTION_TITLE</source>
+            <translation>Direction</translation>
+        </message>
+        <message>
+            <source>LBL_ORIENTATION</source>
+            <translation>Orientation</translation>
+        </message>
+        <message>
+            <source>LBL_DISTANCE</source>
+            <translation>Distance</translation>
+        </message>
+        <message>
+            <source>LBL_ROTATION</source>
+            <translation>Rotation around %1</translation>
+        </message>
+        <message>
+            <source>BTN_NEW</source>
+            <translation>New</translation>
+        </message>
+        <message>
+            <source>BTN_DELETE</source>
+            <translation>Delete</translation>
+        </message>
+        <message>
+            <source>BTN_IMPORT</source>
+            <translation>Import...</translation>
+        </message>
+        <message>
+            <source>IMPORT_TITLE</source>
+            <translation>Import from...</translation>
+        </message>
+        <message>
+            <source>SELECT_VIEW</source>
+            <translation>Select View window:</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_SegmentationMgr</name>
+        <message>
+            <source>MNU_CLIPPING_PLANE_MGR</source>
+            <translation>Clipping planes</translation>
+        </message>
+        <message>
+            <source>DSK_CLIPPING_PLANE_MGR</source>
+            <translation>Manage clipping planes in the viewer</translation>
+        </message>
+        <message>
+            <source>VISU_VIEW_TOOLBAR</source>
+            <translation>VISU tools</translation>
+        </message>
+        <message>
+            <source>VISU_SETPLANES_MNU</source>
+            <translation>Set clipping plane...</translation>
+        </message>
+        <message>
+            <source>MNU_SHOW_CLIPPINGPLANES</source>
+            <translation>Show clipping planes</translation>
+        </message>
+        <message>
+            <source>DSK_SHOW_CLIPPINGPLANES</source>
+            <translation>Show/Hide clipping planes</translation>
+        </message>
+        <message>
+            <source>MNU_ACTIVATE_CLIPPINGPLANES</source>
+            <translation>Deactivate clipping planes</translation>
+        </message>
+        <message>
+            <source>DSK_ACTIVATE_CLIPPINGPLANES</source>
+            <translation>Activate/Deactivate clipping planes</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_ClippingPanel</name>
+        <message>
+            <source>TITLE</source>
+            <translation>Clipping Planes</translation>
+        </message>
+        <message>
+            <source>PRESENTATIONS_LBL</source>
+            <translation>Presentations:</translation>
+        </message>
+        <message>
+            <source>PLANES_LBL</source>
+            <translation>Associated planes:</translation>
+        </message>
+        <message>
+            <source>NEW_BTN</source>
+            <translation>New...</translation>
+        </message>
+        <message>
+            <source>EDIT_BTN</source>
+            <translation>Edit...</translation>
+        </message>
+        <message>
+            <source>DELETE_BTN</source>
+            <translation>Delete</translation>
+        </message>
+        <message>
+            <source>TIT_DELETE_PLANE</source>
+            <translation>Delete clipping plane</translation>
+        </message>
+        <message>
+            <source>MSG_DELETE_PLANE</source>
+            <translation>Clipping plane %1 will be deleted. Continue?</translation>
+        </message>
+        <message>
+            <source>CHK_SHOW_PLANES</source>
+            <translation>Show planes preview</translation>
+        </message>
+        <message>
+            <source>CHK_ACTIVATE_PLANES</source>
+            <translation>Deactivate planes</translation>
+        </message>
+        <message>
+            <source>CHK_AUTO_APPLY</source>
+            <translation>Auto apply</translation>
+        </message>
+         <message>
+            <source>PLANES_TABLE_TITLES</source>
+            <translation>Plane,Active</translation>
+        </message>
+   </context>
+    <context>
+        <name>VisuGUI_ClippingPlaneDlg</name>
+        <message>
+            <source>TITLE</source>
+            <translation>Clipping plane edit</translation>
+        </message>
+       <message>
+            <source>LBL_NAME</source>
+            <translation>Name of the plane</translation>
+        </message>
+        <message>
+            <source>BYVECTOR_TITLE</source>
+            <translation>Normal vector</translation>
+        </message>
+        <message>
+            <source>BYPLANE_TITLE</source>
+            <translation>Main plane</translation>
+        </message>
+        <message>
+            <source>CHK_AUTOAPPLY</source>
+            <translation>Global</translation>
+        </message>
+        <message>
+            <source>CHK_SHOW_PREVIEW</source>
+            <translation>Show preview</translation>
+        </message>
+        <message>
+            <source>ORIGIN_TITLE</source>
+            <translation>Origin</translation>
+        </message>
+        <message>
+            <source>DIRECTION_TITLE</source>
+            <translation>Direction</translation>
+        </message>
+        <message>
+            <source>LBL_ORIENTATION</source>
+            <translation>Orientation</translation>
+        </message>
+        <message>
+            <source>LBL_DISTANCE</source>
+            <translation>Distance</translation>
+        </message>
+        <message>
+            <source>LBL_ROTATION</source>
+            <translation>Rotation around %1</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_FilterScalarsDlg</name>
+        <message>
+            <source>TITLE</source>
+            <translation>Filtering by scalars</translation>
+        </message>
+        <message>
+            <source>BOXTITLE</source>
+            <translation>Filter by scalar range</translation>
+        </message>
+        <message>
+            <source>MINLBL</source>
+            <translation>Min:</translation>
+        </message>
+        <message>
+            <source>MAXLBL</source>
+            <translation>Max:</translation>
+        </message>
+    </context>
+    <context>
+        <name>VisuGUI_ValuesLabelingDlg</name>
+        <message>
+            <source>PARAMETERS_OF_VALUES_LABELING</source>
+            <translation>Parameters of values labeling</translation>
+        </message>
+        <message>
+            <source>LABELS</source>
+            <translation>Labels</translation>
+        </message>    
+        <message>
+            <source>FONT</source>
+            <translation>Font</translation>
+        </message>
+        <message>
+            <source>COLOR</source>
+            <translation>Color</translation>
+        </message>
+    </context>
+</TS>
index 5be1851f943d2768b7cc8bd3d0a32746208c9883..aecbeb7c28d8eb76d404879c3ab18404d320d892 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI.cxx
 //  Author :
 //  Module : VISU
-//  $Header$
 
 #include "VisuGUI.h"
 
 #include <vector>
 
 // QT Includes
-#include <qptrlist.h>
-#include <qptrvector.h>
-#include <qcolordialog.h>
-#include <qdatetime.h>
+#include <QList>
+#include <QVector>
+#include <QColorDialog>
+#include <QDateTime>
+#include <QMenu>
 
 // VTK Includes
 #include <vtkRenderer.h>
 
 #include "SUIT_ViewWindow.h"
 #include "SUIT_ViewManager.h"
+#include "SUIT_Desktop.h"
+#include "SUIT_DataBrowser.h"
+#include "SUIT_OverrideCursor.h"
 
 #include "CAM_Module.h"
 
 #include "SVTK_ViewWindow.h"
 #include "SVTK_ViewModel.h"
 #include "SVTK_Functor.h"
+//#include "SVTK_MainWindow.h"
 
 #include "SPlot2d_ViewModel.h"
 #include "VisuGUI_SetupPlot2dDlg.h"
 #include "Plot2d_SetupCurveDlg.h"
 #include "Plot2d_ViewManager.h"
 
+#include "QtxPagePrefMgr.h"
 #include "OB_Browser.h"
 
 #include "SALOME_ListIteratorOfListIO.hxx"
 #include "SalomeApp_DataModel.h"
 #include "SalomeApp_Study.h"
 #include "SalomeApp_CheckFileDlg.h"
+
 #include "LightApp_SelectionMgr.h"
 #include "LightApp_Selection.h"
 #include "LightApp_Preferences.h"
+#include "LightApp_DataOwner.h"
 
 #include "QtxAction.h"
+#include "QtxFontEdit.h"
 
 #include "VISUConfig.hh"
 #include "VISU_Gen_i.hh"
 #include "VISU_Mesh_i.hh"
 #include "VISU_Table_i.hh"
+#include "VISU_PointMap3d_i.hh"
 #include "VISU_Result_i.hh"
 #include "VISU_View_i.hh"
 #include "VISU_ViewManager_i.hh"
 #include "VisuGUI_Prs3dTools.h"
 #include "VisuGUI_Tools.h"
 
-#include "VisuGUI_PopupTools.h"
+#include "VisuGUI_SelectionPanel.h"
+#include "VisuGUI_FeatureEdgesPanel.h"
 #include "VisuGUI_NameDlg.h"
 #include "VisuGUI_CursorDlg.h"
 #include "VisuGUI_Selection.h"
 #include "VisuGUI_BuildProgressDlg.h"
 #include "VisuGUI_TransparencyDlg.h"
 #include "VisuGUI_CacheDlg.h"
+#include "VisuGUI_Table3dDlg.h"
+#include "VisuGUI_ClippingPanel.h"
+#include "VisuGUI_FilterScalarsDlg.h"
 
 #include "VISU_ScalarMap_i.hh"
 #include "VisuGUI_ScalarBarDlg.h"
 #include "VISU_DeformedShape_i.hh"
 #include "VisuGUI_DeformedShapeDlg.h"
 
-#include "VISU_ScalarMapOnDeformedShape_i.hh"
-#include "VisuGUI_ScalarMapOnDeformedShapeDlg.h"
+#include "VISU_DeformedShapeAndScalarMap_i.hh"
+#include "VisuGUI_DeformedShapeAndScalarMapDlg.h"
 
 #include "VISU_IsoSurfaces_i.hh"
 #include "VisuGUI_IsoSurfacesDlg.h"
 #include "VisuGUI_VectorsDlg.h"
 
 #include "VisuGUI_TableDlg.h"
+#include "VisuGUI_FileInfoDlg.h"
 
 #include "SALOMEconfig.h"
 #include CORBA_SERVER_HEADER(MED_Gen)
 
 #include "VisuGUI_Timer.h"
 
-#include "VVTK_ViewModel.h"
+//#include "VVTK_ViewModel.h"
+
+#include "VisuGUI_Slider.h"
+#include "VisuGUI_Sweep.h"
+#include <VISU_ScalarMapAct.h>
+#include <VISU_GaussPtsAct.h>
+#include <VisuGUI_ValuesLabelingDlg.h>
 
 using namespace VISU;
 
@@ -163,11 +182,12 @@ static int MYDEBUG = 0;
 VisuGUI
 ::VisuGUI():
   SalomeApp_Module( "VISU" ),
-  myDisplayer( 0 )
+  myDisplayer( 0 ),
+  mySlider( NULL ),
+  mySweep( NULL )
 {
 }
 
-
 VisuGUI
 ::~VisuGUI()
 {
@@ -178,69 +198,99 @@ VisuGUI
 ::OnImportFromFile()
 {
   if(MYDEBUG) MESSAGE("VisuGUI::OnImportFromFile()");
+
   if ( CheckLock(GetCStudy(GetAppStudy(this)),GetDesktop(this)) )
     return;
-  
+
   SUIT_ResourceMgr* aResourceMgr = GetResourceMgr();
 
-  // Get file name
+  // Get file name(s)
   QStringList aFilter;
   aFilter.append( tr( "FLT_MED_FILES" ) );
   aFilter.append( tr( "FLT_DISTRIBUTED_MED_FILES" ) );
   aFilter.append( tr( "FLT_ALL_FILES" ) );
-  
+
   bool toUseBuildProgress = aResourceMgr->booleanValue("VISU", "use_build_progress", false);
 
-  SalomeApp_CheckFileDlg* fd = new SalomeApp_CheckFileDlg( GetDesktop(this), true, tr("USE_BUILD_PROGRESS") );
-  fd->setCaption( tr( "IMPORT_FROM_FILE" ) );
-  fd->setFilters( aFilter );
-  fd->SetChecked( toUseBuildProgress );
-  fd->exec();
-  QFileInfo aFileInfo( fd->selectedFile() );
-  toUseBuildProgress = fd->IsChecked();
-  delete fd;
-  
-  // Check the file name
-  if ( !aFileInfo.exists() )
-    return;
-  
-  if ( !toUseBuildProgress )
-    {
-      bool toBuildFields = aResourceMgr->booleanValue( "VISU", "build_fields", true );
-      bool toBuildMinMax = aResourceMgr->booleanValue( "VISU", "build_min_max", true );
-      bool toBuildGroups = aResourceMgr->booleanValue( "VISU", "build_groups", true );
-      bool toBuildAll = aResourceMgr->booleanValue( "VISU", "full_med_loading", false );
-      bool toBuildAtOnce = aResourceMgr->booleanValue( "VISU", "build_at_once", false );
-      
-      QString anInfo("Importing From File " + aFileInfo.filePath() + "..." ); 
-      application()->putInfo( anInfo );
-
-      QApplication::setOverrideCursor(Qt::waitCursor);
-      VISU::Result_var aResult = GetVisuGen(this)->CreateResult( aFileInfo.filePath() );
-
-      if (CORBA::is_nil(aResult.in())) {
-       SUIT_MessageBox::warn1(GetDesktop(this),
-                              tr("WRN_VISU"),
-                              VisuGUI_BuildProgressDlg::tr("ERR_ERROR_IN_THE_FILE"),
-                              tr("BUT_OK"));
-       QApplication::restoreOverrideCursor();
-      }else{
-       aResult->SetBuildFields( toBuildFields, toBuildMinMax );
-       aResult->SetBuildGroups( toBuildGroups );
-       aResult->Build( toBuildAll, toBuildAtOnce );
-
-       UpdateObjBrowser(this);
-       application()->putInfo( anInfo + tr("INF_DONE"));
-       QApplication::restoreOverrideCursor();
-      }
-    }
-  else
-    {
-      VisuGUI_BuildProgressDlg* aBuildProgressDlg = new VisuGUI_BuildProgressDlg( GetDesktop(this) );
-      aBuildProgressDlg->setFileName( aFileInfo.filePath() );
-      aBuildProgressDlg->setGenerator( GetVisuGen(this) );
-      aBuildProgressDlg->show();
+  SalomeApp_CheckFileDlg fd( GetDesktop(this), true, tr("USE_BUILD_PROGRESS") );
+  fd.setWindowTitle( tr( "IMPORT_FROM_FILE" ) );
+  fd.setFileMode( SalomeApp_CheckFileDlg::ExistingFiles );
+  fd.setFilters( aFilter );
+  fd.SetChecked( toUseBuildProgress );
+  if ( SalomeApp_CheckFileDlg::getLastVisitedPath().isEmpty() )
+    fd.setDirectory( QDir::currentPath() );
+
+  QStringList fileNames;
+  if ( !fd.exec() )
+    return; // cancelled, return
+
+  fileNames = fd.selectedFiles();
+  toUseBuildProgress = fd.IsChecked();
+
+  if ( fileNames.count() == 0 )
+    return; // nothing selected, return
+
+  SUIT_OverrideCursor wc;
+  QStringList errors;
+
+  for ( QStringList::ConstIterator it = fileNames.begin(); it != fileNames.end(); ++it ) {
+    QFileInfo aFileInfo( *it );
+
+    if ( !aFileInfo.exists() ) {
+      // file not exist
+      errors.append( QString( "%1 :\n\t%2" ).arg( aFileInfo.filePath() ).
+                    arg( tr( "ERR_FILE_NOT_EXISTS" ) ) );
     }
+    else {
+      try {
+       if ( !toUseBuildProgress ) {
+         // build progress is not used, use build flags from settings
+         bool toBuildFields = aResourceMgr->booleanValue( "VISU", "build_fields",     true );
+         bool toBuildMinMax = aResourceMgr->booleanValue( "VISU", "build_min_max",    true );
+         bool toBuildGroups = aResourceMgr->booleanValue( "VISU", "build_groups",     true );
+         bool toBuildAll    = aResourceMgr->booleanValue( "VISU", "full_med_loading", false );
+         bool toBuildAtOnce = aResourceMgr->booleanValue( "VISU", "build_at_once",    false );
+
+         QString anInfo( tr( "IMPORT_FROM_FILE" ) + " " + aFileInfo.filePath() + " ... " );
+         application()->putInfo( anInfo );
+
+         VISU::Result_var aResult = GetVisuGen( this )->CreateResult( aFileInfo.filePath().toLatin1().constData() );
+
+         if ( CORBA::is_nil( aResult.in() ) ) {
+           errors.append( QString( "%1 :\n\t%2" ).arg( aFileInfo.filePath() ).
+                          arg( tr( "ERR_ERROR_IN_THE_FILE" ) ) );
+         }
+         else {
+           aResult->SetBuildFields( toBuildFields, toBuildMinMax );
+           aResult->SetBuildGroups( toBuildGroups );
+           aResult->Build( toBuildAll, toBuildAtOnce );
+           application()->putInfo( anInfo + tr("INF_DONE") );
+         }
+       } // if ( !toUseBuildProgress )
+       else {
+         // use build progress
+         wc.suspend();
+         VisuGUI_BuildProgressDlg* aBuildProgressDlg = new VisuGUI_BuildProgressDlg( GetDesktop(this) );
+         aBuildProgressDlg->setFileName( aFileInfo.filePath() );
+         aBuildProgressDlg->setGenerator( GetVisuGen(this) );
+         aBuildProgressDlg->exec();
+         wc.resume();
+       }
+      } // try
+      catch(...) {
+       errors.append( QString( "%1 :\n\t%2" ).arg( aFileInfo.filePath() ).arg( tr( "UNKNOWN_IMPORT_ERROR" ) ) );
+      }
+    } // else // if ( !aFileInfo.exists() )
+  } // for (...)
+
+  if ( errors.count() > 0 ) {
+    SUIT_MessageBox::critical( GetDesktop(this),
+                              tr("ERR_ERROR"),
+                              tr("IMPORT_ERRORS" ) + "\n" + errors.join( "\n" ) );
+  }
+  else {
+    UpdateObjBrowser(this);
+  }
 }
 
 void
@@ -255,27 +305,54 @@ VisuGUI
   aFilter.append( tr("FLT_TABLE_FILES") );
   aFilter.append( tr("FLT_ALL_FILES") );
 
-  QFileInfo aFileInfo =
-    SUIT_FileDlg::getFileName(GetDesktop(this),
-                              "",
-                              aFilter,
-                              tr("MEN_IMPORT_TABLE"),
-                              true);
-  if (aFileInfo.exists()) {
-    application()->putInfo( tr("MEN_IMPORT_TABLE") + " " + aFileInfo.filePath() + " ..." );
+  QString anInitialPath = "";
+  if ( SUIT_FileDlg::getLastVisitedPath().isEmpty() )
+    anInitialPath = QDir::currentPath();
 
-    CORBA::Object_var anObject = GetVisuGen(this)->ImportTables(aFileInfo.filePath());
+  QStringList aFiles = SUIT_FileDlg::getOpenFileNames(GetDesktop(this),
+                                                     anInitialPath,
+                                                     aFilter,
+                                                     tr("TLT_IMPORT_TABLE"));
+  if ( aFiles.count() == 0 )
+    return; // nothing selected
 
-    if (CORBA::is_nil(anObject.in())) {
-      SUIT_MessageBox::warn1(GetDesktop(this),
-                             tr("WRN_VISU"),
-                             tr("ERR_ERROR_IN_THE_FILE"),
-                             tr("BUT_OK"));
-    } else {
-      application()->putInfo(aFileInfo.filePath()+tr("INF_DONE"));
-      UpdateObjBrowser(this);
+  QStringList errors;
+  for ( QStringList::ConstIterator it = aFiles.begin(); it != aFiles.end(); ++it ) {
+    QFileInfo aFileInfo( *it );
+
+    if ( !aFileInfo.exists() ) {
+      errors.append( QString( "%1 :\n\t%2" ).arg( aFileInfo.filePath() ).
+                    arg( tr( "ERR_FILE_NOT_EXISTS" ) ) );
+    }
+    else {
+      try {
+       QString anInfo( tr("TLT_IMPORT_TABLE") + " " + aFileInfo.filePath() + " ..." );
+       application()->putInfo( anInfo );
+
+       CORBA::Object_var anObject = GetVisuGen(this)->ImportTables(aFileInfo.filePath().toLatin1().constData());
+
+       if (CORBA::is_nil(anObject.in())) {
+         errors.append( QString( "%1 :\n\t%2" ).arg( aFileInfo.filePath() ).
+                        arg( tr( "ERR_ERROR_IN_THE_FILE" ) ) );
+       }
+       else {
+         application()->putInfo( anInfo + tr("INF_DONE") );
+       }
+      }
+      catch(...) {
+       errors.append( QString( "%1 :\n\t%2" ).arg( aFileInfo.filePath() ).arg( tr( "UNKNOWN_IMPORT_ERROR" ) ) );
+      }
     }
   }
+
+  if ( errors.count() > 0 ) {
+    SUIT_MessageBox::critical( GetDesktop(this),
+                              tr("ERR_ERROR"),
+                              tr("IMPORT_ERRORS" ) + "\n" + errors.join( "\n" ) );
+  }
+  else {
+    UpdateObjBrowser(this);
+  }
 }
 
 void
@@ -328,7 +405,7 @@ VisuGUI
        if (!aTabAttr) return;
         aTitle = aTabAttr->GetTitle().c_str();
       }
-      aTitle.simplifyWhiteSpace();
+      aTitle.simplified();
       aTitle = aTitle.replace(QRegExp(" "), "_").replace(QRegExp("\\*"), "" );
 
       // get default path for the file
@@ -361,20 +438,20 @@ VisuGUI
         aResourceMgr->setValue("VISU", "OutputDir", aDir);
 
        try {
-         GetVisuGen(this)->ExportTableToFile(GetSObject(aSObj), aFile.latin1());
+         GetVisuGen(this)->ExportTableToFile(GetSObject(aSObj), (const char*)aFile.toLatin1());
           application()->putInfo(aFile + " " + tr("INF_DONE"));
        } catch(std::exception& exc) {
          INFOS(exc.what());
-         SUIT_MessageBox::warn1(GetDesktop(this),
-                                 tr("WRN_VISU"),
-                                tr("ERR_ERROR_DURING_EXPORT") + " " + tr(exc.what()),
-                                tr("BUT_OK"));
+         SUIT_MessageBox::warning(GetDesktop(this),
+                                   tr("WRN_VISU"),
+                                  tr("ERR_ERROR_DURING_EXPORT") + " " + tr(exc.what()) );
+
        } catch(...) {
-         INFOS(tr("ERR_ERROR_DURING_EXPORT"));
-         SUIT_MessageBox::warn1(GetDesktop(this),
-                                 tr("WRN_VISU"),
-                                tr("ERR_ERROR_DURING_EXPORT"),
-                                tr("BUT_OK") );
+         INFOS((const char*)tr("ERR_ERROR_DURING_EXPORT").toLatin1());
+         SUIT_MessageBox::warning( GetDesktop(this),
+                                    tr("WRN_VISU"),
+                                   tr("ERR_ERROR_DURING_EXPORT") );
+
        }
       }
     }
@@ -395,7 +472,7 @@ VisuGUI
   aSelectionMgr->selectedObjects(aListIO);
 
   SALOME_ListIteratorOfListIO It (aListIO);
-  QApplication::setOverrideCursor(Qt::waitCursor);
+  QApplication::setOverrideCursor(Qt::WaitCursor);
   for (; It.More(); It.Next()) {
     Handle(SALOME_InteractiveObject) anIO = It.Value();
     SALOMEDS::SObject_var aSObject = aStudy->FindObjectID(anIO->getEntry());
@@ -468,7 +545,7 @@ void VisuGUI::OnLoadComponentData()
   aSelectionMgr->selectedObjects(aListIO);
 
   SALOME_ListIteratorOfListIO It (aListIO);
-  QApplication::setOverrideCursor(Qt::waitCursor);
+  QApplication::setOverrideCursor(Qt::WaitCursor);
   for (; It.More(); It.Next()) {
     Handle(SALOME_InteractiveObject) anIO = It.Value();
     SALOMEDS::SObject_var aSObject = aStudy->FindObjectID(anIO->getEntry());
@@ -483,7 +560,7 @@ void VisuGUI::OnLoadComponentData()
           CORBA::String_var aCompDataType = aSComp->ComponentDataType();
 
           QString anInfo ("Loading ");
-          anInfo = anInfo + aCompDataType.in() + " Component Data ..."; 
+          anInfo = anInfo + aCompDataType.in() + " Component Data ...";
           application()->putInfo( anInfo );
 
           // obtain a driver by a component data type
@@ -558,7 +635,7 @@ CreateCurves( SalomeApp_Module* theModule,
                }
              }
            }
-           
+
          }
 
           aBuilder->RemoveObjectWithChildren( aTblObj ); // We should have only one child
@@ -605,7 +682,7 @@ VisuGUI
   VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects(this);
   if(aSelectionInfo.empty())
     return;
-  
+
   // Get selected SObject
   VISU::TSelectionItem aSelectionItem = aSelectionInfo.front();
   Handle(SALOME_InteractiveObject) anIO = aSelectionItem.myIO;
@@ -616,7 +693,10 @@ VisuGUI
   SVTK_ViewWindow* aViewWindow = GetViewWindow<SVTK_Viewer>(this);
 
   // create mesh presentation and display it in aViewWindow
-  CreateMesh(this, anIO, aViewWindow);
+  VISU::Mesh_i* aPrs = CreateMesh(this, anIO, aViewWindow);
+  aViewWindow->highlight(anIO, 1);
+  if (aPrs)
+    emit presentationCreated(aPrs);
 }
 
 void
@@ -641,7 +721,10 @@ VisuGUI
       return;
 
     // create mesh presentation and display it in aViewWindow
-    CreateMesh(this, anIO, aViewWindow);
+    VISU::Mesh_i* aPrs = CreateMesh(this, anIO, aViewWindow);
+    aViewWindow->highlight(anIO, 1);
+    if (aPrs)
+      emit presentationCreated(aPrs);
   }
 }
 
@@ -649,7 +732,9 @@ void
 VisuGUI
 ::OnCreateScalarMap()
 {
-  CreatePrs3d<VISU::ScalarMap_i,VisuGUI_ScalarBarDlg,1>(this);
+  Prs3d_i* aPrs = CreatePrs3d<VISU::ScalarMap_i,VisuGUI_ScalarBarDlg,1>(this);
+  if (aPrs)
+    emit presentationCreated(aPrs);
 }
 
 
@@ -657,57 +742,72 @@ void
 VisuGUI
 ::OnCreateDeformedShape()
 {
-  //  CreatePrs3d<VISU::DeformedShape_i,VisuGUI_DeformedShapeDlg,1>(this);
-  VisuGUI_DeformedShapeDlg::CreatePrs3d(this);
+  Prs3d_i* aPrs = CreatePrs3d<VISU::DeformedShape_i,VisuGUI_DeformedShapeDlg,1>(this);
+  if (aPrs)
+    emit presentationCreated(aPrs);
 }
 
 void
 VisuGUI
-::OnCreateScalarMapOnDeformedShape()
+::OnCreateDeformedShapeAndScalarMap()
 {
-  CreatePrs3d<VISU::ScalarMapOnDeformedShape_i,VisuGUI_ScalarMapOnDeformedShapeDlg,1>(this);
+  Prs3d_i* aPrs = CreatePrs3d<VISU::DeformedShapeAndScalarMap_i,VisuGUI_DeformedShapeAndScalarMapDlg,1>(this);
+  if (aPrs)
+    emit presentationCreated(aPrs);
 }
 
 void
 VisuGUI
 ::OnCreateVectors()
 {
-  CreatePrs3d<VISU::Vectors_i,VisuGUI_VectorsDlg,1>(this);
+  Prs3d_i* aPrs = CreatePrs3d<VISU::Vectors_i,VisuGUI_VectorsDlg,1>(this);
+  if (aPrs)
+    emit presentationCreated(aPrs);
 }
 
 void
 VisuGUI
 ::OnCreateIsoSurfaces()
 {
-  CreatePrs3d<VISU::IsoSurfaces_i,VisuGUI_IsoSurfacesDlg,1>(this);
+  Prs3d_i* aPrs = CreatePrs3d<VISU::IsoSurfaces_i,VisuGUI_IsoSurfacesDlg,1>(this);
+  if (aPrs)
+    emit presentationCreated(aPrs);
 }
 
 void
 VisuGUI
 ::OnCreateCutPlanes()
 {
-  CreatePrs3d<VISU::CutPlanes_i,VisuGUI_CutPlanesDlg,0>(this);
+  Prs3d_i* aPrs = CreatePrs3d<VISU::CutPlanes_i,VisuGUI_CutPlanesDlg,0>(this);
+  if (aPrs)
+    emit presentationCreated(aPrs);
 }
 
 void
 VisuGUI
 ::OnCreateCutLines()
 {
-  CreatePrs3d<VISU::CutLines_i,VisuGUI_CutLinesDlg,0>(this);
+  Prs3d_i* aPrs = CreatePrs3d<VISU::CutLines_i,VisuGUI_CutLinesDlg,0>(this);
+  if (aPrs)
+    emit presentationCreated(aPrs);
 }
 
 void
 VisuGUI
 ::OnCreateStreamLines()
 {
-  CreatePrs3d<VISU::StreamLines_i,VisuGUI_StreamLinesDlg,1>(this);
+  Prs3d_i* aPrs = CreatePrs3d<VISU::StreamLines_i,VisuGUI_StreamLinesDlg,1>(this);
+  if (aPrs)
+    emit presentationCreated(aPrs);
 }
 
 void
 VisuGUI
 ::OnCreatePlot3D()
 {
-  CreatePrs3d<VISU::Plot3D_i,VisuGUI_Plot3DDlg,0>(this);
+  Prs3d_i* aPrs = CreatePrs3d<VISU::Plot3D_i,VisuGUI_Plot3DDlg,0>(this);
+  if (aPrs)
+    emit presentationCreated(aPrs);
 }
 
 void
@@ -729,7 +829,7 @@ VisuGUI
   if (!aSelectionMgr)
     return;
 
-  QApplication::setOverrideCursor(Qt::waitCursor);
+  QApplication::setOverrideCursor(Qt::WaitCursor);
 
   SALOME_ListIO aSel, aList;
   aSelectionMgr->selectedObjects(aSel);
@@ -739,14 +839,27 @@ VisuGUI
     Handle(SALOME_InteractiveObject) anIO = it.Value();
     TObjectInfo anObjectInfo = VISU::GetObjectByEntry(GetAppStudy(this), anIO->getEntry());
     VISU::Base_i* aBase = anObjectInfo.myBase;
-    if(!aBase) 
+    if(!aBase)
       continue;
 
     VISU::VISUType aType = aBase->GetType();
     switch (aType) {
-    case VISU::TCURVE: 
-    case VISU::TCONTAINER: 
-    case VISU::TTABLE: 
+    case VISU::TPOINTMAP3D:
+      if(SVTK_ViewWindow* aViewWindow = GetActiveViewWindow<SVTK_ViewWindow>(this)){
+       displayer()->Display(anIO->getEntry());
+       aViewWindow->highlight(anIO, 1);
+       aViewWindow->getRenderer()->ResetCameraClippingRange();
+       aViewWindow->Repaint();
+       break;
+      }
+      else {
+       if (SPlot2d_Viewer* aPlot2d = GetPlot2dViewer(this, false))
+         aPlot2d->Repaint();
+       displayer()->Display(anIO->getEntry());
+      }
+    case VISU::TCURVE:
+    case VISU::TCONTAINER:
+    case VISU::TTABLE:
       displayer()->Display(anIO->getEntry());
       break;
     default: {
@@ -758,7 +871,8 @@ VisuGUI
          aViewWindow->getRenderer()->ResetCameraClippingRange();
          aViewWindow->Repaint();
        }
-      }}
+      }
+    }
     }
   }
 
@@ -769,16 +883,88 @@ void
 VisuGUI
 ::OnDisplayOnlyPrs()
 {
+  /// to correct IMP 0016100
+  LightApp_SelectionMgr* aSelectionMgr = GetSelectionMgr(this);
+  if (!aSelectionMgr)
+    return;
+  
+  SALOME_ListIO aSel, aList;
+  aSelectionMgr->selectedObjects(aSel);
+  extractContainers(aSel, aList);
+  Handle(SALOME_InteractiveObject) anIO = aList.First();
+  activateAppropriateViewer(anIO);
   OnEraseAll();
   OnDisplayPrs();
 }
 
+void VisuGUI::activateAppropriateViewer( Handle(SALOME_InteractiveObject) theIO )
+{
+  TObjectInfo anObjectInfo = VISU::GetObjectByEntry(GetAppStudy(this), theIO->getEntry());
+  VISU::Base_i* aBase = anObjectInfo.myBase;
+  if(!aBase)
+    return;
+
+  std::string anEntry = theIO->getEntry();
+  _PTR(Study) aCStudy = GetCStudy(GetAppStudy(this));
+  _PTR(SObject) SO = aCStudy->FindObjectID( theIO->getEntry() );
+
+  CORBA::Object_var aCORBAObject = VISU::ClientSObjectToObject(SO);
+  if(CORBA::is_nil(aCORBAObject))
+    return;
+
+  VISU::VISUType aType = aBase->GetType();
+
+  if ( VISU::GetPrs3dFromBase(aBase) ) {
+    // activate SVTK Viewer
+    getApp()->getViewManager( SVTK_Viewer::Type(), true );
+    return;
+  }
+
+  switch (aType) {
+  case VISU::TCURVE:
+  case VISU::TCONTAINER:
+  case VISU::TTABLE: {
+    // Activate Plot2d
+    GetPlot2dViewer(this, true);
+  }
+  case VISU::TCOLOREDPRS3DHOLDER :
+  case VISU::TPOINTMAP3D : {
+    //find curves under pointmap 3d
+    bool hasCurvesChildren = false;
+
+    SUIT_ViewManager* aViewMgr = getApp()->activeViewManager();
+    QString aViewerType = aViewMgr->getType();
+
+    _PTR(ChildIterator) anIter = aCStudy->NewChildIterator(SO);
+    _PTR(SObject) aChild;
+    for (; anIter->More(); anIter->Next()) {
+      aChild = anIter->Value();
+      CORBA::Object_var aCORBAObject = VISU::ClientSObjectToObject(aChild);
+      if(!CORBA::is_nil(aCORBAObject)){
+       PortableServer::ServantBase_var aServant = VISU::GetServant(aCORBAObject);
+       if( dynamic_cast<VISU::Curve_i*>(aServant.in()))
+         hasCurvesChildren = true;
+      }
+    }
+
+    if (hasCurvesChildren && ( aViewerType == SPlot2d_Viewer::Type() || aViewerType == SVTK_Viewer::Type() ) ) {
+      return;
+    } else {
+      // activate SVTK Viewer  
+      getApp()->getViewManager( SVTK_Viewer::Type(), true );
+      return;
+    }
+    break;
+  }
+  }
+}
+
 void
 VisuGUI
 ::OnErasePrs()
 {
   if(MYDEBUG) MESSAGE("OnErasePrs");
-  QApplication::setOverrideCursor(Qt::waitCursor);
+  QApplication::setOverrideCursor(Qt::WaitCursor);
 
   SALOME_ListIO aList, aSel;
   LightApp_SelectionMgr* aSelectionMgr = GetSelectionMgr(this);
@@ -862,11 +1048,11 @@ VisuGUI
 //----------------------------------------------------------------------------
 void
 VisuGUI
-::OnEditScalarMapOnDeformedShape()
+::OnEditDeformedShapeAndScalarMap()
 {
   Handle(SALOME_InteractiveObject) anIO;
   if (VISU::Prs3d_i* aPrs3d = GetPrsToModify(this, anIO))
-    EditPrs3d<VISU::ScalarMapOnDeformedShape_i, VisuGUI_ScalarMapOnDeformedShapeDlg, 1>(this, anIO, aPrs3d);
+    EditPrs3d<VISU::DeformedShapeAndScalarMap_i, VisuGUI_DeformedShapeAndScalarMapDlg, 1>(this, anIO, aPrs3d);
 }
 
 //----------------------------------------------------------------------------
@@ -978,6 +1164,14 @@ VisuGUI
   ChangeRepresentation(this, VISU::SHRINK);
 }
 
+//----------------------------------------------------------------------------
+void
+VisuGUI
+::OnMakeFeatureEdges()
+{
+  ChangeRepresentation(this, VISU::FEATURE_EDGES);
+}
+
 //----------------------------------------------------------------------------
 void
 VisuGUI
@@ -995,36 +1189,6 @@ VisuGUI
 }
 
 
-namespace
-{
-  //----------------------------------------------------------------------------
-  bool
-  GetPrs3dSelectionInfo(const SalomeApp_Module* theModule,
-                       VISU::Prs3d_i*& thePrs3d,
-                       SVTK_ViewWindow*& theViewWindow,
-                       VISU_Actor*& thenActor)
-  {
-    VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects(theModule);
-    if(aSelectionInfo.empty())
-      return false;
-  
-    VISU::TSelectionItem aSelectionItem = aSelectionInfo.front();
-    thePrs3d = GetPrs3dFromBase(aSelectionItem.myObjectInfo.myBase);
-    if(!thePrs3d)
-      return false;
-  
-    theViewWindow = GetActiveViewWindow<SVTK_ViewWindow>(theModule);
-    if(!theViewWindow)
-      return false;
-  
-    thenActor = FindActor(theViewWindow, thePrs3d);
-    if(!thenActor)
-      return false;
-    
-    return true;
-  }
-}
-
 //----------------------------------------------------------------------------
 void
 VisuGUI
@@ -1035,7 +1199,7 @@ VisuGUI
   SVTK_ViewWindow* aViewWindow = NULL;
   if(!GetPrs3dSelectionInfo(this, aPrs3d, aViewWindow, anActor))
     return;
-    
+
   VISU::Mesh_i* aMesh = dynamic_cast<VISU::Mesh_i*>(aPrs3d);
   VISU::DeformedShape_i* aDeformedShape = dynamic_cast<VISU::DeformedShape_i*>(aPrs3d);
 
@@ -1100,7 +1264,7 @@ VisuGUI
   SVTK_ViewWindow* aViewWindow = NULL;
   if(!GetPrs3dSelectionInfo(this, aPrs3d, aViewWindow, anActor))
     return;
-    
+
   VISU::Mesh_i* aMesh = dynamic_cast<VISU::Mesh_i*>(aPrs3d);
   if(!aMesh)
     return;
@@ -1124,12 +1288,6 @@ void
 VisuGUI
 ::OnChangeOpacity()
 {
-  VISU_Actor* anActor = NULL;
-  VISU::Prs3d_i* aPrs3d = NULL;
-  SVTK_ViewWindow* aViewWindow = NULL;
-  if(!GetPrs3dSelectionInfo(this, aPrs3d, aViewWindow, anActor))
-    return;
-  
   VisuGUI_TransparencyDlg* aDialog = new VisuGUI_TransparencyDlg( this );
   aDialog->show();
 }
@@ -1140,21 +1298,34 @@ VisuGUI
 ::OnChangeLines()
 {
   VISU_Actor* anActor = NULL;
+  VISU_ActorBase* anActorBase = NULL;
   VISU::Prs3d_i* aPrs3d = NULL;
   SVTK_ViewWindow* aViewWindow = NULL;
-  if(!GetPrs3dSelectionInfo(this, aPrs3d, aViewWindow, anActor))
-    return;
-  
+  float oldlwid;
+  bool isPrs3d = false;
+
+  if (GetPrs3dSelectionInfo(this, aPrs3d, aViewWindow, anActor)) {
+    isPrs3d = true;
+  }
+  else {
+    aViewWindow = GetActiveViewWindow<SVTK_ViewWindow>(this);
+    VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects(this);
+    VISU::TSelectionItem aSelectionItem = aSelectionInfo.front();
+    VISU::PointMap3d_i* aTable = dynamic_cast<VISU::PointMap3d_i*>(aSelectionItem.myObjectInfo.myBase);
+    anActorBase = VISU::FindActorBase(aViewWindow, aTable);
+    oldlwid = anActorBase->GetLineWidth();
+  }
+
+
   VisuGUI_CursorDlg* CursorDlg =
-    new VisuGUI_CursorDlg (GetDesktop(this), tr("DLG_LINEWIDTH_TITLE"), TRUE);
+    new VisuGUI_CursorDlg (GetDesktop(this), (const char*)tr("DLG_LINEWIDTH_TITLE").toLatin1(), TRUE);
 
   CursorDlg->helpFileName = "viewing_3d_presentations_intro_page.html#width_opacity_anchor";
   CursorDlg->Comment1->setText(tr("DLG_LINEWIDTH_CMT1"));
   CursorDlg->Comment2->setText(tr("DLG_LINEWIDTH_CMT2"));
-  CursorDlg->SpinBox1->setMinValue(1);
-  CursorDlg->SpinBox1->setMaxValue(10);
+  CursorDlg->SpinBox1->setMinimum(1);
+  CursorDlg->SpinBox1->setMaximum(10);
 
-  float oldlwid = anActor->GetLineWidth();
   int intlwid = int(oldlwid);
   CursorDlg->SpinBox1->setValue(intlwid);
 
@@ -1162,7 +1333,10 @@ VisuGUI
   if (ret == 1) {
     intlwid  = CursorDlg->SpinBox1->value();
     float newlwid = intlwid;
-    anActor->SetLineWidth(newlwid);
+    if (isPrs3d)
+      anActor->SetLineWidth(newlwid);
+    else
+      anActorBase->SetLineWidth(newlwid);
   }
   delete CursorDlg;
 }
@@ -1175,14 +1349,14 @@ VisuGUI
   VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects(this);
   if(aSelectionInfo.empty())
     return;
-  
+
   VISU::TSelectionItem aSelectionItem = aSelectionInfo.front();
   Handle(SALOME_InteractiveObject) anIO = aSelectionItem.myIO;
   VISU::Base_i* aBase = aSelectionItem.myObjectInfo.myBase;
   _PTR(SObject) aSObject = aSelectionItem.myObjectInfo.mySObject;
   if(VISU::Table_i* aTable = dynamic_cast<VISU::Table_i*>(aBase))
     aSObject = GetCStudy( GetAppStudy( this ) )->FindObjectID( aTable->GetObjectEntry() );
-  
+
   if( !IsSObjectTable( aSObject ) )
     return;
 
@@ -1195,6 +1369,80 @@ VisuGUI
   dlg->show();
 }
 
+//----------------------------------------------------------------------------
+void
+VisuGUI
+::OnShowTablePlot()
+{
+  VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects(this);
+  if(aSelectionInfo.empty())
+    return;
+
+  VISU::TSelectionItem aSelectionItem = aSelectionInfo.front();
+  Handle(SALOME_InteractiveObject) anIO = aSelectionItem.myIO;
+  VISU::Base_i* aBase = aSelectionItem.myObjectInfo.myBase;
+  _PTR(SObject) aSObject = aSelectionItem.myObjectInfo.mySObject;
+  if(VISU::PointMap3d_i* aTable = dynamic_cast<VISU::PointMap3d_i*>(aBase)) {
+    VisuGUI_Table3DDlg*aDlg = new VisuGUI_Table3DDlg( this );
+    aDlg->initFromPrsObject( aTable );
+    if ( runAndWait(aDlg, 0) > 0 ) {
+      aDlg->storeToPrsObject(aTable);
+      aTable->UpdateActors();
+    }
+    delete aDlg;
+  }
+}
+
+//----------------------------------------------------------------------------
+void
+VisuGUI
+::OnShowScalarBar()
+{
+  SetScalarBarVisibility(true);
+}
+
+void
+VisuGUI
+::OnHideScalarBar()
+{
+  SetScalarBarVisibility(false);
+}
+
+void
+VisuGUI
+::SetScalarBarVisibility(bool theVisibility)
+{
+  printf ("\nOnHideScalarBar");
+  LightApp_SelectionMgr* aSelectionMgr = GetSelectionMgr(this);
+  SALOME_ListIO aListIO;
+  aSelectionMgr->selectedObjects(aListIO);
+
+  SALOME_ListIteratorOfListIO It (aListIO);
+
+  bool update = false;
+  for (; It.More(); It.Next()) {
+    Handle(SALOME_InteractiveObject)& anIO = It.Value();
+    std::vector<VISU::Prs3d_i*> aPrsList = GetPrs3dList(this, anIO);
+    if (!aPrsList.empty()) {
+      for (int i = 0, n = aPrsList.size(); i < n; i++) {
+        VISU::Prs3d_i* aPrsObject = aPrsList[i];
+        if (aPrsObject) {
+          VISU::ScalarMap_i* aScalar = dynamic_cast<VISU::ScalarMap_i*>(aPrsObject);
+          if (aScalar) {
+            aScalar->SetBarVisible( theVisibility );
+            RecreateActor(this, aScalar);
+            update = true;
+          }
+        }
+      }
+    }
+  }
+  if (update) {
+    if (SVTK_ViewWindow* vw = GetActiveViewWindow<SVTK_ViewWindow>(this))
+      vw->Repaint();
+  }
+}
+
 //----------------------------------------------------------------------------
 void
 VisuGUI
@@ -1203,7 +1451,7 @@ VisuGUI
   VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects(this);
   if(aSelectionInfo.empty())
     return;
-  
+
   VISU::TSelectionItem aSelectionItem = aSelectionInfo.front();
   _PTR(SObject) aSObject = aSelectionItem.myObjectInfo.mySObject;
   VISU::Base_i* aBase = aSelectionItem.myObjectInfo.myBase;
@@ -1230,15 +1478,42 @@ VisuGUI
   int i = 0, nbSelected = aList.Extent();
   if (nbSelected < 1) return;
 
-  std::vector<std::string> anEntries(nbSelected);
+  std::vector<std::string> anEntries (nbSelected);
+  QString aNameList;
   Handle(SALOME_InteractiveObject) anIO;
   for (SALOME_ListIteratorOfListIO it (aList); it.More(); it.Next()) {
     anIO = it.Value();
-    if (anIO->hasEntry())
-      anEntries[i++] = anIO->getEntry();
+    if (anIO->hasEntry()) {
+      if (IsRemovable(anIO->getEntry(), this)) {
+       aNameList.append("\n    - ");
+       // Get Name Of the Main Object if it's a referenced object
+       VISU::TObjectInfo anObjectInfo = GetObjectByEntry(GetAppStudy(this), anIO->getEntry());
+       if(_PTR(SObject) aSObject = anObjectInfo.mySObject){
+         _PTR(SObject) aRefSObject;
+         if (aSObject->ReferencedObject(aRefSObject)) {
+           QString aRefName = QString::fromStdString ( aRefSObject->GetName() );
+           aNameList.append( aRefName );
+         }
+         else
+           aNameList.append(anIO->getName());
+       }
+       anEntries[i++] = anIO->getEntry();
+      }
+    }
   }
   nbSelected = i;
-  if (nbSelected < 1) return;
+  if (nbSelected < 1) {
+    SUIT_MessageBox::warning(GetDesktop(this),
+                            QObject::tr("WRN_VISU"),
+                            QObject::tr("WRN_NO_APPROPRIATE_SELECTION"));
+    return;
+  }
+
+  if ( SUIT_MessageBox::question( GetDesktop(this),
+                                 QObject::tr( "WRN_VISU" ),
+                                 QObject::tr( "VISU_REALLY_DELETE" ).arg( nbSelected ).arg( aNameList ),
+                                 SUIT_MessageBox::Yes | SUIT_MessageBox::No ) != SUIT_MessageBox::Yes )
+    return;
 
   // There is a transaction
   _PTR(StudyBuilder) aStudyBuilder = aCStudy->NewBuilder();
@@ -1247,6 +1522,7 @@ VisuGUI
   for (i = 0; i < nbSelected; i++) {
     VISU::TObjectInfo anObjectInfo = GetObjectByEntry(GetAppStudy(this), anEntries[i]);
     if(_PTR(SObject) aSObject = anObjectInfo.mySObject){
+      emit beforeObjectDelete(QString(aSObject->GetID().c_str()));
       _PTR(SObject) aRefSObject;
       if (aSObject->ReferencedObject(aRefSObject)) {
        // It can be a reference on curve, published under a container.
@@ -1271,7 +1547,8 @@ VisuGUI
            }
          }
        }
-      }else{
+      }
+      else{
        DeleteSObject(this, aCStudy, aSObject);
        UpdateObjBrowser(this, true, aSObject);
       }
@@ -1291,10 +1568,10 @@ VisuGUI
   VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects(this);
   if(aSelectionInfo.empty())
     return;
-  
+
   VISU::TSelectionItem aSelectionItem = aSelectionInfo.front();
   if(VISU::Base_i* aBase = aSelectionItem.myObjectInfo.myBase){
-    if(aBase->GetType() == VISU::TTABLE) {
+    if(aBase->GetType() == VISU::TTABLE || aBase->GetType() == VISU::TPOINTMAP3D) {
       if(VISU::Table_i* aTable = dynamic_cast<VISU::Table_i*>(aBase)){
        _PTR(Study) aStudy = GetCStudy(GetAppStudy(this));
        _PTR(SObject) aSObject = aStudy->FindObjectID( aTable->GetObjectEntry() );
@@ -1305,7 +1582,7 @@ VisuGUI
              // if study is not locked - create new container, create curves and insert them
              // into container, then plot container if current viewer is of VIEW_PLOT2D type
              int horIndex;
-             QValueList<int> verIndices, zIndices;
+             QList<int> verIndices, zIndices;
              aDlg->getCurvesSource( horIndex, verIndices, zIndices );
              if( horIndex >= 0 && verIndices.count() > 0 ){
                CORBA::Object_var aContainerObj = GetVisuGen(this)->CreateContainer();
@@ -1318,7 +1595,7 @@ VisuGUI
                      int  marker, line, lineWidth;
                      QColor color;
                      if ( aDlg->getCurveAttributes(verIndices[i], isAuto, marker,
-                                                   line, lineWidth, color) && !isAuto ) 
+                                                   line, lineWidth, color) && !isAuto )
                      {
                        SALOMEDS::Color c;
                        c.R = color.red()  /255.;
@@ -1345,7 +1622,7 @@ VisuGUI
              }
              // if study is locked just get curves info and plot them
              // if current viewer is of VIEW_PLOT2D type
-             QPtrList<Plot2d_Curve> container;
+             QList<Plot2d_Curve*> container;
              aDlg->getCurves( container );
              if ( !container.isEmpty() ) {
                GetPlot2dViewer( this )->getActiveViewFrame()->displayCurves( container, true );
@@ -1368,7 +1645,7 @@ VisuGUI
           // if study is not locked - create new table and container objects, create curves
           // and insert them into container, then plot container if current viewer is of VIEW_PLOT2D type
           int horIndex;
-          QValueList<int> verIndices, zIndices;
+          QList<int> verIndices, zIndices;
           aDlg->getCurvesSource( horIndex, verIndices, zIndices );
           if ( horIndex >= 0 && verIndices.count() > 0 ) {
             VISU::Table_var aTableObject = GetVisuGen(this)->CreateTable(aSObject->GetID().c_str());
@@ -1383,7 +1660,7 @@ VisuGUI
                  int  marker, line, lineWidth;
                  QColor color;
                  if ( aDlg->getCurveAttributes(verIndices[i], isAuto, marker,
-                                               line, lineWidth, color) && !isAuto ) 
+                                               line, lineWidth, color) && !isAuto )
                  {
                    SALOMEDS::Color c;
                    c.R = color.red()/255.;
@@ -1409,7 +1686,7 @@ VisuGUI
            aSObjectName = QString( aName->Value().c_str() );
          }
           // if study is locked just get curves info and plot them
-          QPtrList<Plot2d_Curve> container;
+          QList<Plot2d_Curve*> container;
           aDlg->getCurves( container );
           if ( !container.isEmpty() ) {
             GetPlot2dViewer( this )->getActiveViewFrame()->displayCurves( container, true );
@@ -1434,7 +1711,7 @@ VisuGUI
   VISU::TSelectionItem aSelectionItem = aSelectionInfo.front();
   Handle(SALOME_InteractiveObject) anIO = aSelectionItem.myIO;
   VISU::Base_i* aBase = aSelectionItem.myObjectInfo.myBase;
-  if(!aBase) 
+  if(!aBase)
     return;
 
   if(aBase->GetType() == VISU::TCURVE) {
@@ -1443,8 +1720,8 @@ VisuGUI
       if(!IsStudyLocked(GetCStudy(GetAppStudy(this)))){
         Plot2d_SetupCurveDlg aDlg(GetDesktop( this ));
 
-        aDlg.setLine( (int)aCurve->GetLine(), aCurve->GetLineWidth() );
-        aDlg.setMarker( (int)aCurve->GetMarker() );
+        aDlg.setLine( (Plot2d::LineType)aCurve->GetLine(), aCurve->GetLineWidth() );
+        aDlg.setMarker( (Plot2d::MarkerType)aCurve->GetMarker() );
         SALOMEDS::Color aColor = aCurve->GetColor();
         aDlg.setColor( QColor( (int)(aColor.R*255.), (int)(aColor.G*255.), (int)(aColor.B*255.) ) );
         if( aDlg.exec() == QDialog::Accepted ) {
@@ -1474,7 +1751,7 @@ VisuGUI
   VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects(this);
   if(aSelectionInfo.empty())
     return;
-  
+
   VISU::TSelectionItem aSelectionItem = aSelectionInfo.front();
   VISU::Base_i* aBase = aSelectionItem.myObjectInfo.myBase;
   if(!aBase)
@@ -1499,14 +1776,14 @@ VisuGUI
   VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects(this);
   if(aSelectionInfo.empty())
     return;
-  
+
   VISU::TSelectionItem aSelectionItem = aSelectionInfo.front();
   VISU::Base_i* aBase = aSelectionItem.myObjectInfo.myBase;
   if(!aBase)
     return;
 
   VISU::Container_i* aContainer = dynamic_cast<VISU::Container_i*>(aBase);
-  if(!aContainer) 
+  if(!aContainer)
     return;
 
   VisuGUI_EditContainerDlg* aDlg = new VisuGUI_EditContainerDlg (this);
@@ -1538,7 +1815,7 @@ VisuGUI
     return;
 
   if (aListIO.Extent() == 0) {
-    VISU::View3D_i::SaveViewParams(aViewMgr, VISU::View3D_i::GenerateViewParamsName().latin1());
+    VISU::View3D_i::SaveViewParams(aViewMgr, (const char*)VISU::View3D_i::GenerateViewParamsName().toLatin1());
   } else {
     const Handle(SALOME_InteractiveObject)& anIO = aListIO.First();
     VISU::View3D_i::SaveViewParams(aViewMgr, anIO->getName());
@@ -1579,66 +1856,96 @@ VisuGUI
     return;
 
   VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects(this);
-  if(aSelectionInfo.empty())
-    return;
-  
-  VISU::TSelectionItem aSelectionItem = aSelectionInfo.front();
-  _PTR(SObject) aSObject = aSelectionItem.myObjectInfo.mySObject;
-  if(!aSObject)
+  if (aSelectionInfo.empty())
     return;
 
-  //TEST DU PARENT == VISU
-  _PTR(StudyBuilder) aBuilder = aCStudy->NewBuilder();
-  _PTR(GenericAttribute) anAttr = aBuilder->FindOrCreateAttribute(aSObject, "AttributeName");
-  if (anAttr) {
-    _PTR(AttributeName) aName (anAttr);
-    QString Name = VisuGUI_NameDlg::getName( GetDesktop( this ), aName->Value().c_str() );
-    if (!Name.isEmpty()) {
-      QApplication::setOverrideCursor(Qt::waitCursor);
-
-      // rename specific objects
-      if(VISU::Base_i* aBase = aSelectionItem.myObjectInfo.myBase){
-       switch(aBase->GetType()){
-       case VISU::TCURVE: { // Curve object
-         if(VISU::Curve_i* aCurve = dynamic_cast<VISU::Curve_i*>(aBase))
-           aCurve->SetName(Name.latin1(), true);
-         break;
-       }
-       case VISU::TTABLE: { // Table object
-         if(VISU::Table_i* aTable = dynamic_cast<VISU::Table_i*>(aBase))
-           aTable->SetName(Name.latin1(), true);
-         break;
-       }
-       case VISU::TCONTAINER: { // Container object
-         if(VISU::Container_i* aContainer = dynamic_cast<VISU::Container_i*>(aBase))
-           aContainer->SetName(Name.latin1(), true);
-         break;
-       }
-       default: {
-       }}
-      }
-    }
+  VisuGUI_Selection aSel (this);
+  aSel.init("", getApp()->selectionMgr());
+  if (aSel.count() < 1) return;
 
-    if (!Name.isEmpty()) {
-      // rename the study object
-      Handle(SALOME_InteractiveObject) anIO = aSelectionItem.myIO;
-      aName->SetValue(Name.latin1()); // rename the SObject
-      anIO->setName(Name.latin1()); // rename the InteractiveObject
-      
-      ViewManagerList aViewManagerList;
-      getApp()->viewManagers(SPlot2d_Viewer::Type(), aViewManagerList);
-      SUIT_ViewManager* aViewManager = aViewManagerList.first();
-      for(; aViewManager; aViewManager = aViewManagerList.next()){
-       if(Plot2d_ViewManager* aManager = dynamic_cast<Plot2d_ViewManager*>(aViewManager)){
-         if(SPlot2d_Viewer* aViewer = dynamic_cast<SPlot2d_Viewer*>(aManager->getViewModel()))
-           aViewer->renameAll( anIO, Name.latin1() );
-       }
-      }
+  bool isAny = false; // is there any appropriate object selected
+  for (int i = 0; i < aSelectionInfo.size(); i++) {
+    VISU::TSelectionItem aSelectionItem = aSelectionInfo[i];
+    VISU::TObjectInfo anObjectInfo = aSelectionItem.myObjectInfo;
+
+    _PTR(SObject) aSObject = anObjectInfo.mySObject;
+    if (!aSObject)
+      continue;
+
+    // Check, if the selected object can be renamed
+    QString aStr = aSel.parameter(i, "type" ).toString();
+    if (aStr == "VISU::TSCALARMAP" || aStr == "VISU::TISOSURFACES" ||
+        aStr == "VISU::TDEFORMEDSHAPE" || aStr == "VISU::TCUTPLANES" ||
+        aStr == "VISU::TCUTLINES" || aStr == "VISU::TVECTORS" ||
+        aStr == "VISU::TSTREAMLINES" || aStr == "VISU::TPLOT3D" ||
+        aStr == "VISU::TSCALARMAPONDEFORMEDSHAPE" || aStr == "VISU::TCOLOREDPRS3DHOLDER" ||
+        aStr == "VISU::TTABLE" || aStr == "VISU::TCURVE" || aStr == "VISU::TCONTAINER" ||
+        aStr == "VISU::POINTMAP3D" || aStr == "VISU::TVIEW3D" ||
+        aStr == "VISU::TMESH" || aStr == "VISU::TPOINTMAP3D" || aStr == "VISU::TGAUSSPOINTS")
+    {
+      _PTR(GenericAttribute) anAttr;
+      if (aSObject->FindAttribute(anAttr, "AttributeName")) {
+        isAny = true;
+        _PTR(AttributeName) aName (anAttr);
+        QString Name = VisuGUI_NameDlg::getName( GetDesktop( this ), aName->Value().c_str() );
+        if (!Name.isEmpty()) {
+          QApplication::setOverrideCursor(Qt::WaitCursor);
+
+          // rename specific objects
+          if (VISU::Base_i* aBase = anObjectInfo.myBase) {
+            switch (aBase->GetType()) {
+            case VISU::TCURVE: { // Curve object
+              if (VISU::Curve_i* aCurve = dynamic_cast<VISU::Curve_i*>(aBase))
+                aCurve->SetName(Name.toLatin1().constData(), true);
+              break;
+            }
+            case VISU::TTABLE: { // Table object
+              if (VISU::Table_i* aTable = dynamic_cast<VISU::Table_i*>(aBase))
+                aTable->SetName(Name.toLatin1().constData(), true);
+              break;
+            }
+            case VISU::TPOINTMAP3D: { // Table object
+              if (VISU::PointMap3d_i* aTable3d = dynamic_cast<VISU::PointMap3d_i*>(aBase)) {
+                aTable3d->SetTitle(Name.toLatin1().constData());
+                aTable3d->UpdateActors();
+              }
+              break;
+            }
+            case VISU::TCONTAINER: { // Container object
+              if (VISU::Container_i* aContainer = dynamic_cast<VISU::Container_i*>(aBase))
+                aContainer->SetName(Name.toLatin1().constData(), true);
+              break;
+            }
+            default: {
+            }}
+          }
+
+          // rename the study object
+          Handle(SALOME_InteractiveObject) anIO = aSelectionItem.myIO;
+          aName->SetValue(Name.toLatin1().constData()); // rename the SObject
+          anIO->setName(Name.toLatin1().constData()); // rename the InteractiveObject
+
+          ViewManagerList aViewManagerList;
+          getApp()->viewManagers(SPlot2d_Viewer::Type(), aViewManagerList);
+          SUIT_ViewManager* aViewManager;
+         foreach( aViewManager, aViewManagerList ) {
+            if (Plot2d_ViewManager* aManager = dynamic_cast<Plot2d_ViewManager*>(aViewManager)) {
+              if (SPlot2d_Viewer* aViewer = dynamic_cast<SPlot2d_Viewer*>(aManager->getViewModel()))
+                aViewer->renameAll( anIO, Name.toLatin1().constData() );
+            }
+          }
 
-      UpdateObjBrowser(this, false);
+          UpdateObjBrowser(this, false);
+          QApplication::restoreOverrideCursor();
+        }
+      }
     }
+  } // for
 
-    QApplication::restoreOverrideCursor();
+  if (!isAny) {
+    SUIT_MessageBox::warning(GetDesktop(this),
+                            QObject::tr("WRN_VISU"),
+                            QObject::tr("WRN_NO_APPROPRIATE_SELECTION"));
   }
 }
 
@@ -1647,7 +1954,7 @@ void
 VisuGUI
 ::OnClippingPlanes()
 {
-  new VisuGUI_ClippingDlg (this, "", false);
+  new VisuGUI_ClippingDlg (this, false);
 }
 
 //----------------------------------------------------------------------------
@@ -1655,72 +1962,20 @@ void
 VisuGUI
 ::OnSweep()
 {
-  VISU_Actor* anActor = NULL;
-  VISU::Prs3d_i* aPrs3d = NULL;
-  SVTK_ViewWindow* aViewWindow = NULL;
-  if(!GetPrs3dSelectionInfo(this, aPrs3d, aViewWindow, anActor))
-    return;
+  OnDisplayPrs();
+  if ( !mySweep->toggleViewAction()->isChecked() )
+    mySweep->toggleViewAction()->trigger();
+  mySweep->onSelectionChanged();
+  mySweep->onFirst();
+  mySweep->onPlay(true);
+}
 
-  VISU::ScalarMap_i* aScalarMap = dynamic_cast<VISU::ScalarMap_i*>(aPrs3d);
-  if(!aScalarMap)
-    return;
-
-  if(!anActor->GetVisibility())
-    anActor->VisibilityOn();
-
-  // Get sweep parameters
-  SUIT_ResourceMgr* aResourceMgr = GetResourceMgr();
-
-  double aTempoDbl = aResourceMgr->doubleValue("VISU", "sweeping_time_step", 0.1);
-  int aTemp = int(1.E6 * aTempoDbl);
-
-  int aCycles = aResourceMgr->integerValue("VISU", "sweeping_number_cycles", 1);
-  int aSteps  = aResourceMgr->integerValue("VISU", "sweeping_number_steps", 40);
-
-  int aMode = aResourceMgr->integerValue("VISU", "sweeping_modes", 0);
-
-  int is2Pi = aResourceMgr->integerValue("VISU", "sweeping_is2PI", 0);
-
-  // Sweep
-  QApplication::setOverrideCursor(Qt::waitCursor);
-
-  for (int j = 0; j < aCycles; j++) {
-    for (int i = 0; i <= aSteps; i++) {
-      try {
-        float aPercents;
-       float aT;
-       if( aMode >= 1 )
-         aT = ( is2Pi == 1 ? -PI + 2. * PI * float(i)/aSteps : PI * float(i)/aSteps );
-        if( aMode == 1 ){  //if selected Periodic cosinusoidal mode of sweeping
-          //This is necessary in order for animation to return to the initial picture
-         aPercents = (1.-cos( aT ))/2.;
-        }
-        else if( aMode == 2 ){  //if selected Periodic sinusoidal mode of sweeping
-          //This is necessary in order for animation to return to the initial picture
-         aPercents = sin( aT - PI/2 );
-        }
-        else //if selected Linear mode of sweeping
-          aPercents = float(i)/aSteps;
-        aScalarMap->SetMapScale(aPercents);
-        aScalarMap->UpdateActor(anActor);
-        aViewWindow->getRenderWindow()->Render();
-        usleep(aTemp);
-      } catch (std::exception& exc) {
-        INFOS("Follow exception was occured :\n" << exc.what());
-      } catch (...) {
-        INFOS("Unknown exception was occured!");
-      }
-    }
-  }
-  QApplication::restoreOverrideCursor();
-}
-
-//----------------------------------------------------------------------------
-void
-VisuGUI
-::OnTimeAnimation(VISU::Animation::AnimationMode theMode)
-{
-  if (!VISU::GetActiveViewWindow<SVTK_ViewWindow>(this))
+//----------------------------------------------------------------------------
+void
+VisuGUI
+::OnTimeAnimation(VISU::Animation::AnimationMode theMode)
+{
+  if (!VISU::GetActiveViewWindow<SVTK_ViewWindow>(this))
     return;
 
   _PTR(Study) aCStudy = GetCStudy(GetAppStudy(this));
@@ -1735,10 +1990,9 @@ VisuGUI
   for (; It.More(); It.Next()) {
     _PTR(SObject) aSObject = aCStudy->FindObjectID(It.Value()->getEntry());
     if ( !aAnimationDlg->addField(aSObject) ) {
-      SUIT_MessageBox::warn1(GetDesktop(this),
-                          tr("WRN_VISU"),
-                          tr("ERR_CANT_CREATE_ANIMATION"),
-                          tr("BUT_OK"));
+      SUIT_MessageBox::warning(GetDesktop(this),
+                               tr("WRN_VISU"),
+                               tr("ERR_CANT_CREATE_ANIMATION") );
       delete aAnimationDlg;
       return;
     }
@@ -1781,11 +2035,11 @@ VisuGUI
   _PTR(Study) aCStudy = GetCStudy(GetAppStudy(this));
 
   _PTR(SObject) aSObj = aCStudy->FindObjectID(anIO->getEntry());
-  if (!aSObj) 
+  if (!aSObj)
     return;
 
   VISU::VISUType aType = VISU::Storable::SObject2Type( aSObj );
-  if (aType != VISU::TANIMATION) 
+  if (aType != VISU::TANIMATION)
     return;
 
   VisuGUI_TimeAnimationDlg* aAnimationDlg =
@@ -1806,7 +2060,7 @@ VisuGUI
   VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects(this);
   if(aSelectionInfo.empty())
     return;
-  
+
   VISU::TSelectionItem aSelectionItem = aSelectionInfo.front();
   VISU::Base_i* aBase = aSelectionItem.myObjectInfo.myBase;
   if(!aBase)
@@ -1826,7 +2080,8 @@ VisuGUI
       TSameAsFactory<VISU::TDEFORMEDSHAPE>().Create(aColoredPrs3d, ColoredPrs3d_i::EPublishUnderTimeStamp, false);
       break;
     case VISU::TSCALARMAPONDEFORMEDSHAPE:
-      TSameAsFactory<VISU::TSCALARMAPONDEFORMEDSHAPE>().Create(aColoredPrs3d, ColoredPrs3d_i::EPublishUnderTimeStamp, false);
+    case VISU::TDEFORMEDSHAPEANDSCALARMAP:
+      TSameAsFactory<VISU::TDEFORMEDSHAPEANDSCALARMAP>().Create(aColoredPrs3d, ColoredPrs3d_i::EPublishUnderTimeStamp, false);
       break;
     case VISU::TCUTPLANES:
       TSameAsFactory<VISU::TCUTPLANES>().Create(aColoredPrs3d, ColoredPrs3d_i::EPublishUnderTimeStamp, false);
@@ -1854,15 +2109,66 @@ VisuGUI
 //----------------------------------------------------------------------------
 void
 VisuGUI
-::OnSelectionInfo()
+::OnToggleSelectionPanel()
 {
   if (GetActiveViewWindow<SVTK_ViewWindow>(this))
-    (new VisuGUI_SelectionDlg(this))->show();
+  {
+    if( myPanels.find( SelectionPanelId ) != myPanels.end() )
+    {
+      if( VisuGUI_SelectionPanel* aSelectionPanel =
+         dynamic_cast<VisuGUI_SelectionPanel*>( myPanels[ SelectionPanelId ] ) )
+      {
+       if( aSelectionPanel->isVisible() )
+         aSelectionPanel->hide();
+       else
+         aSelectionPanel->show();
+      }
+    }
+  }
   else
-    SUIT_MessageBox::warn1(GetDesktop(this),
-                           tr("WRN_VISU"),
-                           tr("ERR_ACTIVATE_VIEW3D"),
-                           tr("BUT_OK") );
+    SUIT_MessageBox::warning(GetDesktop(this),
+                             tr("WRN_VISU"),
+                             tr("ERR_ACTIVATE_VIEW3D") );
+}
+
+//----------------------------------------------------------------------------
+void
+VisuGUI
+::OnSwitchSelectionMode()
+{
+  QAction* anAction = dynamic_cast<QAction*>( sender() );
+  if( !anAction )
+    return;
+
+  bool isAnyChecked = false;
+  for( int anId = VISU_ACTOR_SELECTION; anId <= VISU_GAUSS_POINT_SELECTION; anId++ )
+  {
+    QAction* aRefAction = action( anId );
+    isAnyChecked |= aRefAction->isChecked();
+    if( anAction != aRefAction )
+      aRefAction->setChecked( false );
+    else if( myPanels.find( SelectionPanelId ) != myPanels.end() )
+    {
+      if( VisuGUI_SelectionPanel* aSelectionPanel =
+         dynamic_cast<VisuGUI_SelectionPanel*>( myPanels[ SelectionPanelId ] ) )
+       aSelectionPanel->setSelectionMode( anId - VISU_ACTOR_SELECTION );
+    }
+  }
+  // At least one action must be checked
+  if( !isAnyChecked )
+    anAction->setChecked( true );
+}
+
+//----------------------------------------------------------------------------
+void
+VisuGUI
+::OnSwitchSelectionMode( int theId )
+{
+  for( int anId = VISU_ACTOR_SELECTION; anId <= VISU_GAUSS_POINT_SELECTION; anId++ )
+  {
+    QAction* aRefAction = action( anId );
+    aRefAction->setChecked( anId == VISU_ACTOR_SELECTION + theId );
+  }
 }
 
 //----------------------------------------------------------------------------
@@ -1972,26 +2278,7 @@ VisuGUI
 {
   if(MYDEBUG) MESSAGE("VisuGUI::OnTranslatePrs");
   VisuGUI_OffsetDlg* aDlg = new VisuGUI_OffsetDlg (this);
-
-  LightApp_SelectionMgr* aSelectionMgr = GetSelectionMgr(this);
-  SALOME_ListIO aListIO;
-  aSelectionMgr->selectedObjects(aListIO);
-
-  SalomeApp_Study* aStudy = GetAppStudy(this);
-  SALOME_ListIteratorOfListIO anIter(aListIO);
-  for (; anIter.More(); anIter.Next()) {
-    Handle(SALOME_InteractiveObject) anIO = anIter.Value();
-    if (anIO->hasEntry()) {
-      QString anEntry(anIO->getEntry());
-      VISU::TObjectInfo anObjectInfo = VISU::GetObjectByEntry(aStudy, anEntry);
-      if(VISU::Prs3d_i* aPrsObject = VISU::GetPrs3dFromBase(anObjectInfo.myBase))
-       aDlg->addPresentation(aPrsObject);
-    }
-  }
-  if (aDlg->getPrsCount() > 0)
-    aDlg->show();
-  else
-    delete aDlg;
+  aDlg->exec();
 }
 
 void
@@ -2012,10 +2299,18 @@ VisuGUI
 {
   SalomeApp_Module::initialize( theApp );
 
+  mySlider = new VisuGUI_Slider( this, getApp()->desktop(), getApp()->selectionMgr() );
+
+  mySweep = new VisuGUI_Sweep( this, getApp()->desktop(), getApp()->selectionMgr() );
+
   createActions();
   createMenus();
   createToolBars();
   createPopupMenus();
+  createPanels();
+
+  // tmp
+  action( VISU_ACTOR_SELECTION )->setChecked( true );
 }
 
 void
@@ -2027,343 +2322,391 @@ VisuGUI
   SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
 
   // Create actions
-  //createAction( VISU_IMPORT_FROM_FILE, "", QIconSet(),
-  //              tr("MEN_IMPORT_FROM_FILE"), "", (CTRL + Key_I), aParent, false,
-  //              this, SLOT(OnImportFromFile()));
 
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_IMPORT_MED"));
-  createAction( VISU_IMPORT_FROM_FILE, tr("IMPORT_FROM_FILE"), QIconSet(aPixmap),
-                tr("MEN_IMPORT_FROM_FILE"), "", (CTRL + Key_I), aParent, false,
+  createAction( VISU_IMPORT_FROM_FILE, tr("IMPORT_FROM_FILE"), QIcon(aPixmap),
+                tr("MEN_IMPORT_FROM_FILE"), "", (Qt::CTRL + Qt::Key_I), aParent, false,
                 this, SLOT(OnImportFromFile()));
 
-  createAction( VISU_IMPORT_TABLE, "", QIconSet(),
+  createAction( VISU_IMPORT_TABLE, "", QIcon(),
                 tr("MEN_IMPORT_TABLE"), "", 0, aParent, false,
                 this, SLOT(OnImportTableFromFile()));
 
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_SCALAR_MAP"));
-  createAction( VISU_SCALAR_MAP, tr("MEN_SCALAR_MAP"), QIconSet(aPixmap),
+  createAction( VISU_SCALAR_MAP, tr("MEN_SCALAR_MAP"), QIcon(aPixmap),
                 tr("MEN_SCALAR_MAP"), "", 0, aParent, false,
                 this, SLOT(OnCreateScalarMap()));
 
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_DEFORMED_SHAPE"));
-  createAction( VISU_DEFORMED_SHAPE, tr("MEN_DEFORMED_SHAPE"), QIconSet(aPixmap),
+  createAction( VISU_DEFORMED_SHAPE, tr("MEN_DEFORMED_SHAPE"), QIcon(aPixmap),
                 tr("MEN_DEFORMED_SHAPE"), "", 0, aParent, false,
                 this, SLOT(OnCreateDeformedShape()));
 
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_SCALAR_MAP_ON_DEFORMED_SHAPE"));
-  createAction( VISU_SCALAR_MAP_ON_DEFORMED_SHAPE, tr("MEN_SCALAR_MAP_ON_DEFORMED_SHAPE"), QIconSet(aPixmap),
-                tr("MEN_SCALAR_MAP_ON_DEFORMED_SHAPE"), "", 0, aParent, false,
-                this, SLOT(OnCreateScalarMapOnDeformedShape()));
+  createAction( VISU_DEFORMED_SHAPE_AND_SCALAR_MAP, tr("MEN_DEFORMED_SHAPE_AND_SCALAR_MAP"), QIcon(aPixmap),
+                tr("MEN_DEFORMED_SHAPE_AND_SCALAR_MAP"), "", 0, aParent, false,
+                this, SLOT(OnCreateDeformedShapeAndScalarMap()));
 
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_VECTORS"));
-  createAction( VISU_VECTORS, tr("MEN_VECTORS"), QIconSet(aPixmap),
+  createAction( VISU_VECTORS, tr("MEN_VECTORS"), QIcon(aPixmap),
                 tr("MEN_VECTORS"), "", 0, aParent, false,
                 this, SLOT(OnCreateVectors()));
 
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_ISO_SURFACES"));
-  createAction( VISU_ISO_SURFACES, tr("MEN_ISO_SURFACES"), QIconSet(aPixmap),
+  createAction( VISU_ISO_SURFACES, tr("MEN_ISO_SURFACES"), QIcon(aPixmap),
                 tr("MEN_ISO_SURFACES"), "", 0, aParent, false,
                 this, SLOT(OnCreateIsoSurfaces()));
 
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_CUT_PLANES"));
-  createAction( VISU_CUT_PLANES, tr("MEN_CUT_PLANES"), QIconSet(aPixmap),
+  createAction( VISU_CUT_PLANES, tr("MEN_CUT_PLANES"), QIcon(aPixmap),
                 tr("MEN_CUT_PLANES"), "", 0, aParent, false,
                 this, SLOT(OnCreateCutPlanes()));
 
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_STREAM_LINES"));
-  createAction( VISU_STREAM_LINES, tr("MEN_STREAM_LINES"), QIconSet(aPixmap),
+  createAction( VISU_STREAM_LINES, tr("MEN_STREAM_LINES"), QIcon(aPixmap),
                 tr("MEN_STREAM_LINES"), "", 0, aParent, false,
                 this, SLOT(OnCreateStreamLines()));
 
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_CUT_LINES"));
-  createAction( VISU_CUT_LINES, tr("MEN_CUT_LINES"), QIconSet(aPixmap),
+  createAction( VISU_CUT_LINES, tr("MEN_CUT_LINES"), QIcon(aPixmap),
                 tr("MEN_CUT_LINES"), "", 0, aParent, false,
                 this, SLOT(OnCreateCutLines()));
 
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_PLOT_3D"));
-  createAction( VISU_PLOT_3D, tr("MEN_PLOT_3D"), QIconSet(aPixmap),
+  createAction( VISU_PLOT_3D, tr("MEN_PLOT_3D"), QIcon(aPixmap),
                 tr("MEN_PLOT_3D"), "", 0, aParent, false,
                 this, SLOT(OnCreatePlot3D()));
 
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_PLOT2D"));
-  createAction( VISU_PLOT2D, tr("MEN_CREATE_PLOT2D"), QIconSet(aPixmap),
+  createAction( VISU_PLOT2D, tr("MEN_CREATE_PLOT2D"), QIcon(aPixmap),
                 tr("MEN_CREATE_PLOT2D"), "", 0, aParent, false,
                 this, SLOT(OnCreatePlot2dView()));
 
-  createAction( VISU_DELETE_OBJS, tr("MEN_DELETE_OBJS"), QIconSet(),
-                tr("MEN_DELETE_OBJS"), "", Key_Delete, aParent, false,
+  createAction( VISU_DELETE_OBJS, tr("MEN_DELETE_OBJS"), QIcon(),
+                tr("MEN_DELETE_OBJS"), "", Qt::Key_Delete, aParent, false,
                 this, SLOT(OnDeleteObjects()));
 
-  createAction( VISU_SHOW_TABLE, tr("MEN_SHOW_TABLE"), QIconSet(),
+  createAction( VISU_SHOW_TABLE, tr("MEN_SHOW_TABLE"), QIcon(),
                 tr("MEN_SHOW_TABLE"), "", 0, aParent, false,
                 this, SLOT(OnShowTable()));
 
-  createAction( VISU_CREATE_CURVES, tr("MEN_CREATE_CURVES"), QIconSet(),
+  createAction( VISU_EDIT_POINTMAP3D, tr("MEN_EDIT_PRS"), QIcon(),
+                tr("MEN_EDIT_PRS"), "", 0, aParent, false,
+                this, SLOT(OnShowTablePlot()));
+
+  createAction( VISU_CREATE_CURVES, tr("MEN_CREATE_CURVES"), QIcon(),
                 tr("MEN_CREATE_CURVES"), "", 0, aParent, false,
                 this, SLOT(OnPlotData()));
 
-  createAction( VISU_EXPORT_TABLE, tr("MEN_EXPORT_TABLE"), QIconSet(),
+  createAction( VISU_EXPORT_TABLE, tr("MEN_EXPORT_TABLE"), QIcon(),
                 tr("MEN_EXPORT_TABLE"), "", 0, aParent, false,
                 this, SLOT(OnExportTableToFile()));
 
-  createAction( VISU_IMPORT_MED_STRUCTURE, tr("MEN_IMPORT_MED_STRUCTURE"), QIconSet(),
+  createAction( VISU_IMPORT_MED_STRUCTURE, tr("MEN_IMPORT_MED_STRUCTURE"), QIcon(),
                 tr("MEN_IMPORT_MED_STRUCTURE"), "", 0, aParent, false,
                 this, SLOT(OnImportMedField()));
 
-  createAction( VISU_IMPORT_MED_TIMESTAMP, tr("MEN_IMPORT_MED_TIMESTAMP"), QIconSet(),
+  createAction( VISU_IMPORT_MED_TIMESTAMP, tr("MEN_IMPORT_MED_TIMESTAMP"), QIcon(),
                 tr("MEN_IMPORT_MED_TIMESTAMP"), "", 0, aParent, false,
                 this, SLOT(OnImportMedField()));
 
-  createAction( VISU_IMPORT_MED_FIELD, tr("MEN_IMPORT_MED_FIELD"), QIconSet(),
+  createAction( VISU_IMPORT_MED_FIELD, tr("MEN_IMPORT_MED_FIELD"), QIcon(),
                 tr("MEN_IMPORT_MED_FIELD"), "", 0, aParent, false,
                 this, SLOT(OnImportMedField()));
 
-  createAction( VISU_LOAD_COMPONENT_DATA, tr("MEN_LOAD_COMPONENT_DATA"), QIconSet(),
+  createAction( VISU_LOAD_COMPONENT_DATA, tr("MEN_LOAD_COMPONENT_DATA"), QIcon(),
                 tr("MEN_LOAD_COMPONENT_DATA"), "", 0, aParent, false,
                 this, SLOT(OnLoadComponentData()));
 
-  createAction( VISU_CREATE_PRS, tr("MEN_CREATE_PRS"), QIconSet(),
+  createAction( VISU_CREATE_PRS, tr("MEN_CREATE_PRS"), QIcon(),
                 tr("MEN_CREATE_PRS"), "", 0, aParent, false,
                 this, SLOT(OnCreateMesh()));
 
-  createAction( VISU_CREATE_MANY_PRS, tr("MEN_CREATE_MANY_PRS"), QIconSet(),
+  createAction( VISU_CREATE_MANY_PRS, tr("MEN_CREATE_MANY_PRS"), QIcon(),
                 tr("MEN_CREATE_MANY_PRS"), "", 0, aParent, false,
                 this, SLOT(OnCreateManyMesh()));
 
-  createAction( VISU_TRANSLATE_PRS, tr("MEN_TRANSLATE_PRS"), QIconSet(),
+  createAction( VISU_TRANSLATE_PRS, tr("MEN_TRANSLATE_PRS"), QIcon(),
                 tr("MEN_TRANSLATE_PRS"), "", 0, aParent, false,
                 this, SLOT(OnTranslatePrs()));
 
-  createAction( VISU_MERGE_SCALAR_BARS, tr("MEN_MERGE_SCALAR_BARS"), QIconSet(),
+  createAction( VISU_MERGE_SCALAR_BARS, tr("MEN_MERGE_SCALAR_BARS"), QIcon(),
                 tr("MEN_MERGE_SCALAR_BARS"), "", 0, aParent, false,
                 this, SLOT(OnMergeScalarBars()));
 
-  createAction( VISU_FREE_SCALAR_BARS, tr("MEN_FREE_SCALAR_BARS"), QIconSet(),
+  createAction( VISU_FREE_SCALAR_BARS, tr("MEN_FREE_SCALAR_BARS"), QIcon(),
                 tr("MEN_FREE_SCALAR_BARS"), "", 0, aParent, false,
                 this, SLOT(OnFreeScalarBars()));
 
-  createAction( VISU_ERASE, tr("MEN_HIDE"), QIconSet(),
+  createAction( VISU_ERASE, tr("MEN_HIDE"), QIcon(),
                 tr("MEN_HIDE"), "", 0, aParent, false,
                 this, SLOT(OnErasePrs()));
 
-  createAction( VISU_DISPLAY, tr("MEN_SHOW"), QIconSet(),
+  createAction( VISU_DISPLAY, tr("MEN_SHOW"), QIcon(),
                 tr("MEN_SHOW"), "", 0, aParent, false,
                 this, SLOT(OnDisplayPrs()));
 
-  createAction( VISU_DISPLAY_ONLY, tr("MEN_DISPLAY_ONLY"), QIconSet(),
+  createAction( VISU_DISPLAY_ONLY, tr("MEN_DISPLAY_ONLY"), QIcon(),
                 tr("MEN_DISPLAY_ONLY"), "", 0, aParent, false,
                 this, SLOT(OnDisplayOnlyPrs()));
 
-  createAction( VISU_COPY_PRS, tr("MEN_COPY_PRS"), QIconSet(),
+  createAction( VISU_SHOW_SCALAR_BAR, tr("MEN_SHOW_SCALAR_BAR"), QIcon(),
+                tr("MEN_SHOW_SCALAR_BAR"), "", 0, aParent, false,
+                this, SLOT(OnShowScalarBar()));
+
+  createAction( VISU_HIDE_SCALAR_BAR, tr("MEN_HIDE_SCALAR_BAR"), QIcon(),
+                tr("MEN_HIDE_SCALAR_BAR"), "", 0, aParent, false,
+                this, SLOT(OnHideScalarBar()));
+
+  createAction( VISU_COPY_PRS, tr("MEN_COPY_PRS"), QIcon(),
                 tr("MEN_COPY_PRS"), "", 0, aParent, false,
                 this, SLOT(OnCopyPresentation()));
 
-  createAction( VISU_CURVE_PROPS, tr("MEN_CURVE_PROPS"), QIconSet(),
+  createAction( VISU_CURVE_PROPS, tr("MEN_CURVE_PROPS"), QIcon(),
                 tr("MEN_CURVE_PROPS"), "", 0, aParent, false,
                 this, SLOT(OnCurveProperties()));
 
-  createAction( VISU_RENAME, tr("MEN_RENAME"), QIconSet(),
-                tr("MEN_RENAME"), "", Key_F2, aParent, false,
+  createAction( VISU_RENAME, tr("MEN_RENAME"), QIcon(),
+                tr("MEN_RENAME"), "", Qt::Key_F2, aParent, false,
                 this, SLOT(OnRename()));
 
-  createAction( VISU_EDIT_CONTAINER, tr("MEN_EDIT_CONTAINER"), QIconSet(),
+  createAction( VISU_EDIT_CONTAINER, tr("MEN_EDIT_CONTAINER"), QIcon(),
                 tr("MEN_EDIT_CONTAINER"), "", 0, aParent, false,
                 this, SLOT(OnEditContainer()));
 
-  createAction( VISU_CLEAR_CONTAINER, tr("MEN_CLEAR_CONTAINER"), QIconSet(),
+  createAction( VISU_CLEAR_CONTAINER, tr("MEN_CLEAR_CONTAINER"), QIcon(),
                 tr("MEN_CLEAR_CONTAINER"), "", 0, aParent, false,
                 this, SLOT(OnClearContainer()));
 
-  createAction( VISU_SAVE_VIEW_PARAMS, tr("MEN_SAVE_VIEWPARAMS"), QIconSet(),
+  createAction( VISU_SAVE_VIEW_PARAMS, tr("MEN_SAVE_VIEWPARAMS"), QIcon(),
                 tr("MEN_SAVE_VIEWPARAMS"), "", 0, aParent, false,
                 this, SLOT(OnSaveViewParams()));
-  createAction( VISU_SAVE_VIEW_PARAMS_1, tr("MEN_SAVE_VIEWPARAMS"), QIconSet(),
+  createAction( VISU_SAVE_VIEW_PARAMS_1, tr("MEN_SAVE_VIEWPARAMS"), QIcon(),
                 tr("MEN_SAVE_VIEWPARAMS"), "", 0, aParent, false,
                 this, SLOT(OnSaveViewParams()));
 
-  createAction( VISU_RESTORE_VIEW_PARAMS, tr("MEN_RESTORE_VIEWPARAMS"), QIconSet(),
+  createAction( VISU_RESTORE_VIEW_PARAMS, tr("MEN_RESTORE_VIEWPARAMS"), QIcon(),
                 tr("MEN_RESTORE_VIEWPARAMS"), "", 0, aParent, false,
                 this, SLOT(OnRestoreViewParams()));
 
-  //createAction( VISU_DELETE_VIEW_PARAMS, tr("MEN_DELETE_VIEWPARAMS"), QIconSet(),
+  //createAction( VISU_DELETE_VIEW_PARAMS, tr("MEN_DELETE_VIEWPARAMS"), QIcon(),
   //              tr("MEN_DELETE_VIEWPARAMS"), "", 0, aParent, false,
   //              this, SLOT(OnDeleteObjects()));
 
-  createAction( VISU_ARRANGE_ACTORS, tr("MEN_ARRANGE_ACTORS"), QIconSet(),
+  createAction( VISU_ARRANGE_ACTORS, tr("MEN_ARRANGE_ACTORS"), QIcon(),
                 tr("MEN_ARRANGE_ACTORS"), "", 0, aParent, false,
                 this, SLOT(OnArrangeActors()));
 
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_POINTS"));
-  createAction( VISU_POINTS, tr("MEN_POINTS"), QIconSet(aPixmap),
+  createAction( VISU_POINTS, tr("MEN_POINTS"), QIcon(aPixmap),
                 tr("MEN_POINTS"), "", 0, aParent, false,
                 this, SLOT(OnMakePoints()));
 
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_WIREFRAME"));
-  createAction( VISU_WIREFRAME, tr("MEN_WIREFRAME"), QIconSet(aPixmap),
+  createAction( VISU_WIREFRAME, tr("MEN_WIREFRAME"), QIcon(aPixmap),
                 tr("MEN_WIREFRAME"), "", 0, aParent, false,
                 this, SLOT(OnMakeWireframe()));
 
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_SURFACE"));
-  createAction( VISU_SURFACE, tr("MEN_SURFACE"), QIconSet(aPixmap),
+  createAction( VISU_SURFACE, tr("MEN_SURFACE"), QIcon(aPixmap),
                 tr("MEN_SURFACE"), "", 0, aParent, false,
                 this, SLOT(OnMakeSurface()));
 
-  createAction( VISU_INSIDEFRAME, tr("MEN_INSIDEFRAME"), QIconSet(),
+  createAction( VISU_INSIDEFRAME, tr("MEN_INSIDEFRAME"), QIcon(),
                 tr("MEN_INSIDEFRAME"), "", 0, aParent, false,
                 this, SLOT(OnMakeInsideframe()));
 
-  createAction( VISU_SURFACEFRAME, tr("MEN_SURFACEFRAME"), QIconSet(),
+  createAction( VISU_SURFACEFRAME, tr("MEN_SURFACEFRAME"), QIcon(),
                 tr("MEN_SURFACEFRAME"), "", 0, aParent, false,
                 this, SLOT(OnMakeSurfaceframe()));
 
-  createAction( VISU_SHRINK, tr("MEN_SHRINK"), QIconSet(),
+  createAction( VISU_SHRINK, tr("MEN_SHRINK"), QIcon(),
                 tr("MEN_SHRINK"), "", 0, aParent, false,
                 this, SLOT(OnMakeShrink()));
 
-  createAction( VISU_UNSHRINK, tr("MEN_UNSHRINK"), QIconSet(),
+  createAction( VISU_UNSHRINK, tr("MEN_UNSHRINK"), QIcon(),
                 tr("MEN_UNSHRINK"), "", 0, aParent, false,
                 this, SLOT(OnMakeShrink()));
-  
-  createAction( VISU_SHADING, tr("MEN_SHADING"), QIconSet(),
+
+  createAction( VISU_FEATURE_EDGES, tr("MEN_FEATURE_EDGES"), QIcon(),
+                tr("MEN_FEATURE_EDGES"), "", 0, aParent, false,
+                this, SLOT(OnMakeFeatureEdges()));
+
+  createAction( VISU_SHADING, tr("MEN_SHADING"), QIcon(),
                 tr("MEN_SHADING"), "", 0, aParent, false,
                 this, SLOT(OnSetShadingOn()));
-  
-  createAction( VISU_NOSHADING, tr("MEN_NOSHADING"), QIconSet(),
+
+  createAction( VISU_NOSHADING, tr("MEN_NOSHADING"), QIcon(),
                 tr("MEN_NOSHADING"), "", 0, aParent, false,
                 this, SLOT(OnSetShadingOff()));
 
-  createAction( VISU_CELL_COLOR, tr("MEN_CELL_COLOR"), QIconSet(),
+  createAction( VISU_CELL_COLOR, tr("MEN_CELL_COLOR"), QIcon(),
                 tr("MEN_CELL_COLOR"), "", 0, aParent, false,
                 this, SLOT(OnChangeColor()));
 
-  createAction( VISU_COLOR, tr("MEN_COLOR"), QIconSet(),
+  createAction( VISU_COLOR, tr("MEN_COLOR"), QIcon(),
                 tr("MEN_COLOR"), "", 0, aParent, false,
                 this, SLOT(OnChangeColor()));
 
-  createAction( VISU_EDGE_COLOR, tr("MEN_EDGE_COLOR"), QIconSet(),
+  createAction( VISU_EDGE_COLOR, tr("MEN_EDGE_COLOR"), QIcon(),
                 tr("MEN_EDGE_COLOR"), "", 0, aParent, false,
                 this, SLOT(OnChangeWireframeColor()));
 
-  createAction( VISU_OPACITY, tr("MEN_OPACITY"), QIconSet(),
+  createAction( VISU_OPACITY, tr("MEN_OPACITY"), QIcon(),
                 tr("MEN_OPACITY"), "", 0, aParent, false,
                 this, SLOT(OnChangeOpacity()));
 
-  createAction( VISU_LINE_WIDTH, tr("MEN_LINE_WIDTH"), QIconSet(),
+  createAction( VISU_LINE_WIDTH, tr("MEN_LINE_WIDTH"), QIcon(),
                 tr("MEN_LINE_WIDTH"), "", 0, aParent, false,
                 this, SLOT(OnChangeLines()));
 
 
-  createAction( VISU_EDIT_SCALARMAP, tr("MEN_EDIT_PRS"), QIconSet(),
+  createAction( VISU_EDIT_SCALARMAP, tr("MEN_EDIT_PRS"), QIcon(),
                 tr("MEN_EDIT_PRS"), "", 0, aParent, false,
                 this, SLOT(OnEditScalarMap()));
 
-  createAction( VISU_EDIT_DEFORMEDSHAPE, tr("MEN_EDIT_PRS"), QIconSet(),
+  createAction( VISU_EDIT_DEFORMEDSHAPE, tr("MEN_EDIT_PRS"), QIcon(),
                 tr("MEN_EDIT_PRS"), "", 0, aParent, false,
                 this, SLOT(OnEditDeformedShape()));
 
-  createAction( VISU_EDIT_CUTPLANES, tr("MEN_EDIT_PRS"), QIconSet(),
+  createAction( VISU_EDIT_CUTPLANES, tr("MEN_EDIT_PRS"), QIcon(),
                 tr("MEN_EDIT_PRS"), "", 0, aParent, false,
                 this, SLOT(OnEditCutPlanes()));
 
-  createAction( VISU_EDIT_CUTLINES, tr("MEN_EDIT_PRS"), QIconSet(),
+  createAction( VISU_EDIT_CUTLINES, tr("MEN_EDIT_PRS"), QIcon(),
                 tr("MEN_EDIT_PRS"), "", 0, aParent, false,
                 this, SLOT(OnEditCutLines()));
 
-  createAction( VISU_EDIT_ISOSURFACES, tr("MEN_EDIT_PRS"), QIconSet(),
+  createAction( VISU_EDIT_ISOSURFACES, tr("MEN_EDIT_PRS"), QIcon(),
                 tr("MEN_EDIT_PRS"), "", 0, aParent, false,
                 this, SLOT(OnEditIsoSurfaces()));
 
-  createAction( VISU_EDIT_VECTORS, tr("MEN_EDIT_PRS"), QIconSet(),
+  createAction( VISU_EDIT_VECTORS, tr("MEN_EDIT_PRS"), QIcon(),
                 tr("MEN_EDIT_PRS"), "", 0, aParent, false,
                 this, SLOT(OnEditVectors()));
 
-  createAction( VISU_EDIT_STREAMLINES, tr("MEN_EDIT_PRS"), QIconSet(),
+  createAction( VISU_EDIT_STREAMLINES, tr("MEN_EDIT_PRS"), QIcon(),
                 tr("MEN_EDIT_PRS"), "", 0, aParent, false,
                 this, SLOT(OnEditStreamLines()));
 
-  createAction( VISU_EDIT_PLOT3D, tr("MEN_EDIT_PRS"), QIconSet(),
+  createAction( VISU_EDIT_PLOT3D, tr("MEN_EDIT_PRS"), QIcon(),
                 tr("MEN_EDIT_PRS"), "", 0, aParent, false,
                 this, SLOT(OnEditPlot3D()));
 
-  createAction( VISU_EDIT_SCALARMAPONDEFORMEDSHAPE, tr("MEN_EDIT_PRS"), QIconSet(),
+  createAction( VISU_EDIT_DEFORMEDSHAPEANDSCALARMAP, tr("MEN_EDIT_PRS"), QIcon(),
                 tr("MEN_EDIT_PRS"), "", 0, aParent, false,
-                this, SLOT(OnEditScalarMapOnDeformedShape()));
+                this, SLOT(OnEditDeformedShapeAndScalarMap()));
 
-
-  createAction( VISU_CREATE_TABLE, tr("MEN_CREATE_TABLE"), QIconSet(),
+  createAction( VISU_CREATE_TABLE, tr("MEN_CREATE_TABLE"), QIcon(),
                 tr("MEN_CREATE_TABLE"), "", 0, aParent, false,
                 this, SLOT(OnCreateTable()));
 
-  aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_SWEEP"));
-  createAction( VISU_SWEEP, tr("MEN_SWEEP"), QIconSet(aPixmap),
+  aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_SWEEP_PANEL"));
+  createAction( VISU_SWEEP, tr("MEN_SWEEP"), QIcon(aPixmap),
                 tr("MEN_SWEEP"), "", 0, aParent, false,
                 this, SLOT(OnSweep()));
 
-  createAction( VISU_CLIPPING, tr("MEN_CLIPPING"), QIconSet(),
+  createAction( VISU_CLIPPING, tr("MEN_CLIPPING"), QIcon(),
                 tr("MEN_CLIPPING"), "", 0, aParent, false,
                 this, SLOT(OnClippingPlanes()));
 
-  createAction( VISU_SELECTION_INFO, tr("MEN_SELECTION_INFO"), QIconSet(),
-                tr("MEN_SELECTION_INFO"), "", 0, aParent, false,
-                this, SLOT(OnSelectionInfo()));
-
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_TIMEANIMATION"));
-  createAction( VISU_PARALLELANIMATION, tr("MEN_PARALLEL_ANIMATION"), QIconSet(aPixmap),
+  createAction( VISU_PARALLELANIMATION, tr("MEN_PARALLEL_ANIMATION"), QIcon(aPixmap),
                 tr("MEN_PARALLEL_ANIMATION"), "", 0, aParent, false,
                 this, SLOT(OnParallelTimeAnimation()));
 
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_TIMEANIMATION"));
-  createAction( VISU_SUCCCESSIVEANIMATION, tr("MEN_SUCCCESSIVE_ANIMATION"), QIconSet(aPixmap),
+  createAction( VISU_SUCCCESSIVEANIMATION, tr("MEN_SUCCCESSIVE_ANIMATION"), QIcon(aPixmap),
                 tr("MEN_SUCCCESSIVE_ANIMATION"), "", 0, aParent, false,
                 this, SLOT(OnSucccessiveTimeAnimation()));
 
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_ERASE_ALL"));
-  createAction( VISU_ERASE_ALL, tr("MEN_ERASE_ALL"), QIconSet(aPixmap),
+  createAction( VISU_ERASE_ALL, tr("MEN_ERASE_ALL"), QIcon(aPixmap),
                 tr("MEN_ERASE_ALL"), "", 0, aParent, false,
                 this, SLOT(OnEraseAll()));
 
-  aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_GLOBAL_SELECTION"));
-  createAction( VISU_GLOBAL_SELECTION, tr("MEN_GLOBAL_SELECTION"), QIconSet(aPixmap),
-                tr("MEN_GLOBAL_SELECTION"), "", 0, aParent, false,
-                this);
+  aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_SELECTION_PANEL"));
+  createAction( VISU_SELECTION_PANEL, tr("MEN_SELECTION_PANEL"), QIcon(aPixmap),
+                tr("MEN_SELECTION_PANEL"), "", 0, aParent, false,
+                this, SLOT(OnToggleSelectionPanel()));
 
-  aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_PARTIAL_SELECTION"));
-  createAction( VISU_PARTIAL_SELECTION, tr("MEN_PARTIAL_SELECTION"), QIconSet(aPixmap),
-                tr("MEN_PARTIAL_SELECTION"), "", 0, aParent, false,
-                this);
+  aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_ACTOR_SELECTION"));
+  createAction( VISU_ACTOR_SELECTION, tr("MEN_ACTOR_SELECTION"), QIcon(aPixmap),
+                tr("MEN_ACTOR_SELECTION"), "", 0, aParent, true,
+                this, SLOT(OnSwitchSelectionMode()));
 
-  createAction( VISU_SHOW_ANIMATION, tr("MEN_SHOW_ANIMATION"), QIconSet(),
+  aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_CELL_SELECTION"));
+  createAction( VISU_CELL_SELECTION, tr("MEN_CELL_SELECTION"), QIcon(aPixmap),
+                tr("MEN_CELL_SELECTION"), "", 0, aParent, true,
+                this, SLOT(OnSwitchSelectionMode()));
+
+  aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_POINT_SELECTION"));
+  createAction( VISU_POINT_SELECTION, tr("MEN_POINT_SELECTION"), QIcon(aPixmap),
+                tr("MEN_POINT_SELECTION"), "", 0, aParent, true,
+                this, SLOT(OnSwitchSelectionMode()));
+
+  aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_GAUSS_POINT_SELECTION"));
+  createAction( VISU_GAUSS_POINT_SELECTION, tr("MEN_GAUSS_POINT_SELECTION"), QIcon(aPixmap),
+                tr("MEN_GAUSS_POINT_SELECTION"), "", 0, aParent, true,
+                this, SLOT(OnSwitchSelectionMode()));
+
+  // Defenition of the actions for the "Navigation" tool bar
+  registerAction( VISU_SLIDER_PANEL, mySlider->toggleViewAction() );
+  registerAction( VISU_SWEEP_PANEL, mySweep->toggleViewAction() );
+
+  createAction( VISU_SHOW_ANIMATION, tr("MEN_SHOW_ANIMATION"), QIcon(),
                 tr("MEN_SHOW_ANIMATION"), "", 0, aParent, false,
                 this, SLOT(OnShowAnimation()));
 
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_PLOT_3D"));
-  createAction( VISU_PLOT3D_FROM_CUTPLANE, tr("MEN_PLOT3D_FROM_CUTPLANE"), QIconSet(aPixmap),
+  createAction( VISU_PLOT3D_FROM_CUTPLANE, tr("MEN_PLOT3D_FROM_CUTPLANE"), QIcon(aPixmap),
                 tr("MEN_PLOT3D_FROM_CUTPLANE"), "", 0, aParent, false,
                 this, SLOT(OnPlot3dFromCutPlane()));
 
-  createAction( VISU_CACHE_PROPERTIES, tr("MEN_CACHE_PROPERTIES"), QIconSet(),
-                tr("MEN_CACHE_PROPERTIES"), "", 0, aParent, false,
-                this, SLOT(OnCacheProperties()));
+  createAction( VISU_MANAGE_CACHE, tr("MEN_MANAGE_CACHE"), QIcon(),
+                tr("MEN_MANAGE_CACHE"), "", 0, aParent, false,
+                this, SLOT( OnManageCache() ) );
 
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_MULTIPR_VIEW_FULL"));
-  createAction( VISU_MULTIPR_FULL_RES, tr("MEN_MULTIPR_VIEW_FULL_RES"), QIconSet(aPixmap),
+  createAction( VISU_MULTIPR_FULL_RES, tr("MEN_MULTIPR_VIEW_FULL_RES"), QIcon(aPixmap),
                 tr("MEN_MULTIPR_VIEW_FULL_RES"), "", 0, aParent, false,
                 this, SLOT(OnMultiprViewFullRes()));
 
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_MULTIPR_VIEW_MEDIUM"));
-  createAction( VISU_MULTIPR_MED_RES, tr("MEN_MULTIPR_VIEW_MEDIUM_RES"), QIconSet(aPixmap),
+  createAction( VISU_MULTIPR_MED_RES, tr("MEN_MULTIPR_VIEW_MEDIUM_RES"), QIcon(aPixmap),
                 tr("MEN_MULTIPR_VIEW_MEDIUM_RES"), "", 0, aParent, false,
                 this, SLOT(OnMultiprViewMediumRes()));
 
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_MULTIPR_VIEW_LOW"));
-  createAction( VISU_MULTIPR_LOW_RES, tr("MEN_MULTIPR_VIEW_LOW_RES"), QIconSet(aPixmap),
+  createAction( VISU_MULTIPR_LOW_RES, tr("MEN_MULTIPR_VIEW_LOW_RES"), QIcon(aPixmap),
                 tr("MEN_MULTIPR_VIEW_LOW_RES"), "", 0, aParent, false,
                 this, SLOT(OnMultiprViewLowRes()));
 
   aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_MULTIPR_VIEW_HIDE"));
-  createAction( VISU_MULTIPR_HIDE, tr("MEN_MULTIPR_VIEW_HIDE"), QIconSet(aPixmap),
+  createAction( VISU_MULTIPR_HIDE, tr("MEN_MULTIPR_VIEW_HIDE"), QIcon(aPixmap),
                 tr("MEN_MULTIPR_VIEW_HIDE"), "", 0, aParent, false,
                 this, SLOT(OnMultiprViewHide()));
+
+  createAction( VISU_FILE_INFO, tr("MEN_FILE_INFO"), QIcon(),
+                tr("MEN_FILE_INFO"), "", 0, aParent, false,
+                this, SLOT(OnFileInfo()));
+
+  createAction( VISU_EXPORT_MED, tr("MEN_EXPORT_MED"), QIcon(),
+                tr("MEN_EXPORT_MED"), "", 0, aParent, false,
+                this, SLOT(OnExportMED()));
+
+  createAction( VISU_FILTERSCALARS, tr("MEN_FILTER_SCALARS"), QIcon(),
+                tr("MEN_FILTER_SCALARS"), "", 0, aParent, false,
+                this, SLOT(OnFilterScalars()));
+                
+  createAction( VISU_VALUES_LABELING, tr("MEN_VALUES_LABELING"), QIcon(),
+                tr("MEN_VALUES_LABELING"), "", 0, aParent, true,
+                this, SLOT(OnValuesLabeling())); 
+
+  createAction( VISU_VALUES_LABELING_PARAMS, tr("VISU_VALUES_LABELING_PARAMS"), QIcon(),
+                tr("VISU_VALUES_LABELING_PARAMS"), "", 0, aParent, false,
+                this, SLOT(OnValuesLabelingParams())); 
+
 }
 
 void
@@ -2374,7 +2717,7 @@ VisuGUI
   int aMenuId;
   aMenuId = createMenu( tr( "MEN_DESK_FILE" ), -1 );
   createMenu( separator(), aMenuId, -1, 10 );
-  
+
   int anImportId = createMenu( tr( "MEN_IMPORT" ), aMenuId, -1, 10 );
   createMenu( VISU_IMPORT_FROM_FILE, anImportId ); // import from file
   createMenu( VISU_IMPORT_TABLE, anImportId ); // import table
@@ -2388,10 +2731,7 @@ VisuGUI
   createMenu( VISU_CUT_LINES, aMenuId, 10 ); // cut lines
   createMenu( VISU_STREAM_LINES, aMenuId, 10 ); // stream lines
   createMenu( VISU_PLOT_3D, aMenuId, 10 ); // Plot3d
-  createMenu( VISU_SCALAR_MAP_ON_DEFORMED_SHAPE, aMenuId, 10 ); // scalar map on deformed shape
-
-  aMenuId = createMenu( tr( "MEN_SELECTION" ), -1, -1, 30 );
-  createMenu( VISU_SELECTION_INFO, aMenuId, 10 ); // selection info
+  createMenu( VISU_DEFORMED_SHAPE_AND_SCALAR_MAP, aMenuId, 10 ); // scalar map on deformed shape
 
   aMenuId = createMenu( tr( "MEN_REPRESENTATION" ), -1, -1, 30 );
   int parentId =
@@ -2400,8 +2740,6 @@ VisuGUI
   createMenu( VISU_WIREFRAME, parentId, 10 ); //   wireframe
   createMenu( VISU_SURFACE, parentId, 10 ); //   surface
   createMenu( VISU_ERASE_ALL, aMenuId, 10 ); // erase all
-  createMenu( VISU_GLOBAL_SELECTION, aMenuId, 10 ); // global selection
-  createMenu( VISU_PARTIAL_SELECTION, aMenuId, 10 ); // partial selection
 }
 
 void
@@ -2420,15 +2758,26 @@ VisuGUI
   createTool( VISU_CUT_LINES, aToolId );
   createTool( VISU_STREAM_LINES, aToolId );
   createTool( VISU_PLOT_3D, aToolId );
-  createTool( VISU_SCALAR_MAP_ON_DEFORMED_SHAPE, aToolId );
+  createTool( VISU_DEFORMED_SHAPE_AND_SCALAR_MAP, aToolId );
 
   aToolId = createTool(tr("TOOL_REPRESENTATION"));
   createTool( VISU_POINTS, aToolId );
   createTool( VISU_WIREFRAME, aToolId );
   createTool( VISU_SURFACE, aToolId );
   createTool( VISU_ERASE_ALL, aToolId );
-  createTool( VISU_GLOBAL_SELECTION, aToolId );
-  createTool( VISU_PARTIAL_SELECTION, aToolId );
+
+  aToolId = createTool(tr("TOOL_SELECTION"));
+  createTool( VISU_SELECTION_PANEL, aToolId );
+  createTool( separator(), aToolId );
+  createTool( VISU_ACTOR_SELECTION, aToolId );
+  createTool( VISU_CELL_SELECTION, aToolId );
+  createTool( VISU_POINT_SELECTION, aToolId );
+  createTool( VISU_GAUSS_POINT_SELECTION, aToolId );
+
+  aToolId = createTool( tr( "TOOL_NAVIGATION" ) );
+  createTool( VISU_SLIDER_PANEL, aToolId );
+  createTool( separator(), aToolId );
+  createTool( VISU_SWEEP_PANEL, aToolId );
 }
 
 void
@@ -2454,7 +2803,7 @@ VisuGUI
   mgr->insert( action( VISU_VECTORS ), -1, -1, -1 ); // vectors
   mgr->insert( action( VISU_STREAM_LINES ), -1, -1, -1 ); // stream lines
   mgr->insert( action( VISU_PLOT_3D ), -1, -1, -1 ); // Plot3d
-  mgr->insert( action( VISU_SCALAR_MAP_ON_DEFORMED_SHAPE ), -1, -1, -1 ); // scalar map on deformed shape
+  mgr->insert( action( VISU_DEFORMED_SHAPE_AND_SCALAR_MAP ), -1, -1, -1 ); // scalar map on deformed shape
 
   mgr->insert( action( VISU_CREATE_PRS ), -1, -1, -1 ); // create presentation
   mgr->insert( action( VISU_CREATE_MANY_PRS ), -1, -1, -1 ); // create presentations
@@ -2470,8 +2819,11 @@ VisuGUI
   mgr->insert( action( VISU_EDIT_VECTORS ), -1, -1, -1 );
   mgr->insert( action( VISU_EDIT_STREAMLINES ), -1, -1, -1 );
   mgr->insert( action( VISU_EDIT_PLOT3D ), -1, -1, -1 );
-  mgr->insert( action( VISU_EDIT_SCALARMAPONDEFORMEDSHAPE ), -1, -1, -1 );
+  mgr->insert( action( VISU_EDIT_DEFORMEDSHAPEANDSCALARMAP ), -1, -1, -1 );
   mgr->insert( action( VISU_EDIT_CONTAINER ), -1, -1, -1 );
+  mgr->insert( action( VISU_EDIT_POINTMAP3D ), -1, -1, -1 );
+
+  mgr->insert( action( VISU_FILTERSCALARS ), -1, -1, -1 );
 
   // rename
   mgr->insert( action( VISU_RENAME ), -1, -1, -1 );
@@ -2481,11 +2833,17 @@ VisuGUI
 
   // delete
   mgr->insert( action( VISU_CLEAR_CONTAINER ), -1, -1, -1 );
+  
+  // labeling
+  mgr->insert( separator(), -1, -1, -1 );
+  mgr->insert( action( VISU_VALUES_LABELING ), -1, -1, -1 );
+  mgr->insert( action( VISU_VALUES_LABELING_PARAMS ), -1, -1, -1 );
+  mgr->insert( separator(), -1, -1, -1 );
 
   // table commands
-  //mgr->insert( action( VISU_SHOW_TABLE ), -1, -1, -1 ); // show table
-  //mgr->insert( action( VISU_CREATE_CURVES ), -1, -1, -1 ); // create curves
-  //mgr->insert( action( VISU_EXPORT_TABLE ), -1, -1, -1 ); // export table
+  mgr->insert( action( VISU_SHOW_TABLE ), -1, -1, -1 ); // show table
+  mgr->insert( action( VISU_CREATE_CURVES ), -1, -1, -1 ); // create curves
+  mgr->insert( action( VISU_EXPORT_TABLE ), -1, -1, -1 ); // export table
 
   mgr->insert( separator(), -1, -1, -1 );
 
@@ -2493,6 +2851,9 @@ VisuGUI
   mgr->insert( action( VISU_DISPLAY ), -1, -1, -1 ); // display
   mgr->insert( action( VISU_DISPLAY_ONLY ), -1, -1, -1 ); // display only
 
+  mgr->insert( action( VISU_HIDE_SCALAR_BAR ), -1, -1, -1 ); // hide scalar bar
+  mgr->insert( action( VISU_SHOW_SCALAR_BAR ), -1, -1, -1 ); // show scalar bar
+
   // "Representation" submenu
   int parentId = mgr->insert( tr( "MEN_REPRESENTATION" ), -1, -1 );
   mgr->insert( action( VISU_POINTS )      , parentId, -1, -1 ); // points
@@ -2500,6 +2861,7 @@ VisuGUI
   mgr->insert( action( VISU_SURFACE )     , parentId, -1, -1 ); // surface
   mgr->insert( action( VISU_INSIDEFRAME ) , parentId, -1, -1 ); // insideframe
   mgr->insert( action( VISU_SURFACEFRAME ), parentId, -1, -1 ); // surfaceframe
+  mgr->insert( action( VISU_FEATURE_EDGES ), parentId, -1, -1 ); // feature edges
   mgr->insert( action( VISU_SHRINK )      , parentId, -1, -1 ); // shrink
   mgr->insert( action( VISU_UNSHRINK )    , parentId, -1, -1 ); // unshrink
   mgr->insert( separator(), parentId, -1, -1 );
@@ -2539,215 +2901,268 @@ VisuGUI
 
   mgr->insert( action( VISU_CURVE_PROPS ), -1, -1, -1 ); // curve properties
 
-  mgr->insert( action( VISU_SELECTION_INFO ), -1, -1, -1 ); // Selection info
-
   mgr->insert( action( VISU_MULTIPR_FULL_RES ), -1, -1, -1 );
   mgr->insert( action( VISU_MULTIPR_MED_RES ), -1, -1, -1 );
   mgr->insert( action( VISU_MULTIPR_LOW_RES ), -1, -1, -1 );
   mgr->insert( action( VISU_MULTIPR_HIDE ), -1, -1, -1 );
-  
+
+  mgr->insert( action( VISU_FILE_INFO ), -1, -1, -1 );
+  mgr->insert( action( VISU_EXPORT_MED ), -1, -1, -1 );
+
   // Rules
 
   QString aPrsAll ("'VISU::TSCALARMAP' 'VISU::TISOSURFACES' 'VISU::TDEFORMEDSHAPE' 'VISU::TCUTPLANES' "
                    "'VISU::TCUTLINES' 'VISU::TVECTORS' 'VISU::TSTREAMLINES' 'VISU::TPLOT3D' "
-                  "'VISU::TSCALARMAPONDEFORMEDSHAPE' 'VISU::TCOLOREDPRS3DHOLDER'");
+                  "'VISU::TSCALARMAPONDEFORMEDSHAPE' 'VISU::TDEFORMEDSHAPEANDSCALARMAP' 'VISU::TCOLOREDPRS3DHOLDER'");
+  QString aSimplePrsAll ("'VISU::TSCALARMAP' 'VISU::TISOSURFACES' 'VISU::TDEFORMEDSHAPE' 'VISU::TCUTPLANES' "
+                        "'VISU::TCUTLINES' 'VISU::TVECTORS' 'VISU::TSTREAMLINES' 'VISU::TPLOT3D' "
+                        "'VISU::TSCALARMAPONDEFORMEDSHAPE'");
 
   // VISU root commands
   QString aRule = "client='ObjectBrowser' and selcount=1 and type='VISU::TVISUGEN'";
-  mgr->setRule( action( VISU_IMPORT_FROM_FILE ), aRule, true );
-  mgr->setRule( action( VISU_IMPORT_TABLE ), aRule, true );
-  mgr->setRule( action( VISU_PLOT2D ), aRule, true );
+  mgr->setRule( action( VISU_IMPORT_FROM_FILE ), aRule );
+  mgr->setRule( action( VISU_IMPORT_TABLE ), aRule );
+  mgr->setRule( action( VISU_PLOT2D ), aRule );
 
   // timestamp commands
   aRule = "client='ObjectBrowser' and selcount=1 and type in {'VISU::TTIMESTAMP' 'VISU::TFIELD'}";
-  mgr->setRule( action( VISU_SCALAR_MAP ), aRule, true );
-  mgr->setRule( action( VISU_ISO_SURFACES ), aRule, true );
-  mgr->setRule( action( VISU_CUT_PLANES ), aRule, true );
-  mgr->setRule( action( VISU_CUT_LINES ), aRule, true );
-  mgr->setRule( action( VISU_PLOT_3D ), aRule, true );
+  mgr->setRule( action( VISU_SCALAR_MAP ), aRule );
+  mgr->setRule( action( VISU_ISO_SURFACES ), aRule );
+  mgr->setRule( action( VISU_CUT_PLANES ), aRule );
+  mgr->setRule( action( VISU_CUT_LINES ), aRule );
+  mgr->setRule( action( VISU_PLOT_3D ), aRule );
   aRule += " and nbComponents>1";
-  mgr->setRule( action( VISU_DEFORMED_SHAPE ), aRule, true );
-  mgr->setRule( action( VISU_VECTORS ), aRule, true );
-  mgr->setRule( action( VISU_STREAM_LINES ), aRule, true );
-  mgr->setRule( action( VISU_SCALAR_MAP_ON_DEFORMED_SHAPE ), aRule, true );
+  mgr->setRule( action( VISU_DEFORMED_SHAPE ), aRule );
+  mgr->setRule( action( VISU_VECTORS ), aRule );
+  mgr->setRule( action( VISU_STREAM_LINES ), aRule );
+  mgr->setRule( action( VISU_DEFORMED_SHAPE_AND_SCALAR_MAP ), aRule );
 
   // display/erase commands
   QString andInvisible = " and (((not isVisible) and isActiveView) or (not isActiveView))";
-  QString aTableOrCont = "(type='VISU::TTABLE' and nbChildren>0) or type='VISU::TCONTAINER'";
+  QString aTableOrContHide = "(($type in {'VISU::TTABLE' 'VISU::TPOINTMAP3D' 'VISU::TCONTAINER'}) and isPlot2dViewer and hasCurves and isThereAreVisibleCurves)";
+  QString aTableOrContShow = "(($type in {'VISU::TTABLE' 'VISU::TPOINTMAP3D' 'VISU::TCONTAINER'}) and isPlot2dViewer and hasCurves and isThereAreHiddenCurves)";
   QString orCurveVisible   = "or (type='VISU::TCURVE' and isVisible)";
   QString orCurveInvisible = "or (type='VISU::TCURVE'" + andInvisible + ")";
-  QString aPrsVisible   = "(($type in {'VISU::TMESH' " + aPrsAll + "}) and isVisible)";
-  QString aPrsInvisible = "(($type in {'VISU::TMESH' " + aPrsAll + "})" + andInvisible + ")";
+  QString aPrsVisible   = "(($type in {'VISU::TMESH' 'VISU::TPOINTMAP3D'" + aPrsAll + "}) and isVisible and (not isPlot2dViewer))";
+  QString aPrsInvisible = "(($type in {'VISU::TMESH' 'VISU::TPOINTMAP3D'" + aPrsAll + "})" + andInvisible + " and (not isPlot2dViewer))";
   QString aComponent = "( selcount=1 and canBeDisplayed and isVisuComponent )";
 
   QString anEraseRule = "( selcount>0 and ({true} in $canBeDisplayed) and (" + aPrsVisible +
-    " or (client='ObjectBrowser' and (" + aTableOrCont + orCurveVisible + "))) ) or " + aComponent;
+    " or (client='ObjectBrowser' and (" + aTableOrContHide + orCurveVisible + "))) ) or " + aComponent;
 
   QString aDisplayRule = "( selcount>0 and ({true} in $canBeDisplayed) and (" + aPrsInvisible +
-    " or (client='ObjectBrowser' and (" + aTableOrCont + orCurveInvisible + "))) ) or" + aComponent;
+    " or (client='ObjectBrowser' and (" + aTableOrContShow + orCurveInvisible + "))) ) or " + aComponent;
 
-  QString aDOnlyRule = "( selcount>0 and ({true} in $canBeDisplayed) and (($type in {'VISU::TMESH' " + aPrsAll + "})"
+  QString aDOnlyRule = "( selcount>0 and ({true} in $canBeDisplayed) and (($type in {'VISU::TMESH' 'VISU::TPOINTMAP3D'" + aPrsAll + "})"
     " or (client='ObjectBrowser' and ((type='VISU::TTABLE' and nbChildren>0) or"
     " ($type in {'VISU::TCURVE' 'VISU::TCONTAINER'})))) ) or" + aComponent;
 
-  mgr->setRule( action( VISU_ERASE ), anEraseRule, true );
-  mgr->setRule( action( VISU_DISPLAY ), aDisplayRule, true );
-  mgr->setRule( action( VISU_DISPLAY_ONLY ), aDOnlyRule, true );
+  QString aScalarBarHideRule = "( selcount>0 and ($type in {'VISU::TMESH' 'VISU::TPOINTMAP3D'" + aPrsAll + "}) and isScalarMapAct=1 and " + aPrsVisible + " and isScalarBarVisible )";
+  QString aScalarBarShowRule = "( selcount>0 and ($type in {'VISU::TMESH' 'VISU::TPOINTMAP3D'" + aPrsAll + "}) and isScalarMapAct=1 and " + aPrsVisible + " and (not isScalarBarVisible) )";
 
-  aRule = "selcount>0 and $type in {'VISU::TMESH' " + aPrsAll + "}";
-  mgr->setRule( action( VISU_TRANSLATE_PRS ), aRule, true );
+  mgr->setRule( action( VISU_ERASE ), anEraseRule );
+  mgr->setRule( action( VISU_DISPLAY ), aDisplayRule );
+  mgr->setRule( action( VISU_DISPLAY_ONLY ), aDOnlyRule );
+
+  mgr->setRule( action( VISU_HIDE_SCALAR_BAR ), aScalarBarHideRule );
+  mgr->setRule( action( VISU_SHOW_SCALAR_BAR ), aScalarBarShowRule );
+
+  aRule = "selcount>0 and $type in {'VISU::TMESH' 'VISU::TPOINTMAP3D' 'VISU::TGAUSSPOINTS'" + aPrsAll + "}";
+  mgr->setRule( action( VISU_TRANSLATE_PRS ), aRule );
 
   aRule = "selcount>1 and $type in {'VISU::TMESH' " + aPrsAll + "}";
-  mgr->setRule( action( VISU_MERGE_SCALAR_BARS ), aRule, true );
-  mgr->setRule( action( VISU_FREE_SCALAR_BARS ), aRule, true );
+  mgr->setRule( action( VISU_MERGE_SCALAR_BARS ), aRule );
+  mgr->setRule( action( VISU_FREE_SCALAR_BARS ), aRule );
+
+  aRule = "selcount=1 and $type in { " + aSimplePrsAll + "}";
+  mgr->setRule( action( VISU_FILTERSCALARS ), aRule );
+  
+  // labeling
+
+  aRule = "hasActor=1 and selcount=1 and $type in { 'VISU::TGAUSSPOINTS'"  + aPrsAll + " }";
+  mgr->setRule( action( VISU_VALUES_LABELING ), aRule, QtxPopupMgr::VisibleRule );
+  mgr->setRule( action( VISU_VALUES_LABELING ), "{true} in $isValuesLabeled", QtxPopupMgr::ToggleRule );
+  mgr->setRule( action( VISU_VALUES_LABELING_PARAMS ), aRule, QtxPopupMgr::VisibleRule );
 
   // view parameters
   aRule = "selcount=1 and type='VISU::TVIEW3D' and activeView='VTKViewer'";
-  mgr->setRule( action( VISU_SAVE_VIEW_PARAMS_1 ), aRule, true );
-  mgr->setRule( action( VISU_SAVE_VIEW_PARAMS ), "client='VTKViewer' and selcount=0 and activeView='VTKViewer'", true );
-  mgr->setRule( action( VISU_RESTORE_VIEW_PARAMS ), "selcount=1 and type='VISU::TVIEW3D' and activeView='VTKViewer'", true );
+  mgr->setRule( action( VISU_SAVE_VIEW_PARAMS_1 ), aRule );
+  mgr->setRule( action( VISU_SAVE_VIEW_PARAMS ), "client='VTKViewer' and selcount=0 and activeView='VTKViewer'" );
+  mgr->setRule( action( VISU_RESTORE_VIEW_PARAMS ), "selcount=1 and type='VISU::TVIEW3D' and activeView='VTKViewer'" );
   //mgr->setRule( action( VISU_DELETE_VIEW_PARAMS ), "selcount=1 and type='VISU::TVIEW3D'", true );
 
-  mgr->setRule( action( VISU_ARRANGE_ACTORS ), "$client in {'VTKViewer' 'VVTK'} and selcount=0", true );
+  mgr->setRule( action( VISU_ARRANGE_ACTORS ), "$client in {'VTKViewer' 'SVTK'} and selcount=0" );
 
   // 3D presentations commands
-  QString aPrsType    = " and $type in {'VISU::TMESH' " + aPrsAll + "}";
-  QString anInsideType = " and $type in {'VISU::TMESH' 'VISU::TSCALARMAP' 'VISU::TDEFORMEDSHAPE' 'VISU::TSCALARMAPONDEFORMEDSHAPE'}";
-  QString aSurfFrameType   = " and $type in {'VISU::TMESH' 'VISU::TSCALARMAP''VISU::TDEFORMEDSHAPE' 'VISU::TSCALARMAPONDEFORMEDSHAPE'}";
+  QString aPrsType    = " and $type in {'VISU::TMESH' 'VISU::TGAUSSPOINTS' " + aPrsAll + "}";
+  QString aPrsType2    = " and $type in {'VISU::TMESH' 'VISU::TPOINTMAP3D'" + aPrsAll + "}";
+  QString anInsideType = " and $type in {'VISU::TMESH' 'VISU::TSCALARMAP' 'VISU::TDEFORMEDSHAPE' 'VISU::TSCALARMAPONDEFORMEDSHAPE' 'VISU::TDEFORMEDSHAPEANDSCALARMAP'}";
+  //QString aSurfFrameType   = " and $type in {'VISU::TMESH' 'VISU::TSCALARMAP''VISU::TDEFORMEDSHAPE' 'VISU::TSCALARMAPONDEFORMEDSHAPE' 'VISU::TDEFORMEDSHAPEANDSCALARMAP'}";
+  QString aSurfFrameType   = " and $type in {'VISU::TMESH' 'VISU::TSCALARMAP''VISU::TDEFORMEDSHAPE' 'VISU::TSCALARMAPONDEFORMEDSHAPE' 'VISU::TDEFORMEDSHAPEANDSCALARMAP' 'VISU::TCUTPLANES' 'VISU::TISOSURFACES' 'VISU::TPLOT3D' }";
+  //QString aPrsType    = " and $type in {'VISU::TMESH' " + aPrsAll + "}";
   QString aSurfType   = " and $type in {'VISU::TMESH' 'VISU::TSCALARMAP' 'VISU::TSCALARMAP' 'VISU::TISOSURFACES' 'VISU::TDEFORMEDSHAPE' 'VISU::TCUTPLANES' "
-                        " 'VISU::TPLOT3D' 'VISU::TSCALARMAPONDEFORMEDSHAPE'}";
-  QString aShrinkType = " and $type in {'VISU::TMESH' 'VISU::TSCALARMAP' 'VISU::TDEFORMEDSHAPE' 'VISU::TSCALARMAPONDEFORMEDSHAPE'}";
+                        " 'VISU::TPLOT3D' 'VISU::TSCALARMAPONDEFORMEDSHAPE' 'VISU::TDEFORMEDSHAPEANDSCALARMAP' 'VISU::TPOINTMAP3D'}";
+  QString aShrinkType = " and $type in {'VISU::TMESH' 'VISU::TSCALARMAP' 'VISU::TDEFORMEDSHAPE' 'VISU::TSCALARMAPONDEFORMEDSHAPE' 'VISU::TDEFORMEDSHAPEANDSCALARMAP' 'VISU::TPOINTMAP3D'}";
   QString aLineType   = " and $type in {'VISU::TMESH' 'VISU::TSCALARMAP' 'VISU::TSCALARMAP' 'VISU::TISOSURFACES' 'VISU::TDEFORMEDSHAPE' "
-                        "'VISU::TCUTPLANES' 'VISU::TCUTLINES' 'VISU::TSTREAMLINES' 'VISU::TPLOT3D' 'VISU::TSCALARMAPONDEFORMEDSHAPE' }";
+                        "'VISU::TCUTPLANES' 'VISU::TCUTLINES' 'VISU::TSTREAMLINES' 'VISU::TPLOT3D' 'VISU::TSCALARMAPONDEFORMEDSHAPE' 'VISU::TDEFORMEDSHAPEANDSCALARMAP' 'VISU::TPOINTMAP3D'}";
+
+  QString aFeatureEdgesType =  " and $type in {'VISU::TMESH' 'VISU::TSCALARMAP''VISU::TDEFORMEDSHAPE' 'VISU::TSCALARMAPONDEFORMEDSHAPE'}";
 
   aRule = "selcount=1";
-  mgr->setRule( action( VISU_CLIPPING ), aRule + aPrsType, true );
+  mgr->setRule( action( VISU_CLIPPING ), aRule + aPrsType );
+  aPrsType = " and $type in {'VISU::TMESH' " + aPrsAll + "}";
 
   // "Representation" submenu
-  QString aNotPoints = " and $representation in {'VISU::WIREFRAME' 'VISU::SHADED' 'VISU::INSIDEFRAME' 'VISU::SURFACEFRAME'}";
-  QString aNotWirefr = " and $representation in {'VISU::POINT' 'VISU::SHADED' 'VISU::INSIDEFRAME' 'VISU::SURFACEFRAME'}";
-  QString aNotSurfac = " and $representation in {'VISU::POINT' 'VISU::WIREFRAME' 'VISU::INSIDEFRAME' 'VISU::SURFACEFRAME'}";
-  QString aNotInside = " and $representation in {'VISU::POINT' 'VISU::WIREFRAME' 'VISU::SHADED' 'VISU::SURFACEFRAME'}";
-  QString aNotSurffr = " and $representation in {'VISU::POINT' 'VISU::WIREFRAME' 'VISU::SHADED' 'VISU::INSIDEFRAME'}";
-
-  mgr->setRule( action( VISU_POINTS )      , aRule + aPrsType + aNotPoints, true );
-  mgr->setRule( action( VISU_WIREFRAME )   , aRule + aPrsType + aNotWirefr, true );
-  mgr->setRule( action( VISU_SURFACE )     , aRule + aSurfType + aNotSurfac, true );
-  mgr->setRule( action( VISU_INSIDEFRAME ) , aRule + anInsideType + aNotInside, true );
-  mgr->setRule( action( VISU_SURFACEFRAME ), aRule + aSurfFrameType + aNotSurffr, true );
-
-  mgr->setRule( action( VISU_SHRINK )  , aRule + aShrinkType + " and isShrunk=0", true );
-  mgr->setRule( action( VISU_UNSHRINK ), aRule + aShrinkType + " and isShrunk=1", true );
-
-  mgr->setRule( action( VISU_SHADING )  , aRule + " and isScalarMapAct=1 and isShading=0", true );
-  mgr->setRule( action( VISU_NOSHADING ), aRule + " and isScalarMapAct=1 and isShading=1", true );
+  QString aNotPoints = " and $representation in {'VISU::WIREFRAME' 'VISU::SHADED' 'VISU::INSIDEFRAME' 'VISU::SURFACEFRAME' 'VISU::FEATURE_EDGES'}";
+  QString aNotWirefr = " and $representation in {'VISU::POINT' 'VISU::SHADED' 'VISU::INSIDEFRAME' 'VISU::SURFACEFRAME' 'VISU::FEATURE_EDGES'}";
+  QString aNotSurfac = " and $representation in {'VISU::POINT' 'VISU::WIREFRAME' 'VISU::INSIDEFRAME' 'VISU::SURFACEFRAME' 'VISU::FEATURE_EDGES'}";
+  QString aNotInside = " and $representation in {'VISU::POINT' 'VISU::WIREFRAME' 'VISU::SHADED' 'VISU::SURFACEFRAME' 'VISU::FEATURE_EDGES'}";
+  QString aNotSurffr = " and $representation in {'VISU::POINT' 'VISU::WIREFRAME' 'VISU::SHADED' 'VISU::INSIDEFRAME' 'VISU::FEATURE_EDGES'}";
+  QString aNotFeatureEdges =  " and $representation in {'VISU::POINT' 'VISU::WIREFRAME' 'VISU::SHADED' 'VISU::INSIDEFRAME' 'VISU::SURFACEFRAME'}";
+
+  mgr->setRule( action( VISU_POINTS )      , aRule + aPrsType + aNotPoints );
+  mgr->setRule( action( VISU_WIREFRAME )   , aRule + aPrsType2 + aNotWirefr );
+  mgr->setRule( action( VISU_SURFACE )     , aRule + aSurfType + aNotSurfac );
+  mgr->setRule( action( VISU_INSIDEFRAME ) , aRule + anInsideType + aNotInside );
+  mgr->setRule( action( VISU_SURFACEFRAME ), aRule + aSurfFrameType + aNotSurffr );
+  mgr->setRule( action( VISU_FEATURE_EDGES ), aRule + aFeatureEdgesType + aNotFeatureEdges );
+
+  mgr->setRule( action( VISU_SHRINK )  , aRule + aShrinkType + " and isShrunk=0" );
+  mgr->setRule( action( VISU_UNSHRINK ), aRule + aShrinkType + " and isShrunk=1" );
+
+  mgr->setRule( action( VISU_SHADING )  , aRule + " and isScalarMapAct=1 and isShading=0" );
+  mgr->setRule( action( VISU_NOSHADING ), aRule + " and isScalarMapAct=1 and isShading=1" );
 
   // "Properties" submenu
-  mgr->setRule( action( VISU_CELL_COLOR ), aRule + " and type='VISU::TMESH' and representation='VISU::SURFACEFRAME'", true );
-  mgr->setRule( action( VISU_EDGE_COLOR ), aRule + " and type='VISU::TMESH' and representation='VISU::SURFACEFRAME'", true );
+  mgr->setRule( action( VISU_CELL_COLOR ), aRule + " and type='VISU::TMESH' and representation='VISU::SURFACEFRAME'" );
+  mgr->setRule( action( VISU_EDGE_COLOR ), aRule + " and type='VISU::TMESH' and representation='VISU::SURFACEFRAME'" );
   mgr->setRule( action( VISU_COLOR ), aRule + " and ((type='VISU::TMESH'"
                " and $representation in {'VISU::POINT' 'VISU::WIREFRAME' 'VISU::SHADED' 'VISU::INSIDEFRAME'}) "
-               "or (type='VISU::TDEFORMEDSHAPE' and hasActor=1))", true );
-  mgr->setRule( action( VISU_OPACITY ), aRule + " and hasActor=1", true );
-
-  mgr->setRule( action( VISU_LINE_WIDTH ), aRule + aLineType + " and hasActor=1", true );
+               "or (type='VISU::TDEFORMEDSHAPE' and hasActor=1))" );
+  mgr->setRule( action( VISU_OPACITY ), aRule + " and hasActor=1" );
+  mgr->setRule( action( VISU_LINE_WIDTH ), aRule + aLineType + " and hasActor=1" );
 
   // rename command
-  QString aCurveAll = "'VISU::TTABLE' 'VISU::TCURVE' 'VISU::TCONTAINER'";
+  QString aCurveAll = "'VISU::TTABLE' 'VISU::TCURVE' 'VISU::TCONTAINER' 'VISU::POINTMAP3D'";
 
-  aRule = "selcount=1 and ($type in {'VISU::TVIEW3D' 'VISU::TMESH' " + aCurveAll + " " + aPrsAll + "})";
-  mgr->setRule( action( VISU_RENAME ), aRule, true );
+  aRule = "selcount=1 and ($type in {'VISU::TVIEW3D' 'VISU::TMESH' 'VISU::TPOINTMAP3D' " + aCurveAll + " " + aPrsAll + "})";
+  mgr->setRule( action( VISU_RENAME ), aRule );
 
   // copy presentation command
   aRule = "selcount=1 and ($type in {" + aPrsAll + "})";
-  mgr->setRule( action( VISU_COPY_PRS ), aRule, true );
+  mgr->setRule( action( VISU_COPY_PRS ), aRule );
 
-  // curve commands
+  // Curve commands
   aRule = "selcount=1 and type='VISU::TCURVE'";
-  mgr->setRule( action( VISU_CURVE_PROPS ), aRule, true );
+  mgr->setRule( action( VISU_CURVE_PROPS ), aRule );
+
+  // Table Commands
+  aRule = "selcount=1 and ( type='VISU::TPOINTMAP3D' or type='VISU::TTABLE')";
+  mgr->setRule( action( VISU_SHOW_TABLE ), aRule );
+  mgr->setRule( action( VISU_CREATE_CURVES ), aRule );
+  mgr->setRule( action( VISU_EXPORT_TABLE ), aRule );
 
   // curve container commands
   aRule = "client='ObjectBrowser' and selcount=1 and type='VISU::TCONTAINER'";
-  mgr->setRule( action( VISU_EDIT_CONTAINER ), aRule, true );
-  mgr->setRule( action( VISU_CLEAR_CONTAINER ), aRule, true );
+  mgr->setRule( action( VISU_EDIT_CONTAINER ), aRule );
+  mgr->setRule( action( VISU_CLEAR_CONTAINER ), aRule );
 
   mgr->setRule( action( VISU_EDIT_SCALARMAP ),
-               "selcount=1 and type='VISU::TSCALARMAP'", true );
+               "selcount=1 and type='VISU::TSCALARMAP'" );
   mgr->setRule( action( VISU_EDIT_DEFORMEDSHAPE ),
-               "selcount=1 and type='VISU::TDEFORMEDSHAPE'", true );
-  mgr->setRule( action( VISU_EDIT_SCALARMAPONDEFORMEDSHAPE ),
-               "selcount=1 and type='VISU::TSCALARMAPONDEFORMEDSHAPE'", true );
+               "selcount=1 and type='VISU::TDEFORMEDSHAPE'" );
+  mgr->setRule( action( VISU_EDIT_DEFORMEDSHAPEANDSCALARMAP ),
+               "selcount=1 and $type in {'VISU::TSCALARMAPONDEFORMEDSHAPE' 'VISU::TDEFORMEDSHAPEANDSCALARMAP'}" );
   mgr->setRule( action( VISU_EDIT_CUTPLANES ),
-               "selcount=1 and type='VISU::TCUTPLANES'", true );
+               "selcount=1 and type='VISU::TCUTPLANES'" );
   mgr->setRule( action( VISU_EDIT_CUTLINES ),
-               "selcount=1 and type='VISU::TCUTLINES'", true );
+               "selcount=1 and type='VISU::TCUTLINES'" );
   mgr->setRule( action( VISU_EDIT_ISOSURFACES ),
-               "selcount=1 and type='VISU::TISOSURFACES'", true );
+               "selcount=1 and type='VISU::TISOSURFACES'" );
   mgr->setRule( action( VISU_EDIT_VECTORS ),
-               "selcount=1 and type='VISU::TVECTORS'", true );
+               "selcount=1 and type='VISU::TVECTORS'" );
   mgr->setRule( action( VISU_EDIT_STREAMLINES ),
-               "selcount=1 and type='VISU::TSTREAMLINES'", true );
+               "selcount=1 and type='VISU::TSTREAMLINES'" );
   mgr->setRule( action( VISU_EDIT_PLOT3D ),
-               "selcount=1 and type='VISU::TPLOT3D'", true );
+               "selcount=1 and type='VISU::TPLOT3D'" );
+  mgr->setRule( action( VISU_EDIT_POINTMAP3D ),
+               "selcount=1 and type='VISU::TPOINTMAP3D'" );
 
   aRule = "selcount=1 and type='VISU::TCUTLINES' and nbNamedChildren=0";
-  mgr->setRule( action( VISU_CREATE_TABLE ), aRule, true );
+  mgr->setRule( action( VISU_CREATE_TABLE ), aRule );
 
-  aRule = "selcount=1 and ($type in {" + aPrsAll + "})";
-  mgr->setRule( action( VISU_SWEEP ), aRule, true );
-
-  // "Selection info" popup item
-  aRule = "client='VTKViewer' and selcount=1" + anInsideType;
-  mgr->setRule( action( VISU_SELECTION_INFO ), aRule, true );
+  aRule = "selcount=1 and ($type in {" + aSimplePrsAll + "})";
+  mgr->setRule( action( VISU_SWEEP ), aRule );
 
   aRule = "client='ObjectBrowser' and selcount>0";
   aRule += " and $type in {'VISU::TFIELD'}";
   aRule += " and nbTimeStamps>1";
-  aRule += " and activeView in {'VTKViewer' 'VVTK'}";
-  mgr->setRule( action( VISU_PARALLELANIMATION ), aRule, true );
+  aRule += " and activeView in {'VTKViewer' 'SVTK'}";
+  mgr->setRule( action( VISU_PARALLELANIMATION ), aRule );
 
-  aRule = "client='ObjectBrowser' and selcount>0";
+  aRule = "client='ObjectBrowser'";
+  aRule += " and (selcount=1 and nbTimeStamps>1 or selcount>1 and nbTimeStamps>0)";
   aRule += " and $type in {'VISU::TFIELD'}";
-  aRule += " and nbTimeStamps>0";
-  aRule += " and activeView in {'VTKViewer' 'VVTK'}";
-  mgr->setRule( action( VISU_SUCCCESSIVEANIMATION ), aRule, true );
+  aRule += " and activeView in {'VTKViewer' 'SVTK'}";
+  mgr->setRule( action( VISU_SUCCCESSIVEANIMATION ), aRule );
 
   aRule = "client='ObjectBrowser' and $type in {'VISU::TENTITY' 'VISU::TFAMILY' 'VISU::TGROUP'}";
-  mgr->setRule( action( VISU_CREATE_PRS ), aRule + " and selcount=1", true );
-  mgr->setRule( action( VISU_CREATE_MANY_PRS ), aRule + " and selcount>1", true );
+  mgr->setRule( action( VISU_CREATE_PRS ), aRule + " and selcount=1" );
+  mgr->setRule( action( VISU_CREATE_MANY_PRS ), aRule + " and selcount>1" );
   mgr->setRule( action( VISU_EDIT_PLOT3D ),
-               "selcount=1 and type='VISU::TPLOT3D'", true );
+               "selcount=1 and type='VISU::TPLOT3D'" );
 
   //aRule = "client='ObjectBrowser' and type='MEDFIELD'";
   //mgr->setRule( action( VISU_IMPORT_MED ), aRule, true );
-  
+
   aRule = "client='ObjectBrowser' and selcount>=1 and $type in {'VISU::TPART'} and ";
   {
     QString aCustomRule = aRule + "fullResolution=1 and resolutionState!='F'";
-    mgr->setRule( action( VISU_MULTIPR_FULL_RES ), aCustomRule, true );
+    mgr->setRule( action( VISU_MULTIPR_FULL_RES ), aCustomRule );
   }
   {
     QString aCustomRule = aRule + "mediumResolution=1 and resolutionState!='M'";
-    mgr->setRule( action( VISU_MULTIPR_MED_RES ), aCustomRule, true );
+    mgr->setRule( action( VISU_MULTIPR_MED_RES ), aCustomRule );
   }
   {
     QString aCustomRule = aRule + "lowResolution=1 and resolutionState!='L'";
-    mgr->setRule( action( VISU_MULTIPR_LOW_RES ), aCustomRule, true );
+    mgr->setRule( action( VISU_MULTIPR_LOW_RES ), aCustomRule );
   }
   {
     QString aCustomRule = aRule + "resolutionState!='H'";
-    mgr->setRule( action( VISU_MULTIPR_HIDE), aCustomRule, true );
+    mgr->setRule( action( VISU_MULTIPR_HIDE), aCustomRule );
+  }
+
+  mgr->setRule( action( VISU_FILE_INFO ), "selcount=1 and type in {'VISU::TRESULT'}" );
+  mgr->setRule( action( VISU_EXPORT_MED ), "selcount=1 and type in {'VISU::TRESULT'}" );
+}
+
+void VisuGUI::createPanels()
+{
+  myPanels.insert( SelectionPanelId,    new VisuGUI_SelectionPanel( this ) );
+  myPanels.insert( FeatureEdgesPanelId, new VisuGUI_FeatureEdgesPanel( this ) );
+  myPanels.insert( ClippingPlanesPanelId, new VisuGUI_ClippingPanel( this ) );
+
+  QMap< PanelId, VisuGUI_Panel* >::iterator it = myPanels.begin(), itEnd = myPanels.end();
+  for( ; it != itEnd; ++it )
+  {
+    if( VisuGUI_Panel* aPanel = it.value() )
+    {
+      aPanel->hide();
+      GetDesktop(this)->addDockWidget( Qt::RightDockWidgetArea, aPanel );
+    }
   }
 }
 
 //***************************************************************************
-void VisuGUI::contextMenuPopup( const QString& theClient, QPopupMenu* theMenu, QString& theTitle )
+void VisuGUI::contextMenuPopup( const QString& theClient, QMenu* theMenu, QString& theTitle )
 {
   SalomeApp_Module::contextMenuPopup(theClient, theMenu, theTitle);
 
-  OB_Browser* ob = getApp()->objectBrowser();
+  //TODO: object Browser DONE
+  SUIT_DataBrowser* ob = getApp()->objectBrowser();
   bool isOBClient = (ob && theClient == ob->popupClientType());
-  
+
   LightApp_SelectionMgr* aSelectionMgr = GetSelectionMgr(this);
   SALOME_ListIO aListIO;
   aSelectionMgr->selectedObjects(aListIO);
@@ -2761,11 +3176,19 @@ void VisuGUI::contextMenuPopup( const QString& theClient, QPopupMenu* theMenu, Q
   SALOME_ListIteratorOfListIO It (aListIO);
   for (; It.More(); It.Next()) {
     Handle(SALOME_InteractiveObject)& anIO = It.Value();
-    
+
     if (!anIO.IsNull() && anIO->hasEntry()) {
       _PTR(SObject) aSObject = aCStudy->FindObjectID(anIO->getEntry());
       if ( !aSObject )
        continue;
+
+      if ( !isOBClient ) {
+       QString aName = QString( aSObject->GetName().c_str() );
+       while ( aName.at( aName.length() - 1 ) == ' ' ) // Remove extraspaces in Name of popup
+         aName.remove( (aName.length() - 1), 1 );
+       theTitle = aName;
+      }
+
       CORBA::Object_var aCORBAObject = VISU::ClientSObjectToObject(aSObject);
       if (CORBA::is_nil(aCORBAObject)) {
        VISU::VISUType aType = VISU::Storable::SObject2Type( aSObject );
@@ -2774,7 +3197,7 @@ void VisuGUI::contextMenuPopup( const QString& theClient, QPopupMenu* theMenu, Q
          _PTR(SObject) aPrs;
          for (; anIter->More(); anIter->Next()) {
            aPrs = anIter->Value();
-           if (!aPrs) 
+           if (!aPrs)
              continue;
            std::vector<VISU::Prs3d_i*> aSubList = GetPrs3dList(this, aPrs);
            nbPrs += aSubList.size();
@@ -2784,9 +3207,9 @@ void VisuGUI::contextMenuPopup( const QString& theClient, QPopupMenu* theMenu, Q
     }
   }
   if (nbPrs > 1) {
-    theMenu->insertSeparator();
-    action( VISU_MERGE_SCALAR_BARS )->addTo(theMenu);
-    action( VISU_FREE_SCALAR_BARS  )->addTo(theMenu);
+    theMenu->addSeparator();
+    theMenu->addAction( action( VISU_MERGE_SCALAR_BARS ) );
+    theMenu->addAction( action( VISU_FREE_SCALAR_BARS  ) );
   }
 
   // Check if some curves selected (for bug PAL10611)
@@ -2815,12 +3238,12 @@ void VisuGUI::contextMenuPopup( const QString& theClient, QPopupMenu* theMenu, Q
   }
 
   if (isOneCutPlane)
-    action( VISU_PLOT3D_FROM_CUTPLANE )->addTo(theMenu);
+    theMenu->addAction( action( VISU_PLOT3D_FROM_CUTPLANE ) );
 
   VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects(this);
   if(aSelectionInfo.empty())
     return;
-  
+
   VISU::TSelectionItem aSelectionItem = aSelectionInfo.front();
   Handle(SALOME_InteractiveObject) anIO = aSelectionItem.myIO;
   _PTR(SObject) aSObject = aSelectionItem.myObjectInfo.mySObject;
@@ -2829,24 +3252,24 @@ void VisuGUI::contextMenuPopup( const QString& theClient, QPopupMenu* theMenu, Q
 
   if(VISU::Base_i* aBase = aSelectionItem.myObjectInfo.myBase){
     if(aBase->GetType() == VISU::TCOLOREDPRS3DCACHE)
-      action( VISU_CACHE_PROPERTIES )->addTo(theMenu);
+      theMenu->addAction( action( VISU_MANAGE_CACHE ) );
   }
 
-  theMenu->insertSeparator();
+  theMenu->addSeparator();
 
   // Check if some (nb > 0) removable objects selected
   if (isOBClient && IsRemovableSelected(this)) {
-    action( VISU_DELETE_OBJS )->addTo(theMenu);
+    theMenu->addAction( action( VISU_DELETE_OBJS ) );
   }
   if (isCurves) {
-    action( myDisplay     )->removeFrom(theMenu);
-    action( myErase       )->removeFrom(theMenu);
-    action( myDisplayOnly )->removeFrom(theMenu);
-    action( myEraseAll    )->removeFrom(theMenu);
+    theMenu->removeAction( action( myDisplay ) );
+    theMenu->removeAction( action( myErase ) );
+    theMenu->removeAction( action( myDisplayOnly ) );
+    theMenu->removeAction( action( myEraseAll ) );
   }
 
   // Check single selection
-  if (aListIO.Extent() != 1) 
+  if (aListIO.Extent() != 1)
     return;
 
   // Check if the object's data is loaded
@@ -2854,36 +3277,36 @@ void VisuGUI::contextMenuPopup( const QString& theClient, QPopupMenu* theMenu, Q
   std::string aCompIOR;
   if (!aSComp->ComponentIOR(aCompIOR)) { // not loaded
     //std::string aCompDataType = aSComp->ComponentDataType();
-    action( VISU_LOAD_COMPONENT_DATA )->addTo(theMenu); // "Load Component Data"
+    theMenu->addAction( action( VISU_LOAD_COMPONENT_DATA ) ); // "Load Component Data"
   }
 
   VISU::VISUType aType = VISU::Storable::RestoringMap2Type( aMap );
   if (aType == VISU::TANIMATION) {
-    action( VISU_SHOW_ANIMATION )->addTo(theMenu);
-
+    theMenu->addAction( action( VISU_SHOW_ANIMATION ) );
   } else if (isOBClient) {
     if (IsSObjectTable(aSObject)) {
-      action( VISU_SHOW_TABLE )->addTo(theMenu);
-      action( VISU_CREATE_CURVES )->addTo(theMenu);
-      action( VISU_EXPORT_TABLE )->addTo(theMenu);
-      theMenu->insertSeparator();
+      /*      action( VISU_SHOW_TABLE )->addTo(theMenu);
+      theMenu->addAction( action( VISU_CREATE_CURVES ) );
+      theMenu->addAction( action( VISU_EXPORT_TABLE ) );
+      theMenu->addSeparator();
+      action( VISU_DELETE_OBJS )->addTo(theMenu);*/// dmv - code was moved up
     } else {
       if (!CORBA::is_nil(anObject)) {
         SALOME_MED::MED_var aMED = SALOME_MED::MED::_narrow(anObject);
         if (!CORBA::is_nil(aMED.in())) {
-          action( VISU_IMPORT_MED_STRUCTURE )->addTo(theMenu); // "Import Structure"
+          theMenu->addAction( action( VISU_IMPORT_MED_STRUCTURE ) ); // "Import Structure"
         }
 
         SALOME_MED::FIELD_var aField = SALOME_MED::FIELD::_narrow(anObject);
         if (!CORBA::is_nil(aField)) {
-          action( VISU_IMPORT_MED_TIMESTAMP )->addTo(theMenu); // "Import TimeStamp"
+          theMenu->addAction( action( VISU_IMPORT_MED_TIMESTAMP ) ); // "Import TimeStamp"
         }
       } else {
         _PTR(SObject) aSFather1 = aSObject->GetFather();
         if (aSFather1) {
           std::string aValue = aSFather1->GetName();
           if (strcmp(aValue.c_str(), "MEDFIELD") == 0) {
-            action( VISU_IMPORT_MED_FIELD )->addTo(theMenu); // "Import Field"
+           theMenu->addAction( action( VISU_IMPORT_MED_FIELD ) ); // "Import Field"
           }
         }
       }
@@ -2898,8 +3321,8 @@ VisuGUI
 ::windows( QMap<int, int>& theMap ) const
 {
   theMap.clear();
-  theMap.insert( SalomeApp_Application::WT_ObjectBrowser, Qt::DockLeft );
-  theMap.insert( SalomeApp_Application::WT_PyConsole, Qt::DockBottom );
+  theMap.insert( SalomeApp_Application::WT_ObjectBrowser, Qt::LeftDockWidgetArea );
+  theMap.insert( SalomeApp_Application::WT_PyConsole, Qt::BottomDockWidgetArea );
 }
 
 
@@ -2909,10 +3332,10 @@ VisuGUI
 {
   theList.clear();
   // append SVTK viewer only if there is no opened VVTK
-  SUIT_ViewManager* vm = getApp()->getViewManager( VVTK_Viewer::Type(), false );
-  if( vm && vm->getViewsCount()>0 )
-    theList.append( VVTK_Viewer::Type() );
-  else
+//   SUIT_ViewManager* vm = getApp()->getViewManager( VVTK_Viewer::Type(), false );
+//   if( vm && vm->getViewsCount()>0 )
+//     theList.append( VVTK_Viewer::Type() );
+//   else
     theList.append( SVTK_Viewer::Type() );
 }
 
@@ -2930,15 +3353,25 @@ bool
 VisuGUI
 ::activateModule( SUIT_Study* theStudy )
 {
-  SalomeApp_Module::activateModule( theStudy );
+  bool aResult = SalomeApp_Module::activateModule( theStudy );
+
   studyActivated();
   setMenuShown( true );
   setToolShown( true );
 
   // Reset actions accelerator keys
-  action(VISU_IMPORT_FROM_FILE)->setAccel(QKeySequence(CTRL + Key_I));
+  QList<QKeySequence> shortcuts;
+  shortcuts.append( QKeySequence(Qt::CTRL + Qt::Key_I) );
+  action(VISU_IMPORT_FROM_FILE)->setShortcuts(shortcuts);
 
-  return true;
+  action(VISU_DELETE_OBJS)->setEnabled(true); // Delete: Key_Delete
+  action(VISU_RENAME     )->setEnabled(true); // Rename: Key_F2
+
+  ((VisuGUI_ClippingPanel*) myPanels[ClippingPlanesPanelId])->init();
+
+  emit moduleActivated();
+
+  return aResult;
 }
 
 
@@ -2949,11 +3382,24 @@ VisuGUI
   setMenuShown( false );
   setToolShown( false );
 
+  QMap< PanelId, VisuGUI_Panel* >::iterator it = myPanels.begin(), itEnd = myPanels.end();
+  for( ; it != itEnd; ++it )
+  {
+    if( VisuGUI_Panel* aPanel = it.value() )
+      aPanel->hide();
+  }
+
   // Unset actions accelerator keys
-  action(VISU_IMPORT_FROM_FILE)->setAccel(QKeySequence());
+  action(VISU_IMPORT_FROM_FILE)->setShortcuts(QKeySequence::UnknownKey); // Import: CTRL + Key_I
+
+  action(VISU_DELETE_OBJS)->setEnabled(false); // Delete: Key_Delete
+  action(VISU_RENAME     )->setEnabled(false); // Rename: Key_F2
 
-  SalomeApp_Module::deactivateModule( theStudy );
-  return true;
+  bool aResult = SalomeApp_Module::deactivateModule( theStudy );
+  
+  emit moduleDeactivated();
+
+  return aResult;
 }
 
 LightApp_Selection*
@@ -2967,6 +3413,7 @@ VisuGUI
 void VisuGUI::studyActivated()
 {
   GetVisuGen(this)->SetCurrentStudy(GetDSStudy(GetCStudy(GetAppStudy(this))));
+  
 }
 
 /*
@@ -2983,10 +3430,16 @@ void VisuGUI::createPreferences()
 {
   // TAB: "MED import"
   int importTab = addPreference( tr( "MED import" ) );
-  
+  //printf( "++++++++++++++++++ Tab index %d\n", importTab );
+
+  //int importFrame = addPreference( tr( "MED FRAME" ), importTab );
+  //printf( "Frame index %d\n", importFrame );
+
   // group: "MED files import"
   int importGr = addPreference( tr( "MED files import" ), importTab );
-  setPreferenceProperty( importGr, "columns", 1 );
+  //printf( "Group index %d\n", importGr );
+  setPreferenceProperty( importGr, "columns", 2 );
+
   addPreference( tr( "Use build progress" ), importGr, LightApp_Preferences::Bool, "VISU", "use_build_progress" );
   addPreference( tr( "Full MED loading" ), importGr, LightApp_Preferences::Bool, "VISU", "full_med_loading" );
   addPreference( tr( "Build at once" ), importGr, LightApp_Preferences::Bool, "VISU", "build_at_once" );
@@ -2999,7 +3452,7 @@ void VisuGUI::createPreferences()
   int sbarTab = addPreference( tr( "VISU_SCALAR_BAR" ) );
 
   int rangeGr = addPreference( tr( "VISU_SCALAR_RANGE" ), sbarTab );
-  setPreferenceProperty( rangeGr, "columns", 1 );
+  setPreferenceProperty( rangeGr, "columns", 2 );
 
   int mode = addPreference( tr( "VISU_SCALAR_MODE" ), rangeGr, LightApp_Preferences::Selector, "VISU", "scalar_bar_mode" );
   QStringList modes;
@@ -3007,7 +3460,7 @@ void VisuGUI::createPreferences()
   modes.append( tr( "VISU_COMPONENT" ) + tr("1") );
   modes.append( tr( "VISU_COMPONENT" ) + tr("2") );
   modes.append( tr( "VISU_COMPONENT" ) + tr("3") );
-  QValueList<QVariant> indices;
+  QList<QVariant> indices;
   indices.append( 0 );
   indices.append( 1 );
   indices.append( 2 );
@@ -3015,8 +3468,6 @@ void VisuGUI::createPreferences()
   setPreferenceProperty( mode, "strings", modes );
   setPreferenceProperty( mode, "indexes", indices );
 
-  addPreference( tr( "VISU_LOGARITHMIC_SCALING" ), rangeGr, LightApp_Preferences::Bool, "VISU", "scalar_bar_logarithmic" );
-
   int rangetype = addPreference( tr( "VISU_RANGE_TO_USE" ), rangeGr, LightApp_Preferences::Selector, "VISU", "scalar_range_type" );
   QStringList types;
   types.append( tr( "VISU_FIELD_RANGE" ) );
@@ -3027,7 +3478,10 @@ void VisuGUI::createPreferences()
   setPreferenceProperty( rangetype, "strings", types );
   setPreferenceProperty( rangetype, "indexes", indices );
 
+  addPreference( tr( "VISU_LOGARITHMIC_SCALING" ), rangeGr, LightApp_Preferences::Bool, "VISU", "scalar_bar_logarithmic" );
+
   int imposedGr = addPreference( tr( "VISU_MINMAX_IMPOSED_RANGE" ), sbarTab );
+  setPreferenceProperty( imposedGr, "columns", 4 );
 
   int min = addPreference( tr( "VISU_MIN" ), imposedGr, LightApp_Preferences::DblSpin, "VISU", "scalar_range_min" );
   int max = addPreference( tr( "VISU_MAX" ), imposedGr, LightApp_Preferences::DblSpin, "VISU", "scalar_range_max" );
@@ -3036,32 +3490,17 @@ void VisuGUI::createPreferences()
 
   // group: "Font"
   int fontGr = addPreference( tr( "VISU_FONT" ), sbarTab );
-  int tfont = addPreference( tr( "VISU_TITLE" ), fontGr,
-                             LightApp_Preferences::Font, "VISU", "scalar_bar_title_font" );
-  addPreference( tr( "VISU_TITLE" ), fontGr,
-                 LightApp_Preferences::Color, "VISU", "scalar_bar_title_color" );
-  int lfont = addPreference( tr( "VISU_LABELS" ), fontGr,
-                             LightApp_Preferences::Font, "VISU", "scalar_bar_label_font" );
-  addPreference( tr( "VISU_LABELS" ), fontGr,
-                 LightApp_Preferences::Color, "VISU", "scalar_bar_label_color" );
+  setPreferenceProperty( fontGr, "columns", 2 );
 
-  QStringList fam;
-  fam.append( tr( "VISU_FONT_ARIAL" ) );
-  fam.append( tr( "VISU_FONT_COURIER" ) );
-  fam.append( tr( "VISU_FONT_TIMES" ) );
-  int wflag = ( QtxListResourceEdit::FontItem::All &
-                ( ~( QtxListResourceEdit::FontItem::Size |
-                     QtxListResourceEdit::FontItem::UserSize ) ) );
+  addVtkFontPref( tr( "VISU_TITLE" ), fontGr, "scalar_bar_title_font", false );
+  addPreference( tr( "VISU_TITLE" ), fontGr, LightApp_Preferences::Color, "VISU", "scalar_bar_title_color" );
 
-  setPreferenceProperty( tfont, "families", fam );
-  setPreferenceProperty( tfont, "system", false );
-  setPreferenceProperty( tfont, "widget_flags", wflag );
-  setPreferenceProperty( lfont, "families", fam );
-  setPreferenceProperty( lfont, "system", false );
-  setPreferenceProperty( lfont, "widget_flags", wflag );
+  addVtkFontPref( tr( "VISU_LABELS" ), fontGr, "scalar_bar_label_font", false );
+  addPreference( tr( "VISU_LABELS" ), fontGr, LightApp_Preferences::Color, "VISU", "scalar_bar_label_color" );
 
   // group: "Colors & Labels"
   int colorsLabelsGr = addPreference( tr( "VISU_COLORS_AND_LABELS" ), sbarTab );
+  setPreferenceProperty( colorsLabelsGr, "columns", 4 );
 
   int numcol = addPreference( tr( "VISU_NB_COLORS" ), colorsLabelsGr,
                               LightApp_Preferences::IntSpin, "VISU", "scalar_bar_num_colors" );
@@ -3076,11 +3515,18 @@ void VisuGUI::createPreferences()
   setPreferenceProperty( numlab, "min", 2 );
   setPreferenceProperty( numlab, "max", 65 );
 
-  addPreference( tr( "VISU_LABELS_FORMAT" ), colorsLabelsGr,
-                LightApp_Preferences::String, "VISU", "scalar_bar_label_format" );
+  int lPrec = addPreference( tr( "PRECISION" ), colorsLabelsGr,
+    LightApp_Preferences::IntSpin, "VISU", "scalar_bar_label_precision" );
+
+  setPreferenceProperty( lPrec, "min", 1 );
+  setPreferenceProperty( lPrec, "max", 100 );
+  
+  int frame = addPreference( "", sbarTab, LightApp_Preferences::Frame, "", "" );
+  setPreferenceProperty( frame, "orientation", "horizontal" );
 
   // group: "Orientation"
-  int orientGr = addPreference( tr( "VISU_ORIENTATION" ), sbarTab );
+  int orientGr = addPreference( tr( "VISU_ORIENTATION" ), frame, LightApp_Preferences::GroupBox );
+  setPreferenceProperty( orientGr, "columns", 2 );
   int orient = addPreference( tr( "VISU_ORIENTATION" ), orientGr,
                               LightApp_Preferences::Selector, "VISU", "scalar_bar_orientation" );
   QStringList orients;
@@ -3092,30 +3538,39 @@ void VisuGUI::createPreferences()
   setPreferenceProperty( orient, "strings", orients );
   setPreferenceProperty( orient, "indexes", indices );
 
+  // group: "Scalar bars default position"
+  int scalarBarGr = addPreference( tr( "Scalar bars default position" ), frame, LightApp_Preferences::GroupBox );
+  addPreference( tr( "Arrange Scalar Bars" ), scalarBarGr, LightApp_Preferences::Bool, "VISU", "scalar_bars_default_position" );
+
+
   // group: "Origin & Size Vertical"
-  int posVSizeGr = addPreference( tr( "VISU_ORIGIN_AND_SIZE" ) + " " + tr( "VISU_VERTICAL" ), sbarTab );
-  setPreferenceProperty( posVSizeGr, "columns", 5 );
+  int psSzFrame = addPreference( "", sbarTab, LightApp_Preferences::Frame, "", "" );
+  setPreferenceProperty( psSzFrame, "orientation", "horizontal" );
+
+  int posVSizeGr = addPreference( tr( "VISU_ORIGIN_AND_SIZE" ) + " " + tr( "VISU_VERTICAL" ),
+                                 psSzFrame, LightApp_Preferences::GroupBox );
+  setPreferenceProperty( posVSizeGr, "columns", 2 );
   int xv = addPreference( tr( "VISU_X" ), posVSizeGr,
                           LightApp_Preferences::DblSpin, "VISU", "scalar_bar_vertical_x" );
-  int wv = addPreference( tr( "VISU_WIDTH" ), posVSizeGr,
-                          LightApp_Preferences::DblSpin, "VISU", "scalar_bar_vertical_width" );
-  int twv = addPreference( tr( "VISU_TITLE_WIDTH" ), posVSizeGr,
-                          LightApp_Preferences::IntSpin, "VISU", "scalar_bar_vertical_title_width" );
-  int lwv = addPreference( tr( "VISU_LABEL_WIDTH" ), posVSizeGr,
-                          LightApp_Preferences::IntSpin, "VISU", "scalar_bar_vertical_label_width" );
-  int bwv = addPreference( tr( "VISU_BAR_WIDTH" ), posVSizeGr,
-                          LightApp_Preferences::IntSpin, "VISU", "scalar_bar_vertical_bar_width" );
-
   int yv = addPreference( tr( "VISU_Y" ), posVSizeGr,
                           LightApp_Preferences::DblSpin, "VISU", "scalar_bar_vertical_y" );
+
+  int wv = addPreference( tr( "VISU_WIDTH" ), posVSizeGr,
+                          LightApp_Preferences::DblSpin, "VISU", "scalar_bar_vertical_width" );
   int hv = addPreference( tr( "VISU_HEIGHT" ), posVSizeGr,
                           LightApp_Preferences::DblSpin, "VISU", "scalar_bar_vertical_height" );
-  int thv = addPreference( tr( "VISU_TITLE_HEIGHT" ), posVSizeGr,
-                          LightApp_Preferences::IntSpin, "VISU", "scalar_bar_vertical_title_height" );
-  int lhv = addPreference( tr( "VISU_LABEL_HEIGHT" ), posVSizeGr,
-                          LightApp_Preferences::IntSpin, "VISU", "scalar_bar_vertical_label_height" );
+
+  int twv = addPreference( tr( "VISU_TITLE_SIZE" ), posVSizeGr,
+                          LightApp_Preferences::IntSpin, "VISU", "scalar_bar_vertical_title_size" );
+  
+  int lwv = addPreference( tr( "VISU_LABEL_SIZE" ), posVSizeGr,
+                          LightApp_Preferences::IntSpin, "VISU", "scalar_bar_vertical_label_size" );
+  
+  int bwv = addPreference( tr( "VISU_BAR_WIDTH" ), posVSizeGr,
+                          LightApp_Preferences::IntSpin, "VISU", "scalar_bar_vertical_bar_width" );
   int bhv = addPreference( tr( "VISU_BAR_HEIGHT" ), posVSizeGr,
                           LightApp_Preferences::IntSpin, "VISU", "scalar_bar_vertical_bar_height" );
+
   setPreferenceProperty( xv, "step", 0.1 );
   setPreferenceProperty( yv, "step", 0.1 );
   setPreferenceProperty( wv, "step", 0.1 );
@@ -3126,12 +3581,8 @@ void VisuGUI::createPreferences()
   setPreferenceProperty( hv, "min", 0.0 );
   setPreferenceProperty( twv, "min", 0 );
   setPreferenceProperty( twv, "special", "auto" );
-  setPreferenceProperty( thv, "min", 0 );
-  setPreferenceProperty( thv, "special", "auto" );
   setPreferenceProperty( lwv, "min", 0 );
   setPreferenceProperty( lwv, "special", "auto" );
-  setPreferenceProperty( lhv, "min", 0 );
-  setPreferenceProperty( lhv, "special", "auto" );
   setPreferenceProperty( bwv, "min", 0 );
   setPreferenceProperty( bwv, "special", "auto" );
   setPreferenceProperty( bhv, "min", 0 );
@@ -3141,36 +3592,36 @@ void VisuGUI::createPreferences()
   setPreferenceProperty( wv, "max", 1.0 );
   setPreferenceProperty( hv, "max", 1.0 );
   setPreferenceProperty( twv, "max", 100 );
-  setPreferenceProperty( thv, "max", 100 );
   setPreferenceProperty( lwv, "max", 100 );
-  setPreferenceProperty( lhv, "max", 100 );
   setPreferenceProperty( bwv, "max", 100 );
   setPreferenceProperty( bhv, "max", 100 );
 
   // group: "Origin & Size Horizontal"
-  int posHSizeGr = addPreference( tr( "VISU_ORIGIN_AND_SIZE" ) + " " + tr( "VISU_HORIZONTAL" ), sbarTab );
-  setPreferenceProperty( posHSizeGr, "columns", 5 );
+  int posHSizeGr = addPreference( tr( "VISU_ORIGIN_AND_SIZE" ) + " " + tr( "VISU_HORIZONTAL" ),
+                                 psSzFrame, LightApp_Preferences::GroupBox );
+  setPreferenceProperty( posHSizeGr, "columns", 2 );
+
   int xh = addPreference( tr( "VISU_X" ), posHSizeGr,
                           LightApp_Preferences::DblSpin, "VISU", "scalar_bar_horizontal_x" );
-  int wh = addPreference( tr( "VISU_WIDTH" ), posHSizeGr,
-                          LightApp_Preferences::DblSpin, "VISU", "scalar_bar_horizontal_width" );
-  int twh = addPreference( tr( "Title width (%)" ), posHSizeGr,
-                          LightApp_Preferences::IntSpin, "VISU", "scalar_bar_horizontal_title_width" );
-  int lwh = addPreference( tr( "Label width (%)" ), posHSizeGr,
-                          LightApp_Preferences::IntSpin, "VISU", "scalar_bar_horizontal_label_width" );
-  int bwh = addPreference( tr( "Bar width (%)" ), posHSizeGr,
-                          LightApp_Preferences::IntSpin, "VISU", "scalar_bar_horizontal_bar_width" );
-
   int yh = addPreference( tr( "VISU_Y" ), posHSizeGr,
                           LightApp_Preferences::DblSpin, "VISU", "scalar_bar_horizontal_y" );
+
+  int wh = addPreference( tr( "VISU_WIDTH" ), posHSizeGr,
+                          LightApp_Preferences::DblSpin, "VISU", "scalar_bar_horizontal_width" );
   int hh = addPreference( tr( "VISU_HEIGHT" ), posHSizeGr,
                           LightApp_Preferences::DblSpin, "VISU", "scalar_bar_horizontal_height" );
-  int thh = addPreference( tr( "Title height (%)" ), posHSizeGr,
-                          LightApp_Preferences::IntSpin, "VISU", "scalar_bar_horizontal_title_height" );
-  int lhh = addPreference( tr( "Label height (%)" ), posHSizeGr,
-                          LightApp_Preferences::IntSpin, "VISU", "scalar_bar_horizontal_label_height" );
-  int bhh = addPreference( tr( "Bar height (%)" ), posHSizeGr,
+
+  int twh = addPreference( tr( "VISU_TITLE_SIZE" ), posHSizeGr,
+                          LightApp_Preferences::IntSpin, "VISU", "scalar_bar_horizontal_title_size" );
+  
+  int lwh = addPreference( tr( "VISU_LABEL_SIZE" ), posHSizeGr,
+                          LightApp_Preferences::IntSpin, "VISU", "scalar_bar_horizontal_label_size" );
+  
+  int bwh = addPreference( tr( "VISU_BAR_WIDTH" ), posHSizeGr,
+                          LightApp_Preferences::IntSpin, "VISU", "scalar_bar_horizontal_bar_width" );
+  int bhh = addPreference( tr( "VISU_BAR_HEIGHT" ), posHSizeGr,
                           LightApp_Preferences::IntSpin, "VISU", "scalar_bar_horizontal_bar_height" );
+
   setPreferenceProperty( xh, "step", 0.1 );
   setPreferenceProperty( yh, "step", 0.1 );
   setPreferenceProperty( wh, "step", 0.1 );
@@ -3181,12 +3632,8 @@ void VisuGUI::createPreferences()
   setPreferenceProperty( hh, "min", 0.0 );
   setPreferenceProperty( twh, "min", 0 );
   setPreferenceProperty( twh, "special", "auto" );
-  setPreferenceProperty( thh, "min", 0 );
-  setPreferenceProperty( thh, "special", "auto" );
   setPreferenceProperty( lwh, "min", 0 );
   setPreferenceProperty( lwh, "special", "auto" );
-  setPreferenceProperty( lhh, "min", 0 );
-  setPreferenceProperty( lhh, "special", "auto" );
   setPreferenceProperty( bwh, "min", 0 );
   setPreferenceProperty( bwh, "special", "auto" );
   setPreferenceProperty( bhh, "min", 0 );
@@ -3196,16 +3643,10 @@ void VisuGUI::createPreferences()
   setPreferenceProperty( wh, "max", 1.0 );
   setPreferenceProperty( hh, "max", 1.0 );
   setPreferenceProperty( twh, "max", 100 );
-  setPreferenceProperty( thh, "max", 100 );
   setPreferenceProperty( lwh, "max", 100 );
-  setPreferenceProperty( lhh, "max", 100 );
   setPreferenceProperty( bwh, "max", 100 );
   setPreferenceProperty( bhh, "max", 100 );
 
-  // group: "Scalar bars default position"
-  int scalarBarGr = addPreference( tr( "Scalar bars default position" ), sbarTab );
-  addPreference( tr( "Arrange Scalar Bars" ), scalarBarGr, LightApp_Preferences::Bool, "VISU", "scalar_bars_default_position" );
-
   // TAB: "CutLines"
   int cutLineTab = addPreference( tr( "CutLines" ) );
 
@@ -3218,107 +3659,147 @@ void VisuGUI::createPreferences()
   addPreference( tr( "Generate data table" ), cutLineGr, LightApp_Preferences::Bool, "VISU", "generate_data_table" );
   addPreference( tr( "Generate curves" ), cutLineGr, LightApp_Preferences::Bool, "VISU", "generate_curves" );
 
-  // TAB: "Sweep, Animation"
-  int srangeTab = addPreference( tr( "Sweep, Animation" ) );
-  
-  // group: "Sweeping preferences"
-  int sweepGr = addPreference( tr( "VISU_SWEEPING_PREF" ), srangeTab );
-  setPreferenceProperty( sweepGr, "columns", 1 );
-  
-  int modeSw = addPreference( tr( "VISU_SWEEPING_MODES" ), sweepGr, LightApp_Preferences::Selector, "VISU", "sweeping_modes" );
-  QStringList sweep_modes;
-  sweep_modes.append( tr( "VISU_LINEAR_SWEEP" ) );
-  sweep_modes.append( tr( "VISU_COS_SWEEP" ) );
-  sweep_modes.append( tr( "VISU_SIN_SWEEP" ) );
-  indices.clear();
-  indices.append( 0 );
-  indices.append( 1 );
-  indices.append( 2 );
-  setPreferenceProperty( modeSw, "strings", sweep_modes );
-  setPreferenceProperty( modeSw, "indexes", indices );
-
-  int timestep   = addPreference( tr( "VISU_TIME_STEP" ), sweepGr,
-                                  LightApp_Preferences::DblSpin, "VISU", "sweeping_time_step" );
-  int nbcycles   = addPreference( tr( "VISU_NB_CYCLES" ), sweepGr,
-                                  LightApp_Preferences::IntSpin, "VISU", "sweeping_number_cycles" );
-  int nbsteps    = addPreference( tr( "VISU_NB_STEPS" ),  sweepGr,
-                                  LightApp_Preferences::IntSpin, "VISU", "sweeping_number_steps" );
-  int rangeSw = addPreference( tr( "VISU_IS2PI" ), sweepGr, LightApp_Preferences::Selector, "VISU", "sweeping_is2PI" );
-  QStringList ranges;
-  ranges.append( tr( "PERIOD_PI" ) );
-  ranges.append( tr( "PERIOD_2PI" ) );
-  indices.clear();
-  indices.append( 0 );
-  indices.append( 1 );
-  setPreferenceProperty( rangeSw, "strings", ranges );
-  setPreferenceProperty( rangeSw, "indexes", indices );
-
-  setPreferenceProperty( timestep, "min",  0.1 );
-  setPreferenceProperty( timestep, "step", 0.1 );
-  setPreferenceProperty( timestep, "max",  1000 );
-  setPreferenceProperty( nbcycles, "max",  100  );
-  setPreferenceProperty( nbsteps,  "max",  200  );  
-
-  // group: "Animation preferences"
-  int animationGr = addPreference( tr( "Animation preferences" ), srangeTab );
-  setPreferenceProperty( animationGr, "columns", 1 );
-
-  int speed = addPreference( tr( "Speed" ), animationGr, LightApp_Preferences::IntSpin, "VISU", "speed" );
-  addPreference( tr( "Cycled animation" ), animationGr, LightApp_Preferences::Bool, "VISU", "cycled_animation" );
-  addPreference( tr( "Use proportional timing" ), animationGr, LightApp_Preferences::Bool, "VISU", "use_proportional_timing" );
-  addPreference( tr( "Clean memory at each frame" ), animationGr, LightApp_Preferences::Bool, "VISU", "clean_memory_at_each_frame" );
-  
-  setPreferenceProperty( speed, "min", 1 );
-  setPreferenceProperty( speed, "max", 99 );
+  // TAB: "Sweep, Animation, 3D Cache"
+  int animationTab = addPreference( tr( "Sweep, Animation" ) );
+  {
+    // group: "3D Cache System prefereces"
+    {
+      int cacheGroup = addPreference( tr( "VISU_3DCACHE_PREFERENCES" ), animationTab );
+      setPreferenceProperty( cacheGroup, "columns", 2 );
+      
+      int memory_mode = addPreference( tr( "VISU_MEMORY_MODE" ), cacheGroup,
+                                      LightApp_Preferences::Selector, "VISU", "cache_memory_mode" );
+      
+      modes.clear();
+      modes.append( tr( "VISU_MINIMAL" ) );
+      modes.append( tr( "VISU_LIMITED" ) );
+      setPreferenceProperty( memory_mode, "strings", modes );
+      
+      indices.clear();
+      indices.append( 0 );
+      indices.append( 1 );
+      setPreferenceProperty( memory_mode, "indexes", indices );
+      
+      int memory_limit = addPreference( tr( "VISU_MEMORY_LIMIT" ), cacheGroup,
+                                       LightApp_Preferences::IntSpin, "VISU", "cache_memory_limit" );
+      setPreferenceProperty( memory_limit, "min", 1 );
+      setPreferenceProperty( memory_limit, "max", 5000 );
+      setPreferenceProperty( memory_limit, "step", 10 );
+    }
+
+    // group: "Animation preferences"
+    {
+      int animationGroup = addPreference( tr( "VISU_ANIMATION_PREFERENCES" ), animationTab );
+      setPreferenceProperty( animationGroup, "columns", 3 );
+      
+      int speed = addPreference( tr( "Speed" ), animationGroup, LightApp_Preferences::IntSpin, "VISU", "speed" );
+      addPreference( tr( "Cycled animation" ), animationGroup, LightApp_Preferences::Bool, "VISU", "cycled_animation" );
+      addPreference( tr( "Use proportional timing" ), animationGroup, LightApp_Preferences::Bool, "VISU", "use_proportional_timing" );
+      addPreference( tr( "Clean memory at each frame" ), animationGroup, LightApp_Preferences::Bool, "VISU", "clean_memory_at_each_frame" );
+      
+      setPreferenceProperty( speed, "min", 1 );
+      setPreferenceProperty( speed, "max", 99 );
+    }
+
+    // group: "Sweeping preferences"
+    {
+      int sweepGroup = addPreference( tr( "VISU_SWEEPING_PREF" ), animationTab );
+      setPreferenceProperty( sweepGroup, "columns", 2 );
+      
+      int modeSw = addPreference( tr( "VISU_SWEEPING_MODES" ), sweepGroup, LightApp_Preferences::Selector, "VISU", "sweeping_modes" );
+      QStringList sweep_modes;
+      sweep_modes.append( tr( "VISU_LINEAR_SWEEP" ) );
+      sweep_modes.append( tr( "VISU_COS_SWEEP" ) );
+      sweep_modes.append( tr( "VISU_SIN_SWEEP" ) );
+      indices.clear();
+      indices.append( 0 );
+      indices.append( 1 );
+      indices.append( 2 );
+      setPreferenceProperty( modeSw, "strings", sweep_modes );
+      setPreferenceProperty( modeSw, "indexes", indices );
+      
+      int timestep   = addPreference( tr( "VISU_TIME_STEP" ), sweepGroup,
+                                     LightApp_Preferences::DblSpin, "VISU", "sweeping_time_step" );
+      /*    int nbcycles   = addPreference( tr( "VISU_NB_CYCLES" ), sweepGroup,
+           LightApp_Preferences::IntSpin, "VISU", "sweeping_number_cycles" );*/
+      int nbsteps    = addPreference( tr( "VISU_NB_STEPS" ),  sweepGroup,
+                                     LightApp_Preferences::IntSpin, "VISU", "sweeping_number_steps" );
+      int rangeSw = addPreference( tr( "VISU_IS2PI" ), sweepGroup, LightApp_Preferences::Selector, "VISU", "sweeping_is2PI" );
+      QStringList ranges;
+      ranges.append( tr( "PERIOD_PI" ) );
+      ranges.append( tr( "PERIOD_2PI" ) );
+      indices.clear();
+      indices.append( 0 );
+      indices.append( 1 );
+      setPreferenceProperty( rangeSw, "strings", ranges );
+      setPreferenceProperty( rangeSw, "indexes", indices );
+      
+      setPreferenceProperty( timestep, "min",  0.1 );
+      setPreferenceProperty( timestep, "step", 0.1 );
+      setPreferenceProperty( timestep, "max",  1000 );
+      //    setPreferenceProperty( nbcycles, "max",  100  );
+      setPreferenceProperty( nbsteps,  "max",  200  );
+    }
+  }
 
   // TAB: Representation ; group: "Representation properties"
   int representationTab = addPreference( tr( "Representation" ) );
-  
+
   int representGr = addPreference( tr( "VISU_REPRESENT_PROPS" ), representationTab );
-  
+  setPreferenceProperty( representGr, "columns", 2 );
+
   QStringList mesh_modes;
   mesh_modes.append( "Points" );
   mesh_modes.append( "Wireframe" );
   mesh_modes.append( "Insideframe" );
   mesh_modes.append( "Surfaceframe" );
   mesh_modes.append( "Surface" );
-  QValueList<QVariant> mesh_indices;
+  mesh_modes.append( "Feature edges" );
+  QList<QVariant> mesh_indices;
   mesh_indices.append( 0 );
   mesh_indices.append( 1 );
   mesh_indices.append( 3 );
   mesh_indices.append( 4 );
   mesh_indices.append( 2 );
-  
-  QStringList modes1 = mesh_modes;
-  modes1.remove( "Insideframe" );
-  QValueList<QVariant> indices1 = mesh_indices;
-  indices1.remove( 3 );
-  
+  mesh_indices.append( 5 );
+
+  QStringList modes0 = mesh_modes;
+  modes0.removeAll( "Feature edges" );
+  QList<QVariant> indices0 = mesh_indices;
+  indices0.removeAll( 5 );
+
+  QStringList modes1 = modes0;
+  modes1.removeAll( "Insideframe" );
+  QList<QVariant> indices1 = indices0;
+  indices1.removeAll( 3 );
+
   QStringList modes2 = modes1;
-  modes2.remove( "Surfaceframe" );
-  QValueList<QVariant> indices2 = indices1;
-  indices2.remove( 4 );
+  modes2.removeAll( "Surfaceframe" );
+  QList<QVariant> indices2 = indices1;
+  indices2.removeAll( 4 );
 
   QStringList modes3 = modes2;
-  modes3.remove( "Surface" );
-  QValueList<QVariant> indices3 = indices2;
-  indices3.remove( 2 );
-  
-  
+  modes3.removeAll( "Surface" );
+  QList<QVariant> indices3 = indices2;
+  indices3.removeAll( 2 );
+
+
   int mesh_represent = addPreference( tr( "VISU_MESH" ), representGr, LightApp_Preferences::Selector, "VISU", "mesh_represent" );
   setPreferenceProperty( mesh_represent, "strings", mesh_modes );
   setPreferenceProperty( mesh_represent, "indexes", mesh_indices );
   addPreference( tr( "VISU_SHRINK" ), representGr, LightApp_Preferences::Bool, "VISU", "mesh_shrink" );
 
   int scalar_map_represent = addPreference( tr( "VISU_SCALAR_MAP" ), representGr, LightApp_Preferences::Selector, "VISU", "scalar_map_represent" );
-  setPreferenceProperty( scalar_map_represent, "strings", mesh_modes );
-  setPreferenceProperty( scalar_map_represent, "indexes", mesh_indices );
+  setPreferenceProperty( scalar_map_represent, "strings", modes0 );
+  setPreferenceProperty( scalar_map_represent, "indexes", indices0 );
   addPreference( tr( "VISU_SHRINK" ), representGr, LightApp_Preferences::Bool, "VISU", "scalar_map_shrink" );
 
   int iso_surfaces_represent = addPreference( tr( "VISU_ISO_SURFACES" ), representGr, LightApp_Preferences::Selector, "VISU", "iso_surfaces_represent" );
   setPreferenceProperty( iso_surfaces_represent, "strings", modes2 );
   setPreferenceProperty( iso_surfaces_represent, "indexes", indices2 );
-  addPreference( "", representGr, LightApp_Preferences::Space );
+  int sp = addPreference( "", representGr, LightApp_Preferences::Space );
+  setPreferenceProperty( sp, "hstretch", 0 );
+  setPreferenceProperty( sp, "vstretch", 0 );
 
   int cut_planes_represent = addPreference( tr( "VISU_CUT_PLANES" ), representGr, LightApp_Preferences::Selector, "VISU", "cut_planes_represent" );
   setPreferenceProperty( cut_planes_represent, "strings", modes2 );
@@ -3328,64 +3809,92 @@ void VisuGUI::createPreferences()
   int cut_lines_represent = addPreference( tr( "VISU_CUT_LINES" ), representGr, LightApp_Preferences::Selector, "VISU", "cut_lines_represent" );
   setPreferenceProperty( cut_lines_represent, "strings", modes3 );
   setPreferenceProperty( cut_lines_represent, "indexes", indices3 );
-  addPreference( "", representGr, LightApp_Preferences::Space );
+  sp = addPreference( "", representGr, LightApp_Preferences::Space );
+  setPreferenceProperty( sp, "hstretch", 0 );
+  setPreferenceProperty( sp, "vstretch", 0 );
 
   int deformed_shape_represent = addPreference( tr( "VISU_DEFORMED_SHAPE" ), representGr, LightApp_Preferences::Selector, "VISU", "deformed_shape_represent" );
-  setPreferenceProperty( deformed_shape_represent, "strings", mesh_modes );
-  setPreferenceProperty( deformed_shape_represent, "indexes", mesh_indices );
+  setPreferenceProperty( deformed_shape_represent, "strings", modes0 );
+  setPreferenceProperty( deformed_shape_represent, "indexes", indices0 );
   addPreference( tr( "VISU_SHRINK" ), representGr, LightApp_Preferences::Bool, "VISU", "deformed_shape_shrink" );
 
   int vectors_represent = addPreference( tr( "VISU_VECTORS" ), representGr, LightApp_Preferences::Selector, "VISU", "vectors_represent" );
   setPreferenceProperty( vectors_represent, "strings", modes3 );
   setPreferenceProperty( vectors_represent, "indexes", indices3 );
-  addPreference( "", representGr, LightApp_Preferences::Space );
+  sp = addPreference( "", representGr, LightApp_Preferences::Space );
+  setPreferenceProperty( sp, "hstretch", 0 );
+  setPreferenceProperty( sp, "vstretch", 0 );
 
   int stream_lines_represent = addPreference( tr( "VISU_STREAM_LINES" ), representGr, LightApp_Preferences::Selector, "VISU", "stream_lines_represent" );
   setPreferenceProperty( stream_lines_represent, "strings", modes3 );
   setPreferenceProperty( stream_lines_represent, "indexes", indices3 );
-  addPreference( "", representGr, LightApp_Preferences::Space );
+  sp = addPreference( "", representGr, LightApp_Preferences::Space );
+  setPreferenceProperty( sp, "hstretch", 0 );
+  setPreferenceProperty( sp, "vstretch", 0 );
 
   int plot3d_represent = addPreference( tr( "VISU_PLOT3D" ), representGr, LightApp_Preferences::Selector, "VISU", "plot3d_represent" );
   setPreferenceProperty( plot3d_represent, "strings", modes2 );
   setPreferenceProperty( plot3d_represent, "indexes", indices2 );
-  addPreference( "", representGr, LightApp_Preferences::Space );
+  sp = addPreference( "", representGr, LightApp_Preferences::Space );
+  setPreferenceProperty( sp, "hstretch", 0 );
+  setPreferenceProperty( sp, "vstretch", 0 );
 
-  int scalar_def_represent = addPreference( tr( "VISU_SCALAR_MAP_ON_DEFORMED_SHAPE" ), representGr, LightApp_Preferences::Selector, "VISU", "scalar_def_represent" );
+  int scalar_def_represent = addPreference( tr( "VISU_DEFORMED_SHAPE_AND_SCALAR_MAP" ), representGr, LightApp_Preferences::Selector, "VISU", "scalar_def_represent" );
   setPreferenceProperty( scalar_def_represent, "strings", modes1 );
   setPreferenceProperty( scalar_def_represent, "indexes", indices1 );
   addPreference( tr( "VISU_SHRINK" ), representGr, LightApp_Preferences::Bool, "VISU", "scalar_def_shrink" );
-  
-  addPreference( tr( "VISU_USE_SHADING" ), representGr,
-                 LightApp_Preferences::Bool, "VISU", "represent_shading" );
+
+  int point_precision = addPreference( tr( "VISU_FLOATING_POINT_PRECISION" ), representGr,
+                                      LightApp_Preferences::IntSpin, "VISU", "floating_point_precision" );
+  setPreferenceProperty( point_precision, "min", 1 );
+  setPreferenceProperty( point_precision, "max", 16 );
+  setPreferenceProperty( point_precision, "step", 1 );
+  addPreference( "", representGr, LightApp_Preferences::Space );
+
+  addPreference( tr( "VISU_USE_SHADING" ), representGr, LightApp_Preferences::Bool, "VISU", "represent_shading" );
+  sp = addPreference( "", representGr, LightApp_Preferences::Space );
+  setPreferenceProperty( sp, "hstretch", 0 );
+  setPreferenceProperty( sp, "vstretch", 0 );
+
+  addPreference( tr( "VISU_DISP_ONLY" ), representGr, LightApp_Preferences::Bool, "VISU", "display_only" );
   addPreference( "", representGr, LightApp_Preferences::Space );
 
-  addPreference( tr( "VISU_DISP_ONLY" ), representGr,
-                 LightApp_Preferences::Bool, "VISU", "display_only" );
+  addPreference( tr( "VISU_AUTOMATIC_FIT_ALL" ), representGr,
+                 LightApp_Preferences::Bool, "VISU", "automatic_fit_all" );
 
-  // TAB: 3D Cache ; group: "Cache properties"
-  int cacheTab = addPreference( tr( "3D Cache" ) );
+  // TAB: Feature edges ; group: "Feature edges properties"
+  int featureEdgesTab = addPreference( tr( "VISU_FEATURE_EDGES" ) );
+
+  int featureEdgesGr = addPreference( tr( "VISU_FEATURE_EDGES_PROPS" ), featureEdgesTab );
+  setPreferenceProperty( featureEdgesGr, "columns", 2 );
+
+  int featureEdgesAnglePref = addPreference( tr( "VISU_FEATURE_EDGES_ANGLE" ), featureEdgesGr,
+                                            LightApp_Preferences::DblSpin, "VISU", "feature_edges_angle" );
+  setPreferenceProperty( featureEdgesAnglePref, "step", 10.0 );
+  setPreferenceProperty( featureEdgesAnglePref, "min", 0.0 );
+  setPreferenceProperty( featureEdgesAnglePref, "max", 90.0 );
+
+  addPreference( tr( "VISU_SHOW_FEATURE_EDGES" ), featureEdgesGr, LightApp_Preferences::Bool, "VISU", "show_feature_edges" );
+  addPreference( tr( "VISU_SHOW_BOUNDARY_EDGES" ), featureEdgesGr, LightApp_Preferences::Bool, "VISU", "show_boundary_edges" );
+  addPreference( tr( "VISU_SHOW_MANIFOLD_EDGES" ), featureEdgesGr, LightApp_Preferences::Bool, "VISU", "show_manifold_edges" );
+  addPreference( tr( "VISU_SHOW_NON_MANIFOLD_EDGES" ), featureEdgesGr, LightApp_Preferences::Bool, "VISU", "show_non_manifold_edges" );
+  //addPreference( tr( "VISU_FEATURE_EDGES_COLORING" ), featureEdgesGr, LightApp_Preferences::Bool, "VISU", "feature_edges_coloring" );
   
-  int cacheGr = addPreference( tr( "VISU_3DCACHE_PROPS" ), cacheTab );
-  setPreferenceProperty( cacheGr, "columns", 1 );
+  // TAB: "Values labels"
+  
+  int valLblTab = addPreference( tr( "VALUES_LABELING" ) );
 
-  int memory_mode = addPreference( tr( "VISU_MEMORY_MODE" ), cacheGr,
-                                  LightApp_Preferences::Selector, "VISU", "cache_memory_mode" );
+  // "Font" group
+  int valLblFontGr = addPreference( tr( "VISU_FONT" ), valLblTab );
+  setPreferenceProperty( valLblFontGr, "columns", 2 );
 
-  modes.clear();
-  modes.append( tr( "VISU_MINIMAL" ) );
-  modes.append( tr( "VISU_LIMITED" ) );
-  setPreferenceProperty( memory_mode, "strings", modes );
+  // font
+  addVtkFontPref( tr( "LABELS" ), valLblFontGr, "values_labeling_font", true );
 
-  indices.clear();
-  indices.append( 0 );
-  indices.append( 1 );  
-  setPreferenceProperty( memory_mode, "indexes", indices );
+  // color
+  addPreference( tr( "COLOR" ), valLblFontGr, 
+    LightApp_Preferences::Color, "VISU", "values_labeling_color" );
 
-  int memory_limit = addPreference( tr( "VISU_MEMORY_LIMIT" ), cacheGr,
-                                   LightApp_Preferences::IntSpin, "VISU", "cache_memory_limit" );
-  setPreferenceProperty( memory_limit, "min", 1 );
-  setPreferenceProperty( memory_limit, "max", 5000 );
-  setPreferenceProperty( memory_limit, "step", 10 );
 }
 
 void VisuGUI::preferencesChanged( const QString& a, const QString& b)
@@ -3395,10 +3904,10 @@ void VisuGUI::preferencesChanged( const QString& a, const QString& b)
   SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
   float sbX1,sbY1,sbW,sbH;
   float aTol = 1.00000009999999;
-  std::string aWarning;
+  QString aWarning;
   if(b == QString("scalar_bar_vertical_x") || b == QString("scalar_bar_vertical_width")){
-    sbX1 = aResourceMgr->doubleValue("VISU", "scalar_bar_vertical_x", sbX1);
-    sbW = aResourceMgr->doubleValue("VISU", "scalar_bar_vertical_width", sbW);
+    sbX1 = aResourceMgr->doubleValue("VISU", "scalar_bar_vertical_x", 0.01);
+    sbW = aResourceMgr->doubleValue("VISU", "scalar_bar_vertical_width", 0.05);
     if(sbX1+sbW > aTol){
       aWarning = "Origin and Size Vertical: X+Width > 1\n";
       sbX1=0.01;
@@ -3408,8 +3917,8 @@ void VisuGUI::preferencesChanged( const QString& a, const QString& b)
     }
   }
   else if(b == QString("scalar_bar_vertical_y") || b == QString("scalar_bar_vertical_height")){
-    sbY1 = aResourceMgr->doubleValue("VISU", "scalar_bar_vertical_y", sbY1);
-    sbH = aResourceMgr->doubleValue("VISU", "scalar_bar_vertical_height",sbH);
+    sbY1 = aResourceMgr->doubleValue("VISU", "scalar_bar_vertical_y", 0.01);
+    sbH = aResourceMgr->doubleValue("VISU", "scalar_bar_vertical_height",0.5);
     if(sbY1+sbH > aTol){
       aWarning = "Origin and Size Vertical: Y+Height > 1\n";
       sbY1=0.01;
@@ -3419,8 +3928,8 @@ void VisuGUI::preferencesChanged( const QString& a, const QString& b)
     }
   }
   else if(b ==  QString("scalar_bar_horizontal_x") || b ==  QString("scalar_bar_horizontal_width")){
-    sbX1 = aResourceMgr->doubleValue("VISU", "scalar_bar_horizontal_x", sbX1);
-    sbW = aResourceMgr->doubleValue("VISU", "scalar_bar_horizontal_width", sbW);
+    sbX1 = aResourceMgr->doubleValue("VISU", "scalar_bar_horizontal_x", 0.2);
+    sbW = aResourceMgr->doubleValue("VISU", "scalar_bar_horizontal_width", 0.6);
     if(sbX1+sbW > aTol){
       aWarning = "Origin and Size Horizontal: X+Width > 1\n";
       sbX1=0.2;
@@ -3430,8 +3939,8 @@ void VisuGUI::preferencesChanged( const QString& a, const QString& b)
     }
   }
   else if(b ==  QString("scalar_bar_horizontal_y") || b ==  QString("scalar_bar_horizontal_height")){
-    sbY1 = aResourceMgr->doubleValue("VISU", "scalar_bar_horizontal_y", sbY1);
-    sbH = aResourceMgr->doubleValue("VISU", "scalar_bar_horizontal_height",sbH);
+    sbY1 = aResourceMgr->doubleValue("VISU", "scalar_bar_horizontal_y", 0.01);
+    sbH = aResourceMgr->doubleValue("VISU", "scalar_bar_horizontal_height",0.12);
     if(sbY1+sbH > aTol){
       aWarning = "Origin and Size Horizontal: Y+Height > 1\n";
       sbY1=0.01;
@@ -3439,23 +3948,13 @@ void VisuGUI::preferencesChanged( const QString& a, const QString& b)
       aResourceMgr->setValue("VISU", "scalar_bar_horizontal_y", sbY1);
       aResourceMgr->setValue("VISU", "scalar_bar_horizontal_height",sbH);
     }
-  } else if(b == QString("scalar_bar_label_format")) {
-    QString dVal;
-    dVal.sprintf(aResourceMgr->stringValue("VISU", "scalar_bar_label_format",dVal), 1.1);
-    if(dVal.toDouble() == 0.) {
-      aWarning = "Label format is incorrect ";
-      aWarning += dVal.latin1();
-      aWarning += "\n";
-      dVal="%-#6.3g";
-      aResourceMgr->setValue("VISU", "scalar_bar_label_format", dVal);
-    }
-  }
-  if (aWarning.size() != 0){
+  } 
+  
+  if ( !aWarning.isEmpty() ){
     aWarning += "The default values are applied instead.";
-    SUIT_MessageBox::warn1(GetDesktop(this),
-                          tr("ERR_SCALARBAR_PARAMS"),
-                          tr(aWarning.c_str()),
-                          tr("BUT_OK") );
+    SUIT_MessageBox::warning(GetDesktop(this),
+                             tr("ERR_SCALARBAR_PARAMS"),
+                             aWarning );
   }
 }
 
@@ -3478,7 +3977,7 @@ LightApp_Displayer* VisuGUI::displayer()
 {
   if( !myDisplayer )
     myDisplayer = new VisuGUI_Displayer( getApp() );
-    
+
   return myDisplayer;
 }
 
@@ -3511,7 +4010,7 @@ void VisuGUI::OnPlot3dFromCutPlane()
      if(VISU::Prs3d_i* aPrsObject = VISU::GetPrs3dFromBase(anObjectInfo.myBase)){
        if (aPrsObject->GetType() == VISU::TCUTPLANES) {
         aCutPrs = dynamic_cast<VISU::CutPlanes_i*>(aPrsObject);
-        if (aCutPrs) 
+        if (aCutPrs)
           break;
        }
      }
@@ -3522,13 +4021,13 @@ void VisuGUI::OnPlot3dFromCutPlane()
    _PTR(SObject) aTimeStampSObj = aSObject->GetFather();
    if (SUIT_ViewManager* aViewManager = getApp()->activeViewManager()) {
      QString aViewType = aViewManager->getType();
-     bool anIsVVTK = (aViewType == VVTK_Viewer::Type());
+     //bool anIsVVTK = (aViewType == VVTK_Viewer::Type());
 
      Storable::TRestoringMap aRestoringMap = Storable::GetStorableMap(aTimeStampSObj);
      VISU::VISUType aType = VISU::Storable::RestoringMap2Type( aRestoringMap );
      if (aType != TTIMESTAMP )
        return;
-     
+
      QString aMeshName = aRestoringMap["myMeshName"];
      QString anEntity = aRestoringMap["myEntityId"];
      QString aFieldName = aRestoringMap["myFieldName"];
@@ -3536,21 +4035,21 @@ void VisuGUI::OnPlot3dFromCutPlane()
 
      int aPos;
      SUIT_ViewWindow* aViewWindow = 0;
-     if (anIsVVTK) {
-       aViewWindow = GetViewWindow<VVTK_Viewer>(this);
-       aPos = GetFreePositionOfDefaultScalarBar(this, dynamic_cast<VVTK_ViewWindow*>(aViewWindow));
-     } else {
+//      if (anIsVVTK) {
+//     aViewWindow = GetViewWindow<VVTK_Viewer>(this);
+//     aPos = GetFreePositionOfDefaultScalarBar(this, dynamic_cast<VVTK_ViewWindow*>(aViewWindow));
+//      } else {
        aViewWindow = GetViewWindow<SVTK_Viewer>(this);
        aPos = GetFreePositionOfDefaultScalarBar(this, dynamic_cast<SVTK_ViewWindow*>(GetViewWindow<SVTK_Viewer>(this)));
-     }
+       //     }
      GetResourceMgr()->setValue("VISU", "scalar_bar_position_num", aPos);
-     
-     VISU::Plot3D_i* aPrs3d = 
-       CreatePrs3dFromFactory<VISU::Plot3D_i>(this, 
-                                             aTimeStampSObj, 
-                                             aMeshName.latin1(), 
+
+     VISU::Plot3D_i* aPrs3d =
+       CreatePrs3dFromFactory<VISU::Plot3D_i>(this,
+                                             aTimeStampSObj,
+                                             (const char*)aMeshName.toLatin1(),
                                              (Entity)anEntity.toInt(),
-                                             aFieldName.latin1(), 
+                                             (const char*)aFieldName.toLatin1(),
                                              aTimeStampId.toInt(),
                                              ColoredPrs3d_i::EPublishUnderTimeStamp);
      if (aPrs3d) {
@@ -3564,7 +4063,7 @@ void VisuGUI::OnPlot3dFromCutPlane()
          double aRotY = aCutPrs->GetRotateY();
          double aPlanePos = aCutPrs->GetPlanePosition(0);
          aDlg->setPlane(aOrient, aRotX, aRotY, aPlanePos);
-           
+
          if (!(runAndWait(aDlg, 0) && (aDlg->storeToPrsObject(aPrs3d)))) {
            DeletePrs3d(this, aPrs3d);
            delete aDlg;
@@ -3577,34 +4076,20 @@ void VisuGUI::OnPlot3dFromCutPlane()
        if ( aSVtkWindow ) {
          PublishInView(this, aPrs3d, aSVtkWindow, /*highlight = */true);
          aSVtkWindow->onFitAll();
-         
+
          AddScalarBarPosition(this, aSVtkWindow, aPrs3d, aPos);
        }
+       if (aPrs3d)
+         emit presentationCreated(aPrs3d);
      }
    }
    application()->putInfo(QObject::tr("INF_DONE"));
  }
 }
 
-void VisuGUI::OnCacheProperties()
+void VisuGUI::OnManageCache()
 {
-  VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects(this);
-  if(aSelectionInfo.empty())
-    return;
-  
-  VISU::TSelectionItem aSelectionItem = aSelectionInfo.front();
-  _PTR(SObject) aSObject = aSelectionItem.myObjectInfo.mySObject;
-
-  CORBA::Object_var anObject = VISU::ClientSObjectToObject(aSObject);
-  if( CORBA::is_nil( anObject ) )
-    return;
-
-  VISU::ColoredPrs3dCache_var aCache = VISU::GetInterface<VISU::ColoredPrs3dCache>(anObject);
-  if( CORBA::is_nil( aCache ) )
-    return;
-
-  VisuGUI_CacheDlg* aDlg = new VisuGUI_CacheDlg( aCache, this );
-  aDlg->exec();
+  mySlider->show();
 }
 
 
@@ -3647,7 +4132,7 @@ void VisuGUI::OnMultiprChangeRes(VISU::Result::Resolution theResolution)
   if(aSelectionInfo.empty())
     return;
 
-  QApplication::setOverrideCursor(Qt::waitCursor);
+  QApplication::setOverrideCursor(Qt::WaitCursor);
 
   typedef SALOME::GenericObjPtr<VISU::Result_i> TResultPtr;
   typedef std::map<TResultPtr, _PTR(SObject)> TResult2SObject;
@@ -3663,7 +4148,7 @@ void VisuGUI::OnMultiprChangeRes(VISU::Result::Resolution theResolution)
     VISU::Result_var aResult = FindResult( VISU::GetSObject( aSObject ).in() );
     if(CORBA::is_nil(aResult.in()))
       continue;
-    
+
     VISU::Result_i* aCResult = dynamic_cast<VISU::Result_i*>(VISU::GetServant(aResult).in());
     if(!aCResult)
       continue;
@@ -3673,10 +4158,10 @@ void VisuGUI::OnMultiprChangeRes(VISU::Result::Resolution theResolution)
     QString aMeshName = Storable::FindValue(aRestoringMap, "myMeshName", &anIsFound);
     if(!anIsFound)
       continue;
-      
+
     std::string aPartName = aSObject->GetName();
 
-    aCResult->SetResolution(aMeshName.latin1(), aPartName.c_str(), theResolution);
+    aCResult->SetResolution(aMeshName.toLatin1().data(), aPartName.c_str(), theResolution);
 
     aResult2SObject[TResultPtr(aCResult)] = aSObject;
   }
@@ -3693,3 +4178,147 @@ void VisuGUI::OnMultiprChangeRes(VISU::Result::Resolution theResolution)
   QApplication::restoreOverrideCursor();
 }
 
+//---------------------------------------------------------------
+void VisuGUI::OnFileInfo()
+{
+  SalomeApp_Study* aStudy = dynamic_cast<SalomeApp_Study*>( getApp()->activeStudy() );
+  SUIT_DataOwnerPtrList lst;
+  getApp()->selectionMgr()->selected( lst );
+  LightApp_DataOwner* owner = dynamic_cast<LightApp_DataOwner*>( lst.first().get() );
+  VISU::TObjectInfo anObjectInfo = VISU::GetObjectByEntry( aStudy, owner->entry().toLatin1().constData() );
+  VISU::Result_i* aCResult = dynamic_cast<VISU::Result_i*>( anObjectInfo.myBase );
+  if(!aCResult)
+    return;
+  VisuGUI_FileInfoDlg dlg( getApp()->desktop(), aCResult->GetMEDFileInfo() );
+  dlg.exec();
+}
+
+//---------------------------------------------------------------
+void VisuGUI::OnExportMED()
+{
+  SalomeApp_Study* aStudy = dynamic_cast<SalomeApp_Study*>( getApp()->activeStudy() );
+  SUIT_DataOwnerPtrList lst;
+  getApp()->selectionMgr()->selected( lst );
+  LightApp_DataOwner* owner = dynamic_cast<LightApp_DataOwner*>( lst.first().get() );
+  VISU::TObjectInfo anObjectInfo = VISU::GetObjectByEntry( aStudy, owner->entry().toLatin1().constData() );
+  VISU::Result_i* aResult = dynamic_cast<VISU::Result_i*>( anObjectInfo.myBase );
+  if(!aResult)
+    return;
+  //  VisuGUI_FileInfoDlg dlg( getApp()->desktop(), aResult->GetMEDFileInfo() );
+  //  dlg.exec();
+
+  SUIT_ResourceMgr* aResourceMgr = GetResourceMgr();
+  QString aDir = aResourceMgr->stringValue("VISU","OutputDir","");
+
+  // get name for the file
+  QStringList aFilter;
+  aFilter.append("MED Files (*.med)");
+
+  std::string anInitFileName = aResult->GetInitFileName();
+  QFileInfo anInitFileInfo(anInitFileName.c_str());
+  QString aBaseName = anInitFileInfo.fileName();
+
+  QString aPath = Qtx::addSlash(aDir) + aBaseName;
+
+  QFileInfo aFileInfo =
+    SUIT_FileDlg::getFileName(GetDesktop(this),
+                             aPath,
+                             aFilter,
+                             tr("MEN_EXPORT_MED"), // "Export To Med File"
+                             false);
+
+  QString aFile = aFileInfo.filePath();
+  if ( aFile.length() > 0 ) {
+    aResult->ExportMED((const char*)aFile.toLatin1());
+  }
+}
+
+void VisuGUI::OnFilterScalars()
+{
+  VisuGUI_FilterScalarsDlg* aDlg = new VisuGUI_FilterScalarsDlg( this );
+  aDlg->show();
+}
+
+/*!
+  \brief SLOT called when "Labeling" popup menu item of presentation is clicked 
+   activates/deactivates labeling of results of the screen. This functionality works 
+   to numbering in SMESH module but is intended for showing results on the screen 
+   instead of elements numbers
+   \sa OnValuesLabelingParams()
+*/
+void VisuGUI::OnValuesLabeling()
+{
+  // to do: rewrite for several actors if necessary
+
+  VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects( this );
+  if ( aSelectionInfo.empty() )
+    return;
+
+  TSelectionItem aSelectionItem = GetSelectedObjects(this).front();
+  VISU::Prs3d_i* aPrs3d = GetPrs3dFromBase(aSelectionItem.myObjectInfo.myBase);
+  if(!aPrs3d)
+    return;
+
+  SVTK_ViewWindow* aViewWindow = GetActiveViewWindow<SVTK_ViewWindow>(this);
+  if(!aViewWindow)
+    return;
+
+  VISU_Actor* anActor = FindActor(aViewWindow, aPrs3d);
+  if(!anActor)
+    return;
+
+  if( VISU_ScalarMapAct* aScalarMapActor = dynamic_cast<VISU_ScalarMapAct*>(anActor) )
+  {
+    aScalarMapActor->SetValuesLabeled( !aScalarMapActor->GetValuesLabeled() );
+    aViewWindow->Repaint();
+  }
+  else if( VISU_GaussPtsAct* aGaussPtsAct = dynamic_cast<VISU_GaussPtsAct*>(anActor) )
+  {
+    aGaussPtsAct->SetValuesLabeled( !aGaussPtsAct->GetValuesLabeled() );
+    aViewWindow->Repaint();
+  }
+}
+
+/*!
+  \brief SLOT called when "Labeling parameters" popup menu item of presentation 
+  is clicked launch dialog box for changing parameters of labeling
+  \sa OnValuesLabeling()
+*/
+void VisuGUI::OnValuesLabelingParams()
+{
+  Handle(SALOME_InteractiveObject) anIO;
+  if ( VISU::Prs3d_i* aPrs3d = GetPrsToModify( this, anIO ) )
+    EditPrs3d<VISU::ColoredPrs3d_i, VisuGUI_ValuesLabelingDlg, 1>(this, anIO, aPrs3d);  
+}
+/*!
+  \brief Adds preferences for dfont of VTK viewer
+  \param label label
+  \param pIf group identifier
+  \param param parameter
+  \return identifier of preferences
+*/
+int VisuGUI::addVtkFontPref( 
+  const QString& label, 
+  const int pId, 
+  const QString& param, 
+  const bool useSize )
+{
+  int tfont = addPreference( label, pId, LightApp_Preferences::Font, "VISU", param );
+  
+  setPreferenceProperty( tfont, "mode", QtxFontEdit::Custom );
+
+  QStringList fam;
+  fam.append( tr( "VISU_FONT_ARIAL" ) );
+  fam.append( tr( "VISU_FONT_COURIER" ) );
+  fam.append( tr( "VISU_FONT_TIMES" ) );
+
+  setPreferenceProperty( tfont, "fonts", fam );
+
+  int f = QtxFontEdit::Family | QtxFontEdit::Bold | QtxFontEdit::Italic | QtxFontEdit::Shadow;
+  if ( useSize )
+    f |= QtxFontEdit::UserSize | QtxFontEdit::Size;
+
+  setPreferenceProperty( tfont, "features", f );
+
+  return tfont;
+}
index 8cc477c99827d516fdc70f0a946bb3c4d73dd3a6..5461c134951c2edff85a5dac68775618f9a925be 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI.h
 //  Author : Laurent CORNABE & Hubert ROLLAND
 //  Module : VISU
-//  $Header$
 
 #ifndef VisuGUI_HeaderFile
 #define VisuGUI_HeaderFile
 
-#include "SalomeApp_Module.h"
+#include <SalomeApp_Module.h>
 
-#include "SALOME_ListIO.hxx"
-#include "VISU_Prs3d_i.hh"
-#include "SVTK_ViewWindow.h"
+#include <SVTK_ViewWindow.h>
+#include <VISU_Prs3d_i.hh>
+
+#include "VisuGUI_Panel.h"
 
 #include <map>
 #include <set>
 
 class SUIT_ViewManager;
-class SVTK_ViewWindow;
-class Prs3d_i;
+class VisuGUI_Slider;
+class VisuGUI_Sweep;
 
 namespace VISU
 {
+  class Prs3d_i;
   typedef std::pair<Prs3d_i*,int> TPrs3dToInd; // prs pointer and default index of scalar bar placement
   typedef std::set<TPrs3dToInd> TSetPrs3d;
   typedef std::map<SVTK_ViewWindow*,TSetPrs3d> TViewToPrs3d;
@@ -54,7 +54,11 @@ class VisuGUI: public SalomeApp_Module
   Q_OBJECT;
 
 public:
+  enum PanelId { SelectionPanelId = 0,
+                FeatureEdgesPanelId,
+                 ClippingPlanesPanelId };
 
+public:
   VisuGUI();
   virtual ~VisuGUI();
 
@@ -67,7 +71,7 @@ public:
 
   virtual void  studyActivated();
 
-  virtual void  contextMenuPopup( const QString& theClient, QPopupMenu* theMenu, QString& theTitle );
+  virtual void  contextMenuPopup( const QString& theClient, QMenu* theMenu, QString& theTitle );
 
   virtual void createPreferences();
   virtual void preferencesChanged( const QString&, const QString& );
@@ -79,7 +83,13 @@ public:
 
   VISU::TViewToPrs3d&
   getScalarBarsMap();
-  
+
+signals:
+  void moduleDeactivated();
+  void moduleActivated();
+  void presentationCreated(VISU::Prs3d_i* thePrs);
+  void beforeObjectDelete(QString theEntry);
+
 public slots:
   virtual bool deactivateModule( SUIT_Study* );
   virtual bool activateModule( SUIT_Study* );
@@ -104,7 +114,7 @@ protected slots:
   void OnCreatePlot3D();
   void OnCreateManyMesh();
   void OnCreatePlot2dView();
-  void OnCreateScalarMapOnDeformedShape();
+  void OnCreateDeformedShapeAndScalarMap();
 
   void OnEditScalarMap();
   void OnEditDeformedShape();
@@ -114,13 +124,17 @@ protected slots:
   void OnEditVectors();
   void OnEditStreamLines();
   void OnEditPlot3D();
-  void OnEditScalarMapOnDeformedShape();
+  void OnEditDeformedShapeAndScalarMap();
 
   virtual void OnDisplayPrs();
   virtual void OnDisplayOnlyPrs();
   virtual void OnErasePrs();
   //  virtual void OnEraseAll();
 
+  void OnToggleSelectionPanel();
+  void OnSwitchSelectionMode();
+  void OnSwitchSelectionMode( int );
+
   void OnMakeSurfaceframe();
   void OnMakeInsideframe();
   void OnMakeWireframe();
@@ -128,6 +142,8 @@ protected slots:
   void OnMakePoints();
   void OnMakeShrink();
 
+  void OnMakeFeatureEdges();
+
   void OnSetShadingOn();
   void OnSetShadingOff();
 
@@ -137,6 +153,9 @@ protected slots:
   void OnChangeLines();
 
   void OnShowTable();
+  void OnShowTablePlot();
+  void OnShowScalarBar();
+  void OnHideScalarBar();
   void OnCreateTable();
   void OnDeleteObjects();
   void OnPlotData();
@@ -159,13 +178,16 @@ protected slots:
 
   void OnCopyPresentation();
 
-  void OnSelectionInfo();
-
   void OnTranslatePrs();
   void OnArrangeActors();
   void OnPlot3dFromCutPlane();
 
-  void OnCacheProperties();
+  void OnManageCache();
+
+  void OnFilterScalars();
+  
+  void OnValuesLabeling();
+  void OnValuesLabelingParams();
 
   // MULTIPR
   void OnMultiprViewFullRes();
@@ -174,6 +196,9 @@ protected slots:
   void OnMultiprViewHide();
   void OnMultiprChangeRes(VISU::Result::Resolution theResolution);
 
+  void OnFileInfo();
+  void OnExportMED();
+
 protected:
   virtual LightApp_Selection* createSelection() const;
 
@@ -184,10 +209,18 @@ private:
   void createMenus();
   void createToolBars();
   void createPopupMenus();
+  void createPanels();
+  void SetScalarBarVisibility( bool );
+  void activateAppropriateViewer( Handle(SALOME_InteractiveObject) theIO );
+  int  addVtkFontPref( const QString& label, const int pId, const QString& param, const bool useSize );
 
 private:
-  LightApp_Displayer* myDisplayer;
-  VISU::TViewToPrs3d myScalarBarsMap;
+  QMap< PanelId, VisuGUI_Panel* > myPanels;
+  VisuGUI_Slider*         mySlider;
+  VisuGUI_Sweep*          mySweep; 
+
+  LightApp_Displayer*     myDisplayer;
+  VISU::TViewToPrs3d      myScalarBarsMap;
 };
 
 #endif
index 40ef7783f5a01bda867e60353c0be85ef7fa5026..e772b39f32578e7a735e551d17873a7a12536f7f 100644 (file)
@@ -1,21 +1,23 @@
-// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-// 
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either 
-// version 2.1 of the License.
-// 
-// This library is distributed in the hope that it will be useful 
-// but WITHOUT ANY WARRANTY; without even the implied warranty of 
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-// Lesser General Public License for more details.
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// You should have received a copy of the GNU Lesser General Public  
-// License along with this library; if not, write to the Free Software 
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 #ifndef VISUGUI_ACTIONSDEF
 #define VISUGUI_ACTIONSDEF
 #define VISU_CUT_LINES              4017
 #define VISU_PLOT2D                 4018
 #define VISU_PLOT_3D                4019
-#define VISU_SCALAR_MAP_ON_DEFORMED_SHAPE 40110
+#define VISU_DEFORMED_SHAPE_AND_SCALAR_MAP 40110
 
 //#define VISU_DELETE                 4021
 #define VISU_DELETE_OBJS            4022
 
 #define VISU_SHOW_TABLE             4023
+#define VISU_EDIT_POINTMAP3D        4029
 #define VISU_CREATE_CURVES          4024
 #define VISU_EXPORT_TABLE           4025
 
@@ -55,6 +58,9 @@
 #define VISU_DISPLAY_ONLY           4032
 //#define VISU_DELETE_PRS             4033
 
+#define VISU_SHOW_SCALAR_BAR        4034
+#define VISU_HIDE_SCALAR_BAR        4035
+
 #define VISU_COPY_PRS               4037
 #define VISU_CURVE_PROPS            4040
 #define VISU_RENAME                 4041
@@ -74,6 +80,9 @@
 #define VISU_SHRINK                 4055
 #define VISU_UNSHRINK               4056
 
+#define VISU_FEATURE_EDGES          4091
+#define VISU_FEATURE_EDGES_DISABLE  4092
+
 #define VISU_SHADING                4083
 #define VISU_NOSHADING              4084
 
 #define VISU_EDIT_VECTORS           40625
 #define VISU_EDIT_STREAMLINES       40626
 #define VISU_EDIT_PLOT3D            40627
-#define VISU_EDIT_SCALARMAPONDEFORMEDSHAPE     40628
+#define VISU_EDIT_DEFORMEDSHAPEANDSCALARMAP     40628
 
 #define VISU_EDIT_PRS               4062
 #define VISU_CREATE_TABLE           4063
 
 #define VISU_PLOT3D_FROM_CUTPLANE   4085
 
-#define VISU_CACHE_PROPERTIES       4090
+#define VISU_MANAGE_CACHE           4090
 
 // MULTIPR
 #define VISU_MULTIPR_FULL_RES       4095
 #define VISU_MULTIPR_LOW_RES        4097
 #define VISU_MULTIPR_HIDE           4098
 
+#define VISU_FILE_INFO              4100
+#define VISU_EXPORT_MED             4101
+
+#define VISU_SELECTION_PANEL        4102
+#define VISU_ACTOR_SELECTION        4103
+#define VISU_CELL_SELECTION         4104
+#define VISU_POINT_SELECTION        4105
+#define VISU_GAUSS_POINT_SELECTION  4106
+
+#define VISU_SLIDER_PANEL           4200
+#define VISU_SWEEP_PANEL            4300
+#define VISU_FILTERSCALARS          4301
+
+#define VISU_VALUES_LABELING        4302
+#define VISU_VALUES_LABELING_PARAMS 4303
+
+
 #endif
diff --git a/src/VISUGUI/VisuGUI_BasePanel.cxx b/src/VISUGUI/VisuGUI_BasePanel.cxx
new file mode 100755 (executable)
index 0000000..6b49e5c
--- /dev/null
@@ -0,0 +1,249 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
+//  File   : VisuGUI_BasePanel.cxx
+//  Author : Oleg Uvarov
+//  Module : VISU
+//
+#include "VisuGUI_BasePanel.h"
+#include "VisuGUI_Tools.h"
+
+#include "SUIT_ResourceMgr.h"
+
+#include <QScrollArea>
+#include <QHBoxLayout>
+#include <QVBoxLayout>
+#include <QApplication>
+#include <QPushButton>
+//#include <QToolButton>
+
+/*!
+  \class MainFrame
+  \internal
+  \brief Frame inserted in viewport with redefined sizeHint method 
+         in order to avoid unreasonable increasing of viewport size
+*/
+class VisuGUI_BasePanel::MainFrame : public QFrame
+{
+public:
+  /*!
+    \brief Constructor.
+    \param theParent parent widget
+  */
+  MainFrame( QWidget* theParent = 0 )
+  : QFrame( theParent )
+  {
+  }
+  
+  /*!
+    \brief Gets frame size hint
+    \return frame size hint
+  */
+  virtual QSize sizeHint() const
+  {
+    return minimumSizeHint();
+  }
+};
+
+/*!
+  \class VisuGUI_BasePanel
+  \brief Base class for VISU interactive sub-panels.
+
+  Set of classes is derived from this class and are intended for representing widgets 
+  (GUI controls) for different operations. VisuGUI_BasePanel consists of main frame 
+  inserted in scroll view and four push buttons. So all widgets of derived sub-panels 
+  should be inherited from mainframe() instead of \93this\94 pointer.
+*/
+
+/*!
+  \brief Constructor creates panels look and feel
+  \param theName name of the panel
+  \param theParent parent widget
+*/
+VisuGUI_BasePanel::VisuGUI_BasePanel( const QString& theName, 
+                                     QWidget* theParent,
+                                      const int theBtns  )
+  : QGroupBox( theName, theParent ),
+    myOK( 0 ),
+    myApply( 0 ),
+    myClose( 0 ),
+    myHelp( 0 )
+{
+  // Create scroll view
+  myView = new QScrollArea( this );
+
+  // Create main frame
+  myMainFrame = new MainFrame( myView );
+  myMainFrame->setFrameStyle( QFrame::Plain | QFrame::NoFrame );
+  
+  myView->setWidget( myMainFrame );
+  myView->setAlignment( Qt::AlignCenter );
+  myView->setWidgetResizable( true );
+  myView->setMinimumWidth( myMainFrame->sizeHint().width() + 22 );
+  
+  // Create buttons
+  QWidget* aBtnWg = new QWidget( this );
+  QHBoxLayout* aBtnWgLayout = new QHBoxLayout( aBtnWg );
+  //aBtnWgLayout->setSpacing( 5 );
+
+  aBtnWgLayout->addStretch();
+
+  if( theBtns & OKBtn )
+  {
+    //myOK = new QToolButton( aBtnWg );
+    //myOK->setIcon( VISU::GetResourceMgr()->loadPixmap("VISU", tr( "ICON_OK" ) ) );
+    myOK = new QPushButton( tr( "BUT_OK" ), aBtnWg );
+    aBtnWgLayout->addWidget( myOK );
+    connect( myOK, SIGNAL( clicked() ), SLOT( onOK() ) );
+  }
+  if( theBtns & ApplyBtn )
+  {
+    //myApply = new QToolButton( aBtnWg );
+    //myApply->setIcon( VISU::GetResourceMgr()->loadPixmap("VISU", tr( "ICON_APPLY" ) ) );
+    myApply = new QPushButton( tr( "BUT_APPLY" ), aBtnWg );
+    aBtnWgLayout->addWidget( myApply );
+    connect( myApply, SIGNAL( clicked() ), SLOT( onApply() ) );
+  }
+  if( theBtns & CloseBtn )
+  {
+    //myClose = new QToolButton( aBtnWg );
+    //myClose->setIcon( VISU::GetResourceMgr()->loadPixmap("VISU", tr( "ICON_CLOSE" ) ) );
+    myClose = new QPushButton( tr( "BUT_CLOSE" ), aBtnWg );
+    aBtnWgLayout->addWidget( myClose );
+    connect( myClose, SIGNAL( clicked() ), SLOT( onClose() ) );
+  }
+  if( theBtns & HelpBtn )
+  {
+    //myHelp = new QToolButton( aBtnWg );
+    //myHelp->setIcon( VISU::GetResourceMgr()->loadPixmap("VISU", tr( "ICON_HELP" ) ) );
+    myHelp = new QPushButton( tr( "BUT_HELP" ), aBtnWg );
+    aBtnWgLayout->addWidget( myHelp );
+    connect( myHelp, SIGNAL( clicked() ), SLOT( onHelp() ) );
+  }
+
+  aBtnWgLayout->addStretch();
+
+  // fill layout
+  QVBoxLayout* aLay = new QVBoxLayout( this );
+  aLay->setContentsMargins( 0, 0, 0, 0 );
+  //aLay->setSpacing( 5 );
+  aLay->addWidget( myView, 1 );
+  aLay->addWidget( aBtnWg );
+}
+
+/*!
+  \brief Destructor
+*/
+VisuGUI_BasePanel::~VisuGUI_BasePanel()
+{
+}
+
+/*!
+  \brief Verifies validity of input data
+
+  This virtual method should be redefined in derived classes. Usually operator 
+  corresponding to the sub-panel calls this method to check validity of input 
+  data when Apply/OK button is pressed.
+
+  \param theErrMsg Error message. 
+  
+        If data is invalid when panel can return message using this parameter given 
+        clear explanation what is wrong
+
+  \return TRUE if data is valid, FALSE otherwise 
+*/
+bool VisuGUI_BasePanel::isValid( QString& /*theErrMsg*/ )
+{
+  return true;
+}
+/*!
+  \brief Virtual methods should be redefined in derived classes and 
+         clears all GUI controls
+*/
+void VisuGUI_BasePanel::clear()
+{
+}
+
+/*!
+  \brief Virtual slot called when \93OK\94 button pressed emits corresponding signal.
+
+  This slot moves focus in OK button before emitting signal. Mainly it provides 
+  application with correct moving data from currently edited controls to internal 
+  structure. For example QTable moves data from cell editor to table item when 
+  focus is out.
+
+*/
+void VisuGUI_BasePanel::onOK()
+{
+  if ( myOK )
+  {
+    myOK->setFocus();
+    qApp->processEvents();
+  }
+  emit bpOk();
+}
+
+/*!
+  \brief Virtual slot called when \93Apply\94 button pressed emits corresponding signal.
+  \sa onOK
+*/
+void VisuGUI_BasePanel::onApply()
+{
+  if ( myApply )
+  {
+    myApply->setFocus();
+    qApp->processEvents();
+  }
+  emit bpApply();
+}
+
+/*!
+  \brief Virtual slot called when \93Close\94 button pressed emits corresponding signal.
+  \sa onOK
+*/
+void VisuGUI_BasePanel::onClose()
+{
+  if ( myClose )
+    myClose->setFocus();
+  emit bpClose();
+}
+
+/*!
+  \brief Virtual slot called when \93Help\94 button pressed emits corresponding signal.
+  \sa onOK
+*/
+void VisuGUI_BasePanel::onHelp()
+{
+  if ( myHelp )
+    myHelp->setFocus();
+  emit bpHelp();
+}
+
+/*!
+  \brief Gets frame inserted in scroll view. All controls of derived 
+         panels should use it as parent
+  \return QFrame* object 
+*/
+QFrame* VisuGUI_BasePanel::mainFrame()
+{
+  return myMainFrame;
+}
diff --git a/src/VISUGUI/VisuGUI_BasePanel.h b/src/VISUGUI/VisuGUI_BasePanel.h
new file mode 100755 (executable)
index 0000000..f961c21
--- /dev/null
@@ -0,0 +1,81 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
+//  File   : VisuGUI_BasePanel.cxx
+//  Author : Oleg Uvarov
+//  Module : VISU
+//
+#ifndef VISUGUI_BASEPANEL_H
+#define VISUGUI_BASEPANEL_H
+
+#include <QGroupBox>
+
+class QScrollArea;
+class QPushButton;
+
+class VisuGUI_BasePanel : public QGroupBox
+{
+  Q_OBJECT
+
+  class MainFrame;
+
+public:
+  enum { OKBtn      = 0x0001,
+         ApplyBtn   = 0x0002,
+         CloseBtn   = 0x0004,
+         HelpBtn    = 0x0008, 
+         AllBtn = OKBtn | ApplyBtn | CloseBtn | HelpBtn
+  };
+
+public:
+  VisuGUI_BasePanel( const QString& theName, QWidget* theParent, const int theBtns = AllBtn ); 
+  virtual ~VisuGUI_BasePanel();
+
+  virtual bool              isValid( QString& theMessage );
+  virtual void              clear();
+
+signals:
+  void                      bpOk();
+  void                      bpApply();
+  void                      bpClose();
+  void                      bpHelp();
+
+protected slots:
+  virtual void              onOK();
+  virtual void              onApply();
+  virtual void              onClose();
+  virtual void              onHelp();
+
+protected:
+  QFrame*                   mainFrame();
+
+protected:
+  QScrollArea*              myView;
+  QFrame*                   myMainFrame;
+
+  QPushButton*              myOK;
+  QPushButton*              myApply;
+  QPushButton*              myClose;
+  QPushButton*              myHelp;
+};
+
+#endif
index 822caab752cde27823ed93cac3f36f2026bf69e0..210bbcdd5d52b982555de98f82967f2edba7ea77 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_BuildProgressDlg.cxx
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #include "VisuGUI_BuildProgressDlg.h"
 
 #include "VisuGUI.h"
 
 #include <vtkTimerLog.h>
 
-#include <qcheckbox.h>
-#include <qgroupbox.h>
-#include <qlabel.h>
-#include <qlayout.h>
-#include <qlcdnumber.h>
-#include <qlineedit.h>
-#include <qpushbutton.h>
-#include <qtimer.h>
+#include <QCheckBox>
+#include <QGroupBox>
+#include <QLabel>
+#include <QLayout>
+#include <QLCDNumber>
+#include <QLineEdit>
+#include <QPushButton>
+#include <QTimer>
+#include <QKeyEvent>
 
 /*!
  * Constructor
  */
 VisuGUI_BuildProgressDlg::VisuGUI_BuildProgressDlg( QWidget* theParent ):
-  QDialog( theParent, 
-          "VisuGUI_BuildProgressBar", 
-          false,
-          WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu | WDestructiveClose),
+  QDialog( theParent, Qt::WindowTitleHint | Qt::WindowSystemMenuHint),
   myIsRaiseColor( false )
 {
-  setCaption( tr( "DLG_BUILD_PROGRESS_TITLE" ) );
+  setAttribute( Qt::WA_DeleteOnClose );
+  setWindowTitle( tr( "DLG_BUILD_PROGRESS_TITLE" ) );
 
   SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
 
   QVBoxLayout* aTopLayout = new QVBoxLayout( this );
   aTopLayout->setSpacing( 6 );
   aTopLayout->setMargin( 6 );
-  aTopLayout->setAutoAdd( true );
+  //aTopLayout->setAutoAdd( true );
 
   // Settings
   mySettingsBox = new QGroupBox( tr( "IMPORT_SETTINGS" ), this );
-  mySettingsBox->setColumnLayout( 0, Qt::Vertical );
-  mySettingsBox->layout()->setSpacing( 0 );
-  mySettingsBox->layout()->setMargin( 0 );
+  aTopLayout->addWidget( mySettingsBox );
+  //mySettingsBox->setColumnLayout( 0, Qt::Vertical );
+  //mySettingsBox->layout()->setSpacing( 0 );
+  //mySettingsBox->layout()->setMargin( 0 );
 
-  QGridLayout* aSettingsLayout = new QGridLayout( mySettingsBox->layout() );
+  QGridLayout* aSettingsLayout = new QGridLayout( mySettingsBox );
   aSettingsLayout->setSpacing( 6 );
   aSettingsLayout->setMargin( 11 );
 
@@ -99,7 +98,7 @@ VisuGUI_BuildProgressDlg::VisuGUI_BuildProgressDlg( QWidget* theParent ):
   myCloseCheckBox->setChecked( aResourceMgr->booleanValue( "VISU", "close_at_finish", true ) );
 
   aSettingsLayout->addWidget(  aFileNameLabel,       0, 0 );
-  aSettingsLayout->addMultiCellWidget( myFileNameLineEdit, 1, 1, 0, 1 );
+  aSettingsLayout->addWidget( myFileNameLineEdit,    1, 0, 1, 2 );
   //aSettingsLayout->addWidget(  aFileNameButton,      1, 2 );
   aSettingsLayout->addWidget( myBuildAllCheckBox,    2, 0 );
   aSettingsLayout->addWidget( myBuildAtOnceCheckBox, 3, 0 );
@@ -107,11 +106,12 @@ VisuGUI_BuildProgressDlg::VisuGUI_BuildProgressDlg( QWidget* theParent ):
 
   // Progress
   myProgressBox = new QGroupBox( tr( "IMPORT_PROGRESS" ), this );
-  myProgressBox->setColumnLayout( 0, Qt::Vertical );
-  myProgressBox->layout()->setSpacing( 0 );
-  myProgressBox->layout()->setMargin( 0 );
+  aTopLayout->addWidget( myProgressBox );
+  //myProgressBox->setColumnLayout( 0, Qt::Vertical );
+  //myProgressBox->layout()->setSpacing( 0 );
+  //myProgressBox->layout()->setMargin( 0 );
 
-  QGridLayout* aProgressLayout = new QGridLayout( myProgressBox->layout() );
+  QGridLayout* aProgressLayout = new QGridLayout( myProgressBox );
   aProgressLayout->setSpacing( 6 );
   aProgressLayout->setMargin( 11 );
 
@@ -119,14 +119,19 @@ VisuGUI_BuildProgressDlg::VisuGUI_BuildProgressDlg( QWidget* theParent ):
   myBuildEntitiesButton = new QPushButton( myProgressBox );
   myBuildEntitiesButton->setEnabled( false );
   myBuildEntitiesButton->setFixedSize( 30, 30 );
-  myBuildEntitiesButton->setPaletteBackgroundColor( Qt::red );
+  QPalette aPal = myBuildEntitiesButton->palette();
+  aPal.setColor( myBuildEntitiesButton->backgroundRole(), Qt::red );
+  myBuildEntitiesButton->setPalette( aPal );
 
   myBuildFieldsCheckBox = new QCheckBox( tr( "BUILD_FIELDS" ), myProgressBox );
   myBuildFieldsCheckBox->setChecked( aResourceMgr->booleanValue( "VISU", "build_fields", true ) );
   myBuildFieldsButton = new QPushButton( myProgressBox );
   myBuildFieldsButton->setEnabled( false );
   myBuildFieldsButton->setFixedSize( 30, 30 );
-  myBuildFieldsButton->setPaletteBackgroundColor( Qt::red );
+  aPal = myBuildFieldsButton->palette();
+  aPal.setColor( myBuildFieldsButton->backgroundRole(), Qt::red );
+  myBuildFieldsButton->setPalette( aPal );
+
   connect( myBuildFieldsCheckBox, SIGNAL( clicked() ), this, SLOT( onBuildCheckBoxClicked() ) );
 
   myBuildMinMaxCheckBox = new QCheckBox( tr( "BUILD_MINMAX" ), myProgressBox );
@@ -134,7 +139,10 @@ VisuGUI_BuildProgressDlg::VisuGUI_BuildProgressDlg( QWidget* theParent ):
   myBuildMinMaxButton = new QPushButton( myProgressBox );
   myBuildMinMaxButton->setEnabled( false );
   myBuildMinMaxButton->setFixedSize( 30, 30 );
-  myBuildMinMaxButton->setPaletteBackgroundColor( Qt::red );
+  aPal = myBuildMinMaxButton->palette();
+  aPal.setColor( myBuildMinMaxButton->backgroundRole(), Qt::red );
+  myBuildMinMaxButton->setPalette( aPal );
+  
   connect( myBuildMinMaxCheckBox, SIGNAL( clicked() ), this, SLOT( onBuildCheckBoxClicked() ) );
 
   myBuildGroupsCheckBox = new QCheckBox( tr( "BUILD_GROUPS" ), myProgressBox );
@@ -142,7 +150,10 @@ VisuGUI_BuildProgressDlg::VisuGUI_BuildProgressDlg( QWidget* theParent ):
   myBuildGroupsButton = new QPushButton( myProgressBox );
   myBuildGroupsButton->setEnabled( false );
   myBuildGroupsButton->setFixedSize( 30, 30 );
-  myBuildGroupsButton->setPaletteBackgroundColor( Qt::red );
+  aPal = myBuildGroupsButton->palette();
+  aPal.setColor( myBuildGroupsButton->backgroundRole(), Qt::red );
+  myBuildGroupsButton->setPalette( aPal );
+
   connect( myBuildGroupsCheckBox, SIGNAL( clicked() ), this, SLOT( onBuildCheckBoxClicked() ) );
 
   aProgressLayout->addWidget( aBuildEntitiesLabel, 0, 0 );
@@ -155,12 +166,15 @@ VisuGUI_BuildProgressDlg::VisuGUI_BuildProgressDlg( QWidget* theParent ):
   aProgressLayout->addWidget( myBuildGroupsButton,     3, 1 );
 
   // Time
+  myTime = QTime( 0, 0, 0, 0 );
+
   myTimeBox = new QGroupBox( tr( "IMPORT_TIME" ), this );
-  myTimeBox->setColumnLayout( 0, Qt::Vertical );
-  myTimeBox->layout()->setSpacing( 0 );
-  myTimeBox->layout()->setMargin( 0 );
+  aTopLayout->addWidget( myTimeBox );
+  //myTimeBox->setColumnLayout( 0, Qt::Vertical );
+  //myTimeBox->layout()->setSpacing( 0 );
+  //myTimeBox->layout()->setMargin( 0 );
 
-  QGridLayout* aTimeLayout = new QGridLayout( myTimeBox->layout() );
+  QGridLayout* aTimeLayout = new QGridLayout( myTimeBox );
   aTimeLayout->setSpacing( 6 );
   aTimeLayout->setMargin( 11 );
 
@@ -168,8 +182,12 @@ VisuGUI_BuildProgressDlg::VisuGUI_BuildProgressDlg( QWidget* theParent ):
 
   myTimeLCDNumber = new QLCDNumber( myTimeBox );
   myTimeLCDNumber->setSegmentStyle( QLCDNumber::Filled );
-  myTimeLCDNumber->setPaletteBackgroundColor( Qt::black );
-  myTimeLCDNumber->setPaletteForegroundColor( Qt::white );
+  myTimeLCDNumber->setStyleSheet( "color: white; background-color: black" );
+  //QPalette aPal = myTimeLCDNumber->palette();
+  //aPal.setColor( myTimeLCDNumber->backgroundRole(), Qt::black );
+  //aPal.setColor( myTimeLCDNumber->foregroundRole(), Qt::white );
+  //myTimeLCDNumber->setPalette( aPal );
+    
   myTimeLCDNumber->setNumDigits( 8 );
   myTimeLCDNumber->display( myTime.toString( "hh:mm:ss.zzz" ) );
 
@@ -178,10 +196,11 @@ VisuGUI_BuildProgressDlg::VisuGUI_BuildProgressDlg( QWidget* theParent ):
 
   // Start / Close
   QGroupBox* CommonGroup = new QGroupBox( this );
-  CommonGroup->setColumnLayout(0, Qt::Vertical );
-  CommonGroup->layout()->setSpacing( 0 );
-  CommonGroup->layout()->setMargin( 0 );
-  QGridLayout* CommonGroupLayout = new QGridLayout( CommonGroup->layout() );
+  aTopLayout->addWidget( CommonGroup );
+  //CommonGroup->setColumnLayout(0, Qt::Vertical );
+  //CommonGroup->layout()->setSpacing( 0 );
+  //CommonGroup->layout()->setMargin( 0 );
+  QGridLayout* CommonGroupLayout = new QGridLayout( CommonGroup );
   CommonGroupLayout->setAlignment( Qt::AlignTop );
   CommonGroupLayout->setSpacing( 6 );
   CommonGroupLayout->setMargin( 11 );
@@ -223,13 +242,13 @@ void VisuGUI_BuildProgressDlg::onStart()
   if( myFileName.isNull() )
     return;
 
-  myResult = myGenerator->CreateResult( myFileName );
+  myResult = myGenerator->CreateResult( (const char*)myFileName.toLatin1() );
 
   if (CORBA::is_nil(myResult.in())) {
-    SUIT_MessageBox::warn1(this,
-                          tr("WRN_VISU"),
-                          tr("ERR_ERROR_IN_THE_FILE"),
-                          tr("BUT_OK"));
+    SUIT_MessageBox::warning(this,
+                             tr("WRN_VISU"),
+                             tr("ERR_ERROR_IN_THE_FILE"),
+                             tr("BUT_OK"));
     onClose();
   }else{
     myResult->SetBuildFields( myBuildFieldsCheckBox->isChecked(), myBuildMinMaxCheckBox->isChecked() );
@@ -242,7 +261,7 @@ void VisuGUI_BuildProgressDlg::onStart()
     bool aBuildAtOnce = myBuildAtOnceCheckBox->isChecked();
     if( aBuildAtOnce )
     {
-      QApplication::setOverrideCursor( Qt::waitCursor );
+      QApplication::setOverrideCursor( Qt::WaitCursor );
       myCurrentTime = vtkTimerLog::GetCurrentTime();
     }
 
@@ -274,10 +293,10 @@ void VisuGUI_BuildProgressDlg::onHelp()
 #else
                platform = "application";
 #endif
-    SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"),
-                          QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
-                          arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
-                          QObject::tr("BUT_OK"));
+    SUIT_MessageBox::warning(0, ("WRN_WARNING"),
+                             tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                             arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
+                             tr("BUT_OK"));
   }
 }
 
@@ -330,6 +349,11 @@ void VisuGUI_BuildProgressDlg::onTimer()
 
       if( aBuildAtOnce )
       {
+       updateButton( myBuildEntitiesButton, true );
+       updateButton( myBuildFieldsButton, true );
+       updateButton( myBuildMinMaxButton, true );
+       updateButton( myBuildGroupsButton, true );
+
        QApplication::restoreOverrideCursor();
 
        QTime aTime;
@@ -343,7 +367,10 @@ void VisuGUI_BuildProgressDlg::onTimer()
       if( myCloseCheckBox->isChecked() )
        done( 0 );
       else
-       SUIT_MessageBox::warn1( this, tr( "INF_VISU" ), tr( "IMPORT_DONE" ), tr( "BUT_OK" ) );
+       SUIT_MessageBox::warning( this,
+                                  tr( "INF_VISU" ),
+                                  tr( "IMPORT_DONE" ),
+                                  tr( "BUT_OK" ) );
     }
   }
   catch( ... ) {
@@ -353,7 +380,8 @@ void VisuGUI_BuildProgressDlg::onTimer()
 
 void VisuGUI_BuildProgressDlg::updateButton( QPushButton* theButton, bool theIsDone )
 {
-  QColor aCurrentColor = theButton->paletteBackgroundColor();
+  QPalette aPal = theButton->palette();
+  QColor aCurrentColor = aPal.color( theButton->backgroundRole() );
   if( aCurrentColor == Qt::gray || aCurrentColor == Qt::green )
     return;
 
@@ -370,10 +398,10 @@ void VisuGUI_BuildProgressDlg::updateButton( QPushButton* theButton, bool theIsD
 
     int gNew = g + ( myIsRaiseColor ? 1 : -1 ) * 51;
 
-    aNewColor.setRgb( 255, gNew, 0 );
+    aNewColor.setRgb( 255, gNew, 0 );    
   }
-
-  theButton->setPaletteBackgroundColor( aNewColor );
+  aPal.setColor( theButton->backgroundRole(), aNewColor );
+  theButton->setPalette( aPal );
 }
 
 void VisuGUI_BuildProgressDlg::done( int r )
@@ -405,18 +433,26 @@ void VisuGUI_BuildProgressDlg::onBuildCheckBoxClicked()
   }
   else if( aCheckBox == myBuildFieldsCheckBox )
   {
-    myBuildFieldsButton->setPaletteBackgroundColor( aColor );
+    QPalette aPal = myBuildFieldsButton->palette();
+    aPal.setColor( myBuildFieldsButton->backgroundRole(), aColor );
+    myBuildFieldsButton->setPalette( aPal );
     if( !anIsChecked && myBuildMinMaxCheckBox->isChecked() )
       myBuildMinMaxCheckBox->animateClick();
   }
   else if( aCheckBox == myBuildMinMaxCheckBox )
   {
-    myBuildMinMaxButton->setPaletteBackgroundColor( aColor );
+    QPalette aPal = myBuildMinMaxButton->palette();
+    aPal.setColor( myBuildMinMaxButton->backgroundRole(), aColor );
+    myBuildMinMaxButton->setPalette( aPal );
     if( anIsChecked && !myBuildFieldsCheckBox->isChecked() )
       myBuildFieldsCheckBox->animateClick();
   }
   else if( aCheckBox == myBuildGroupsCheckBox )
-    myBuildGroupsButton->setPaletteBackgroundColor( aColor );
+  {
+    QPalette aPal = myBuildGroupsButton->palette();
+    aPal.setColor( myBuildGroupsButton->backgroundRole(), aColor );
+    myBuildGroupsButton->setPalette( aPal );
+  }
 
 }
 
@@ -435,7 +471,7 @@ void VisuGUI_BuildProgressDlg::keyPressEvent( QKeyEvent* e )
   if ( e->isAccepted() )
     return;
 
-  if ( e->key() == Key_F1 )
+  if ( e->key() == Qt::Key_F1 )
     {
       e->accept();
       onHelp();
index 8284c52df99f15c9f709c2bc9d5f075b566ac573..d125a63735e91039e8d9f47258fe184eb324d7cb 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_BuildProgressDlg.h
 //  Author : Oleg UVAROV
 //  Module : VISU
 //  $Header$
-
+//
 #ifndef VISUGUI_BUILDPROGRESSDLG_H
 #define VISUGUI_BUILDPROGRESSDLG_H
 
 #include "VISU_Gen_i.hh"
 
-#include <qdatetime.h>
-#include <qdialog.h>
+#include <QDateTime>
+#include <QDialog>
 
 class QCheckBox;
 class QGroupBox;
@@ -41,6 +40,7 @@ class QLineEdit;
 class QPushButton;
 class QTimer;
 
+
 //! Build Progress Dialog.
 class VisuGUI_BuildProgressDlg : public QDialog
 {
@@ -90,7 +90,7 @@ private:
 
   QGroupBox*       myProgressBox;
 
-  QPushButton*     myBuildEntitiesButton;
+  QPushButton*  myBuildEntitiesButton;
 
   QCheckBox*       myBuildFieldsCheckBox;
   QPushButton*     myBuildFieldsButton;
index 9e8a9bd54046d39e6f1ba7e1915e61cc5bc183cf..050ee390a1bcf3466cf741724f61b37ce4507f31 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_CacheDlg.cxx
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #include "VisuGUI_CacheDlg.h"
 
 #include "VisuGUI_Tools.h"
 #include "SUIT_Desktop.h"
 #include "SUIT_MessageBox.h"
 #include "SUIT_Session.h"
+#include "SUIT_ResourceMgr.h"
 
 #include "SalomeApp_Module.h"
 
 #include "LightApp_Application.h"
 
-#include "QtxDblSpinBox.h"
+#include "QtxDoubleSpinBox.h"
 
-#include <qbuttongroup.h>
-#include <qgroupbox.h>
-#include <qlabel.h>
-#include <qlayout.h>
-#include <qlineedit.h>
-#include <qpushbutton.h>
-#include <qradiobutton.h>
+#include <QButtonGroup>
+#include <QGroupBox>
+#include <QLabel>
+#include <QLayout>
+#include <QLineEdit>
+#include <QPushButton>
+#include <QRadioButton>
 
 using namespace std;
 
 VisuGUI_CacheDlg::VisuGUI_CacheDlg( VISU::ColoredPrs3dCache_var theCache,
                                    SalomeApp_Module* theModule )
-  : QDialog( VISU::GetDesktop( theModule ), "VisuGUI_CacheDlg", true,
-            WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu | WDestructiveClose ),
+  : QDialog( VISU::GetDesktop( theModule ), Qt::WindowTitleHint | Qt::WindowSystemMenuHint ),
     myCache( theCache )
 {
-  setCaption( tr( "CACHE_TITLE" ) );
+  setModal( true );
+  setWindowTitle( tr( "CACHE_TITLE" ) );
+  setAttribute( Qt::WA_DeleteOnClose );
 
   QVBoxLayout* aTopLayout = new QVBoxLayout( this );
   aTopLayout->setSpacing( 6 );
   aTopLayout->setMargin( 6 );
-  aTopLayout->setAutoAdd( true );
+  //aTopLayout->setAutoAdd( true );
 
   long aMb = 1024 * 1024;
   bool isLimitedMemory = myCache->GetMemoryMode() == VISU::ColoredPrs3dCache::LIMITED;
   double aLimitedMemory = myCache->GetLimitedMemory();
-  double aFreeMemory = (double)VISU_PipeLine::GetAvailableMemory( 2048 * aMb ) / (double)aMb;
+  double aFreeMemory = (double)VISU_PipeLine::GetAvailableMemory( 8192 * aMb ) / (double)aMb;
   double anUsedMemory = myCache->GetMemorySize();
   double aLimitedMemoryMax = 
 #ifdef WNT
@@ -78,29 +79,37 @@ VisuGUI_CacheDlg::VisuGUI_CacheDlg( VISU::ColoredPrs3dCache_var theCache,
          (anUsedMemory + aFreeMemory, aLimitedMemory);
 
   // Settings
-  QButtonGroup* aMemoryGroup = new QButtonGroup( 2, Qt::Vertical, tr( "MEMORY_MODE" ), this );
-  aMemoryGroup->setRadioButtonExclusive( true );
+  QButtonGroup* aMemoryGroup = new QButtonGroup(  this );
+  QGroupBox* aGB = new QGroupBox( tr( "MEMORY_MODE" ), this );
+  aTopLayout->addWidget( aGB );
+  QGridLayout* aGridLay = new QGridLayout( aGB );
+  //aMemoryGroup->setRadioButtonExclusive( true );
 
-  myLimitedMemoryButton = new QRadioButton( tr( "LIMITED_MEMORY" ), aMemoryGroup );
+  myLimitedMemoryButton = new QRadioButton( tr( "LIMITED_MEMORY" ), aGB );
   myLimitedMemoryButton->setChecked( isLimitedMemory );
+  aGridLay->addWidget( myLimitedMemoryButton, 0, 0 );
 
-  myMimimalMemoryButton = new QRadioButton( tr( "MINIMAL_MEMORY" ), aMemoryGroup );
+  myMimimalMemoryButton = new QRadioButton( tr( "MINIMAL_MEMORY" ), aGB );
   myMimimalMemoryButton->setChecked( !isLimitedMemory );
+  aGridLay->addWidget( myMimimalMemoryButton, 1, 0 );
 
-  myLimitedMemory = new QtxDblSpinBox( 1.0, aLimitedMemoryMax, 10.0, aMemoryGroup );
+  myLimitedMemory = new QtxDoubleSpinBox( 1.0, aLimitedMemoryMax, 10.0, aGB );
   myLimitedMemory->setSuffix( " Mb" );
   myLimitedMemory->setValue( aLimitedMemory );
   myLimitedMemory->setEnabled( isLimitedMemory );
+  aGridLay->addWidget( myLimitedMemory, 0, 1 );
+  
 
   connect( myLimitedMemoryButton, SIGNAL( toggled( bool ) ), myLimitedMemory, SLOT( setEnabled( bool ) ) );
 
   // Current state
   QGroupBox* aStateGroup = new QGroupBox( tr( "MEMORY STATE" ), this );
-  aStateGroup->setColumnLayout( 0, Qt::Vertical );
-  aStateGroup->layout()->setSpacing( 0 );
-  aStateGroup->layout()->setMargin( 0 );
+  aTopLayout->addWidget( aStateGroup );
+  //aStateGroup->setColumnLayout( 0, Qt::Vertical );
+  //aStateGroup->layout()->setSpacing( 0 );
+  //aStateGroup->layout()->setMargin( 0 );
 
-  QGridLayout* aStateLayout = new QGridLayout( aStateGroup->layout(), 2, 2 );
+  QGridLayout* aStateLayout = new QGridLayout( aStateGroup );
   aStateLayout->setSpacing(6);
   aStateLayout->setMargin(6);
 
@@ -109,14 +118,20 @@ VisuGUI_CacheDlg::VisuGUI_CacheDlg( VISU::ColoredPrs3dCache_var theCache,
   myUsedMemory->setText( QString::number( anUsedMemory ) + " Mb" );
   myUsedMemory->setReadOnly( true );
   myUsedMemory->setEnabled( false );
-  myUsedMemory->setPaletteForegroundColor( Qt::black );
+  QPalette aPal = myUsedMemory->palette();
+  aPal.setColor( myUsedMemory->foregroundRole(), Qt::black );
+  myUsedMemory->setPalette( aPal );
+  //myUsedMemory->setPaletteForegroundColor( Qt::black );
 
   QLabel* aFreeMemoryLabel = new QLabel( tr( "FREE" ), aStateGroup );
   myFreeMemory = new QLineEdit( aStateGroup );
   myFreeMemory->setText( QString::number( aFreeMemory ) + " Mb" );
   myFreeMemory->setReadOnly( true );
   myFreeMemory->setEnabled( false );
-  myFreeMemory->setPaletteForegroundColor( Qt::black );
+  aPal = myFreeMemory->palette();
+  aPal.setColor( myFreeMemory->foregroundRole(), Qt::black );
+  myFreeMemory->setPalette( aPal );
+  //myFreeMemory->setPaletteForegroundColor( Qt::black );
 
   aStateLayout->addWidget( aUsedMemoryLabel, 0, 0 );
   aStateLayout->addWidget( myUsedMemory, 0, 1 );
@@ -124,26 +139,27 @@ VisuGUI_CacheDlg::VisuGUI_CacheDlg( VISU::ColoredPrs3dCache_var theCache,
   aStateLayout->addWidget( myFreeMemory, 1, 1 );
 
   // Ok / Cancel
-  QGroupBox* GroupButtons = new QGroupBox( this, "GroupButtons" );
-  GroupButtons->setColumnLayout(0, Qt::Vertical );
-  GroupButtons->layout()->setSpacing( 0 );
-  GroupButtons->layout()->setMargin( 0 );
-  QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons->layout() );
+  QGroupBox* GroupButtons = new QGroupBox( this );
+  aTopLayout->addWidget( GroupButtons );
+  //GroupButtons->setColumnLayout(0, Qt::Vertical );
+  //GroupButtons->layout()->setSpacing( 0 );
+  //GroupButtons->layout()->setMargin( 0 );
+  QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons );
   GroupButtonsLayout->setAlignment( Qt::AlignTop );
   GroupButtonsLayout->setSpacing( 6 );
   GroupButtonsLayout->setMargin( 11 );
 
-  QPushButton* buttonOk = new QPushButton( tr( "&OK" ), GroupButtons, "buttonOk" );
+  QPushButton* buttonOk = new QPushButton( tr( "BUT_OK" ), GroupButtons );
   buttonOk->setAutoDefault( TRUE );
   buttonOk->setDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonOk, 0, 0 );
   GroupButtonsLayout->addItem( new QSpacerItem( 5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 1 );
 
-  QPushButton* buttonCancel = new QPushButton( tr( "&Cancel" ) , GroupButtons, "buttonCancel" );
+  QPushButton* buttonCancel = new QPushButton( tr( "BUT_CANCEL" ) , GroupButtons );
   buttonCancel->setAutoDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonCancel, 0, 2 );
 
-  QPushButton* buttonHelp = new QPushButton( tr( "&Help" ) , GroupButtons, "buttonHelp" );
+  QPushButton* buttonHelp = new QPushButton( tr( "BUT_HELP" ) , GroupButtons );
   buttonHelp->setAutoDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonHelp, 0, 3 );
 
@@ -188,9 +204,9 @@ void VisuGUI_CacheDlg::onHelp()
     app->onHelpContextModule(app->activeModule() ?
                             app->moduleName(app->activeModule()->moduleName()) : QString(""), aHelpFileName);
   else {
-    SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"),
-                          QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
-                          arg(app->resourceMgr()->stringValue("ExternalBrowser", "application")).arg(aHelpFileName),
-                          QObject::tr("BUT_OK"));
+    SUIT_MessageBox::warning(0, tr("WRN_WARNING"),
+                             tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                             arg(app->resourceMgr()->stringValue("ExternalBrowser", "application")).arg(aHelpFileName),
+                             tr("BUT_OK"));
   }
 }
index 71693e76b8bea213cb52973fdf21af524cf511e6..dee67dabf00bb69713c335d5585f9c7e4bc1d99e 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_CacheDlg.h
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #ifndef VISUGUI_CACHEDLG_H
 #define VISUGUI_CACHEDLG_H
 
 #include "SALOMEconfig.h"
 #include CORBA_SERVER_HEADER(VISU_Gen)
 
-#include <qdialog.h>
+#include <QDialog>
 
 class QLineEdit;
 class QRadioButton;
-class QtxDblSpinBox;
+class QtxDoubleSpinBox;
 
 class SalomeApp_Module;
 
@@ -62,7 +61,7 @@ private:
 
   QRadioButton*   myMimimalMemoryButton;
   QRadioButton*   myLimitedMemoryButton;
-  QtxDblSpinBox*  myLimitedMemory;
+  QtxDoubleSpinBox*  myLimitedMemory;
 
   QLineEdit*      myUsedMemory;
   QLineEdit*      myFreeMemory;
index 4a7d8b95a00309a0717e6ff74275fbbe11231146..0312ffd7b7e4e9ce57883b254e19cc5ac9b5e8c4 100644 (file)
@@ -1,23 +1,24 @@
-// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-// 
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either 
-// version 2.1 of the License.
-// 
-// This library is distributed in the hope that it will be useful 
-// but WITHOUT ANY WARRANTY; without even the implied warranty of 
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-// Lesser General Public License for more details.
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// You should have received a copy of the GNU Lesser General Public  
-// License along with this library; if not, write to the Free Software 
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
-
 #include "VisuGUI_ClippingDlg.h"
 
 #include "VisuGUI.h"
 
 #include "VISU_Prs3d_i.hh"
 #include "VISU_Result_i.hh"
+#include "VISU_ColoredPrs3dHolder_i.hh"
 
 #include "VISU_PipeLine.hxx"
+#include "VISU_DataSetActor.h"
 
 #include "LightApp_SelectionMgr.h"
 #include "LightApp_Application.h"
 
 #include "SVTK_ViewWindow.h"
+#include <VTKViewer_Utilities.h>
 
 #include "SUIT_Session.h"
 #include "SUIT_Desktop.h"
 #include "SUIT_OverrideCursor.h"
 
 #include "SALOME_Actor.h"
+#include "VISU_ViewManager_i.hh"
 
 // QT Includes
-#include <qlabel.h>
-#include <qpushbutton.h>
-#include <qcombobox.h>
-#include <qcheckbox.h>
-#include <qlayout.h>
-#include <qgroupbox.h>
-#include <qvalidator.h>
-#include <qtabwidget.h>
-#include <qhbuttongroup.h>
-#include <qradiobutton.h>
-#include <qspinbox.h>
+#include <QLabel>
+#include <QComboBox>
+#include <QCheckBox>
+#include <QLayout>
+#include <QGroupBox>
+#include <QButtonGroup>
+#include <QValidator>
+#include <QTabWidget>
+#include <QRadioButton>
+#include <QSpinBox>
+#include <QKeyEvent>
+#include <QPushButton>
+#include <QListWidget>
+#include <QVBoxLayout>
+#include <QHBoxLayout>
+#include <QStackedWidget>
 
 // VTK Includes
 #include <vtkMath.h>
@@ -66,6 +76,7 @@
 #include <vtkPolyData.h>
 #include <vtkUnstructuredGrid.h>
 #include <vtkProperty.h>
+#include <vtkImplicitFunctionCollection.h>
 
 // OCCT Includes
 #include <gp_Dir.hxx>
@@ -90,12 +101,13 @@ namespace VISU {
     }
   }
 
-  void RangeStepAndValidator (QtxDblSpinBox* theSpinBox, double min, double max,
+  void RangeStepAndValidator (QtxDoubleSpinBox* theSpinBox, double min, double max,
                               double step, unsigned short decimals)
   {
     theSpinBox->setRange(min, max);
-    theSpinBox->setLineStep(step);
-    ((QDoubleValidator*)theSpinBox->validator())->setRange(min, max, decimals);
+    theSpinBox->setSingleStep(step);
+    theSpinBox->setRange(min, max );
+    theSpinBox->setDecimals( decimals);
   }
 };
 
@@ -237,123 +249,126 @@ struct TSetVisiblity {
 //
 //=================================================================================
 VisuGUI_ClippingDlg::VisuGUI_ClippingDlg (VisuGUI* theModule,
-                                          const char* name,
-                                          bool modal,
-                                          WFlags fl)
-  : QDialog(VISU::GetDesktop(theModule), name, modal, WStyle_Customize |
-            WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu | WDestructiveClose),
+                                          bool modal )
+  : QDialog(VISU::GetDesktop(theModule), Qt::WindowTitleHint | Qt::WindowSystemMenuHint ),
     mySelectionMgr(VISU::GetSelectionMgr(theModule)),
     myVisuGUI(theModule),
     myPrs3d(0),
-    myIsSelectPlane(false)
+    myIsSelectPlane(false),
+    myDSActor(0)
 {
-  if (!name)
-    setName("VisuGUI_ClippingDlg");
-  setCaption(tr("TITLE"));
+  setWindowTitle(tr("TITLE"));
   setSizeGripEnabled(TRUE);
-  QGridLayout* VisuGUI_ClippingDlgLayout = new QGridLayout(this);
+  setAttribute( Qt::WA_DeleteOnClose, true );
+
+  QVBoxLayout* VisuGUI_ClippingDlgLayout = new QVBoxLayout(this);
   VisuGUI_ClippingDlgLayout->setSpacing(6);
   VisuGUI_ClippingDlgLayout->setMargin(11);
+  
+  QStackedWidget* aStackWidget = new QStackedWidget(this);
+  VisuGUI_ClippingDlgLayout->addWidget(aStackWidget);
+  // Local planes
+  QWidget* aLocalPlanes = new QWidget(aStackWidget);
+  QVBoxLayout* aLocalLayout = new QVBoxLayout(aLocalPlanes);
+  aStackWidget->addWidget(aLocalPlanes);
 
   // Controls for selecting, creating, deleting planes
-  QGroupBox* GroupPlanes = new QGroupBox (this, "GroupPlanes");
-  GroupPlanes->setTitle(tr("GRP_PLANES"));
-  GroupPlanes->setColumnLayout(0, Qt::Vertical);
-  GroupPlanes->layout()->setSpacing(0);
-  GroupPlanes->layout()->setMargin(0);
-  QGridLayout* GroupPlanesLayout = new QGridLayout (GroupPlanes->layout());
+  QGroupBox* GroupPlanes = new QGroupBox (tr("GRP_PLANES"),  aLocalPlanes);
+  QGridLayout* GroupPlanesLayout = new QGridLayout (GroupPlanes);
   GroupPlanesLayout->setAlignment(Qt::AlignTop);
   GroupPlanesLayout->setSpacing(6);
   GroupPlanesLayout->setMargin(11);
+  aLocalLayout->addWidget(GroupPlanes);
 
-  ComboBoxPlanes = new QComboBox (GroupPlanes, "ComboBoxPlanes");
+  ComboBoxPlanes = new QComboBox (GroupPlanes);
   GroupPlanesLayout->addWidget(ComboBoxPlanes, 0, 0);
 
   QSpacerItem* spacerGP = new QSpacerItem (20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
   GroupPlanesLayout->addItem(spacerGP, 0, 1);
 
-  buttonNew = new QPushButton (GroupPlanes, "buttonNew");
+  buttonNew = new QPushButton (GroupPlanes );
   buttonNew->setText(tr("BUT_NEW"));
   GroupPlanesLayout->addWidget(buttonNew, 0, 2);
 
-  buttonDelete = new QPushButton(GroupPlanes, "buttonDelete");
+  buttonDelete = new QPushButton(GroupPlanes);
   buttonDelete->setText(tr("BUT_DELETE"));
   GroupPlanesLayout->addWidget(buttonDelete, 0, 3);
 
   // Controls for defining plane parameters
 
   // Tab pane
-  QGroupBox* GroupParameters = new QGroupBox(this, "GroupParameters");
-  GroupParameters->setTitle(tr("GRP_PARAMETERS"));
-  GroupParameters->setColumnLayout(0, Qt::Vertical);
-  GroupParameters->layout()->setSpacing(0);
-  GroupParameters->layout()->setMargin(0);
-  QGridLayout* GroupParametersLayout = new QGridLayout (GroupParameters->layout());
+  QGroupBox* GroupParameters = new QGroupBox(tr("GRP_PARAMETERS"), aLocalPlanes);
+  QGridLayout* GroupParametersLayout = new QGridLayout (GroupParameters);
   GroupParametersLayout->setAlignment(Qt::AlignTop);
   GroupParametersLayout->setSpacing(6);
   GroupParametersLayout->setMargin(11);
+  aLocalLayout->addWidget(GroupParameters);
 
   TabPane = new QTabWidget (GroupParameters);
   TabPane->addTab(createParamsTab()   , tr("TAB_NON_STRUCTURED"));
   TabPane->addTab(createIJKParamsTab(), tr("TAB_IJK_STRUCTURED"));
   GroupParametersLayout->addWidget(TabPane, 0, 0);
 
+
+
+
+
   // "Show preview" and "Auto Apply" check boxes
+  QHBoxLayout* aCheckBoxLayout = new QHBoxLayout(this);
+  VisuGUI_ClippingDlgLayout->addLayout(aCheckBoxLayout);
 
   PreviewCheckBox = new QCheckBox (tr("SHOW_PREVIEW_CHK"), this);
   PreviewCheckBox->setChecked(true);
+  aCheckBoxLayout->addWidget(PreviewCheckBox);
+  aCheckBoxLayout->addStretch();
 
   AutoApplyCheckBox = new QCheckBox (tr("AUTO_APPLY_CHK"), this);
   AutoApplyCheckBox->setChecked(false);
+  aCheckBoxLayout->addWidget(AutoApplyCheckBox);
 
   // Controls for "Ok", "Apply" and "Close" button
-  QGroupBox* GroupButtons = new QGroupBox (this, "GroupButtons");
-  GroupButtons->setSizePolicy(QSizePolicy((QSizePolicy::SizeType)7,
-                                          (QSizePolicy::SizeType)0, 0, 0,
-                                          GroupButtons->sizePolicy().hasHeightForWidth()));
+  QGroupBox* GroupButtons = new QGroupBox (this);
+  VisuGUI_ClippingDlgLayout->addWidget(GroupButtons);
+  QSizePolicy aSizePolicy(QSizePolicy::Expanding,
+                          QSizePolicy::Fixed );
+  aSizePolicy.setHeightForWidth( GroupButtons->sizePolicy().hasHeightForWidth() );
+  aSizePolicy.setHorizontalStretch( 0 );
+  aSizePolicy.setVerticalStretch( 0 );
+  GroupButtons->setSizePolicy( aSizePolicy );
   GroupButtons->setGeometry(QRect(10, 10, 281, 48));
-  //GroupButtons->setTitle(tr(""));
-  GroupButtons->setColumnLayout(0, Qt::Vertical);
-  GroupButtons->layout()->setSpacing(0);
-  GroupButtons->layout()->setMargin(0);
-  QGridLayout* GroupButtonsLayout = new QGridLayout (GroupButtons->layout());
+  QGridLayout* GroupButtonsLayout = new QGridLayout (GroupButtons);
+  GroupButtons->setLayout(GroupButtonsLayout);
   GroupButtonsLayout->setAlignment(Qt::AlignTop);
   GroupButtonsLayout->setSpacing(6);
   GroupButtonsLayout->setMargin(11);
-  buttonHelp = new QPushButton (GroupButtons, "buttonHelp");
+  buttonHelp = new QPushButton (GroupButtons);
   buttonHelp->setText(tr("BUT_HELP"));
   buttonHelp->setAutoDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonHelp, 0, 4);
-  buttonCancel = new QPushButton (GroupButtons, "buttonCancel");
+  buttonCancel = new QPushButton (GroupButtons);
   buttonCancel->setText(tr("BUT_CLOSE"));
   buttonCancel->setAutoDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonCancel, 0, 3);
-  buttonApply = new QPushButton (GroupButtons, "buttonApply");
+  buttonApply = new QPushButton (GroupButtons);
   buttonApply->setText(tr("BUT_APPLY"));
   buttonApply->setAutoDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonApply, 0, 1);
   QSpacerItem* spacer_9 = new QSpacerItem (20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
   GroupButtonsLayout->addItem(spacer_9, 0, 2);
-  buttonOk = new QPushButton (GroupButtons, "buttonOk");
+  buttonOk = new QPushButton (GroupButtons);
   buttonOk->setText(tr("BUT_OK"));
   buttonOk->setAutoDefault(TRUE);
   buttonOk->setDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonOk, 0, 0);
 
-  VisuGUI_ClippingDlgLayout->addMultiCellWidget(GroupPlanes,     0, 0, 0, 1);
-  VisuGUI_ClippingDlgLayout->addMultiCellWidget(GroupParameters, 1, 1, 0, 1);
-  VisuGUI_ClippingDlgLayout->addWidget(PreviewCheckBox,          2,    0);
-  VisuGUI_ClippingDlgLayout->addWidget(AutoApplyCheckBox,        2,    1);
-  VisuGUI_ClippingDlgLayout->addMultiCellWidget(GroupButtons,    3, 3, 0, 1);
-
   // Initial state
   VISU::RangeStepAndValidator(SpinBoxDistance, 0.0, 1.0, 0.01, 3);
   VISU::RangeStepAndValidator(SpinBoxRot1, -180.0, 180.0, 1, 3);
   VISU::RangeStepAndValidator(SpinBoxRot2, -180.0, 180.0, 1, 3);
 
-  ComboBoxOrientation->insertItem(tr("PARALLEL_XOY_COMBO_ITEM"));
-  ComboBoxOrientation->insertItem(tr("PARALLEL_YOZ_COMBO_ITEM"));
-  ComboBoxOrientation->insertItem(tr("PARALLEL_ZOX_COMBO_ITEM"));
+  ComboBoxOrientation->addItem(tr("PARALLEL_XOY_COMBO_ITEM"));
+  ComboBoxOrientation->addItem(tr("PARALLEL_YOZ_COMBO_ITEM"));
+  ComboBoxOrientation->addItem(tr("PARALLEL_ZOX_COMBO_ITEM"));
 
   SpinBoxDistance->setValue(0.5);
 
@@ -367,7 +382,7 @@ VisuGUI_ClippingDlg::VisuGUI_ClippingDlg (VisuGUI* theModule,
   connect(SpinBoxDistance        , SIGNAL(valueChanged(double))     , this, SLOT(SetCurrentPlaneParam()));
   connect(SpinBoxRot1            , SIGNAL(valueChanged(double))     , this, SLOT(SetCurrentPlaneParam()));
   connect(SpinBoxRot2            , SIGNAL(valueChanged(double))     , this, SLOT(SetCurrentPlaneParam()));
-  connect(ButtonGroupIJKAxis     , SIGNAL(clicked(int))             , this, SLOT(onIJKAxisChanged(int)));
+  connect(ButtonGroupIJKAxis     , SIGNAL(buttonClicked(int))             , this, SLOT(onIJKAxisChanged(int)));
   connect(SpinBoxIJKIndex        , SIGNAL(valueChanged(int))        , this, SLOT(SetCurrentPlaneIJKParam()));
   connect(CheckBoxIJKPlaneReverse, SIGNAL(toggled(bool))            , this, SLOT(SetCurrentPlaneIJKParam()));
   connect(TabPane                , SIGNAL(currentChanged (QWidget*)), this, SLOT(onTabChanged(QWidget*)));
@@ -409,32 +424,32 @@ QWidget* VisuGUI_ClippingDlg::createParamsTab()
   GroupParametersLayout->setSpacing(6);
   GroupParametersLayout->setMargin(11);
 
-  TextLabelOrientation = new QLabel(GroupParameters, "TextLabelOrientation");
+  TextLabelOrientation = new QLabel(GroupParameters);
   TextLabelOrientation->setText(tr("LBL_ORIENTATION"));
   GroupParametersLayout->addWidget(TextLabelOrientation, 0, 0);
 
-  ComboBoxOrientation = new QComboBox(GroupParameters, "ComboBoxOrientation");
+  ComboBoxOrientation = new QComboBox(GroupParameters);
   GroupParametersLayout->addWidget(ComboBoxOrientation, 0, 1);
 
-  TextLabelDistance = new QLabel(GroupParameters, "TextLabelDistance");
+  TextLabelDistance = new QLabel(GroupParameters);
   TextLabelDistance->setText(tr("LBL_DISTANCE"));
   GroupParametersLayout->addWidget(TextLabelDistance, 1, 0);
 
-  SpinBoxDistance = new QtxDblSpinBox(GroupParameters, "SpinBoxDistance");
+  SpinBoxDistance = new QtxDoubleSpinBox(GroupParameters);
   GroupParametersLayout->addWidget(SpinBoxDistance, 1, 1);
 
-  TextLabelRot1 = new QLabel(GroupParameters, "TextLabelRot1");
+  TextLabelRot1 = new QLabel(GroupParameters);
   TextLabelRot1->setText(tr("LBL_ROTATION_YZ"));
   GroupParametersLayout->addWidget(TextLabelRot1, 2, 0);
 
-  SpinBoxRot1 = new QtxDblSpinBox(GroupParameters, "SpinBoxRot1");
+  SpinBoxRot1 = new QtxDoubleSpinBox(GroupParameters);
   GroupParametersLayout->addWidget(SpinBoxRot1, 2, 1);
 
-  TextLabelRot2 = new QLabel(GroupParameters, "TextLabelRot2");
+  TextLabelRot2 = new QLabel(GroupParameters);
   TextLabelRot2->setText(tr("LBL_ROTATION_XZ"));
   GroupParametersLayout->addWidget(TextLabelRot2, 3, 0);
 
-  SpinBoxRot2 = new QtxDblSpinBox(GroupParameters, "SpinBoxRot2");
+  SpinBoxRot2 = new QtxDoubleSpinBox(GroupParameters);
   GroupParametersLayout->addWidget(SpinBoxRot2, 3, 1);
 
   return GroupParameters;
@@ -454,22 +469,28 @@ QWidget* VisuGUI_ClippingDlg::createIJKParamsTab()
   IJKParametersLayout->setMargin(11);
 
   // Axis group
-  ButtonGroupIJKAxis = new QHButtonGroup (tr("GRP_IJK_AXIS"), WidgetIJKTab);
-  new QRadioButton (tr("I_RADIO_BTN"), ButtonGroupIJKAxis);  // 0
-  new QRadioButton (tr("J_RADIO_BTN"), ButtonGroupIJKAxis);  // 1
-  new QRadioButton (tr("K_RADIO_BTN"), ButtonGroupIJKAxis);  // 2
-  ButtonGroupIJKAxis->setButton(0);
+  ButtonGroupIJKAxis = new QButtonGroup ( WidgetIJKTab);
+  //QGroupBox* aGBGroupBoxIJKAxis= new QGroupBox(tr("GRP_IJK_AXIS"), WidgetIJKTab );
+  GroupBoxIJKAxis= new QGroupBox(tr("GRP_IJK_AXIS"), WidgetIJKTab );
+  QHBoxLayout* aHBLay = new QHBoxLayout( GroupBoxIJKAxis  );
+  ButtonGroupIJKAxis->addButton( new QRadioButton (tr("I_RADIO_BTN"), GroupBoxIJKAxis), 0 );  // 0
+  ButtonGroupIJKAxis->addButton( new QRadioButton (tr("J_RADIO_BTN"), GroupBoxIJKAxis), 1 );  // 1
+  ButtonGroupIJKAxis->addButton( new QRadioButton (tr("K_RADIO_BTN"), GroupBoxIJKAxis), 2 );  // 2
+  ButtonGroupIJKAxis->button(0)->setChecked(true);
+  aHBLay->addWidget( ButtonGroupIJKAxis->button(0) );
+  aHBLay->addWidget( ButtonGroupIJKAxis->button(1) );
+  aHBLay->addWidget( ButtonGroupIJKAxis->button(2) );  
 
   // Index
-  TextLabelIJKIndex = new QLabel(WidgetIJKTab, "TextLabelIJKIndex");
+  TextLabelIJKIndex = new QLabel(WidgetIJKTab);
   TextLabelIJKIndex->setText(tr("LBL_IJK_INDEX"));
-  SpinBoxIJKIndex = new QSpinBox(WidgetIJKTab, "SpinBoxIJKIndex");
+  SpinBoxIJKIndex = new QSpinBox(WidgetIJKTab);
 
   // Orientation
   CheckBoxIJKPlaneReverse = new QCheckBox (tr("REVERSE_NORMAL_CHK"), WidgetIJKTab);
   CheckBoxIJKPlaneReverse->setChecked(false);
 
-  IJKParametersLayout->addMultiCellWidget(ButtonGroupIJKAxis, 0, 0, 0, 1);
+  IJKParametersLayout->addWidget(GroupBoxIJKAxis, 0, 0, 1, 2);
   IJKParametersLayout->addWidget(TextLabelIJKIndex,          1, 0);
   IJKParametersLayout->addWidget(SpinBoxIJKIndex,            1, 1);
   IJKParametersLayout->addWidget(CheckBoxIJKPlaneReverse, 2, 0);
@@ -482,6 +503,16 @@ QWidget* VisuGUI_ClippingDlg::createIJKParamsTab()
 // purpose  :
 //=================================================================================
 void VisuGUI_ClippingDlg::ClickOnApply()
+{
+  applyLocalPlanes();
+}
+
+
+//=================================================================================
+// function : applyLocalPlanes()
+// purpose  :
+//=================================================================================
+void VisuGUI_ClippingDlg::applyLocalPlanes()
 {
   if (!myPrs3d)
     return;
@@ -506,7 +537,8 @@ void VisuGUI_ClippingDlg::ClickOnApply()
     }
 
     // Try to apply new clipping
-    myPrs3d->RemoveAllClippingPlanes();
+    //myPrs3d->RemoveAllClippingPlanes();
+    removeAllClippingPlanes(myPrs3d);
 
     VISU::TPlanes::iterator anIter = myPlanes.begin();
     for (; anIter != myPlanes.end(); anIter++) {
@@ -531,17 +563,18 @@ void VisuGUI_ClippingDlg::ClickOnApply()
 
     if (isFailed) {
       // Restore previous clipping state because of failure.
-      myPrs3d->RemoveAllClippingPlanes();
+      //myPrs3d->RemoveAllClippingPlanes();
+      removeAllClippingPlanes(myPrs3d);
 
       TPlns::iterator anOldIter = anOldPlanes.begin();
       for (; anOldIter != anOldPlanes.end(); anOldIter++) {
         myPrs3d->AddClippingPlane(anOldIter->GetPointer());
       }
 
-      SUIT_MessageBox::warn1(VISU::GetDesktop(myVisuGUI),
-                             tr("WRN_VISU"),
-                             tr("WRN_EMPTY_RESULTING_PRS"),
-                             tr("BUT_OK") );
+      SUIT_MessageBox::warning(VISU::GetDesktop(myVisuGUI),
+                               tr("WRN_VISU"),
+                               tr("WRN_EMPTY_RESULTING_PRS"),
+                               tr("BUT_OK") );
     }
 
     //VISU::RenderViewWindow(aViewWindow);
@@ -549,6 +582,9 @@ void VisuGUI_ClippingDlg::ClickOnApply()
   }
 }
 
+
+
+
 //=================================================================================
 // function : ClickOnOk()
 // purpose  :
@@ -585,10 +621,10 @@ void VisuGUI_ClippingDlg::ClickOnHelp()
 #else
     platform = "application";
 #endif
-    SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"),
-                          QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
-                          arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
-                          QObject::tr("BUT_OK"));
+    SUIT_MessageBox::warning(0, QObject::tr("WRN_WARNING"),
+                             QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                             arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
+                             QObject::tr("BUT_OK"));
   }
 }
 
@@ -613,7 +649,19 @@ void VisuGUI_ClippingDlg::onSelectionChanged()
     if (!anIO.IsNull()) 
       myIO = anIO;
 
-    SetPrs3d(dynamic_cast<VISU::Prs3d_i*>(aBase));
+    //----
+    // rnv: fix for issue 0020114 (EDF VISU 918 : Impossible to 
+    // create a new clipping plane on field presentation)
+    // set last visited presentation from holder as myPrs3d
+    VISU::ColoredPrs3dHolder_i* aHolder = dynamic_cast<VISU::ColoredPrs3dHolder_i*>(aBase);
+    VISU::Prs3d_i* aPrs3d = NULL;
+    if(aHolder) 
+      aPrs3d = aHolder->GetPrs3dDevice();
+    else
+      aPrs3d = dynamic_cast<VISU::Prs3d_i*>(aBase);
+    //----
+    
+    SetPrs3d(aPrs3d);
     if (myPrs3d) {
       std::for_each(myPlanes.begin(),myPlanes.end(),TSetVisiblity(false));
       myPlanes.clear();
@@ -640,7 +688,7 @@ void VisuGUI_ClippingDlg::onSelectionChanged()
     }
 
     // enable/disable IJK tab
-    TabPane->setTabEnabled(WidgetIJKTab, isStructured());
+    TabPane->setTabEnabled(TabPane->indexOf(WidgetIJKTab), isStructured());
     Sinchronize();
     VISU::RenderViewWindow(aViewWindow);
   }
@@ -673,9 +721,9 @@ void VisuGUI_ClippingDlg::onSelectPlane(int theIndex)
   case VISU::YZ: item = 1; break;
   case VISU::ZX: item = 2; break;
   }
-  ComboBoxOrientation->setCurrentItem(item);
+  ComboBoxOrientation->setCurrentIndex(item);
 
-  bool isIJK = (TabPane->currentPage() == WidgetIJKTab);
+  bool isIJK = (TabPane->currentWidget() == WidgetIJKTab);
   if (isIJK)
     setIJKByNonStructured();
   else
@@ -729,7 +777,7 @@ void VisuGUI_ClippingDlg::ClickOnDelete()
   if (!myPrs3d || myPlanes.empty())
     return;
 
-  int aPlaneIndex = ComboBoxPlanes->currentItem();
+  int aPlaneIndex = ComboBoxPlanes->currentIndex();
 
   VISU::TPlanes::iterator anIter = myPlanes.begin() + aPlaneIndex;
   anIter->GetPointer()->myActor->SetVisibility(false);
@@ -781,58 +829,44 @@ void VisuGUI_ClippingDlg::Sinchronize()
   QString aName;
   for (int i = 1; i<=aNbPlanes; i++) {
     aName = QString(tr("PLANES_COMBO_ITEM_i")).arg(i);
-    ComboBoxPlanes->insertItem(aName);
+    ComboBoxPlanes->addItem(aName);
   }
 
   int aPos = ComboBoxPlanes->count() - 1;
-  ComboBoxPlanes->setCurrentItem(aPos);
+  ComboBoxPlanes->setCurrentIndex(aPos);
 
   bool anIsControlsEnable = (aPos >= 0);
   if (anIsControlsEnable) {
     onSelectPlane(aPos);
   } else {
-    ComboBoxPlanes->insertItem(tr("PLANES_COMBO_ITEM_no"));
+    ComboBoxPlanes->addItem(tr("PLANES_COMBO_ITEM_no"));
     SpinBoxRot1->setValue(0.0);
     SpinBoxRot2->setValue(0.0);
     SpinBoxDistance->setValue(0.5);
   }
 
   buttonDelete           ->setEnabled(anIsControlsEnable);
-  buttonApply            ->setEnabled(anIsControlsEnable);
-  PreviewCheckBox        ->setEnabled(anIsControlsEnable);
-  AutoApplyCheckBox      ->setEnabled(anIsControlsEnable);
+  //buttonApply            ->setEnabled(anIsControlsEnable);
+  //  PreviewCheckBox        ->setEnabled(anIsControlsEnable);
+  //  AutoApplyCheckBox      ->setEnabled(anIsControlsEnable);
 
   ComboBoxOrientation    ->setEnabled(anIsControlsEnable);
   SpinBoxDistance        ->setEnabled(anIsControlsEnable);
   SpinBoxRot1            ->setEnabled(anIsControlsEnable);
   SpinBoxRot2            ->setEnabled(anIsControlsEnable);
 
-  ButtonGroupIJKAxis     ->setEnabled(anIsControlsEnable);
+  GroupBoxIJKAxis        ->setEnabled(anIsControlsEnable);
   SpinBoxIJKIndex        ->setEnabled(anIsControlsEnable);
   CheckBoxIJKPlaneReverse->setEnabled(anIsControlsEnable);
   //ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
-  if(myPrs3d){
+  if ( myPrs3d ) {
     VISU_PipeLine* aPipeLine = myPrs3d->GetPipeLine();
     VISU::PIDMapper anIDMapper = aPipeLine->GetIDMapper();
-    if(anIDMapper->IsStructured()){
-      VISU::TIdTypeVector aVec = anIDMapper->GetStructure();
-      switch(aVec.size()){
-      case 1:
-       ButtonGroupIJKAxis->find(0)->setEnabled(true);
-       ButtonGroupIJKAxis->find(1)->setEnabled(false);
-       ButtonGroupIJKAxis->find(2)->setEnabled(false);
-       break;
-      case 2:
-       ButtonGroupIJKAxis->find(0)->setEnabled(true);
-       ButtonGroupIJKAxis->find(1)->setEnabled(true);
-       ButtonGroupIJKAxis->find(2)->setEnabled(false);
-       break;
-      case 3:
-       ButtonGroupIJKAxis->find(0)->setEnabled(true);
-       ButtonGroupIJKAxis->find(1)->setEnabled(true);
-       ButtonGroupIJKAxis->find(2)->setEnabled(true);
-       break;
-      }
+    if ( anIDMapper->IsStructured() ) {
+      VISU::TStructuredId aStructuredId = anIDMapper->GetStructure();
+      ButtonGroupIJKAxis->button(0)->setEnabled( aStructuredId[0] >= 0 );
+      ButtonGroupIJKAxis->button(1)->setEnabled( aStructuredId[1] >= 0 );
+      ButtonGroupIJKAxis->button(2)->setEnabled( aStructuredId[2] >= 0 );
     }
   }
   //ENK: 23.11.2006
@@ -857,7 +891,7 @@ void VisuGUI_ClippingDlg::SetCurrentPlaneParam()
   if (myPlanes.empty() || myIsSelectPlane)
     return;
 
-  int aCurPlaneIndex = ComboBoxPlanes->currentItem();
+  int aCurPlaneIndex = ComboBoxPlanes->currentIndex();
 
   OrientedPlane* aPlane = myPlanes[aCurPlaneIndex].GetPointer();
 
@@ -876,7 +910,7 @@ void VisuGUI_ClippingDlg::SetCurrentPlaneParam()
     aV[0] = aRot[0] > 0? aV[0]: -aV[0];
     aV[1] = aRot[1] > 0? aV[1]: -aV[1];
 
-    switch (ComboBoxOrientation->currentItem()) {
+    switch (ComboBoxOrientation->currentIndex()) {
     case 0:
       anOrientation = VISU::XY;
 
@@ -976,7 +1010,7 @@ void VisuGUI_ClippingDlg::onTabChanged(QWidget* newTab)
     setIJKByNonStructured();
   else {
     // set correct labels of rotation spin boxes
-    onSelectOrientation(ComboBoxOrientation->currentItem());
+    onSelectOrientation(ComboBoxOrientation->currentIndex());
   }
 }
 
@@ -994,7 +1028,7 @@ void VisuGUI_ClippingDlg::SetCurrentPlaneIJKParam()
     return;
 
   // get axis data
-  int i, axId = ButtonGroupIJKAxis->id (ButtonGroupIJKAxis->selected());
+  int i, axId = ButtonGroupIJKAxis->id (ButtonGroupIJKAxis->checkedButton());
   VISU::Result_i::TAxis axis = (VISU::Result_i::TAxis) axId;
   gp_Dir dir;
   CORBA::String_var aMeshName = myPrs3d->GetMeshName();
@@ -1045,7 +1079,7 @@ void VisuGUI_ClippingDlg::SetCurrentPlaneIJKParam()
 
   // set paramerets
   myIsSelectPlane = true;
-  ComboBoxOrientation->setCurrentItem(axId);
+  ComboBoxOrientation->setCurrentIndex(axId);
   setRotation(-angle[0], -angle[1]);
   setDistance(distance);
   myIsSelectPlane = false;
@@ -1063,7 +1097,7 @@ void VisuGUI_ClippingDlg::setIJKByNonStructured()
     return;
 
   // get plane normal
-  int planeIndex = ComboBoxPlanes->currentItem();
+  int planeIndex = ComboBoxPlanes->currentIndex();
   OrientedPlane* plane = myPlanes[ planeIndex ].GetPointer();
   vtkPlaneSource* planeSource = plane->myPlaneSource;
   vtkFloatingPointType * planeNormal = planeSource->GetNormal();
@@ -1079,8 +1113,8 @@ void VisuGUI_ClippingDlg::setIJKByNonStructured()
   int aNbAxes = 3;
   VISU_PipeLine* aPipeLine = myPrs3d->GetPipeLine();
   VISU::PIDMapper anIDMapper = aPipeLine->GetIDMapper();
-  if(anIDMapper->IsStructured() && !anIDMapper->myType)
-    aNbAxes = (anIDMapper->GetStructure()).size();
+  if ( anIDMapper->IsStructured() && !anIDMapper->myIsPolarType )
+    aNbAxes = anIDMapper->GetStructureDim();
   for (i = 0; i < aNbAxes; ++i) {
     VISU::Result_i::TAxis axis = (VISU::Result_i::TAxis) i;
     CORBA::String_var aMeshName = myPrs3d->GetMeshName();
@@ -1127,7 +1161,7 @@ void VisuGUI_ClippingDlg::setIJKByNonStructured()
   myIsSelectPlane = true;
   CheckBoxIJKPlaneReverse->setChecked(normal * axDir < 0);
   SpinBoxIJKIndex->setValue(i);
-  ButtonGroupIJKAxis->setButton(gridAxId);
+  ButtonGroupIJKAxis->button(gridAxId)->setChecked( true );
   onIJKAxisChanged(gridAxId); // update label and range of index
   myIsSelectPlane = false;
 
@@ -1200,7 +1234,7 @@ void VisuGUI_ClippingDlg::keyPressEvent( QKeyEvent* e )
   if ( e->isAccepted() )
     return;
 
-  if ( e->key() == Key_F1 )
+  if ( e->key() == Qt::Key_F1 )
     {
       e->accept();
       ClickOnHelp();
@@ -1218,3 +1252,15 @@ void VisuGUI_ClippingDlg::SetPrs3d(VISU::Prs3d_i* thePrs)
   } else 
     return;
 }
+
+
+void VisuGUI_ClippingDlg::removeAllClippingPlanes(VISU::Prs3d_i* thePrs)
+{
+  for (int i = thePrs->GetNumberOfClippingPlanes() - 1; i >= 0 ; i--) {
+    OrientedPlane* aPlane = dynamic_cast<OrientedPlane*>(thePrs->GetClippingPlane(i));
+    if (aPlane) 
+      thePrs->RemoveClippingPlane(i);
+  }
+}
+
+
index 4d8c89779745cce68c8248ff34722678ee766f77..bf1f1fd3d115468d8707abaaac3b0fec1f26a742 100644 (file)
@@ -1,34 +1,34 @@
-// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-// 
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either 
-// version 2.1 of the License.
-// 
-// This library is distributed in the hope that it will be useful 
-// but WITHOUT ANY WARRANTY; without even the implied warranty of 
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-// Lesser General Public License for more details.
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// You should have received a copy of the GNU Lesser General Public  
-// License along with this library; if not, write to the Free Software 
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
-
 #ifndef DIALOGBOX_CLIPPING_H
 #define DIALOGBOX_CLIPPING_H
 
 #include "SALOME_InteractiveObject.hxx"
 
-#include "QtxDblSpinBox.h"
+#include "QtxDoubleSpinBox.h"
 
 // QT Includes
-#include <qdialog.h>
-#include <qguardedptr.h>
-#include <qtable.h>
+#include <QDialog>
+#include <QPointer>
 
 // VTK Includes
 #include <vtkSmartPointer.h>
 
 class QLabel;
 class QPushButton;
-class QTable;
 class QCheckBox;
+class QGroupBox;
 class QComboBox;
-class QHButtonGroup;
+class QButtonGroup;
 class QSpinBox;
 class QTabWidget;
+class QListWidget;
 
 class SALOME_Actor;
 
-class QtxDblSpinBox;
+class QtxDoubleSpinBox;
 
 class SVTK_ViewWindow;
 
 class LightApp_SelectionMgr;
 
 class VisuGUI;
-
 class vtkPlaneSource;
 class vtkDataSetMapper;
-
 class OrientedPlane;
+class VISU_Actor;
+class PreviewPlane;
 
 namespace VISU {
   class Prs3d_i;
@@ -75,7 +76,7 @@ namespace VISU {
 //=================================================================================
 class OrientedPlane: public vtkPlane
 {
-  QGuardedPtr<SVTK_ViewWindow> myViewWindow;
+  QPointer<SVTK_ViewWindow> myViewWindow;
   vtkDataSetMapper* myMapper;
 
 public:
@@ -121,9 +122,7 @@ class VisuGUI_ClippingDlg : public QDialog
 
 public:
     VisuGUI_ClippingDlg( VisuGUI* theModule,
-                        const char* name = 0,
-                        bool modal = false,
-                        WFlags fl = 0 );
+                        bool modal = false );
 
     float  getDistance()  { return (float)SpinBoxDistance->value(); }
     void   setDistance(const float theDistance) { SpinBoxDistance->setValue(theDistance); }
@@ -139,6 +138,11 @@ private:
   
     void SetPrs3d(VISU::Prs3d_i* thePrs);
   
+    VISU_Actor* getSelectedActor();
+
+    void applyLocalPlanes();
+
+    void removeAllClippingPlanes(VISU::Prs3d_i* thePrs);
 
 private:
 
@@ -161,12 +165,13 @@ private:
     QTabWidget*       TabPane;
 
     QComboBox*        ComboBoxOrientation;
-    QtxDblSpinBox*    SpinBoxDistance;
-    QtxDblSpinBox*    SpinBoxRot1;
-    QtxDblSpinBox*    SpinBoxRot2;
+    QtxDoubleSpinBox*    SpinBoxDistance;
+    QtxDoubleSpinBox*    SpinBoxRot1;
+    QtxDoubleSpinBox*    SpinBoxRot2;
 
     QWidget*          WidgetIJKTab;
-    QHButtonGroup*    ButtonGroupIJKAxis;
+    QButtonGroup*     ButtonGroupIJKAxis;
+    QGroupBox*        GroupBoxIJKAxis;
     QLabel*           TextLabelIJKIndex;
     QSpinBox*         SpinBoxIJKIndex;
     QCheckBox*        CheckBoxIJKPlaneReverse;
@@ -181,6 +186,9 @@ private:
 
     bool myIsSelectPlane;
 
+    VISU_Actor* myDSActor;
+    QList<PreviewPlane*> myPreviewList;
+
 protected:
     QWidget* createParamsTab();
     QWidget* createIJKParamsTab();
@@ -206,3 +214,5 @@ public slots:
 };
 
 #endif // DIALOGBOX_TRANSPARENCYDLG_H
+
+
diff --git a/src/VISUGUI/VisuGUI_ClippingPanel.cxx b/src/VISUGUI/VisuGUI_ClippingPanel.cxx
new file mode 100644 (file)
index 0000000..3839330
--- /dev/null
@@ -0,0 +1,1043 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+#include "VisuGUI_ClippingPanel.h"
+#include "VisuGUI.h"
+#include "VisuGUI_Tools.h"
+#include "VisuGUI_ClippingPlaneDlg.h"
+#include "VisuGUI_ViewTools.h"
+
+#include <VISU_ColoredPrs3dCache_i.hh>
+
+#include <VISU_Gen_i.hh>
+#include <VISU_ColoredPrs3dHolder_i.hh>
+
+#include <LightApp_Application.h>
+#include <SUIT_Desktop.h>
+#include <SUIT_Session.h>
+#include <SUIT_ViewManager.h>
+#include <SUIT_MessageBox.h>
+#include <SUIT_ResourceMgr.h>
+#include <SUIT_ViewWindow.h>
+#include <SVTK_ViewWindow.h>
+#include <VTKViewer_Utilities.h>
+
+
+
+#include <QVBoxLayout>
+#include <QHBoxLayout>
+#include <QPushButton>
+#include <QToolButton>
+#include <QGroupBox>
+#include <QListWidget>
+#include <QTableWidget>
+#include <QStringList>
+#include <QMessageBox>
+#include <QCheckBox>
+
+#include <vtkImageData.h>
+#include <vtkCutter.h>
+#include <vtkPolyDataMapper.h>
+
+#include <SALOMEDSClient_AttributeSequenceOfReal.hxx>
+#include <SALOMEDSClient_AttributeInteger.hxx>
+
+
+
+#define SIZEFACTOR 1.1
+
+
+#define PRINT3(MARK, VAL) printf("#### %s x=%f, y=%f, z=%f\n", MARK, VAL[0], VAL[1], VAL[2]);
+
+using namespace std;
+
+
+void AdjustBounds(const double bounds[6], double newBounds[6], double center[3])
+{
+  center[0] = (bounds[0] + bounds[1])/2.0;
+  center[1] = (bounds[2] + bounds[3])/2.0;
+  center[2] = (bounds[4] + bounds[5])/2.0;
+  
+  newBounds[0] = center[0] + SIZEFACTOR*(bounds[0]-center[0]);
+  newBounds[1] = center[0] + SIZEFACTOR*(bounds[1]-center[0]);
+  newBounds[2] = center[1] + SIZEFACTOR*(bounds[2]-center[1]);
+  newBounds[3] = center[1] + SIZEFACTOR*(bounds[3]-center[1]);
+  newBounds[4] = center[2] + SIZEFACTOR*(bounds[4]-center[2]);
+  newBounds[5] = center[2] + SIZEFACTOR*(bounds[5]-center[2]);
+}
+
+
+
+//****************************************************************
+//PreviewPlane::PreviewPlane(SVTK_ViewWindow* theWindow, const PlaneDef& thePlane, const double* theBounds):
+PreviewPlane::PreviewPlane(SVTK_ViewWindow* theWindow,
+                          VISU_CutPlaneFunction* thePlane,
+                          const double* theBounds):
+  myWindow(theWindow),
+  myBounds(theBounds)
+{ 
+  double aCenter[3];
+  double aBound[6];
+
+  AdjustBounds(myBounds, aBound, aCenter);
+
+  //myPlane = thePlane.plane;
+  myPlane = thePlane;
+
+  myBox = vtkImageData::New();
+  myBox->SetDimensions(2, 2, 2);
+  myBox->SetOrigin(aBound[0],aBound[2],aBound[4]);
+  myBox->SetSpacing((aBound[1]-aBound[0]),
+                   (aBound[3]-aBound[2]),
+                   (aBound[5]-aBound[4]));
+
+  myCutter = vtkCutter::New();
+  myCutter->SetInput(myBox);
+  myCutter->SetCutFunction(myPlane);
+
+  myMapper = vtkPolyDataMapper::New();
+  myMapper->SetInput(myCutter->GetOutput());
+
+  myActor = vtkActor::New();
+  myActor->VisibilityOff();
+  myActor->PickableOff();
+  myActor->SetMapper(myMapper);
+  vtkProperty* aProp = vtkProperty::New();
+  float anRGB[3];
+  
+  SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
+  
+  QColor aFillColor = aResourceMgr->colorValue("SMESH", "fill_color", QColor(0, 170, 255));
+  anRGB[0] = aFillColor.red()/255.;
+  anRGB[1] = aFillColor.green()/255.;
+  anRGB[2] = aFillColor.blue()/255.;
+  aProp->SetColor(anRGB[0],anRGB[1],anRGB[2]);
+  aProp->SetOpacity(0.75);
+  myActor->SetBackfaceProperty(aProp);
+  aProp->Delete();
+  
+  vtkProperty* aBackProp = vtkProperty::New();
+  QColor aBackFaceColor = aResourceMgr->colorValue("SMESH", "backface_color", QColor(0, 0, 255));
+  anRGB[0] = aBackFaceColor.red()/255.;
+  anRGB[1] = aBackFaceColor.green()/255.;
+  anRGB[2] = aBackFaceColor.blue()/255.;
+  aBackProp->SetColor(anRGB[0],anRGB[1],anRGB[2]);
+  aBackProp->SetOpacity(0.75);
+  myActor->SetProperty(aBackProp);
+  aBackProp->Delete();
+
+  myWindow->getRenderer()->AddActor(myActor);
+}
+
+//****************************************************************
+PreviewPlane::~PreviewPlane()
+{
+  myWindow->getRenderer()->RemoveActor(myActor);
+  myActor->Delete();
+
+  myMapper->RemoveAllInputs();
+  myMapper->Delete();
+  myCutter->Delete();
+  myBox->Delete();
+}
+
+
+  
+
+
+//****************************************************************
+//****************************************************************
+//****************************************************************
+/*CutPlaneFunction* CutPlaneFunction::New()
+{
+  return new CutPlaneFunction();
+}
+
+void CutPlaneFunction::setActive(bool theActive) 
+{ 
+  myIsActive = theActive; 
+  Modified();
+}
+
+double CutPlaneFunction::EvaluateFunction(double x[3])
+{
+  if (myIsActive)
+    return vtkPlane::EvaluateFunction(x);
+  else 
+    return -1;
+}
+
+double CutPlaneFunction::EvaluateFunction(double x, double y, double z)
+{
+  if (myIsActive)
+    return vtkPlane::EvaluateFunction(x,y,z);
+  else 
+    return -1;
+}
+  
+CutPlaneFunction::CutPlaneFunction():
+  myIsActive(true)
+{
+
+}
+
+CutPlaneFunction::~CutPlaneFunction()
+{
+}
+*/
+
+
+//****************************************************************
+//****************************************************************
+//****************************************************************
+VisuGUI_ClippingPanel::VisuGUI_ClippingPanel(VisuGUI* theModule)
+  : VisuGUI_Panel(tr("TITLE"), theModule, VISU::GetDesktop(theModule), ApplyBtn | HelpBtn ),
+    myModule(theModule),
+    myPlaneDlg(0),
+    myViewWindow(0),
+    myIsApplied(true)
+{
+  QVBoxLayout* aMainLayout = new QVBoxLayout(mainFrame());
+
+  // List of presentations
+  aMainLayout->addWidget(new QLabel(tr("PRESENTATIONS_LBL"), mainFrame()));
+  myPrsList = new QListWidget(mainFrame());
+  myPrsList->setSelectionMode(QAbstractItemView::SingleSelection);
+  connect(myPrsList, SIGNAL(currentRowChanged(int)), this, SLOT(onPrsSelected(int)));
+  aMainLayout->addWidget(myPrsList);
+
+  // List of planes
+  aMainLayout->addWidget(new QLabel(tr("PLANES_LBL"), mainFrame()));
+  myPlanesList = new QTableWidget(0, 2, mainFrame());
+  myPlanesList->setColumnWidth(1, 50);
+  myPlanesList->setSelectionMode(QAbstractItemView::SingleSelection);
+  connect(myPlanesList, SIGNAL(cellChanged(int,int)), this, SLOT(onCellChanged(int,int)));
+  aMainLayout->addWidget(myPlanesList);
+  
+  // Management buttons
+  QWidget* aButtonsWgt = new QWidget(mainFrame());
+  QHBoxLayout* aBtnLayout = new QHBoxLayout(aButtonsWgt);
+  aMainLayout->addWidget(aButtonsWgt);
+
+  QToolButton* aNewBtn = new QToolButton(aButtonsWgt);
+  aNewBtn->setToolButtonStyle(Qt::ToolButtonTextOnly);
+  aNewBtn->setText(tr("NEW_BTN"));
+  connect(aNewBtn, SIGNAL(clicked(bool)), this, SLOT(onNew()));
+  aBtnLayout->addWidget(aNewBtn);
+
+  QToolButton* aEditBtn = new QToolButton(aButtonsWgt);
+  aEditBtn->setToolButtonStyle(Qt::ToolButtonTextOnly);
+  aEditBtn->setText(tr("EDIT_BTN"));
+  connect(aEditBtn, SIGNAL(clicked(bool)), this, SLOT(onEdit()));
+  aBtnLayout->addWidget(aEditBtn);
+
+  QToolButton* aDeleteBtn = new QToolButton(aButtonsWgt);
+  aDeleteBtn->setToolButtonStyle(Qt::ToolButtonTextOnly);
+  aDeleteBtn->setText(tr("DELETE_BTN"));
+  connect(aDeleteBtn, SIGNAL(clicked(bool)), this, SLOT(onPlaneDelete()));
+  aBtnLayout->addWidget(aDeleteBtn);
+
+  myShowPlanes = new QCheckBox(tr("CHK_SHOW_PLANES"), mainFrame());
+  connect(myShowPlanes, SIGNAL( toggled(bool) ), this, SLOT( setPlanesVisible(bool) ));
+  aMainLayout->addWidget(myShowPlanes);
+
+  myNonActivePlanes = new QCheckBox(tr("CHK_ACTIVATE_PLANES"), mainFrame());
+  connect(myNonActivePlanes, SIGNAL(toggled(bool)), this, SLOT(setPlanesNonActive(bool)));
+  aMainLayout->addWidget(myNonActivePlanes);
+
+  myAutoApply = new QCheckBox(tr("CHK_AUTO_APPLY"), mainFrame());
+  connect(myAutoApply, SIGNAL(toggled(bool)), myApply, SLOT(setDisabled(bool)));
+  myAutoApply->setCheckState(Qt::Checked);
+  aMainLayout->addWidget(myAutoApply);
+
+
+  //  fillPrsList();
+  //  fillPlanesList();
+
+  connect(myModule, SIGNAL(presentationCreated(VISU::Prs3d_i*)), 
+         this, SLOT(onPresentationCreate(VISU::Prs3d_i*)));
+  connect(myModule, SIGNAL(beforeObjectDelete(QString)), 
+         this, SLOT(onObjectDelete(QString)));
+
+  SUIT_Desktop* aDesktop = VISU::GetDesktop(myModule);
+  connect(aDesktop, SIGNAL(windowActivated(SUIT_ViewWindow*)), 
+         this, SLOT(onWindowActivated(SUIT_ViewWindow*)));
+}
+  
+
+//*************************************************************************
+VisuGUI_ClippingPanel::~VisuGUI_ClippingPanel()
+{
+}
+
+
+//*************************************************************************
+void VisuGUI_ClippingPanel::fillPrsList()
+{
+  myPrsList->clear();
+  _PTR(Study) aStudy = VISU::GetCStudy(VISU::GetAppStudy(myModule));
+  _PTR(SComponent) aVisuSO = aStudy->FindComponent("VISU");
+  if (!aVisuSO) {
+    return;
+  }
+  myPresentations = getPrsList(aStudy, aVisuSO);
+
+  //Process Cache system folder
+  _PTR(SObject) aSObjPtr = aStudy->FindObject(VISU::ColoredPrs3dCache_i::GetFolderName().c_str());
+  if (aSObjPtr) {
+    _PTR(ChildIterator) Iter = aStudy->NewChildIterator( aSObjPtr );
+    for ( ; Iter->More(); Iter->Next() ) {
+      _PTR(SObject) aChildObj = Iter->Value();
+      myPresentations.append(aChildObj->GetID().c_str());
+    }
+  }
+
+  QStringList aNames;
+  for (int i = 0; i < myPresentations.size(); i++) {
+    if (VISU::Prs3d_i* aPrs = getPrs(myPresentations.at(i)))
+      aNames.append(getPrsName(aPrs));
+  }
+  myPrsList->addItems(aNames);
+}
+
+//*************************************************************************
+QString VisuGUI_ClippingPanel::getPrsName(VISU::Prs3d_i* thePrs)
+{
+  QString aName;
+  QString aObjName;
+  QStringList aPath;
+  SALOMEDS::SObject_var aSObject = thePrs->GetSObject();
+  if (!aSObject->_is_nil()) {
+    SALOMEDS::SObject_var aFather = aSObject->GetFather();
+    while (!aFather->_is_nil()) {
+      QString aFName = aFather->GetName();
+      aPath.append(aFName);
+      if (aFName == "Post-Pro")        break;
+      aFather = aFather->GetFather();
+    }
+    aObjName = aSObject->GetName();
+  } else {
+    VISU::ColoredPrs3d_i* aColPrs = dynamic_cast<VISU::ColoredPrs3d_i*>(thePrs);
+    if (aColPrs) {
+      _PTR(Study) aStudy = VISU::GetCStudy(VISU::GetAppStudy(myModule));
+      _PTR(SObject) aSObjPtr = aStudy->FindObjectID(aColPrs->GetHolderEntry().c_str());
+      if (aSObjPtr) {
+       _PTR(SObject) aFather = aSObjPtr->GetFather();
+       while (aFather) {
+         QString aFName(aFather->GetName().c_str());
+         aPath.append(aFName);
+         if (aFName == "Post-Pro")     break;
+         aFather = aFather->GetFather();
+       }
+      }
+      aObjName = aSObjPtr->GetName().c_str();
+    }
+  }
+  for (int j = aPath.size() - 2; j >= 0; j--)
+    aName += aPath.at(j) + "/";
+  aName += aObjName;
+  return aName;
+}
+
+//*************************************************************************
+QStringList VisuGUI_ClippingPanel::getPrsList(_PTR(Study) theStudy, 
+                                             _PTR(SObject) theObject)
+{
+  //QList<VISU::Prs3d_i*> aList;
+  QStringList aList;
+  _PTR(ChildIterator) aIter = theStudy->NewChildIterator(theObject);
+  for (aIter->InitEx(true); aIter->More(); aIter->Next()) {
+    _PTR(SObject) aSObject = aIter->Value();
+    std::vector<VISU::Prs3d_i*> aSTLList = VISU::GetPrs3dList(myModule, aSObject);
+    for (int i = 0; i < aSTLList.size(); i++) {
+      VISU::Prs3d_i* aPrs = aSTLList[i];
+      if (!aList.contains(aPrs->GetEntry().c_str()))
+       aList.append(aPrs->GetEntry().c_str());
+    }
+    if (aList.size() == 0) {
+      //QList<VISU::Prs3d_i*> aSubList = getPrsList(theStudy, aSObject);
+      QStringList aSubList = getPrsList(theStudy, aSObject);
+       for (int i = 0; i < aSubList.size(); i++) {
+        //VISU::Prs3d_i* aPrs = aSubList[i];
+       QString aPrsEntry = aSubList[i];
+       if (!aList.contains(aPrsEntry))
+         aList.append(aPrsEntry);
+      }
+    }
+  }
+  return aList;
+}
+
+//*************************************************************************
+VISU_ClippingPlaneMgr& VisuGUI_ClippingPanel::getPlanesMgr() const
+{
+  return VISU::GetVisuGen(myModule)->GetClippingPlaneMgr();
+}
+
+//*************************************************************************
+void VisuGUI_ClippingPanel::fillPlanesList()
+{
+  disconnect(myPlanesList, SIGNAL(cellChanged(int,int)), this, SLOT(onCellChanged(int,int)));
+  myPlanesList->clear();
+  _PTR(Study) aStudy = VISU::GetCStudy(VISU::GetAppStudy(myModule));
+  VISU_ClippingPlaneMgr& aMgr = getPlanesMgr();
+  for (int i = 0; i < aMgr.GetClippingPlanesNb(); i++) {
+    VISU_CutPlaneFunction* aPlane = aMgr.GetClippingPlane(i);
+    myPlanesList->insertRow(i);
+    QTableWidgetItem* aItem = new QTableWidgetItem(aPlane->getName().c_str());
+    QTableWidgetItem* aCheckItem = new QTableWidgetItem();
+    aCheckItem->setCheckState((myNonActivePlanes->checkState() == Qt::Checked)? 
+                             Qt::Unchecked : Qt::Checked);    
+    if (aPlane->isAuto()) { // If this is Auto plane
+      aItem->setFlags(0);
+      aItem->setCheckState(Qt::Checked);
+    } else { // if it is not auto
+      aItem->setCheckState(Qt::Unchecked);
+      // Check current presentation
+      int aPrsNum = myPrsList->currentRow();
+      if (aPrsNum >= 0) {
+       if (VISU_ClippingPlaneMgr::ContainsPlane(getPrs(myPresentations.at(aPrsNum)), aPlane))
+         aItem->setCheckState(Qt::Checked);
+      }
+    }
+    myPlanesList->setItem(i, 0, aItem);
+    myPlanesList->setItem(i, 1, aCheckItem);
+  }
+  myPlanesList->setHorizontalHeaderLabels(QString(tr("PLANES_TABLE_TITLES")).split(","));
+  if (myViewWindow)
+    myViewWindow->Repaint();
+  //myPlanes.clear();
+  /*_PTR(Study) aStudy = VISU::GetCStudy(VISU::GetAppStudy(myModule));
+  _PTR(SObject) aFolder;
+  if (VISU::getClippingPlanesFolder(aStudy, aFolder)) {
+    _PTR(ChildIterator) aIter = aStudy->NewChildIterator(aFolder);
+    int i;
+    for (i = 0; aIter->More(); aIter->Next(), i++) { // For each plane
+      _PTR(SObject) aSObject = aIter->Value(); 
+      PlaneDef aNewPlane = createEmptyPlane();
+      updatePlane(aSObject, aNewPlane);
+
+      myPlanesList->insertRow(i);
+      QTableWidgetItem* aItem = new QTableWidgetItem(aNewPlane.name);
+      QTableWidgetItem* aCheckItem = new QTableWidgetItem();
+      aCheckItem->setCheckState((myNonActivePlanes->checkState() == Qt::Checked)? Qt::Unchecked : Qt::Checked);
+
+      if (aNewPlane.isAuto) { // If this is Auto plane
+       aItem->setFlags(0);
+       // apply to all presentations
+       aItem->setCheckState(Qt::Checked);
+       foreach(QString aPrsEntry, myPresentations) {
+         getPrs(aPrsEntry)->AddClippingPlane(aNewPlane.plane);
+       }
+      } else { // if it is not auto
+       foreach(QString aPrsEntry, myPresentations) {
+         _PTR(ChildIterator) aRefIter = aStudy->NewChildIterator(aSObject);      
+         for (; aRefIter->More(); aRefIter->Next()) {
+           _PTR(SObject) aObj = aRefIter->Value();
+           _PTR(SObject) aRefPrsObject;
+           if (aObj->ReferencedObject(aRefPrsObject)) { // If it is referenced on current plane
+             if (QString(aRefPrsObject->GetID().c_str()) == aPrsEntry) {
+               getPrs(aPrsEntry)->AddClippingPlane(aNewPlane.plane);
+             }
+           }
+         }
+       }
+       aItem->setCheckState(Qt::Unchecked);
+       // Check current presentation
+       int aPrsNum = myPrsList->currentRow();
+       if (aPrsNum >= 0) {
+         if (containsPlane(getPrs(myPresentations.at(aPrsNum)), aNewPlane))
+           aItem->setCheckState(Qt::Checked);
+       }
+      }
+      myPlanesList->setItem(i, 0, aItem);
+      myPlanesList->setItem(i, 1, aCheckItem);
+      myPlanes.append(aNewPlane);
+    }
+  }
+  myPlanesList->setHorizontalHeaderLabels(QString(tr("PLANES_TABLE_TITLES")).split(","));
+  if (myViewWindow)
+  myViewWindow->Repaint();*/
+  connect(myPlanesList, SIGNAL(cellChanged(int,int)), this, SLOT(onCellChanged(int,int)));
+}
+
+
+//*************************************************************************
+void VisuGUI_ClippingPanel::init()
+{
+  myViewWindow = VISU::GetViewWindow<SVTK_Viewer>(myModule);
+  if (myViewWindow) 
+    connect(myViewWindow, SIGNAL(destroyed(QObject*)), this, SLOT(onWindowDestroyed(QObject*)));
+  fillPrsList();
+  fillPlanesList();
+}
+
+void VisuGUI_ClippingPanel::onWindowDestroyed(QObject* theWnd)
+{
+  if (theWnd == myViewWindow) {
+    myViewWindow = 0;
+  }
+}
+
+//*************************************************************************
+//void VisuGUI_ClippingPanel::showEvent(QShowEvent* event)
+//{
+//  VisuGUI_Panel::showEvent(event);
+//}
+
+//*************************************************************************
+// void VisuGUI_ClippingPanel::hideEvent(QHideEvent* event)
+// {
+//   disconnect(myModule, SIGNAL(presentationCreated()), this, SLOT(onPresentationCreate()));
+//   VisuGUI_Panel::hideEvent(event);
+// }
+
+//*************************************************************************
+void VisuGUI_ClippingPanel::onPresentationCreate(VISU::Prs3d_i* thePrs)
+{
+  myPrsList->addItem(getPrsName(thePrs));
+  string aEntry = thePrs->GetEntry();
+  if (aEntry.length() == 0) {
+    VISU::ColoredPrs3d_i* aColPrs = dynamic_cast<VISU::ColoredPrs3d_i*>(thePrs);
+    if (aColPrs)
+      aEntry = aColPrs->GetHolderEntry();
+  }
+
+  myPresentations.append(aEntry.c_str());
+  VISU_ClippingPlaneMgr& aMgr = getPlanesMgr();
+  for (int i = 0; i < aMgr.GetClippingPlanesNb(); i++) {
+    VISU_CutPlaneFunction* aPlane = aMgr.GetClippingPlane(i);
+    if (aPlane->isAuto())
+      aMgr.ApplyClippingPlane(thePrs, i);
+  }
+  /*  for (int i = 0; i < myPlanes.size(); i++) {
+    const PlaneDef& aPlane = myPlanes.at(i);
+    if (aPlane.isAuto)
+      thePrs->AddClippingPlane(aPlane.plane);
+      }*/
+}
+
+//*************************************************************************
+/*PlaneDef VisuGUI_ClippingPanel::createEmptyPlane()
+{
+  PlaneDef aPlane;
+  aPlane.name = QString("Plane");
+  aPlane.plane = CutPlaneFunction::New();
+  aPlane.plane->Delete();
+  aPlane.plane->SetOrigin(0.,0.,0.);
+  aPlane.plane->SetNormal(0.,0.,1.);
+  aPlane.isAuto = true;
+  return aPlane;
+}*/
+
+//*************************************************************************
+/*void VisuGUI_ClippingPanel::updatePlane(_PTR(SObject) theObject, PlaneDef& thePlane)
+{
+  thePlane.name = QString(theObject->GetName().c_str());
+  thePlane.plane->setPlaneObject(theObject);
+
+  _PTR(GenericAttribute) anAttr;
+  if (theObject->FindAttribute(anAttr, "AttributeSequenceOfReal")) {
+    _PTR(AttributeSequenceOfReal) aArray(anAttr);
+    thePlane.plane->SetOrigin(aArray->Value(1), aArray->Value(2), aArray->Value(3));
+    thePlane.plane->SetNormal(aArray->Value(4), aArray->Value(5), aArray->Value(6));
+  }
+  if (theObject->FindAttribute(anAttr, "AttributeInteger")) {
+    _PTR(AttributeInteger) aFlag(anAttr);
+    thePlane.isAuto = (aFlag->Value() == 1);
+  }
+}*/
+  
+//*************************************************************************
+void VisuGUI_ClippingPanel::onNewPlane()
+{
+  disconnect(myPlaneDlg, SIGNAL(accepted()), this, SLOT(onNewPlane()));
+  disconnect(myPlaneDlg, SIGNAL(rejected()), this, SLOT(onCancelDialog()));
+  disconnect(myPlanesList, SIGNAL(cellChanged(int,int)), this, SLOT(onCellChanged(int,int)));
+  //_PTR(SObject) aPlaneSObj = myPlaneDlg->getPlaneObj();
+  int aId = myPlaneDlg->planeId();
+  VISU_ClippingPlaneMgr& aMgr = getPlanesMgr();
+
+  VISU_CutPlaneFunction* aPlane = aMgr.GetClippingPlane(aId);
+  //PlaneDef aNewPlane = createEmptyPlane();
+  //updatePlane(aPlaneSObj, aNewPlane);
+  int aRow = myPlanesList->rowCount();
+  myPlanesList->insertRow(aRow);
+
+  //QTableWidgetItem* aItem = new QTableWidgetItem(aNewPlane.name);
+  QTableWidgetItem* aItem = new QTableWidgetItem(aPlane->getName().c_str());
+  QTableWidgetItem* aCheckItem = new QTableWidgetItem();
+  aCheckItem->setCheckState((myNonActivePlanes->checkState() == Qt::Checked)? 
+                           Qt::Unchecked : Qt::Checked);
+  //aNewPlane.plane->setActive(myNonActivePlanes->checkState() != Qt::Checked);
+  aPlane->setActive(myNonActivePlanes->checkState() != Qt::Checked);
+  //if (aNewPlane.isAuto) {
+  if (aPlane->isAuto()) {
+    aItem->setFlags(0);
+    aItem->setCheckState(Qt::Checked);
+//     for (int i = 0; i < myPresentations.size(); i++) {
+//       getPrs(myPresentations.at(i))->AddClippingPlane(aNewPlane.plane);
+//     }
+  } else {
+    aItem->setCheckState(Qt::Unchecked);
+  }
+  myPlanesList->setItem(aRow, 0, aItem);
+  myPlanesList->setItem(aRow, 1, aCheckItem);
+  //myPlanes.append(aNewPlane);
+
+  delete myPlaneDlg;
+  myPlaneDlg = 0;
+
+  setPlanesVisible(myShowPlanes->checkState() == Qt::Checked);
+  
+  if (myViewWindow)
+    myViewWindow->Repaint();
+  connect(myPlanesList, SIGNAL(cellChanged(int,int)), this, SLOT(onCellChanged(int,int)));
+}
+
+//*************************************************************************
+void VisuGUI_ClippingPanel::onPlaneEdited() 
+{
+  disconnect(myPlaneDlg, SIGNAL(accepted()), this, SLOT(onNewPlane()));
+  disconnect(myPlaneDlg, SIGNAL(rejected()), this, SLOT(onCancelDialog()));
+  disconnect(myPlanesList, SIGNAL(cellChanged(int,int)), this, SLOT(onCellChanged(int,int)));
+  //_PTR(SObject) aPlaneSObj = myPlaneDlg->getPlaneObj();
+
+  int aId = myPlaneDlg->planeId();
+  VISU_ClippingPlaneMgr& aMgr = getPlanesMgr();
+  VISU_CutPlaneFunction* aPlane = aMgr.GetClippingPlane(aId);
+  //  PlaneDef aPlane = myPlanes.at(myEditingPlanePos);
+  //updatePlane(aPlaneSObj, aPlane);
+
+  //QTableWidgetItem* aItem = myPlanesList->item(myEditingPlanePos, 0);
+  QTableWidgetItem* aItem = myPlanesList->item(aId, 0);
+  //  if (aPlane.isAuto) {
+  if (aPlane->isAuto()) {
+    aItem->setCheckState(Qt::Checked);    
+    aItem->setFlags(0);
+    QString name = aPlane->getName().c_str();
+    aItem->setText(name);
+//     _PTR(Study) aStudy = VISU::GetCStudy( VISU::GetAppStudy( myModule ) );
+//     _PTR(ChildIterator) aIter = aStudy->NewChildIterator(aPlaneSObj);
+//     for (; aIter->More(); aIter->Next()) {
+//       _PTR(SObject) aObj = aIter->Value();
+//       VISU::DeleteSObject(myModule, aStudy, aObj);
+//     }
+     VISU::UpdateObjBrowser(myModule);
+  } else {
+    aItem->setCheckState(Qt::Unchecked);
+    aItem->setFlags(Qt::ItemIsEnabled | Qt::ItemIsUserCheckable);
+    int aPrsNum = myPrsList->currentRow();
+    if (aPrsNum >= 0) {
+      if (VISU_ClippingPlaneMgr::ContainsPlane(getPrs(myPresentations.at(aPrsNum)), aPlane))
+       aItem->setCheckState(Qt::Checked);
+    }
+  }
+
+  delete myPlaneDlg;
+  myPlaneDlg = 0;
+
+  //myPlanes.replace(myEditingPlanePos, aPlane);
+  setPlanesVisible(myShowPlanes->checkState() == Qt::Checked);
+
+  if (myViewWindow)
+    myViewWindow->Repaint();
+  connect(myPlanesList, SIGNAL(cellChanged(int,int)), this, SLOT(onCellChanged(int,int)));
+}
+
+//*************************************************************************
+void VisuGUI_ClippingPanel::onEdit()
+{
+  if (!isVISUDataReady()) return;
+  if (myPlaneDlg) return;
+
+  int aRow = myPlanesList->currentRow();
+  if (aRow < 0) return;
+
+  //  const PlaneDef& aPlane = myPlanes.at(aRow);
+
+  myPlaneDlg = new VisuGUI_ClippingPlaneDlg(myModule);
+  //myPlaneDlg->setPlaneObj(aPlane.plane->getPlaneObject());
+  myPlaneDlg->setPlaneId(aRow);
+  connect(myPlaneDlg, SIGNAL(accepted()), this, SLOT(onPlaneEdited()));
+  connect(myPlaneDlg, SIGNAL(rejected()), this, SLOT(onCancelDialog()));
+  //myEditingPlanePos = aRow;
+  myPlaneDlg->show();
+}
+
+//*************************************************************************
+void VisuGUI_ClippingPanel::onNew()
+{
+  if (!isVISUDataReady()) return;
+
+  if (myPlaneDlg) return;
+
+  myPlaneDlg = new VisuGUI_ClippingPlaneDlg(myModule);
+  connect(myPlaneDlg, SIGNAL(accepted()), this, SLOT(onNewPlane()));
+  connect(myPlaneDlg, SIGNAL(rejected()), this, SLOT(onCancelDialog()));
+  myPlaneDlg->show();
+}
+
+//*************************************************************************
+void VisuGUI_ClippingPanel::onPlaneDelete()
+{
+  if (!isVISUDataReady()) return;
+  if (myPlaneDlg) return;
+
+  _PTR(Study) aStudy = VISU::GetCStudy( VISU::GetAppStudy( myModule ) );
+  
+  
+  int aRow = myPlanesList->currentRow();
+  if (aRow < 0) return;
+
+  //  const PlaneDef& aPlane = myPlanes.at(aRow);
+  VISU_ClippingPlaneMgr& aMgr = getPlanesMgr();
+  VISU_CutPlaneFunction* aPlane = aMgr.GetClippingPlane(aRow);
+  QMessageBox::StandardButton aRes = 
+    QMessageBox::warning(VISU::GetDesktop(myModule), 
+                        tr("TIT_DELETE_PLANE"), 
+                        tr("MSG_DELETE_PLANE").arg(aPlane->getName().c_str()), 
+                        QMessageBox::Yes | QMessageBox::No, 
+                        QMessageBox::No);
+  if (aRes == QMessageBox::Yes) {
+    aMgr.DeleteClippingPlane(aRow);
+    /*    short aTag1 = aPlane.plane->getPlaneObject()->Tag();
+    for (int i = 0; i < myPresentations.size(); i++) {
+      VISU::Prs3d_i* aPrs = getPrs(myPresentations.at(i));
+      for (int j = aPrs->GetNumberOfClippingPlanes()-1; j > -1; j--) {
+       CutPlaneFunction* aPln = dynamic_cast<CutPlaneFunction*>(aPrs->GetClippingPlane(j));
+       if (aPln) {
+         short aTag2 = aPln->getPlaneObject()->Tag();
+         if (aTag1 == aTag2) {
+           aPrs->RemoveClippingPlane(j);
+         }
+       }
+      }
+    }
+
+    _PTR(SObject) aSObj = aPlane.plane->getPlaneObject();
+    _PTR(StudyBuilder) aBuilder = aStudy->NewBuilder();
+    aBuilder->RemoveObject(aSObj);
+    */
+    myPlanesList->removeRow(aRow);
+    //myPlanes.removeAt(aRow);
+    
+    VISU::UpdateObjBrowser(myModule);
+    
+    if (myViewWindow)
+      myViewWindow->Repaint();
+  }
+}
+
+//*************************************************************************
+bool VisuGUI_ClippingPanel::isVISUDataReady() 
+{
+  _PTR(Study) aStudy = VISU::GetCStudy( VISU::GetAppStudy( myModule ) );
+
+  _PTR(SComponent) aVisuSO = aStudy->FindComponent("VISU");
+  if (!aVisuSO) return false;
+
+  if(aStudy->GetProperties()->IsLocked()) return false;
+  return true;
+}
+
+//*************************************************************************
+void VisuGUI_ClippingPanel::onApply()
+{
+  if (myIsApplied) return;
+  
+  //PlaneDef aPlane;
+  int i;
+  VISU_ClippingPlaneMgr& aMgr = getPlanesMgr();
+  for (i = 0; i < aMgr.GetClippingPlanesNb(); i++) {
+    aMgr.GetClippingPlane(i)->setActive((myPlanesList->item(i, 1)->checkState() == Qt::Checked));
+  }
+//   for(i = 0; i < myPlanes.size(); i++) {
+//     aPlane = myPlanes.at(i);
+//     aPlane.plane->setActive((myPlanesList->item(i, 1)->checkState() == Qt::Checked));
+//   }
+  myIsApplied = true;
+  
+  int aPrsNum = myPrsList->currentRow();
+  if (aPrsNum > -1) {
+    //    for(i = 0; i < myPlanes.size(); i++) {
+    for(i = 0; i < aMgr.GetClippingPlanesNb(); i++) {
+      applyPlaneToPrs(i, aPrsNum, (myPlanesList->item(i, 0)->checkState() == Qt::Checked));
+    }
+  //myCheckedPlanes.clear();
+    VISU::UpdateObjBrowser(myModule);
+  }
+  if (myViewWindow)
+    myViewWindow->Repaint();
+}
+
+//*************************************************************************
+void VisuGUI_ClippingPanel::setPlanesNonActive(bool theState)
+{
+  //PlaneDef aPlane;
+  disconnect(myPlanesList, SIGNAL(cellChanged(int,int)), this, SLOT(onCellChanged(int,int)));
+  //for (int i = 0; i < myPlanes.size(); i++) {
+  VISU_ClippingPlaneMgr& aMgr = getPlanesMgr();
+  VISU_CutPlaneFunction* aPlane = 0;
+  for (int i = 0; i < aMgr.GetClippingPlanesNb(); i++) {
+    //aPlane = myPlanes.at(i);
+    aPlane = aMgr.GetClippingPlane(i);
+    //aPlane.plane->setActive(!theState);
+    aPlane->setActive(!theState);
+    myPlanesList->item(i, 1)->setCheckState((theState)? Qt::Unchecked : Qt::Checked);
+  }
+  if (myViewWindow)
+    myViewWindow->Repaint();
+  connect(myPlanesList, SIGNAL(cellChanged(int,int)), this, SLOT(onCellChanged(int,int)));
+}
+
+//*************************************************************************
+void VisuGUI_ClippingPanel::setPlanesVisible(bool theVisible)
+{
+  if (!myViewWindow) return;
+
+  if (theVisible) {
+    // Hide previous
+    setPlanesVisible(false);
+
+    double aBounds[6];
+    ComputeVisiblePropBounds(myViewWindow->getRenderer(), aBounds);
+    VISU_ClippingPlaneMgr& aMgr = getPlanesMgr();
+    //for (int i = 0; i < myPlanes.size(); i++) {
+    for (int i = 0; i < aMgr.GetClippingPlanesNb(); i++) {
+      //PreviewPlane* aPreview = new PreviewPlane(myViewWindow, myPlanes.at(i), aBounds);
+      PreviewPlane* aPreview = new PreviewPlane(myViewWindow, aMgr.GetClippingPlane(i), aBounds);
+      aPreview->setVisible(true);
+      myPreview.append(aPreview);
+    }
+  } else {
+    PreviewPlane* aPreview;
+    while (myPreview.size() > 0) {
+      aPreview = myPreview.last();
+      myPreview.removeLast();
+      delete aPreview;
+    }
+  }
+  myViewWindow->Repaint();
+}
+
+//*************************************************************************
+void VisuGUI_ClippingPanel::onCancelDialog()
+{
+  disconnect(myPlaneDlg, SIGNAL(accepted()), this, SLOT(onNewPlane()));
+  disconnect(myPlaneDlg, SIGNAL(rejected()), this, SLOT(onCancelDialog()));
+
+  delete myPlaneDlg;
+  myPlaneDlg = 0;
+}
+
+
+//*************************************************************************
+void VisuGUI_ClippingPanel::onWindowActivated(SUIT_ViewWindow* theWindow)
+{
+  setPlanesVisible(false);
+  myViewWindow = dynamic_cast<SVTK_ViewWindow*>(theWindow);
+  if (myViewWindow) 
+    connect(myViewWindow, SIGNAL(destroyed(QObject*)), this, SLOT(onWindowDestroyed(QObject*)));
+  setPlanesVisible(myShowPlanes->checkState() == Qt::Checked);
+}
+
+//*************************************************************************
+void VisuGUI_ClippingPanel::onCellChanged(int row, int col)
+{
+  //PlaneDef aPlane = myPlanes.at(row);
+  VISU_ClippingPlaneMgr& aMgr = getPlanesMgr();
+  VISU_CutPlaneFunction* aPlane = aMgr.GetClippingPlane(row);
+  bool isChecked = (myPlanesList->item(row, col)->checkState() == Qt::Checked);
+  if (col == 1) {  // activate column clicked
+    if (isAutoApply()) 
+      //aPlane.plane->setActive(isChecked);
+      aPlane->setActive(isChecked);
+    else {
+      myIsApplied = false;
+      return;
+    }
+  } else { // Plane checked
+    
+    //if (aPlane.isAuto) return;
+    if (aPlane->isAuto()) return;
+
+    if (!isAutoApply()) {
+      //myCheckedPlanes.append(row);
+      myIsApplied = false;
+      return;
+    }
+    int aPrsNum = myPrsList->currentRow();
+    if (aPrsNum < 0) return;
+
+    applyPlaneToPrs(row, aPrsNum, isChecked);
+    VISU::UpdateObjBrowser(myModule);
+  }
+  if (myViewWindow)
+    myViewWindow->Repaint();
+}
+
+//*************************************************************************
+void VisuGUI_ClippingPanel::applyPlaneToPrs(int thePlaneNum, int thePrsNum, bool isChecked)
+{
+  VISU::Prs3d_i* aPrs = getPrs(myPresentations.at(thePrsNum));
+  VISU_ClippingPlaneMgr& aMgr = getPlanesMgr();
+  if (isChecked) { // Apply
+    aMgr.ApplyClippingPlane(aPrs, thePlaneNum);
+  } else { // Detach
+    aMgr.DetachClippingPlane(aPrs, thePlaneNum);
+  }
+  /*  PlaneDef aPlane = myPlanes.at(thePlaneNum);
+  _PTR(Study) aStudy = VISU::GetCStudy( VISU::GetAppStudy( myModule ) );
+  _PTR(StudyBuilder) aBuilder = aStudy->NewBuilder();
+  VISU::Prs3d_i* aPrs = getPrs(myPresentations.at(thePrsNum));
+  _PTR(SObject) aSObject = aPlane.plane->getPlaneObject();
+  _PTR(SObject) aPrsSObj = aStudy->FindObjectID(aPrs->GetEntry());
+  if (isChecked) {
+    if (!containsPlane(aPrs, aPlane)) {
+      aPrs->AddClippingPlane(aPlane.plane);
+    
+      if(!aStudy->GetProperties()->IsLocked()) {
+       _PTR(SObject) aNewObj = aBuilder->NewObject(aSObject);
+       aBuilder->Addreference(aNewObj, aPrsSObj);
+      }
+    }
+  } else {
+    for (int i = 0; i < aPrs->GetNumberOfClippingPlanes(); i++) {
+      if (aPrs->GetClippingPlane(i) == aPlane.plane.GetPointer()) {
+       aPrs->RemoveClippingPlane(i);
+       break;
+      }
+    }
+    if(!aStudy->GetProperties()->IsLocked()) {
+      _PTR(ChildIterator) aIter = aStudy->NewChildIterator(aSObject);
+      for (; aIter->More(); aIter->Next()) {
+       _PTR(SObject) aRefObj = aIter->Value();
+       if(aRefObj) {
+         _PTR(SObject) aRefPrsObject;
+         if (aRefObj->ReferencedObject(aRefPrsObject)) {
+           if (QString(aRefPrsObject->GetID().c_str()) == QString(aPrs->GetEntry().c_str())) {
+             VISU::DeleteSObject(myModule, aStudy, aRefObj);
+             break;
+           }
+         }
+       }
+      }
+    }
+    }*/
+}
+
+//*************************************************************************
+/*bool VisuGUI_ClippingPanel::containsPlane(VISU::Prs3d_i* thePrs, const PlaneDef& thePlane)
+{
+  //bool isContains = false;
+  for (int i = 0; i < thePrs->GetNumberOfClippingPlanes(); i++) {
+    if (thePrs->GetClippingPlane(i) == thePlane.plane.GetPointer()) {
+      return true;
+    }
+  }
+  return false;
+}*/
+
+
+//*************************************************************************
+void VisuGUI_ClippingPanel::onObjectDelete(QString theEntry)
+{
+  disconnect(myPrsList, SIGNAL(currentRowChanged(int)), this, SLOT(onPrsSelected(int)));
+  int i = 0;
+  foreach (QString aPrsEntry, myPresentations) {
+    VISU::Prs3d_i* aPrs = getPrs(aPrsEntry);
+    if (aPrs) {
+      QString aID(aPrs->GetEntry().c_str());
+      if (aID == theEntry) {
+       myPresentations.removeAt(i);
+       myPrsList->takeItem(i);
+       break;
+      }
+      i++;
+    }
+  }
+  connect(myPrsList, SIGNAL(currentRowChanged(int)), this, SLOT(onPrsSelected(int)));
+  onPrsSelected(myPrsList->currentRow());
+}
+
+//*************************************************************************
+void VisuGUI_ClippingPanel::onPrsSelected(int thePrs)
+{
+  if (thePrs < 0) return;
+  if (thePrs > myPresentations.size()) return;
+  disconnect(myPlanesList, SIGNAL(cellChanged(int,int)), this, SLOT(onCellChanged(int,int)));
+  VISU::Prs3d_i* aPrs = getPrs(myPresentations.at(thePrs));
+  if (!aPrs) return;
+  //QListOfPlanes::const_iterator aIt;
+  VISU_ClippingPlaneMgr& aMgr = getPlanesMgr();
+  for (int i = 0; i < aMgr.GetClippingPlanesNb(); i++) {
+    QTableWidgetItem* aItem = myPlanesList->item(i, 0);
+    VISU_CutPlaneFunction* aPlane = aMgr.GetClippingPlane(i);
+    if (!aPlane->isAuto())
+      aItem->setCheckState(VISU_ClippingPlaneMgr::ContainsPlane(aPrs, aPlane)? 
+                          Qt::Checked : Qt::Unchecked);
+  }
+  /*  for (aIt = myPlanes.begin(), i = 0; aIt != myPlanes.end(); ++aIt, i++) {
+    QTableWidgetItem* aItem = myPlanesList->item(i, 0);
+    const PlaneDef& aPlane = *aIt;
+    if (!aPlane.isAuto)
+      aItem->setCheckState(containsPlane(aPrs, aPlane)? Qt::Checked : Qt::Unchecked);    
+      }*/
+  connect(myPlanesList, SIGNAL(cellChanged(int,int)), this, SLOT(onCellChanged(int,int)));
+}
+
+//*************************************************************************
+bool VisuGUI_ClippingPanel::isAutoApply() const
+{
+  return myAutoApply->checkState() == Qt::Checked;
+}
+
+
+//*************************************************************************
+VISU::Prs3d_i* VisuGUI_ClippingPanel::getPrs(QString theEntry)
+{
+  VISU::TObjectInfo anObjectInfo = VISU::GetObjectByEntry(VISU::GetAppStudy(myModule), 
+                                                         qPrintable(theEntry));
+  return VISU::GetPrs3dFromBase(anObjectInfo.myBase);
+}
+
+
+//*************************************************************************
+void VisuGUI_ClippingPanel::onHelp()
+{
+  QString aHelpFileName = "clipping_page.html";
+  LightApp_Application* app = (LightApp_Application*)(SUIT_Session::session()->activeApplication());
+  if (app)
+    app->onHelpContextModule(myModule ? app->moduleName(myModule->moduleName()) : QString(""), aHelpFileName);
+  else {
+    QString platform;
+#ifdef WIN32
+    platform = "winapplication";
+#else
+    platform = "application";
+#endif
+    SUIT_MessageBox::warning(0, QObject::tr("WRN_WARNING"),
+                             QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                             arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
+                             QObject::tr("BUT_OK"));
+  }
+}
diff --git a/src/VISUGUI/VisuGUI_ClippingPanel.h b/src/VISUGUI/VisuGUI_ClippingPanel.h
new file mode 100644 (file)
index 0000000..1e40755
--- /dev/null
@@ -0,0 +1,193 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+#ifndef DIALOGBOX_CLIPPINGPANEL_H
+#define DIALOGBOX_CLIPPINGPANEL_H
+
+
+class VisuGUI;
+class QListWidget;
+class QTableWidget;
+class VisuGUI_ClippingPlaneDlg;
+class QCheckBox;
+class SVTK_ViewWindow;
+class SUIT_ViewWindow;
+class vtkPolyDataMapper;
+class vtkImageData;
+class vtkCutter;
+
+#include "VISU_Prs3d_i.hh"
+#include "VisuGUI_Panel.h"
+//#include <VisuGUI_SegmentationMgr.h>
+#include <VISU_ClippingPlaneMgr.hxx>
+
+#include <QList>
+#include <vtkActor.h>
+#include <vtkPlane.h>
+
+#include <SALOMEDSClient_SObject.hxx>
+
+
+/*class CutPlaneFunction: public vtkPlane
+{
+public:
+  static CutPlaneFunction* New();
+
+  vtkTypeMacro(CutPlaneFunction, vtkPlane);
+
+  virtual double EvaluateFunction(double x[3]);
+  virtual double EvaluateFunction(double x, double y, double z);
+
+  void setActive(bool theActive);
+  bool isActive() const { return myIsActive; }
+
+  void setPlaneObject(_PTR(SObject) aSOPlane) { mySObject = aSOPlane; }
+  _PTR(SObject) getPlaneObject() const { return mySObject; }
+
+protected:
+  CutPlaneFunction();
+  ~CutPlaneFunction();
+
+private:
+  bool myIsActive;
+  _PTR(SObject) mySObject;
+};
+
+
+
+struct PlaneDef
+{
+  vtkSmartPointer<CutPlaneFunction> plane;
+  bool isAuto;
+  QString name;
+};
+*/
+
+class PreviewPlane
+{
+public:
+  //PreviewPlane(SVTK_ViewWindow* theWindow, const PlaneDef& thePlane, const double* theBounds);
+  PreviewPlane(SVTK_ViewWindow* theWindow, VISU_CutPlaneFunction* thePlane, const double* theBounds);
+  ~PreviewPlane();
+
+  void setVisible(bool theVisible)
+  { myActor->SetVisibility(theVisible); }
+
+private:
+  SVTK_ViewWindow* myWindow;
+
+  vtkActor* myActor;
+  vtkPolyDataMapper* myMapper;
+  const double* myBounds;
+  vtkPlane* myPlane;
+  vtkImageData* myBox;
+  vtkCutter* myCutter;
+};
+
+
+//typedef QList<PlaneDef> QListOfPlanes;
+typedef QList<vtkPlane*> ListOfvtkPlanes;
+typedef QList<PreviewPlane*> ListOfPreview;
+
+
+
+
+
+class VisuGUI_ClippingPanel: public VisuGUI_Panel
+{
+  Q_OBJECT
+public:
+  VisuGUI_ClippingPanel(VisuGUI* theModule);
+  ~VisuGUI_ClippingPanel();
+
+  void init();
+
+  //protected:
+  //virtual void showEvent(QShowEvent* event);
+  //virtual void hideEvent(QHideEvent* event);
+
+public slots:
+  void onPresentationCreate(VISU::Prs3d_i* thePrs);
+
+protected slots:
+  virtual void onApply();
+  virtual void onHelp();
+
+private slots:
+  void onNew();
+  void onNewPlane();
+  void onEdit();
+  void onPlaneEdited();
+  void onPlaneDelete();
+  void onCancelDialog();
+  void setPlanesNonActive(bool theState);
+  void setPlanesVisible(bool theVisible);
+  void onWindowActivated(SUIT_ViewWindow* theWindow);
+  void onCellChanged(int row, int col);
+  void onObjectDelete(QString theEntry);
+  void onPrsSelected(int thePrs);
+  void onWindowDestroyed(QObject* theWnd);
+
+ private:
+  void fillPrsList();
+  void fillPlanesList();
+
+  bool isAutoApply() const;
+
+  VISU_ClippingPlaneMgr& getPlanesMgr() const;
+
+
+  //void updatePlane(_PTR(SObject) theObject, PlaneDef& thePlane);
+  //PlaneDef createEmptyPlane();
+  //static bool containsPlane(VISU::Prs3d_i* thePrs, const PlaneDef& thePlane);
+
+  QString getPrsName(VISU::Prs3d_i* thePrs);
+
+  bool isVISUDataReady();
+
+  void applyPlaneToPrs(int thePlaneNum, int thePrsNum, bool isChecked);
+
+  //QList<VISU::Prs3d_i*> getPrsList(_PTR(Study) theStudy, _PTR(SObject) theObject);
+  QStringList getPrsList(_PTR(Study) theStudy, _PTR(SObject) theObject);
+  VISU::Prs3d_i* getPrs(QString theEntry);
+
+  VisuGUI*   myModule;
+
+  QListWidget* myPrsList;
+  QTableWidget* myPlanesList;
+
+  QCheckBox* myShowPlanes;
+  QCheckBox* myNonActivePlanes;
+  QCheckBox* myAutoApply;
+  
+  //QListOfPlanes myPlanes;
+  //  QList<VISU::Prs3d_i*> myPresentations;
+  QStringList myPresentations; // Stores entries of presentation objects
+  ListOfPreview myPreview;
+
+  VisuGUI_ClippingPlaneDlg* myPlaneDlg;
+  //int myEditingPlanePos;
+  SVTK_ViewWindow* myViewWindow;
+  bool myIsApplied;
+  //QList<int> myCheckedPlanes;
+};
+
+#endif
diff --git a/src/VISUGUI/VisuGUI_ClippingPlaneDlg.cxx b/src/VISUGUI/VisuGUI_ClippingPlaneDlg.cxx
new file mode 100644 (file)
index 0000000..62e2938
--- /dev/null
@@ -0,0 +1,411 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+#include "VisuGUI_ClippingPlaneDlg.h"
+#include "VisuGUI.h"
+#include "VisuGUI_Tools.h"
+#include "VisuGUI_ViewTools.h"
+
+#include <VISU_Gen_i.hh>
+
+#include <LightApp_Application.h>
+#include <SUIT_Desktop.h>
+#include <SUIT_Session.h>
+#include <SUIT_ViewManager.h>
+#include <SUIT_MessageBox.h>
+#include <SUIT_ResourceMgr.h>
+#include <QtxDoubleSpinBox.h>
+#include <SVTK_ViewWindow.h>
+#include <VTKViewer_Utilities.h>
+
+#include <QVBoxLayout>
+#include <QHBoxLayout>
+#include <QLineEdit>
+#include <QWidget>
+#include <QGroupBox>
+#include <QGridLayout>
+#include <QCheckBox>
+#include <QPushButton>
+
+#include <vtkCallbackCommand.h>
+#include <vtkImplicitPlaneWidget.h>
+
+
+#define SIZEFACTOR 1.1
+
+
+
+
+//****************************************************************
+//****************************************************************
+//****************************************************************
+VisuGUI_ClippingPlaneDlg::VisuGUI_ClippingPlaneDlg(VisuGUI* theModule)
+  : QDialog(VISU::GetDesktop(theModule), Qt::WindowTitleHint | Qt::WindowSystemMenuHint ),
+    myModule(theModule),
+    myCallback( vtkCallbackCommand::New() ),
+    myPreviewWidget(0),
+    myViewWindow(0),
+    myPlaneId(-1)
+{
+  myViewWindow = VISU::GetActiveViewWindow<SVTK_ViewWindow>(myModule);
+  VISU::ComputeVisiblePropBounds(myViewWindow, myBounds);
+
+  setWindowTitle(tr("TITLE"));
+  setSizeGripEnabled(true);
+  setModal(false);
+
+  myCallback->SetClientData(this); 
+  myCallback->SetCallback(VisuGUI_ClippingPlaneDlg::ProcessEvents);
+
+  QVBoxLayout* aMainLayout = new QVBoxLayout(this);
+
+  QWidget* aPlanesWgt = new QWidget(this);
+  aMainLayout->addWidget(aPlanesWgt);
+  QVBoxLayout* aFrameLayout = new QVBoxLayout(aPlanesWgt);
+
+  QWidget* aNameBox = new QWidget(aPlanesWgt);
+  aFrameLayout->addWidget(aNameBox);
+  QHBoxLayout* aNameLayout = new QHBoxLayout(aNameBox);
+
+  aNameLayout->addWidget(new QLabel(tr("LBL_NAME"), aPlanesWgt));
+  myNameEdt = new QLineEdit();
+  
+  _PTR(Study) aStudy = VISU::GetCStudy(VISU::GetAppStudy(myModule));
+  _PTR(SObject) aFolderSO;
+  if (VISU::getClippingPlanesFolder(aStudy, aFolderSO)) {
+    _PTR(ChildIterator) aIter = aStudy->NewChildIterator(aFolderSO);
+    int i = 1;
+    for (; aIter->More(); aIter->Next()) i++;
+
+    myNameEdt->setText(QString("Plane %1").arg(i));
+  }
+  aNameLayout->addWidget(myNameEdt);
+
+  QGroupBox* aOriginGroup = new QGroupBox( tr( "ORIGIN_TITLE" ), aPlanesWgt );
+  aFrameLayout->addWidget(aOriginGroup);
+  QHBoxLayout* aOriginLayout = new QHBoxLayout(aOriginGroup);
+
+  aOriginLayout->addWidget( new QLabel("X", aOriginGroup) );
+  myXOrigin = new QtxDoubleSpinBox( -1000.0, 1000.0, 0.1, aOriginGroup );
+  myXOrigin->setValue( 0.0 );
+  connect(myXOrigin, SIGNAL(valueChanged(double)), this, SLOT(onValueChanged()));
+  aOriginLayout->addWidget( myXOrigin );
+
+  aOriginLayout->addWidget( new QLabel("Y", aOriginGroup) );
+  myYOrigin = new QtxDoubleSpinBox( -1000.0, 1000, 0.1, aOriginGroup );
+  myYOrigin->setValue( 0.0 );
+  connect(myYOrigin, SIGNAL(valueChanged(double)), this, SLOT(onValueChanged()));
+  aOriginLayout->addWidget( myYOrigin );
+
+  aOriginLayout->addWidget( new QLabel("Z", aOriginGroup) );
+  myZOrigin = new QtxDoubleSpinBox( -1000.0, 1000.0, 0.1, aOriginGroup );
+  myZOrigin->setValue( 0.0 );
+  connect(myZOrigin, SIGNAL(valueChanged(double)), this, SLOT(onValueChanged()));
+  aOriginLayout->addWidget( myZOrigin );
+  
+  QGroupBox* aDirGroup = new QGroupBox( tr( "DIRECTION_TITLE" ), aPlanesWgt );
+  aFrameLayout->addWidget(aDirGroup);
+  QHBoxLayout* aDirLayout = new QHBoxLayout(aDirGroup);
+
+  aDirLayout->addWidget( new QLabel("dX", aDirGroup) );
+  myXDir = new QtxDoubleSpinBox( -1000.0, 1000.0, 0.1, aDirGroup );
+  myXDir->setValue( 0.0 );
+  connect(myXDir, SIGNAL(valueChanged(double)), this, SLOT(onValueChanged()));
+  aDirLayout->addWidget( myXDir );
+
+  aDirLayout->addWidget( new QLabel("dY", aDirGroup) );
+  myYDir = new QtxDoubleSpinBox( -1000.0, 1000.0, 0.1, aDirGroup );
+  myYDir->setValue( 0.0 );
+  connect(myYDir, SIGNAL(valueChanged(double)), this, SLOT(onValueChanged()));
+  aDirLayout->addWidget( myYDir );
+
+  aDirLayout->addWidget( new QLabel("dZ", aDirGroup) );
+  myZDir = new QtxDoubleSpinBox( -1000.0, 1000.0, 0.1, aDirGroup );
+  myZDir->setValue( 1.0 );
+  connect(myZDir, SIGNAL(valueChanged(double)), this, SLOT(onValueChanged()));
+  aDirLayout->addWidget( myZDir );
+
+  myAutoApply = new QCheckBox(tr("CHK_AUTOAPPLY"), aPlanesWgt);
+  myAutoApply->setCheckState(Qt::Checked);
+  aFrameLayout->addWidget(myAutoApply);
+
+  // Dialog buttons
+  QGroupBox* aGroupButtons = new QGroupBox (this);
+  aMainLayout->addWidget(aGroupButtons);
+
+  QSizePolicy aSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed );
+  QHBoxLayout* aButtonsLayout = new QHBoxLayout(aGroupButtons);
+
+  QPushButton* aBtnOk = new QPushButton(tr("BUT_OK"), aGroupButtons);
+  aButtonsLayout->addWidget(aBtnOk);
+
+  aButtonsLayout->addStretch();
+
+  QPushButton* aBtnClose = new QPushButton(tr("BUT_CANCEL"), aGroupButtons);
+  aButtonsLayout->addWidget(aBtnClose);
+
+  QPushButton* aBtnHelp = new QPushButton(tr("BUT_HELP"), aGroupButtons);
+  aButtonsLayout->addWidget(aBtnHelp);
+
+  connect(aBtnOk   , SIGNAL(clicked()), this, SLOT(accept()));
+  connect(aBtnClose, SIGNAL(clicked()), this, SLOT(reject()));
+  connect(aBtnHelp , SIGNAL(clicked()), this, SLOT(onHelp()));
+
+
+  myPreviewWidget = createPreviewWidget();
+  myViewWindow->Repaint();
+}
+
+VisuGUI_ClippingPlaneDlg::~VisuGUI_ClippingPlaneDlg()
+{
+  if (myPreviewWidget) {
+    myPreviewWidget->Off();
+    myPreviewWidget->Delete();
+  }
+  myPreviewWidget = 0;
+  myCallback->Delete();
+}
+
+//****************************************************************
+void VisuGUI_ClippingPlaneDlg::ProcessEvents(vtkObject* theObject, 
+                                            unsigned long theEvent,
+                                            void* theClientData, 
+                                            void* vtkNotUsed(theCallData))
+{
+  vtkImplicitPlaneWidget* aWidget = vtkImplicitPlaneWidget::SafeDownCast(theObject);
+  if (aWidget == NULL) return;
+  if (theClientData == NULL) return;
+
+  VisuGUI_ClippingPlaneDlg* aDlg = (VisuGUI_ClippingPlaneDlg*) theClientData;
+
+  double aOrigin[3];
+  double aDir[3];
+
+  switch(theEvent){
+  case vtkCommand::InteractionEvent:
+    aWidget->GetOrigin(aOrigin);
+    aWidget->GetNormal(aDir);
+
+    aDlg->setOrigin(aOrigin);
+    aDlg->setDirection(aDir);
+
+    break;
+  }
+}
+
+//****************************************************************
+void VisuGUI_ClippingPlaneDlg::setOrigin(double theVal[3])
+{
+  myXOrigin->setValue(theVal[0]);
+  myYOrigin->setValue(theVal[1]);
+  myZOrigin->setValue(theVal[2]);
+}
+
+//****************************************************************
+void VisuGUI_ClippingPlaneDlg::setDirection(double theVal[3])
+{
+  myXDir->setValue(theVal[0]);
+  myYDir->setValue(theVal[1]);
+  myZDir->setValue(theVal[2]);
+}
+
+//****************************************************************
+void VisuGUI_ClippingPlaneDlg::onValueChanged()
+{
+  if (!myPreviewWidget) return;
+  double aOrigin[3];
+  double aDir[3];
+  aOrigin[0] = myXOrigin->value();
+  aOrigin[1] = myYOrigin->value();
+  aOrigin[2] = myZOrigin->value();
+
+  aDir[0] = myXDir->value();
+  aDir[1] = myYDir->value();
+  aDir[2] = myZDir->value();
+
+  myPreviewWidget->SetOrigin(aOrigin);
+  myPreviewWidget->SetNormal(aDir);
+  myViewWindow->Repaint();
+}
+
+//****************************************************************
+vtkImplicitPlaneWidget* VisuGUI_ClippingPlaneDlg::createPreviewWidget()
+{
+  vtkImplicitPlaneWidget* aPlaneWgt = vtkImplicitPlaneWidget::New();
+  aPlaneWgt->SetInteractor(myViewWindow->getInteractor());
+  aPlaneWgt->SetPlaceFactor(SIZEFACTOR);
+  aPlaneWgt->ScaleEnabledOff();
+  aPlaneWgt->PlaceWidget(myBounds[0],myBounds[1],myBounds[2],myBounds[3],myBounds[4],myBounds[5]);
+  aPlaneWgt->SetOrigin(0,0,0);
+  aPlaneWgt->SetNormal(0,0,1);
+  aPlaneWgt->On();
+
+  //aPlaneWgt->OutlineTranslationOff();
+  //aPlaneWgt->ScaleEnabledOn();
+  aPlaneWgt->AddObserver(vtkCommand::InteractionEvent, 
+                        myCallback.GetPointer(), 
+                        0.);
+  return aPlaneWgt;
+}
+
+
+//****************************************************************
+void VisuGUI_ClippingPlaneDlg::setPlaneId(int theId)
+{
+  myPlaneId = theId;
+  VISU_ClippingPlaneMgr& aMgr = VISU::GetVisuGen(myModule)->GetClippingPlaneMgr();
+
+  VISU_CutPlaneFunction* aPlane =  aMgr.GetClippingPlane(myPlaneId);
+  if (aPlane) {
+    myNameEdt->setText(QString(aPlane->getName().c_str()));
+    double aOrigin[3], aDir[3];
+    aPlane->GetOrigin(aOrigin);
+    aPlane->GetNormal(aDir);
+
+    myXOrigin->setValue(aOrigin[0]);
+    myYOrigin->setValue(aOrigin[1]);
+    myZOrigin->setValue(aOrigin[2]);
+    myPreviewWidget->SetOrigin(aOrigin);
+
+    myXDir->setValue(aDir[0]);
+    myYDir->setValue(aDir[1]);
+    myZDir->setValue(aDir[2]);
+
+    myPreviewWidget->SetNormal(aDir);
+
+    myAutoApply->setCheckState((aPlane->isAuto())? Qt::Checked : Qt::Unchecked);
+    myViewWindow->Repaint();
+  }
+}
+/*void VisuGUI_ClippingPlaneDlg::setPlaneObj(_PTR(SObject) thePlaneObj)
+{
+  myPlaneObj = thePlaneObj;
+
+  myNameEdt->setText(QString(myPlaneObj->GetName().c_str()));
+
+  _PTR(GenericAttribute) anAttr;
+  if (myPlaneObj->FindAttribute(anAttr, "AttributeSequenceOfReal")) {
+    _PTR(AttributeSequenceOfReal) aArray(anAttr);
+    myXOrigin->setValue(aArray->Value(1));
+    myYOrigin->setValue(aArray->Value(2));
+    myZOrigin->setValue(aArray->Value(3));
+
+    myPreviewWidget->SetOrigin(aArray->Value(1), aArray->Value(2), aArray->Value(3));
+
+    myXDir->setValue(aArray->Value(4));
+    myYDir->setValue(aArray->Value(5));
+    myZDir->setValue(aArray->Value(6));
+
+    myPreviewWidget->SetNormal(aArray->Value(4), aArray->Value(5), aArray->Value(6));
+  }
+  if (myPlaneObj->FindAttribute(anAttr, "AttributeInteger")) {
+    _PTR(AttributeInteger) aFlag(anAttr);
+    myAutoApply->setCheckState((aFlag->Value() == 1)? Qt::Checked : Qt::Unchecked);
+  }
+
+  myViewWindow->Repaint();
+}*/
+
+//****************************************************************
+void VisuGUI_ClippingPlaneDlg::accept()
+{
+  _PTR(Study) aStudy = VISU::GetCStudy( VISU::GetAppStudy( myModule ) );
+  if(!aStudy->GetProperties()->IsLocked()) {
+    VISU_ClippingPlaneMgr& aMgr = VISU::GetVisuGen(myModule)->GetClippingPlaneMgr();
+    if (myPlaneId == -1) { // Create a New plane
+      myPlaneId = aMgr.CreateClippingPlane(myXOrigin->value(), myYOrigin->value(), myZOrigin->value(),
+                                          myXDir->value(), myYDir->value(), myZDir->value(),
+                                          myAutoApply->checkState() == Qt::Checked,
+                                          qPrintable(myNameEdt->text()));
+    } else { // Edit Plane
+      aMgr.EditClippingPlane(myPlaneId,
+                            myXOrigin->value(), myYOrigin->value(), myZOrigin->value(),
+                            myXDir->value(), myYDir->value(), myZDir->value(),
+                            myAutoApply->checkState() == Qt::Checked,
+                            qPrintable(myNameEdt->text()));
+    }
+    VISU::UpdateObjBrowser(myModule);
+  }
+  /*  _PTR(Study) aStudy = VISU::GetCStudy( VISU::GetAppStudy( myModule ) );
+  if(!aStudy->GetProperties()->IsLocked()) {
+    _PTR(SObject) aFolder;
+    if (VISU::getClippingPlanesFolder(aStudy, aFolder)) {
+      _PTR(StudyBuilder) aBuilder = aStudy->NewBuilder();
+      if (myPlaneObj == 0) { // Create a New plane
+       myPlaneObj = aBuilder->NewObject(aFolder);
+      } 
+      // Save Name
+      _PTR(GenericAttribute) anAttr;
+      anAttr = aBuilder->FindOrCreateAttribute(myPlaneObj,"AttributeName");
+      _PTR(AttributeName) aName(anAttr);
+      aName->SetValue(myNameEdt->text().toStdString());
+
+      //Save Parameters
+      double aParams[6];
+      aParams[0] = myXOrigin->value();
+      aParams[1] = myYOrigin->value();
+      aParams[2] = myZOrigin->value();
+      aParams[3] = myXDir->value();
+      aParams[4] = myYDir->value();
+      aParams[5] = myZDir->value();
+
+      anAttr = aBuilder->FindOrCreateAttribute(myPlaneObj,"AttributeSequenceOfReal");
+      _PTR(AttributeSequenceOfReal) aArray(anAttr);
+      if (aArray->Length() == 6) {
+       for (int i = 0; i < 6; i++)
+         aArray->ChangeValue(i+1, aParams[i]);
+      } else {
+       for (int i = 0; i < 6; i++)
+         aArray->Add(aParams[i]);
+      }
+      // Save Bool Flag
+      anAttr = aBuilder->FindOrCreateAttribute(myPlaneObj,"AttributeInteger");
+      _PTR(AttributeInteger) aFlag(anAttr);
+      aFlag->SetValue((myAutoApply->checkState() == Qt::Checked)? 1 : 0);
+
+      VISU::UpdateObjBrowser(myModule);
+    }
+    }*/
+  QDialog::accept();
+}
+
+
+//****************************************************************
+void VisuGUI_ClippingPlaneDlg::onHelp()
+{
+  QString aHelpFileName = "clipping_page.html";
+  LightApp_Application* app = (LightApp_Application*)(SUIT_Session::session()->activeApplication());
+  if (app)
+    app->onHelpContextModule(myModule ? app->moduleName(myModule->moduleName()) : QString(""), aHelpFileName);
+  else {
+    QString platform;
+#ifdef WIN32
+    platform = "winapplication";
+#else
+    platform = "application";
+#endif
+    SUIT_MessageBox::warning(0, QObject::tr("WRN_WARNING"),
+                             QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                             arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
+                             QObject::tr("BUT_OK"));
+  }
+}
+
diff --git a/src/VISUGUI/VisuGUI_ClippingPlaneDlg.h b/src/VISUGUI/VisuGUI_ClippingPlaneDlg.h
new file mode 100644 (file)
index 0000000..16b6ca3
--- /dev/null
@@ -0,0 +1,94 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+#ifndef DIALOGBOX_CLIPPINGPLANEDLG_H
+#define DIALOGBOX_CLIPPINGPLANEDLG_H
+
+class VisuGUI;
+class QLineEdit;
+class QCheckBox;
+
+class QtxDoubleSpinBox;
+class vtkImplicitPlaneWidget;
+class vtkCallbackCommand;
+class vtkObject;
+class SVTK_ViewWindow;
+
+#include <QDialog>
+#include <vtkSmartPointer.h>
+#include "VisuGUI_ClippingPanel.h"
+#include <SALOMEDSClient_SObject.hxx>
+
+
+class VisuGUI_ClippingPlaneDlg: public QDialog
+{
+  Q_OBJECT
+public:
+  VisuGUI_ClippingPlaneDlg(VisuGUI* theModule);
+  ~VisuGUI_ClippingPlaneDlg();
+
+  void setOrigin(double theVal[3]);
+  void setDirection(double theVal[3]);
+
+  void setPlaneId(int theId);
+  int planeId() const { return myPlaneId; }
+  //void setPlaneObj(_PTR(SObject) thePlaneObj);
+  //_PTR(SObject) getPlaneObj() const { return myPlaneObj; }
+
+protected slots:
+  virtual void accept();
+
+private slots:
+  void onHelp();
+  void onValueChanged();
+
+ private:
+  //void setEmptyPlane(PlaneDef& thePlane) const;
+  vtkImplicitPlaneWidget* createPreviewWidget();
+
+
+  static void ProcessEvents(vtkObject* theObject, unsigned long theEvent,
+                           void* theClientData, void* theCallData);
+
+  VisuGUI*   myModule;
+  SVTK_ViewWindow* myViewWindow;
+
+  QLineEdit* myNameEdt;
+
+  QtxDoubleSpinBox* myXOrigin;
+  QtxDoubleSpinBox* myYOrigin;
+  QtxDoubleSpinBox* myZOrigin;
+  QtxDoubleSpinBox* myXDir;
+  QtxDoubleSpinBox* myYDir;
+  QtxDoubleSpinBox* myZDir;
+
+  QCheckBox* myAutoApply;
+
+  vtkImplicitPlaneWidget* myPreviewWidget;
+  vtkSmartPointer<vtkCallbackCommand> myCallback;
+
+  double myBounds[6];
+  //_PTR(SObject) myPlaneObj;
+  int myPlaneId;
+};
+
+#endif
index 3aeac0cfe784643b4f543b3c892263be4d8f11e0..755986e5779aa0b0618d4d2d3ef2d88805dc0471 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //
 //  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
-//
-//
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_CursorDlg.cxx
 //  Author : Laurent CORNABE & Hubert ROLLAND
 //  Module : VISU
 //  $Header$
-
+//
 #include <string>
 using namespace std;
 
@@ -38,41 +37,48 @@ using namespace std;
 
 #include "LightApp_Application.h"
 
-#include <qlayout.h>
+#include <QLayout>
+#include <QLabel>
+#include <QPushButton>
+#include <QSpinBox>
+#include <QGroupBox>
+#include <QKeyEvent>
 
 /*!
   Constructor
 */
-VisuGUI_CursorDlg::VisuGUI_CursorDlg( QWidget* parent,  const char* name, bool modal, WFlags fl )
-    : QDialog( parent, name, modal, WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu )
+VisuGUI_CursorDlg::VisuGUI_CursorDlg( QWidget* parent,  const char* name, bool modal )
+    : QDialog( parent, Qt::WindowTitleHint | Qt::WindowSystemMenuHint )//WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu )
 {
-  if ( !name )
-    setName( "VisuGUI_CursorDlg" );
-  setCaption( name );
+  setWindowTitle( name );
+  setModal( modal );
   setSizeGripEnabled( TRUE );
 
   QGridLayout* TopLayout = new QGridLayout( this );
   TopLayout->setSpacing( 6 );
   TopLayout->setMargin( 11 );
 
-  TopGroupBox = new QGroupBox( this, "TopGroupBox" );
-  TopGroupBox->setColumnLayout(0, Qt::Vertical );
-  TopGroupBox->layout()->setSpacing( 0 );
-  TopGroupBox->layout()->setMargin( 0 );
-  QGridLayout* TopGroupBoxLayout = new QGridLayout( TopGroupBox->layout() );
+  TopGroupBox = new QGroupBox( this );
+  //TopGroupBox->setColumnLayout(0, Qt::Vertical );
+  //TopGroupBox->layout()->setSpacing( 0 );
+  //TopGroupBox->layout()->setMargin( 0 );
+  QGridLayout* TopGroupBoxLayout = new QGridLayout( TopGroupBox );
   TopGroupBoxLayout->setAlignment( Qt::AlignTop );
   TopGroupBoxLayout->setSpacing( 6 );
   TopGroupBoxLayout->setMargin( 11 );
 
-  Comment1 = new QLabel( tr( "TextLabel1" ), TopGroupBox, "Comment1" );
-  Comment1->setAlignment( QLabel::AlignCenter );
+  Comment1 = new QLabel( tr( "TextLabel1" ), TopGroupBox );
+  Comment1->setAlignment( Qt::AlignCenter );
   TopGroupBoxLayout->addWidget( Comment1, 0, 0 );
 
-  Comment2 = new QLabel(  tr( "TextLabel2" ), TopGroupBox, "Comment2" );
-  Comment2->setAlignment( QLabel::AlignCenter );
+  Comment2 = new QLabel(  tr( "TextLabel2" ), TopGroupBox );
+  Comment2->setAlignment( Qt::AlignCenter );
   TopGroupBoxLayout->addWidget( Comment2, 1, 0 );
 
-  SpinBox1 = new QSpinBox( 1, 100, 1, TopGroupBox, "SpinBox1" );
+  SpinBox1 = new QSpinBox( TopGroupBox );
+  SpinBox1->setMinimum( 0 );
+  SpinBox1->setMaximum(100 );
+  SpinBox1->setSingleStep( 1 );
   SpinBox1->setValue( 100 );
   SpinBox1->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   SpinBox1->setMinimumSize( 70, 0 );
@@ -82,28 +88,28 @@ VisuGUI_CursorDlg::VisuGUI_CursorDlg( QWidget* parent,  const char* name, bool m
   SLayout->addItem( new QSpacerItem( 5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum ) );
   TopGroupBoxLayout->addLayout( SLayout, 2, 0 );
 
-  GroupButtons = new QGroupBox (this, "GroupButtons");
+  GroupButtons = new QGroupBox (this);
   GroupButtons->setGeometry(QRect(10, 10, 281, 48));
-  GroupButtons->setColumnLayout(0, Qt::Vertical);
-  GroupButtons->layout()->setSpacing(0);
-  GroupButtons->layout()->setMargin(0);
-  QGridLayout* GroupButtonsLayout = new QGridLayout (GroupButtons->layout());
+  //GroupButtons->setColumnLayout(0, Qt::Vertical);
+  //GroupButtons->layout()->setSpacing(0);
+  //GroupButtons->layout()->setMargin(0);
+  QGridLayout* GroupButtonsLayout = new QGridLayout (GroupButtons);
   GroupButtonsLayout->setAlignment(Qt::AlignTop);
   GroupButtonsLayout->setSpacing(6);
   GroupButtonsLayout->setMargin(11);
 
-  buttonOk = new QPushButton (tr("&OK"), GroupButtons, "buttonOk");
+  buttonOk = new QPushButton (tr("&OK"), GroupButtons);
   buttonOk->setAutoDefault(TRUE);
   buttonOk->setDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonOk, 0, 0);
 
   GroupButtonsLayout->addItem(new QSpacerItem (5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum), 0, 1);
 
-  buttonCancel = new QPushButton(tr("&Cancel") , GroupButtons, "buttonCancel");
+  buttonCancel = new QPushButton(tr("&Cancel") , GroupButtons);
   buttonCancel->setAutoDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonCancel, 0, 2);
 
-  buttonHelp = new QPushButton(tr("&Help") , GroupButtons, "buttonHelp");
+  buttonHelp = new QPushButton(tr("&Help") , GroupButtons);
   buttonHelp->setAutoDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonHelp, 0, 3);
 
@@ -141,10 +147,10 @@ void VisuGUI_CursorDlg::onHelp()
 #else
     platform = "application";
 #endif
-    SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"),
-                          QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
-                          arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(helpFileName),
-                          QObject::tr("BUT_OK"));
+    SUIT_MessageBox::warning(0, QObject::tr("WRN_WARNING"),
+                             QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                            arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).
+                            arg(helpFileName) );
   }
 }
 
@@ -158,7 +164,7 @@ void VisuGUI_CursorDlg::keyPressEvent( QKeyEvent* e )
   if ( e->isAccepted() )
     return;
 
-  if ( e->key() == Key_F1 )
+  if ( e->key() == Qt::Key_F1 )
     {
       e->accept();
       onHelp();
index 51c7bda02847b22031cba29360007c7f21ceb116..54538d7419755aacda96d67cc96386cf4ce2d62f 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_CursorDlg.h
 //  Author : Laurent CORNABE & Hubert ROLLAND
 //  Module : VISU
 //  $Header$
-
+//
 #ifndef VISUGUI_CURSORDLG_H
 #define VISUGUI_CURSORDLG_H
 
-#include <qdialog.h>
-#include <qlabel.h>
-#include <qpushbutton.h>
-#include <qspinbox.h>
-#include <qgroupbox.h>
+#include <QDialog>
+class QLabel;
+class QPushButton;
+class QSpinBox;
+class QGroupBox;
 
 class VisuGUI_CursorDlg : public QDialog
 {
     Q_OBJECT
 
 public:
-    VisuGUI_CursorDlg( QWidget* parent = 0, const char* name = 0, bool modal = FALSE, WFlags fl = 0 );
+    VisuGUI_CursorDlg( QWidget* parent = 0, const char* name = 0, bool modal = FALSE );
     ~VisuGUI_CursorDlg();
 
     QGroupBox*   TopGroupBox;
index 554ba78d0ff5fcfafb30c44190ca57c32930efd0..041286855b62e2793484b6576337dd47970fb7ff 100644 (file)
@@ -1,26 +1,28 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VisuGUI_CutLinesDlg.cxx
 //  Author : VSV
 //  Module : VISU
-
+//
 #include "VisuGUI_CutLinesDlg.h"
 
 #include "VISU_ColoredPrs3dFactory.hh"
 #include "SUIT_MessageBox.h"
 #include "SUIT_ResourceMgr.h"
 
-#include "OB_Browser.h"
+//TO DO
+//#include "OB_Browser.h"
 
-#include <qlayout.h>
-#include <qhbox.h>
-#include <qtabwidget.h>
-#include <qhgroupbox.h>
-#include <qlineedit.h>
-#include <qlabel.h>
-#include <qpushbutton.h>
+#include "VisuGUI_TableDlg.h"
+
+#include <QLayout>
+#include <QTabWidget>
+#include <QLineEdit>
+#include <QValidator>
+#include <QButtonGroup>
+#include <QKeyEvent>
+#include <QLabel>
+#include <QPushButton>
+#include <QHeaderView>
+#include <QRadioButton>
+#include <QTableWidget>
 
 #include <vtkRenderer.h>
 #include <vtkPolyData.h>
@@ -74,62 +83,86 @@ VisuGUI_CutLinesDlg::VisuGUI_CutLinesDlg (SalomeApp_Module* theModule)
     myPreviewActor(0),
     myPreviewActorGlyphs(0)
 {
-  setCaption("Cut Lines Definition");
+  setWindowTitle("Cut Lines Definition");
   setSizeGripEnabled(true);
 
-  QVBoxLayout* aMainLayout = new QVBoxLayout (this, 7, 6);
+  QVBoxLayout* aMainLayout = new QVBoxLayout (this);
+  aMainLayout->setMargin( 7 );
   aMainLayout->setSpacing(5);
 
   SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
-  hasInit = false;
+  hasInit = false;  
 
   // Tab pane
   myTabBox = new QTabWidget(this);
 
   // Plane of lines
   QFrame* aPlanePane = new QFrame(this);
-  QVBoxLayout* aPlaneLayout = new QVBoxLayout(aPlanePane, 5, 6);
-
-  mySelPlane = new QHButtonGroup( tr( "TXT_ORIENTATION" ), aPlanePane);
-  mySelPlane->setInsideSpacing( 5 );
-  mySelPlane->setInsideMargin( 5 );
+  QVBoxLayout* aPlaneLayout = new QVBoxLayout(aPlanePane);
+  aPlaneLayout->setMargin( 5 );
+  aPlaneLayout->setSpacing(6);
+
+  mySelPlane = new QButtonGroup( aPlanePane);
+  QGroupBox* aGB = new QGroupBox( tr( "TXT_ORIENTATION" ), aPlanePane );
+  QHBoxLayout* aHBLay = new QHBoxLayout( aGB );
+  //mySelPlane->setInsideSpacing( 5 );
+  //mySelPlane->setInsideMargin( 5 );
+
+  QRadioButton* aBxy = new QRadioButton( tr( "PARALLEL_XOY" ), aGB);  // 0
+  QRadioButton* aByz = new QRadioButton( tr( "PARALLEL_YOZ" ), aGB);  // 1
+  QRadioButton* aBzx = new QRadioButton( tr( "PARALLEL_ZOX" ), aGB);  // 2
+  //aBxy->setChecked(false);
+  //aByz->setChecked(false);
+  aHBLay->addWidget( aBxy );
+  aHBLay->addWidget( aByz );
+  aHBLay->addWidget( aBzx );
+
+  mySelPlane->addButton( aBxy, 0 );
+  mySelPlane->addButton( aByz, 1 );
+  mySelPlane->addButton( aBzx, 2 );
 
-  QRadioButton* aBxy = new QRadioButton( tr( "PARALLEL_XOY" ), mySelPlane);  // 0
-  QRadioButton* aByz = new QRadioButton( tr( "PARALLEL_YOZ" ), mySelPlane);  // 1
-  QRadioButton* aBzx = new QRadioButton( tr( "PARALLEL_ZOX" ), mySelPlane);  // 2
-  aBxy->setChecked(false);
-  aByz->setChecked(false);
   aBzx->setChecked(true);
 
-  aPlaneLayout->addWidget( mySelPlane );
+  aPlaneLayout->addWidget( aGB );
 
   QGroupBox* aRotBox = new QGroupBox( tr( "LBL_ROTATION" ), aPlanePane );
-  aRotBox->setColumnLayout(2, Qt::Horizontal );
+  //aRotBox->setColumnLayout(2, Qt::Horizontal );
+  QGridLayout* aGridLay = new QGridLayout( aRotBox );
 
   myRotXLbl = new QLabel( tr( "LBL_ROT_X" ), aRotBox);
-  myRotXSpn = new QtxDblSpinBox( -45, 45, 5, aRotBox );
+  aGridLay->addWidget( myRotXLbl, 0, 0 );
+  myRotXSpn = new QtxDoubleSpinBox( -45, 45, 5, aRotBox );
+  aGridLay->addWidget( myRotXSpn, 0, 1 );
   myRotXSpn->setValue( 0 );
   myRotYLbl = new QLabel( tr( "LBL_ROT_Y" ), aRotBox );
-  myRotYSpn = new QtxDblSpinBox( -45, 45, 5, aRotBox );
-  myRotYSpn->setValue( 0 );
+  aGridLay->addWidget( myRotYLbl, 1, 0 );
+  myRotYSpn = new QtxDoubleSpinBox( -45, 45, 5, aRotBox );
+  aGridLay->addWidget( myRotYSpn, 1, 1 );
+  myRotYSpn->setValue( 0 );  
 
   aPlaneLayout->addWidget( aRotBox );
 
-  QHGroupBox* aBaseBox = new QHGroupBox (tr("BASE_PLANE_POS"), aPlanePane);
+  QGroupBox* aBaseBox = new QGroupBox (tr("BASE_PLANE_POS"), aPlanePane);
+  aHBLay = new QHBoxLayout( aBaseBox );
   myBasePlanePos = new QLineEdit (aBaseBox);
+  aHBLay->addWidget( myBasePlanePos );
   mydvalidator = new QDoubleValidator(this);
   mydvalidator->setDecimals(32);
   myBasePlanePos->setValidator(mydvalidator);
 
   myCBSetDef = new QCheckBox (tr("SET_DEFAULT"),aBaseBox);
+  aHBLay->addWidget( myCBSetDef );
 
   aPlaneLayout->addWidget(aBaseBox);
 
-  QHBox* aPosBox = new QHBox (aPlanePane);
-  aPosBox->setSpacing(5);
-  new QLabel (tr("LBL_POS"), aPosBox);
-  myPosSpn = new QtxDblSpinBox (0, 1, 0.1, aPosBox);
+  QWidget* aPosBox = new QWidget (aPlanePane);
+  aHBLay = new QHBoxLayout( aPosBox );  
+  aHBLay->setSpacing(5);
+  
+  aHBLay->addWidget( new QLabel (tr("LBL_POS"), aPosBox) );
+  myPosSpn = new QtxDoubleSpinBox (0, 1, 0.1, aPosBox);
   myPosSpn->setValue(0.5);
+  aHBLay->addWidget( myPosSpn );
   aPlaneLayout->addWidget(aPosBox);
 
   myPreviewCheck = new QCheckBox (tr("LBL_SHOW_PREVIEW"), aPlanePane);
@@ -148,73 +181,102 @@ VisuGUI_CutLinesDlg::VisuGUI_CutLinesDlg (SalomeApp_Module* theModule)
   myCreateTable->setChecked( aResourceMgr->booleanValue("VISU", "generate_data_table", true) );
   aPlaneLayout->addWidget( myCreateTable );
 
-  QHBox* aCheckPane = new QHBox(aPlanePane);
-  QLabel* aLbl = new QLabel("   ", aCheckPane);
-  aCheckPane->setStretchFactor(aLbl, 0);
+  QWidget* aCheckPane = new QWidget(aPlanePane);
+  aHBLay = new QHBoxLayout( aCheckPane );
+  aHBLay->setMargin( 0 );
+  aHBLay->setSpacing( 0 );
+  aHBLay->insertSpacing( 0, 20 );
   myCurvesCheck = new QCheckBox(tr("LBL_GENERATE_CURVES"), aCheckPane);
-  aCheckPane->setStretchFactor(aCheckPane, 0);
+  aHBLay->addWidget( myCurvesCheck );
   myCurvesCheck->setChecked( aResourceMgr->booleanValue("VISU", "generate_curves", true) );
   myCurvesCheck->setEnabled( aResourceMgr->booleanValue("VISU", "generate_data_table", true) );
-  QLabel* aLbl2 = new QLabel("   ", aCheckPane);
-  aCheckPane->setStretchFactor(aLbl2, 1);
   aPlaneLayout->addWidget( aCheckPane );
 
   aPlaneLayout->addStretch();
 
-
   myTabBox->addTab( aPlanePane, tr("LBL_LINES_PLANE") );
 
   // Number of lines
   QFrame* aLinesPane = new QFrame(this);
-  QVBoxLayout* aLinesLayout = new QVBoxLayout( aLinesPane, 5, 6 );
-
-  mySelPlane2 = new QHButtonGroup( tr( "TXT_ORIENTATION" ), aLinesPane);
-  mySelPlane2->setInsideSpacing( 5 );
-  mySelPlane2->setInsideMargin( 5 );
-
-  QRadioButton* aBxy2 = new QRadioButton( tr( "PARALLEL_XOY" ), mySelPlane2);  // 0
-  QRadioButton* aByz2 = new QRadioButton( tr( "PARALLEL_YOZ" ), mySelPlane2);  // 1
-  QRadioButton* aBzx2 = new QRadioButton( tr( "PARALLEL_ZOX" ), mySelPlane2);  // 2
+  QVBoxLayout* aLinesLayout = new QVBoxLayout( aLinesPane );
+  aLinesLayout->setMargin( 5 );
+  aLinesLayout->setSpacing( 6 );
+
+  mySelPlane2 = new QButtonGroup( aLinesPane);
+  aGB = new QGroupBox( tr( "TXT_ORIENTATION" ), aLinesPane );
+  aHBLay = new QHBoxLayout( aGB );
+  //mySelPlane2->setInsideSpacing( 5 );
+  //mySelPlane2->setInsideMargin( 5 );
+
+  QRadioButton* aBxy2 = new QRadioButton( tr( "PARALLEL_XOY" ), aGB);  // 0
+  QRadioButton* aByz2 = new QRadioButton( tr( "PARALLEL_YOZ" ), aGB);  // 1
+  QRadioButton* aBzx2 = new QRadioButton( tr( "PARALLEL_ZOX" ), aGB);  // 2
+
+  aHBLay->addWidget( aBxy2 );
+  aHBLay->addWidget( aByz2 );
+  aHBLay->addWidget( aBzx2 );
+
+  mySelPlane2->addButton( aBxy2, 0 );
+  mySelPlane2->addButton( aByz2, 1 );
+  mySelPlane2->addButton( aBzx2, 2 );
+  
   aBzx2->setEnabled(false);
   aByz2->setChecked(true);
-  aLinesLayout->addWidget( mySelPlane2 );
+  aLinesLayout->addWidget( aGB );
 
   QGroupBox* aRotBox2 = new QGroupBox( tr( "LBL_ROTATION" ), aLinesPane );
-  aRotBox2->setColumnLayout(2, Qt::Horizontal );
+  //aRotBox2->setColumnLayout(2, Qt::Horizontal );
+  aGridLay = new QGridLayout( aRotBox2 );
 
   myRotXLbl2 = new QLabel( tr( "LBL_ROT_X" ), aRotBox2);
-  myRotXSpn2 = new QtxDblSpinBox( -45, 45, 5, aRotBox2 );
+  aGridLay->addWidget( myRotXLbl2, 0, 0 );
+  myRotXSpn2 = new QtxDoubleSpinBox( -45, 45, 5, aRotBox2 );
+  aGridLay->addWidget( myRotXSpn2, 0, 1 );
   myRotXSpn2->setValue( 0 );
   myRotYLbl2 = new QLabel( tr( "LBL_ROT_Y" ), aRotBox2 );
-  myRotYSpn2 = new QtxDblSpinBox( -45, 45, 5, aRotBox2 );
+  aGridLay->addWidget( myRotYLbl2, 1, 0 );
+  myRotYSpn2 = new QtxDoubleSpinBox( -45, 45, 5, aRotBox2 );
+  aGridLay->addWidget( myRotYSpn2, 1, 1 );
   myRotYSpn2->setValue( 0 );
   aLinesLayout->addWidget( aRotBox2 );
 
-  QHBox* aNbBox = new QHBox(aLinesPane);
-  aNbBox->setSpacing(5);
-  new QLabel( tr( "LBL_NB_PLANS" ), aNbBox );
-  myNbSpn = new QtxDblSpinBox( 1, 100, 1, aNbBox );
+  QWidget* aNbBox = new QWidget(aLinesPane);
+  aHBLay = new QHBoxLayout( aNbBox ); 
+  aHBLay->setSpacing(5);
+  aHBLay->addWidget( new QLabel( tr( "LBL_NB_PLANS" ), aNbBox ) );
+  myNbSpn = new QtxDoubleSpinBox( 1, 100, 1, aNbBox );
   myNbSpn->setValue( 10 );
+  aHBLay->addWidget( myNbSpn );
 
   aLinesLayout->addWidget( aNbBox );
 
-  myPosTable = new QTable(aLinesPane, "Positions of cut planes" );
+  myPosTable = new QTableWidget(aLinesPane );
   myPosTable->setMaximumHeight( 227 );
   myPosTable->setMinimumWidth( 294 );
-  myPosTable->setNumCols(2);
-  myPosTable->setNumRows(0);
+  myPosTable->setColumnCount(2);
+  myPosTable->setRowCount(0);
+
+  myPosTable->setItemDelegateForColumn( 0,
+         new NumDelegateItem( myPosTable, NumDelegateItem::NV_Real) );
 
-  QHeader *th = myPosTable->horizontalHeader();
-  th->setLabel( 0, "Position" );
-  th->setLabel( 1, "Set default" );
+  myPosTable->setEditTriggers( (QAbstractItemView::EditTriggers)(QAbstractItemView::AllEditTriggers &(~QAbstractItemView::CurrentChanged)));
 
+  QStringList aLabels;
+  aLabels.append( "Position" );
+  aLabels.append( "Set default" );
+  myPosTable->setHorizontalHeaderLabels( aLabels );
+  
   aLinesLayout->addWidget( myPosTable );
 
-  QHBox* aPosBox2 = new QHBox(aLinesPane);
-  aPosBox2->setSpacing(5);
-  new QLabel( tr( "LBL_POS" ), aPosBox2 );
-  myPosSpn2 = new QtxDblSpinBox( 0, 1, 0.1, aPosBox2 );
+  QWidget* aPosBox2 = new QWidget(aLinesPane);
+  aHBLay = new QHBoxLayout( aPosBox2 );
+  aHBLay->setSpacing(5);
+  aHBLay->addWidget( new QLabel( tr( "LBL_POS" ), aPosBox2 ) );
+  myPosSpn2 = new QtxDoubleSpinBox( 0, 1, 0.1, aPosBox2 );
   myPosSpn2->setValue( 0.5 );
+  aHBLay->addWidget( myPosSpn2 );
+
+  
   aLinesLayout->addWidget( aPosBox2 );
   aLinesLayout->addStretch();
 
@@ -227,40 +289,40 @@ VisuGUI_CutLinesDlg::VisuGUI_CutLinesDlg (SalomeApp_Module* theModule)
   aMainLayout->addWidget(myTabBox);
 
   // Dialog buttons
-  QHBox* aBtnBox = new QHBox(this);
+  QFrame* aBtnBox = new QFrame(this);
+  aHBLay = new QHBoxLayout( aBtnBox );
   aBtnBox->setFrameStyle(QFrame::Box | QFrame::Sunken);
   aBtnBox->setLineWidth( 1 );
-  QHBoxLayout* aBtnLayout = (QHBoxLayout*) aBtnBox->layout();
-  aBtnLayout->setAutoAdd( false );
-  aBtnLayout->setSpacing( 5 );
-  aBtnLayout->setMargin( 11 );
+  //aHBLay->setAutoAdd( false );
+  aHBLay->setSpacing( 5 );
+  aHBLay->setMargin( 11 );
 
   QPushButton* aOkBtn = new QPushButton (tr("BUT_OK"), aBtnBox);
   aOkBtn->setAutoDefault( TRUE );
   aOkBtn->setDefault( true );
-  aBtnLayout->addWidget(aOkBtn);
+  aHBLay->addWidget(aOkBtn);
 
-  aBtnLayout->addStretch();
+  aHBLay->addStretch();
 
   QPushButton* aCloseBtn = new QPushButton(tr("BUT_CANCEL"), aBtnBox);
-  aBtnLayout->addWidget(aCloseBtn);
+  aHBLay->addWidget(aCloseBtn);
 
   QPushButton* aHelpBtn = new QPushButton(tr("BUT_HELP"), aBtnBox);
-  aBtnLayout->addWidget(aHelpBtn);
+  aHBLay->addWidget(aHelpBtn);
 
   aMainLayout->addWidget(aBtnBox);
 
   // signals and slots connections
-  connect(mySelPlane    , SIGNAL(clicked(int))          , this, SLOT(onPlaneSelect(int)));
+  connect(mySelPlane    , SIGNAL(buttonClicked(int))          , this, SLOT(onPlaneSelect(int)));
   connect(myCBSetDef    , SIGNAL(toggled(bool))         , this, SLOT(setBaseDefault()));
   connect(myPosSpn      , SIGNAL(valueChanged(double))  , this, SLOT(setBaseDefault()));
-  connect(mySelPlane2   , SIGNAL(clicked(int))          , this, SLOT(onCutSelect(int)));
+  connect(mySelPlane2   , SIGNAL(buttonClicked(int))          , this, SLOT(onCutSelect(int)));
   connect(myNbSpn       , SIGNAL(valueChanged(double))  , this, SLOT(DrawTable()));
-  connect(th            , SIGNAL(clicked(int))          , this, SLOT(setDefault(int)));
+  connect(myPosTable->horizontalHeader(), SIGNAL(sectionClicked(int))          , this, SLOT(setDefault(int)));
   connect(myPosSpn2     , SIGNAL(valueChanged(double))  , this, SLOT(DrawTable()));
   connect(myPreviewCheck, SIGNAL(toggled(bool))         , this, SLOT(onPreviewCheck(bool)));
   connect(myAllCurvesInvertedCheck, SIGNAL(toggled(bool)),this, SLOT(onAllCurvesInvertedCheck(bool)));
-  connect(myPosTable    , SIGNAL(valueChanged(int, int)), this, SLOT(onValueChanged(int, int)));
+  connect(myPosTable    , SIGNAL(cellChanged(int, int)), this, SLOT(onValueChanged(int, int)));
   connect(myRotXSpn     , SIGNAL(valueChanged(double))  , this, SLOT(onRotation(double)));
   connect(myRotYSpn     , SIGNAL(valueChanged(double))  , this, SLOT(onRotation(double)));
   connect(myRotXSpn2    , SIGNAL(valueChanged(double))  , this, SLOT(onRotation(double)));
@@ -321,7 +383,7 @@ void VisuGUI_CutLinesDlg::initFromPrsObject ( VISU::ColoredPrs3d_i* thePrs,
     return;
 
   myInputPane->initFromPrsObject( myPrsCopy );
-  myTabBox->setCurrentPage( 0 );
+  myTabBox->setCurrentIndex( 0 );
 }
 
 //------------------------------------------------------------------------------
@@ -329,7 +391,7 @@ int VisuGUI_CutLinesDlg::storeToPrsObject (VISU::ColoredPrs3d_i* thePrs)
 {
   if(!myInputPane->check() || !GetScalarPane()->check())
     return 0;
-
+  
   int anIsOk = myInputPane->storeToPrsObject( myPrsCopy );
   anIsOk &= GetScalarPane()->storeToPrsObject( myPrsCopy );
 
@@ -348,11 +410,21 @@ int VisuGUI_CutLinesDlg::storeToPrsObject (VISU::ColoredPrs3d_i* thePrs)
     myPrsCopy->SetBasePlanePosition(myBasePlanePos->text().toDouble());
   else myPrsCopy->SetDefault();
 
-  for (int i = 0; i < (int)myNbSpn->value(); ++i) {
-    if (!((QCheckTableItem*)myPosTable->item( i, 1 ))->isChecked())
-      myPrsCopy->SetLinePosition( i, myPosTable->text( i, 0 ).toDouble() );
-    else 
-      myPrsCopy->SetDefaultPosition(i);
+  QAbstractTableModel* aModel = qobject_cast<QAbstractTableModel*>( myPosTable->model() );
+  if ( aModel )
+  {
+    for (int i = 0; i < (int)myNbSpn->value(); ++i)
+    {
+      QTableWidgetItem* aItem = myPosTable->item( i, 1 );
+      if (aItem == 0) break;
+      if (aItem->checkState() != Qt::Checked )
+      {        
+        QVariant aVar = aModel->index( i, 0 ).data();
+        myPrsCopy->SetLinePosition( i, aVar.toDouble() );
+      }      
+      else 
+       myPrsCopy->SetDefaultPosition(i);
+    }
   }
 
   myPrsCopy->SetAllCurvesInverted( myAllCurvesInvertedCheck->isChecked() );
@@ -368,7 +440,7 @@ void VisuGUI_CutLinesDlg::createPlanes()
 {
   SVTK_ViewWindow* aView = VISU::GetActiveViewWindow<SVTK_ViewWindow>();
   if (aView == NULL) return;
-  if (!myCutLines) return;
+  if (!(bool)myCutLines) return;
   if (myPreviewActor != 0) return;
 
   storeToPrsObject(myCutLines);
@@ -377,11 +449,11 @@ void VisuGUI_CutLinesDlg::createPlanes()
   vtkDataSetMapper* aPlaneMapper = vtkDataSetMapper::New();
   aPlaneMapper->SetInput(aPolyData->GetOutput());
   aPlaneMapper->ScalarVisibilityOff();
-
+  
   myPreviewActorGlyphs = SALOME_Actor::New();
   myPreviewActorGlyphs->PickableOff();
   updateGlyphs(false);
-
+  
   myPreviewActor = SALOME_Actor::New();
   myPreviewActor->PickableOff();
   myPreviewActor->SetMapper(aPlaneMapper);
@@ -398,7 +470,7 @@ void VisuGUI_CutLinesDlg::deletePlanes()
   if (myPreviewActor == 0) return;
   vtkRenderer* aRend       = myPreviewActor->GetRenderer();
   vtkRenderer* aRendGlyphs = myPreviewActorGlyphs->GetRenderer();
-
+  
   vtkRenderWindow* aWnd1 = aRend->GetRenderWindow();
   vtkRenderWindow* aWnd2 = aRendGlyphs->GetRenderWindow();
   if(aRend && aWnd1)
@@ -416,27 +488,30 @@ void VisuGUI_CutLinesDlg::deletePlanes()
 //------------------------------------------------------------------------------
 void VisuGUI_CutLinesDlg::onPlaneSelect (int theId)
 {
-  for (int i = 0; i < mySelPlane2->count(); i++)
-    mySelPlane2->find(i)->setEnabled(true);
-  QButton* aBtn = mySelPlane2->find(theId);
+  QList<QAbstractButton*> aBtns = mySelPlane2->buttons();
+  for (QList<QAbstractButton*>::Iterator it = aBtns.begin();
+       it != aBtns.end(); it++ )    
+   (*it)->setEnabled(true);
+  
+  QAbstractButton* aBtn = mySelPlane2->button(theId);
   aBtn->setEnabled(false);
   switch (theId) {
   case 0:
     myRotXLbl->setText( tr("LBL_ROT_X"));
     myRotYLbl->setText( tr("LBL_ROT_Y"));
-    ((QRadioButton*)mySelPlane2->find(1))->setChecked(true);
+    mySelPlane2->button(1)->setChecked(true);
     onCutSelect(1, false);
     break;
   case 1:
     myRotXLbl->setText( tr("LBL_ROT_Y"));
     myRotYLbl->setText( tr("LBL_ROT_Z"));
-    ((QRadioButton*)mySelPlane2->find(2))->setChecked(true);
+    mySelPlane2->button(2)->setChecked(true);
     onCutSelect(2, false);
     break;
   case 2:
     myRotXLbl->setText( tr("LBL_ROT_Z"));
     myRotYLbl->setText( tr("LBL_ROT_X"));
-    ((QRadioButton*)mySelPlane2->find(0))->setChecked(true);
+    mySelPlane2->button(0)->setChecked(true);
     onCutSelect(0, false);
   }
   setBaseDefault(false);
@@ -461,7 +536,7 @@ void VisuGUI_CutLinesDlg::onCutSelect (int theId, bool theUpdate)
   }
   SVTK_ViewWindow* aView = VISU::GetActiveViewWindow<SVTK_ViewWindow>();
   if (aView) {
-    if (theUpdate && myPreviewCheck->isChecked() && myCutLines) {
+    if (theUpdate && myPreviewCheck->isChecked() && (bool)myCutLines) {
       deletePlanes();
       createPlanes();
     }
@@ -478,7 +553,7 @@ void VisuGUI_CutLinesDlg::setBaseDefault (bool theUpdate)
     myCutLines->SetDisplacement(myPosSpn->value());
     SVTK_ViewWindow* aView = VISU::GetActiveViewWindow<SVTK_ViewWindow>();
     if (aView) {
-      if (theUpdate && myPreviewCheck->isChecked() && myCutLines) {
+      if (theUpdate && myPreviewCheck->isChecked() && (bool)myCutLines) {
         deletePlanes();
         createPlanes();
       }
@@ -496,9 +571,13 @@ void VisuGUI_CutLinesDlg::DrawTable()
 {
   if (!hasInit) return;
 
-  int aNbRows = myPosTable->numRows();
+  int aNbRows = myPosTable->rowCount();
   int aNbPlanes = (int)myNbSpn->value();
 
+  QAbstractTableModel* aModel = qobject_cast<QAbstractTableModel*>( myPosTable->model() );
+  if ( !aModel )
+    return;
+
   myCutLines->SetOrientation(getOrientaion(),
                              myRotXSpn->value()*PI/180.,
                              myRotYSpn->value()*PI/180.);
@@ -510,40 +589,69 @@ void VisuGUI_CutLinesDlg::DrawTable()
                               myRotYSpn2->value()*PI/180.);
 
   if (aNbRows>0)
-    for (int i = 0; i < aNbRows; ++i) {
-      QCheckTableItem* aItem = (QCheckTableItem*)myPosTable->item( i, 1 );
+    for (int i = 0; i < aNbRows; ++i)
+    {
+      QTableWidgetItem* aItem = myPosTable->item( i, 1 );
       if (aItem == 0) break;
-      if (!aItem->isChecked())
-       myCutLines->SetLinePosition(i, myPosTable->text(i, 0).toDouble());
+      if (aItem->checkState() != Qt::Checked )
+      {
+        QVariant aVar = aModel->index( i, 0 ).data();
+       myCutLines->SetLinePosition(i, aVar.toDouble());
+      }
     }
 
+  //if (aNbPlanes > aNbRows)
+    //  myPosTable->addRows(aNbRows, aNbPlanes - aNbRows );
+  //else if (aNbPlanes < aNbRows)
+  //myPosTable->setRowCount(aNbPlanes);
   if (aNbPlanes > aNbRows)
-    myPosTable->insertRows(aNbRows, aNbPlanes - aNbRows );
+    while( aNbPlanes > myPosTable->rowCount() )
+      myPosTable->insertRow( myPosTable->rowCount() );
   else if (aNbPlanes < aNbRows)
-    myPosTable->setNumRows(aNbPlanes);
+    myPosTable->setRowCount(aNbPlanes);
 
+  QString str("Plane# %1");
+  QStringList aLabels;
   int aMin = (aNbRows < aNbPlanes)? aNbRows : aNbPlanes;
-  for (int i = 0; i<aMin; i++) {
-    myPosTable->setText(i, 0, QString::number(myCutLines->GetLinePosition(i)));
-    ((QCheckTableItem*)myPosTable->item( i, 1 ))->setChecked(myCutLines->IsDefaultPosition(i));
+  for (int i = 0; i<aMin; i++)
+  {
+    QModelIndex anIndex = aModel->index( i, 0 );
+    aModel->setData( anIndex, QVariant( myCutLines->GetLinePosition(i) ), Qt::DisplayRole );
+    //myPosTable->setText(i, 0, QString::number(myCutLines->GetLinePosition(i)));
+    myPosTable->item( i, 1 )->setCheckState(myCutLines->IsDefaultPosition(i) ? Qt::Checked : Qt::Unchecked );
+    aLabels.append( str.arg(i+1) );
   }
 
-  QHeader *vh = myPosTable->verticalHeader();
-  QString str("Plane# %1");
+  //QHeader *vh = myPosTable->verticalHeader();
   for (int i=aMin; i<aNbPlanes; i++) {
-    VisuGUI_NumEditItem* aEditItem = new VisuGUI_NumEditItem
-      (myPosTable, QTableItem::OnTyping, QString::number(myCutLines->GetLinePosition(i)));
-    aEditItem->setReplaceable(false);
-    aEditItem->setEnabled(!myCutLines->IsDefaultPosition(i));
+    /*VisuGUI_NumEditItem* aEditItem = new VisuGUI_NumEditItem
+      (myPosTable, QTableItem::OnTyping, QString::number(myCutLines->GetLinePosition(i)));*/
+    QTableWidgetItem* aEditItem = new QTableWidgetItem();
+    aEditItem->setText( QString::number(myCutLines->GetLinePosition(i)) );
+    //aEditItem->setReplaceable(false);
+    //aEditItem->setEnabled(!myCutLines->IsDefaultPosition(i));
+    Qt::ItemFlags aFlags = aEditItem->flags();
+    if ( myCutLines->IsDefaultPosition(i) )
+      aFlags |= Qt::ItemIsEnabled;
+    else
+      aFlags &= (~Qt::ItemIsEnabled);
+    
     myPosTable->setItem(i, 0, aEditItem);
 
-    QCheckTableItem* aCheck = new QCheckTableItem(myPosTable, 0);
+    /*QCheckTableItem* aCheck = new QCheckTableItem(myPosTable, 0);
     aCheck->setChecked(myCutLines->IsDefaultPosition(i));
     aCheck->setReplaceable(false);
+    myPosTable->setItem(i, 1, aCheck);*/
+
+    QTableWidgetItem* aCheck = new QTableWidgetItem();
+    aCheck->setCheckState( myCutLines->IsDefaultPosition(i) ?
+                           Qt::Checked : Qt::Unchecked );
     myPosTable->setItem(i, 1, aCheck);
 
-    vh->setLabel( i, str.arg(i+1) );
+    //vh->setLabel( i, str.arg(i+1) );
+    aLabels.append( str.arg(i+1) );
   }
+  myPosTable->setVerticalHeaderLabels( aLabels );
   // Update preview
   SVTK_ViewWindow* aView = VISU::GetActiveViewWindow<SVTK_ViewWindow>();
   if (aView) {
@@ -567,13 +675,13 @@ void VisuGUI_CutLinesDlg::updateGlyphs(bool update){
   aPlaneMapper->GetBounds(bounds);
 
   for(int i=0; i<3; i++) aBoundCenter[i] = (bounds[i*2] + bounds[i*2+1])/2.0;
-  for(int i=0; i<3; i++){
+  for(int i=0; i<3; i++){ 
     if (!myAllCurvesInvertedCheck->isChecked())
       aSecondPnt[i] = aDirLn[i];
     else
       aSecondPnt[i] = - aDirLn[i];
   }
-
+  
   vtkFloatingPointType max_bound = 0;
   max_bound < bounds[1]-bounds[0] ? max_bound = bounds[1] - bounds[0] : max_bound = max_bound;
   max_bound < bounds[3]-bounds[2] ? max_bound = bounds[3] - bounds[2] : max_bound = max_bound;
@@ -627,27 +735,38 @@ void VisuGUI_CutLinesDlg::updateGlyphs(bool update){
 //------------------------------------------------------------------------------
 void VisuGUI_CutLinesDlg::setDefault (int all)
 {
-  myPosTable->setCurrentCell(-1, 1);
+  myPosTable->setCurrentCell(0, 0);
   myPosTable->clearSelection();
+
+  QAbstractTableModel* aModel = qobject_cast<QAbstractTableModel*>( myPosTable->model() );
+  if ( !aModel )
+    return;
+  
   if (all == 0) return;
   if (all == 1)
     for (int i = 0; i < (int)myNbSpn->value(); ++i)
-      ((QCheckTableItem*)myPosTable->item( i, 1 ))->setChecked(true);
+      myPosTable->item( i, 1 )->setCheckState(Qt::Checked);
 
-  for (int i = 0; i < (int)myNbSpn->value(); ++i) {
-    if ( ((QCheckTableItem*)myPosTable->item( i, 1 ))->isChecked() ) {
+  for (int i = 0; i < (int)myNbSpn->value(); ++i)
+  {
+    if ( myPosTable->item( i, 1 )->checkState() == Qt::Checked )
+    {
       myCutLines->SetDefaultPosition(i);
-      myPosTable->setText( i, 0, QString::number(myCutLines->GetLinePosition(i)));
-      myPosTable->item( i, 0 )->setEnabled(false);
-    } else
-      myPosTable->item( i, 0 )->setEnabled(true);
+      QModelIndex anIndex = aModel->index( i, 0 );
+      aModel->setData( anIndex, QVariant( myCutLines->GetLinePosition(i) ), Qt::DisplayRole );
+      //myPosTable->setText( i, 0, QString::number(myCutLines->GetLinePosition(i)));
+      //myPosTable->item( i, 0 )->setEnabled(false);
+      myPosTable->item( i, 0 )->setFlags( myPosTable->item( i, 0 )->flags() &(~Qt::ItemIsEnabled ) );
+    }
+    else
+      myPosTable->item( i, 0 )->setFlags( myPosTable->item( i, 0 )->flags() | Qt::ItemIsEnabled );
   }
 }
 
 //------------------------------------------------------------------------------
 VISU::CutPlanes::Orientation VisuGUI_CutLinesDlg::getOrientaion (bool IsBasePlane)
 {
-  QHButtonGroup* aBG;
+  QButtonGroup* aBG;
 
   if (IsBasePlane)
     aBG = mySelPlane;
@@ -655,7 +774,7 @@ VISU::CutPlanes::Orientation VisuGUI_CutLinesDlg::getOrientaion (bool IsBasePlan
     aBG = mySelPlane2;
 
   VISU::CutPlanes::Orientation orient;
-  switch (aBG->id(aBG->selected())) {
+  switch (aBG->id(aBG->checkedButton())) {
   case 0:
     orient = VISU::CutPlanes::XY;
     break;
@@ -673,15 +792,15 @@ void VisuGUI_CutLinesDlg::setOrientation (const VISU::CutPlanes::Orientation ori
 {
   switch (orient) {
   case VISU::CutPlanes::XY:
-    ((QRadioButton*)mySelPlane->find(0))->setChecked(true);
+    mySelPlane->button(0)->setChecked(true);
     onPlaneSelect(0);
     break;
   case VISU::CutPlanes::YZ:
-    ((QRadioButton*)mySelPlane->find(1))->setChecked(true);
+    mySelPlane->button(1)->setChecked(true);
     onPlaneSelect(1);
     break;
   case VISU::CutPlanes::ZX:
-    ((QRadioButton*)mySelPlane->find(2))->setChecked(true);
+    mySelPlane->button(2)->setChecked(true);
     onPlaneSelect(2);
   }
 }
@@ -691,45 +810,115 @@ void VisuGUI_CutLinesDlg::setOrientation2 (const VISU::CutPlanes::Orientation or
 {
   switch (orient) {
   case VISU::CutPlanes::XY:
-    ((QRadioButton*)mySelPlane2->find(0))->setChecked(true);
+    mySelPlane2->button(0)->setChecked(true);
     onCutSelect(0);
     break;
   case VISU::CutPlanes::YZ:
-    ((QRadioButton*)mySelPlane2->find(1))->setChecked(true);
+    mySelPlane2->button(1)->setChecked(true);
     onCutSelect(1);
     break;
   case VISU::CutPlanes::ZX:
-    ((QRadioButton*)mySelPlane2->find(2))->setChecked(true);
+    mySelPlane2->button(2)->setChecked(true);
     onCutSelect(2);
   }
 }
 
 void VisuGUI_CutLinesDlg::onValueChanged (int theRow, int theCol)
 {
-  if (theCol == 0) {
-    QString aTxt = myPosTable->text(theRow, 0);
-    bool isChanged = !aTxt.isEmpty();
-    ((QCheckTableItem*)myPosTable->item(theRow, 1))->setChecked(!isChanged);
+  /*QAbstractTableModel* aModel = qobject_cast<QAbstractTableModel*>( myPosTable->model() );
+  if ( !aModel )
+    return;
+
+  QModelIndex anIndex = aModel->index( theRow, theCol );
+  
+  if (theCol == 0)
+  {
+    bool isChanged = !anIndex.data().isNull();
+    myPosTable->item(theRow, 1)->setCheckState(!isChanged ? Qt::Checked : Qt::Unchecked);
     SVTK_ViewWindow* aView = VISU::GetActiveViewWindow<SVTK_ViewWindow>();
-    if (aView) {
-      if (myPreviewCheck->isChecked()) {
+    if (aView)
+    {
+      if (myPreviewCheck->isChecked())
+      {
        deletePlanes();
        createPlanes();
       }
     }
-  } else if (theCol == 1){
-    bool isDefault = ((QCheckTableItem*)myPosTable->item(theRow, theCol))->isChecked();
-    if (isDefault) {
+  }
+  else if (theCol == 1)
+  {
+    bool isDefault = myPosTable->item(theRow, 1)->checkState() == Qt::Checked;
+    if (isDefault)
+    {
       SVTK_ViewWindow* aView = VISU::GetActiveViewWindow<SVTK_ViewWindow>();
-      if (aView) {
-       if (myPreviewCheck->isChecked()) {
+      if (aView)
+      {
+       if (myPreviewCheck->isChecked())
+        {
          deletePlanes();
          createPlanes();
        }
       }
-      myPosTable->setText(theRow, 0, QString::number(myCutLines->GetLinePosition(theRow)));
+      aModel->setData( anIndex, myCutLines->GetLinePosition(theRow), Qt::DisplayRole );
+      myPosTable->item( theRow, 0 )->setFlags( myPosTable->item( theRow, 0 )->flags() | Qt::ItemIsEnabled );
     }
-    myPosTable->item(theRow, 0)->setEnabled(!isDefault);
+    else
+      myPosTable->item( theRow, 0 )->setFlags( myPosTable->item( theRow, 0 )->flags() &(~Qt::ItemIsEnabled ) );
+  }*/
+
+  QAbstractTableModel* aModel = qobject_cast<QAbstractTableModel*>( myPosTable->model() );
+  if ( !aModel )
+    return;
+  
+  if ( !myPosTable->item(theRow, 1) || !myPosTable->item(theRow, 0) )
+    return;
+
+  QModelIndex anIndex;
+
+  QTableWidgetItem* anItem = myPosTable->item(theRow, theCol);
+  if (!anItem )
+    return;
+
+  bool isDefault = myPosTable->item(theRow, 1)->checkState() == Qt::Checked;
+  if (theCol == 0 )
+  {
+    anIndex = aModel->index( theRow, 0 );
+    //if ( !isDefault)
+      //myCutLines->SetLinePosition( theRow, anIndex.data().toDouble());
+          
+            
+    if ( myPreviewCheck->isChecked() )
+    {
+      //Update Preview
+      if (SVTK_ViewWindow* vf = VISU::GetActiveViewWindow<SVTK_ViewWindow>())
+      {
+       //myCutLines->GetPipeLine()->Update();
+       deletePlanes();
+       createPlanes();
+       //vf->Repaint();
+      }
+    }
+  }
+  else
+  {
+    anItem = myPosTable->item(theRow, 0);
+    Qt::ItemFlags flags = anItem->flags();
+    if ( isDefault )
+    {
+      myCutLines->SetDefaultPosition(theRow);
+      anIndex = aModel->index( theRow, 0 );
+      aModel->setData( anIndex, myCutLines->GetLinePosition(theRow), Qt::DisplayRole );
+
+      /*if ( myPreviewCheck->isChecked() )
+        {
+        //not needed update presentation, because item->setFlags generates signal cellChanged() again
+        }*/
+      flags &= (~Qt::ItemIsEnabled );
+    }
+    else
+      flags |=  Qt::ItemIsEnabled;
+   
+    anItem->setFlags( flags );
   }
 }
 
@@ -769,7 +958,7 @@ void VisuGUI_CutLinesDlg::onAllCurvesInvertedCheck(bool theInvert)
 
 void VisuGUI_CutLinesDlg::onRotation (double theValue)
 {
-  if (!myCutLines) return;
+  if (!(bool)myCutLines) return;
   SVTK_ViewWindow* aView = VISU::GetActiveViewWindow<SVTK_ViewWindow>();
   if (aView) {
     if (myPreviewCheck->isChecked()) {
@@ -781,7 +970,7 @@ void VisuGUI_CutLinesDlg::onRotation (double theValue)
 
 void VisuGUI_CutLinesDlg::onPlanePos (const QString& theValue)
 {
-  if (!myCutLines) return;
+  if (!(bool)myCutLines) return;
   SVTK_ViewWindow* aView = VISU::GetActiveViewWindow<SVTK_ViewWindow>();
   if (aView) {
     if (myPreviewCheck->isChecked()) {
index 2d0b1fb26d6df100377143a5ed457cae578030b0..a0e5565ca20a636cb89d488b25afac466863701a 100644 (file)
@@ -1,37 +1,37 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VisuGUI_CutLinesDlg.h
 //  Author : VSV
 //  Module : VISU
-
+//
 #ifndef VISUGUI_CUTLINESDLG_H
 #define VISUGUI_CUTLINESDLG_H
 
 #include "VisuGUI_CutPlanesDlg.h"
 
-#include <qhbuttongroup.h>
-#include <qvalidator.h>
-#include <qtabwidget.h>
-#include <qcheckbox.h>
+#include <QCheckBox>
 
 class QLineEdit;
+class QTabWidget;
 
 class SUIT_ViewManager;
 class SalomeApp_Module;
@@ -82,25 +82,25 @@ private:
   void deletePlanes();
   void updateGlyphs(bool update);
 
-  QHButtonGroup* mySelPlane;
-  QtxDblSpinBox* myRotXSpn;
-  QtxDblSpinBox* myRotYSpn;
+  QButtonGroup* mySelPlane;
+  QtxDoubleSpinBox* myRotXSpn;
+  QtxDoubleSpinBox* myRotYSpn;
   QLabel* myRotXLbl;
   QLabel* myRotYLbl;
-  QtxDblSpinBox* myPosSpn;
+  QtxDoubleSpinBox* myPosSpn;
   QLineEdit* myBasePlanePos;
   QCheckBox* myCBSetDef;
   QCheckBox* myCreateTable;
   QCheckBox* myCurvesCheck;
 
-  QHButtonGroup* mySelPlane2;
-  QtxDblSpinBox* myNbSpn;
-  QtxDblSpinBox* myRotXSpn2;
-  QtxDblSpinBox* myRotYSpn2;
+  QButtonGroup* mySelPlane2;
+  QtxDoubleSpinBox* myNbSpn;
+  QtxDoubleSpinBox* myRotXSpn2;
+  QtxDoubleSpinBox* myRotYSpn2;
   QLabel* myRotXLbl2;
   QLabel* myRotYLbl2;
-  QtxDblSpinBox* myPosSpn2;
-  QTable* myPosTable;
+  QtxDoubleSpinBox* myPosSpn2;
+  QTableWidget* myPosTable;
   bool hasInit;
 
   QDoubleValidator *mydvalidator;
index 52f8a065444c32dc3c18db49646d6138d19944f6..482514dd72252a71239c02a50f90cb7c824934b0 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //
 //  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
-//
-//
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_CutPlanesDlg.cxx
 //  Author : Laurent CORNABE & Hubert ROLLAND
 //  Module : VISU
 //  $Header$
-
+//
 #include "VisuGUI_CutPlanesDlg.h"
 
 #include "VISU_ColoredPrs3dFactory.hh"
 
 #include "VISU_ColoredPrs3dFactory.hh"
 #include "VISU_CutPlanes_i.hh"
+#include "VISU_Result_i.hh"
 #include "VISU_CutPlanesPL.hxx"
 
-#include "OB_Browser.h"
+//#include "OB_Browser.h"
+
+#include "VisuGUI_TableDlg.h"
 
 #include "SVTK_ViewWindow.h"
 
 #include "SUIT_MessageBox.h"
 #include "SUIT_ResourceMgr.h"
 
-#include <qlayout.h>
-#include <qbuttongroup.h>
-#include <qcheckbox.h>
-#include <qstyle.h>
-#include <qstring.h>
-#include <qvalidator.h>
-#include <qlineedit.h>
-#include <qtabwidget.h>
-#include <qlabel.h>
-#include <qpushbutton.h>
+#include <QLayout>
+#include <QLabel>
+#include <QButtonGroup>
+#include <QCheckBox>
+#include <QStyle>
+#include <QValidator>
+#include <QLineEdit>
+#include <QTabWidget>
+#include <QKeyEvent>
+#include <QSpinBox>
+#include <QRadioButton>
+#include <QTableWidget>
+#include <QGroupBox>
+#include <QPushButton>
+#include <QHeaderView>
+#include <QComboBox>
 
 #include <vtkRenderer.h>
 #include <vtkPolyData.h>
 #include <vtkAppendPolyData.h>
 #include <vtkDataSetMapper.h>
+#include <vtkDataSet.h>
+
+#include <limits>
 
 using namespace std;
 
@@ -76,94 +87,135 @@ using namespace std;
 VisuGUI_CutPlanesPane::VisuGUI_CutPlanesPane (QWidget* theParent)
      : QFrame(theParent), myPreviewActor(0)
 {
-  QGridLayout* TopLayout = new QGridLayout(this);
-  TopLayout->setSpacing(6);
-  TopLayout->setMargin(10);
+  QGridLayout* TopLayout = new QGridLayout( this );
+  TopLayout->setSpacing( 6 );
+  TopLayout->setMargin( 10 );
 
-  QButtonGroup* SelPlane = new QButtonGroup (tr("TXT_ORIENTATION"), this, "SelPlane");
+  QButtonGroup* SelPlane = new QButtonGroup ( this );
+  QGroupBox* aGB = new QGroupBox( tr("TXT_ORIENTATION"), this );
   //SelPlane->setTitle(tr("TXT_ORIENTATION"));
-  SelPlane->setColumnLayout(0, Qt::Vertical);
-  SelPlane->layout()->setSpacing( 0 );
-  SelPlane->layout()->setMargin( 0 );
-  QGridLayout* SelPlaneLayout = new QGridLayout( SelPlane->layout() );
+  //SelPlane->setColumnLayout(0, Qt::Vertical);
+  //SelPlane->layout()->setSpacing( 0 );
+  //SelPlane->layout()->setMargin( 0 );
+  QGridLayout* SelPlaneLayout = new QGridLayout( aGB );
   SelPlaneLayout->setAlignment( Qt::AlignTop );
   SelPlaneLayout->setSpacing( 6 );
   SelPlaneLayout->setMargin( 11 );
 
-  RBxy = new QRadioButton (tr("PARALLEL_XOY"), SelPlane, "RBxy");
-  RByz = new QRadioButton (tr("PARALLEL_YOZ"), SelPlane, "RByz");
-  RBzx = new QRadioButton (tr("PARALLEL_ZOX"), SelPlane, "RBzx");
+  RBxy = new QRadioButton (tr("PARALLEL_XOY"), aGB);
+  RByz = new QRadioButton (tr("PARALLEL_YOZ"), aGB);
+  RBzx = new QRadioButton (tr("PARALLEL_ZOX"), aGB);
   SelPlaneLayout->addWidget( RBxy, 0, 0 );
   SelPlaneLayout->addWidget( RByz, 0, 1 );
   SelPlaneLayout->addWidget( RBzx, 0, 2 );
+  SelPlane->addButton( RBxy );
+  SelPlane->addButton( RByz );
+  SelPlane->addButton( RBzx );
 
-  QLabel* LabelPosi_3 = new QLabel (tr("LBL_NB_PLANS"), this, "LabelPosi_3");
+  QLabel* LabelPosi_3 = new QLabel (tr("LBL_NB_PLANS"), this);
 
-  nbPlan = new QSpinBox( 1, 100, 1, this, "nbPlan" );
+  nbPlan = new QSpinBox( this );
+  nbPlan->setMinimum( 1 );
+  nbPlan->setMaximum(100);
+  nbPlan->setSingleStep( 1 );
   nbPlan->setValue( 1 );
   nbPlan->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
 
-  myPosTable = new QTable (this, "Positions of planes");
+  myPosTable = new QTableWidget (this);
   myPosTable->setMaximumHeight( 227 );
   myPosTable->setMinimumWidth( 294 );
-  myPosTable->setNumCols(2);
-  myPosTable->setNumRows(0);
-  connect( myPosTable, SIGNAL(valueChanged(int, int)), this, SLOT(onValueChanged(int, int)) );
-
-  QHeader *th = myPosTable->horizontalHeader();
-  th->setLabel( 0, "Position" );
-  th->setLabel( 1, "Set default" );
-  th->setStyle("QStyle::CE_PushButton");
-
-  QGroupBox* GBrot = new QGroupBox (tr("LBL_ROTATION"), this, "GBrot");
-  GBrot->setColumnLayout(0, Qt::Vertical);
-  GBrot->layout()->setSpacing( 0 );
-  GBrot->layout()->setMargin( 0 );
-  QGridLayout* GBrotLayout = new QGridLayout( GBrot->layout() );
+  myPosTable->setColumnCount(2);
+  myPosTable->setRowCount(0);
+  connect( myPosTable, SIGNAL(cellChanged(int, int)), this, SLOT(onValueChanged(int, int)) );
+
+  myPosTable->setItemDelegateForColumn( 0,
+         new NumDelegateItem( myPosTable, NumDelegateItem::NV_Real) );
+
+  myPosTable->setEditTriggers(
+         (QAbstractItemView::EditTriggers)(QAbstractItemView::AllEditTriggers &(~QAbstractItemView::CurrentChanged)));
+
+  QStringList aLabels;
+  aLabels.append( "Position" );
+  aLabels.append( "Set default" );
+  
+  myPosTable->setHorizontalHeaderLabels( aLabels );
+
+  QGroupBox* GBrot = new QGroupBox (tr("LBL_ROTATION"), this);
+  //GBrot->setColumnLayout(0, Qt::Vertical);
+  //GBrot->layout()->setSpacing( 0 );
+  //GBrot->layout()->setMargin( 0 );
+  QGridLayout* GBrotLayout = new QGridLayout( GBrot );
   GBrotLayout->setAlignment( Qt::AlignTop );
   GBrotLayout->setSpacing( 6 );
   GBrotLayout->setMargin( 11 );
 
-  LabelRot1 = new QLabel (tr("LBL_ROT_X"), GBrot, "LabelRot1");
+  LabelRot1 = new QLabel (tr("LBL_ROT_X"), GBrot );
   GBrotLayout->addWidget( LabelRot1, 0, 0 );
 
-  Rot1 = new QtxDblSpinBox( -180, 180, 10, GBrot );
+  Rot1 = new QtxDoubleSpinBox( -180, 180, 10, GBrot );
   Rot1->setValue( 0 );
   Rot1->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   connect( Rot1, SIGNAL( valueChanged( double )), this, SLOT( onRotation( double ) ) );
   GBrotLayout->addWidget( Rot1, 0, 1 );
 
-  LabelRot2 = new QLabel (tr("LBL_ROT_Y"), GBrot, "LabelRot2");
+  LabelRot2 = new QLabel (tr("LBL_ROT_Y"), GBrot );
   GBrotLayout->addWidget( LabelRot2, 1, 0 );
 
-  Rot2 = new QtxDblSpinBox( -180, 180, 10, GBrot );
+  Rot2 = new QtxDoubleSpinBox( -180, 180, 10, GBrot );
   Rot2->setValue( 0 );
   Rot2->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   connect( Rot2, SIGNAL( valueChanged( double )), this, SLOT( onRotation( double ) ) );
   GBrotLayout->addWidget( Rot2, 1, 1 );
 
   QLabel* aPosLbl = new QLabel(tr( "LBL_POS" ), this);
-  myPosSpn = new QtxDblSpinBox( 0, 1, 0.1, this );
+  myPosSpn = new QtxDoubleSpinBox( 0, 1, 0.1, this );
+
+  GDeformation = new QGroupBox(tr("LBL_DEFORMATION"), this);
+  GDeformation->setCheckable(true);
+  GDeformation->setChecked(false);
+  QGridLayout* GDeformationLayout = new QGridLayout( GDeformation );
+  GDeformationLayout->setSpacing( 6 );
+  GDeformationLayout->setMargin( 11 );
+  connect(GDeformation, SIGNAL(toggled(bool)), this, SLOT(onDeformationCheck(bool)));
+
+  QLabel* LabelDeformation1 = new QLabel (tr("LBL_DEFROMATION_VECT"), GDeformation);
+  GDeformationLayout->addWidget( LabelDeformation1, 0, 0 );
+
+  myVectorialFieldCombo = new QComboBox (GDeformation);
+  GDeformationLayout->addWidget( myVectorialFieldCombo, 0, 1 );
+
+  SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
+  int aPrecision = aResourceMgr->integerValue( "VISU", "floating_point_precision", 0 );
+  
+  QLabel* LabelDeformation2 = new QLabel (tr("LBL_DEFROMATION_SCALE"), GDeformation);
+  GDeformationLayout->addWidget( LabelDeformation2, 1, 0 );
+  myScaleSpn = new QtxDoubleSpinBox (0, 1.0E+38, 0.1, aPrecision*(-1), 38, GDeformation);
+  myScaleSpn->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed));
+  GDeformationLayout->addWidget( myScaleSpn, 1, 1 );
+  connect(myVectorialFieldCombo,     SIGNAL(activated(int)), this, SLOT(onVectorialFieldChanged(int)));
+  connect(myScaleSpn, SIGNAL(valueChanged(double)), this, SLOT(onScaleFactorChanged(double)));
+  myScaleSpn->setValue(0.1);
 
   myPreviewCheck = new QCheckBox(tr("LBL_SHOW_PREVIEW"), this);
   myPreviewCheck->setChecked(false);
   connect( myPreviewCheck, SIGNAL( toggled( bool )), this, SLOT( onPreviewCheck( bool ) ) );
 
-  TopLayout->addMultiCellWidget( SelPlane, 0, 0, 0, 1 );
-  TopLayout->addMultiCellWidget( GBrot, 1, 1, 0, 1 );
+  TopLayout->addWidget( aGB, 0, 0, 1, 2 );
+  TopLayout->addWidget( GBrot, 1, 0, 1, 2 );
   TopLayout->addWidget( LabelPosi_3,   2, 0 );
   TopLayout->addWidget( nbPlan,        2, 1 );
-  TopLayout->addMultiCellWidget( myPosTable, 3, 3, 0, 1 );
+  TopLayout->addWidget( myPosTable, 3, 0, 1, 2 );
   TopLayout->setRowStretch ( 3, 3 );
   TopLayout->addWidget(aPosLbl, 4, 0 );
   TopLayout->addWidget(myPosSpn, 4, 1 );
-  TopLayout->addMultiCellWidget( myPreviewCheck, 5, 5, 0, 1 );
+  TopLayout->addWidget( GDeformation, 5, 0, 1, 2 );
+  TopLayout->addWidget( myPreviewCheck, 6, 0, 1, 2 );
 
   // signals and slots connections
-  connect( SelPlane, SIGNAL( clicked( int )), this, SLOT( orientationChanged( int ) ) );
+  connect( SelPlane, SIGNAL( buttonClicked( int )), this, SLOT( orientationChanged( int ) ) );
   connect( nbPlan, SIGNAL( valueChanged( int )), this, SLOT( DrawTable( ) ) );
   connect( myPosSpn, SIGNAL( valueChanged( double )), this, SLOT( DrawTable( ) ) );
-  connect( th, SIGNAL( clicked(int)), this, SLOT( setDefault(int) ) );
+  connect( myPosTable->horizontalHeader(), SIGNAL( sectionClicked(int)), this, SLOT( setDefault(int) ) );
 
   // default values
   hasInit = false;
@@ -187,6 +239,24 @@ void VisuGUI_CutPlanesPane::initFromPrsObject (VISU::CutPlanes_i* thePrs)
   setRotation(thePrs->GetRotateX()*180./PI, thePrs->GetRotateY()*180./PI);
   setPlanePos(thePrs->GetOrientationType());
   myPosSpn->setValue(thePrs->GetDisplacement());
+  InitEntity2VectorialFieldsMap(thePrs);
+  InsertAllVectorialFields();
+  setScaleFactor(thePrs->GetScale());
+  if(myEntity2VectorialFields.size() < 1)
+    GDeformation->setDisabled(true);
+  else{
+    if(thePrs->IsDeformed()){
+      GDeformation->setChecked(true);
+      int idx = myVectorialFieldCombo->findText(thePrs->GetVectorialFieldName());
+      if (idx >= 0)
+       myVectorialFieldCombo->setCurrentIndex(idx);
+      else {
+       myVectorialFieldCombo->addItem(thePrs->GetVectorialFieldName());
+       myVectorialFieldCombo->setCurrentIndex(myVectorialFieldCombo->count()-1);
+      }
+    }
+  }
+    
   hasInit = true;
   // init table
   myCutPlanes = VISU::TSameAsFactory<VISU::TCUTPLANES>().Create(thePrs, VISU::ColoredPrs3d_i::EDoNotPublish);
@@ -199,19 +269,78 @@ void VisuGUI_CutPlanesPane::initFromPrsObject (VISU::CutPlanes_i* thePrs)
   }
 }
 
+void VisuGUI_CutPlanesPane::InitEntity2VectorialFieldsMap(VISU::ColoredPrs3d_i* thePrs){
+
+  VISU::Result_var theResult = thePrs->GetResultObject();
+  VISU::Result_i* aResult = dynamic_cast<VISU::Result_i*>(GetServant(theResult).in());
+  VISU::Result::Entities_var aEntities = aResult->GetEntities(thePrs->GetMeshName());
+  VISU::Result::TimeStampNumbers_var aScalarTimeStamp = aResult->GetTimeStampNumbers(thePrs->GetMeshName(),
+                                                                                     thePrs->GetEntity(),
+                                                                                     thePrs->GetFieldName());
+  CORBA::Long aTimeStampNumber = aScalarTimeStamp->length();
+  
+  for(size_t iEntity = 0; iEntity < aEntities->length(); iEntity++){
+    VISU::Entity aEntity = aEntities[iEntity];
+    VISU::Result::EntityNames_var aFields = aResult->GetFields(thePrs->GetMeshName(),aEntity);
+    for(size_t iField = 0; iField < aFields->length(); iField++){
+
+      TVectorialFieldsList aVectorialFields;
+      VISU::Result::TimeStampNumbers_var aTimeStamps =  aResult->GetTimeStampNumbers(thePrs->GetMeshName(),aEntity,aFields[iField] );
+      
+      if((aResult->GetNumberOfComponents(thePrs->GetMeshName(),aEntity,aFields[iField] ) > 1) &&
+         (aTimeStamps->length() >= aTimeStampNumber)){
+        aVectorialFields.push_back(QString(aFields[iField].in()));
+      }
+      if(aVectorialFields.size() > 0){
+        myEntity2VectorialFields.insert(TEntVectPair(aEntity,aVectorialFields));
+      }
+    }
+  }
+}
+
+void VisuGUI_CutPlanesPane::InsertAllVectorialFields(){
+  TEntity2VectorialFields::const_iterator aFieldIter = myEntity2VectorialFields.begin();
+  for( ;aFieldIter != myEntity2VectorialFields.end();aFieldIter++ ){
+    TVectorialFieldsList aVectorialFields = aFieldIter->second;
+    for(size_t iField = 0;iField < aVectorialFields.size(); iField++)
+      myVectorialFieldCombo->addItem(aVectorialFields[iField]);
+  }
+}
+
+double VisuGUI_CutPlanesPane::getScaleFactor(){
+  return myScaleSpn->value();
+}
+
+void VisuGUI_CutPlanesPane::setScaleFactor(double theFactor)
+{
+  double step = 0.1;
+  if (fabs(theFactor) > std::numeric_limits<double>::epsilon()) {
+    int degree = int(log10(fabs(theFactor))) - 1;
+    if (fabs(theFactor) < 1) {
+      // as logarithm value is negative in this case
+      // and it is truncated to the bigger integer
+      degree -= 1;
+    }
+    step = pow(10., double(degree));
+  }
+
+  myScaleSpn->setSingleStep(step);
+  myScaleSpn->setValue(theFactor);
+}
+
 void VisuGUI_CutPlanesPane::createPlanes()
 {
   if (VISU::GetActiveViewWindow<SVTK_ViewWindow>() == NULL) return;
-  if (!myCutPlanes) return;
+  if (!(bool)myCutPlanes) return;
   if (myPreviewActor != 0) return;
 
-  vtkAppendPolyData* aPolyData = myCutPlanes->GetSpecificPL()->GetAppendPolyData();
-  if (!aPolyData->GetOutput()->GetNumberOfCells()) {
+  vtkDataSet* aDataSet = myCutPlanes->GetSpecificPL()->GetWarpVectorOutput();
+  if (!aDataSet->GetNumberOfCells()) {
     onPreviewCheck(false);
     return;
   }
   vtkDataSetMapper* aPlaneMapper = vtkDataSetMapper::New();
-  aPlaneMapper->SetInput(aPolyData->GetOutput());
+  aPlaneMapper->SetInput(aDataSet);
   aPlaneMapper->ScalarVisibilityOff();
 
   myPreviewActor = SALOME_Actor::New();
@@ -227,14 +356,39 @@ int VisuGUI_CutPlanesPane::storeToPrsObject (VISU::CutPlanes_i* thePrs)
   thePrs->SetNbPlanes(getNbPlanes());
   thePrs->SetDisplacement(myPosSpn->value());
   for (int i = 0; i < getNbPlanes(); ++i) {
-    QCheckTableItem* anItem = (QCheckTableItem*)myPosTable->item(i, 1);
+    QTableWidgetItem* anItem = myPosTable->item(i, 1);
     if (!anItem)
       break;
-    if (!anItem->isChecked())
-      thePrs->SetPlanePosition(i, myPosTable->text(i, 0).toDouble());
+    if (anItem->checkState() != Qt::Checked )
+      thePrs->SetPlanePosition(i, myPosTable->item(i, 0)->text().toDouble());
     else
       thePrs->SetDefault(i);
   }
+
+  thePrs->UseDeformation(GDeformation->isChecked());
+  
+  if(GDeformation->isChecked()){
+    TEntity2VectorialFields::const_iterator anIter = myEntity2VectorialFields.begin();
+    VISU::Entity anEntity;
+    QString aFieldName;
+    bool isInited = false;
+    for(;anIter != myEntity2VectorialFields.end();anIter++){
+      TVectorialFieldsList aFields = anIter->second;
+      for(int it = 0;it < aFields.size();it++)
+        if(!QString::compare(aFields[it], myVectorialFieldCombo->currentText ())){
+          anEntity = anIter->first;
+          aFieldName = aFields[it];
+          isInited = true;
+          break;
+        }
+      if(isInited)
+        break;
+    }
+    if(isInited)
+      thePrs->SetVectorialField(anEntity,aFieldName.toLatin1().constData());
+    
+    thePrs->SetScale(myScaleSpn->value());
+  }
   return 1;
 }
 
@@ -243,13 +397,13 @@ int VisuGUI_CutPlanesPane::storeToPrsObject (VISU::CutPlanes_i* thePrs)
 */
 void VisuGUI_CutPlanesPane::orientationChanged (int Id)
 {
-  if (Id == 0) { // RBxy->isChecked()
+  if ( RBxy->isChecked() ) { // RBxy->isChecked()
     LabelRot1->setText(tr("LBL_ROT_X"));
     LabelRot2->setText(tr("LBL_ROT_Y"));
-  } else if (Id == 1) { // RByz->isChecked()
+  } else if ( RByz->isChecked() ) { // RByz->isChecked()
     LabelRot1->setText(tr("LBL_ROT_Y"));
     LabelRot2->setText(tr("LBL_ROT_Z"));
-  } else {
+  } else if ( RBzx->isChecked() ) {
     LabelRot1->setText(tr("LBL_ROT_Z"));
     LabelRot2->setText(tr("LBL_ROT_X"));
   }
@@ -303,56 +457,112 @@ void VisuGUI_CutPlanesPane::setRotation (const double r1, const double r2)
   Rot2->setValue( r2 );
 }
 
+void VisuGUI_CutPlanesPane::onScaleFactorChanged(double theFactor){
+  DrawTable();
+}
+
+void VisuGUI_CutPlanesPane::onVectorialFieldChanged(int pos){
+  InitVectorialField();
+  DrawTable();
+}
+
+void VisuGUI_CutPlanesPane::onDeformationCheck(bool Flag){
+  if(!(bool)myCutPlanes || !hasInit) return;
+  myCutPlanes->UseDeformation(Flag);
+  InitVectorialField();
+  DrawTable();
+}
+
+void VisuGUI_CutPlanesPane::InitVectorialField(){
+  if(myCutPlanes->IsDeformed()){
+    TEntity2VectorialFields::const_iterator anIter = myEntity2VectorialFields.begin();
+    VISU::Entity anEntity;
+    QString aFieldName;
+    bool isInited = false;
+    for(;anIter != myEntity2VectorialFields.end();anIter++){
+      TVectorialFieldsList aFields = anIter->second;
+      for(int it = 0;it < aFields.size();it++)
+        if(!QString::compare(aFields[it], myVectorialFieldCombo->currentText ())){
+          anEntity = anIter->first;
+          aFieldName = aFields[it];
+          isInited = true;
+          break;
+        }
+      if(isInited)
+        break;
+    }
+    if(isInited)
+      myCutPlanes->SetVectorialField(anEntity,aFieldName.toLatin1().constData());
+  }
+}
+
 /*!
   Draw the table of planes positions
 */
 void VisuGUI_CutPlanesPane::DrawTable()
 {
-  if (!myCutPlanes) return;
+  if (!(bool)myCutPlanes) return;
   if (!hasInit) return;
 
-  int aNbRows = myPosTable->numRows();
+  int aNbRows = myPosTable->rowCount();
   int aNbPlanes = getNbPlanes();
 
   myCutPlanes->SetOrientation(getOrientaion(),getRotation1()*PI/180.,getRotation2()*PI/180.);
   myCutPlanes->SetNbPlanes(aNbPlanes);
   myCutPlanes->SetDisplacement(myPosSpn->value());
+  myCutPlanes->SetScale(getScaleFactor());
   if (aNbRows>0)
     for (int i = 0; i < aNbRows; ++i) {
-      QCheckTableItem* aItem = (QCheckTableItem*)myPosTable->item( i, 1 );
+      QTableWidgetItem* aItem = myPosTable->item( i, 1 );
       if (aItem == 0) break;
-      if (!aItem->isChecked())
-        myCutPlanes->SetPlanePosition(i, myPosTable->text(i, 0).toDouble());
+      if (aItem->checkState() != Qt::Checked )
+       myCutPlanes->SetPlanePosition(i, myPosTable->item(i, 0)->text().toDouble());
     }
 
   if (aNbPlanes > aNbRows)
-    myPosTable->insertRows(aNbRows, aNbPlanes - aNbRows );
+    while( aNbPlanes > myPosTable->rowCount() )
+      myPosTable->insertRow( myPosTable->rowCount() );
   else if (aNbPlanes < aNbRows)
-    myPosTable->setNumRows(aNbPlanes);
+    myPosTable->setRowCount(aNbPlanes);
 
+  QStringList aLabels;
+  QString str("Plane# %1");
   int aMin = (aNbRows < aNbPlanes)? aNbRows : aNbPlanes;
   for (int i = 0; i<aMin; i++) {
-    myPosTable->setText(i, 0, QString::number(myCutPlanes->GetPlanePosition(i)));
-    ((QCheckTableItem*)myPosTable->item( i, 1 ))->setChecked(myCutPlanes->IsDefault(i));
+    myPosTable->item( i, 0 )->setText( QString::number(myCutPlanes->GetPlanePosition(i)));
+    myPosTable->item( i, 1 )->setCheckState( myCutPlanes->IsDefault(i) ? Qt::Checked : Qt::Unchecked);
+    aLabels.append( str.arg(i+1) );
   }
 
-  QHeader *vh = myPosTable->verticalHeader();
-  QString str("Plane# %1");
+  //QHeader *vh = myPosTable->verticalHeader();
   for (int i=aMin; i<aNbPlanes; i++) {
-    VisuGUI_NumEditItem* aEditItem = new VisuGUI_NumEditItem(myPosTable,
-                                                            QTableItem::OnTyping,
-                                                            QString::number(myCutPlanes->GetPlanePosition(i)));
-    aEditItem->setReplaceable(false);
-    aEditItem->setEnabled(!myCutPlanes->IsDefault(i));
+    QTableWidgetItem* aEditItem = new QTableWidgetItem();
+    aEditItem->setText( QString::number(myCutPlanes->GetPlanePosition(i)));
+    //aEditItem->setReplaceable(false);
+    //aEditItem->setEnabled(!myCutPlanes->IsDefault(i));
+    Qt::ItemFlags aFlags = aEditItem->flags();
+    if ( myCutPlanes->IsDefault(i) )
+      aFlags |= Qt::ItemIsEnabled;
+    else
+      aFlags &= (~Qt::ItemIsEnabled);
     myPosTable->setItem(i, 0, aEditItem);
 
-    QCheckTableItem* aCheck = new QCheckTableItem(myPosTable, 0);
+    /*QCheckTableItem* aCheck = new QCheckTableItem(myPosTable, 0);
     aCheck->setChecked(myCutPlanes->IsDefault(i));
-    aCheck->setReplaceable(false);
+    aCheck->setReplaceable(false);*/
+    QTableWidgetItem* aCheck = new QTableWidgetItem();
+    aFlags = aCheck->flags();
+    //aFlags |=  Qt::ItemIsUserCheckable;
+    aFlags &=  (~Qt::ItemIsEditable);
+    aCheck->setFlags( aFlags );
+    aCheck->setCheckState( myCutPlanes->IsDefault(i) ?
+                           Qt::Checked : Qt::Unchecked );
     myPosTable->setItem(i, 1, aCheck);
 
-    vh->setLabel( i, str.arg(i+1) );
+    //vh->setLabel( i, str.arg(i+1) );
+    aLabels.append( str.arg(i+1) );
   }
+  myPosTable->setVerticalHeaderLabels( aLabels );
 
   // Update preview
   if (myPreviewCheck->isChecked()) {
@@ -372,29 +582,96 @@ void VisuGUI_CutPlanesPane::setDefault (int all)
   if (all == 0) return;
   if (all == 1)
     for (int i = 0; i < getNbPlanes(); ++i)
-      ((QCheckTableItem*)myPosTable->item( i, 1 ))->setChecked(true);
+      myPosTable->item( i, 1 )->setCheckState(Qt::Checked);
+  //((QCheckTableItem*)myPosTable->item( i, 1 ))->setChecked(true);
 
   for (int i = 0; i < getNbPlanes(); ++i) {
-    if ( ((QCheckTableItem*)myPosTable->item( i, 1 ))->isChecked() ) {
+    if ( myPosTable->item( i, 1 )->checkState() == Qt::Checked )
+    {
       myCutPlanes->SetDefault(i);
-      myPosTable->setText( i, 0, QString::number(myCutPlanes->GetPlanePosition(i)));
-      myPosTable->item( i, 0 )->setEnabled(false);
-    } else
-      myPosTable->item( i, 0 )->setEnabled(true);
+      myPosTable->item( i, 0)->setText( QString::number(myCutPlanes->GetPlanePosition(i)));
+      myPosTable->item( i, 0 )->setFlags( myPosTable->item( i, 0 )->flags() &(~Qt::ItemIsEnabled ) );
+    }
+    else
+      myPosTable->item( i, 0 )->setFlags( myPosTable->item( i, 0 )->flags() | Qt::ItemIsEnabled );
   }
 }
 
 void VisuGUI_CutPlanesPane::onValueChanged (int theRow, int theCol)
 {
-  if (theCol == 0) {
-    QString aTxt = myPosTable->text(theRow, 0);
-    bool isChanged = !aTxt.isEmpty();
-    ((QCheckTableItem*)myPosTable->item(theRow, 1))->setChecked(!isChanged);
+  QAbstractTableModel* aModel = qobject_cast<QAbstractTableModel*>( myPosTable->model() );
+  if ( !aModel )
+    return;
+  
+  if ( !myPosTable->item(theRow, 1) || !myPosTable->item(theRow, 0) )
+    return;
+
+  QModelIndex anIndex;
+
+  QTableWidgetItem* anItem = myPosTable->item(theRow, theCol);
+  if (!anItem )
+    return;
+
+  bool isDefault = myPosTable->item(theRow, 1)->checkState() == Qt::Checked;
+  if (theCol == 0 )
+  {
+    anIndex = aModel->index( theRow, 0 );
+    if ( !isDefault)
+      myCutPlanes->SetPlanePosition( theRow, anIndex.data().toDouble());
+          
+            
+    if ( myPreviewCheck->isChecked() )
+    {
+      //Update Preview
+      if (SVTK_ViewWindow* vf = VISU::GetActiveViewWindow<SVTK_ViewWindow>())
+      {
+       myCutPlanes->GetPipeLine()->Update();
+       deletePlanes();
+       createPlanes();
+       vf->Repaint();
+      }
+    }
+  }
+  else
+  {
+    anItem = myPosTable->item(theRow, 0);
+    Qt::ItemFlags flags = anItem->flags();
+    if ( isDefault )
+    {
+      myCutPlanes->SetDefault(theRow);
+      anIndex = aModel->index( theRow, 0 );
+      aModel->setData( anIndex, myCutPlanes->GetPlanePosition(theRow), Qt::DisplayRole );
+
+      /*if ( myPreviewCheck->isChecked() )
+        {
+        //not needed update presentation, because item->setFlags generates signal cellChanged() again
+        }*/
+      flags &= (~Qt::ItemIsEnabled );
+    }
+    else
+      flags |=  Qt::ItemIsEnabled;
+   
+    anItem->setFlags( flags );
+  }
+  
+  /*if (theCol == 0) {
+    bool isChanged = !anIndex.data().isNull();
+    QTableWidgetItem* anItem = myPosTable->item(theRow, 1);
+    if ( !anItem  )
+    {
+      anItem = new QTableWidgetItem();
+      myPosTable->setItem( theRow, 1, anItem );
+      Qt::ItemFlags flags = anItem->flags();
+      //flags |=  Qt::ItemIsUserCheckable;
+      flags &=  (~Qt::ItemIsEditable);
+      anItem->setFlags( flags );
+    }
+    anItem->setCheckState(!isChanged ? Qt::Checked : Qt::Unchecked);
 
     if (myPreviewCheck->isChecked()) {
       //Update Preview
       if (SVTK_ViewWindow* vf = VISU::GetActiveViewWindow<SVTK_ViewWindow>()) {
-       myCutPlanes->SetPlanePosition( theRow, aTxt.toDouble());
+       myCutPlanes->SetPlanePosition( theRow, anIndex.data().toDouble());
        myCutPlanes->GetPipeLine()->Update();
        deletePlanes();
        createPlanes();
@@ -402,11 +679,20 @@ void VisuGUI_CutPlanesPane::onValueChanged (int theRow, int theCol)
       }
     }
   } else {
-    bool isDefault = ((QCheckTableItem*)myPosTable->item(theRow, theCol))->isChecked();
+    bool isDefault = myPosTable->item(theRow, 1)->checkState() == Qt::Checked;
+    QTableWidgetItem* anItem = myPosTable->item(theRow, 0);
+    if ( !anItem  )
+    {
+      anItem = new QTableWidgetItem();
+      myPosTable->setItem( theRow, 0, anItem );
+    }
+      
     if (isDefault) {
       myCutPlanes->SetDefault(theRow);
-      myPosTable->setText(theRow, 0, QString::number(myCutPlanes->GetPlanePosition(theRow)));
-
+      //myPosTable->setText(theRow, 0, QString::number(myCutPlanes->GetPlanePosition(theRow)));
+      anIndex = aModel->index( theRow, 0 );
+      aModel->setData( anIndex, myCutPlanes->GetPlanePosition(theRow), Qt::DisplayRole );
+      anItem->setFlags( anItem->flags() | Qt::ItemIsEnabled );
       if (myPreviewCheck->isChecked()) {
        if (SVTK_ViewWindow* vf = VISU::GetActiveViewWindow<SVTK_ViewWindow>()) {
          //Update Preview
@@ -417,8 +703,9 @@ void VisuGUI_CutPlanesPane::onValueChanged (int theRow, int theCol)
        }
       }
     }
-    myPosTable->item(theRow, 0)->setEnabled(!isDefault);
-  }
+    //myPosTable->item(theRow, 0)->setEnabled(!isDefault);
+    anItem->setFlags( anItem->flags() &(~Qt::ItemIsEnabled ) );
+    }*/
 }
 
 void VisuGUI_CutPlanesPane::deletePlanes()
@@ -438,7 +725,7 @@ void VisuGUI_CutPlanesPane::deletePlanes()
 
 void VisuGUI_CutPlanesPane::onRotation (double theValue)
 {
-  if (!myCutPlanes) return;
+  if (!(bool)myCutPlanes) return;
   if (myPreviewCheck->isChecked()) {
     if (SVTK_ViewWindow* vf = VISU::GetActiveViewWindow<SVTK_ViewWindow>()) {
       myCutPlanes->SetOrientation(getOrientaion(),getRotation1()*PI/180.,getRotation2()*PI/180.);
@@ -457,7 +744,9 @@ void VisuGUI_CutPlanesPane::onPreviewCheck (bool thePreview)
       storeToPrsObject(myCutPlanes);
       myCutPlanes->GetPipeLine()->Update();
       createPlanes();
-      vf->onFitAll();
+      if(VISU::GetResourceMgr()->booleanValue("VISU","automatic_fit_all",false)) {
+       vf->onFitAll();
+      }
     } else {
       deletePlanes();
       vf->Repaint();
@@ -474,7 +763,7 @@ void VisuGUI_CutPlanesPane::onPreviewCheck (bool thePreview)
 VisuGUI_CutPlanesDlg::VisuGUI_CutPlanesDlg (SalomeApp_Module* theModule)
   : VisuGUI_ScalarBarBaseDlg(theModule)
 {
-  setCaption("Cut Planes Definition");
+  setWindowTitle("Cut Planes Definition");
   setSizeGripEnabled(true);
 
   QVBoxLayout* TopLayout = new QVBoxLayout (this);
@@ -491,28 +780,28 @@ VisuGUI_CutPlanesDlg::VisuGUI_CutPlanesDlg (SalomeApp_Module* theModule)
 
   TopLayout->addWidget(myTabBox);
 
-  QGroupBox* GroupButtons = new QGroupBox(this, "GroupButtons");
+  QGroupBox* GroupButtons = new QGroupBox(this);
   GroupButtons->setGeometry(QRect(10, 10, 281, 48));
   GroupButtons->setTitle("");
-  GroupButtons->setColumnLayout(0, Qt::Vertical);
-  GroupButtons->layout()->setSpacing(0);
-  GroupButtons->layout()->setMargin(0);
-  QGridLayout* GroupButtonsLayout = new QGridLayout(GroupButtons->layout());
+  //GroupButtons->setColumnLayout(0, Qt::Vertical);
+  //GroupButtons->layout()->setSpacing(0);
+  //GroupButtons->layout()->setMargin(0);
+  QGridLayout* GroupButtonsLayout = new QGridLayout(GroupButtons);
   GroupButtonsLayout->setAlignment(Qt::AlignTop);
   GroupButtonsLayout->setSpacing(6);
   GroupButtonsLayout->setMargin(11);
 
-  QPushButton* buttonOk = new QPushButton(tr("&OK"), GroupButtons, "buttonOk");
+  QPushButton* buttonOk = new QPushButton(tr("BUT_OK"), GroupButtons);
   buttonOk->setAutoDefault(TRUE);
   buttonOk->setDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonOk, 0, 0);
   GroupButtonsLayout->addItem(new QSpacerItem(5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum), 0, 1);
 
-  QPushButton* buttonCancel = new QPushButton(tr("&Cancel"), GroupButtons, "buttonCancel");
+  QPushButton* buttonCancel = new QPushButton(tr("BUT_CANCEL"), GroupButtons);
   buttonCancel->setAutoDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonCancel, 0, 2);
 
-  QPushButton* buttonHelp = new QPushButton(tr("&Help"), GroupButtons, "buttonHelp");
+  QPushButton* buttonHelp = new QPushButton(tr("BUT_HELP"), GroupButtons);
   buttonHelp->setAutoDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonHelp, 0, 3);
 
@@ -540,7 +829,7 @@ void VisuGUI_CutPlanesDlg::initFromPrsObject ( VISU::ColoredPrs3d_i* thePrs,
     return;
 
   myInputPane->initFromPrsObject( myPrsCopy );
-  myTabBox->setCurrentPage( 0 );
+  myTabBox->setCurrentIndex( 0 );
 }
 
 int VisuGUI_CutPlanesDlg::storeToPrsObject (VISU::ColoredPrs3d_i* thePrs)
@@ -562,8 +851,7 @@ void VisuGUI_CutPlanesDlg::accept()
   VisuGUI_ScalarBarBaseDlg::accept();
 }
 
-void VisuGUI_CutPlanesDlg::reject()
-{
+void VisuGUI_CutPlanesDlg::reject() {
   VisuGUI_ScalarBarBaseDlg::reject();
 }
 
@@ -574,11 +862,11 @@ QString VisuGUI_CutPlanesDlg::GetContextHelpFilePath()
 
 //###################################################################
 
-QWidget* VisuGUI_NumEditItem::createEditor() const
+/*QWidget* VisuGUI_NumEditItem::createEditor() const
 {
   QLineEdit *editline = new QLineEdit(text(), table()->viewport());
   QDoubleValidator *dvalidator = new QDoubleValidator(table()->viewport());
   dvalidator->setDecimals(32);
   editline->setValidator(dvalidator);
   return editline;
-}
+}*/
index 9b029d90c5981c47f7c4ab366bef9e70b69ff8cd..ce9e43f4510e99fbc4218fbf4e55ebee0481fdf3 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_CutPlanesDlg.h
 //  Author : Laurent CORNABE & Hubert ROLLAND
 //  Module : VISU
 //  $Header$
-
+//
 #ifndef VISUGUI_CUTPLANESDLG_H
 #define VISUGUI_CUTPLANESDLG_H
 
 
 #include <SALOME_Actor.h>
 
-#include <qspinbox.h>
-#include <qradiobutton.h>
-#include <qtable.h>
-#include <qtabwidget.h>
+#include <QtxDoubleSpinBox.h>
 
-#include <QtxDblSpinBox.h>
+#include <QFrame>
+
+class QSpinBox;
+class QRadioButton;
+class QTabWidget;
+class QTableWidget;
+class QCheckBox;
+class QComboBox;
 
 #include "SALOMEconfig.h"
 #include CORBA_CLIENT_HEADER(VISU_Gen)
 
+#include <map>
+#include <vector>
+
 namespace VISU 
 {
   class CutPlanes_i;
+  class Result_i;
 };
 
 class SUIT_ViewWindow;
@@ -69,25 +76,40 @@ public:
     double getRotation1() {return Rot1->value();}
     double getRotation2() {return Rot2->value();}
 
-    void initFromPrsObject(VISU::CutPlanes_i* thePrs);
-    int storeToPrsObject(VISU::CutPlanes_i* thePrs);
+    double getScaleFactor();
+    void   setScaleFactor(double factor);
+
+    void   initFromPrsObject(VISU::CutPlanes_i* thePrs);
+    int    storeToPrsObject(VISU::CutPlanes_i* thePrs);
 
 private:
+    typedef std::vector<QString> TVectorialFieldsList;
+    typedef std::map<VISU::Entity, TVectorialFieldsList> TEntity2VectorialFields;
+    typedef std::pair<VISU::Entity,TVectorialFieldsList> TEntVectPair;
+    TEntity2VectorialFields myEntity2VectorialFields;
+
     void createPlanes();
     void deletePlanes();
 
+    void InitEntity2VectorialFieldsMap(VISU::ColoredPrs3d_i* thePrs);
+    void InsertAllVectorialFields();
+    void InitVectorialField();
+
     QLabel* LabelRot1;
     QLabel* LabelRot2;
+    QGroupBox* GDeformation;
     QSpinBox* nbPlan;
-    QtxDblSpinBox* Rot1;
-    QtxDblSpinBox* Rot2;
+    QtxDoubleSpinBox* Rot1;
+    QtxDoubleSpinBox* Rot2;
     QRadioButton* RBzx;
     QRadioButton* RByz;
     QRadioButton* RBxy;
-    QtxDblSpinBox* myPosSpn;
-    QTable* myPosTable;
+    QtxDoubleSpinBox* myPosSpn;
+    QTableWidget* myPosTable;
     SALOME::GenericObjPtr<VISU::CutPlanes_i> myCutPlanes;
     QCheckBox* myPreviewCheck;
+    QComboBox* myVectorialFieldCombo;
+    QtxDoubleSpinBox* myScaleSpn;
     double          X1, X2;
     double          Y1, Y2;
     double          Z1, Z2;
@@ -102,6 +124,9 @@ private slots:
     void onValueChanged(int theRow, int theCol);
     void onRotation(double theValue);
     void onPreviewCheck(bool thePreview);
+    void onScaleFactorChanged(double);
+    void onDeformationCheck(bool);
+    void onVectorialFieldChanged(int);
 };
 
 
@@ -133,14 +158,14 @@ private:
 };
 
 
-class VisuGUI_NumEditItem: public QTableItem
+/*class VisuGUI_NumEditItem: public QTableItem
 {
 public:
-    VisuGUI_NumEditItem(QTable* table, EditType et, const QString& text ):
+    VisuGUI_NumEditItem(QTableWidget* table, const QString& text ):
       QTableItem(table, et, text) {};
     ~VisuGUI_NumEditItem() {};
 
     QWidget* createEditor() const;
-};
+};*/
 
 #endif // VISUGUI_CUTPLANESDLG_H
diff --git a/src/VISUGUI/VisuGUI_DeformedShapeAndScalarMapDlg.cxx b/src/VISUGUI/VisuGUI_DeformedShapeAndScalarMapDlg.cxx
new file mode 100644 (file)
index 0000000..3d57aa3
--- /dev/null
@@ -0,0 +1,499 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
+//  File   : VisuGUI_DeformedShapeAndScalarMapDlg.cxx
+//  Author : Eugeny Nikolaev
+//  Module : VISU
+//
+#include "VisuGUI_DeformedShapeAndScalarMapDlg.h"
+
+#include "VisuGUI_Tools.h"
+#include "VisuGUI_InputPane.h"
+
+#include "VISU_Result_i.hh"
+#include "VISU_DeformedShapeAndScalarMap_i.hh"
+#include "VISU_ColoredPrs3dFactory.hh"
+
+#include "VISU_ScalarMapPL.hxx"
+#include "VISU_DeformedShapeAndScalarMapPL.hxx"
+
+#include "VISU_Convertor.hxx"
+
+#include <QtxDoubleSpinBox.h>
+#include <SalomeApp_Module.h>
+#include <LightApp_Application.h>
+#include <LightApp_SelectionMgr.h>
+#include <SUIT_Desktop.h>
+#include <SUIT_ResourceMgr.h>
+#include <SUIT_Session.h>
+#include <SUIT_MessageBox.h>
+
+#include <SALOME_ListIO.hxx>
+
+#include <SALOMEDSClient_AttributeString.hxx>
+#include <SALOMEDSClient_AttributeName.hxx>
+
+#include <QVBoxLayout>
+#include <QHBoxLayout>
+#include <QGridLayout>
+#include <QTabWidget>
+#include <QComboBox>
+#include <QPushButton>
+#include <QLabel>
+
+#include <limits>
+
+#define MYDEBUG 0
+
+/*!
+ * Constructor
+ */
+VisuGUI_DeformedShapeAndScalarMapDlg::VisuGUI_DeformedShapeAndScalarMapDlg (SalomeApp_Module* theModule)
+  : VisuGUI_ScalarBarBaseDlg(theModule),
+    myIsAnimation(false),
+    myUpdateScalars(true),
+    myVisuGUI(theModule)
+{
+  setWindowTitle(tr("DLG_TITLE"));
+  setSizeGripEnabled(true);
+
+  QVBoxLayout* TopLayout = new QVBoxLayout (this);
+  TopLayout->setSpacing(6);
+  TopLayout->setMargin(11);
+
+  myTabBox = new QTabWidget (this);
+
+  // Scalar Map on Deformed shape pane
+  QWidget* aBox = new QWidget (this);
+  QVBoxLayout* aVBLay = new QVBoxLayout( aBox );
+  aVBLay->setMargin(11);
+  QFrame* TopGroup = new QFrame (aBox);
+  aVBLay->addWidget(TopGroup);
+  TopGroup->setFrameStyle(QFrame::Box | QFrame::Sunken);
+  TopGroup->setLineWidth(1);
+  QGridLayout* TopGroupLayout = new QGridLayout (TopGroup);
+  TopGroupLayout->setSpacing(6);
+  TopGroupLayout->setMargin(11);
+
+  //   Scale factor
+  QLabel* ScaleLabel = new QLabel (tr("SCALE_FACTOR"), TopGroup);
+  TopGroupLayout->addWidget(ScaleLabel, 0, 0);
+
+  SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
+  int aPrecision = aResourceMgr->integerValue( "VISU", "floating_point_precision", 0 );
+
+  ScalFact = new QtxDoubleSpinBox (0, 1.0E+38, 0.1, aPrecision*(-1), 32, TopGroup);
+  ScalFact->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed));
+  ScalFact->setValue(0.1);
+  TopGroupLayout->addWidget(ScalFact, 0, 1);
+
+  // Fields combo box
+  QLabel* FieldLabel = new QLabel (tr("FIELD_ITEM"), TopGroup);
+  myFieldsCombo = new QComboBox (TopGroup);
+
+  TopGroupLayout->addWidget(FieldLabel, 1, 0);
+  TopGroupLayout->addWidget(myFieldsCombo,1,1);
+
+  // TimeStamps combo box
+  QLabel* TimeStampLabel = new QLabel (tr("TIMESTAMP_ITEM"), TopGroup);
+  myTimeStampsCombo = new QComboBox (TopGroup);
+
+  TopGroupLayout->addWidget(TimeStampLabel, 2, 0);
+  TopGroupLayout->addWidget(myTimeStampsCombo,2,1);
+  TopGroupLayout->setRowStretch(3,5);
+
+  //
+  myTabBox->addTab(aBox, tr("DEFORMED_SHAPE_AND_SCALAR_MAP_TAB"));
+
+  // Scalar bar pane
+  myInputPane = new VisuGUI_InputPane(VISU::TDEFORMEDSHAPEANDSCALARMAP, theModule, this);
+
+  myTabBox->addTab(GetScalarPane(), tr("SCALAR_BAR_TAB"));
+  myTabBox->addTab(myInputPane, tr("INPUT_TAB"));
+
+  // Buttons
+  QGroupBox* GroupButtons = new QGroupBox (this);
+  QHBoxLayout* GroupButtonsLayout = new QHBoxLayout(GroupButtons);
+  GroupButtonsLayout->setSpacing(6);
+  GroupButtonsLayout->setMargin(11);
+
+  QPushButton* buttonOk = new QPushButton (tr("&OK"), GroupButtons);
+  buttonOk->setAutoDefault(true);
+  buttonOk->setDefault(true);
+  QPushButton* buttonCancel = new QPushButton (tr("&Cancel") , GroupButtons);
+  buttonCancel->setAutoDefault(true);
+  QPushButton* buttonHelp = new QPushButton (tr("&Help") , GroupButtons);
+  buttonHelp->setAutoDefault(true);
+
+  GroupButtonsLayout->addWidget(buttonOk);
+  GroupButtonsLayout->addSpacing(10);
+  GroupButtonsLayout->addStretch();
+  GroupButtonsLayout->addWidget(buttonCancel);
+  GroupButtonsLayout->addWidget(buttonHelp);
+
+  // Add Tab box and Buttons to the top layout
+  TopLayout->addWidget(myTabBox);
+  TopLayout->addWidget(GroupButtons);
+
+  // signals and slots connections
+  connect(buttonOk,     SIGNAL(clicked()), this, SLOT(accept()));
+  connect(buttonCancel, SIGNAL(clicked()), this, SLOT(reject()));
+  connect(buttonHelp,   SIGNAL(clicked()), this, SLOT(onHelp()));
+  connect(myFieldsCombo,     SIGNAL(activated(int)), this, SLOT(onFieldChanged(int)));
+  connect(myTimeStampsCombo, SIGNAL(activated(int)), this, SLOT(onTimeStampChanged(int)));
+}
+
+VisuGUI_DeformedShapeAndScalarMapDlg::~VisuGUI_DeformedShapeAndScalarMapDlg()
+{
+}
+
+void VisuGUI_DeformedShapeAndScalarMapDlg::initFromPrsObject( VISU::ColoredPrs3d_i* thePrs,
+                                                             bool theInit )
+{
+  if( theInit )
+    myPrsCopy = VISU::TSameAsFactory<VISU::TDEFORMEDSHAPEANDSCALARMAP>().Create(thePrs, VISU::ColoredPrs3d_i::EDoNotPublish);
+  setFactor(myPrsCopy->GetScale());
+  myTimeStampsCombo->setDisabled(myIsAnimation);
+
+  CORBA::String_var aFieldName(myPrsCopy->GetScalarFieldName());
+  QString aIteration = GetFloatValueOfTimeStamp(myPrsCopy->GetScalarEntity(),
+                                               aFieldName.in(),
+                                               myPrsCopy->GetScalarTimeStampNumber());
+  if (myEntity2Fields.size() == 0)
+  {
+    // find all fields and time stamps on it
+    _PTR(Study) aActiveStudy = VISU::GetCStudy(VISU::GetAppStudy(myVisuGUI));
+    LightApp_SelectionMgr* aSel = VISU::GetSelectionMgr(myVisuGUI);
+    SALOME_ListIO selected;
+    aSel->selectedObjects(selected);
+    if (selected.Extent() > 0) {
+      Handle(SALOME_InteractiveObject) aIO = selected.First();
+      if (aIO->hasEntry()) {
+       _PTR(SObject) aSObject = aActiveStudy->FindObjectID(aIO->getEntry());
+       VISU::VISUType aType = VISU::Storable::SObject2Type( aSObject );
+       switch(aType){
+       case VISU::TTIMESTAMP: {
+         aSObject = aSObject->GetFather();
+         aSObject = aSObject->GetFather();
+         break;
+       }
+       case VISU::TFIELD: {
+         _PTR(SObject) newSObject;
+         if(aSObject->ReferencedObject(newSObject)) aSObject = newSObject;
+         aSObject = aSObject->GetFather();
+         break;
+       }
+       case VISU::TANIMATION: {
+         _PTR(ChildIterator) aTmpIter = aActiveStudy->NewChildIterator(aSObject);
+         for (aTmpIter->InitEx(true); aTmpIter->More(); aTmpIter->Next()) {
+           _PTR(SObject) aTmpChildSObj = aTmpIter->Value();
+           _PTR(SObject) newSObject;
+           if(aTmpChildSObj->ReferencedObject(newSObject)){
+             aSObject = newSObject;
+             aSObject->GetFather();
+             break;
+           }
+         }
+         break;
+       }}
+       
+       aSObject = aSObject->GetFather();
+       aSObject = aSObject->GetFather();
+
+       mySelectionObj = aSObject;
+       CORBA::Object_var anObject = VISU::ClientSObjectToObject(mySelectionObj);
+       if (CORBA::is_nil(anObject)) {
+         mySelectionObj = mySelectionObj->GetFather();
+       }
+      }
+    }
+
+    if (mySelectionObj) {
+      _PTR(ChildIterator) aIter = aActiveStudy->NewChildIterator(mySelectionObj);
+
+      for (aIter->InitEx(true); aIter->More(); aIter->Next()) {
+        _PTR(SObject) aChildSObj = aIter->Value();
+       VISU::Storable::TRestoringMap aRestoringMap = VISU::Storable::GetStorableMap(aChildSObj);
+        if (!aRestoringMap.empty()) {
+         VISU::VISUType aType = VISU::Storable::RestoringMap2Type(aRestoringMap);
+         if (aType == VISU::TTIMESTAMP) {
+           QString aMeshName = aRestoringMap["myMeshName"];
+           CORBA::String_var aName = myPrsCopy->GetMeshName();
+           if (aMeshName != aName.in())
+             continue;
+           QString aFieldName = aRestoringMap["myFieldName"];
+           QString aTimeIter  = aRestoringMap["myTimeStampId"];
+           QString aEntity    = aRestoringMap["myEntityId"];
+           VISU::Entity anEntity;
+           switch (aEntity.toInt()) {
+           case 0: anEntity = VISU::NODE; break;
+           case 1: anEntity = VISU::EDGE; break;
+           case 2: anEntity = VISU::FACE; break;
+           case 3: anEntity = VISU::CELL; break;
+           }
+           TFieldName2TimeStamps& aFieldName2TimeStamps = myEntity2Fields[anEntity];
+           TTimeStampNumber2Time& aTimeStampNumber2Time = aFieldName2TimeStamps[aFieldName];
+           aTimeStampNumber2Time[aTimeIter.toInt()] = 
+             GetFloatValueOfTimeStamp(anEntity,
+                                      aFieldName.toLatin1().constData(),
+                                      aTimeIter.toInt());
+         }
+        }
+      }
+    }
+    AddAllFieldNames();
+  }
+  int idx = myFieldsCombo->findText(aFieldName.in());
+  if (idx >= 0)
+    myFieldsCombo->setCurrentIndex(idx);
+  else {
+    myFieldsCombo->addItem(aFieldName.in());
+    myFieldsCombo->setCurrentIndex(myFieldsCombo->count()-1);
+  }
+  AddAllTimes(myFieldsCombo->currentText());
+  idx = myTimeStampsCombo->findText(aIteration);
+  if (idx >= 0)
+    myTimeStampsCombo->setCurrentIndex(idx);
+  else {
+    myTimeStampsCombo->addItem(aIteration);
+    myTimeStampsCombo->setCurrentIndex(myTimeStampsCombo->count()-1);
+  }
+  SetScalarField( false );
+
+  VisuGUI_ScalarBarBaseDlg::initFromPrsObject(myPrsCopy, theInit);
+
+  if( !theInit )
+    return;
+
+  myInputPane->initFromPrsObject( myPrsCopy );
+  myTabBox->setCurrentIndex( 0 );
+}
+
+double VisuGUI_DeformedShapeAndScalarMapDlg::getFactor() const
+{
+  return ScalFact->value();
+}
+
+void VisuGUI_DeformedShapeAndScalarMapDlg::setFactor(double theFactor)
+{
+  double step = 0.1;
+  if (fabs(theFactor) > std::numeric_limits<double>::epsilon()) {
+    int degree = int(log10(fabs(theFactor))) - 1;
+    if (fabs(theFactor) < 1) {
+      // as logarithm value is negative in this case
+      // and it is truncated to the bigger integer
+      degree -= 1;
+    }
+    step = pow(10., double(degree));
+  }
+
+  ScalFact->setSingleStep(step);
+  ScalFact->setValue(theFactor);
+}
+
+int
+VisuGUI_DeformedShapeAndScalarMapDlg
+::storeToPrsObject(VISU::ColoredPrs3d_i* thePrs)
+{
+  if(!myInputPane->check() || !GetScalarPane()->check())
+    return 0;
+  
+  int anIsOk = myInputPane->storeToPrsObject( myPrsCopy );
+  anIsOk &= GetScalarPane()->storeToPrsObject( myPrsCopy );
+  
+  myPrsCopy->SetScale(getFactor());
+
+  myPrsCopy->SetScalarField(myPrsCopy->GetScalarEntity(),
+                           getCurrentScalarFieldName().toLatin1().constData(),
+                           myTimeStampID[ myTimeStampsCombo->currentIndex() ]);
+
+  if(myUpdateScalars) 
+    SetScalarField( false );
+
+  VISU::TSameAsFactory<VISU::TDEFORMEDSHAPEANDSCALARMAP>().Copy(myPrsCopy, thePrs);
+
+  return anIsOk;
+}
+
+int VisuGUI_DeformedShapeAndScalarMapDlg::getCurrentScalarFieldNamePos(){
+  return myFieldsCombo->currentIndex();
+}
+
+QString VisuGUI_DeformedShapeAndScalarMapDlg::getCurrentScalarFieldName(){
+  return myFieldsCombo->currentText();
+}
+
+int VisuGUI_DeformedShapeAndScalarMapDlg::getCurrentScalarNbIterations(){
+  return myTimeStampsCombo->count();
+}
+
+VISU::Entity
+VisuGUI_DeformedShapeAndScalarMapDlg
+::getCurrentScalarEntity()
+{
+  VISU::Entity anEntity = VISU::Entity(-1);
+  TEntity2Fields::const_iterator anIter = myEntity2Fields.begin();
+  for(; anIter != myEntity2Fields.end(); anIter++){
+    const TFieldName2TimeStamps& aFieldName2TimeStamps = anIter->second;
+    TFieldName2TimeStamps::const_iterator aFieldIter = aFieldName2TimeStamps.begin();
+    for(; aFieldIter != aFieldName2TimeStamps.end(); aFieldIter++){
+      const QString& aFieldName = aFieldIter->first;
+      if (aFieldName == myFieldsCombo->currentText()) {
+       anEntity = anIter->first;
+       break;
+      }
+    }
+  }
+  return anEntity;
+}
+
+void VisuGUI_DeformedShapeAndScalarMapDlg::SetScalarField( const bool save_scalar_pane ){
+  SetScalarField( myTimeStampID[ myTimeStampsCombo->currentIndex() ], "", save_scalar_pane );
+}
+
+void
+VisuGUI_DeformedShapeAndScalarMapDlg
+::SetScalarField(int theIter,
+                QString theFieldName, 
+                const bool save_scalar_pane )
+{
+  QApplication::setOverrideCursor(Qt::WaitCursor);
+
+  if( save_scalar_pane )
+    GetScalarPane()->storeToPrsObject(myPrsCopy);
+
+  QString aFieldName;
+
+  if(theFieldName.isEmpty())
+    aFieldName = myFieldsCombo->currentText();
+  else
+    aFieldName = theFieldName;
+
+  VISU::Entity anEntity = getCurrentScalarEntity();
+  
+  myPrsCopy->SetScalarField(anEntity,
+                           aFieldName.toLatin1().constData(),
+                           theIter);
+  
+  if( save_scalar_pane )
+    UpdateScalarField();
+
+  QApplication::restoreOverrideCursor();
+}
+
+void VisuGUI_DeformedShapeAndScalarMapDlg::accept()
+{
+  VisuGUI_ScalarBarBaseDlg::accept();
+}
+
+void VisuGUI_DeformedShapeAndScalarMapDlg::reject()
+{
+  VisuGUI_ScalarBarBaseDlg::reject();
+}
+
+QString VisuGUI_DeformedShapeAndScalarMapDlg::GetContextHelpFilePath()
+{
+  return "scalar_map_on_deformed_shape_page.html";
+}
+
+void VisuGUI_DeformedShapeAndScalarMapDlg::AddAllFieldNames(){
+  TEntity2Fields::const_iterator anIter = myEntity2Fields.begin();
+  for(; anIter != myEntity2Fields.end(); anIter++){
+    const TFieldName2TimeStamps& aFieldName2TimeStamps = anIter->second;
+    TFieldName2TimeStamps::const_iterator aFieldIter = aFieldName2TimeStamps.begin();
+    for(; aFieldIter != aFieldName2TimeStamps.end(); aFieldIter++){
+      const QString& aFieldName = aFieldIter->first;
+      myFieldsCombo->addItem(aFieldName);
+    }
+  }
+}
+
+void VisuGUI_DeformedShapeAndScalarMapDlg::AddAllTimes(const QString& theFieldName){
+  TEntity2Fields::const_iterator anIter = myEntity2Fields.begin();
+  int currentTimeStampId = (myTimeStampsCombo->count() > 0) ? myTimeStampsCombo->currentIndex() : 0;
+  for(; anIter != myEntity2Fields.end(); anIter++){
+    const TFieldName2TimeStamps& aFieldName2TimeStamps = anIter->second;
+    TFieldName2TimeStamps::const_iterator aFieldIter = aFieldName2TimeStamps.begin();
+    for(; aFieldIter != aFieldName2TimeStamps.end(); aFieldIter++){
+      const QString& aFieldName = aFieldIter->first;
+      if(theFieldName != aFieldName) 
+       continue;
+
+      myTimeStampID.clear();
+      myTimeStampsCombo->clear();
+
+      const TTimeStampNumber2Time& aTimeStampNumber2Time = aFieldIter->second;
+      TTimeStampNumber2Time::const_iterator aTimeStampIter = aTimeStampNumber2Time.begin();
+      for(; aTimeStampIter != aTimeStampNumber2Time.end(); aTimeStampIter++){
+       int aTimeStampNumber = aTimeStampIter->first;
+       myTimeStampID.push_back(aTimeStampNumber);
+
+       QString aTimeStampTime = aTimeStampIter->second;
+       myTimeStampsCombo->addItem(aTimeStampTime);
+      }
+      if(currentTimeStampId >= myTimeStampID.size())
+        currentTimeStampId = myTimeStampID.size()-1;
+      myTimeStampsCombo->setCurrentIndex(currentTimeStampId);
+      return;
+    }
+  }
+}
+
+void VisuGUI_DeformedShapeAndScalarMapDlg::onFieldChanged(int){
+  AddAllTimes(myFieldsCombo->currentText());
+  SetScalarField();
+  UpdateScalarField();
+}
+
+void VisuGUI_DeformedShapeAndScalarMapDlg::onTimeStampChanged(int){
+  SetScalarField();
+  UpdateScalarField();
+}
+
+void VisuGUI_DeformedShapeAndScalarMapDlg::UpdateScalarField(){
+  GetScalarPane()->initFromPrsObject(myPrsCopy);
+}
+
+QString 
+VisuGUI_DeformedShapeAndScalarMapDlg
+::GetFloatValueOfTimeStamp(VISU::Entity theEntity,
+                          const std::string& theFieldName,
+                          int theTimeStampNumber)
+{
+  QString aTime("");
+  VISU::TEntity anEntity = VISU::TEntity(theEntity);
+  VISU::Result_i* theResult = myPrsCopy->GetCResult();
+  VISU::Result_i::PInput anInput = theResult->GetInput();
+  VISU::PField aField = anInput->GetField(myPrsCopy->GetCMeshName(),
+                                         anEntity,
+                                         theFieldName);
+  if(!aField) 
+    return aTime;
+
+  VISU::TValField& aValField = aField->myValField;
+  VISU::TValField::const_iterator aIter = aValField.find(theTimeStampNumber);
+  if(aIter != aValField.end()){
+    VISU::PValForTime aValForTime = aIter->second;
+    aTime = VISU_Convertor::GenerateName(aValForTime->myTime).c_str();
+  }
+  return aTime;
+}
diff --git a/src/VISUGUI/VisuGUI_DeformedShapeAndScalarMapDlg.h b/src/VISUGUI/VisuGUI_DeformedShapeAndScalarMapDlg.h
new file mode 100644 (file)
index 0000000..c8d53ef
--- /dev/null
@@ -0,0 +1,115 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
+//  File   : VisuGUI_DeformedShapeAndScalarMapDlg.h
+//  Author : Eugeny Nikolaev
+//  Module : VISU
+//
+#ifndef VISUGUI_DEFORMEDSHAPEANDSCALARMAPDLS_H
+#define VISUGUI_DEFORMEDSHAPEANDSCALARMAPDLS_H
+
+#include "VisuGUI_Prs3dDlg.h"
+
+#include "VISUConfig.hh"
+
+#include <QDialog>
+
+#include <set>
+#include <vector>
+
+class SalomeApp_Module;
+class VisuGUI_InputPane;
+class QtxDoubleSpinBox;
+class QComboBox;
+class QTabWidget;
+
+namespace VISU
+{
+  class DeformedShapeAndScalarMap_i;
+}
+
+class VisuGUI_DeformedShapeAndScalarMapDlg : public VisuGUI_ScalarBarBaseDlg
+{
+    Q_OBJECT
+
+public:
+    VisuGUI_DeformedShapeAndScalarMapDlg (SalomeApp_Module* theModule);
+    ~VisuGUI_DeformedShapeAndScalarMapDlg();
+
+    double getFactor() const;
+    void setFactor(double theFactor);
+    
+    virtual void initFromPrsObject( VISU::ColoredPrs3d_i* thePrs,
+                                   bool theInit );
+
+    virtual int  storeToPrsObject(VISU::ColoredPrs3d_i* thePrs);
+
+    int getCurrentScalarFieldNamePos();
+    QString getCurrentScalarFieldName();
+    int getCurrentScalarNbIterations();
+    VISU::Entity getCurrentScalarEntity();
+    void SetScalarField(int theIter,QString theFieldName=QString(""), const bool = true );
+
+protected:
+  virtual QString GetContextHelpFilePath();
+
+protected slots:
+  void accept();
+  void reject();
+
+private slots:
+  void onFieldChanged(int i=0);
+  void onTimeStampChanged(int i=0);
+
+private:
+ QtxDoubleSpinBox* ScalFact;
+ QTabWidget* myTabBox;
+ VisuGUI_ScalarBarPane* myScalarPane;
+ VisuGUI_InputPane*     myInputPane;
+ QComboBox *myFieldsCombo;
+ QComboBox *myTimeStampsCombo;
+ typedef std::map<int, QString> TTimeStampNumber2Time; // Times map definition (iteration time, real value of time)
+ typedef std::map<QString, TTimeStampNumber2Time> TFieldName2TimeStamps; // Field name and enity to Times
+ typedef std::map<VISU::Entity, TFieldName2TimeStamps> TEntity2Fields; // Mesh to fields map
+ TEntity2Fields myEntity2Fields;
+ int myCurrScalarIter;
+ bool myIsAnimation;
+ bool myUpdateScalars;
+ std::vector<int> myTimeStampID;
+ _PTR(SObject) mySelectionObj;
+ SALOME::GenericObjPtr<VISU::DeformedShapeAndScalarMap_i> myPrsCopy;
+ SalomeApp_Module* myVisuGUI;
+protected:
+ void UpdateScalarField();
+ void SetScalarField( const bool = true );
+ void AddAllFieldNames();
+ void AddAllTimes(const QString& theFieldName);
+ QString GetFloatValueOfTimeStamp(VISU::Entity theEntity,
+                                 const std::string& theFieldName,
+                                 int theTimeStampNumber);
+};
+
+#endif // VISUGUI_DEFORMEDSHAPEDLS_H
index e5a61232f78c191cd849ef2c3a2da36fcd2d45fa..b7e41e4d3afa4d91b87d61873eff4fb376edecfa 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //
 //  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
-//
-//
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_MagnitudeDlg.cxx
 //  Author : Laurent CORNABE & Hubert ROLLAND
 //  Module : VISU
 //  $Header$
-
+//
 #include "VisuGUI_DeformedShapeDlg.h"
 
 #include "VisuGUI_Tools.h"
 #include "SUIT_MessageBox.h"
 #include "SUIT_ResourceMgr.h"
 
-#include <qlayout.h>
-#include <qtabwidget.h>
+#include <QLayout>
+#include <QDialog>
+#include <QGroupBox>
+#include <QLabel>
+#include <QPushButton>
+#include <QTabWidget>
+#include <QKeyEvent>
+
+#include <math.h>
+#include <limits>
 
 using namespace std;
 
@@ -54,9 +61,9 @@ using namespace std;
  * Constructor
  */
 VisuGUI_DeformedShapeDlg::VisuGUI_DeformedShapeDlg (SalomeApp_Module* theModule)
-  : VisuGUI_ScalarBarBaseDlg(theModule, true)
+  : VisuGUI_ScalarBarBaseDlg(theModule)
 {
-  setCaption(tr("DLG_TITLE"));
+  setWindowTitle(tr("DLG_TITLE"));
   setSizeGripEnabled(TRUE);
   myModule = theModule;
   isApplyed = false;
@@ -68,9 +75,11 @@ VisuGUI_DeformedShapeDlg::VisuGUI_DeformedShapeDlg (SalomeApp_Module* theModule)
   myTabBox = new QTabWidget (this);
 
   // Deformed shape pane
-  QVBox* aBox = new QVBox (this);
-  aBox->setMargin(11);
-  QFrame* TopGroup = new QFrame (aBox, "TopGroup");
+  QWidget* aBox = new QWidget (this);
+  QVBoxLayout* aVBLay = new QVBoxLayout( aBox );
+  aVBLay->setMargin(11);
+  QFrame* TopGroup = new QFrame ( aBox );
+  aVBLay->addWidget( TopGroup );
   TopGroup->setFrameStyle(QFrame::Box | QFrame::Sunken);
   TopGroup->setLineWidth(1);
   QGridLayout* TopGroupLayout = new QGridLayout (TopGroup);
@@ -79,19 +88,21 @@ VisuGUI_DeformedShapeDlg::VisuGUI_DeformedShapeDlg (SalomeApp_Module* theModule)
   TopGroupLayout->setMargin(11);
 
   //   Scale factor
-  QLabel* ScaleLabel = new QLabel (tr("SCALE_FACTOR"), TopGroup, "ScaleLabel");
+  QLabel* ScaleLabel = new QLabel (tr("SCALE_FACTOR"), TopGroup );
   TopGroupLayout->addWidget(ScaleLabel, 0, 0);
 
-  ScalFact = new QtxDblSpinBox (0.0, 1.0E+38, 0.1, TopGroup);
+  SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
+  int aPrecision = aResourceMgr->integerValue( "VISU", "floating_point_precision", 0 );
+
+  ScalFact = new QtxDoubleSpinBox (0, 1.0E+38, 0.1, aPrecision*(-1), 38, TopGroup);
   ScalFact->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed));
-  ScalFact->setPrecision(38);
   ScalFact->setValue(0.1);
   TopGroupLayout->addWidget(ScalFact, 0, 1);
 
   //   Magnitude coloring
-  UseMagn = new QCheckBox (tr("MAGNITUDE_COLORING"), TopGroup, "UseMagn");
+  UseMagn = new QCheckBox (tr("MAGNITUDE_COLORING"), TopGroup);
   UseMagn->setChecked(true);
-  TopGroupLayout->addMultiCellWidget(UseMagn, 1, 1, 0, 1);
+  TopGroupLayout->addWidget(UseMagn, 1, 0, 1, 2);
 
   myTabBox->addTab(aBox, tr("DEFORMED_SHAPE_TAB"));
 
@@ -102,31 +113,31 @@ VisuGUI_DeformedShapeDlg::VisuGUI_DeformedShapeDlg (SalomeApp_Module* theModule)
   myTabBox->addTab(myInputPane, tr("INPUT_TAB"));
 
   // Buttons
-  QGroupBox* GroupButtons = new QGroupBox (this, "GroupButtons");
+  QGroupBox* GroupButtons = new QGroupBox (this);
   GroupButtons->setGeometry(QRect(10, 10, 281, 48));
-  GroupButtons->setColumnLayout(0, Qt::Vertical);
-  GroupButtons->layout()->setSpacing(0);
-  GroupButtons->layout()->setMargin(0);
-  QGridLayout* GroupButtonsLayout = new QGridLayout (GroupButtons->layout());
+  //oupButtons->setColumnLayout(0, Qt::Vertical);
+  //GroupButtons->layout()->setSpacing(0);
+  //GroupButtons->layout()->setMargin(0);
+  QGridLayout* GroupButtonsLayout = new QGridLayout (GroupButtons);
   GroupButtonsLayout->setAlignment(Qt::AlignTop);
   GroupButtonsLayout->setSpacing(6);
   GroupButtonsLayout->setMargin(11);
 
-  QPushButton* buttonOk = new QPushButton (tr("&OK"), GroupButtons, "buttonOk");
+  QPushButton* buttonOk = new QPushButton (tr("A&pply and Close"), GroupButtons);
   buttonOk->setAutoDefault(TRUE);
   buttonOk->setDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonOk, 0, 0);
 
-  QPushButton* buttonApply = new QPushButton (tr("&Apply"), GroupButtons, "buttonApply");
+  QPushButton* buttonApply = new QPushButton (tr("&Apply"), GroupButtons);
   buttonApply->setAutoDefault(TRUE);
   buttonApply->setDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonApply, 0, 1);
 
-  QPushButton* buttonCancel = new QPushButton (tr("&Cancel") , GroupButtons, "buttonCancel");
+  QPushButton* buttonCancel = new QPushButton (tr("BUT_CANCEL") , GroupButtons);
   buttonCancel->setAutoDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonCancel, 0, 2);
 
-  QPushButton* buttonHelp = new QPushButton (tr("&Help") , GroupButtons, "buttonHelp");
+  QPushButton* buttonHelp = new QPushButton (tr("BUT_HELP") , GroupButtons);
   buttonHelp->setAutoDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonHelp, 0, 3);
 
@@ -136,7 +147,7 @@ VisuGUI_DeformedShapeDlg::VisuGUI_DeformedShapeDlg (SalomeApp_Module* theModule)
 
   // signals and slots connections
   connect(buttonOk,     SIGNAL(clicked()), this, SLOT(accept()));
-  connect(buttonApply,     SIGNAL(clicked()), this, SLOT(onApply()));
+  connect(buttonApply,  SIGNAL(clicked()), this, SLOT(onApply()));
   connect(buttonCancel, SIGNAL(clicked()), this, SLOT(reject()));
   connect(buttonHelp,   SIGNAL(clicked()), this, SLOT(onHelp()));
 }
@@ -151,7 +162,6 @@ void VisuGUI_DeformedShapeDlg::initFromPrsObject (VISU::ColoredPrs3d_i* thePrs,
     myPrsCopy = VISU::TSameAsFactory<VISU::TDEFORMEDSHAPE>().Create(thePrs, VISU::ColoredPrs3d_i::EDoNotPublish);
 
   VisuGUI_ScalarBarBaseDlg::initFromPrsObject(myPrsCopy, theInit);
-
   setFactor(myPrsCopy->GetScale());
   UseMagn->setChecked(myPrsCopy->IsColored());
 
@@ -159,10 +169,27 @@ void VisuGUI_DeformedShapeDlg::initFromPrsObject (VISU::ColoredPrs3d_i* thePrs,
     return;
 
   myInputPane->initFromPrsObject(myPrsCopy);
-  myTabBox->setCurrentPage(0);
+  myTabBox->setCurrentIndex(0);
 }
 
-int VisuGUI_DeformedShapeDlg::storeToPrsObject(VISU::ColoredPrs3d_i* thePrs)
+void VisuGUI_DeformedShapeDlg::setFactor(double theFactor)
+{
+  double step = 0.1;
+  if (fabs(theFactor) > numeric_limits<double>::epsilon()) {
+    int degree = int(log10(fabs(theFactor))) - 1;
+    if (fabs(theFactor) < 1) {
+      // as logarithm value is negative in this case
+      // and it is truncated to the bigger integer
+      degree -= 1;
+    }
+    step = pow(10., double(degree));
+  }
+
+  ScalFact->setSingleStep(step);
+  ScalFact->setValue(theFactor);
+}
+
+int VisuGUI_DeformedShapeDlg::storeToPrsObject(VISU::ColoredPrs3d_i* thePrs) 
 {
   if( !isValid() )
     return 0;
@@ -184,7 +211,8 @@ void VisuGUI_DeformedShapeDlg::updatePrsCopy()
   VisuGUI* aVisuGUI = dynamic_cast <VisuGUI*>(myModule);
   if ( myPrsCopy->GetNumberOfActors() == 0 ) {
     PublishInView(aVisuGUI, myPrsCopy, aViewWindow);
-    aViewWindow->onFitAll();    
+    if(VISU::GetResourceMgr()->booleanValue("VISU","automatic_fit_all",false))
+      aViewWindow->onFitAll();
     int aPos = VISU::GetFreePositionOfDefaultScalarBar(aVisuGUI, aViewWindow);
     VISU::AddScalarBarPosition(aVisuGUI, aViewWindow, myPrsCopy, aPos);
     } else {
@@ -194,10 +222,9 @@ void VisuGUI_DeformedShapeDlg::updatePrsCopy()
       myPrsCopy->RemoveActors();
       
       INFOS(exc.what());
-      SUIT_MessageBox::warn1
-       (VISU::GetDesktop(myModule), QObject::tr("WRN_VISU"),
-        QObject::tr("ERR_CANT_BUILD_PRESENTATION") + ": " + QObject::tr(exc.what()),
-        QObject::tr("BUT_OK"));
+      SUIT_MessageBox::warning(VISU::GetDesktop(myModule),
+                              tr("WRN_VISU"),
+                              tr("ERR_CANT_BUILD_PRESENTATION") + ": " + exc.what());
     }
     aViewWindow->Repaint();
   }
@@ -205,12 +232,12 @@ void VisuGUI_DeformedShapeDlg::updatePrsCopy()
 
 void VisuGUI_DeformedShapeDlg::accept()
 {
-   VisuGUI_ScalarBarBaseDlg::done( isValid() );
+  VisuGUI_ScalarBarBaseDlg::done( isValid() );
 }
 
 void VisuGUI_DeformedShapeDlg::reject()
 {
-  if (isApplyed)
+  if ( isApplyed )
     VisuGUI_ScalarBarBaseDlg::done( 1 );
   else
     VisuGUI_ScalarBarBaseDlg::reject();
@@ -236,8 +263,9 @@ bool VisuGUI_DeformedShapeDlg::onApply()
 //  Create and Edit
 ////////////////////////////////////////////////////////////////////////////////
 
-void VisuGUI_DeformedShapeDlg::CreatePrs3d(VisuGUI* theModule)
+VISU::Prs3d_i* VisuGUI_DeformedShapeDlg::CreatePrs3d(VisuGUI* theModule)
 {
+  VISU::DeformedShape_i* aPrs3d = NULL;
   _PTR(SObject) aTimeStamp;
   Handle(SALOME_InteractiveObject) anIO;
   VISU::ColoredPrs3d_i::EPublishInStudyMode aPublishInStudyMode;
@@ -254,38 +282,42 @@ void VisuGUI_DeformedShapeDlg::CreatePrs3d(VisuGUI* theModule)
          QString aFieldName = aRestoringMap["myFieldName"];
          QString aTimeStampId = aRestoringMap["myTimeStampId"];
          
-         typedef VISU::DeformedShape_i TPrs3d_i; 
+         //typedef VISU::DeformedShape_i TPrs3d_i; 
          
-         TPrs3d_i* aPrs3d =
-           VISU::CreatePrs3dFromFactory<TPrs3d_i>(theModule,
+         aPrs3d =
+           VISU::CreatePrs3dFromFactory<VISU::DeformedShape_i>(theModule,
                                                   aTimeStamp,
-                                                  aMeshName.latin1(),
+                                                  aMeshName.toLatin1().data(),
                                                   (VISU::Entity)anEntity.toInt(),
-                                                  aFieldName.latin1(),
+                                                  aFieldName.toLatin1().data(),
                                                   aTimeStampId.toInt(),
                                                   aPublishInStudyMode);
-         
-         VisuGUI_DeformedShapeDlg* aDlg = new VisuGUI_DeformedShapeDlg (theModule);
-         aDlg->initFromPrsObject(aPrs3d, true);
-         aDlg->UseMagn->setChecked(true);
-         VisuGUI_DialogRunner r(aDlg);
-         int dlgResult = r.run( false );
-
-         if ( dlgResult == 0 )
-           aPrs3d->RemoveFromStudy();
-         else {
-           aDlg->storeToPrsObject( aPrs3d );
-           SVTK_ViewWindow* aViewWindow = VISU::GetActiveViewWindow<SVTK_ViewWindow>();
-           PublishInView(theModule, aPrs3d, aViewWindow);
-           aViewWindow->onFitAll();
-           int aPos = VISU::GetFreePositionOfDefaultScalarBar(theModule, aViewWindow);
-           VISU::AddScalarBarPosition(theModule, aViewWindow, aPrs3d, aPos);
+
+         if (aPrs3d) {
+           VisuGUI_DeformedShapeDlg* aDlg = new VisuGUI_DeformedShapeDlg (theModule);
+           aDlg->initFromPrsObject(aPrs3d, true);
+           aDlg->UseMagn->setChecked(true);
+           VisuGUI_DialogRunner r(aDlg);
+           int dlgResult = r.run( false );
+           
+           if ( dlgResult == 0 )
+             DeletePrs3d(theModule,aPrs3d);
+           else {
+             aDlg->storeToPrsObject( aPrs3d );
+             SVTK_ViewWindow* aViewWindow = VISU::GetActiveViewWindow<SVTK_ViewWindow>();
+             PublishInView(theModule, aPrs3d, aViewWindow);
+             if(VISU::GetResourceMgr()->booleanValue("VISU","automatic_fit_all",false))
+               aViewWindow->onFitAll();
+             int aPos = VISU::GetFreePositionOfDefaultScalarBar(theModule, aViewWindow);
+             VISU::AddScalarBarPosition(theModule, aViewWindow, aPrs3d, aPos);
+           }
+           
+           VISU::UpdateObjBrowser(theModule, true, aTimeStamp);
+           delete aDlg;
          }
-         
-         VISU::UpdateObjBrowser(theModule, true, aTimeStamp);
-         delete aDlg;
        }
     }
+  return aPrs3d;
 }
 
 ////////////////////////////////////////////////////////////////////////////////
@@ -293,7 +325,7 @@ void VisuGUI_DeformedShapeDlg::CreatePrs3d(VisuGUI* theModule)
 void VisuGUI_DeformedShapeDlg::EditPrs3d(VisuGUI* theModule, VISU::Prs3d_i* thePrs3d, Handle(SALOME_InteractiveObject)& theIO)
 {
   typedef VISU::DeformedShape_i TPrs3d_i;
-  
+
   if (TPrs3d_i* aPrs3d = dynamic_cast<TPrs3d_i*>(thePrs3d)) {
     VisuGUI_DeformedShapeDlg* aDlg = new VisuGUI_DeformedShapeDlg (theModule);
     aDlg->initFromPrsObject(aPrs3d, true);
@@ -301,16 +333,17 @@ void VisuGUI_DeformedShapeDlg::EditPrs3d(VisuGUI* theModule, VISU::Prs3d_i* theP
 
     //Hide thePrs3d from Viewer
     SVTK_ViewWindow* aViewWindow = VISU::GetActiveViewWindow<SVTK_ViewWindow>(theModule);
-    if (VISU_Actor* anActor = FindActor(aViewWindow, thePrs3d))
-      if (anActor->GetVisibility())
-       anActor->VisibilityOff();
+    if (aViewWindow)
+      if (VISU_Actor* anActor = FindActor(aViewWindow, thePrs3d))
+       if (anActor->GetVisibility())
+         anActor->VisibilityOff();
 
     VisuGUI_DialogRunner r(aDlg);
     int dlgResult = r.run( false );
-   
+    
     if ( dlgResult != 0 )
       aDlg->storeToPrsObject( aPrs3d );
-      
+    
     try {
       thePrs3d->UpdateActors();
     }
@@ -318,15 +351,15 @@ void VisuGUI_DeformedShapeDlg::EditPrs3d(VisuGUI* theModule, VISU::Prs3d_i* theP
       thePrs3d->RemoveActors();
       
       INFOS(exc.what());
-      SUIT_MessageBox::warn1
+      SUIT_MessageBox::warning
        (VISU::GetDesktop(theModule), QObject::tr("WRN_VISU"),
-        QObject::tr("ERR_CANT_BUILD_PRESENTATION") + ": " + QObject::tr(exc.what()),
-        QObject::tr("BUT_OK"));
+        QObject::tr("ERR_CANT_BUILD_PRESENTATION") + ": " + QObject::tr(exc.what()));
     }
 
-    if (VISU_Actor* anActor = FindActor(aViewWindow, thePrs3d))
-      if (!anActor->GetVisibility())
-       anActor->VisibilityOn();
+    if (aViewWindow)
+      if (VISU_Actor* anActor = FindActor(aViewWindow, thePrs3d))
+       if (!anActor->GetVisibility())
+         anActor->VisibilityOn();
     
     delete aDlg;    
   }
index 60b4c272a8cc5fc48338cbaab0a82e9322f77524..7f54c00fbd8367bdfc48aebe1bab34d8366718df 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_MagnitudeDlg.h
 //  Author : Laurent CORNABE & Hubert ROLLAND
 //  Module : VISU
 //  $Header$
-
+//
 #ifndef VISUGUI_DEFORMEDSHAPEDLS_H
 #define VISUGUI_DEFORMEDSHAPEDLS_H
 
 #include "VisuGUI_Prs3dDlg.h"
 
-#include "QtxDblSpinBox.h"
+#include "QtxDoubleSpinBox.h"
+
+#include <QCheckBox>
+
+
+class QTabWidget;
+
 
-#include <qdialog.h>
-#include <qgroupbox.h>
-#include <qcheckbox.h>
-#include <qlabel.h>
-#include <qpushbutton.h>
-#include <qtabwidget.h>
 
+class QtxDoubleSpinBox;
 class SalomeApp_Module;
 class VisuGUI_InputPane;
 class VisuGUI;
@@ -59,8 +59,7 @@ public:
 
     double getFactor()
       { return ScalFact->value(); }
-    void setFactor(double theFactor)
-      { ScalFact->setValue(theFactor); }
+    void setFactor(double theFactor);
 
     bool isColored()
       { return UseMagn->isChecked(); }
@@ -70,7 +69,7 @@ public:
 
     virtual int  storeToPrsObject(VISU::ColoredPrs3d_i* thePrs);
 
-    static void CreatePrs3d(VisuGUI*  theModule);
+    static VISU::Prs3d_i* CreatePrs3d(VisuGUI*  theModule);
     static void EditPrs3d(VisuGUI* theModule, VISU::Prs3d_i* thePrs3d, Handle(SALOME_InteractiveObject)& theIO);
 
     void updatePrsCopy();
@@ -84,7 +83,7 @@ protected slots:
   void reject();
 
 private:
-    QtxDblSpinBox*         ScalFact;
+    QtxDoubleSpinBox*      ScalFact;
     QCheckBox*             UseMagn;
     QTabWidget*            myTabBox;
     VisuGUI_InputPane*     myInputPane;
index 872fd6871d906c1553d70d4671d1a842c8b16056..11e8e3166f8cd748da2d6387bde12b492e8ccb72 100644 (file)
@@ -1,41 +1,44 @@
-// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-// 
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either 
-// version 2.1 of the License.
-// 
-// This library is distributed in the hope that it will be useful 
-// but WITHOUT ANY WARRANTY; without even the implied warranty of 
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-// Lesser General Public License for more details.
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// You should have received a copy of the GNU Lesser General Public  
-// License along with this library; if not, write to the Free Software 
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 // File:       VisuGUI_DialogRunner.cxx
 // Created:    Thu Oct  6 10:17:39 2005
 // Author:     Alexander SOLOVYOV
 //             <asl@multiplex.nnov.opencascade.com>
-
+//
 #include "VisuGUI_DialogRunner.h"
 
-#include <qdialog.h>
-#include <qapplication.h>
+#include <QDialog>
+#include <QEventLoop>
+#include <QEvent>
 
 VisuGUI_DialogRunner::VisuGUI_DialogRunner( QDialog* dlg )
 : QObject(),
-  myDlg( dlg ),
-  myInLoop( false )
+  myDlg( dlg )
 {
   if( myDlg )
   {
     connect( myDlg, SIGNAL( destroyed() ), this, SLOT( onDialogDelete() ) );
     myDlg->installEventFilter( this );
+    myEventLoop = new QEventLoop( this );
   }
 }
 
@@ -45,36 +48,31 @@ VisuGUI_DialogRunner::~VisuGUI_DialogRunner()
 
 int VisuGUI_DialogRunner::run( const bool modal )
 {
-  if( myInLoop || !myDlg )
+  if( myEventLoop->isRunning() || !myDlg )
     return -1;
 
   if( modal )
     return myDlg->exec();
 
-  myInLoop = true;
   myDlg->show();
-  qApp->enter_loop();
+  myEventLoop->exec();
   return myDlg->result();
 }
 
 void VisuGUI_DialogRunner::onDialogDelete()
 {
-  if( myInLoop )
-    qApp->exit_loop();
+  if( myEventLoop->isRunning() )
+    myEventLoop->quit();
 
   myDlg = 0;
-  myInLoop = false;
 }
 
 bool VisuGUI_DialogRunner::eventFilter( QObject* o, QEvent* e )
 {
   if( o==myDlg && e && ( e->type()==QEvent::Close || e->type()==QEvent::Hide ) )
   {
-    if( myInLoop && !myDlg->isMinimized() )
-    {
-      myInLoop = false;
-      qApp->exit_loop();
-    }
+    if( myEventLoop->isRunning() && !myDlg->isMinimized() )
+      myEventLoop->quit();
     return false;
   }
   else
index 6911fe0ae69171a1cc66a64787f445e61da33fe1..2b7486c2c7d872871157776fd842499d909a14cb 100644 (file)
@@ -1,30 +1,31 @@
-// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-// 
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either 
-// version 2.1 of the License.
-// 
-// This library is distributed in the hope that it will be useful 
-// but WITHOUT ANY WARRANTY; without even the implied warranty of 
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-// Lesser General Public License for more details.
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// You should have received a copy of the GNU Lesser General Public  
-// License along with this library; if not, write to the Free Software 
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
-
-
 #ifndef DIALOG_RUNNER_HEADER
 #define DIALOG_RUNNER_HEADER
 
-#include <qobject.h>
+#include <QObject>
 
 class QDialog;
+class QEventLoop;
 
 class VisuGUI_DialogRunner : public QObject
 {
@@ -42,8 +43,8 @@ private slots:
   void onDialogDelete();
 
 private:
-  QDialog*   myDlg;
-  bool       myInLoop;
+  QDialog*    myDlg;
+  QEventLoop* myEventLoop;
 };
 
 #endif
index 2361b992f7a8582e4ad09e13163f7ccaa0b2c88c..41366ee6b47eee61576d388875d2e550c1f32cd2 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : Displayer for VISU module
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : Displayer for VISU module
 //  File   : VisuGUI_Displayer.cxx
 //  Author : Alexander SOLOVYOV
 //  Module : VISU
 //  $Header: /home/server/cvs/VISU/VISU_SRC/src/VISUGUI/VisuGUI_Displayer.cxx
-
+//
 #include "VisuGUI_Displayer.h"
 
+#include "VisuGUI.h"
 #include "VisuGUI_Tools.h"
 #include "VISU_ViewManager_i.hh"
 #include "VISU_Actor.h"
 
-#include "VVTK_ViewModel.h"
+//#include "VVTK_ViewModel.h"
 
 #include <SVTK_ViewModel.h>
 #include <SVTK_ViewWindow.h>
@@ -44,7 +44,9 @@
 #include <SalomeApp_Application.h>
 #include <SalomeApp_Study.h>
 
+#include <SUIT_ViewManager.h>
 #include <SUIT_MessageBox.h>
+#include <SUIT_Desktop.h>
 
 VisuGUI_Displayer::VisuGUI_Displayer( SalomeApp_Application* app )
 : LightApp_Displayer(),
@@ -60,11 +62,10 @@ SALOME_Prs* VisuGUI_Displayer::buildPresentation( const QString& theEntry, SALOM
 {
   SALOME_Prs* aPrs = 0;
 
-  SALOME_View* aView = theView ? theView : GetActiveView();
   SalomeApp_Study* aStudy = dynamic_cast<SalomeApp_Study*>( myApp->activeStudy() );
 
-  if(aStudy && aView){
-    _PTR(SObject) aSObject = aStudy->studyDS()->FindObjectID( theEntry.latin1() );
+  if(aStudy){
+    _PTR(SObject) aSObject = aStudy->studyDS()->FindObjectID( (const char*)theEntry.toLatin1() );
     CORBA::Object_var anObject = VISU::ClientSObjectToObject( aSObject );
     if( CORBA::is_nil( anObject ) )
       return 0;
@@ -75,12 +76,13 @@ SALOME_Prs* VisuGUI_Displayer::buildPresentation( const QString& theEntry, SALOM
 
     VISU::Base_i* aBaseServant = dynamic_cast<VISU::Base_i*>(VISU::GetServant(aBase).in());
 
+    SALOME_View* aView = theView ? theView : GetActiveView();
     VISU::VISUType aType = aBase->GetType();
     VISU::Prs3d_var aPrs3d = VISU::Prs3d::_narrow(aBase);
     if(!CORBA::is_nil(aPrs3d) || aType == VISU::TCOLOREDPRS3DHOLDER){
-      SVTK_Viewer* aViewer = dynamic_cast<VVTK_Viewer*>( aView );
-      if (!aViewer)
-       aViewer = dynamic_cast<SVTK_Viewer*>( aView );
+      SVTK_Viewer* aViewer = dynamic_cast<SVTK_Viewer*>( aView );
+      //if (!aViewer)
+      //aViewer = dynamic_cast<SVTK_Viewer*>( aView );
       if( aViewer ){
        SUIT_ViewManager* aViewManager = aViewer->getViewManager();
        SUIT_ViewWindow* aWindow = aViewManager->getActiveView();
@@ -90,7 +92,23 @@ SALOME_Prs* VisuGUI_Displayer::buildPresentation( const QString& theEntry, SALOM
            VISU::ColoredPrs3dHolder_var aHolder = VISU::ColoredPrs3dHolder::_narrow(aBase);
            VISU::ColoredPrs3d_var aColoredPrs3d = aHolder->GetDevice();
            aPrs3d = dynamic_cast<VISU::Prs3d_i*>(VISU::GetServant(aColoredPrs3d).in());
-         }else
+         }else if (aType == VISU::TPOINTMAP3D) {
+           VISU::PointMap3d_i* aTable3d = dynamic_cast<VISU::PointMap3d_i*>(aBaseServant);
+           VISU_ActorBase* anActorBase = VISU::FindActorBase(aViewWindow, aTable3d);
+           if (anActorBase) {
+             anActorBase->SetVisibility(true);
+             aViewWindow->Repaint();
+           }
+           else {
+             VISU_PointMap3dActor* aPointMap3dActor = aTable3d->CreateActor();
+             if (aPointMap3dActor) {
+               aViewWindow->AddActor(aPointMap3dActor);
+               aPointMap3dActor->SetVisibility(true);
+               aViewWindow->Repaint();
+             }
+           }
+         }
+         else
            aPrs3d = dynamic_cast<VISU::Prs3d_i*>(aBaseServant);
 
          if(aPrs3d){
@@ -98,14 +116,20 @@ SALOME_Prs* VisuGUI_Displayer::buildPresentation( const QString& theEntry, SALOM
            Handle(SALOME_InteractiveObject) anIO = aPrs3d->GetIO();
            if(anIO->hasEntry()){
              std::string anEntry = anIO->getEntry();
-             aPrs = LightApp_Displayer::buildPresentation( anEntry, aView );
+             aPrs = LightApp_Displayer::buildPresentation( anEntry.c_str(), aView );
            }
          }
        }
       }
     }
 
-    if(SPlot2d_Viewer* aViewer = dynamic_cast<SPlot2d_Viewer*>(aView)){
+    SPlot2d_Viewer* aViewer = 0;
+    if (aView) aViewer = dynamic_cast<SPlot2d_Viewer*>(aView);
+    if(!aViewer && (aType==VISU::TCURVE || aType==VISU::TCONTAINER))
+      if(VisuGUI* aVisuGUI = dynamic_cast<VisuGUI*>(myApp->activeModule()))
+       aViewer = VISU::GetPlot2dViewer( (SalomeApp_Module*)aVisuGUI, true );
+    
+    if(aViewer){
       SUIT_ViewManager* aViewManager = aViewer->getViewManager();
       SUIT_ViewWindow* aWindow = aViewManager->getActiveView();
       Plot2d_ViewWindow* aViewWindow = dynamic_cast<Plot2d_ViewWindow*>( aWindow );
@@ -124,6 +148,11 @@ SALOME_Prs* VisuGUI_Displayer::buildPresentation( const QString& theEntry, SALOM
        aPlot2dPrs = buildContainer( aViewWindow, aContainer );
        break;
       }
+      case VISU::TPOINTMAP3D: {
+       VISU::Table_i* aTable = dynamic_cast<VISU::Table_i*>(aBaseServant);
+       aPlot2dPrs = buildTable( aViewWindow, aTable );
+       break;
+      }
       case VISU::TTABLE: {
        VISU::Table_i* aTable = dynamic_cast<VISU::Table_i*>(aBaseServant);
        aPlot2dPrs = buildTable( aViewWindow, aTable );
@@ -150,7 +179,7 @@ void VisuGUI_Displayer::buildPrs3d( SVTK_ViewWindow* theViewWindow, VISU::Prs3d_
       thePrs3d->RemoveActors();
 
       INFOS(exc.what());
-      SUIT_MessageBox::warn1
+      SUIT_MessageBox::warning
         (myApp->desktop(), QObject::tr("WRN_VISU"),
          QObject::tr("ERR_CANT_BUILD_PRESENTATION") + ": " + QObject::tr(exc.what()),
          QObject::tr("BUT_OK"));
@@ -173,7 +202,7 @@ bool VisuGUI_Displayer::addCurve( SPlot2d_Prs* prs, Plot2d_ViewWindow* wnd, VISU
   if( !vv )
     return false;
 
-  SPlot2d_Curve* curve = vv->getCurveByIO( vv->FindIObject( entry.latin1() ) );
+  SPlot2d_Curve* curve = vv->getCurveByIO( vv->FindIObject( (const char*)entry.toLatin1() ) );
   if( !curve )
   {
     curve = c->CreatePresentation();
@@ -255,7 +284,7 @@ bool VisuGUI_Displayer::canBeDisplayed( const QString& entry, const QString& vie
   if( !study )
     return false;
 
-  _PTR(SObject) obj = study->studyDS()->FindObjectID( entry.latin1() );
+  _PTR(SObject) obj = study->studyDS()->FindObjectID( (const char*)entry.toLatin1() );
   CORBA::Object_var anObj = VISU::ClientSObjectToObject( obj );
   if( CORBA::is_nil( anObj ) )
     return false;
@@ -263,7 +292,12 @@ bool VisuGUI_Displayer::canBeDisplayed( const QString& entry, const QString& vie
   if( study->isComponent( entry ) )
     return true;
 
-  if( viewer_type==SVTK_Viewer::Type() || viewer_type==VVTK_Viewer::Type())
+  if( dynamic_cast<VISU::Curve_i*>( VISU::GetServant( anObj ).in() )
+      ||
+      dynamic_cast<VISU::Container_i*>( VISU::GetServant( anObj ).in() ) )
+    return true;
+
+  if( viewer_type==SVTK_Viewer::Type() /*|| viewer_type==VVTK_Viewer::Type()*/)
   {
     VISU::Base_i* aBase = dynamic_cast<VISU::Base_i*>(VISU::GetServant(anObj).in());
 
@@ -273,14 +307,15 @@ bool VisuGUI_Displayer::canBeDisplayed( const QString& entry, const QString& vie
     if(aBase->GetType() == VISU::TCOLOREDPRS3DHOLDER)
       return true;
 
+    if(aBase->GetType() == VISU::TPOINTMAP3D)
+      return dynamic_cast<VISU::PointMap3d_i*>(aBase);
+
     return dynamic_cast<VISU::Prs3d_i*>(aBase);
   }
   else if( viewer_type==SPlot2d_Viewer::Type() )
   {
-    VISU::Curve_i* aCurve = dynamic_cast<VISU::Curve_i*>( VISU::GetServant( anObj ).in() );
-    VISU::Container_i* aCont = dynamic_cast<VISU::Container_i*>( VISU::GetServant( anObj ).in() );
     VISU::Table_i* aTable = dynamic_cast<VISU::Table_i*>(VISU::GetServant( anObj ).in() );
-    return aCurve || aCont || aTable;
+    return aTable;
   }
   else 
     return false;
index fdb729b5a421945551203ca217b1c5be9d48cb2c..8a625784eb5441c40dfe004324f626a253f553f0 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : Displayer for VISU module
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : Displayer for VISU module
 //  File   : VisuGUI_Displayer.h
 //  Author : Alexander SOLOVYOV
 //  Module : VISU
 //  $Header: /home/server/cvs/VISU/VISU_SRC/src/VISUGUI/VisuGUI_Displayer.h
-
+//
 #ifndef VISUGUI_DISPLAYER_HEADER
 #define VISUGUI_DISPLAYER_HEADER
 
 #include <LightApp_Displayer.h>
 #include <VISU_Prs3d_i.hh>
 #include <VISU_Table_i.hh>
+#include <VISU_PointMap3d_i.hh>
 
 class SalomeApp_Application;
 class SVTK_ViewWindow;
index 6eecdcc0eaeac758688fd789b280b99f7fa758f9..abbdc0bf277f0b761829e949f3058fb8806880c5 100644 (file)
@@ -1,27 +1,28 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
 //  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VisuGUI_EditContainerDlg.cxx
 //  Author : VSV
 //  Module : VISU
-
-
+//
 #include "VisuGUI_EditContainerDlg.h"
 
 #include "VisuGUI.h"
 #include "SUIT_MessageBox.h"
 #include "SUIT_ResourceMgr.h"
 
-#include <qlayout.h>
-#include <qcheckbox.h>
-#include <qgroupbox.h>
-#include <qpushbutton.h>
-#include <qlabel.h>
+#include <QLayout>
+#include <QCheckBox>
+#include <QGroupBox>
+#include <QPushButton>
+#include <QLabel>
+#include <QTreeWidget>
+#include <QToolButton>
+#include <QKeyEvent>
+
 
 using namespace std;
 
@@ -210,17 +215,19 @@ static QPixmap MYRightPix(right_xpm);
 
 
 VisuGUI_EditContainerDlg::VisuGUI_EditContainerDlg (VisuGUI* theModule, bool theIsModal)
-     : QDialog(VISU::GetDesktop(theModule), "VisuGUI_EditContainerDlg", theIsModal,
-               WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu),
+     : QDialog(VISU::GetDesktop(theModule), Qt::WindowTitleHint | Qt::WindowSystemMenuHint ),
        myVisuGUI(theModule)
 {
+  setModal( theIsModal );
   if (!theIsModal) {
-    setWFlags(getWFlags() | WDestructiveClose);
+    setAttribute( Qt::WA_DeleteOnClose, true );
   }
-  setCaption("Edit Plot 2D Presentation");
+  setWindowTitle("Edit Plot 2D Presentation");
   setSizeGripEnabled(true);
 
-  QVBoxLayout* TopLayout = new QVBoxLayout (this, 6, 11);
+  QVBoxLayout* TopLayout = new QVBoxLayout (this );
+  TopLayout->setMargin( 6 );
+  TopLayout->setSpacing( 11);
 
   /***************************************************************/
   QFrame* aControlFrame = new QFrame (this);
@@ -229,34 +236,45 @@ VisuGUI_EditContainerDlg::VisuGUI_EditContainerDlg (VisuGUI* theModule, bool the
   QGridLayout* aControlLay = new QGridLayout (aControlFrame);
   aControlLay->setSpacing(6);
   aControlLay->setMargin(11);
-  aControlLay->addRowSpacing(1, 30);
-  aControlLay->addRowSpacing(4, 30);
+  //aControlLay->addRowSpacing(1, 30);
+  //aControlLay->addRowSpacing(4, 30);
   aControlLay->setRowStretch(1, 1);
   aControlLay->setRowStretch(4, 1);
-  aControlLay->addColSpacing(0, 180);
-  aControlLay->addColSpacing(2, 180);
+  //aControlLay->addColSpacing(0, 180);
+  //aControlLay->addColSpacing(2, 180);
 
   QLabel* aSelectLbl = new QLabel (tr("LBL_STUDY"), aControlFrame);
   aControlLay->addWidget(aSelectLbl, 0, 0);
 
-  myStudyLst = new QListView (aControlFrame);
-  myStudyLst->setSelectionMode(QListView::Extended);
-  myStudyLst->addColumn(tr("TXT_TABLE"), 80);
-  myStudyLst->addColumn(tr("TXT_CURVE"), 50);
-  myStudyLst->addColumn(tr(""), 0);
+  myStudyLst = new QTreeWidget (aControlFrame);
+  myStudyLst->setSelectionMode(QAbstractItemView::ExtendedSelection);
+  myStudyLst->setColumnCount( 3 );
+  QStringList aLabels;
+  aLabels.append( tr("TXT_TABLE") );
+  aLabels.append( tr("TXT_CURVE") );
+  aLabels.append( "" );
+  myStudyLst->setHeaderLabels( aLabels );
+  myStudyLst->setColumnWidth( 0, 80 );
+  myStudyLst->setColumnWidth( 1, 50 );
+  myStudyLst->setColumnWidth( 2, 0 );
+  
+  //myStudyLst->addColumn(tr("TXT_TABLE"), 80);
+  //myStudyLst->addColumn(tr("TXT_CURVE"), 50);
+  //myStudyLst->addColumn(tr(""), 0);
+  
   myStudyLst->setAllColumnsShowFocus(true);
-  myStudyLst->setMinimumHeight(130);
-  connect(myStudyLst, SIGNAL(selectionChanged()), this, SLOT(onLeftSelected()));
-  aControlLay->addMultiCellWidget(myStudyLst, 1, 4, 0, 0);
+  //myStudyLst->setMinimumHeight(130);
+  connect(myStudyLst, SIGNAL(itemSelectionChanged()), this, SLOT(onLeftSelected()));
+  aControlLay->addWidget(myStudyLst, 1, 0, 5, 1);
 
   myRightBtn = new QToolButton (aControlFrame);
-  myRightBtn->setIconSet(MYRightPix);
+  myRightBtn->setIcon(MYRightPix);
   myRightBtn->setEnabled(false);
   connect(myRightBtn, SIGNAL(clicked()), this, SLOT(onRightClicked()));
   aControlLay->addWidget(myRightBtn, 2, 1);
 
   myLeftBtn = new QToolButton(aControlFrame);
-  myLeftBtn->setIconSet(MYLeftPix);
+  myLeftBtn->setIcon(MYLeftPix);
   myLeftBtn->setEnabled(false);
   connect(myLeftBtn, SIGNAL(clicked()), this, SLOT(onLeftClicked()));
   aControlLay->addWidget(myLeftBtn, 3, 1);
@@ -264,39 +282,46 @@ VisuGUI_EditContainerDlg::VisuGUI_EditContainerDlg (VisuGUI* theModule, bool the
   QLabel* aForceLbl = new QLabel (tr("LBL_CONTAINER"), aControlFrame);
   aControlLay->addWidget(aForceLbl, 0, 2);
 
-  myContainerLst = new QListView(aControlFrame);
-  myContainerLst->setSelectionMode(QListView::Extended);
-  myContainerLst->addColumn(tr("TXT_TABLE"), 80);
-  myContainerLst->addColumn(tr("TXT_CURVE"), 50);
-  myContainerLst->addColumn(tr(""), 0);
-  myContainerLst->setMinimumWidth(130);
-  connect(myContainerLst, SIGNAL(selectionChanged()), this, SLOT(onRightSelected()));
-  aControlLay->addMultiCellWidget(myContainerLst, 1, 4, 2, 2);
+  myContainerLst = new QTreeWidget(aControlFrame);
+  myContainerLst->setSelectionMode(QAbstractItemView::ExtendedSelection);
+  //myContainerLst->addColumn(tr("TXT_TABLE"), 80);
+  //myContainerLst->addColumn(tr("TXT_CURVE"), 50);
+  //myContainerLst->addColumn(tr(""), 0);
+  myContainerLst->setColumnCount( 3 );
+  myContainerLst->setHeaderLabels( aLabels );
+  myContainerLst->setColumnWidth( 0, 80 );
+  myContainerLst->setColumnWidth( 1, 50 );
+  myContainerLst->setColumnWidth( 2, 0 );
+
+  
+  //myContainerLst->setMinimumWidth(130);
+  connect(myContainerLst, SIGNAL(itemSelectionChanged()), this, SLOT(onRightSelected()));
+  aControlLay->addWidget(myContainerLst, 1, 2, 5, 1);
 
   TopLayout->addWidget(aControlFrame);
 
   // Common buttons ===========================================================
-  QGroupBox* GroupButtons = new QGroupBox(this, "GroupButtons");
-  GroupButtons->setColumnLayout(0, Qt::Vertical);
-  GroupButtons->layout()->setSpacing(0);
-  GroupButtons->layout()->setMargin(0);
-  QGridLayout* GroupButtonsLayout = new QGridLayout(GroupButtons->layout());
+  QGroupBox* GroupButtons = new QGroupBox(this);
+  //GroupButtons->setColumnLayout(0, Qt::Vertical);
+  //GroupButtons->layout()->setSpacing(0);
+  //GroupButtons->layout()->setMargin(0);
+  QGridLayout* GroupButtonsLayout = new QGridLayout(GroupButtons);
   GroupButtonsLayout->setAlignment(Qt::AlignTop);
   GroupButtonsLayout->setSpacing(6);
   GroupButtonsLayout->setMargin(11);
 
-  QPushButton* buttonOk = new QPushButton(tr("&OK"), GroupButtons, "buttonOk");
+  QPushButton* buttonOk = new QPushButton(tr("&OK"), GroupButtons);
   buttonOk->setAutoDefault(TRUE);
   buttonOk->setDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonOk, 0, 0);
   GroupButtonsLayout->addItem(new QSpacerItem(5, 5, QSizePolicy::Expanding,
                                               QSizePolicy::Minimum), 0, 1);
 
-  QPushButton* buttonCancel = new QPushButton(tr("&Cancel") , GroupButtons, "buttonCancel");
+  QPushButton* buttonCancel = new QPushButton(tr("&Cancel") , GroupButtons);
   buttonCancel->setAutoDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonCancel, 0, 2);
 
-  QPushButton* buttonHelp = new QPushButton(tr("&Help") , GroupButtons, "buttonHelp");
+  QPushButton* buttonHelp = new QPushButton(tr("&Help") , GroupButtons);
   buttonHelp->setAutoDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonHelp, 0, 3);
 
@@ -314,20 +339,24 @@ void VisuGUI_EditContainerDlg::initFromPrsObject (VISU::Container_i* theContaine
   if (!aVisuSO) {
     return;
   }
-  QValueList<CurveStruct> aStudyCurves;
-  QValueList<CurveStruct> aContainerCurves;
+  QList<CurveStruct> aStudyCurves;
+  QList<CurveStruct> aContainerCurves;
   // Find curves in container
   for (int i = 1; i <= theContainer->GetNbCurves(); i++) {
     VISU::Curve_i* aCurve = theContainer->GetCurve(i);
     if (aCurve == NULL) continue;
     CurveStruct aEntry;
     aEntry.CurveName = aCurve->GetTitle();
-    aEntry.CurveEntry = aCurve->GetEntry();
+    aEntry.CurveEntry = aCurve->GetEntry().c_str();
     _PTR(SObject) aTableSO = aStudy->FindObjectID(aCurve->GetTableID());
     if (!aTableSO) continue;
     aEntry.TableName = getSObjectName(aTableSO);
     aContainerCurves.append(aEntry);
-    new QListViewItem(myContainerLst, aEntry.TableName, aEntry.CurveName, aEntry.CurveEntry);
+    QStringList aList;
+    aList.append( aEntry.TableName );
+    aList.append( aEntry.CurveName );
+    aList.append( aEntry.CurveEntry );
+    new QTreeWidgetItem(myContainerLst, aList);
   }
   // Find curves in study
   _PTR(ChildIterator) aIter = aStudy->NewChildIterator(aVisuSO);
@@ -347,8 +376,8 @@ void VisuGUI_EditContainerDlg::initFromPrsObject (VISU::Container_i* theContaine
     }
   }
   //Show Curves which are not in Curve
-  QValueList<CurveStruct>::iterator it;
-  QValueList<CurveStruct>::iterator it2;
+  QList<CurveStruct>::iterator it;
+  QList<CurveStruct>::iterator it2;
   bool isExist = false;
   for (it = aStudyCurves.begin(); it != aStudyCurves.end(); ++it) {
     for (it2 = aContainerCurves.begin(); it2 != aContainerCurves.end(); ++it2) {
@@ -356,7 +385,13 @@ void VisuGUI_EditContainerDlg::initFromPrsObject (VISU::Container_i* theContaine
        break;
     }
     if (!isExist)
-      new QListViewItem(myStudyLst, (*it).TableName, (*it).CurveName, (*it).CurveEntry);
+    {
+      QStringList aList;
+      aList.append( (*it).TableName );
+      aList.append( (*it).CurveName );
+      aList.append( (*it).CurveEntry );
+      new QTreeWidgetItem(myStudyLst, aList );
+    }
   }
 }
 
@@ -365,9 +400,13 @@ void VisuGUI_EditContainerDlg::storeToPrsObject (VISU::Container_i* theContainer
   theContainer->Clear();
 
   _PTR(Study) aStudy = VISU::GetCStudy(VISU::GetAppStudy(myVisuGUI));
-  QListViewItem* anItem = myContainerLst->firstChild();
-  while (anItem) {
-    _PTR(SObject) aCurveSO = aStudy->FindObjectID(anItem->text(2).latin1());
+  QTreeWidgetItem* anItem;
+  for ( int i= 0; i< myContainerLst->topLevelItemCount(); i++  )
+  {
+    anItem = myContainerLst->topLevelItem( i );
+    if ( !anItem )
+      continue;
+    _PTR(SObject) aCurveSO = aStudy->FindObjectID((const char*)anItem->text(2).toLatin1());
     if (aCurveSO) {
       CORBA::Object_var aObject = VISU::ClientSObjectToObject(aCurveSO);
       if (!CORBA::is_nil(aObject)) {
@@ -375,7 +414,6 @@ void VisuGUI_EditContainerDlg::storeToPrsObject (VISU::Container_i* theContainer
        if (aCurve) theContainer->AddCurve(aCurve->_this());
       }
     }
-    anItem = anItem->nextSibling();
   }
 }
 
@@ -393,7 +431,7 @@ QString VisuGUI_EditContainerDlg::getSObjectName (_PTR(SObject) theSObject)
 
 void VisuGUI_EditContainerDlg::onLeftClicked()
 {
-  QListViewItem* anItem = myContainerLst->firstChild();
+  /*QListViewItem* anItem = myContainerLst->firstChild();
   while (anItem) {
     if (anItem->isSelected()) {
       QListViewItem* anTmpItem = anItem;
@@ -403,12 +441,24 @@ void VisuGUI_EditContainerDlg::onLeftClicked()
     } else {
       anItem = anItem->nextSibling();
     }
+    }*/
+  QList<QTreeWidgetItem*> selItem = myContainerLst->selectedItems();
+  QList<QTreeWidgetItem*>::Iterator anIt = selItem.begin();
+
+  QList<QTreeWidgetItem*> topSelectedItems;
+  for ( ; anIt != selItem.end(); anIt++  )
+  {
+    int index = myContainerLst->indexOfTopLevelItem( *anIt );
+    if ( index != -1 )
+      topSelectedItems.append( myContainerLst->takeTopLevelItem( index ) );
   }
+
+  myStudyLst->addTopLevelItems(topSelectedItems);
 }
 
 void VisuGUI_EditContainerDlg::onRightClicked()
 {
-  QListViewItem* anItem = myStudyLst->firstChild();
+  /*QListViewItem* anItem = myStudyLst->firstChild();
   while (anItem) {
     if (anItem->isSelected()) {
       QListViewItem* anTmpItem = anItem;
@@ -418,35 +468,29 @@ void VisuGUI_EditContainerDlg::onRightClicked()
     } else {
       anItem = anItem->nextSibling();
     }
+    }*/
+  QList<QTreeWidgetItem*> selItem = myStudyLst->selectedItems();
+  QList<QTreeWidgetItem*>::Iterator anIt = selItem.begin();
+
+  QList<QTreeWidgetItem*> topSelectedItems;
+  for ( ; anIt != selItem.end(); anIt++  )
+  {
+    int index = myStudyLst->indexOfTopLevelItem( *anIt );
+    if ( index != -1 )
+      topSelectedItems.append( myStudyLst->takeTopLevelItem( index ) );
   }
+
+  myContainerLst->addTopLevelItems(topSelectedItems);
 }
 
 void VisuGUI_EditContainerDlg::onLeftSelected()
 {
-  QListViewItem* anItem = myStudyLst->firstChild();
-  bool isSelected = false;
-  while (anItem) {
-    if (anItem->isSelected()) {
-      isSelected = true;
-      break;
-    }
-    anItem = anItem->nextSibling();
-  }
-  myRightBtn->setEnabled(isSelected);
+  myRightBtn->setEnabled( myStudyLst->selectedItems().count() > 0 );
 }
 
 void VisuGUI_EditContainerDlg::onRightSelected()
 {
-  QListViewItem* anItem = myContainerLst->firstChild();
-  bool isSelected = false;
-  while (anItem) {
-    if (anItem->isSelected()) {
-      isSelected = true;
-      break;
-    }
-    anItem = anItem->nextSibling();
-  }
-  myLeftBtn->setEnabled(isSelected);
+  myLeftBtn->setEnabled( myContainerLst->selectedItems().count() > 0 );
 }
 
 void VisuGUI_EditContainerDlg::onHelp()
@@ -462,10 +506,10 @@ void VisuGUI_EditContainerDlg::onHelp()
 #else
     platform = "application";
 #endif
-    SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"),
-                          QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
-                          arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
-                          QObject::tr("BUT_OK"));
+    SUIT_MessageBox::warning(0, QObject::tr("WRN_WARNING"),
+                             QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                             arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
+                             QObject::tr("BUT_OK"));
   }
 }
 
@@ -475,7 +519,7 @@ void VisuGUI_EditContainerDlg::keyPressEvent( QKeyEvent* e )
   if ( e->isAccepted() )
     return;
 
-  if ( e->key() == Key_F1 )
+  if ( e->key() == Qt::Key_F1 )
     {
       e->accept();
       onHelp();
index 0ff26c94db55c7ceae04329e78f62957af11f246..2c9cbd67e031d8d09b4227e649b3d37653777d55 100644 (file)
@@ -1,33 +1,37 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VisuGUI_EditContainerDlg.h
 //  Author : VSV
 //  Module : VISU
-
+//
 #ifndef VISUGUI_EDITCONTAINER_H
 #define VISUGUI_EDITCONTAINER_H
 
-#include <qdialog.h>
-#include <qlistview.h>
-#include <qvaluevector.h>
-#include <qtoolbutton.h>
+#include <QDialog>
+#include <QVector>
+
+class QTreeWidget;
+class QToolButton;
+
 
 #include "SALOMEDSClient_SObject.hxx"
 
@@ -69,8 +73,8 @@ class VisuGUI_EditContainerDlg: public QDialog
  private:
   QString getSObjectName (_PTR(SObject) theSObject);
 
-  QListView*   myStudyLst;
-  QListView*   myContainerLst;
+  QTreeWidget* myStudyLst;
+  QTreeWidget* myContainerLst;
   QToolButton* myLeftBtn;
   QToolButton* myRightBtn;
 
index 5ef7af88bdcc9e4584347d64a6d0d71f2b332eac..2be47b17f0dad880889f2e2ed05e40b3748e7025 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_Factory.cxx
 //  Author : 
 //  Module : VISU
 //  $Header$
-
+//
 #include "VisuGUI_Module.h"
 
 #include "CAM_Module.h"
diff --git a/src/VISUGUI/VisuGUI_FeatureEdgesPanel.cxx b/src/VISUGUI/VisuGUI_FeatureEdgesPanel.cxx
new file mode 100644 (file)
index 0000000..fc7f192
--- /dev/null
@@ -0,0 +1,215 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
+//  File   : VisuGUI_FeatureEdgesPanel.cxx
+//  Author : Oleg Uvarov
+//  Module : VISU
+//
+#include "VisuGUI_FeatureEdgesPanel.h"
+
+#include "VisuGUI.h"
+#include "VisuGUI_Tools.h"
+#include "VisuGUI_ViewTools.h"
+
+#include <QCheckBox>
+#include <QGroupBox>
+#include <QKeyEvent>
+#include <QLabel>
+#include <QLayout>
+#include <QPushButton>
+
+#include <QtxDoubleSpinBox.h>
+
+#include <SUIT_MessageBox.h>
+#include <SUIT_Session.h>
+#include <SUIT_ResourceMgr.h>
+
+#include <SalomeApp_Application.h>
+
+#include <LightApp_SelectionMgr.h>
+
+VisuGUI_FeatureEdgesPanel::VisuGUI_FeatureEdgesPanel( const VisuGUI* theModule, QWidget* theParent ) :
+  VisuGUI_Panel( tr( "WINDOW_TITLE" ), theModule, theParent, ApplyBtn | CloseBtn | HelpBtn ),
+  myActor( 0 )
+{
+  QVBoxLayout* aTopLayout = new QVBoxLayout( mainFrame() );
+  myGrp = new QGroupBox( tr( "FEATURE_EDGES_PROPERTIES" ), mainFrame() );
+
+  QGridLayout* aLayout = new QGridLayout( myGrp );
+  aLayout->setAlignment( Qt::AlignTop );
+
+  QLabel* anAngleLbl = new QLabel( tr( "FEATURE_EDGES_ANGLE" ), myGrp );
+  myAngleSpinBox = new QtxDoubleSpinBox( 0.0, 90.0, 10.0, myGrp );
+
+  myFeatureEdgesCB = new QCheckBox( tr( "SHOW_FEATURE_EDGES" ), myGrp );
+  myBoundaryEdgesCB = new QCheckBox( tr( "SHOW_BOUNDARY_EDGES" ), myGrp );
+  myManifoldEdgesCB = new QCheckBox( tr( "SHOW_MANIFOLD_EDGES" ), myGrp );
+  myNonManifoldEdgesCB = new QCheckBox( tr( "SHOW_NON_MANIFOLD_EDGES" ), myGrp );
+
+  //myColoringCB = new QCheckBox( tr( "FEATURE_EDGES_COLORING" ), myGrp );
+
+  aLayout->addWidget( anAngleLbl, 0, 0 );
+  aLayout->addWidget( myAngleSpinBox, 0, 1 );
+  aLayout->addWidget( myFeatureEdgesCB, 1, 0, 1, 2 );
+  aLayout->addWidget( myBoundaryEdgesCB, 2, 0, 1, 2 );
+  aLayout->addWidget( myManifoldEdgesCB, 3, 0, 1, 2 );
+  aLayout->addWidget( myNonManifoldEdgesCB, 4, 0, 1, 2 );
+  //aLayout->addWidget( myColoringCB, 5, 0, 1, 2 );
+
+  aTopLayout->addWidget( myGrp );
+
+  SalomeApp_Application* anApp =
+    dynamic_cast<SalomeApp_Application*>( SUIT_Session::session()->activeApplication() );
+  LightApp_SelectionMgr* aSelectionMgr = anApp->selectionMgr();
+  connect( aSelectionMgr, SIGNAL( currentSelectionChanged() ), this, SLOT( onSelectionEvent() ) );
+}
+
+VisuGUI_FeatureEdgesPanel::~VisuGUI_FeatureEdgesPanel()
+{
+}
+
+void VisuGUI_FeatureEdgesPanel::showEvent( QShowEvent* theEvent )
+{
+  onSelectionEvent();
+
+  VisuGUI_Panel::showEvent(theEvent);
+}
+
+VISU_Actor* VisuGUI_FeatureEdgesPanel::getSelectedActor() const
+{
+  SVTK_ViewWindow* aViewWindow = VISU::GetActiveViewWindow<SVTK_ViewWindow>( myModule );
+  if( !aViewWindow )
+    return 0;
+
+  _PTR(SObject) aSObject;
+  VISU::Prs3d_i* aPrs3d = 0;
+  Handle(SALOME_InteractiveObject) anIO;
+
+  VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects( myModule );
+  if( aSelectionInfo.size() != 1 )
+    return 0;
+
+  VISU::TSelectionItem aSelectionItem = aSelectionInfo.front();
+  VISU::TObjectInfo anObjectInfo = aSelectionItem.myObjectInfo;
+  aPrs3d = GetPrs3dFromBase( anObjectInfo.myBase );
+  if( !aPrs3d )
+    return 0;
+
+  anIO = aSelectionItem.myIO;
+  aSObject = anObjectInfo.mySObject;
+  
+  VISU_Actor* anActor =
+    VISU::FindActor( VISU::GetAppStudy( myModule ), aViewWindow, aSObject->GetID().c_str() );
+
+  return anActor;
+}
+
+void VisuGUI_FeatureEdgesPanel::onSelectionEvent()
+{
+  myActor = getSelectedActor();
+  bool anIsSelected = myActor && myActor->IsFeatureEdgesAllowed();
+
+  myGrp->setEnabled( anIsSelected );
+  myApply->setEnabled( anIsSelected );
+
+  if( !anIsSelected )
+    return;
+
+  if( !myActor->IsFeatureEdgesAllowed() )
+    return;
+
+  float anAngle = myActor->GetFeatureEdgesAngle();
+
+  bool anIsFeatureEdges = false,
+       anIsBoundaryEdges = false,
+       anIsManifoldEdges = false,
+       anIsNonManifoldEdges = false;
+  myActor->GetFeatureEdgesFlags( anIsFeatureEdges,
+                                anIsBoundaryEdges,
+                                anIsManifoldEdges,
+                                anIsNonManifoldEdges );
+
+  float aColoring = myActor->GetFeatureEdgesColoring();
+
+  myAngleSpinBox->setValue( anAngle );
+  myFeatureEdgesCB->setChecked( anIsFeatureEdges );
+  myBoundaryEdgesCB->setChecked( anIsBoundaryEdges );
+  myManifoldEdgesCB->setChecked( anIsManifoldEdges );
+  myNonManifoldEdgesCB->setChecked( anIsNonManifoldEdges );
+  //myColoringCB->setChecked( aColoring );
+}
+
+void VisuGUI_FeatureEdgesPanel::onApply()
+{
+  if( myActor )
+  {
+    myActor->SetFeatureEdgesAngle( myAngleSpinBox->value() );
+    myActor->SetFeatureEdgesFlags( myFeatureEdgesCB->isChecked(),
+                                  myBoundaryEdgesCB->isChecked(),
+                                  myManifoldEdgesCB->isChecked(),
+                                  myNonManifoldEdgesCB->isChecked() );
+    //myActor->SetFeatureEdgesColoring( myColoringCB->isChecked() );
+    myActor->Update();
+  }
+
+  VisuGUI_Panel::onApply();
+}
+
+void VisuGUI_FeatureEdgesPanel::onClose()
+{
+  close();
+  VisuGUI_Panel::onClose();
+}
+
+void VisuGUI_FeatureEdgesPanel::onHelp()
+{
+  QString aHelpFileName = "feature_edges_page.html";
+  LightApp_Application* app = (LightApp_Application*)(SUIT_Session::session()->activeApplication());
+  if (app)
+    app->onHelpContextModule(myModule ? app->moduleName(myModule->moduleName()) : QString(""), aHelpFileName);
+  else {
+    QString platform;
+#ifdef WIN32
+    platform = "winapplication";
+#else
+    platform = "application";
+#endif
+    SUIT_MessageBox::warning(0, QObject::tr("WRN_WARNING"),
+                             QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                             arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName) );
+  }
+
+  VisuGUI_Panel::onHelp();
+}
+
+void VisuGUI_FeatureEdgesPanel::keyPressEvent( QKeyEvent* e )
+{
+  VisuGUI_Panel::keyPressEvent( e );
+  if ( e->isAccepted() )
+    return;
+
+  if ( e->key() == Qt::Key_F1 )
+    {
+      e->accept();
+      onHelp();
+    }
+}
diff --git a/src/VISUGUI/VisuGUI_FeatureEdgesPanel.h b/src/VISUGUI/VisuGUI_FeatureEdgesPanel.h
new file mode 100644 (file)
index 0000000..aefaebf
--- /dev/null
@@ -0,0 +1,74 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
+//  File   : VisuGUI_FeatureEdgesPanel.h
+//  Author : Oleg Uvarov
+//  Module : VISU
+//
+#ifndef VISUGUI_FEATUREEDGESPANEL_H
+#define VISUGUI_FEATUREEDGESPANEL_H
+
+#include <VisuGUI_Panel.h>
+
+class QCheckBox;
+class QGroupBox;
+
+class QtxDoubleSpinBox;
+
+class VISU_Actor;
+
+class VisuGUI_FeatureEdgesPanel: public VisuGUI_Panel
+{
+  Q_OBJECT
+
+public:
+  VisuGUI_FeatureEdgesPanel( const VisuGUI* theModule, QWidget* theParent = 0 );
+  virtual ~VisuGUI_FeatureEdgesPanel ();
+
+protected:
+  virtual void              keyPressEvent( QKeyEvent* theEvent );
+  virtual void              showEvent( QShowEvent* theEvent );
+
+private slots:
+  virtual void              onApply();
+  virtual void              onClose();
+  virtual void              onHelp();
+
+  void                      onSelectionEvent();
+
+private:
+  VISU_Actor*               getSelectedActor() const;
+
+private:
+  QGroupBox*                myGrp;
+
+  QtxDoubleSpinBox*         myAngleSpinBox;
+  QCheckBox*                myFeatureEdgesCB;
+  QCheckBox*                myBoundaryEdgesCB;
+  QCheckBox*                myManifoldEdgesCB;
+  QCheckBox*                myNonManifoldEdgesCB;
+  QCheckBox*                myColoringCB;
+
+  VISU_Actor*               myActor;
+};
+
+#endif
index 807d2157e162da8480740e5d985df2c426a03989..526eabedba80cd5f9e2eaeaffdef4f3a10a807f8 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_FieldFilter.cxx
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #include "VisuGUI_FieldFilter.h"
 
 #include "VisuGUI_Tools.h"
@@ -67,7 +66,7 @@ bool VisuGUI_FieldFilter::isOk( const SUIT_DataOwner* theDataOwner ) const
       return true;
 
     _PTR(Study) aStudy = anAppStudy->studyDS();
-    _PTR(SObject) aSObject = aStudy->FindObjectID( anOwner->entry() );
+    _PTR(SObject) aSObject = aStudy->FindObjectID( (const char*)anOwner->entry().toLatin1() );
     if (!aSObject)
       return false;
 
@@ -91,12 +90,12 @@ bool VisuGUI_FieldFilter::isOk( const SUIT_DataOwner* theDataOwner ) const
 
       VISU::ColoredPrs3dHolder::BasicInput anInput;
       anInput.myResult = aResult;
-      anInput.myMeshName = CORBA::string_dup( aMeshName.latin1() );
+      anInput.myMeshName = CORBA::string_dup( (const char*)aMeshName.toLatin1() );
       anInput.myEntity = (VISU::Entity)anEntity;
-      anInput.myFieldName = CORBA::string_dup( aFieldName.latin1() );
+      anInput.myFieldName = CORBA::string_dup( (const char*)aFieldName.toLatin1() );
       anInput.myTimeStampNumber = 1;
 
-      QApplication::setOverrideCursor(Qt::waitCursor);
+      QApplication::setOverrideCursor(Qt::WaitCursor);
 
       size_t isOk = VISU::CheckIsPossible( myType, anInput, true );
 
index faec6f0003fd9b4492484e3debb61793dad41473..d9215fc0c23275569dd365cd469698888297ad3c 100644 (file)
@@ -1,26 +1,28 @@
-// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-// 
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either 
-// version 2.1 of the License.
-// 
-// This library is distributed in the hope that it will be useful 
-// but WITHOUT ANY WARRANTY; without even the implied warranty of 
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-// Lesser General Public License for more details.
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// You should have received a copy of the GNU Lesser General Public  
-// License along with this library; if not, write to the Free Software 
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VisuGUI_FieldFilter.hxx
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #ifndef VISUGUI_FIELDFILTER_H
 #define VISUGUI_FIELDFILTER_H
 
index 5bf734b291c864f8e0788bb143e17fc66fefbea0..485e6b4dad6e7e668a238ec6ff1cc4d500bdfbd4 100644 (file)
@@ -1,33 +1,34 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VisuGUI_FileDlg.cxx
 //  Author : 
 //  Module : SALOME
 //  $Header: /dn05/salome/CVS/SALOME_ROOT/SALOME/src/VISUGUI/Visu_FileDlg.cxx
-
-
-#include <qapplication.h>
-#include <qpushbutton.h>
-#include <qcheckbox.h>
-#include <qstring.h>
-#include <qlabel.h>
+//
+#include <QApplication>
+#include <QPushButton>
+#include <QCheckBox>
+#include <QString>
+#include <QLabel>
 
 #include "VISUConfig.hh"
 #include "VisuGUI_FileDlg.h"
@@ -47,11 +48,13 @@ VisuGUI_FileDlg::VisuGUI_FileDlg (QWidget* parent,
   SUIT_FileDlg(parent, open, showQuickDir, modal)
 { 
   myCBuildAll = new QCheckBox (tr("FULL_LOAD"), this);
+
   QLabel* label = new QLabel("", this);
   label->setMaximumWidth(0);
   QPushButton* pb = new QPushButton(this);               
   pb->setMaximumWidth(0);
   addWidgets( label, myCBuildAll, pb );
+  
   bool toBuildAll = VISU::GetResourceMgr()->booleanValue("VISU", "full_med_loading", false);
   if (toBuildAll) myCBuildAll->setChecked(true);
 }
@@ -72,14 +75,17 @@ bool VisuGUI_FileDlg::processPath( const QString& path )
     QFileInfo fi( path );
     if ( fi.exists() ) {
       if ( fi.isFile() )
-       setSelection( path );
+      {
+        setDirectory( fi.absoluteDir().absolutePath() );
+       selectFile( fi.fileName() );
+      }
       else if ( fi.isDir() )
-       setDir( path );
+       setDirectory( path );
       return true;
     }
     else {
-      if ( QFileInfo( fi.dirPath() ).exists() ) {
-       setDir( fi.dirPath() );
+      if ( QFileInfo( fi.absoluteDir().absolutePath() ).exists() ) {
+       setDirectory( fi.absoluteDir().absolutePath() );
        return true;
       }
     }
@@ -100,7 +106,7 @@ QString VisuGUI_FileDlg::getFileName( QWidget*           parent,
 {            
   VisuGUI_FileDlg* fd = new VisuGUI_FileDlg( parent, open, showQuickDir, true );    
   if ( !caption.isEmpty() )
-    fd->setCaption( caption );
+    fd->setWindowTitle( caption );
   if ( !initial.isEmpty() ) { 
     fd->processPath( initial ); // VSR 24/03/03 check for existing of directory has been added to avoid QFileDialog's bug
   }
index e1589832312be73004190312eb84baaeeee24a01..3e2dba250a6da7ae94e2d0fd1ecd4d2f9e7be876 100644 (file)
@@ -1,27 +1,29 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VisuGUI_FileDlg.h
 //  Author : 
 //  Module : SALOME
 //  $Header: /dn05/salome/CVS/SALOME_ROOT/VISU/src/VISUGUI/VisuGUI_FileDlg.h
-
+//
 #ifndef VISU_FILEDIALOG_H
 #define VISU_FILEDIALOG_H
 
diff --git a/src/VISUGUI/VisuGUI_FileInfoDlg.cxx b/src/VISUGUI/VisuGUI_FileInfoDlg.cxx
new file mode 100644 (file)
index 0000000..8328550
--- /dev/null
@@ -0,0 +1,78 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+// VISU VISUGUI : GUI of VISU component
+// File   : VisuGUI_FileInfoDlg.cxx
+// Author : Alexandre SOLOVYOV, Open CASCADE S.A.S. ( alexander.solovyov@opencascade.com)
+// Module : VISU
+//
+#include <VisuGUI_FileInfoDlg.h>
+
+#include <MED_Common.hxx>
+
+#include <QGridLayout>
+#include <QLabel>
+#include <QLineEdit>
+
+VisuGUI_FileInfoDlg::VisuGUI_FileInfoDlg( QWidget* parent, SALOME_MED::MedFileInfo* inf )
+  : QtxDialog( parent, true, true, QtxDialog::OK )
+{
+  setWindowTitle( tr( "CAPTION" ) );
+  setSizeGripEnabled( true );
+  
+  QLineEdit* fname = new QLineEdit( mainFrame() );
+  fname->setReadOnly( true );
+  QLineEdit* fsize = new QLineEdit( mainFrame() );
+  fsize->setReadOnly( true );
+  QLineEdit* medversion = new QLineEdit( mainFrame() );
+  medversion->setReadOnly( true );
+  fname->setMinimumWidth( 300 );
+  
+  QGridLayout* lay = new QGridLayout( mainFrame() );
+  lay->setMargin( 5 ); lay->setSpacing( 5 );
+  lay->addWidget( new QLabel( tr( "FILE_NAME" ), mainFrame() ), 0, 0 );
+  lay->addWidget( fname, 0, 1 );
+  lay->addWidget( new QLabel( tr( "FILE_SIZE" ), mainFrame() ), 1, 0 );
+  lay->addWidget( fsize, 1, 1 );
+  lay->addWidget( new QLabel( tr( "MED_VERSION" ), mainFrame() ), 2, 0 );
+  lay->addWidget( medversion, 2, 1 );
+
+  fname->setText( (char*)inf->fileName );
+  fname->home( false );
+  fsize->setText( QString::number( inf->fileSize ) );
+
+  QString version;
+  if( inf->major>=0 )
+  {
+    version = QString::number( inf->major );
+    if( inf->minor>=0 )
+    {
+      version += "." + QString::number( inf->minor );
+      if( inf->release>=0 )
+        version += "." + QString::number( inf->release );
+    }
+  }
+  medversion->setText( version );
+}
+
+VisuGUI_FileInfoDlg::~VisuGUI_FileInfoDlg()
+{
+}
diff --git a/src/VISUGUI/VisuGUI_FileInfoDlg.h b/src/VISUGUI/VisuGUI_FileInfoDlg.h
new file mode 100644 (file)
index 0000000..0989973
--- /dev/null
@@ -0,0 +1,41 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+// VISU VISUGUI : GUI of VISU component
+// File   : VisuGUI_FileInfoDlg.h
+// Author : Alexandre SOLOVYOV, Open CASCADE S.A.S. ( alexander.solovyov@opencascade.com)
+//
+#ifndef VISUGUI_FILEINFODLG_H
+#define VISUGUI_FILEINFODLG_H
+
+#include <MED.hh>
+#include <QtxDialog.h>
+
+class VisuGUI_FileInfoDlg : public QtxDialog
+{
+  Q_OBJECT
+
+public:
+  VisuGUI_FileInfoDlg( QWidget*, SALOME_MED::MedFileInfo* );
+  virtual ~VisuGUI_FileInfoDlg();
+};
+
+#endif // VISUGUI_FILEINFODLG_H
diff --git a/src/VISUGUI/VisuGUI_FilterScalarsDlg.cxx b/src/VISUGUI/VisuGUI_FilterScalarsDlg.cxx
new file mode 100644 (file)
index 0000000..be17c59
--- /dev/null
@@ -0,0 +1,166 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+#include "VisuGUI_FilterScalarsDlg.h"
+#include "VISU_ColoredPrs3d_i.hh"
+#include "VISU_ColoredPrs3dHolder_i.hh"
+
+#include "VisuGUI.h"
+#include "VisuGUI_Tools.h"
+
+#include <SalomeApp_Application.h>
+#include <LightApp_SelectionMgr.h>
+
+#include <SUIT_Desktop.h>
+#include <SUIT_MessageBox.h>
+#include <SUIT_Session.h>
+#include <SUIT_ResourceMgr.h>
+
+#include <QPushButton>
+#include <QVBoxLayout>
+#include <QHBoxLayout>
+#include <QGroupBox>
+#include <QLabel>
+#include <QLineEdit>
+#include <QDoubleValidator>
+  
+
+VisuGUI_FilterScalarsDlg::VisuGUI_FilterScalarsDlg( VisuGUI* theModule )
+  : QDialog(VISU::GetDesktop(theModule), Qt::WindowTitleHint | Qt::WindowSystemMenuHint ),
+    myVisuGUI( theModule )
+{
+  setModal( false );
+  setWindowTitle(tr("TITLE"));
+  setSizeGripEnabled(true);
+  setAttribute( Qt::WA_DeleteOnClose, true );
+  
+  QVBoxLayout* aMainLayout = new QVBoxLayout(this);
+  
+  myRangeBox = new QGroupBox(this);
+  myRangeBox->setTitle(tr("BOXTITLE"));
+  myRangeBox->setCheckable(true);
+  aMainLayout->addWidget(myRangeBox);
+
+  QHBoxLayout* aBoxLayout = new QHBoxLayout(myRangeBox);
+  aBoxLayout->addWidget(new QLabel(tr("MINLBL"), myRangeBox));
+  myMinEdit = new QLineEdit( myRangeBox );
+  myMinEdit->setValidator( new QDoubleValidator(myMinEdit) );
+  aBoxLayout->addWidget(myMinEdit);
+
+  aBoxLayout->addWidget(new QLabel(tr("MAXLBL"), myRangeBox));
+  myMaxEdit = new QLineEdit( myRangeBox );
+  myMaxEdit->setValidator( new QDoubleValidator(myMaxEdit) );
+  aBoxLayout->addWidget(myMaxEdit);
+
+  QGroupBox* aGroupButtons = new QGroupBox(this);
+  QHBoxLayout* aButtonsLayout = new QHBoxLayout(aGroupButtons);
+
+  QPushButton* aBtnOk = new QPushButton(tr("BUT_OK"), aGroupButtons);
+  aBtnOk->setAutoDefault(true);
+  aBtnOk->setDefault(true);
+  aButtonsLayout->addWidget(aBtnOk);
+
+  QPushButton* aBtnCancel = new QPushButton(tr("BUT_CANCEL"), aGroupButtons);
+  aBtnCancel->setAutoDefault(true);
+  aButtonsLayout->addWidget(aBtnCancel);
+
+  aButtonsLayout->addStretch();
+
+  QPushButton* aBtnHelp = new QPushButton(tr("BUT_HELP"), aGroupButtons);
+  aBtnHelp->setAutoDefault(true);
+  aButtonsLayout->addWidget(aBtnHelp);
+
+  aMainLayout->addWidget(aGroupButtons);
+
+  connect(aBtnOk,     SIGNAL(clicked()), this, SLOT(accept()));
+  connect(aBtnCancel, SIGNAL(clicked()), this, SLOT(reject()));
+  connect(aBtnHelp,   SIGNAL(clicked()), this, SLOT(onHelp()));
+
+  SalomeApp_Application* anApp = theModule->getApp();
+  LightApp_SelectionMgr* aSelectionMgr = anApp->selectionMgr();
+  connect( aSelectionMgr, SIGNAL( currentSelectionChanged() ), this, SLOT( onSelectionEvent() ) );
+
+  onSelectionEvent();
+}
+
+
+VisuGUI_FilterScalarsDlg::~VisuGUI_FilterScalarsDlg()
+{}
+
+void VisuGUI_FilterScalarsDlg::onSelectionEvent()
+{
+  typedef SALOME::GenericObjPtr< VISU::ColoredPrs3d_i  > TColoredPrs3dPtr;
+  VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects( myVisuGUI );
+  myColoredPrs3d = TColoredPrs3dPtr();
+  if ( !aSelectionInfo.empty() ) {
+    VISU::TSelectionItem aSelectionItem = aSelectionInfo.front();
+    if ( VISU::Base_i* aBase = aSelectionItem.myObjectInfo.myBase ) {
+      if ( VISU::ColoredPrs3d_i* aColoredPrs3d = dynamic_cast< VISU::ColoredPrs3d_i* >( aBase ) ) {
+       myColoredPrs3d = aColoredPrs3d;
+      } else if (VISU::ColoredPrs3dHolder_i* aHolder = 
+                dynamic_cast< VISU::ColoredPrs3dHolder_i* >( aBase )) {
+       myColoredPrs3d = aHolder->GetPrs3dDevice();
+      }
+      if (myColoredPrs3d.get() != NULL) {
+       myRangeBox->setChecked( myColoredPrs3d->IsScalarFilterUsed() );
+       myMinEdit->setText( QString::number( myColoredPrs3d->GetScalarFilterMin() ) );
+       myMaxEdit->setText( QString::number( myColoredPrs3d->GetScalarFilterMax() ) );
+       setEnabled( true );
+       return;
+      }
+    }
+  }
+  setEnabled( false );
+  return;
+}
+
+void VisuGUI_FilterScalarsDlg::accept()
+{
+  myColoredPrs3d->SetScalarFilterRange( myMinEdit->text().toDouble(), myMaxEdit->text().toDouble() );
+  myColoredPrs3d->UseScalarFiltering( myRangeBox->isChecked() );
+  myColoredPrs3d->UpdateActors();
+  QDialog::accept();
+}
+
+void VisuGUI_FilterScalarsDlg::reject()
+{
+  QDialog::reject();
+}
+  
+void VisuGUI_FilterScalarsDlg::onHelp()
+{
+  QString aHelpFileName = "filterbyscalars_page.html";
+  LightApp_Application* app = (LightApp_Application*)(SUIT_Session::session()->activeApplication());
+  if (app)
+    app->onHelpContextModule(myVisuGUI ? app->moduleName(myVisuGUI->moduleName()) : QString(""), aHelpFileName);
+  else {
+    QString platform;
+#ifdef WIN32
+    platform = "winapplication";
+#else
+    platform = "application";
+#endif
+    SUIT_MessageBox::warning(0, tr("WRN_WARNING"),
+                             tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                             arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
+                             tr("BUT_OK"));
+  }
+}
diff --git a/src/VISUGUI/VisuGUI_FilterScalarsDlg.h b/src/VISUGUI/VisuGUI_FilterScalarsDlg.h
new file mode 100644 (file)
index 0000000..2e26203
--- /dev/null
@@ -0,0 +1,73 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
+//  File   : VisuGUI_FilterScalarsDlg.h
+//  Author : vsv
+//  Module : VISU
+//
+#ifndef VISUGUI_FILTERSCALARSDLG_H
+#define VISUGUI_FILTERSCALARSDLG_H
+
+#include <QDialog>
+
+#include "SALOME_GenericObjPointer.hh"
+
+class VisuGUI;
+
+class QLineEdit;
+class QGroupBox;
+
+namespace VISU
+{
+  class ColoredPrs3d_i;
+}
+
+
+class VisuGUI_FilterScalarsDlg: public QDialog
+{
+  Q_OBJECT;
+
+ public:
+  VisuGUI_FilterScalarsDlg( VisuGUI* theModule );
+  ~VisuGUI_FilterScalarsDlg();
+
+protected slots:
+
+  virtual void accept();
+  virtual void reject(); 
+
+private slots:
+
+  void onHelp();
+  void onSelectionEvent();
+
+private:
+  VisuGUI* myVisuGUI;
+  SALOME::GenericObjPtr< VISU::ColoredPrs3d_i > myColoredPrs3d;
+
+  QGroupBox* myRangeBox;
+  QLineEdit* myMinEdit;
+  QLineEdit* myMaxEdit;
+};
+
+
+#endif
diff --git a/src/VISUGUI/VisuGUI_FindPane.cxx b/src/VISUGUI/VisuGUI_FindPane.cxx
new file mode 100644 (file)
index 0000000..e6c279f
--- /dev/null
@@ -0,0 +1,368 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
+//  File   : VisuGUI_FindPane.cxx
+//  Author : Oleg Uvarov
+//  Module : VISU
+//
+#include "VisuGUI_FindPane.h"
+#include "VisuGUI_Tools.h"
+
+#include "VISU_Actor.h"
+#include "VISU_Event.h"
+#include "VISU_GaussPtsAct.h"
+
+#include "VISU_IDMapper.hxx"
+#include "VISU_GaussPointsPL.hxx"
+#include "VISU_ConvertorUtils.hxx"
+
+#include "SUIT_MessageBox.h"
+#include "SUIT_ResourceMgr.h"
+
+#include <QComboBox>
+#include <QLabel>
+#include <QLayout>
+#include <QListWidget>
+#include <QLineEdit>
+#include <QToolButton>
+
+#include <vtkCellData.h>
+#include <vtkDataArray.h>
+#include <vtkDataSet.h>
+#include <vtkMapper.h>
+#include <vtkPointData.h>
+
+#define PAGE_SIZE 10
+
+VisuGUI_FindPane::VisuGUI_FindPane( QWidget* theParent ) :
+  QGroupBox( theParent ),
+  myCurrentPage( 0 ),
+  mySelectionMode( -1 ),
+  myActor( 0 )
+{
+  setTitle( tr( "FIND_TITLE" ) );
+
+  QGridLayout* aTopLayout = new QGridLayout( this );
+
+  QLabel* aConditionLabel = new QLabel( tr( "CONDITION" ), this );
+
+  myConditionBox = new QComboBox( this );
+  myConditionBox->addItems( QStringList()
+                           << tr( "MINIMUM" )
+                           << tr( "MAXIMUM" )
+                           << "="
+                           << "<="
+                           << ">="
+                           << tr( "BETWEEN" ) );
+
+  connect( myConditionBox, SIGNAL( currentIndexChanged( int ) ), this, SLOT( onConditionChanged( int ) ) );
+
+  QDoubleValidator* aDoubleValidator = new QDoubleValidator( this );
+
+  myLeftValue = new QLineEdit( this );
+  myLeftValue->setValidator( aDoubleValidator );
+
+  myDashLabel = new QLabel( "-", this );
+
+  myRightValue = new QLineEdit( this );
+  myRightValue->setValidator( aDoubleValidator );
+
+  QToolButton* anApplyBtn = new QToolButton( this );
+  anApplyBtn->setIcon( VISU::GetResourceMgr()->loadPixmap( "VISU", tr( "ICON_APPLY" ) ) );
+  connect( anApplyBtn, SIGNAL( clicked() ), this, SLOT( onApply() ) );
+
+
+  QWidget* anIdsWidget = new QWidget( this );
+  QGridLayout* anIdsLayout = new QGridLayout( anIdsWidget );
+  anIdsLayout->setMargin( 0 );
+
+  myIdsListWidget = new QListWidget( anIdsWidget );
+  myIdsListWidget->setFlow( QListView::LeftToRight );
+  myIdsListWidget->setHorizontalScrollBarPolicy( Qt::ScrollBarAlwaysOn );
+  myIdsListWidget->setFixedHeight( 45 );
+
+  connect( myIdsListWidget, SIGNAL( itemSelectionChanged() ), this, SLOT( onIdChanged() ) );
+
+  myPageLabel = new QLabel( anIdsWidget );
+  myPageLabel->setAlignment( Qt::AlignHCenter );
+
+  myPrevBtn = new QToolButton( anIdsWidget );
+  myPrevBtn->setIcon( VISU::GetResourceMgr()->loadPixmap( "VISU", tr( "ICON_SLIDER_PREVIOUS" ) ) );
+  connect( myPrevBtn, SIGNAL( clicked() ), this, SLOT( onPrevPage() ) );
+
+  myNextBtn = new QToolButton( anIdsWidget );
+  myNextBtn->setIcon( VISU::GetResourceMgr()->loadPixmap( "VISU", tr( "ICON_SLIDER_NEXT" ) ) );
+  connect( myNextBtn, SIGNAL( clicked() ), this, SLOT( onNextPage() ) );
+
+  anIdsLayout->addWidget( myIdsListWidget, 0, 0, 2, 1 );
+  anIdsLayout->addWidget( myPageLabel,     0, 1, 1, 2 );
+  anIdsLayout->addWidget( myPrevBtn,       1, 1 );
+  anIdsLayout->addWidget( myNextBtn,       1, 2 );
+
+
+  aTopLayout->addWidget( aConditionLabel, 0, 0, 1, 5 );
+  aTopLayout->addWidget( myConditionBox,  1, 0 );
+  aTopLayout->addWidget( myLeftValue,     1, 1 );
+  aTopLayout->addWidget( myDashLabel,     1, 2 );
+  aTopLayout->addWidget( myRightValue,    1, 3 );
+  aTopLayout->addWidget( anApplyBtn,      1, 4 );
+  aTopLayout->addWidget( anIdsWidget,     2, 0, 1, 5 );
+
+  onConditionChanged( 0 );
+
+  setSelectionMode( ActorSelection );
+}
+
+VisuGUI_FindPane::~VisuGUI_FindPane()
+{
+}
+
+void VisuGUI_FindPane::setSelectionMode( const Selection_Mode theSelectionMode )
+{
+  if( mySelectionMode != theSelectionMode )
+    clearIds();
+
+  mySelectionMode = theSelectionMode;
+  setEnabled( mySelectionMode != ActorSelection );
+}
+
+
+void VisuGUI_FindPane::setActor( VISU_Actor* theActor )
+{
+  if( myActor != theActor )
+    clearIds();
+
+  myActor = theActor;
+}
+
+void VisuGUI_FindPane::onConditionChanged( int theId )
+{
+  myLeftValue->setEnabled( theId >= 2 );
+  myDashLabel->setEnabled( theId == 5 );
+  myRightValue->setEnabled( theId == 5 );
+}
+
+void VisuGUI_FindPane::onApply()
+{
+  if( !isValid() )
+  {
+    SUIT_MessageBox::warning( this, tr( "WRN_VISU" ), tr( "INCORRECT_VALUES" ) );
+    return;
+  }
+
+  myIdsListWidget->clear();
+
+  if( !myActor )
+    return;
+
+  vtkDataSet* aDataSet = myActor->GetInput();
+
+  vtkDataArray* aScalars = 0;
+  if( mySelectionMode == NodeSelection )
+    aScalars = aDataSet->GetPointData()->GetScalars();
+  else if( mySelectionMode == CellSelection )
+    aScalars = aDataSet->GetCellData()->GetScalars();
+  else if( mySelectionMode == GaussPointSelection )
+  {
+    if( VISU_GaussPtsAct* aGaussPtsAct = dynamic_cast<VISU_GaussPtsAct*>( myActor ) )
+      aScalars = aGaussPtsAct->GetInput()->GetPointData()->GetScalars();
+  }
+
+
+  if( !aScalars )
+    return;
+
+  int aCondition = myConditionBox->currentIndex();
+  double aLeftValue = myLeftValue->text().toDouble();
+  double aRightValue = myRightValue->text().toDouble();
+
+  myIdsList.clear();
+
+  double eps = 1.0 / VTK_LARGE_FLOAT;
+
+  double anExtremum = 0;
+  if( aCondition == 0 )
+    anExtremum = VTK_LARGE_FLOAT;
+  else if( aCondition == 1 )
+    anExtremum = -VTK_LARGE_FLOAT;
+
+  for( int aVTKId = 0, aNbVal = aScalars->GetNumberOfTuples(); aVTKId < aNbVal; aVTKId++ )
+  {
+    double aValue = *aScalars->GetTuple( aVTKId );
+
+    TFindId anId( -1, -1 );
+    if( mySelectionMode == NodeSelection )
+      anId.first = VISU::GetNodeObjID( aDataSet, aVTKId );
+    else if( mySelectionMode == CellSelection )
+      anId.first = VISU::GetElemObjID( aDataSet, aVTKId );
+    else if( mySelectionMode == GaussPointSelection )
+    {
+      if( VISU_GaussPtsAct* aGaussPtsAct = dynamic_cast<VISU_GaussPtsAct*>( myActor ) )
+      {
+       VISU::TGaussPointID aGaussPointID = aGaussPtsAct->GetGaussPointsPL()->GetObjID( aVTKId );
+       anId.first = aGaussPointID.first;
+       anId.second = aGaussPointID.second;
+      }
+    }
+    //printf( "(%d) <%d - %d> %f\n", aVTKId, anId.first, anId.second, aValue );
+
+    if( anId.first < 0 ||
+       anId.second < 0 && mySelectionMode == GaussPointSelection )
+      continue;
+
+    bool ok = false;
+    switch( aCondition )
+    {
+    case 0: // Minimum
+      ok = ( aValue - anExtremum ) < eps;
+      break;
+    case 1: // Maximum
+      ok = ( aValue - anExtremum ) > -eps;
+      break;
+    case 2: // =
+      ok = fabs( aValue - aLeftValue ) < eps;
+      break;
+    case 3: // <=
+      ok = ( aValue - aLeftValue ) < eps;
+      break;
+    case 4: // >=
+      ok = ( aValue - aLeftValue ) > -eps;
+      break;
+    case 5: // Between
+      ok = ( aValue - aLeftValue ) > -eps && ( aValue - aRightValue ) < eps;
+      break;
+    default:
+      ok = true;
+      break;
+    }
+
+    if( ok )
+    {
+      if( aCondition <= 1 && fabs( aValue - anExtremum ) > eps )
+      {
+       anExtremum = aValue;
+       myIdsList.clear();
+      }
+      if( !myIdsList.contains( anId ) )
+        myIdsList.append( anId );
+    }
+  }
+
+  qSort( myIdsList );
+
+  myCurrentPage = 0;
+  displayIds();
+}
+
+void VisuGUI_FindPane::onIdChanged()
+{
+  int aFirstId = -1, aSecondId = -1;
+
+  QList<QListWidgetItem*> aSelectedItems = myIdsListWidget->selectedItems();
+  if( aSelectedItems.size() == 1 )
+  {
+    QString aStr = aSelectedItems.first()->text();
+
+    bool ok = false;
+    aFirstId = aStr.toInt( &ok );
+    if( !ok ) // try to parse the string as a pair of ids - "[aFirstId aSecondId]"
+    {
+      aStr.remove( '[' );
+      aStr.remove( ']' );
+      aFirstId = aStr.section( ' ', 0, 0 ).toInt( &ok );
+      if( !ok )
+       aFirstId = -1;
+      else
+      {
+       ok = false;
+       aSecondId = aStr.section( ' ', 1, 1 ).toInt( &ok );
+       if( !ok )
+         aSecondId = -1;
+      }
+    }
+  }
+
+  emit idChanged( aFirstId, aSecondId );
+}
+
+void VisuGUI_FindPane::onPrevPage()
+{
+  myCurrentPage--;
+  displayIds();
+}
+
+void VisuGUI_FindPane::onNextPage()
+{
+  myCurrentPage++;
+  displayIds();
+}
+
+bool VisuGUI_FindPane::isValid() const
+{
+  bool ok = false;;
+  double aLeftValue = myLeftValue->text().toDouble( &ok );
+  if( myLeftValue->isEnabled() && !ok )
+    return false;
+
+  ok = false;
+  double aRightValue = myRightValue->text().toDouble( &ok );
+  if( myRightValue->isEnabled() && ( !ok || aRightValue < aLeftValue ) )
+    return false;
+
+  return true;
+}
+
+void VisuGUI_FindPane::clearIds()
+{
+  myIdsList.clear();
+  myCurrentPage = 0;
+
+  displayIds();
+}
+
+void VisuGUI_FindPane::displayIds()
+{
+  myIdsListWidget->clear();
+
+  int aSize = myIdsList.size();
+
+  myPrevBtn->setEnabled( myCurrentPage != 0 );
+  myNextBtn->setEnabled( ( myCurrentPage + 1 ) * PAGE_SIZE < aSize );
+  myPageLabel->setText( QString( "Page %1/%2" )
+                       .arg( aSize > 0 ? myCurrentPage + 1 : 0 )
+                       .arg( aSize > 0 ? ( aSize - 1 ) / PAGE_SIZE + 1 : 0 ) );
+
+  int aFirstIndex = myCurrentPage * PAGE_SIZE;
+  int aLastIndex = aFirstIndex + PAGE_SIZE - 1;
+  if( aLastIndex >= aSize )
+    aLastIndex = aSize - 1;
+
+  for( int anIndex = aFirstIndex; anIndex <= aLastIndex; anIndex++ )
+  {
+    TFindId anId = myIdsList[ anIndex ];
+    int aFirstId = anId.first, aSecondId = anId.second;
+    QString aStr = aSecondId < 0 ?
+      QString( "%1" ).arg( aFirstId ) :
+      QString( "[%1 %2]" ).arg( aFirstId ).arg( aSecondId );
+    myIdsListWidget->addItem( aStr );
+  }
+}
diff --git a/src/VISUGUI/VisuGUI_FindPane.h b/src/VISUGUI/VisuGUI_FindPane.h
new file mode 100644 (file)
index 0000000..40d374a
--- /dev/null
@@ -0,0 +1,95 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
+//  File   : VisuGUI_FindPane.h
+//  Author : Oleg Uvarov
+//  Module : VISU
+//
+#ifndef VISUGUI_FINDPANE_H
+#define VISUGUI_FINDPANE_H
+
+#include <SVTK_Selection.h>
+
+#include <QGroupBox>
+
+class QComboBox;
+class QLabel;
+class QLineEdit;
+class QListWidget;
+class QToolButton;
+
+class VISU_Actor;
+
+typedef QPair<int,int> TFindId;
+typedef QList<TFindId> TListFindId;
+
+//! Find pane.
+/*!
+ * Used for filter and highlight mesh-elements by their scalar values.
+ */
+class VisuGUI_FindPane : public QGroupBox
+{
+  Q_OBJECT
+
+public:
+  VisuGUI_FindPane( QWidget* theParent );
+  ~VisuGUI_FindPane();
+
+public:
+  void             setSelectionMode( const Selection_Mode );
+  void             setActor( VISU_Actor* );
+
+protected slots:
+  void             onConditionChanged( int );
+  void             onApply();
+
+  void             onIdChanged();
+  void             onPrevPage();
+  void             onNextPage();
+
+private:
+  bool             isValid() const;
+  void             clearIds();
+  void             displayIds();
+
+signals:
+  void             idChanged( int, int );
+
+private:
+  QComboBox*       myConditionBox;
+  QLineEdit*       myLeftValue;
+  QLabel*          myDashLabel;
+  QLineEdit*       myRightValue;
+
+  QListWidget*     myIdsListWidget;
+  QLabel*          myPageLabel;
+  QToolButton*     myPrevBtn;
+  QToolButton*     myNextBtn;
+
+  int              myCurrentPage;
+  TListFindId      myIdsList;
+
+  Selection_Mode   mySelectionMode;
+  VISU_Actor*      myActor;
+};
+
+#endif
index 5c8ca103a42f573977f65954f080732428f68075..fd3bf17039a144bbefb638f8a2371bf4c5542049 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_GaussPointsDlg.cxx
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #include "VisuGUI_GaussPointsDlg.h"
 
 #include "VISUConfig.hh"
@@ -34,6 +33,7 @@
 
 #include "VISU_ColoredPrs3dFactory.hh"
 #include "VISU_GaussPoints_i.hh"
+#include "VISU_Prs3dUtils.hh"
 #include "VISU_GaussPointsPL.hxx"
 #include "VISU_OpenGLPointSpriteMapper.hxx"
 #include "VISU_Convertor.hxx"
 
 #include "LightApp_Application.h"
 #include "SalomeApp_Module.h"
+#include "LightApp_SelectionMgr.h"
 #include "SUIT_Desktop.h"
 #include "SUIT_ResourceMgr.h"
 #include "SUIT_Session.h"
 #include "SUIT_MessageBox.h"
 #include "SVTK_FontWidget.h"
 
-#include "QtxDblSpinBox.h"
-
-#include <qlayout.h>
-#include <qtabwidget.h>
-#include <qbuttongroup.h>
-#include <qradiobutton.h>
-#include <qfiledialog.h>
-#include <qvalidator.h>
-#include <qcolordialog.h>
-#include <qgroupbox.h>
-#include <qcheckbox.h>
-#include <qlabel.h>
-#include <qpushbutton.h>
-#include <qlineedit.h>
-#include <qspinbox.h>
-#include <qcombobox.h>
-#include <qtoolbutton.h>
-#include <qtabwidget.h>
+#include "QtxDoubleSpinBox.h"
+
+#include <QLayout>
+#include <QTabWidget>
+#include <QButtonGroup>
+#include <QRadioButton>
+#include <QFileDialog>
+#include <QValidator>
+#include <QColorDialog>
+#include <QGroupBox>
+#include <QCheckBox>
+#include <QLabel>
+#include <QPushButton>
+#include <QLineEdit>
+#include <QSpinBox>
+#include <QComboBox>
+#include <QToolButton>
+#include <QTabWidget>
+#include <QKeyEvent>
 
 #include <vtkPolyData.h>
 #include <vtkDataSet.h>
 using namespace std;
 
 VisuGUI_GaussScalarBarPane::VisuGUI_GaussScalarBarPane (QWidget * parent):
-  QVBox(parent)
+  QWidget(parent)
 {
-  myVerX = 0.01;  myVerY = 0.10;  myVerW = 0.10;  myVerH = 0.80;
-  myHorX = 0.20;  myHorY = 0.01;  myHorW = 0.60;  myHorH = 0.12;
-  myVerTW = myVerTH = myVerLW = myVerLH = myVerBW = myVerBH = 0;
-  myHorTW = myHorTH = myHorLW = myHorLH = myHorBW = myHorBH = 0;
+  myVerX = 0.01;  myVerY = 0.10;  myVerW = 0.08;  myVerH = 0.80;
+  myHorX = 0.10;  myHorY = 0.01;  myHorW = 0.80;  myHorH = 0.08;
+  myVerTS = myVerLS = myVerBW = myVerBH = 0;
+  myHorTS = myHorLS = myHorBW = myHorBH = 0;
   Imin = 0.0; Imax = 0.0;
   myRangeMode = -1;
 
-  setSpacing(6);
+  QVBoxLayout* aMainLayout = new QVBoxLayout( this );
+  aMainLayout->setSpacing(6);
   //setMargin(11);
 
   // Active bar ========================================================
-  QGroupBox* ActiveBarGroup = new QGroupBox (tr("ACTIVE_BAR_GRP"), this, "ActiveBarGroup");
-  ActiveBarGroup->setColumnLayout(0, Qt::Vertical );
-  ActiveBarGroup->layout()->setSpacing( 0 );
-  ActiveBarGroup->layout()->setMargin( 0 );
-  QGridLayout* ActiveBarGroupLayout = new QGridLayout( ActiveBarGroup->layout() );
+  QGroupBox* ActiveBarGroup = new QGroupBox (tr("ACTIVE_BAR_GRP"), this );
+  aMainLayout->addWidget(ActiveBarGroup);
+  //ActiveBarGroup->setColumnLayout(0, Qt::Vertical );
+  //ActiveBarGroup->layout()->setSpacing( 0 );
+  //ActiveBarGroup->layout()->setMargin( 0 );
+  QGridLayout* ActiveBarGroupLayout = new QGridLayout( ActiveBarGroup );
   ActiveBarGroupLayout->setAlignment( Qt::AlignTop );
   ActiveBarGroupLayout->setSpacing( 6 );
   ActiveBarGroupLayout->setMargin( 11 );
 
-  QButtonGroup* BarTypeGroup = new QButtonGroup( 2, Qt::Vertical, ActiveBarGroup, "BarTypeGroup" );
-  BarTypeGroup->setRadioButtonExclusive( true );
-  BarTypeGroup->setFrameStyle( QFrame::NoFrame );
-  BarTypeGroup->layout()->setMargin( 0 );
+  QButtonGroup* BarTypeGroup = new QButtonGroup( ActiveBarGroup );
+  QGroupBox* aGB = new QGroupBox( ActiveBarGroup );
+  QVBoxLayout* aVBLay = new QVBoxLayout( aGB );
+  
+  BarTypeGroup->setExclusive( true );
+  //aGB->setFrameStyle( QFrame::NoFrame );
+  aVBLay->setMargin( 0 );
+
+  myRBLocal = new QRadioButton( tr( "LOCAL" ), aGB );
+  myRBGlobal = new QRadioButton( tr( "GLOBAL" ), aGB );
+  aVBLay->addWidget( myRBLocal );
+  aVBLay->addWidget( myRBGlobal );
 
-  myRBLocal = new QRadioButton( tr( "LOCAL" ), BarTypeGroup );
-  myRBGlobal = new QRadioButton( tr( "GLOBAL" ), BarTypeGroup );
+  BarTypeGroup->addButton( myRBLocal );
+  BarTypeGroup->addButton( myRBGlobal );
 
   myCBDisplayed = new QCheckBox( tr( "DISPLAYED" ), ActiveBarGroup );
 
-  ActiveBarGroupLayout->addMultiCellWidget( BarTypeGroup, 0, 1, 0, 0 );
+  ActiveBarGroupLayout->addWidget( aGB, 0, 0, 2, 1 );
   ActiveBarGroupLayout->addWidget( myCBDisplayed, 1, 1 );
 
   // Range ============================================================
-  RangeGroup = new QButtonGroup (tr("SCALAR_RANGE_GRP"), this, "RangeGroup");
-  RangeGroup->setColumnLayout(0, Qt::Vertical );
-  RangeGroup->layout()->setSpacing( 0 );
-  RangeGroup->layout()->setMargin( 0 );
-  QGridLayout* RangeGroupLayout = new QGridLayout( RangeGroup->layout() );
+  RangeGroup = new QButtonGroup ( this );
+  aGB = new QGroupBox( tr("SCALAR_RANGE_GRP"), this );
+  aMainLayout->addWidget(aGB);
+
+  QGridLayout* RangeGroupLayout = new QGridLayout( aGB );
   RangeGroupLayout->setAlignment( Qt::AlignTop );
   RangeGroupLayout->setSpacing( 6 );
   RangeGroupLayout->setMargin( 11 );
 
-  myModeLbl = new QLabel("Scalar Mode", RangeGroup);
-
-  myModeCombo = new QComboBox(RangeGroup);
+  myModeLbl = new QLabel("Scalar Mode", aGB);
 
-  RangeGroupLayout->addWidget( myModeLbl, 0, 0 );
-  RangeGroupLayout->addWidget( myModeCombo, 0, 1 );
+  myModeCombo = new QComboBox(aGB);
 
-  RBFieldRange = new QRadioButton (tr("FIELD_RANGE_BTN"), RangeGroup, "RBFieldRange");
-  RBImposedRange = new QRadioButton (tr("IMPOSED_RANGE_BTN"), RangeGroup, "RBImposedRange");
+  RBFieldRange = new QRadioButton (tr("FIELD_RANGE_BTN"), aGB);
+  RBImposedRange = new QRadioButton (tr("IMPOSED_RANGE_BTN"), aGB);
   RBFieldRange->setChecked( true );
+  RangeGroup->addButton( RBFieldRange );
+  RangeGroup->addButton( RBImposedRange );
 
-  MinEdit = new QLineEdit( RangeGroup, "MinEdit" );
+  MinEdit = new QLineEdit( aGB );
   MinEdit->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   MinEdit->setMinimumWidth( 70 );
   MinEdit->setValidator( new QDoubleValidator(this) );
   MinEdit->setText( "0.0" );
-  QLabel* MinLabel = new QLabel (tr("LBL_MIN"), RangeGroup, "MinLabel");
+  QLabel* MinLabel = new QLabel (tr("LBL_MIN"), aGB);
   MinLabel->setBuddy(MinEdit);
 
-  MaxEdit = new QLineEdit( RangeGroup, "MaxEdit" );
+  MaxEdit = new QLineEdit( aGB );
   MaxEdit->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   MaxEdit->setMinimumWidth( 70 );
   MaxEdit->setValidator( new QDoubleValidator(this) );
   MaxEdit->setText( "0.0" );
-  QLabel* MaxLabel = new QLabel (tr("LBL_MAX"), RangeGroup, "MaxLabel");
+  QLabel* MaxLabel = new QLabel (tr("LBL_MAX"), aGB);
   MaxLabel->setBuddy(MaxEdit);
 
-  RangeGroupLayout->addWidget( myModeLbl, 0, 0 );
-  RangeGroupLayout->addMultiCellWidget( myModeCombo, 0, 0, 1, 3);
-  RangeGroupLayout->addMultiCellWidget( RBFieldRange, 1, 1, 0, 1);
-  RangeGroupLayout->addMultiCellWidget( RBImposedRange, 1, 1, 2, 3);
-  RangeGroupLayout->addWidget( MinLabel, 2, 0 );
-  RangeGroupLayout->addWidget( MinEdit,  2, 1 );
-  RangeGroupLayout->addWidget( MaxLabel, 2, 2 );
-  RangeGroupLayout->addWidget( MaxEdit,  2, 3 );
+  RangeGroupLayout->addWidget( myModeLbl,      0, 0 );
+  RangeGroupLayout->addWidget( myModeCombo,    0, 1, 1, 3);
+  RangeGroupLayout->addWidget( RBFieldRange,   1, 0, 1, 2);
+  RangeGroupLayout->addWidget( RBImposedRange, 1, 2, 1, 2);
+  RangeGroupLayout->addWidget( MinLabel,       2, 0 );
+  RangeGroupLayout->addWidget( MinEdit,        2, 1 );
+  RangeGroupLayout->addWidget( MaxLabel,       2, 2 );
+  RangeGroupLayout->addWidget( MaxEdit,        2, 3 );
 
   // Colors and Labels ========================================================
-  QGroupBox* ColLabGroup = new QGroupBox (tr("COLORS_LABELS_GRP"), this, "ColLabGroup");
-  ColLabGroup->setColumnLayout(0, Qt::Vertical );
-  ColLabGroup->layout()->setSpacing( 0 );
-  ColLabGroup->layout()->setMargin( 0 );
-  QGridLayout* ColLabGroupLayout = new QGridLayout( ColLabGroup->layout() );
+  QGroupBox* ColLabGroup = new QGroupBox (tr("COLORS_LABELS_GRP"), this );
+  aMainLayout->addWidget(ColLabGroup);
+  //ColLabGroup->setColumnLayout(0, Qt::Vertical );
+  //ColLabGroup->layout()->setSpacing( 0 );
+  //ColLabGroup->layout()->setMargin( 0 );
+  QGridLayout* ColLabGroupLayout = new QGridLayout( ColLabGroup );
   ColLabGroupLayout->setAlignment( Qt::AlignTop );
   ColLabGroupLayout->setSpacing( 6 );
   ColLabGroupLayout->setMargin( 11 );
 
-  QButtonGroup* TypeGroup = new QButtonGroup( 2, Qt::Vertical, ColLabGroup, "TypeGroup" );
-  TypeGroup->setRadioButtonExclusive( true );
-  TypeGroup->setFrameStyle( QFrame::NoFrame );
-  TypeGroup->layout()->setMargin( 0 );
-
-  BicolorButton = new QRadioButton( tr( "BICOLOR" ), TypeGroup );
-  RainbowButton = new QRadioButton( tr( "RAINBOW" ), TypeGroup );
-
-  ColorLabel = new QLabel (tr("LBL_NB_COLORS"), ColLabGroup, "ColorLabel");
-  ColorSpin = new QSpinBox( 2, 256, 1, ColLabGroup );
+  QButtonGroup* TypeGroup = new QButtonGroup( ColLabGroup );
+  aGB = new QGroupBox ( ColLabGroup );
+  aVBLay = new QVBoxLayout( aGB );
+  TypeGroup->setExclusive( true );
+  //aGB->setFrameStyle( QFrame::NoFrame );
+  aVBLay->setMargin( 0 );
+
+  BicolorButton = new QRadioButton( tr( "BICOLOR" ), aGB );
+  aVBLay->addWidget( BicolorButton );
+  TypeGroup->addButton( BicolorButton );
+  RainbowButton = new QRadioButton( tr( "RAINBOW" ), aGB );
+  aVBLay->addWidget( RainbowButton );
+  TypeGroup->addButton( RainbowButton );
+
+  ColorLabel = new QLabel (tr("LBL_NB_COLORS"), ColLabGroup );
+  ColorSpin = new QSpinBox( ColLabGroup );
+  ColorSpin->setMinimum( 2 );
+  ColorSpin->setMaximum( 256 );
+  ColorSpin->setSingleStep( 1 );
   ColorSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   ColorSpin->setMinimumWidth( 70 );
   ColorSpin->setValue( 64 );
 
-  LabelLabel = new QLabel (tr("LBL_NB_LABELS"), ColLabGroup, "LabelLabel");
-  LabelSpin = new QSpinBox( 2, 65, 1, ColLabGroup );
+  LabelLabel = new QLabel (tr("LBL_NB_LABELS"), ColLabGroup);
+  LabelSpin = new QSpinBox( ColLabGroup );
+  LabelSpin->setMinimum( 2 );
+  LabelSpin->setMaximum( 65 );
+  LabelSpin->setSingleStep( 1 );
   LabelSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   LabelSpin->setMinimumWidth( 70 );
   LabelSpin->setValue( 5 );
 
-  ColLabGroupLayout->addMultiCellWidget( TypeGroup, 0, 1, 0, 0);
+  ColLabGroupLayout->addWidget( aGB, 0, 0, 2, 1);
   ColLabGroupLayout->addWidget( ColorLabel, 1, 1);
   ColLabGroupLayout->addWidget( ColorSpin,  1, 2);
   ColLabGroupLayout->addWidget( LabelLabel, 1, 3);
@@ -195,41 +219,47 @@ VisuGUI_GaussScalarBarPane::VisuGUI_GaussScalarBarPane (QWidget * parent):
   //TopLayout->addWidget( ColLabGroup );
 
   // Orientation ==========================================================
-  QButtonGroup* OrientGroup = new QButtonGroup (tr("ORIENTATION_GRP"), this, "OrientGroup");
-  OrientGroup->setColumnLayout(0, Qt::Vertical );
-  OrientGroup->layout()->setSpacing( 0 );
-  OrientGroup->layout()->setMargin( 0 );
-  QGridLayout* OrientGroupLayout = new QGridLayout( OrientGroup->layout() );
+  QButtonGroup* OrientGroup = new QButtonGroup ( this );
+  aGB = new QGroupBox( tr("ORIENTATION_GRP"), this  );
+  aMainLayout->addWidget(aGB);
+  //OrientGroup->setColumnLayout(0, Qt::Vertical );
+  //OrientGroup->layout()->setSpacing( 0 );
+  //OrientGroup->layout()->setMargin( 0 );
+  QGridLayout* OrientGroupLayout = new QGridLayout( aGB );
   OrientGroupLayout->setAlignment( Qt::AlignTop );
   OrientGroupLayout->setSpacing( 6 );
   OrientGroupLayout->setMargin( 11 );
 
-  RBvert = new QRadioButton (tr("VERTICAL_BTN"), OrientGroup, "RBvert");
+  RBvert = new QRadioButton (tr("VERTICAL_BTN"), aGB );
   RBvert->setChecked( true );
-  RBhori = new QRadioButton (tr("HORIZONTAL_BTN"), OrientGroup, "RBhori");
+  OrientGroup->addButton( RBvert );
+  RBhori = new QRadioButton (tr("HORIZONTAL_BTN"), aGB);
+  OrientGroup->addButton( RBhori
+                          );
   OrientGroupLayout->addWidget( RBvert, 0, 0 );
   OrientGroupLayout->addWidget( RBhori, 0, 1 );
 
   //  TopLayout->addWidget( OrientGroup );
 
   // Origin ===============================================================
-  QGroupBox* OriginGroup = new QGroupBox (tr("ORIGIN_GRP"), this, "OriginGroup");
-  OriginGroup->setColumnLayout(0, Qt::Vertical );
-  OriginGroup->layout()->setSpacing( 0 );
-  OriginGroup->layout()->setMargin( 0 );
-  QGridLayout* OriginGroupLayout = new QGridLayout( OriginGroup->layout() );
+  QGroupBox* OriginGroup = new QGroupBox (tr("ORIGIN_GRP"), this );
+  aMainLayout->addWidget( OriginGroup );
+  //OriginGroup->setColumnLayout(0, Qt::Vertical );
+  //OriginGroup->layout()->setSpacing( 0 );
+  //OriginGroup->layout()->setMargin( 0 );
+  QGridLayout* OriginGroupLayout = new QGridLayout( OriginGroup );
   OriginGroupLayout->setAlignment( Qt::AlignTop );
   OriginGroupLayout->setSpacing( 6 );
   OriginGroupLayout->setMargin( 11 );
 
-  QLabel* XLabel = new QLabel (tr("LBL_X"), OriginGroup, "XLabel");
-  XSpin = new QtxDblSpinBox( 0.0, 1.0, 0.1, OriginGroup );
+  QLabel* XLabel = new QLabel (tr("LBL_X"), OriginGroup );
+  XSpin = new QtxDoubleSpinBox( 0.0, 1.0, 0.1, OriginGroup );
   XSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   XSpin->setMinimumWidth( 70 );
   XSpin->setValue( 0.01 );
 
-  QLabel* YLabel = new QLabel (tr("LBL_Y"), OriginGroup, "YLabel");
-  YSpin = new QtxDblSpinBox( 0.0, 1.0, 0.1, OriginGroup );
+  QLabel* YLabel = new QLabel (tr("LBL_Y"), OriginGroup );
+  YSpin = new QtxDoubleSpinBox( 0.0, 1.0, 0.1, OriginGroup );
   YSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   YSpin->setMinimumWidth( 70 );
   YSpin->setValue( 0.01 );
@@ -242,29 +272,30 @@ VisuGUI_GaussScalarBarPane::VisuGUI_GaussScalarBarPane (QWidget * parent):
   //TopLayout->addWidget( OriginGroup );
 
   // Dimensions =========================================================
-  QGroupBox* DimGroup = new QGroupBox (tr("DIMENSIONS_GRP"), this, "DimGroup");
-  DimGroup->setColumnLayout(0, Qt::Vertical );
-  DimGroup->layout()->setSpacing( 0 );
-  DimGroup->layout()->setMargin( 0 );
-  QGridLayout* DimGroupLayout = new QGridLayout( DimGroup->layout() );
+  QGroupBox* DimGroup = new QGroupBox (tr("DIMENSIONS_GRP"), this );
+  aMainLayout->addWidget( DimGroup );
+  //DimGroup->setColumnLayout(0, Qt::Vertical );
+  //DimGroup->layout()->setSpacing( 0 );
+  //DimGroup->layout()->setMargin( 0 );
+  QGridLayout* DimGroupLayout = new QGridLayout( DimGroup );
   DimGroupLayout->setAlignment( Qt::AlignTop );
   DimGroupLayout->setSpacing( 6 );
   DimGroupLayout->setMargin( 11 );
 
-  QLabel* WidthLabel = new QLabel (tr("LBL_WIDTH"), DimGroup, "WidthLabel");
-  WidthSpin = new QtxDblSpinBox( 0.0, 1.0, 0.1, DimGroup );
+  QLabel* WidthLabel = new QLabel (tr("LBL_WIDTH"), DimGroup );
+  WidthSpin = new QtxDoubleSpinBox( 0.0, 1.0, 0.1, DimGroup );
   WidthSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   WidthSpin->setMinimumWidth( 70 );
   WidthSpin->setValue( 0.1 );
 
-  QLabel* HeightLabel = new QLabel (tr("LBL_HEIGHT"), DimGroup, "HeightLabel");
-  HeightSpin = new QtxDblSpinBox( 0.0, 1.0, 0.1, DimGroup );
+  QLabel* HeightLabel = new QLabel (tr("LBL_HEIGHT"), DimGroup );
+  HeightSpin = new QtxDoubleSpinBox( 0.0, 1.0, 0.1, DimGroup );
   HeightSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   HeightSpin->setMinimumWidth( 70 );
   HeightSpin->setValue( 0.8 );
 
-  QLabel* SpacingLabel = new QLabel (tr("LBL_SPACING"), DimGroup, "SpacingLabel");
-  SpacingSpin = new QtxDblSpinBox( 0.0, 1.0, 0.01, DimGroup );
+  QLabel* SpacingLabel = new QLabel (tr("LBL_SPACING"), DimGroup );
+  SpacingSpin = new QtxDoubleSpinBox( 0.0, 1.0, 0.01, DimGroup );
   SpacingSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   SpacingSpin->setMinimumWidth( 70 );
   SpacingSpin->setValue( 0.01 );
@@ -278,16 +309,27 @@ VisuGUI_GaussScalarBarPane::VisuGUI_GaussScalarBarPane (QWidget * parent):
 
   //TopLayout->addWidget( DimGroup );
 
-  QHBox* aSaveBox = new QHBox(this);
+  QWidget* aSaveBox = new QWidget(this);
+  aMainLayout->addWidget( aSaveBox );
+
+  QHBoxLayout* aHBoxLay = new QHBoxLayout( aSaveBox );
+  
   myTextBtn = new QPushButton("Text properties...", aSaveBox);
+  aHBoxLay->addWidget( myTextBtn );
+  
   myBarBtn = new QPushButton("Bar properties...", aSaveBox);
+  aHBoxLay->addWidget( myBarBtn );
+
   myTextDlg = new VisuGUI_TextPrefDlg(this);
+  aMainLayout->addWidget( myTextDlg );
   myTextDlg->setTitleVisible(true);
+
   myBarDlg = new VisuGUI_BarPrefDlg(this);
+  aMainLayout->addWidget( myBarDlg );
 
   // signals and slots connections ===========================================
-  connect( RBFieldRange,    SIGNAL( clicked() ), this, SLOT( fieldRangeClicked() ) );
-  connect( RBImposedRange,    SIGNAL( clicked() ), this, SLOT( imposedRangeClicked() ) );
+  connect( RBFieldRange,  SIGNAL( clicked() ), this, SLOT( fieldRangeClicked() ) );
+  connect( RBImposedRange,SIGNAL( clicked() ), this, SLOT( imposedRangeClicked() ) );
 
   connect( myModeCombo,   SIGNAL( activated( int ) ), this, SLOT( changeScalarMode( int ) ) );
 
@@ -298,7 +340,7 @@ VisuGUI_GaussScalarBarPane::VisuGUI_GaussScalarBarPane (QWidget * parent):
   connect( RainbowButton, SIGNAL( toggled( bool ) ), ColorSpin, SLOT( setEnabled( bool ) ) );
   connect( RainbowButton, SIGNAL( toggled( bool ) ), LabelLabel, SLOT( setEnabled( bool ) ) );
   connect( RainbowButton, SIGNAL( toggled( bool ) ), LabelSpin, SLOT( setEnabled( bool ) ) );
-  connect( OrientGroup,   SIGNAL( clicked( int ) ), this, SLOT( changeDefaults( int ) ) );
+  connect( OrientGroup,   SIGNAL( buttonClicked( int ) ), this, SLOT( changeDefaults( int ) ) );
   connect( XSpin,         SIGNAL( valueChanged( double ) ), this, SLOT( XYChanged( double ) ) );
   connect( YSpin,         SIGNAL( valueChanged( double ) ), this, SLOT( XYChanged( double ) ) );
   connect( myTextBtn,     SIGNAL( clicked() ), this, SLOT( onTextPref() ) );
@@ -409,7 +451,7 @@ void VisuGUI_GaussScalarBarPane::initFromPrsObject(VISU::GaussPoints_i* thePrs,
 {
   myPrsCopy = thePrs;
 
-  myModeCombo->setCurrentItem(thePrs->GetScalarMode());
+  myModeCombo->setCurrentIndex(thePrs->GetScalarMode());
 
   bool activeLocal = thePrs->GetIsActiveLocalScalarBar();
   if ( activeLocal ) {
@@ -434,22 +476,18 @@ void VisuGUI_GaussScalarBarPane::initFromPrsObject(VISU::GaussPoints_i* thePrs,
                 thePrs->GetBarOrientation());
 
   if(RBvert->isChecked()) {
-    myVerTW = thePrs->GetTitleWidth();
-    myVerTH = thePrs->GetTitleHeight();
-    myVerLW = thePrs->GetLabelWidth();
-    myVerLH = thePrs->GetLabelHeight();
+    myVerTS = thePrs->GetTitleSize();
+    myVerLS = thePrs->GetLabelSize();
     myVerBW = thePrs->GetBarWidth();
     myVerBH = thePrs->GetBarHeight();
   } else {
-    myHorTW = thePrs->GetTitleWidth();
-    myHorTH = thePrs->GetTitleHeight();
-    myHorLW = thePrs->GetLabelWidth();
-    myHorLH = thePrs->GetLabelHeight();
+    myHorTS = thePrs->GetTitleSize();
+    myHorLS = thePrs->GetLabelSize();
     myHorBW = thePrs->GetBarWidth();
     myHorBH = thePrs->GetBarHeight();
   }
 
-  myBarDlg->setLabelsFormat(thePrs->GetLabelsFormat());
+  myBarDlg->setLabelsPrecision( VISU::ToPrecision( thePrs->GetLabelsFormat() ) );
   myBarDlg->setUnitsVisible(thePrs->IsUnitsVisible());
 
   SpacingSpin->setValue(thePrs->GetSpacing());
@@ -478,29 +516,29 @@ void VisuGUI_GaussScalarBarPane::initFromPrsObject(VISU::GaussPoints_i* thePrs,
   int aNbComp = thePrs->GetField()->myNbComp;
   bool isScalarMode = (aNbComp > 1);
   myModeCombo->clear();
-  myModeCombo->insertItem("<Modulus>");
+  myModeCombo->addItem("<Modulus>");
   VISU::PField aField = thePrs->GetField();
   const VISU::TNames& aCompNames = aField->myCompNames;
   const VISU::TNames& aUnitNames = aField->myUnitNames;
   for(int i = 0; i < aNbComp; i++){
-    QString aComponent = QString(aCompNames[i].c_str()).simplifyWhiteSpace();
+    QString aComponent = QString(aCompNames[i].c_str()).simplified();
     if(aComponent.isNull() || aComponent == "")
       aComponent = "Component " + QString::number(i+1);
     else
       aComponent = "[" + QString::number(i+1) + "] " + aComponent;
 
-    QString anUnit = QString(aUnitNames[i].c_str()).simplifyWhiteSpace();
+    QString anUnit = QString(aUnitNames[i].c_str()).simplified();
     if(anUnit.isNull() || anUnit == "")
       anUnit = "-";
     
     aComponent = aComponent + ", " + anUnit;
 
-    myModeCombo->insertItem(aComponent);
+    myModeCombo->addItem(aComponent);
   }
   //
-  myModeCombo->setCurrentItem(thePrs->GetScalarMode());
+  myModeCombo->setCurrentIndex(thePrs->GetScalarMode());
   if (aNbComp==1){
-    myModeCombo->setCurrentItem(1);
+    myModeCombo->setCurrentIndex(1);
   }
   //
   myModeLbl->setEnabled(isScalarMode);
@@ -510,9 +548,10 @@ void VisuGUI_GaussScalarBarPane::initFromPrsObject(VISU::GaussPoints_i* thePrs,
   myTextDlg->setTitleText(QString(thePrs->GetTitle()));
 
   vtkFloatingPointType R, G, B;
-  thePrs->GetTitleColor(&R, &G, &B);
+  thePrs->GetTitleColor(R, G, B);
 
-  myBarDlg->setLabelsFormat(thePrs->GetLabelsFormat());
+  int lp = VISU::ToPrecision( thePrs->GetLabelsFormat() );
+  myBarDlg->setLabelsPrecision( lp );
   myBarDlg->setUnitsVisible(thePrs->IsUnitsVisible());
 
   myTextDlg->myTitleFont->SetData(QColor((int)(R*255.), (int)(G*255.), (int)(B*255.)),
@@ -522,7 +561,7 @@ void VisuGUI_GaussScalarBarPane::initFromPrsObject(VISU::GaussPoints_i* thePrs,
                                   thePrs->IsShadowTitle());
 
   // "Labels"
-  thePrs->GetLabelColor(&R, &G, &B);
+  thePrs->GetLabelColor(R, G, B);
 
   myTextDlg->myLabelFont->SetData(QColor((int)(R*255.), (int)(G*255.), (int)(B*255.)),
                                   thePrs->GetLblFontType(),
@@ -535,7 +574,7 @@ void VisuGUI_GaussScalarBarPane::initFromPrsObject(VISU::GaussPoints_i* thePrs,
  * Store values to presentation object
  */
 int VisuGUI_GaussScalarBarPane::storeToPrsObject(VISU::GaussPoints_i* thePrs) {
-  thePrs->SetScalarMode(myModeCombo->currentItem());
+  thePrs->SetScalarMode(myModeCombo->currentIndex());
 
   if (RBFieldRange->isChecked()) {
     thePrs->SetSourceRange();
@@ -550,22 +589,23 @@ int VisuGUI_GaussScalarBarPane::storeToPrsObject(VISU::GaussPoints_i* thePrs) {
 
   thePrs->SetPosition(XSpin->value(), YSpin->value());
   thePrs->SetSize(WidthSpin->value(), HeightSpin->value());
-  thePrs->SetBarOrientation((RBvert->isChecked())? VISU::ColoredPrs3d::VERTICAL : VISU::ColoredPrs3d::HORIZONTAL);
+  thePrs->SetBarOrientation((RBvert->isChecked())? VISU::ColoredPrs3dBase::VERTICAL : VISU::ColoredPrs3dBase::HORIZONTAL);
   thePrs->SetNbColors(ColorSpin->value());
   thePrs->SetLabels(LabelSpin->value());
 
   if(RBvert->isChecked()) {
-    thePrs->SetRatios(myVerTW, myVerTH, myVerLW, myVerLH, myVerBW, myVerBH);
+    thePrs->SetRatios(myVerTS, myVerLS, myVerBW, myVerBH);
   } else {
-    thePrs->SetRatios(myHorTW, myHorTH, myHorLW, myHorLH, myHorBW, myHorBH);
+    thePrs->SetRatios(myHorTS, myHorLS, myHorBW, myHorBH);
   }
 
-  thePrs->SetLabelsFormat(myBarDlg->getLabelsFormat());
+  std::string f = VISU::ToFormat( myBarDlg->getLabelsPrecision() );
+  thePrs->SetLabelsFormat( f.c_str() );
   thePrs->SetUnitsVisible(myBarDlg->isUnitsVisible());
 
   if (myIsStoreTextProp) {
     // "Title"
-    thePrs->SetTitle(myTextDlg->getTitleText().latin1());
+    thePrs->SetTitle(myTextDlg->getTitleText().toLatin1().data());
 
     QColor aTitColor (255, 255, 255);
     int aTitleFontFamily = VTK_ARIAL;
@@ -630,12 +670,12 @@ void VisuGUI_GaussScalarBarPane::changeDefaults( int )
 */
 void VisuGUI_GaussScalarBarPane::XYChanged( double )
 {
-  QtxDblSpinBox* snd = (QtxDblSpinBox*)sender();
+  QtxDoubleSpinBox* snd = (QtxDoubleSpinBox*)sender();
   if ( snd == XSpin ) {
-    WidthSpin->setMaxValue( 1.0 - XSpin->value() );
+    WidthSpin->setMaximum( 1.0 - XSpin->value() );
   }
   if ( snd == YSpin ) {
-    HeightSpin->setMaxValue( 1.0 - YSpin->value() );
+    HeightSpin->setMaximum( 1.0 - YSpin->value() );
   }
 }
 
@@ -716,14 +756,14 @@ void VisuGUI_GaussScalarBarPane::onTextPref()
 void VisuGUI_GaussScalarBarPane::onBarPref()
 {
   if(RBvert->isChecked())
-    myBarDlg->setRatios(myVerTW, myVerTH, myVerLW, myVerLH, myVerBW, myVerBH);
+    myBarDlg->setRatios(myVerTS, myVerLS, myVerBW, myVerBH);
   else
-    myBarDlg->setRatios(myHorTW, myHorTH, myHorLW, myHorLH, myHorBW, myHorBH);
+    myBarDlg->setRatios(myHorTS, myHorLS, myHorBW, myHorBH);
   if(myBarDlg->exec()) {
     if(RBvert->isChecked())
-      myBarDlg->getRatios(myVerTW, myVerTH, myVerLW, myVerLH, myVerBW, myVerBH);
+      myBarDlg->getRatios(myVerTS, myVerLS, myVerBW, myVerBH);
     else
-      myBarDlg->getRatios(myHorTW, myHorTH, myHorLW, myHorLH, myHorBW, myHorBH);
+      myBarDlg->getRatios(myHorTS, myHorLS, myHorBW, myHorBH);
   }
 }
 
@@ -731,10 +771,11 @@ void VisuGUI_GaussScalarBarPane::onBarPref()
  * Constructor
  */
 VisuGUI_GaussPointsDlg::VisuGUI_GaussPointsDlg(SalomeApp_Module* theModule):
+  myModule(theModule),
   VisuGUI_Prs3dDlg(theModule)
 {
-  setName("VisuGUI_GaussPointsDlg");
-  setCaption(tr("DLG_PROP_TITLE"));
+  //setName("VisuGUI_GaussPointsDlg");
+  setWindowTitle(tr("DLG_PROP_TITLE"));
   setSizeGripEnabled(TRUE);
 
   QVBoxLayout* TopLayout = new QVBoxLayout(this);
@@ -743,51 +784,70 @@ VisuGUI_GaussPointsDlg::VisuGUI_GaussPointsDlg(SalomeApp_Module* theModule):
 
 
   // Presentation
-  QButtonGroup* PrsGroup = new QButtonGroup( 3, Qt::Horizontal, tr( "PRS_TITLE" ), this, "PrimitiveTypeGroup" );
-  PrsGroup->setRadioButtonExclusive( true );
-  PrsGroup->layout()->setMargin( 11 );
-  PrsGroup->layout()->setSpacing(6);
-
-  myResultsButton = new QRadioButton( tr( "RESULTS" ), PrsGroup );
-  myGeometryButton = new QRadioButton( tr( "GEOMETRY" ), PrsGroup );
-  myDefShapeButton = new QRadioButton( tr( "DEFORMED_SHAPE" ), PrsGroup );
+  QButtonGroup* PrsGroup = new QButtonGroup( this );
+  QGroupBox* aGB = new QGroupBox( tr( "PRS_TITLE" ), this );
+  QHBoxLayout* aHBLay = new QHBoxLayout( aGB );
+  PrsGroup->setExclusive( true );
+  aHBLay->setMargin( 11 );
+  aHBLay->setSpacing(6);
+
+  myResultsButton = new QRadioButton( tr( "RESULTS" ), aGB );
+  myGeometryButton = new QRadioButton( tr( "GEOMETRY" ), aGB );
+  myDefShapeButton = new QRadioButton( tr( "DEFORMED_SHAPE" ), aGB );
+  aHBLay->addWidget( myResultsButton );
+  aHBLay->addWidget( myGeometryButton );
+  aHBLay->addWidget( myDefShapeButton );
+
+  PrsGroup->addButton( myResultsButton );
+  PrsGroup->addButton( myGeometryButton );
+  PrsGroup->addButton( myDefShapeButton );
+  
 
   myTabBox = new QTabWidget (this);
 
   // Gauss points pane
-  QVBox* aBox = new QVBox (this);
-  aBox->setMargin(11);
-  aBox->setSpacing(6);
+  QWidget* aBox = new QWidget (this);
+  QVBoxLayout* aVBLay = new QVBoxLayout( aBox );
+  aVBLay->setMargin(11);
+  aVBLay->setSpacing(6);
 
   // Primitive
   myPrimitiveBox = new VVTK_PrimitiveBox( aBox );
+  aVBLay->addWidget( myPrimitiveBox );
 
   // Size
   mySizeBox = new VVTK_SizeBox( aBox );
+  aVBLay->addWidget( mySizeBox );
 
   // Deformed Shape
   myDefShapeBox = new QGroupBox( tr( "DEFORMED_SHAPE_TITLE" ), aBox );
-  myDefShapeBox->setColumnLayout(0, Qt::Vertical );
-  myDefShapeBox->layout()->setSpacing( 0 );
-  myDefShapeBox->layout()->setMargin( 0 );
+  aVBLay->addWidget( myDefShapeBox );
+  //myDefShapeBox->setColumnLayout(0, Qt::Vertical );
+  //myDefShapeBox->layout()->setSpacing( 0 );
+  //myDefShapeBox->layout()->setMargin( 0 );
 
-  QGridLayout* aDefShapeLayout = new QGridLayout( myDefShapeBox->layout() );
+  QGridLayout* aDefShapeLayout = new QGridLayout( myDefShapeBox );
   aDefShapeLayout->setAlignment(Qt::AlignTop);
   aDefShapeLayout->setSpacing(6);
   aDefShapeLayout->setMargin(11);
+  
+  SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
+  int aPrecision = aResourceMgr->integerValue( "VISU", "floating_point_precision", 0 );
 
   QLabel* aScaleLabel = new QLabel( tr( "SCALE_FACTOR" ), myDefShapeBox );
-  myScaleSpinBox = new QtxDblSpinBox( 0.0, 10.0, 0.1, myDefShapeBox );
-
+  myScaleSpinBox = new QtxDoubleSpinBox( 0.0, 10.0, 0.1, aPrecision*(-1), 32, myDefShapeBox );
+  
   aDefShapeLayout->addWidget( aScaleLabel, 0, 0 );
   aDefShapeLayout->addWidget( myScaleSpinBox, 0, 1 );
 
   // Scalar Bar pane
   myScalarPane = new VisuGUI_GaussScalarBarPane(this);
-  myScalarPane->setMargin(5);
+  if ( myScalarPane->layout() )
+    myScalarPane->layout()->setMargin(5);
 
   // Input pane
   myInputPane = new VisuGUI_InputPane(VISU::TGAUSSPOINTS, theModule, this);
+  myInputPane->SetRestoreInitialSelection(false);
 
   connect( myResultsButton,  SIGNAL( clicked() ),       mySizeBox,    SLOT( onToggleResults() ) );
   connect( myResultsButton,  SIGNAL( toggled( bool ) ), myScalarPane, SLOT( setEnabled( bool ) ) );
@@ -800,30 +860,30 @@ VisuGUI_GaussPointsDlg::VisuGUI_GaussPointsDlg(SalomeApp_Module* theModule):
   myTabBox->addTab(myInputPane, tr("INPUT_TAB"));
 
   // Common buttons ===========================================================
-  QGroupBox* GroupButtons = new QGroupBox( this, "GroupButtons" );
-  GroupButtons->setColumnLayout(0, Qt::Vertical );
-  GroupButtons->layout()->setSpacing( 0 );
-  GroupButtons->layout()->setMargin( 0 );
-  QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons->layout() );
+  QGroupBox* GroupButtons = new QGroupBox( this );
+  //GroupButtons->setColumnLayout(0, Qt::Vertical );
+  //GroupButtons->layout()->setSpacing( 0 );
+  //GroupButtons->layout()->setMargin( 0 );
+  QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons );
   GroupButtonsLayout->setAlignment( Qt::AlignTop );
   GroupButtonsLayout->setSpacing( 6 );
   GroupButtonsLayout->setMargin( 11 );
 
-  QPushButton* buttonOk = new QPushButton( tr( "&OK" ), GroupButtons, "buttonOk" );
+  QPushButton* buttonOk = new QPushButton( tr( "&OK" ), GroupButtons );
   buttonOk->setAutoDefault( TRUE );
   buttonOk->setDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonOk, 0, 0 );
   GroupButtonsLayout->addItem( new QSpacerItem( 5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 1 );
 
-  QPushButton* buttonCancel = new QPushButton( tr( "&Cancel" ) , GroupButtons, "buttonCancel" );
+  QPushButton* buttonCancel = new QPushButton( tr( "&Cancel" ) , GroupButtons );
   buttonCancel->setAutoDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonCancel, 0, 2 );
 
-  QPushButton* buttonHelp = new QPushButton( tr( "&Help" ) , GroupButtons, "buttonHelp" );
+  QPushButton* buttonHelp = new QPushButton( tr( "&Help" ) , GroupButtons );
   buttonHelp->setAutoDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonHelp, 0, 3 );
 
-  TopLayout->addWidget( PrsGroup );
+  TopLayout->addWidget( aGB );
   TopLayout->addWidget( myTabBox );
   TopLayout->addWidget( GroupButtons );
 
@@ -870,11 +930,18 @@ void VisuGUI_GaussPointsDlg::initFromPrsObject( VISU::ColoredPrs3d_i* thePrs,
   mySizeBox->setIncrement( myPrsCopy->GetMagnificationIncrement() );
   mySizeBox->setColor( myPrsCopy->GetQColor() );
 
+  //Disable Size controls if there are no OpenGL extensions
+  char* ext = (char*)glGetString( GL_EXTENSIONS );
+  if( strstr( ext, "GL_ARB_point_sprite" ) == NULL ||
+      strstr( ext, "GL_ARB_shader_objects" ) == NULL ||
+      strstr( ext, "GL_ARB_vertex_buffer_object" ) == NULL )
+      mySizeBox->enableSizeControls(false);
+
   if( !theInit )
     return;
 
   myInputPane->initFromPrsObject( myPrsCopy );
-  myTabBox->setCurrentPage( 0 );
+  myTabBox->setCurrentIndex( 0 );
 }
 
 int VisuGUI_GaussPointsDlg::storeToPrsObject( VISU::ColoredPrs3d_i* thePrs )
@@ -898,8 +965,8 @@ int VisuGUI_GaussPointsDlg::storeToPrsObject( VISU::ColoredPrs3d_i* thePrs )
 
   aMainTexture = aMainTexture.isNull() ? myPrsCopy->GetQMainTexture() : aMainTexture;
   anAlphaTexture = anAlphaTexture.isNull() ? myPrsCopy->GetQAlphaTexture() : anAlphaTexture;
-  
-  myPrsCopy->SetTextures( aMainTexture, anAlphaTexture );
+
+  myPrsCopy->SetTextures( aMainTexture.toLatin1().data(), anAlphaTexture.toLatin1().data() );
 
   myPrsCopy->SetAlphaThreshold( myPrimitiveBox->getAlphaThreshold() );
 
@@ -923,8 +990,22 @@ int VisuGUI_GaussPointsDlg::storeToPrsObject( VISU::ColoredPrs3d_i* thePrs )
   myPrsCopy->SetMagnification( mySizeBox->getMagnification() );
   myPrsCopy->SetMagnificationIncrement( mySizeBox->getIncrement() );
 
-  VISU::TSameAsFactory<VISU::TGAUSSPOINTS>().Copy(myPrsCopy, thePrs);
-
+  VISU::TSameAsFactory<VISU::TGAUSSPOINTS>().Copy(myPrsCopy, thePrs); 
+  
+  //Set created Gauss points presentation selected,
+  //Issue 0019874(EDF 746 VISU: Picking alphanumeric Gauss)
+  if(thePrs){
+    SALOME_ListIO aListIO;
+    LightApp_SelectionMgr* aSelectionMgr = VISU::GetSelectionMgr(myModule);
+    Handle(SALOME_InteractiveObject) anIO = thePrs->GetIO();
+    if(anIO && anIO->hasEntry()) {
+      aListIO.Append(anIO);
+      VISU::UpdateObjBrowser(myModule,true);
+      //IPAL20836 aSelectionMgr->setSelectedObjects(aListIO); 
+    }
+    else
+      myInputPane->SetRestoreInitialSelection(true);
+  }
   return anIsOk;
 }
 
@@ -951,7 +1032,7 @@ void VisuGUI_GaussPointsDlg::accept()
       QString aWarning = "The number of faces needed to perform the 'Geometrical Sphere' primitive\n";
       aWarning.append( "presentation might be too important to ensure an acceptable frame rate.\n\n" );
       aWarning.append( "Can you please confirm that you want to continue anyway?" );
-      if( SUIT_MessageBox::warn2( this, tr( "Warning" ), aWarning, tr( "&OK" ), tr( "&Cancel" ), 0, 1, 1 ) == 1 )
+      if( SUIT_MessageBox::warning( this, tr( "Warning" ), aWarning, tr( "&OK" ), tr( "&Cancel" ) ) == 1 )
        return;
     }
 
index d5c28d9903dad1d159a33eda0a9cca68896450b1..6b0121d6305dbefa0120ee0aa2e33d909e0c7073 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_GaussPointsDlg.h
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #ifndef VISUGUI_GAUSSPOINTSDLS_H
 #define VISUGUI_GAUSSPOINTSDLS_H
 
 #include "VisuGUI_Prs3dDlg.h"
 #include "VISU_GaussPoints_i.hh"
 
-#include <qvbox.h>
-
-class QtxDblSpinBox;
+class QtxDoubleSpinBox;
 
 class SalomeApp_Module;
 class VVTK_PrimitiveBox;
@@ -44,7 +41,7 @@ class VisuGUI_InputPane;
 
 //! Specific Scalar Bar tab.
 /*! Uses for set up Gauss Points Scalar Bars preferenses. */
-class VisuGUI_GaussScalarBarPane : public QVBox
+class VisuGUI_GaussScalarBarPane : public QWidget//QVBox
 {
   Q_OBJECT
 
@@ -76,12 +73,12 @@ class VisuGUI_GaussScalarBarPane : public QVBox
   QRadioButton*   RBhori;
   QRadioButton*   RBvert;
 
-  QtxDblSpinBox*  XSpin;
-  QtxDblSpinBox*  YSpin;
+  QtxDoubleSpinBox*  XSpin;
+  QtxDoubleSpinBox*  YSpin;
 
-  QtxDblSpinBox*  WidthSpin;
-  QtxDblSpinBox*  HeightSpin;
-  QtxDblSpinBox*  SpacingSpin;
+  QtxDoubleSpinBox*  WidthSpin;
+  QtxDoubleSpinBox*  HeightSpin;
+  QtxDoubleSpinBox*  SpacingSpin;
 
   QRadioButton*   BicolorButton;
   QRadioButton*   RainbowButton;
@@ -103,8 +100,8 @@ class VisuGUI_GaussScalarBarPane : public QVBox
   double          Imin,   Imax;
   double          myHorX, myHorY, myHorW, myHorH;
   double          myVerX, myVerY, myVerW, myVerH;
-  int             myHorTW, myHorTH, myHorLW, myHorLH, myHorBW, myHorBH;
-  int             myVerTW, myVerTH, myVerLW, myVerLH, myVerBW, myVerBH;
+  int             myHorTS, myHorLS, myHorBW, myHorBH;
+  int             myVerTS, myVerLS, myVerBW, myVerBH;
   int             myRangeMode;
   bool myIsStoreTextProp;
 
@@ -164,9 +161,10 @@ private:
   VVTK_SizeBox*            mySizeBox;
 
   QGroupBox*               myDefShapeBox;
-  QtxDblSpinBox*           myScaleSpinBox;
+  QtxDoubleSpinBox*           myScaleSpinBox;
 
   SALOME::GenericObjPtr<VISU::GaussPoints_i> myPrsCopy;
+  SalomeApp_Module*        myModule;
 };
 
 #endif // VISUGUI_GAUSSPOINTSDLS_H
diff --git a/src/VISUGUI/VisuGUI_GaussPointsSelectionPane.cxx b/src/VISUGUI/VisuGUI_GaussPointsSelectionPane.cxx
new file mode 100644 (file)
index 0000000..8c26c8a
--- /dev/null
@@ -0,0 +1,516 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
+//  File   : VisuGUI_GaussPointsSelectionPane.cxx
+//  Author : Oleg Uvarov
+//  Module : VISU
+//
+#include "VisuGUI_GaussPointsSelectionPane.h"
+#include "VisuGUI_ViewTools.h"
+
+#include "VISU_GaussPtsAct.h"
+#include "VISU_GaussPtsSettings.h"
+#include "VISU_GaussPointsPL.hxx"
+#include "VISU_PickingSettings.h"
+
+#include "SUIT_MessageBox.h"
+#include "SUIT_ResourceMgr.h"
+#include "SUIT_Session.h"
+
+#include "CAM_Module.h"
+
+#include "SVTK_Selector.h"
+#include "SVTK_ViewWindow.h"
+//#include "SVTK_MainWindow.h"
+#include "SVTK_RenderWindowInteractor.h"
+
+#include "VTKViewer_Algorithm.h"
+#include "SVTK_Functor.h"
+
+#include <vtkActorCollection.h>
+#include <vtkCallbackCommand.h>
+#include <vtkObjectFactory.h>
+#include <vtkRenderer.h>
+#include <vtkGenericRenderWindowInteractor.h>
+#include <vtkSmartPointer.h>
+
+#include "utilities.h"
+
+#include <QCheckBox>
+#include <QComboBox>
+#include <QGroupBox>
+#include <QLabel>
+#include <QLayout>
+#include <QPushButton>
+#include <QVBoxLayout>
+#include <QKeyEvent>
+#include <QIntValidator>
+#include <QToolButton>
+
+#include "LightApp_Application.h"
+
+namespace
+{
+  struct SelectorHelper
+  {
+  public:
+    SelectorHelper( const SalomeApp_Module* theModule ):
+      myModule( theModule )
+    {}
+
+    bool
+    get()
+    {
+      bool aResult = false;
+      myMapIndex.Clear();
+      mySelector = NULL;
+      myPipeLine = NULL;
+      myActor = NULL;
+
+      SVTK_RenderWindowInteractor* anInteractor = NULL;
+      if( SVTK_ViewWindow* aViewWindow = VISU::GetActiveViewWindow<SVTK_ViewWindow>( myModule ) )
+       //if( SVTK_MainWindow* aMainWindow = aViewWindow->getMainWindow() )
+         anInteractor = aViewWindow->GetInteractor();
+
+      if ( !anInteractor )
+       return aResult;
+      
+      mySelector = anInteractor->GetSelector();
+      if ( !mySelector )
+       return aResult;
+      
+      const SALOME_ListIO& aListIO = mySelector->StoredIObjects();
+      if ( aListIO.Extent() != 1 ) 
+       return aResult;
+      
+      myIO = aListIO.First();
+      if ( mySelector->HasIndex( myIO ) )
+       mySelector->GetIndex(myIO, myMapIndex);
+       
+      myActor = SVTK::Find<VISU_GaussPtsAct>(anInteractor->getRenderer()->GetActors(),
+                                            SVTK::TIsSameIObject<VISU_GaussPtsAct>( myIO ));
+      if ( !myActor )
+       return aResult;
+      
+      myPipeLine = myActor->GetGaussPointsPL();
+
+      return true;
+    }
+
+    const SalomeApp_Module* myModule;
+    TColStd_IndexedMapOfInteger myMapIndex;
+    Handle(SALOME_InteractiveObject) myIO;
+    SVTK_Selector* mySelector;
+
+    VISU_GaussPointsPL* myPipeLine;
+    VISU_GaussPtsAct* myActor;
+  };
+
+
+  
+  class GaussPtsIDValidator: public QIntValidator
+  {
+  public:
+    GaussPtsIDValidator( const SalomeApp_Module* theModule,
+                        QObject * theParent ):
+      QIntValidator( 0, VTK_LARGE_ID, theParent ),
+      myHelper(theModule)
+    {}
+
+    virtual 
+    State
+    validate ( QString & theInput, int & thePos ) const
+    {
+      if ( QIntValidator::validate( theInput, thePos ) == QValidator::Invalid)
+       return QValidator::Invalid;
+      
+      if ( !myHelper.get() )
+       return QValidator::Invalid;
+
+      return QValidator::Acceptable;
+    }
+
+  protected:
+    mutable SelectorHelper myHelper;
+  };
+
+
+  class GaussCellIDValidator: public GaussPtsIDValidator
+  {
+  public:
+    GaussCellIDValidator( QLineEdit* theLocalPointLabel,
+                         const SalomeApp_Module* theModule,
+                         QObject * theParent ):
+      GaussPtsIDValidator( theModule, theParent ),
+      myLocalPointLineEdit( theLocalPointLabel )
+    {}
+
+    virtual 
+    State
+    validate ( QString & theInput, int & thePos ) const
+    {
+      if( theInput.isEmpty() )
+       return QValidator::Acceptable;
+
+      if ( GaussPtsIDValidator::validate( theInput, thePos ) == QValidator::Invalid)
+       return QValidator::Invalid;
+
+      VISU::TCellID aCellID = theInput.toInt();
+      VISU::TLocalPntID aLocalPntID = myLocalPointLineEdit->text().toInt();
+      VISU::PGaussPtsIDMapper anIDMapper = myHelper.myPipeLine->GetGaussPtsIDMapper();
+      if ( anIDMapper->GetVTKID( VISU::TGaussPointID( aCellID, aLocalPntID ) ) < 0 )
+       return QValidator::Intermediate;
+
+      return QValidator::Acceptable;
+    }
+
+  private:
+    QLineEdit* myLocalPointLineEdit;
+  };
+
+
+  class GaussLocalPointIDValidator: public GaussPtsIDValidator
+  {
+  public:
+    GaussLocalPointIDValidator( QLineEdit* theParentElementLineEdit,
+                               const SalomeApp_Module* theModule,
+                               QObject * theParent ):
+      GaussPtsIDValidator( theModule, theParent ),
+      myParentElementLineEdit( theParentElementLineEdit )
+    {}
+
+    virtual 
+    State
+    validate ( QString & theInput, int & thePos ) const
+    {
+      if( theInput.isEmpty() )
+       return QValidator::Acceptable;
+
+      if ( GaussPtsIDValidator::validate( theInput, thePos ) == QValidator::Invalid)
+       return QValidator::Invalid;
+
+      VISU::TLocalPntID aLocalPntID = theInput.toInt();
+      VISU::TCellID aCellID = myParentElementLineEdit->text().toInt();
+      VISU::PGaussPtsIDMapper anIDMapper = myHelper.myPipeLine->GetGaussPtsIDMapper();
+      if ( anIDMapper->GetVTKID( VISU::TGaussPointID( aCellID, aLocalPntID ) ) < 0 )
+       return QValidator::Intermediate;
+
+      return QValidator::Acceptable;
+    }
+
+  private:
+    QLineEdit* myParentElementLineEdit;
+  };
+}
+
+
+VisuGUI_ValidatedLineEdit::VisuGUI_ValidatedLineEdit( QWidget* parent ):
+  QLineEdit( parent )
+{
+  connect( this, SIGNAL( textChanged( const QString& ) ), this, SLOT( MarkValidated( const QString& ) ) );
+}
+
+void VisuGUI_ValidatedLineEdit::MarkValidated( const QString& theText )
+{
+  if ( !validator() )
+    return;
+  
+  int aPos;
+  QString aText( theText );
+  QPalette pal = palette();
+  switch ( validator()->validate( aText, aPos ) ) {
+  case QValidator::Invalid:
+  case QValidator::Intermediate:
+    pal.setColor( foregroundRole(), QColor( 255, 0, 0 ));
+    setPalette( pal );
+    break;
+  case QValidator::Acceptable:
+    pal.setColor( foregroundRole(), QColor( 0, 0, 0 ));
+    setPalette( pal );
+    break;
+  }
+}
+
+//---------------------------------------------------------------------------------
+
+VisuGUI_GaussPointsSelectionPane::VisuGUI_GaussPointsSelectionPane( const SalomeApp_Module* theModule,
+                                                                   QWidget* theParent ) :
+  QWidget( theParent ),
+  myModule( theModule ),
+  myEventCallbackCommand( vtkCallbackCommand::New() )
+{
+  myPriority = 0.0;
+  myEventCallbackCommand->Delete();
+  myEventCallbackCommand->SetClientData(this); 
+  myEventCallbackCommand->SetCallback(VisuGUI_GaussPointsSelectionPane::ProcessEvents);
+
+  QVBoxLayout* TopLayout = new QVBoxLayout( this );
+  //TopLayout->setSpacing(6);
+
+  // Display parent mesh element
+  QGroupBox* PositionGroup = new QGroupBox( tr( "DATA_POSITION" ), this );
+  QGridLayout* PositionGroupLayout = new QGridLayout (PositionGroup);
+  PositionGroupLayout->setAlignment(Qt::AlignTop | Qt::AlignLeft);
+  //PositionGroupLayout->setSpacing(6);
+
+  QLabel* ParentElementLabel = new QLabel( tr( "PARENT_ELEMENT" ), PositionGroup );
+  ParentElementLabel->setToolTip( tr( "PARENT_ELEMENT_TIP" ) );
+  myParentElementLineEdit = new VisuGUI_ValidatedLineEdit( PositionGroup );
+  connect( myParentElementLineEdit, SIGNAL( textChanged( const QString& ) ), this, SLOT( onSelectionValidate() ) );
+  connect( myParentElementLineEdit, SIGNAL( returnPressed() ), this, SLOT( onSelectionApply() ) );
+
+  QToolButton* ParentElementBtn = new QToolButton( PositionGroup );
+  ParentElementBtn->setIcon( VISU::GetResourceMgr()->loadPixmap("VISU", tr( "ICON_OK" ) ) );
+  connect(ParentElementBtn, SIGNAL(clicked()), this, SLOT(onSelectionApply()));
+
+  QLabel* LocalPointLabel = new QLabel( tr( "LOCAL_POINT" ), PositionGroup );
+  LocalPointLabel->setToolTip( tr( "LOCAL_POINT_TIP" ) );
+  myLocalPointLineEdit = new VisuGUI_ValidatedLineEdit( PositionGroup );
+  connect( myLocalPointLineEdit,    SIGNAL( textChanged( const QString& ) ), this, SLOT( onSelectionValidate() ) );
+  connect( myLocalPointLineEdit,    SIGNAL( returnPressed() ), this, SLOT( onSelectionApply() ) );
+
+  QToolButton* LocalPointBtn = new QToolButton( PositionGroup );
+  LocalPointBtn->setIcon( VISU::GetResourceMgr()->loadPixmap("VISU", tr( "ICON_OK" ) ) );
+  connect(LocalPointBtn, SIGNAL(clicked()), this, SLOT(onSelectionApply()));
+
+  myCellIDValidator = new GaussCellIDValidator( myLocalPointLineEdit, myModule, myParentElementLineEdit );
+  myParentElementLineEdit->setValidator( myCellIDValidator );
+
+  myLocalPointIDValidator = new GaussLocalPointIDValidator( myParentElementLineEdit, myModule, myLocalPointLineEdit );
+  myLocalPointLineEdit->setValidator( myLocalPointIDValidator );
+
+  myDisplayParentMeshCheckBox = new QCheckBox( tr( "DISPLAY_PARENT_MESH" ), PositionGroup );
+
+  PositionGroupLayout->addWidget( ParentElementLabel,          0, 0, 1, 3 );
+  PositionGroupLayout->addWidget( myParentElementLineEdit,     0, 3 );
+  PositionGroupLayout->addWidget( ParentElementBtn,            0, 4 );
+  PositionGroupLayout->addWidget( LocalPointLabel,             1, 0, 1, 3 );
+  PositionGroupLayout->addWidget( myLocalPointLineEdit,        1, 3 );
+  PositionGroupLayout->addWidget( LocalPointBtn,               1, 4 );
+  PositionGroupLayout->addWidget( myDisplayParentMeshCheckBox, 2, 0, 1, 5 );
+
+  connect( myDisplayParentMeshCheckBox, SIGNAL( toggled( bool ) ), this, SLOT( onApplyDisplayParentMesh( bool ) ) );
+
+  TopLayout->addWidget( PositionGroup );
+  TopLayout->addStretch();
+}
+
+VisuGUI_GaussPointsSelectionPane::~VisuGUI_GaussPointsSelectionPane()
+{
+}
+
+void VisuGUI_GaussPointsSelectionPane::update()
+{
+  VISU_PickingSettings* aPickingSettings = VISU_PickingSettings::Get();
+  myDisplayParentMeshCheckBox->setChecked( aPickingSettings->GetDisplayParentMesh() );
+}
+
+void VisuGUI_GaussPointsSelectionPane::setIds( const int theParentId, const int theLocalId )
+{
+  myParentElementLineEdit->setText( theParentId < 0 ? "" : QString::number( theParentId ) );
+  myLocalPointLineEdit->setText( theLocalId < 0 ? "" : QString::number( theLocalId ) );
+  onSelectionApply();
+}
+
+void VisuGUI_GaussPointsSelectionPane::setInteractor( SVTK_RenderWindowInteractor* theInteractor )
+{
+  //printf( "VisuGUI_GaussPointsSelectionPane::setInteractor( %p )\n", theInteractor );
+  vtkGenericRenderWindowInteractor* aDevice = theInteractor->GetDevice();
+  if( aDevice->HasObserver(vtkCommand::KeyPressEvent) )
+    aDevice->RemoveObservers(vtkCommand::KeyPressEvent);
+
+  //printf( "AddObserver(vtkCommand::KeyPressEvent)\n" );
+  aDevice->AddObserver(vtkCommand::KeyPressEvent, 
+                      myEventCallbackCommand.GetPointer(), 
+                      myPriority);
+
+  if( aDevice->HasObserver(vtkCommand::EndPickEvent) )
+    aDevice->RemoveObservers(vtkCommand::EndPickEvent);
+
+  //printf( "AddObserver(vtkCommand::EndPickEvent)\n" );
+  aDevice->AddObserver(vtkCommand::EndPickEvent, 
+                      myEventCallbackCommand.GetPointer(), 
+                      myPriority);
+}
+
+SVTK_RenderWindowInteractor* VisuGUI_GaussPointsSelectionPane::getInteractor()
+{
+  if( SVTK_ViewWindow* aViewWindow = VISU::GetActiveViewWindow<SVTK_ViewWindow>( myModule ) )
+  {
+    //if( SVTK_MainWindow* aMainWindow = aViewWindow->getMainWindow() )
+    //{
+      SVTK_RenderWindowInteractor* anInteractor = aViewWindow->GetInteractor();
+      return anInteractor;
+      //}
+  }
+  return 0;
+}
+
+void VisuGUI_GaussPointsSelectionPane::ProcessEvents(vtkObject* vtkNotUsed(theObject),
+                                                    unsigned long theEvent,
+                                                    void* theClientData,
+                                                    void* vtkNotUsed(theCallData))
+{
+  VisuGUI_GaussPointsSelectionPane* self = reinterpret_cast<VisuGUI_GaussPointsSelectionPane*>(theClientData);
+
+  switch(theEvent){
+  case vtkCommand::KeyPressEvent:
+    self->KeyPressed();
+    break;
+  case vtkCommand::EndPickEvent:
+    self->SelectionEvent();
+    break;
+  }
+}
+
+void VisuGUI_GaussPointsSelectionPane::KeyPressed()
+{
+  //printf( "VisuGUI_GaussPointsSelectionPane::KeyPressed()\n" );
+  if( getInteractor()->GetDevice()->GetKeyCode() == 'P' )
+  {
+    VISU_PickingSettings* aPickingSettings = VISU_PickingSettings::Get();
+
+    bool aDisplayParentMesh = !aPickingSettings->GetDisplayParentMesh();
+    myDisplayParentMeshCheckBox->setChecked( aDisplayParentMesh );
+
+    aPickingSettings->SetDisplayParentMesh( aDisplayParentMesh );
+    aPickingSettings->InvokeEvent(VISU::UpdatePickingSettingsEvent,NULL);
+  }
+}
+
+void VisuGUI_GaussPointsSelectionPane::SelectionEvent()
+{
+  //printf( "VisuGUI_GaussPointsSelectionPane::SelectionEvent()\n" );
+  clearIDControls();
+
+  SelectorHelper aHelper( myModule );
+  if( aHelper.get() )
+  {
+    const TColStd_IndexedMapOfInteger& aMapIndex = aHelper.myMapIndex;
+    if( aMapIndex.Extent() == 1 )
+    {
+      int anObjId = aHelper.myMapIndex(1);
+      VISU::TGaussPointID aGaussPointID = aHelper.myPipeLine->GetObjID( anObjId );
+      VISU::TCellID aCellID = aGaussPointID.first;
+      VISU::TLocalPntID aLocalPntID = aGaussPointID.second;
+
+      myParentElementLineEdit->setText( QString::number( aCellID ) );
+      myLocalPointLineEdit->setText( QString::number( aLocalPntID ) );
+    }
+  }
+}
+
+void VisuGUI_GaussPointsSelectionPane::onSelectionValidate() 
+{
+  myParentElementLineEdit->MarkValidated( myParentElementLineEdit->text() );
+  myLocalPointLineEdit->MarkValidated( myLocalPointLineEdit->text() );
+}
+
+void VisuGUI_GaussPointsSelectionPane::onSelectionApply() 
+{
+  //printf( "VisuGUI_GaussPointsSelectionPane::onSelectionApply()\n" );
+  SelectorHelper aHelper( myModule );
+  if( !aHelper.get() )
+    return;
+
+  vtkIdType anObjVtkId = -1;
+  VISU::TCellID aCellId;
+  VISU::TLocalPntID aLocalPntId;
+
+  bool ok = false;
+  aCellId = myParentElementLineEdit->text().toInt( &ok );
+  if( ok )
+  {
+    ok = false;
+    aLocalPntId = myLocalPointLineEdit->text().toInt( &ok );
+    if( ok )
+    {
+      VISU::PGaussPtsIDMapper anIDMapper = aHelper.myPipeLine->GetGaussPtsIDMapper();
+      anObjVtkId = anIDMapper->GetVTKID( VISU::TGaussPointID( aCellId, aLocalPntId ) );
+    }
+  }
+
+  if( anObjVtkId < 0 )
+    aHelper.mySelector->ClearIndex();
+  else
+  {
+    aHelper.myMapIndex.Clear();
+    aHelper.myMapIndex.Add( anObjVtkId );
+    aHelper.mySelector->AddOrRemoveIndex( aHelper.myIO, aHelper.myMapIndex, false );
+  }
+  aHelper.myActor->Highlight( aHelper.myIO );
+  getInteractor()->GetDevice()->CreateTimer( VTKI_TIMER_FIRST );
+}
+
+void VisuGUI_GaussPointsSelectionPane::clearIDControls()
+{
+  myParentElementLineEdit->setText( "" );
+  myLocalPointLineEdit->setText( "" );
+}
+
+void VisuGUI_GaussPointsSelectionPane::apply()
+{
+  onSelectionApply();
+}
+
+void VisuGUI_GaussPointsSelectionPane::onApplyDisplayParentMesh( bool theValue )
+{
+  VISU_PickingSettings* aPickingSettings = VISU_PickingSettings::Get();
+  aPickingSettings->SetDisplayParentMesh( theValue );
+  aPickingSettings->InvokeEvent( VISU::UpdatePickingSettingsEvent,NULL );
+}
+
+/*
+void VisuGUI_GaussPointsSelectionPane::Help()
+{
+  QString aHelpFileName = "picking.htm";
+  LightApp_Application* app = (LightApp_Application*)(SUIT_Session::session()->activeApplication());
+  if (app)
+    app->onHelpContextModule(app->activeModule() ? app->moduleName(app->activeModule()->moduleName()) : QString(""), aHelpFileName);
+  else {
+    QString platform;
+#ifdef WIN32
+    platform = "winapplication";
+#else
+    platform = "application";
+#endif
+    SUIT_MessageBox::warning( 0,
+                             QObject::tr("WRN_WARNING"),
+                             QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                               arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
+                             QObject::tr("BUT_OK"));
+  }
+}
+
+void VisuGUI_GaussPointsSelectionPane::keyPressEvent( QKeyEvent* e )
+{
+  QDialog::keyPressEvent( e );
+  if ( e->isAccepted() )
+    return;
+
+  if ( e->key() == Qt::Key_F1 )
+    {
+      e->accept();
+      Help();
+    }
+}
+*/
diff --git a/src/VISUGUI/VisuGUI_GaussPointsSelectionPane.h b/src/VISUGUI/VisuGUI_GaussPointsSelectionPane.h
new file mode 100644 (file)
index 0000000..860f907
--- /dev/null
@@ -0,0 +1,124 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
+//  File   : VisuGUI_GaussPointsSelectionPane.h
+//  Author : Oleg Uvarov
+//  Module : VISU
+//
+#ifndef VISUGUI_GAUSSPOINTSSELECTIONPANE_H
+#define VISUGUI_GAUSSPOINTSSELECTIONPANE_H
+
+#include <vtkObject.h>
+#include <vtkSmartPointer.h>
+
+#include <QLineEdit>
+
+class vtkActorCollection;
+class vtkCallbackCommand;
+class vtkImageData;
+
+class QLabel;
+class QComboBox;
+class QCheckBox;
+class QPushButton;
+
+class QtxAction;
+
+class VISU_GaussPtsAct;
+class VISU_PickingSettings;
+
+class SalomeApp_Module;
+class SVTK_RenderWindowInteractor;
+class VisuGUI_ValidatedLineEdit;
+
+//! Picking Dialog.
+/*!
+ * Uses for set up picking preferenses and apply
+ * them to all actors in the current renderer.
+ */
+class VisuGUI_GaussPointsSelectionPane : public QWidget
+{
+  Q_OBJECT
+
+public:
+  VisuGUI_GaussPointsSelectionPane( const SalomeApp_Module* theModule, QWidget* theParent );
+
+  ~VisuGUI_GaussPointsSelectionPane();
+
+  //! update dialog contents.
+  void                                  update();
+
+  void                                  setIds( const int, const int );
+
+  void                                  setInteractor( SVTK_RenderWindowInteractor* );
+
+  void                                  apply();
+  //void                                  help();
+
+protected:
+  SVTK_RenderWindowInteractor*          getInteractor();
+
+protected slots:
+  void                                  onSelectionValidate();
+  void                                  onSelectionApply();
+
+private slots:
+  void                                  onApplyDisplayParentMesh( bool );
+
+private:
+  static void                           ProcessEvents(vtkObject* theObject, 
+                                                     unsigned long theEvent,
+                                                     void* theClientData, 
+                                                     void* theCallData);
+
+  void                                  KeyPressed();
+  void                                  SelectionEvent();
+  //void                                  keyPressEvent( QKeyEvent* e );
+
+  void                                  clearIDControls();
+
+private:
+  const SalomeApp_Module*               myModule;
+
+  QCheckBox*                            myDisplayParentMeshCheckBox;
+
+  VisuGUI_ValidatedLineEdit*            myParentElementLineEdit;
+  VisuGUI_ValidatedLineEdit*            myLocalPointLineEdit;
+
+  QValidator*                           myCellIDValidator;
+  QValidator*                           myLocalPointIDValidator;
+
+  float                                 myPriority;
+  vtkSmartPointer<vtkCallbackCommand>   myEventCallbackCommand;
+};
+
+class VisuGUI_ValidatedLineEdit : public QLineEdit
+{
+  Q_OBJECT;
+public:
+  VisuGUI_ValidatedLineEdit( QWidget* parent );
+  
+public slots:
+  void MarkValidated( const QString& theText );
+};
+
+#endif
index 6b1a68f80417a6674fc84d462327e900e94e03d9..442bc0a15907d9611923a6af446eac2daf6b8367 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_InputPane.cxx
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #include "VisuGUI_InputPane.h"
 
 #include "VisuGUI_Prs3dDlg.h"
 #include "SALOMEDSClient_AttributeString.hxx"
 #include "SALOMEDSClient_AttributeName.hxx"
 
-#include "QtxListBox.h"
+//#include "QtxListBox.h"
 
-#include <qcheckbox.h>
-#include <qcombobox.h>
-#include <qtoolbutton.h>
-#include <qlabel.h>
-#include <qlayout.h>
-#include <qlineedit.h>
+#include <QCheckBox>
+#include <QComboBox>
+#include <QToolButton>
+#include <QLabel>
+#include <QLayout>
+#include <QLineEdit>
+#include <QKeyEvent>
+#include <QListWidget>
 
 
 //---------------------------------------------------------------
-class VisuGUI_ListBox: public QtxListBox
+class VisuGUI_ListWidget: public QListWidget
 {
  public:
-  VisuGUI_ListBox( QWidget * parent = 0, const char * name = 0, WFlags f = 0 ):
-    QtxListBox(parent, name, f
+  VisuGUI_ListWidget( QWidget * parent = 0 ):
+    QListWidget(parent 
   {};
 
   virtual QSize sizeHint() const 
@@ -80,15 +81,18 @@ VisuGUI_InputPane::VisuGUI_InputPane( VISU::VISUType theType,
   QGroupBox( theDialog ),
   myModule( theModule ),
   myDialog( theDialog ),
-  myPrs( NULL )
+  myPrs( NULL ),
+  isRestoreInitialSelection(true)
 {
-  setFrameStyle( QFrame::NoFrame );
+  //setFrameStyle( QFrame::NoFrame );
 
   LightApp_SelectionMgr* aSelectionMgr = VISU::GetSelectionMgr(theModule);
 
   connect( aSelectionMgr, SIGNAL( selectionChanged() ), SLOT( onSelectionChanged() ) );
 
-  QGridLayout* aMainLayout = new QGridLayout( this, 1, 1, 11, 6 ); 
+  QGridLayout* aMainLayout = new QGridLayout( this );
+  aMainLayout->setMargin( 11 );
+  aMainLayout->setSpacing( 6 );
 
   // Definition of data source
   myDataSourceGroupBox = new QGroupBox( this );
@@ -96,11 +100,11 @@ VisuGUI_InputPane::VisuGUI_InputPane( VISU::VISUType theType,
   myDataSourceGroupBox->setTitle( tr( "PRS_DATA_SOUIRCE" ) );
   {
     QGroupBox* aGroupBox = myDataSourceGroupBox;
-    aGroupBox->setColumnLayout(0, Qt::Vertical );
-    aGroupBox->layout()->setSpacing( 6 );
-    aGroupBox->layout()->setMargin( 11 );
+    //aGroupBox->setColumnLayout(0, Qt::Vertical );
+    //aGroupBox->layout()->setSpacing( 6 );
+    //aGroupBox->layout()->setMargin( 11 );
 
-    QGridLayout* aGroupBoxLayout = new QGridLayout( aGroupBox->layout() );
+    QGridLayout* aGroupBoxLayout = new QGridLayout( aGroupBox );
     aGroupBoxLayout->setAlignment( Qt::AlignTop );
     {
       QLabel* aLabel = new QLabel( tr( "MED_FILE" ), aGroupBox );
@@ -109,7 +113,10 @@ VisuGUI_InputPane::VisuGUI_InputPane( VISU::VISUType theType,
       myMedFile = new QLineEdit( aGroupBox );
       myMedFile->setReadOnly( true );
       myMedFile->setEnabled( false );
-      myMedFile->setPaletteForegroundColor( Qt::black );
+      QPalette aPal = myMedFile->palette();
+      aPal.setColor( myMedFile->backgroundRole(), Qt::black );
+      myMedFile->setPalette( aPal );
+      //myMedFile->setPaletteForegroundColor( Qt::black );
       aGroupBoxLayout->addWidget( myMedFile, 0, 1 );
     }
     {
@@ -119,7 +126,10 @@ VisuGUI_InputPane::VisuGUI_InputPane( VISU::VISUType theType,
       myMeshName = new QLineEdit( aGroupBox );
       myMeshName->setReadOnly( true );
       myMeshName->setEnabled( false );
-      myMeshName->setPaletteForegroundColor( Qt::black );
+      QPalette aPal = myMeshName->palette();
+      aPal.setColor( myMeshName->backgroundRole(), Qt::black );
+      myMeshName->setPalette( aPal );
+      //myMeshName->setPaletteForegroundColor( Qt::black );
       aGroupBoxLayout->addWidget( myMeshName, 1, 1 );
     }
     {
@@ -129,7 +139,10 @@ VisuGUI_InputPane::VisuGUI_InputPane( VISU::VISUType theType,
       myEntityName = new QLineEdit( aGroupBox );
       myEntityName->setReadOnly( true );
       myEntityName->setEnabled( false );
-      myEntityName->setPaletteForegroundColor( Qt::black );
+      QPalette aPal = myEntityName->palette();
+      aPal.setColor( myEntityName->backgroundRole(), Qt::black );
+      myEntityName->setPalette( aPal );
+      //myEntityName->setPaletteForegroundColor( Qt::black );
       aGroupBoxLayout->addWidget( myEntityName, 2, 1 );
     }
     {
@@ -160,31 +173,31 @@ VisuGUI_InputPane::VisuGUI_InputPane( VISU::VISUType theType,
   myUseGroupsGroupBox->setCheckable( TRUE );
   {
     QGroupBox* aGroupBox = myUseGroupsGroupBox;
-    aGroupBox->setColumnLayout(0, Qt::Vertical );
-    aGroupBox->layout()->setSpacing( 6 );
-    aGroupBox->layout()->setMargin( 11 );
+    //aGroupBox->setColumnLayout(0, Qt::Vertical );
+    //aGroupBox->layout()->setSpacing( 6 );
+    //aGroupBox->layout()->setMargin( 11 );
 
-    QGridLayout* aGroupBoxLayout = new QGridLayout( aGroupBox->layout() );
+    QGridLayout* aGroupBoxLayout = new QGridLayout( aGroupBox );
     aGroupBoxLayout->setAlignment( Qt::AlignTop );
     {
-      myAllGroups = new VisuGUI_ListBox(aGroupBox, "myAllGroups");
-      myAllGroups->setSelectionMode(QListBox::Extended);
-      aGroupBoxLayout->addMultiCellWidget( myAllGroups, 0, 3, 0, 0 );
+      myAllGroups = new VisuGUI_ListWidget(aGroupBox);
+      myAllGroups->setSelectionMode(QAbstractItemView::ExtendedSelection);
+      aGroupBoxLayout->addWidget( myAllGroups, 0, 0, 4, 1 );
     }
     {
-      mySelectedGroups = new VisuGUI_ListBox(aGroupBox, "mySelectedGroups");
-      mySelectedGroups->setSelectionMode(QListBox::Extended);
+      mySelectedGroups = new VisuGUI_ListWidget(aGroupBox );
+      mySelectedGroups->setSelectionMode(QAbstractItemView::ExtendedSelection);
       mySelectedGroups->installEventFilter(this);
-      aGroupBoxLayout->addMultiCellWidget( mySelectedGroups, 0, 3, 2, 2 );
+      aGroupBoxLayout->addWidget( mySelectedGroups, 0, 2, 4, 1 );
     }
     {
       myAddButton = new QToolButton(aGroupBox);
-      myAddButton->setPixmap( VISU::GetResourceMgr()->loadPixmap("VISU", tr("ICON_ADD")) );
+      myAddButton->setIcon( VISU::GetResourceMgr()->loadPixmap("VISU", tr("ICON_ADD")) );
       aGroupBoxLayout->addWidget( myAddButton, 1, 1 );
     }
     {
       myRemoveButton = new QToolButton(aGroupBox);
-      myRemoveButton->setPixmap( VISU::GetResourceMgr()->loadPixmap("VISU", tr("ICON_REMOVE")) );
+      myRemoveButton->setIcon( VISU::GetResourceMgr()->loadPixmap("VISU", tr("ICON_REMOVE")) );
       aGroupBoxLayout->addWidget( myRemoveButton, 2, 1 );
     }
     {
@@ -201,8 +214,8 @@ VisuGUI_InputPane::VisuGUI_InputPane( VISU::VISUType theType,
   connect( myReInit, SIGNAL( toggled( bool ) ), SLOT( onReInitialize( bool ) ) );
 
   connect( myUseGroupsGroupBox, SIGNAL( toggled( bool ) ), this, SLOT( onTypeChanged() ) );
-  connect( myAllGroups,  SIGNAL( doubleClicked( QListBoxItem* ) ), this, SLOT( onListDoubleClicked( QListBoxItem* ) ) );
-  connect( mySelectedGroups,  SIGNAL( doubleClicked( QListBoxItem* ) ), this, SLOT( onListDoubleClicked( QListBoxItem* ) ) );
+  connect( myAllGroups,  SIGNAL( itemDoubleClicked( QListWidgetItem* ) ), this, SLOT( onListDoubleClicked( QListWidgetItem* ) ) );
+  connect( mySelectedGroups,  SIGNAL( itemDoubleClicked( QListWidgetItem* ) ), this, SLOT( onListDoubleClicked( QListWidgetItem* ) ) );
   connect( myAddButton, SIGNAL(clicked()), this, SLOT(onAdd()));
   connect( myRemoveButton, SIGNAL(clicked()), this, SLOT(onRemove()));
 
@@ -230,9 +243,17 @@ VisuGUI_InputPane::~VisuGUI_InputPane()
   }
 
   // Restore initial selection
-  aSelectionMgr->setSelectedObjects(mySavedSelection);
+  if(isRestoreInitialSelection)
+    aSelectionMgr->setSelectedObjects(mySavedSelection);
+}
+
+void VisuGUI_InputPane::SetRestoreInitialSelection(bool on){
+  isRestoreInitialSelection = on;
 }
 
+bool VisuGUI_InputPane::GetRestoreInitialSelection(){
+  return isRestoreInitialSelection;
+}
 
 //---------------------------------------------------------------
 /*!
@@ -242,7 +263,7 @@ bool VisuGUI_InputPane::eventFilter (QObject* object, QEvent* event)
 {
   if (event->type() == QEvent::KeyPress) {
     QKeyEvent* aKeyEvent = (QKeyEvent*)event;
-    if (object == mySelectedGroups && aKeyEvent->key() == Key_Delete)
+    if (object == mySelectedGroups && aKeyEvent->key() == Qt::Key_Delete)
       onRemove();
   }
   return QObject::eventFilter(object, event);
@@ -276,14 +297,18 @@ void VisuGUI_InputPane::onAdd()
 {
   QStringList aList;
   
-  for (int i = 0; i < myAllGroups->count(); i++)
-    if (myAllGroups->isSelected(i))
-      aList.append(myAllGroups->text(i));
-
+  //for (int i = 0; i < myAllGroups->count(); i++)
+  //  if (myAllGroups->isSelected(i))
+  //    aList.append(myAllGroups->text(i));
+  QList<QListWidgetItem*> aItemList = myAllGroups->selectedItems();
+  QList<QListWidgetItem*>::Iterator it = aItemList.begin();
+  for ( ; it != aItemList.end(); it++ )
+    aList.append( (*it)->text() );  
+  
   for (int i = 0; i < mySelectedGroups->count(); i++)
-    aList.remove(mySelectedGroups->text(i));
+    aList.removeAll(mySelectedGroups->item(i)->text());
     
-  mySelectedGroups->insertStringList(aList);
+  mySelectedGroups->insertItems( mySelectedGroups->count(), aList);
 }
 
 
@@ -293,11 +318,12 @@ void VisuGUI_InputPane::onAdd()
 */
 void VisuGUI_InputPane::onRemove()
 {
-  QPtrList<QListBoxItem> aList;
-  aList.setAutoDelete(false);
-  for (int i = 0; i < mySelectedGroups->count(); i++)
-    if (mySelectedGroups->isSelected(i))
-      aList.append(mySelectedGroups->item(i));
+  QList<QListWidgetItem*> aList = mySelectedGroups->selectedItems();
+  
+  //aList.setAutoDelete(false);
+  //for (int i = 0; i < mySelectedGroups->count(); i++)
+  //  if (mySelectedGroups->isSelected(i))
+  //    aList.append(mySelectedGroups->item(i));
   
   for (int i = 0; i < aList.count(); i++)
     delete aList.at(i);
@@ -308,16 +334,17 @@ void VisuGUI_InputPane::onRemove()
 /*!
   Called when an item of listbox is double-clicked
 */
-void VisuGUI_InputPane::onListDoubleClicked( QListBoxItem* theItem )
+void VisuGUI_InputPane::onListDoubleClicked( QListWidgetItem* theItem )
 {
-  QListBox* aListBox = theItem->listBox();
+  QListWidget* aListWidget = theItem->listWidget();
 
-  if (aListBox == myAllGroups)
+  if (aListWidget == myAllGroups)
     {
-      if (!mySelectedGroups->findItem( theItem->text(), Qt::ExactMatch ))
-       mySelectedGroups->insertItem(theItem->text());
+      QList<QListWidgetItem*> aList = mySelectedGroups->findItems( theItem->text(), Qt::MatchExactly );
+      if ( aList.isEmpty() )
+       mySelectedGroups->insertItem( mySelectedGroups->count(), theItem->text()  );
     }
-  else if (aListBox == mySelectedGroups)
+  else if (aListWidget == mySelectedGroups)
     delete theItem;
 }
 
@@ -388,7 +415,7 @@ void VisuGUI_InputPane::onSelectionChanged()
       if( aRestoringMap["myComment"] == "TIMESTAMP" )
       {
        aTimeStampName = aChildObj->GetName().c_str();
-       myTimeStamps->insertItem( aTimeStampName );
+       myTimeStamps->addItem( aTimeStampName );
       }
     }
 
@@ -405,16 +432,16 @@ void VisuGUI_InputPane::onSelectionChanged()
     myMeshName->setText( aMeshName );
     myEntityName->setText( anEntityName );
     myFieldName->setText( aFieldName );
-    myTimeStamps->setCurrentItem( 0 );
+    myTimeStamps->setCurrentIndex( 0 );
 
     if( myReInit->isChecked() && myPrs )
     {
-      QApplication::setOverrideCursor(Qt::waitCursor);
+      QApplication::setOverrideCursor(Qt::WaitCursor);
 
       myPrs->SetResultObject( myResult );
-      myPrs->SetMeshName( aMeshName.latin1() );
+      myPrs->SetMeshName( aMeshName.toLatin1().data() );
       myPrs->SetEntity( VISU::Entity( myEntity ) );
-      myPrs->SetFieldName( aFieldName.latin1() );
+      myPrs->SetFieldName( aFieldName.toLatin1().data() );
       myPrs->SetTimeStampNumber( myPrs->GetTimeStampNumberByIndex( 0 ) );
       myPrs->Apply( true );
 
@@ -429,7 +456,7 @@ void VisuGUI_InputPane::onSelectionChanged()
 //---------------------------------------------------------------
 void VisuGUI_InputPane::changeTimeStamp( int theTimeStamp )
 {
-  QApplication::setOverrideCursor(Qt::waitCursor);
+  QApplication::setOverrideCursor(Qt::WaitCursor);
 
   myPrs->SetTimeStampNumber( myPrs->GetTimeStampNumberByIndex( theTimeStamp ) );
   myPrs->Apply( true );
@@ -465,7 +492,7 @@ void VisuGUI_InputPane::initFromPrsObject( VISU::ColoredPrs3d_i* thePrs )
   {
     VISU::ColoredPrs3dHolder::TimeStampInfo anInfo = aTimeStampsRange[ index ];
     QString aTime = anInfo.myTime.in();
-    myTimeStamps->insertItem( aTime );
+    myTimeStamps->addItem( aTime );
   }
 
   myResult = thePrs->GetResultObject();
@@ -495,9 +522,9 @@ void VisuGUI_InputPane::initFromPrsObject( VISU::ColoredPrs3d_i* thePrs )
 
   myMeshName->setText( thePrs->GetMeshName() );
   myFieldName->setText( thePrs->GetFieldName() );
-  myTimeStamps->setCurrentItem( thePrs->GetTimeStampIndexByNumber( aTimeStampNumber ) );
+  myTimeStamps->setCurrentIndex( thePrs->GetTimeStampIndexByNumber( aTimeStampNumber ) );
 
-  myFieldFilter->setPrs3dEntry( thePrs->GetHolderEntry() );
+  myFieldFilter->setPrs3dEntry( thePrs->GetHolderEntry().c_str() );
   bool anIsTimeStampFixed = myPrs->IsTimeStampFixed();
   myDataSourceGroupBox->setEnabled(!anIsTimeStampFixed);
   if(!anIsTimeStampFixed)
@@ -514,19 +541,19 @@ void VisuGUI_InputPane::initFromPrsObject( VISU::ColoredPrs3d_i* thePrs )
     VISU::TGroupMap::const_iterator aGroupIter = aGroupMap.begin();
     for(; aGroupIter != aGroupMap.end(); aGroupIter++){
       const std::string& aGroupName = aGroupIter->first;
-      myAllGroups->insertItem(QString(aGroupName));
+      myAllGroups->insertItem( myAllGroups->count(), aGroupName.c_str());
     }
   }
 
   if(myAllGroups->count() < 1){
-    myAllGroups->insertItem( tr("NO_GROUPS") );
+    myAllGroups->insertItem( myAllGroups->count(), tr("NO_GROUPS") );
     myUseGroupsGroupBox->setEnabled(false);
   }else{
     const VISU::ColoredPrs3d_i::TGroupNames& aGroupNames = thePrs->GetGroupNames();
     VISU::ColoredPrs3d_i::TGroupNames::const_iterator anIter = aGroupNames.begin();
     for(; anIter != aGroupNames.end(); anIter++){
       const std::string aGroupName = *anIter;
-      mySelectedGroups->insertItem(QString(aGroupName));
+      mySelectedGroups->insertItem(mySelectedGroups->count(), aGroupName.c_str());
     }      
   }
   myUseGroupsGroupBox->setChecked(mySelectedGroups->count() > 0);
@@ -537,20 +564,19 @@ void VisuGUI_InputPane::initFromPrsObject( VISU::ColoredPrs3d_i* thePrs )
 //---------------------------------------------------------------
 int VisuGUI_InputPane::storeToPrsObject( VISU::ColoredPrs3d_i* thePrs )
 {
-  
   if(myUseGroupsGroupBox->isChecked()){
     thePrs->RemoveAllGeom();
     for(int i = 0; i < mySelectedGroups->count(); i++)
-      thePrs->AddMeshOnGroup(mySelectedGroups->text(i) );
+      thePrs->AddMeshOnGroup(mySelectedGroups->item(i)->text().toLatin1().data() );
   }else
     thePrs->SetSourceGeometry();
   
   thePrs->SetResultObject( myResult );
 
-  thePrs->SetMeshName( myMeshName->text().latin1() );
+  thePrs->SetMeshName( myMeshName->text().toLatin1().data() );
   thePrs->SetEntity( VISU::Entity( myEntity ) );
-  thePrs->SetFieldName( myFieldName->text().latin1() );
-  thePrs->SetTimeStampNumber( thePrs->GetTimeStampNumberByIndex( myTimeStamps->currentItem() ) );
+  thePrs->SetFieldName( myFieldName->text().toLatin1().data() );
+  thePrs->SetTimeStampNumber( thePrs->GetTimeStampNumberByIndex( myTimeStamps->currentIndex() ) );
   return ( int )thePrs->Apply( false );
 }
 
index eea4df6410af2e895026b9d56408a5492b5da479..aa592c6f6fb20594c1804c322acfde96541121fe 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_InputPane.h
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #ifndef VISUGUI_INPUTPANE_H
 #define VISUGUI_INPUTPANE_H
 
 
 #include "SALOME_ListIO.hxx"
 
-#include <qgroupbox.h>
+#include <QGroupBox>
 
 class QCheckBox;
 class QComboBox;
 class QLineEdit;
-class QListBoxItem;
+class QListWidgetItem;
 class QToolButton;
 
 class SalomeApp_Module;
 class LightApp_SelectionMgr;
 
-class VisuGUI_ListBox;
+class VisuGUI_ListWidget;
 class VisuGUI_Prs3dDlg;
 class VisuGUI_FieldFilter;
 
@@ -71,6 +70,8 @@ public:
   int                storeToPrsObject( VISU::ColoredPrs3d_i* );
 
   bool               eventFilter (QObject* object, QEvent* event);
+  void               SetRestoreInitialSelection(bool on);
+  bool               GetRestoreInitialSelection();
 
 public slots:
   virtual void       onSelectionChanged();
@@ -79,7 +80,7 @@ public slots:
 
 private slots:
   void               onTypeChanged();
-  void               onListDoubleClicked( QListBoxItem* theItem );
+  void               onListDoubleClicked( QListWidgetItem* theItem );
   void               onAdd();
   void               onRemove();
 
@@ -89,8 +90,8 @@ private:
   VISU::ColoredPrs3d_i* myPrs;
 
   QGroupBox*         myUseGroupsGroupBox;
-  VisuGUI_ListBox*   myAllGroups;
-  VisuGUI_ListBox*   mySelectedGroups;
+  VisuGUI_ListWidget* myAllGroups;
+  VisuGUI_ListWidget* mySelectedGroups;
   QToolButton*       myAddButton;
   QToolButton*       myRemoveButton;
 
@@ -104,6 +105,7 @@ private:
 
   VISU::Result_var   myResult;
   int                myEntity;
+  bool               isRestoreInitialSelection;
 
   VisuGUI_FieldFilter* myFieldFilter;
   SALOME_ListIO        mySavedSelection;
diff --git a/src/VISUGUI/VisuGUI_InputPanel.cxx b/src/VISUGUI/VisuGUI_InputPanel.cxx
new file mode 100755 (executable)
index 0000000..3f43a36
--- /dev/null
@@ -0,0 +1,141 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
+//  File   : VisuGUI_InputPanel.cxx
+//  Author : Oleg Uvarov
+//  Module : VISU
+//
+#include "VisuGUI_InputPanel.h"
+#include "VisuGUI_BasePanel.h"
+
+#include <QVBoxLayout>
+
+/*!
+ * \brief Constructor creates enmpty docable window with invisible QVBox
+          to be used as container of child widgets
+ */
+VisuGUI_InputPanel::VisuGUI_InputPanel( QWidget* theParent )
+: QtxDockWidget( tr( "WINDOW_TITLE" ), theParent ),
+  myCurrentPanel( 0 )
+{
+  myGrp = new QWidget( this );
+  new QVBoxLayout( myGrp );
+  setWidget( myGrp );
+}
+
+/*!
+ * \brief Destructor: VisuGUI_InputPanel
+ */
+VisuGUI_InputPanel::~VisuGUI_InputPanel()
+{
+}
+
+/*!
+  \brief Shows thePanel in input panel. If there is visible 
+         panel then it is hidden 
+  \param thePanel widget
+*/
+void VisuGUI_InputPanel::showPanel( VisuGUI_BasePanel* thePanel )
+{
+  if ( !thePanel )
+    return;
+
+  setUpdatesEnabled( false );
+
+  if ( myCurrentPanel )
+    myCurrentPanel->hide();
+
+  if( isEmpty() )
+    show();
+
+  if ( !myPanels.contains( thePanel ) )
+  {
+    myPanels.insert( thePanel, true );
+    thePanel->setParent( myGrp );
+    myGrp->layout()->addWidget( thePanel );
+    connect( thePanel, SIGNAL( bpClose() ), this, SLOT( onClosePanel() ) );
+  }
+
+  thePanel->show();
+  myCurrentPanel = thePanel;
+  myPanels[ thePanel ] = true;
+
+  setUpdatesEnabled( true );
+  repaint();
+}
+
+/*!
+  \brief Hides thePanel in input panel. 
+  \param thePanel widget
+*/
+void VisuGUI_InputPanel::hidePanel( VisuGUI_BasePanel* thePanel )
+{
+  if ( !thePanel || myCurrentPanel != thePanel )
+    return;
+
+  thePanel->hide();
+  myCurrentPanel = 0;
+  myPanels[ thePanel ] = false;
+
+  if( isEmpty() )
+    hide();
+}
+
+/*!
+  \brief Hide all children panels
+*/
+void VisuGUI_InputPanel::clear()
+{
+  if ( myCurrentPanel )
+    hidePanel( myCurrentPanel );
+}
+
+/*!
+  \brief Returns true if no panels are shown
+*/
+bool VisuGUI_InputPanel::isEmpty() const
+{
+  QMap<VisuGUI_BasePanel*, bool>::const_iterator it = myPanels.begin(), itEnd = myPanels.end();
+  for( ; it != itEnd; ++it )
+  {
+    if( it.value() )
+      return false;
+  }
+  return true;
+}
+
+/*!
+  \brief Returns true if the panel is shown
+*/
+bool VisuGUI_InputPanel::isShown( VisuGUI_BasePanel* thePanel ) const
+{
+  return myPanels[ thePanel ];
+}
+
+/*!
+  \brief Close panel which emits signal close().
+*/
+void VisuGUI_InputPanel::onClosePanel()
+{
+  if( VisuGUI_BasePanel* aPanel = dynamic_cast<VisuGUI_BasePanel*>( sender() ) )
+    hidePanel( aPanel );
+}
diff --git a/src/VISUGUI/VisuGUI_InputPanel.h b/src/VISUGUI/VisuGUI_InputPanel.h
new file mode 100755 (executable)
index 0000000..c40029c
--- /dev/null
@@ -0,0 +1,66 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
+//  File   : VisuGUI_InputPanel.cxx
+//  Author : Oleg Uvarov
+//  Module : VISU
+//
+#ifndef VISUGUI_INPUTPANEL_H
+#define VISUGUI_INPUTPANEL_H
+
+#include <QtxDockWidget.h>
+
+#include <QMap>
+
+class VisuGUI_BasePanel;
+
+/*!
+ * class VisuGUI_InputPanel
+ * Dockable window. Container for GUI controls
+ */
+class VisuGUI_InputPanel : public QtxDockWidget
+{
+  Q_OBJECT
+  
+public:
+  VisuGUI_InputPanel( QWidget* theParent = 0 );
+  virtual ~VisuGUI_InputPanel();
+
+  void showPanel( VisuGUI_BasePanel* thePanel );
+  void hidePanel( VisuGUI_BasePanel* thePanel );
+  void clear();
+
+  bool isEmpty() const;
+  bool isShown( VisuGUI_BasePanel* thePanel ) const;
+
+protected slots:
+  void onClosePanel();
+
+private:
+  QWidget* myGrp;
+  QMap<VisuGUI_BasePanel*, bool> myPanels;
+  VisuGUI_BasePanel* myCurrentPanel;
+};
+
+#endif
+
+
index 17a5e38387404527ce4792109eaa618d03f41a79..76e48c213eba76b8b28668404861c228e948f7fb 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_IsoSurfacesDlg.cxx
 //  Author : Laurent CORNABE & Hubert ROLLAND
 //  Module : VISU
 #include "VisuGUI_Tools.h"
 #include "VisuGUI_InputPane.h"
 
-#include "VISU_ColoredPrs3dFactory.hh"
+#include <VISU_ColoredPrs3dFactory.hh>
 
-#include "LightApp_Application.h"
+#include <LightApp_Application.h>
 
-#include "SUIT_Desktop.h"
-#include "SUIT_Session.h"
-#include "SUIT_MessageBox.h"
-#include "SUIT_ResourceMgr.h"
+#include <QtxColorButton.h>
+#include <SUIT_Desktop.h>
+#include <SUIT_Session.h>
+#include <SUIT_MessageBox.h>
+#include <SUIT_ResourceMgr.h>
 
 #include <limits.h>
 
-#include <qlayout.h>
-#include <qvalidator.h>
-#include <qtabwidget.h>
+#include <QLayout>
+#include <QValidator>
+#include <QLabel>
+#include <QGroupBox>
+#include <QSpinBox>
+#include <QPushButton>
+#include <QCheckBox>
+#include <QLineEdit>
+#include <QTabWidget>
+#include <QKeyEvent>
+#include <QColorDialog>
 
 using namespace std;
 
-
 VisuGUI_IsoSurfPane::VisuGUI_IsoSurfPane (QWidget* parent,
                                          VisuGUI_ScalarBarPane* theScalarPane)
-  : QVBox(parent),
+  : QWidget(parent),
     myScalarPane(theScalarPane)
 {
-  QFrame* TopGroup = new QFrame( this, "TopGroup" );
+  QVBoxLayout* aMainLayout = new QVBoxLayout( this );
+  QFrame* TopGroup = new QFrame( this );
+  aMainLayout->addWidget( TopGroup );
+  
   TopGroup->setFrameStyle(QFrame::Box | QFrame::Sunken);
   TopGroup->setLineWidth(1);
 
@@ -64,15 +74,18 @@ VisuGUI_IsoSurfPane::VisuGUI_IsoSurfPane (QWidget* parent,
   TopGroupLayout->setSpacing( 6 );
   TopGroupLayout->setMargin( 11 );
 
-  QLabel* LabelNbr = new QLabel (tr("NB_SURFACES"), TopGroup, "LabelNbr");
+  QLabel* LabelNbr = new QLabel (tr("NB_SURFACES"), TopGroup);
   TopGroupLayout->addWidget( LabelNbr, 0, 0 );
-  NbrIso = new QSpinBox( 1, 100, 1, TopGroup, "NbrIso" );
+  NbrIso = new QSpinBox( TopGroup );
+  NbrIso->setMaximum( 100 );
+  NbrIso->setMinimum( 1 );
+  NbrIso->setSingleStep( 1 );
   NbrIso->setValue( 1 );
   TopGroupLayout->addWidget( NbrIso, 0, 1 );
 
-  QLabel* LabelMin = new QLabel (tr("MIN_VALUE"), TopGroup, "LabelMin");
+  QLabel* LabelMin = new QLabel (tr("MIN_VALUE"), TopGroup );
   TopGroupLayout->addWidget(LabelMin, 1, 0);
-  //MinIso = new QtxDblSpinBox( -DBL_MAX, DBL_MAX, 0.1, TopGroup );
+  //MinIso = new QtxDoubleSpinBox( -DBL_MAX, DBL_MAX, 0.1, TopGroup );
   MinIso = new QLineEdit( TopGroup );
   MinIso->setValidator( new QDoubleValidator(TopGroup) );
   MinIso->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
@@ -80,7 +93,7 @@ VisuGUI_IsoSurfPane::VisuGUI_IsoSurfPane (QWidget* parent,
   LabelMin->setBuddy(MinIso);
   TopGroupLayout->addWidget( MinIso, 1, 1 );
 
-  QLabel* LabelMax = new QLabel (tr("MAX_VALUE"), TopGroup, "LabelMax");
+  QLabel* LabelMax = new QLabel (tr("MAX_VALUE"), TopGroup );
   TopGroupLayout->addWidget( LabelMax, 2, 0 );
   //MaxIso = new QtxSpinBoxDbl( -DBL_MAX, DBL_MAX, 0.1, TopGroup );
   MaxIso = new QLineEdit( TopGroup );
@@ -90,9 +103,31 @@ VisuGUI_IsoSurfPane::VisuGUI_IsoSurfPane (QWidget* parent,
   LabelMax->setBuddy(MaxIso);
   TopGroupLayout->addWidget( MaxIso, 2, 1 );
 
+  myUseMagnitude = new QCheckBox(tr("MAGNITUDE_COLORING_CHK"), TopGroup);
+  myUseMagnitude->setChecked(true);
+  TopGroupLayout->addWidget( myUseMagnitude, 3, 0 );
+
+  mySelColor = new QtxColorButton( TopGroup );
+  mySelColor->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+  TopGroupLayout->addWidget( mySelColor, 3, 1 );
+  //connect( mySelColor, SIGNAL( clicked() ), this, SLOT( setColor() ) );
+  connect( myUseMagnitude, SIGNAL( toggled(bool) ), mySelColor, SLOT( setDisabled(bool) ) );
+
+  myUseLabels = new QCheckBox(tr("SHOW_VALUES_CHK"), TopGroup);
+  myUseLabels->setChecked(false);
+  TopGroupLayout->addWidget( myUseLabels, 4, 0 );
+  myNbLabels = new QSpinBox( TopGroup );
+  myNbLabels->setMinimum(1);
+  myNbLabels->setMaximum(100);
+  myNbLabels->setSingleStep(1);
+  myNbLabels->setEnabled(false);
+  TopGroupLayout->addWidget( myNbLabels, 4, 1 );
+  connect( myUseLabels, SIGNAL( toggled(bool) ), myNbLabels, SLOT( setEnabled(bool) ) );
+
   QPushButton* aUpdateBtn = new QPushButton( "Update scalar bar range with these values", TopGroup);
-  TopGroupLayout->addMultiCellWidget( aUpdateBtn, 3, 3, 0, 1);
+  TopGroupLayout->addWidget( aUpdateBtn, 5, 0, 1, 2);
   connect( aUpdateBtn, SIGNAL( clicked() ), this, SLOT(onCBUpdate() ) );
+  mySelColor->setEnabled( !myUseMagnitude->isChecked() );
 }
 
 void VisuGUI_IsoSurfPane::initFromPrsObject (VISU::IsoSurfaces_i* thePrs)
@@ -100,12 +135,30 @@ void VisuGUI_IsoSurfPane::initFromPrsObject (VISU::IsoSurfaces_i* thePrs)
   NbrIso->setValue(thePrs->GetNbSurfaces());
   MinIso->setText(QString::number(thePrs->GetSubMin()));
   MaxIso->setText(QString::number(thePrs->GetSubMax()));
+  myUseMagnitude->setChecked(thePrs->IsColored());
+  SALOMEDS::Color anOldColor = thePrs->GetColor();
+  QColor aColor = QColor(int(255*anOldColor.R),int(255*anOldColor.G),int(255*anOldColor.B));
+  setColor(aColor);
+
+  myUseLabels->setChecked(thePrs->IsLabeled());
+  myNbLabels->setValue(thePrs->GetNbLabels());
+  mySelColor->setEnabled( !myUseMagnitude->isChecked() );
 }
 
 int VisuGUI_IsoSurfPane::storeToPrsObject (VISU::IsoSurfaces_i* thePrs)
 {
   thePrs->SetNbSurfaces(NbrIso->value());
   thePrs->SetSubRange(MinIso->text().toDouble(), MaxIso->text().toDouble());
+  thePrs->ShowLabels(myUseLabels->isChecked(), myNbLabels->value());
+  thePrs->ShowColored(myUseMagnitude->isChecked());
+  if(!thePrs->IsColored()){
+    QColor aQColor = color();
+    SALOMEDS::Color aColor;
+    aColor.R = aQColor.red()/255.;
+    aColor.G = aQColor.green()/255.;
+    aColor.B = aQColor.blue()/255.;
+    thePrs->SetColor(aColor);
+  }
   return 1;
 }
 
@@ -117,17 +170,34 @@ void VisuGUI_IsoSurfPane::onCBUpdate()
 bool VisuGUI_IsoSurfPane::check()
 {
   if (MinIso->text().toDouble() >= MaxIso->text().toDouble()) {
-    MESSAGE(tr("MSG_MINMAX_VALUES"));
-    SUIT_MessageBox::warn1( this,tr("WRN_VISU"),
-                           tr("MSG_MINMAX_VALUES"),
-                           tr("BUT_OK"));
+    MESSAGE(tr("MSG_MINMAX_VALUES").toLatin1().data());
+    SUIT_MessageBox::warning( this,tr("WRN_VISU"),
+                              tr("MSG_MINMAX_VALUES"),
+                              tr("BUT_OK"));
     return false;
   }
   return true;
 }
 
+void VisuGUI_IsoSurfPane::setColor()
+{
+  QColor cnew = QColorDialog::getColor( color(), this );
+  if ( cnew.isValid() )
+    setColor(cnew);
+}
 
+void VisuGUI_IsoSurfPane::setColor( const QColor& theColor)
+{
+  /*  QPalette pal = mySelColor->palette();
+  pal.setColor(mySelColor->backgroundRole(), theColor);
+  mySelColor->setPalette(pal);*/
+  mySelColor->setColor( theColor );
+}
 
+QColor VisuGUI_IsoSurfPane::color() const
+{
+  return mySelColor->color();
+}
 
 
 /*!
@@ -136,7 +206,7 @@ bool VisuGUI_IsoSurfPane::check()
 VisuGUI_IsoSurfacesDlg::VisuGUI_IsoSurfacesDlg (SalomeApp_Module* theModule)
   : VisuGUI_ScalarBarBaseDlg(theModule)
 {
-  setCaption(tr("DEFINE_ISOSURFACES"));
+  setWindowTitle(tr("DEFINE_ISOSURFACES"));
   setSizeGripEnabled( TRUE );
 
   QVBoxLayout* TopLayout = new QVBoxLayout(this);
@@ -145,7 +215,8 @@ VisuGUI_IsoSurfacesDlg::VisuGUI_IsoSurfacesDlg (SalomeApp_Module* theModule)
 
   myTabBox = new QTabWidget(this);
   myIsoPane = new  VisuGUI_IsoSurfPane(this, GetScalarPane());
-  myIsoPane->setMargin( 5 );
+  if ( myIsoPane->layout() )
+    myIsoPane->layout()->setMargin( 5 );
   myTabBox->addTab(myIsoPane, "Iso Surface");
   myInputPane = new VisuGUI_InputPane(VISU::TISOSURFACES, theModule, this);
   myTabBox->addTab(GetScalarPane(), "Scalar Bar");
@@ -153,25 +224,25 @@ VisuGUI_IsoSurfacesDlg::VisuGUI_IsoSurfacesDlg (SalomeApp_Module* theModule)
 
   TopLayout->addWidget(myTabBox);
 
-  QGroupBox* GroupButtons = new QGroupBox( this, "GroupButtons" );
+  QGroupBox* GroupButtons = new QGroupBox( this );
   GroupButtons->setGeometry( QRect( 10, 10, 281, 48 ) );
-  GroupButtons->setColumnLayout(0, Qt::Vertical );
-  GroupButtons->layout()->setSpacing( 0 );
-  GroupButtons->layout()->setMargin( 0 );
-  QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons->layout() );
+  //GroupButtons->setColumnLayout(0, Qt::Vertical );
+  //GroupButtons->layout()->setSpacing( 0 );
+  //GroupButtons->layout()->setMargin( 0 );
+  QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons );
   GroupButtonsLayout->setAlignment( Qt::AlignTop );
   GroupButtonsLayout->setSpacing( 6 );
   GroupButtonsLayout->setMargin( 11 );
 
-  QPushButton* buttonOk = new QPushButton( tr( "&OK" ), GroupButtons, "buttonOk" );
+  QPushButton* buttonOk = new QPushButton( tr( "BUT_OK" ), GroupButtons );
   buttonOk->setAutoDefault( TRUE );
   buttonOk->setDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonOk, 0, 0 );
   GroupButtonsLayout->addItem( new QSpacerItem( 5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 1 );
-  QPushButton* buttonCancel = new QPushButton( tr( "&Cancel" ) , GroupButtons, "buttonCancel" );
+  QPushButton* buttonCancel = new QPushButton( tr( "BUT_CANCEL" ) , GroupButtons );
   buttonCancel->setAutoDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonCancel, 0, 2 );
-  QPushButton* buttonHelp = new QPushButton( tr( "&Help" ) , GroupButtons, "buttonHelp" );
+  QPushButton* buttonHelp = new QPushButton( tr( "BUT_HELP" ) , GroupButtons );
   buttonHelp->setAutoDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonHelp, 0, 3 );
 
@@ -206,14 +277,14 @@ void VisuGUI_IsoSurfacesDlg::initFromPrsObject( VISU::ColoredPrs3d_i* thePrs,
     return;
 
   myInputPane->initFromPrsObject( myPrsCopy );
-  myTabBox->setCurrentPage( 0 );
+  myTabBox->setCurrentIndex( 0 );
 }
 
 int VisuGUI_IsoSurfacesDlg::storeToPrsObject(VISU::ColoredPrs3d_i* thePrs)
 {
   if(!myInputPane->check() || !GetScalarPane()->check())
     return 0;
-
+  
   int anIsOk = myInputPane->storeToPrsObject( myPrsCopy );
   anIsOk &= GetScalarPane()->storeToPrsObject( myPrsCopy );
   anIsOk &= myIsoPane->storeToPrsObject( myPrsCopy );
index 70ced751572c4894759eda643fb4cc6c37585036..fd7b234b90d5c2532d5c993b39dc1aa84058cd1f 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_IsoSurfacesDlg.h
 //  Author : Laurent CORNABE & Hubert ROLLAND
 //  Module : VISU
 
 #include "VisuGUI_Prs3dDlg.h"
 
-#include <qdialog.h>
-#include <qlabel.h>
-#include <qgroupbox.h>
-#include <qspinbox.h>
-#include <qpushbutton.h>
-#include <qcheckbox.h>
-#include <qlineedit.h>
-#include <qtabwidget.h>
+class QTabWidget;
+class QLineEdit;
+class QSpinBox;
+class QtxColorButton;
 
 namespace VISU 
 {
@@ -48,11 +43,11 @@ namespace VISU
 class SalomeApp_Module;
 class VisuGUI_InputPane;
 
-class VisuGUI_IsoSurfPane : public QVBox
+class VisuGUI_IsoSurfPane : public QWidget
 {
   Q_OBJECT;
 
- public:
+public:
   VisuGUI_IsoSurfPane (QWidget* parent,
                       VisuGUI_ScalarBarPane* theScalarPane);
   ~VisuGUI_IsoSurfPane() {};
@@ -62,13 +57,21 @@ class VisuGUI_IsoSurfPane : public QVBox
 
   bool check();
 
- protected slots:
-  void onCBUpdate();
+  void setColor(const QColor& theColor);
+  QColor color() const;
 
- private:
-  QLineEdit* MinIso;
-  QLineEdit* MaxIso;
-  QSpinBox*  NbrIso;
+protected slots:
+  void onCBUpdate();
+  void setColor();
+
+private:
+  QLineEdit*      MinIso;
+  QLineEdit*      MaxIso;
+  QSpinBox*       NbrIso;
+  QCheckBox*      myUseMagnitude;
+  QtxColorButton* mySelColor;
+  QCheckBox*      myUseLabels;
+  QSpinBox*       myNbLabels;
   VisuGUI_ScalarBarPane* myScalarPane;
 };
 
@@ -77,7 +80,7 @@ class VisuGUI_IsoSurfacesDlg : public VisuGUI_ScalarBarBaseDlg
 {
   Q_OBJECT;
 
- public:
+public:
   VisuGUI_IsoSurfacesDlg (SalomeApp_Module* theModule);
   ~VisuGUI_IsoSurfacesDlg();
 
@@ -86,13 +89,13 @@ class VisuGUI_IsoSurfacesDlg : public VisuGUI_ScalarBarBaseDlg
 
   virtual int storeToPrsObject(VISU::ColoredPrs3d_i* thePrs);
 
- protected:
+protected:
   virtual QString  GetContextHelpFilePath();
 
  protected slots:
   void accept();
 
- private:
+private:
   QTabWidget*            myTabBox;
   VisuGUI_IsoSurfPane*   myIsoPane;
   VisuGUI_InputPane*     myInputPane;
index 81ed8c63a4bc80373a40fabea2095c32d4a0b5d1..d515cd4f15cf1174b6224c8c88a6a46636dc0abe 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_Module.cxx
 //  Author : Laurent CORNABE
 //  Module : VISU
 //  $Header$
-
+//
 #include "VisuGUI_Module.h"
 
 #include "QtxPopupMgr.h"
@@ -38,7 +37,7 @@
 
 #include "CAM_Module.h"
 
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 #include "SalomeApp_Application.h"
 #include "LightApp_SelectionMgr.h"
 #include "LightApp_VTKSelector.h"
 #include "SALOMEDSClient_ClientFactory.hxx"
 #include "SALOMEDSClient_IParameters.hxx"
 
-#include "VVTK_ViewManager.h"
-#include "VVTK_ViewWindow.h"
-#include "VVTK_ViewModel.h"
+//#include "VVTK_ViewManager.h"
+//#include "VVTK_ViewWindow.h"
+//#include "VVTK_ViewModel.h"
 
 #include "SVTK_ViewModel.h"
 #include "SVTK_ViewManager.h"
-#include "SVTK_MainWindow.h"
+#include "SVTK_ViewWindow.h"
 #include "SVTK_RenderWindowInteractor.h"
 #include "VISU_Event.h"
 
@@ -65,8 +64,6 @@
 #include "VISU_GaussPtsAct.h"
 #include "VisuGUI_GaussPointsDlg.h"
 
-#include "VisuGUI_Slider.h"
-
 #include "VISU_Gen_i.hh"
 #include "VISU_Result_i.hh"
 #include "VISU_CutLines_i.hh"
@@ -81,7 +78,7 @@
 #include "VISU_SphereWidget.hxx"
 
 #include "SalomeApp_Study.h"
-#include "VVTK_MainWindow.h"
+//#include "VVTK_MainWindow.h"
 #include "VISU_View_i.hh"
 
 #ifndef DISABLE_VTKVIEWER
 #endif
 #endif
 
-#include <qaction.h>
+#include <QAction>
 
 #include <vtkRenderer.h>
 #include <vtkCamera.h>
 
 #include <sstream>
 
+
 #ifdef _DEBUG_
 static int MYDEBUG = 0;
 #else
@@ -147,6 +145,8 @@ static int MYDEBUG = 0;
 #define GAUSS_RESTORE_CONFIGURATION    5702
 #define GAUSS_RENAME_CONFIGURATION     5703
 
+using namespace std;
+
 void
 CreateCurves( SalomeApp_Module* theModule,
               VISU::CutLines_i* thePrs,
@@ -159,17 +159,17 @@ namespace VISU
 {
   //---------------------------------------------------------------
   typedef void (SUIT_ViewWindow::* TViewVisibility)();
-  void
-  SetViewVisibility(SalomeApp_Application* app,
-                   TViewVisibility theViewVisibility)
+  void SetViewVisibility(SalomeApp_Application* app,
+                        TViewVisibility theViewVisibility)
   {
     ViewManagerList l;
-    app->viewManagers( VVTK_Viewer::Type(), l );
+    //app->viewManagers( VVTK_Viewer::Type(), l );
+    app->viewManagers( SVTK_Viewer::Type(), l );
     ViewManagerList::const_iterator anIt = l.begin(), aLast = l.end();
     for( ; anIt!=aLast; anIt++ )
       if( SUIT_ViewManager* aViewManager = *anIt )
       {
-       QPtrVector<SUIT_ViewWindow> aViews = aViewManager->getViews();
+       QVector<SUIT_ViewWindow*> aViews = aViewManager->getViews();
        int aSize = aViews.size();
        for(int anId = 0; anId < aSize; anId++)
        {
@@ -181,74 +181,70 @@ namespace VISU
 }
 
 //---------------------------------------------------------------
-VisuGUI_Module::
-VisuGUI_Module() : 
+VisuGUI_Module::VisuGUI_Module() : 
   VisuGUI()
 {
 }
 
 
 //---------------------------------------------------------------
-VisuGUI_Module::
-~VisuGUI_Module()
+VisuGUI_Module::~VisuGUI_Module()
 {
 }
 
 
 //---------------------------------------------------------------
-void
-VisuGUI_Module::
-initialize( CAM_Application* theApp )
+void VisuGUI_Module::initialize( CAM_Application* theApp )
 {
   VisuGUI::initialize( theApp );
 
   SUIT_ResourceMgr* aResourceMgr = SUIT_Session::session()->resourceMgr();
 
   // "Save VISU State" command is moved from SalomeApp_Applicaiton
-  createAction( SAVE_VISU_STATE, tr( "TOT_DESK_FILE_SAVE_GUI_STATE" ), QIconSet(),
+  createAction( SAVE_VISU_STATE, tr( "TOT_DESK_FILE_SAVE_GUI_STATE" ), QIcon(),
                tr( "MEN_DESK_FILE_SAVE_GUI_STATE" ), tr( "PRP_DESK_FILE_SAVE_GUI_STATE" ),
                0, getApp()->desktop(), false, getApp(), SLOT( onSaveGUIState() ) );
   int fileMenu = createMenu( tr( "MEN_DESK_FILE" ), -1 );
-  createMenu( SAVE_VISU_STATE, fileMenu, 9, -1 ); 
-  
+  createMenu( SAVE_VISU_STATE, fileMenu, 9, -1 );
+
   QPixmap aPixmap;
-  aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_GAUSS_NEW_VIEWER"));
+  /*  aPixmap = aResourceMgr->loadPixmap("VISU",tr("ICON_GAUSS_NEW_VIEWER"));
   createAction( GAUSS_NEW_VIEWER, 
                tr("MEN_GAUSS_NEW_VIEWER"), 
                aPixmap,
-                tr("MEN_GAUSS_NEW_VIEWER"), 
+                tr("MEN_GAUSS_NEW_VIEWER"),
                tr("MEN_GAUSS_NEW_VIEWER"),
-               ALT+Key_S, 
-               this, 
+               Qt::ALT+Qt::Key_S,
+               this,
                false,
-                this, 
+                this,
                SLOT(onCreateViewManager()));
   int windowMenu = createMenu( tr( "MEN_DESK_WINDOW" ), -1, 100 );
   int newWinMenu = createMenu( tr( "MEN_DESK_NEWWINDOW" ), windowMenu, -1, 0 );
   createMenu( action( GAUSS_NEW_VIEWER ), newWinMenu, -1 );
-
+  */
   // Add actions to menus
   createMenu( tr( "MEN_GAUSS" ), -1, -1, 30 );
   //createMenu( GAUSS_CREATE_PRS, aMenuId, 10 );
 
-  QString aViewerType = VVTK_Viewer::Type();
+  QString aViewerType = SVTK_Viewer::Type();
   SUIT_Accel* accel = getApp()->accel();
-  accel->setActionKey( SUIT_Accel::PanLeft, Key_Left, aViewerType );
-  accel->setActionKey( SUIT_Accel::PanRight, Key_Right, aViewerType );
-  accel->setActionKey( SUIT_Accel::PanUp, Key_Up, aViewerType );
-  accel->setActionKey( SUIT_Accel::PanDown, Key_Down, aViewerType );
-  accel->setActionKey( SUIT_Accel::ZoomIn, Key_PageUp, aViewerType );
-  accel->setActionKey( SUIT_Accel::ZoomOut, Key_PageDown, aViewerType );
-  accel->setActionKey( SUIT_Accel::RotateLeft, CTRL+Key_Left, aViewerType );
-  accel->setActionKey( SUIT_Accel::RotateRight, CTRL+Key_Right, aViewerType );
-  accel->setActionKey( SUIT_Accel::RotateUp, CTRL+Key_Up, aViewerType );
-  accel->setActionKey( SUIT_Accel::RotateDown, CTRL+Key_Down, aViewerType );
-  accel->setActionKey( SVTK::PlusSpeedIncrementEvent, Key_Plus, aViewerType );
-  accel->setActionKey( SVTK::MinusSpeedIncrementEvent, Key_Minus, aViewerType );
-
+  accel->setActionKey( SUIT_Accel::PanLeft, Qt::Key_Left, aViewerType );
+  accel->setActionKey( SUIT_Accel::PanRight, Qt::Key_Right, aViewerType );
+  accel->setActionKey( SUIT_Accel::PanUp, Qt::Key_Up, aViewerType );
+  accel->setActionKey( SUIT_Accel::PanDown, Qt::Key_Down, aViewerType );
+  accel->setActionKey( SUIT_Accel::ZoomIn, Qt::Key_PageUp, aViewerType );
+  accel->setActionKey( SUIT_Accel::ZoomOut, Qt::Key_PageDown, aViewerType );
+  accel->setActionKey( SUIT_Accel::RotateLeft, Qt::CTRL+Qt::Key_Left, aViewerType );
+  accel->setActionKey( SUIT_Accel::RotateRight, Qt::CTRL+Qt::Key_Right, aViewerType );
+  accel->setActionKey( SUIT_Accel::RotateUp, Qt::CTRL+Qt::Key_Up, aViewerType );
+  accel->setActionKey( SUIT_Accel::RotateDown, Qt::CTRL+Qt::Key_Down, aViewerType );
+  accel->setActionKey( SVTK::PlusSpeedIncrementEvent, Qt::Key_Plus, aViewerType );
+  accel->setActionKey( SVTK::MinusSpeedIncrementEvent, Qt::Key_Minus, aViewerType );
+  
   connect( getApp(), SIGNAL( viewManagerAdded( SUIT_ViewManager* ) ),
            this, SLOT( OnViewManagerAdded (SUIT_ViewManager*) ) );
-
+  
   // Prepare popup menus
   QtxPopupMgr* mgr = popupMgr();
   QString aRule;
@@ -258,43 +254,40 @@ initialize( CAM_Application* theApp )
                 tr("MEN_GAUSS_CREATE_PRS"), "", 0, this, false,
                 this, SLOT(OnCreateGaussPoints()));
   mgr->insert( action( GAUSS_CREATE_PRS ), -1, 0, -1 );
-  mgr->setRule( action( GAUSS_CREATE_PRS ), 
+  mgr->setRule( action( GAUSS_CREATE_PRS ),
                "client='ObjectBrowser' and selcount=1 "
                "and type in {'VISU::TTIMESTAMP' 'VISU::TFIELD'} "
                "and $medEntity in {'EDGE_ENTITY' 'FACE_ENTITY' 'CELL_ENTITY'} "
-               "and $medSource in {'eImportFile' 'eCopyAndImportFile'} ",
-               true );
+               "and $medSource in {'eImportFile' 'eCopyAndImportFile'}" );
 
   createMenu( action( GAUSS_CREATE_PRS ), createMenu( tr( "MEN_VISUALISATION" ), -1 ), -1 );
   createTool( GAUSS_CREATE_PRS, createTool( tr( "TOOL_VISUALISATION" ) ), -1 );
 
-  createAction( GAUSS_RENAME, VisuGUI::tr("MEN_RENAME"), QIconSet(),
+  createAction( GAUSS_RENAME, VisuGUI::tr("MEN_RENAME"), QIcon(),
                 VisuGUI::tr("MEN_RENAME"), "", 0, this, false,
                 this, SLOT(OnRename()));
   mgr->insert( action( GAUSS_RENAME ), -1, 0, -1 );
-  mgr->setRule( action( GAUSS_RENAME ), 
-               "selcount=1 and type='VISU::TGAUSSPOINTS'", 
-               true );
+  mgr->setRule( action( GAUSS_RENAME ),
+    "selcount=1 and type='VISU::TGAUSSPOINTS'" );
 
-  createAction( GAUSS_EDIT_PRS, VisuGUI::tr("MEN_EDIT_PRS"), QIconSet(),
+  createAction( GAUSS_EDIT_PRS, VisuGUI::tr("MEN_EDIT_PRS"), QIcon(),
                 VisuGUI::tr("MEN_EDIT_PRS"), "", 0, this, false,
                 this, SLOT(OnEditGaussPoints()));
   mgr->insert( action( GAUSS_EDIT_PRS ), -1, 0, -1 );
-  mgr->setRule( action( GAUSS_EDIT_PRS ), 
-               "selcount=1 and type='VISU::TGAUSSPOINTS'", 
-               true );
+  mgr->setRule( action( GAUSS_EDIT_PRS ),
+    "selcount=1 and type='VISU::TGAUSSPOINTS'" );
 
-  createAction( GAUSS_COPY_PRS, VisuGUI::tr("MEN_COPY_PRS"), QIconSet(),
+  createAction( GAUSS_COPY_PRS, VisuGUI::tr("MEN_COPY_PRS"), QIcon(),
                 VisuGUI::tr("MEN_COPY_PRS"), "", 0, this, false,
                 this, SLOT(OnCopyPresentation()));
   mgr->insert( action( GAUSS_COPY_PRS ), -1, 0, -1 );
-  mgr->setRule( action( GAUSS_COPY_PRS ), 
-               "selcount=1 and type='VISU::TGAUSSPOINTS'", 
-               true );
+  mgr->setRule( action( GAUSS_COPY_PRS ),
+    "selcount=1 and type='VISU::TGAUSSPOINTS'" );
+
   action( GAUSS_COPY_PRS )->setEnabled(false);
 
   QStringList viewers;
-  
+
 #ifndef DISABLE_OCCVIEWER
 #ifndef DISABLE_SALOMEOBJECT
   viewers.append( SOCC_Viewer::Type() );
@@ -305,7 +298,7 @@ initialize( CAM_Application* theApp )
 #ifndef DISABLE_VTKVIEWER
 #ifndef DISABLE_SALOMEOBJECT
   viewers.append( SVTK_Viewer::Type() );
-  viewers.append( VVTK_Viewer::Type() );
+  //viewers.append( VVTK_Viewer::Type() );
 #else
   viewers.append( VTKViewer_Viewer::Type() );
 #endif
@@ -325,115 +318,109 @@ initialize( CAM_Application* theApp )
       for( ; anIt!=aLast; anIt++ )
         strViewers+=temp.arg( *anIt );
       strViewers+="}";
-      mgr->setRule( action(myEraseAll), QString( "client in %1" ).arg( strViewers ), true );
+      mgr->setRule( action(myEraseAll), QString( "client in %1" ).arg( strViewers ) );
     }
 
   aRule = "(selcount>0 and type='VISU::TGAUSSPOINTS')";
 
-  createAction( GAUSS_ERASE_PRS, VisuGUI::tr("MEN_HIDE"), QIconSet(),
+  createAction( GAUSS_ERASE_PRS, VisuGUI::tr("MEN_HIDE"), QIcon(),
                 VisuGUI::tr("MEN_HIDE"), "", 0, this, false,
                 this, SLOT(OnErasePrs()));
   mgr->insert( action( GAUSS_ERASE_PRS ), -1, -1, -1 ); // erase
-  mgr->setRule( action( GAUSS_ERASE_PRS ), 
-               aRule + " and ({true} in $canBeDisplayed) and (isVisible=true)", true );
+  mgr->setRule( action( GAUSS_ERASE_PRS ),
+    aRule + " and ({true} in $canBeDisplayed) and (isVisible=true)" );
 
-  createAction( GAUSS_DISPLAY_PRS, VisuGUI::tr("MEN_SHOW"), QIconSet(),
+  createAction( GAUSS_DISPLAY_PRS, VisuGUI::tr("MEN_SHOW"), QIcon(),
                 VisuGUI::tr("MEN_SHOW"), "", 0, this, false,
                 this, SLOT(OnDisplayPrs()));
   mgr->insert( action( GAUSS_DISPLAY_PRS ), -1, -1, -1 ); // display
-  mgr->setRule( action( GAUSS_DISPLAY_PRS ), 
-               aRule + " and ({true} in $canBeDisplayed) and (isVisible=false)", true );
+  mgr->setRule( action( GAUSS_DISPLAY_PRS ),
+    aRule + " and ({true} in $canBeDisplayed) and (isVisible=false)" );
 
-  createAction( GAUSS_DISPLAY_ONLY_PRS, VisuGUI::tr("MEN_DISPLAY_ONLY"), QIconSet(),
+  createAction( GAUSS_DISPLAY_ONLY_PRS, VisuGUI::tr("MEN_DISPLAY_ONLY"), QIcon(),
                 VisuGUI::tr("MEN_DISPLAY_ONLY"), "", 0, this, false,
                 this, SLOT(OnDisplayOnlyPrs()));
   mgr->insert( action( GAUSS_DISPLAY_ONLY_PRS ), -1, -1, -1 ); // display only
-  mgr->setRule( action( GAUSS_DISPLAY_ONLY_PRS ), 
-               aRule + " and ({true} in $canBeDisplayed)", true );
+  mgr->setRule( action( GAUSS_DISPLAY_ONLY_PRS ),
+    aRule + " and ({true} in $canBeDisplayed)" );
 
-  createAction( GAUSS_RENAME_CONFIGURATION, VisuGUI::tr("MEN_RENAME"), QIconSet(), 
+  createAction( GAUSS_RENAME_CONFIGURATION, VisuGUI::tr("MEN_RENAME"), QIcon(),
                VisuGUI::tr("MEN_RENAME"), "", 0, this, false,
                 this, SLOT(OnRename()));
   mgr->insert( action( GAUSS_RENAME_CONFIGURATION ), -1, -1, -1 );
-  mgr->setRule( action( GAUSS_RENAME_CONFIGURATION ), "selcount=1 and type='VISU::TGAUSSVIEW'", true );
+  mgr->setRule( action( GAUSS_RENAME_CONFIGURATION ), "selcount=1 and type='VISU::TGAUSSVIEW'" );
 
-  createAction( GAUSS_SAVE_CONFIGURATION, tr("MEN_SAVE_CONFIGURATION"), QIconSet(),
+  createAction( GAUSS_SAVE_CONFIGURATION, tr("MEN_SAVE_CONFIGURATION"), QIcon(),
                 tr("MEN_SAVE_CONFIGURATION"), "", 0, this, false,
                 this, SLOT(OnSaveConfiguration()));
   mgr->insert( action( GAUSS_SAVE_CONFIGURATION ), -1, -1, -1 );
   mgr->setRule( action( GAUSS_SAVE_CONFIGURATION ),
-                "selcount>=0 and client='VVTK' and activeView='VVTK'", true );
+    "selcount>=0 and client='SVTK' and activeView='SVTK'" );
 
-  createAction( GAUSS_OVERWRITE_CONFIGURATION, tr("MEN_OVERWRITE_CONFIGURATION"), QIconSet(),
+  createAction( GAUSS_OVERWRITE_CONFIGURATION, tr("MEN_OVERWRITE_CONFIGURATION"), QIcon(),
                 tr("MEN_OVERWRITE_CONFIGURATION"), "", 0, this, false,
                 this, SLOT(OnOverwriteConfiguration()));
   mgr->insert( action( GAUSS_OVERWRITE_CONFIGURATION ), -1, -1, -1 );
   mgr->setRule( action( GAUSS_OVERWRITE_CONFIGURATION ),
-               "selcount>0 and type='VISU::TGAUSSVIEW' and activeView='VVTK'", true );
+    "selcount>0 and type='VISU::TGAUSSVIEW' and activeView='SVTK'" );
 
-  createAction( GAUSS_RESTORE_CONFIGURATION, tr("MEN_RESTORE_CONFIGURATION"), QIconSet(),
+  createAction( GAUSS_RESTORE_CONFIGURATION, tr("MEN_RESTORE_CONFIGURATION"), QIcon(),
                 tr("MEN_RESTORE_CONFIGURATION"), "", 0, this, false,
                 this, SLOT(OnRestoreConfiguration()));
   mgr->insert( action( GAUSS_RESTORE_CONFIGURATION ), -1, -1, -1 );
   mgr->setRule( action( GAUSS_RESTORE_CONFIGURATION ),
-               "selcount=1 and type='VISU::TGAUSSVIEW'", true );
+  "selcount=1 and type='VISU::TGAUSSVIEW'" );
 }
 
-//---------------------------------------------------------------
-bool
-VisuGUI_Module::
-activateModule( SUIT_Study* theStudy )
-{
-  VisuGUI::activateModule( theStudy );
-
-  SetViewVisibility(getApp(),&SUIT_ViewWindow::show);
+// //---------------------------------------------------------------
+// bool VisuGUI_Module::activateModule( SUIT_Study* theStudy )
+// {
+//   VisuGUI::activateModule( theStudy );
 
-  return true;
-}
+//   //SetViewVisibility(getApp(),&SUIT_ViewWindow::show);
 
+//   return true;
+// }
 
 //---------------------------------------------------------------
-bool
-VisuGUI_Module::
-deactivateModule( SUIT_Study* theStudy )
-{
-  VisuGUI::deactivateModule( theStudy );
+// bool VisuGUI_Module::deactivateModule( SUIT_Study* theStudy )
+// {
+//   return VisuGUI::deactivateModule( theStudy );
 
-  SetViewVisibility(getApp(),&SUIT_ViewWindow::hide);
+//   //SetViewVisibility(getApp(),&SUIT_ViewWindow::hide);
 
-  return true;
-}
+//   //return true;
+// }
 
 
 //---------------------------------------------------------------
-SUIT_ViewManager*
-VisuGUI_Module::
-onCreateViewManager()
-{
-  SalomeApp_Application* anApp = getApp();
-  SUIT_ResourceMgr* aResourceMgr = anApp->resourceMgr();
-  VVTK_ViewManager* aViewManager = new VVTK_ViewManager( anApp->activeStudy(), anApp->desktop() );
-  VVTK_Viewer* aViewer = (VVTK_Viewer*)aViewManager->getViewModel();
-  aViewer->setBackgroundColor( aResourceMgr->colorValue( "VTKViewer", "background", aViewer->backgroundColor() ) );
-  aViewer->setTrihedronSize( aResourceMgr->integerValue( "VTKViewer", "trihedron_size", aViewer->trihedronSize() ),
-                            aResourceMgr->booleanValue( "VTKViewer", "relative_size", aViewer->trihedronRelative() ) );
-  new LightApp_VTKSelector( aViewer, anApp->selectionMgr() );
-  anApp->addViewManager( aViewManager );
-     
-  VVTK_ViewWindow* aViewWindow = ( VVTK_ViewWindow* )aViewManager->createViewWindow();
-  if( aViewWindow )
-  {
-    new VisuGUI_Slider( this, aViewWindow, anApp->selectionMgr() );
-  }
-
-  return aViewer->getViewManager();
-}
+// SUIT_ViewManager* VisuGUI_Module::onCreateViewManager()
+// {
+//   SalomeApp_Application* anApp = getApp();
+//   SUIT_ResourceMgr* aResourceMgr = anApp->resourceMgr();
+//   VVTK_ViewManager* aViewManager = new VVTK_ViewManager( anApp->activeStudy(), anApp->desktop() );
+//   VVTK_Viewer* aViewer = (VVTK_Viewer*)aViewManager->getViewModel();
+//   aViewer->setBackgroundColor( aResourceMgr->colorValue( "VTKViewer", "background", aViewer->backgroundColor() ) );
+//   aViewer->setProjectionMode( aResourceMgr->integerValue( "VTKViewer", "projection_mode", aViewer->projectionMode() ) );
+//   aViewer->setTrihedronSize( aResourceMgr->integerValue( "VTKViewer", "trihedron_size", aViewer->trihedronSize() ),
+//                          aResourceMgr->booleanValue( "VTKViewer", "relative_size", aViewer->trihedronRelative() ) );
+//   aViewer->setIncrementalSpeed( aResourceMgr->integerValue( "VTKViewer", "speed_value", aViewer->incrementalSpeed() ),
+//                             aResourceMgr->integerValue( "VTKViewer", "speed_mode", aViewer->incrementalSpeedMode() ) );
+//   aViewer->setInteractionStyle( aResourceMgr->integerValue( "VTKViewer", "navigation_mode", aViewer->interactionStyle() ) );
+//   aViewer->setSpacemouseButtons( aResourceMgr->integerValue( "VTKViewer", "spacemouse_func1_btn", aViewer->spacemouseBtn(1) ),
+//                              aResourceMgr->integerValue( "VTKViewer", "spacemouse_func2_btn", aViewer->spacemouseBtn(1) ),
+//                              aResourceMgr->integerValue( "VTKViewer", "spacemouse_func5_btn", aViewer->spacemouseBtn(1) ) );
+
+//   new LightApp_VTKSelector( aViewer, anApp->selectionMgr() );
+
+//   anApp->addViewManager( aViewManager );
+
+//   return aViewer->getViewManager();
+// }
 
 
 //---------------------------------------------------------------
-void 
-VisuGUI_Module::
-createPreferences()
+void VisuGUI_Module::createPreferences()
 {
   VisuGUI::createPreferences();
 
@@ -441,19 +428,17 @@ createPreferences()
   createInsideCursorPreferences();
   createOutsideCursorPreferences();
   createPickingPreferences();
-  createSpaceMousePreferences();
-  createRecorderPreferences();
+  // createSpaceMousePreferences();
+  //createRecorderPreferences();
 }
 
 
 //---------------------------------------------------------------
-void 
-VisuGUI_Module::
-createGaussPointsPreferences()
+void VisuGUI_Module::createGaussPointsPreferences()
 {
   int gaussTab = addPreference( tr( "VISU_GAUSS_PREF_TAB_TTL" ) );
   int primitiveGr = addPreference( tr( "VISU_GAUSS_PREF_PRIMITIVE_GROUP_TTL" ), gaussTab );
-  setPreferenceProperty( primitiveGr, "columns", 1 );
+  setPreferenceProperty( primitiveGr, "columns", 2 );
 
   int primitiveTypePref = addPreference( tr( "VISU_GAUSS_PREF_PRIMITIVE_TYPE" ), primitiveGr,
                                         LightApp_Preferences::Selector, "VISU",
@@ -463,7 +448,7 @@ createGaussPointsPreferences()
   values.append( tr( "VISU_GAUSS_PREF_POINTSPRITE" ) );
   values.append( tr( "VISU_GAUSS_PREF_OPENGLPOINT" ) );
   values.append( tr( "VISU_GAUSS_PREF_GEOMSPHERE" ) );
-  QValueList<QVariant> indices;
+  QList<QVariant> indices;
   indices.append( 0 );
   indices.append( 1 );
   indices.append( 2 );
@@ -524,7 +509,7 @@ createGaussPointsPreferences()
   setPreferenceProperty( incrementPref, "step", 0.1 );
 
   int geomGr = addPreference( tr( "VISU_GAUSS_PREF_GEOM_GROUP_TTL" ), gaussTab );
-  setPreferenceProperty( geomGr, "columns", 1 );
+  setPreferenceProperty( geomGr, "columns", 2 );
 
   int sizePref = addPreference( tr( "VISU_GAUSS_PREF_SIZE" ), geomGr,
                                LightApp_Preferences::IntSpin, "VISU", "point_sprite_size" );
@@ -536,7 +521,7 @@ createGaussPointsPreferences()
 
   // ScalarBar Preferences
   int scalarBarGr = addPreference( tr( "VISU_GAUSS_SCALAR_BAR_PREF_GROUP_TTL" ), gaussTab );
-  setPreferenceProperty( scalarBarGr, "columns", 1 );
+  setPreferenceProperty( scalarBarGr, "columns", 2 );
 
   int activeBarPref = addPreference( tr( "VISU_GAUSS_PREF_ACTIVE_BAR" ), scalarBarGr,
                                     LightApp_Preferences::Selector, "VISU", "scalar_bar_active_local" );
@@ -570,18 +555,54 @@ createGaussPointsPreferences()
   setPreferenceProperty( spacingPref, "min", 0.01 );
   setPreferenceProperty( spacingPref, "max", 1.0 );
   setPreferenceProperty( spacingPref, "step", 0.01 );
+
+  // spacemouse
+  int spacemouseGr = addPreference( tr( "VISU_SPACEMOUSE_PREF" ), gaussTab );
+  setPreferenceProperty( spacemouseGr, "columns", 2 );
+  int spacemousePref3 = addPreference( tr( "VISU_SPACEMOUSE_PREF_3" ), spacemouseGr,
+                                       LightApp_Preferences::Selector, "VISU",
+                                       "spacemouse_func3_btn" ); //decrease_gauss_point_magnification
+  int spacemousePref4 = addPreference( tr( "VISU_SPACEMOUSE_PREF_4" ), spacemouseGr,
+                                       LightApp_Preferences::Selector, "VISU",
+                                       "spacemouse_func4_btn" ); //increase_gauss_point_magnification
+  values.clear();
+  values.append( tr( "VISU_SPACEMOUSE_PREF_BTN_1" ) );
+  values.append( tr( "VISU_SPACEMOUSE_PREF_BTN_2" ) );
+  values.append( tr( "VISU_SPACEMOUSE_PREF_BTN_3" ) );
+  values.append( tr( "VISU_SPACEMOUSE_PREF_BTN_4" ) );
+  values.append( tr( "VISU_SPACEMOUSE_PREF_BTN_5" ) );
+  values.append( tr( "VISU_SPACEMOUSE_PREF_BTN_6" ) );
+  values.append( tr( "VISU_SPACEMOUSE_PREF_BTN_7" ) );
+  values.append( tr( "VISU_SPACEMOUSE_PREF_BTN_8" ) );
+  values.append( tr( "VISU_SPACEMOUSE_PREF_BTN_*" ) );
+  values.append( tr( "VISU_SPACEMOUSE_PREF_BTN_10" ) );
+  values.append( tr( "VISU_SPACEMOUSE_PREF_BTN_11" ) );
+  indices.clear();
+  indices.append( 1 );
+  indices.append( 2 );
+  indices.append( 3 );
+  indices.append( 4 );
+  indices.append( 5 );
+  indices.append( 6 );
+  indices.append( 7 );
+  indices.append( 8 );
+  indices.append( 9 ); // == button_*
+  indices.append( 10 );
+  indices.append( 11 );
+  setPreferenceProperty( spacemousePref3, "strings", values );
+  setPreferenceProperty( spacemousePref3, "indexes", indices );
+  setPreferenceProperty( spacemousePref4, "strings", values );
+  setPreferenceProperty( spacemousePref4, "indexes", indices );
 }
 
 
 //---------------------------------------------------------------
-void 
-VisuGUI_Module::
-createInsideCursorPreferences()
+void VisuGUI_Module::createInsideCursorPreferences()
 {
   int insideCursorTab = addPreference( tr( "VISU_GAUSS_INSIDE_CURSOR_PREF_TAB_TTL" ) );
 
   int primitiveGr = addPreference( tr( "VISU_GAUSS_PREF_PRIMITIVE_GROUP_TTL" ), insideCursorTab );
-  setPreferenceProperty( primitiveGr, "columns", 1 );
+  setPreferenceProperty( primitiveGr, "columns", 2 );
 
   int primitiveTypePref = addPreference( tr( "VISU_GAUSS_PREF_PRIMITIVE_TYPE" ), primitiveGr,
                                          LightApp_Preferences::Selector, "VISU",
@@ -591,7 +612,7 @@ createInsideCursorPreferences()
   values.append( tr( "VISU_GAUSS_PREF_POINTSPRITE" ) );
   values.append( tr( "VISU_GAUSS_PREF_OPENGLPOINT" ) );
   values.append( tr( "VISU_GAUSS_PREF_GEOMSPHERE" ) );
-  QValueList<QVariant> indices;
+  QList<QVariant> indices;
   indices.append( 0 );
   indices.append( 1 );
   indices.append( 2 );
@@ -611,7 +632,7 @@ createInsideCursorPreferences()
 
   int alphaThresholdPref = addPreference( tr( "VISU_GAUSS_PREF_ALPHA_THRESHOLD" ), primitiveGr,
                                          LightApp_Preferences::DblSpin, "VISU",
-                                          "inside_point_sprite_alpha_threshold" );  
+                                          "inside_point_sprite_alpha_threshold" );
   setPreferenceProperty( alphaThresholdPref, "min", 0.0 );
   setPreferenceProperty( alphaThresholdPref, "max", 1.0 );
   setPreferenceProperty( alphaThresholdPref, "step", 0.1 );
@@ -629,7 +650,7 @@ createInsideCursorPreferences()
   setPreferenceProperty( faceLimitPref, "max", 1000000 );
 
   int sizeGr = addPreference( tr( "VISU_GAUSS_PREF_SIZE_GROUP_TTL" ), insideCursorTab );
-  setPreferenceProperty( sizeGr, "columns", 2 );
+  setPreferenceProperty( sizeGr, "columns", 4 );
 
   int minSizePref = addPreference( tr( "VISU_GAUSS_PREF_MIN_SIZE" ), sizeGr,
                                   LightApp_Preferences::IntSpin, "VISU",
@@ -644,7 +665,7 @@ createInsideCursorPreferences()
   setPreferenceProperty( maxSizePref, "max", 100 );
 
   int magnificationGr = addPreference( tr( "VISU_GAUSS_PREF_MAGNIFICATION_GROUP_TTL" ), insideCursorTab );
-  setPreferenceProperty( magnificationGr, "columns", 2 );
+  setPreferenceProperty( magnificationGr, "columns", 4 );
 
   int magnificationPref = addPreference( tr( "VISU_GAUSS_PREF_MAGNIFICATION" ), magnificationGr,
                                         LightApp_Preferences::IntSpin, "VISU",
@@ -662,14 +683,12 @@ createInsideCursorPreferences()
 
 
 //---------------------------------------------------------------
-void 
-VisuGUI_Module::
-createOutsideCursorPreferences()
+void VisuGUI_Module::createOutsideCursorPreferences()
 {
   int outsideCursorTab = addPreference( tr( "VISU_GAUSS_OUTSIDE_CURSOR_PREF_TAB_TTL" ) );
 
   int primitiveGr = addPreference( tr( "VISU_GAUSS_PREF_PRIMITIVE_GROUP_TTL" ), outsideCursorTab );
-  setPreferenceProperty( primitiveGr, "columns", 1 );
+  setPreferenceProperty( primitiveGr, "columns", 2 );
 
   int primitiveTypePref = addPreference( tr( "VISU_GAUSS_PREF_PRIMITIVE_TYPE" ), primitiveGr,
                                          LightApp_Preferences::Selector, "VISU",
@@ -679,7 +698,7 @@ createOutsideCursorPreferences()
   values.append( tr( "VISU_GAUSS_PREF_POINTSPRITE" ) );
   values.append( tr( "VISU_GAUSS_PREF_OPENGLPOINT" ) );
   values.append( tr( "VISU_GAUSS_PREF_GEOMSPHERE" ) );
-  QValueList<QVariant> indices;
+  QList<QVariant> indices;
   indices.append( 0 );
   indices.append( 1 );
   indices.append( 2 );
@@ -699,7 +718,7 @@ createOutsideCursorPreferences()
 
   int alphaThresholdPref = addPreference( tr( "VISU_GAUSS_PREF_ALPHA_THRESHOLD" ), primitiveGr,
                                          LightApp_Preferences::DblSpin, "VISU",
-                                          "outside_point_sprite_alpha_threshold" );  
+                                          "outside_point_sprite_alpha_threshold" );
   setPreferenceProperty( alphaThresholdPref, "min", 0.0 );
   setPreferenceProperty( alphaThresholdPref, "max", 1.0 );
   setPreferenceProperty( alphaThresholdPref, "step", 0.1 );
@@ -717,6 +736,7 @@ createOutsideCursorPreferences()
   setPreferenceProperty( faceLimitPref, "max", 1000000 );
 
   int sizeGr = addPreference( tr( "VISU_GAUSS_PREF_SIZE_GROUP_TTL" ), outsideCursorTab );
+  setPreferenceProperty( sizeGr, "columns", 2 );
 
   int sizePref = addPreference( tr( "VISU_GAUSS_PREF_SIZE" ), sizeGr,
                                LightApp_Preferences::IntSpin, "VISU", "outside_point_sprite_size" );
@@ -724,7 +744,7 @@ createOutsideCursorPreferences()
   setPreferenceProperty( sizePref, "max", 100 );
 
   int colorGr = addPreference( tr( "VISU_GAUSS_PREF_COLOR_GROUP_TTL" ), outsideCursorTab );
-  setPreferenceProperty( colorGr, "columns", 1 );
+  setPreferenceProperty( colorGr, "columns", 2 );
 
   addPreference( tr( "VISU_GAUSS_PREF_UNIFORM_COLOR" ), colorGr,
                 LightApp_Preferences::Bool, "VISU", "outside_point_sprite_uniform" );
@@ -735,15 +755,13 @@ createOutsideCursorPreferences()
 
 
 //---------------------------------------------------------------
-void 
-VisuGUI_Module::
-createPickingPreferences()
+void VisuGUI_Module::createPickingPreferences()
 {
   int pickingTab = addPreference( tr( "VISU_PICKING_PREF_TAB_TTL" ) );
 
   // Cursor
   int cursorGr = addPreference( tr( "VISU_PICKING_PREF_CURSOR_GROUP_TTL" ), pickingTab );
-  setPreferenceProperty( cursorGr, "columns", 1 );
+  setPreferenceProperty( cursorGr, "columns", 2 );
 
   int cursorSizePref = addPreference( tr( "VISU_PICKING_PREF_CURSOR_SIZE" ), cursorGr,
                                       LightApp_Preferences::DblSpin, "VISU", "picking_cursor_size" );
@@ -762,6 +780,7 @@ createPickingPreferences()
 
   // Tolerance
   int toleranceGr = addPreference( tr( "VISU_PICKING_PREF_TOLERANCE_GROUP_TTL" ), pickingTab );
+  setPreferenceProperty( toleranceGr, "columns", 2 );
 
   int pointTolerancePref = addPreference( tr( "VISU_PICKING_PREF_POINT_SELECTION_TOLERANCE" ), toleranceGr,
                                           LightApp_Preferences::DblSpin, "VISU", "picking_point_tolerance" );
@@ -771,7 +790,11 @@ createPickingPreferences()
 
   // Info window
   int infoWindowGr = addPreference( tr( "VISU_PICKING_PREF_INFO_WINDOW_GROUP_TTL" ), pickingTab );
-  setPreferenceProperty( infoWindowGr, "columns", 1 );
+  setPreferenceProperty( infoWindowGr, "columns", 2 );
+
+  int infoWindowPref = addPreference( tr( "VISU_PICKING_PREF_INFO_WINDOW" ), infoWindowGr,
+                                     LightApp_Preferences::Bool, "VISU", "picking_info_window" );
+  setPreferenceProperty( infoWindowPref, "columns", 2 );
 
   int transparencyPref = addPreference( tr( "VISU_PICKING_PREF_TRANSPARENCY" ), infoWindowGr,
                                        LightApp_Preferences::IntSpin, "VISU", "picking_transparency" );
@@ -784,7 +807,7 @@ createPickingPreferences()
   QStringList values;
   values.append( tr( "VISU_PICKING_PREF_BELOW_POINT" ) );
   values.append( tr( "VISU_PICKING_PREF_TOP_LEFT_CORNER" ) );
-  QValueList<QVariant> indices;
+  QList<QVariant> indices;
   indices.append( 0 );
   indices.append( 1 );
   setPreferenceProperty( positionPref, "strings", values );
@@ -792,7 +815,11 @@ createPickingPreferences()
 
   // Camera
   int cameraGr = addPreference( tr( "VISU_PICKING_PREF_CAMERA_GROUP_TTL" ), pickingTab );
-  setPreferenceProperty( cameraGr, "columns", 1 );
+  setPreferenceProperty( cameraGr, "columns", 2 );
+
+  int cameraPref = addPreference( tr( "VISU_PICKING_PREF_CAMERA_MOVEMENT" ), cameraGr,
+                                 LightApp_Preferences::Bool, "VISU", "picking_camera_movement" );
+  setPreferenceProperty( cameraPref, "columns", 2 );
 
   int zoomFactorPref = addPreference( tr( "VISU_PICKING_PREF_ZOOM_FACTOR" ), cameraGr,
                                      LightApp_Preferences::DblSpin, "VISU", "picking_zoom_factor" );
@@ -815,31 +842,31 @@ createPickingPreferences()
 
 
 //---------------------------------------------------------------
-void 
-VisuGUI_Module::
-createSpaceMousePreferences()
+void VisuGUI_Module::createSpaceMousePreferences()
 {
   int mouseTab = addPreference( tr( "VISU_MOUSE_PREF_TAB_TLT" ) );
 
   int mouseGr = addPreference( tr( "VISU_MOUSE_PREF_GROUP_TLT" ), mouseTab );
+  setPreferenceProperty( mouseGr, "columns", 2 );
   int mousePref = addPreference( tr( "VISU_MOUSE_PREF" ), mouseGr,
                                  LightApp_Preferences::Selector, "VISU", "mouse_behaviour" );
   QStringList values;
   values.append( tr( "VISU_MOUSE_PREF_STANDARD" ) );
   values.append( tr( "VISU_MOUSE_PREF_KEYBOARD_FREE" ) );
-  QValueList<QVariant> indices;
+  QList<QVariant> indices;
   indices.append( 0 );
   indices.append( 1 );
   setPreferenceProperty( mousePref, "strings", values );
   setPreferenceProperty( mousePref, "indexes", indices );
 
   int keybrdGr = addPreference( tr( "VISU_KEYBOARD_PREF_GROUP_TTL" ), mouseTab );
+  setPreferenceProperty( keybrdGr, "columns", 2 );
   int keybrdPref = addPreference( tr( "VISU_KEYBOARD_PREF" ), keybrdGr,
                                   LightApp_Preferences::IntSpin, "VISU", "speed_increment" );
   setPreferenceProperty( keybrdPref,  "max",  1000  );
 
   int spacemouseGr = addPreference( tr( "VISU_SPACEMOUSE_PREF" ), mouseTab );
-  setPreferenceProperty( spacemouseGr, "columns", 1 );
+  setPreferenceProperty( spacemouseGr, "columns", 2 );
   int spacemousePref1 = addPreference( tr( "VISU_SPACEMOUSE_PREF_1" ), spacemouseGr,
                                        LightApp_Preferences::Selector, "VISU",
                                        "spacemouse_func1_btn" ); //decrease_speed_increment
@@ -893,21 +920,19 @@ createSpaceMousePreferences()
 
 
 //---------------------------------------------------------------
-void 
-VisuGUI_Module::
-createRecorderPreferences()
+void VisuGUI_Module::createRecorderPreferences()
 {
   int recorderTab = addPreference( tr( "VISU_RECORDER_PREF_TAB_TTL" ) );
 
   int recorderGr = addPreference( tr( "VISU_RECORDER_PREF_GROUP_TTL" ), recorderTab );
-  setPreferenceProperty( recorderGr, "columns", 1 );
+  setPreferenceProperty( recorderGr, "columns", 2 );
 
   int modePref = addPreference( tr( "VISU_RECORDER_PREF_RECORDING_MODE" ), recorderGr,
                                LightApp_Preferences::Selector, "VISU", "recorder_mode" );
   QStringList values;
   values.append( tr( "VISU_RECORDER_PREF_SKIPPED_FRAMES" ) );
   values.append( tr( "VISU_RECORDER_PREF_ALL_DISLPAYED_FRAMES" ) );
-  QValueList<QVariant> indices;
+  QList<QVariant> indices;
   indices.append( 0 );
   indices.append( 1 );
   setPreferenceProperty( modePref, "strings", values );
@@ -929,29 +954,26 @@ createRecorderPreferences()
 
 
 //---------------------------------------------------------------
-void
-VisuGUI_Module::
-OnCreateGaussPoints()
+void VisuGUI_Module::OnCreateGaussPoints()
 {
   double initialTime = vtkTimerLog::GetCPUTime();
-  CreatePrs3d<VISU::GaussPoints_i, VisuGUI_GaussPointsDlg, 1>(this, VVTK_Viewer::Type());
+  //CreatePrs3d<VISU::GaussPoints_i, VisuGUI_GaussPointsDlg, 1>(this, VVTK_Viewer::Type());
+  Prs3d_i* aPrs = CreatePrs3d<VISU::GaussPoints_i, VisuGUI_GaussPointsDlg, 1>(this, SVTK_Viewer::Type());
+  if (aPrs)
+    emit presentationCreated(aPrs);
   INFOS( "VisuGUI_Module::OnCreateGaussPoints() : Gauss Points created in " <<
         vtkTimerLog::GetCPUTime() - initialTime << " seconds" );
 }
 
-void
-VisuGUI_Module::
-OnViewManagerAdded(SUIT_ViewManager* viewMgr)
-{
-  QString type = viewMgr->getViewModel()->getType();
-  if ( type == VVTK_Viewer::Type() ) 
-    connect( viewMgr, SIGNAL( viewCreated( SUIT_ViewWindow* ) ),
-             this, SLOT( OnViewCreated( SUIT_ViewWindow* ) ) );
-}
+// void VisuGUI_Module::OnViewManagerAdded(SUIT_ViewManager* viewMgr)
+// {
+//   QString type = viewMgr->getViewModel()->getType();
+//   if ( type == VVTK_Viewer::Type() ) 
+//     connect( viewMgr, SIGNAL( viewCreated( SUIT_ViewWindow* ) ),
+//              this, SLOT( OnViewCreated( SUIT_ViewWindow* ) ) );
+// }
 
-void
-VisuGUI_Module::
-OnViewCreated(SUIT_ViewWindow* view)
+void VisuGUI_Module::OnViewCreated(SUIT_ViewWindow* view)
 {
   SVTK_ViewWindow* viewWindow = dynamic_cast<SVTK_ViewWindow*>( view );
   if ( viewWindow ) {
@@ -964,91 +986,81 @@ OnViewCreated(SUIT_ViewWindow* view)
   }
 }
 
-void
-VisuGUI_Module::
-setProperty( SVTK_ViewWindow* viewWindow, const QString& pref )
+void VisuGUI_Module::setProperty( SVTK_ViewWindow* viewWindow, const QString& pref )
 {
   if ( !viewWindow )
     return;
 
   SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr();
-  SVTK_MainWindow* aMainWindow = viewWindow->getMainWindow();
+  //SVTK_MainWindow* aMainWindow = viewWindow->getMainWindow();
   int val;
   if ( pref == "speed_increment" ) {
-    val = resMgr->integerValue( "VISU", pref, 10 );
-    aMainWindow->InvokeEvent( SVTK::SetSpeedIncrementEvent, &val );
+    val = resMgr->integerValue( "VTKViewer", pref, 10 );
+    viewWindow->InvokeEvent( SVTK::SetSpeedIncrementEvent, &val );
   }
   else if ( pref == "spacemouse_func1_btn" ) {
-    val = resMgr->integerValue( "VISU", pref, 1 );
-    aMainWindow->InvokeEvent( SVTK::SetSMDecreaseSpeedEvent, &val );
+    val = resMgr->integerValue( "VTKViewer", pref, 1 );
+    viewWindow->InvokeEvent( SVTK::SetSMDecreaseSpeedEvent, &val );
   }
   else if ( pref == "spacemouse_func2_btn" ) {
-    val = resMgr->integerValue( "VISU", pref, 2 );
-    aMainWindow->InvokeEvent( SVTK::SetSMIncreaseSpeedEvent, &val );
+    val = resMgr->integerValue( "VTKViewer", pref, 2 );
+    viewWindow->InvokeEvent( SVTK::SetSMIncreaseSpeedEvent, &val );
   }
   else if ( pref == "spacemouse_func3_btn" ) {
     val = resMgr->integerValue( "VISU", pref, 10 );
-    aMainWindow->InvokeEvent( VISU::SetSMDecreaseMagnificationEvent, &val );
+    viewWindow->InvokeEvent( VISU::SetSMDecreaseMagnificationEvent, &val );
   }
   else if ( pref == "spacemouse_func4_btn" ) {
     val = resMgr->integerValue( "VISU", pref, 11 );
-    aMainWindow->InvokeEvent( VISU::SetSMIncreaseMagnificationEvent, &val );
+    viewWindow->InvokeEvent( VISU::SetSMIncreaseMagnificationEvent, &val );
   }
   else if ( pref == "spacemouse_func5_btn" ) {
-    val = resMgr->integerValue( "VISU", pref, 9 );
-    aMainWindow->InvokeEvent( SVTK::SetSMDominantCombinedSwitchEvent, &val );
+    val = resMgr->integerValue( "VTKViewer", pref, 9 );
+    viewWindow->InvokeEvent( SVTK::SetSMDominantCombinedSwitchEvent, &val );
   }
 }
 
-void
-VisuGUI_Module::
-setProperty( SVTK_ViewManager* vm, const QString& prop )
+void VisuGUI_Module::setProperty( SVTK_ViewManager* vm, const QString& prop )
 {
   if ( !vm )
     return;
 
-  QPtrVector<SUIT_ViewWindow> windows = vm->getViews();
+  QVector<SUIT_ViewWindow*> windows = vm->getViews();
   for ( int n = windows.count(), i = 0; i < n; i++ )
     setProperty( dynamic_cast<SVTK_ViewWindow*>( windows[i] ), prop );
 }
 
-void
-VisuGUI_Module::
-preferencesChanged( const QString& group, const QString& pref )
+void VisuGUI_Module::preferencesChanged( const QString& group, const QString& pref )
 {
   VisuGUI::preferencesChanged(group,pref);
 
-  if ( group == "VISU" && ( pref == "speed_increment" || pref == "spacemouse_func1_btn" ||
-                           pref == "spacemouse_func2_btn" || pref == "spacemouse_func3_btn" || 
-                           pref == "spacemouse_func4_btn" || pref == "spacemouse_func5_btn" ) ) {
+//   if ( group == "VISU" && ( pref == "speed_increment" || pref == "spacemouse_func1_btn" ||
+//                         pref == "spacemouse_func2_btn" || pref == "spacemouse_func3_btn" || 
+//                         pref == "spacemouse_func4_btn" || pref == "spacemouse_func5_btn" ) ) {
 
-    // update properties of VVTK view windows
-    SUIT_ViewManager* vm = getApp()->getViewManager( VVTK_Viewer::Type(), false );
-    if ( vm ) 
-      setProperty( dynamic_cast<SVTK_ViewManager*>( vm ), pref );
-  }
+//     // update properties of VVTK view windows
+//     SUIT_ViewManager* vm = getApp()->getViewManager( VVTK_Viewer::Type(), false );
+//     if ( vm ) 
+//       setProperty( dynamic_cast<SVTK_ViewManager*>( vm ), pref );
+//   }
 }
 
 
 //---------------------------------------------------------------
-SUIT_ViewManager*
-VisuGUI_Module::
-getViewManager(const QString& theType, 
+SUIT_ViewManager* VisuGUI_Module::getViewManager(const QString& theType, 
                const bool theIsCreate)
 {
   if (SUIT_ViewManager* aViewManager = VisuGUI::getViewManager(theType,theIsCreate))
     return aViewManager;
 
-  if (theIsCreate && theType == VVTK_Viewer::Type())
-    return onCreateViewManager();
+//   if (theIsCreate && theType == VVTK_Viewer::Type())
+//     return onCreateViewManager();
 
   return NULL;
 }
 
 //---------------------------------------------------------------
-void
-VisuGUI_Module::
-OnEditGaussPoints()
+void VisuGUI_Module::OnEditGaussPoints()
 {
   VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects(this);
   if(aSelectionInfo.empty())
@@ -1058,10 +1070,13 @@ OnEditGaussPoints()
   Handle(SALOME_InteractiveObject) anIO = aSelectionItem.myIO;
 
   if(VISU::Prs3d_i* aPrs3d = VISU::GetPrs3dToModify(this, aSelectionItem.myObjectInfo.myBase)){
-    // Create VVTK_ViewWindow, if it does not exist
-    if (VVTK_ViewWindow* aViewWindow = GetViewWindow<VVTK_Viewer>(this)) {
+    if (SVTK_ViewWindow* aViewWindow = GetViewWindow<SVTK_Viewer>(this)) {
       EditPrs3d<VISU::GaussPoints_i, VisuGUI_GaussPointsDlg, 1>(this, anIO, aPrs3d, aViewWindow);
     }
+    // Create VVTK_ViewWindow, if it does not exist
+//     if (VVTK_ViewWindow* aViewWindow = GetViewWindow<VVTK_Viewer>(this)) {
+//       EditPrs3d<VISU::GaussPoints_i, VisuGUI_GaussPointsDlg, 1>(this, anIO, aPrs3d, aViewWindow);
+//     }
   }
 }
 
@@ -1069,10 +1084,9 @@ OnEditGaussPoints()
 //---------------------------------------------------------------
 namespace
 {
-  void
-  GetViewParams(VVTK_MainWindow* theViewWindow,
-               const char* theSuffix,
-               std::ostringstream& theStr)
+  /*  void   GetViewParams(VVTK_MainWindow* theViewWindow,
+                      const char* theSuffix,
+                      std::ostringstream& theStr)
   {
     vtkFloatingPointType aColor[3];
     vtkRenderer* aRenderer = theViewWindow->getRenderer();
@@ -1080,7 +1094,7 @@ namespace
     Storable::DataToStream(theStr,(std::string("myColor") + theSuffix + ".R").c_str(),aColor[0]);
     Storable::DataToStream(theStr,(std::string("myColor") + theSuffix + ".G").c_str(),aColor[1]);
     Storable::DataToStream(theStr,(std::string("myColor") + theSuffix + ".B").c_str(),aColor[2]);
-      
+
     double aPosition[3];
     vtkCamera* aCamera = aRenderer->GetActiveCamera();
     aCamera->GetPosition(aPosition);
@@ -1093,28 +1107,27 @@ namespace
     Storable::DataToStream(theStr,(std::string("myFocalPnt") + theSuffix + "[0]").c_str(),aFocalPnt[0]);
     Storable::DataToStream(theStr,(std::string("myFocalPnt") + theSuffix + "[1]").c_str(),aFocalPnt[1]);
     Storable::DataToStream(theStr,(std::string("myFocalPnt") + theSuffix + "[2]").c_str(),aFocalPnt[2]);
-      
+
     double aViewUp[3];
     aCamera->GetViewUp(aViewUp);
     Storable::DataToStream(theStr,(std::string("myViewUp") + theSuffix + "[0]").c_str(),aViewUp[0]);
     Storable::DataToStream(theStr,(std::string("myViewUp") + theSuffix + "[1]").c_str(),aViewUp[1]);
     Storable::DataToStream(theStr,(std::string("myViewUp") + theSuffix + "[2]").c_str(),aViewUp[2]);
-      
+
     vtkFloatingPointType aParallelScale = aCamera->GetParallelScale();
     Storable::DataToStream(theStr,(std::string("myParallelScale") + theSuffix).c_str(),aParallelScale);
-      
+
     double aScaleFactor[3];
     theViewWindow->GetScale(aScaleFactor);
     Storable::DataToStream(theStr,(std::string("myScaleFactor") + theSuffix + "[0]").c_str(),aScaleFactor[0]);
     Storable::DataToStream(theStr,(std::string("myScaleFactor") + theSuffix + "[1]").c_str(),aScaleFactor[1]);
     Storable::DataToStream(theStr,(std::string("myScaleFactor") + theSuffix + "[2]").c_str(),aScaleFactor[2]);
   }
-
+  */
   //---------------------------------------------------------------
-  void
-  SetViewParams(VVTK_MainWindow* theViewWindow,
-               const char* theSuffix,
-               const Storable::TRestoringMap& theMap)
+  /*  void SetViewParams(VVTK_MainWindow* theViewWindow,
+                    const char* theSuffix,
+                    const Storable::TRestoringMap& theMap)
   {
     vtkFloatingPointType aColor[3];
     aColor[0] = Storable::FindValue(theMap,std::string("myColor") + theSuffix + ".R").toDouble();
@@ -1122,7 +1135,7 @@ namespace
     aColor[2] = Storable::FindValue(theMap,std::string("myColor") + theSuffix + ".B").toDouble();
     vtkRenderer* aRenderer = theViewWindow->getRenderer();
     aRenderer->SetBackground(aColor);
-      
+
     double aPosition[3];
     aPosition[0] = Storable::FindValue(theMap,std::string("myPosition") + theSuffix + "[0]").toDouble();
     aPosition[1] = Storable::FindValue(theMap,std::string("myPosition") + theSuffix + "[1]").toDouble();
@@ -1135,7 +1148,7 @@ namespace
     aFocalPnt[1] = Storable::FindValue(theMap,std::string("myFocalPnt") + theSuffix + "[1]").toDouble();
     aFocalPnt[2] = Storable::FindValue(theMap,std::string("myFocalPnt") + theSuffix + "[2]").toDouble();
     aCamera->SetFocalPoint(aFocalPnt);
-      
+
     double aViewUp[3];
     aViewUp[0] = Storable::FindValue(theMap,std::string("myViewUp") + theSuffix + "[0]").toDouble();
     aViewUp[1] = Storable::FindValue(theMap,std::string("myViewUp") + theSuffix + "[1]").toDouble();
@@ -1144,18 +1157,17 @@ namespace
 
     vtkFloatingPointType aParallelScale = Storable::FindValue(theMap,std::string("myParallelScale") + theSuffix).toDouble();
     aCamera->SetParallelScale(aParallelScale);
-      
+
     double aScaleFactor[3];
     aScaleFactor[0] = Storable::FindValue(theMap,std::string("myScaleFactor") + theSuffix + "[0]").toDouble();
     aScaleFactor[1] = Storable::FindValue(theMap,std::string("myScaleFactor") + theSuffix + "[1]").toDouble();
     aScaleFactor[2] = Storable::FindValue(theMap,std::string("myScaleFactor") + theSuffix + "[2]").toDouble();
     theViewWindow->SetScale(aScaleFactor);
   }
-
+  */
   //---------------------------------------------------------------
-  void
-  GetViewParams(VVTK_MainWindow1* theViewWindow,
-               std::ostringstream& theStr)
+  /*  void   GetViewParams(VVTK_MainWindow1* theViewWindow,
+                      std::ostringstream& theStr)
   {
     GetViewParams(theViewWindow,"1",theStr);
 
@@ -1169,16 +1181,16 @@ namespace
        Storable::DataToStream(theStr,"myCursorOrigin[0]",anOrigin[0]);
        Storable::DataToStream(theStr,"myCursorOrigin[1]",anOrigin[1]);
        Storable::DataToStream(theStr,"myCursorOrigin[2]",anOrigin[2]);
-       
+
        vtkFloatingPointType aNormal[3];
        aPlanesWidget->GetNormal(aNormal);
        Storable::DataToStream(theStr,"myCursorNormal[0]",aNormal[0]);
        Storable::DataToStream(theStr,"myCursorNormal[1]",aNormal[1]);
        Storable::DataToStream(theStr,"myCursorNormal[2]",aNormal[2]);
-       
+
        vtkFloatingPointType aDepth = aPlanesWidget->Distance();
        Storable::DataToStream(theStr,"myCursorDepth",aDepth);
-       
+
        aSegmentationMode = "Planes";
       }else if(aWidgetCtrl->IsSphereActive()){
        VISU_SphereWidget *aSphereWidget = aWidgetCtrl->GetSphereWidget();
@@ -1187,67 +1199,63 @@ namespace
        Storable::DataToStream(theStr,"mySphereCursorCenter[0]",aCenter[0]);
        Storable::DataToStream(theStr,"mySphereCursorCenter[1]",aCenter[1]);
        Storable::DataToStream(theStr,"mySphereCursorCenter[2]",aCenter[2]);
-       
+
        vtkFloatingPointType aRadius = aSphereWidget->GetRadius();
        Storable::DataToStream(theStr,"mySphereCursorRaduis",aRadius);
-       
+
        aSegmentationMode = "Sphere";
       }
-      
+
       Storable::DataToStream(theStr,"mySegmentationMode",aSegmentationMode.c_str());
     }
   }
-
+  */
   //---------------------------------------------------------------
-  void
-  SetViewParams(VVTK_MainWindow1* theViewWindow,
-               const Storable::TRestoringMap& theMap)
+  /*void SetViewParams(VVTK_MainWindow1* theViewWindow,
+                    const Storable::TRestoringMap& theMap)
   {
     SetViewParams(theViewWindow,"1",theMap);
   }
 
-
+  */
   //---------------------------------------------------------------
-  void
-  GetViewParams(VVTK_MainWindow2* theViewWindow,
-               std::ostringstream& theStr)
+  /*void GetViewParams(VVTK_MainWindow2* theViewWindow,
+                    std::ostringstream& theStr)
   {
     GetViewParams(theViewWindow,"2",theStr);
   }
 
-  void
-  SetViewParams(VVTK_MainWindow2* theViewWindow,
-               const Storable::TRestoringMap& theMap)
+  void SetViewParams(VVTK_MainWindow2* theViewWindow,
+                    const Storable::TRestoringMap& theMap)
   {
     SetViewParams(theViewWindow,"2",theMap);
   }
-
+  */
 
   //---------------------------------------------------------------
-  std::string
-  GetViewParams(VVTK_ViewWindow* theViewWindow)
+  /*std::string GetViewParams(VVTK_ViewWindow* theViewWindow)
   {
     std::ostringstream aStream;
 
     Storable::DataToStream(aStream,"myComment","GAUSSVIEW");
-    
+
     SVTK_Selector* aSelector = theViewWindow->GetSelector();
     Selection_Mode aSelectionMode = aSelector->SelectionMode();
     Storable::DataToStream(aStream,"mySelectionMode",aSelectionMode);
-    
+
     GetViewParams(theViewWindow->getMainWindow1(),aStream);
     GetViewParams(theViewWindow->getMainWindow2(),aStream);
 
     return aStream.str();
   }
-
+  */
   //---------------------------------------------------------------
   struct TSelection
   {
     bool myIsSelected;
     bool myHasSubId;
     int mySubId;
-    
+
     TSelection():
       myIsSelected(false),
       myHasSubId(false),
@@ -1265,8 +1273,7 @@ namespace
       myVisibleEntries(theVisibleEntries)
     {}
 
-    void
-    operator()(VISU_GaussPtsAct* theActor) 
+    void operator()(VISU_GaussPtsAct* theActor) 
     {
       if(theActor->GetVisibility()){
        const Handle(SALOME_InteractiveObject)& anIO = theActor->getIO();
@@ -1275,9 +1282,8 @@ namespace
     }
   };
 
-  void
-  GetGaussPointsSelection(VVTK_ViewWindow* theViewWindow,
-                         TVisibleEntries& theVisibleEntries)
+  /*void GetGaussPointsSelection(SVTK_ViewWindow* theViewWindow,
+                              TVisibleEntries& theVisibleEntries)
   {
     // First find all visible Gauss Points presentations
     vtkRenderer* aRenderer = theViewWindow->getRenderer();
@@ -1285,7 +1291,7 @@ namespace
     TGetVisibleEntries aGetVisibleEntries(theVisibleEntries);
     SVTK::ForEach<VISU_GaussPtsAct>(anActors,
                                    aGetVisibleEntries);
-    
+
     // Next, find the sub-ids for the visible Gauss Points presentations
     SVTK_Selector* aSelector = theViewWindow->GetSelector();
     const SALOME_ListIO& aListIO = aSelector->StoredIObjects();
@@ -1306,16 +1312,14 @@ namespace
       }
     }
   }
-
+  */
 
   //---------------------------------------------------------------
-  inline
-  void
-  CreateReference(_PTR(Study) theStudyDocument,
-                 _PTR(StudyBuilder) theStudyBuilder,
-                 _PTR(SObject) theFatherSObject, 
-                 const string& theRefEntry,
-                 const TSelection& theSelection)
+  inline void CreateReference(_PTR(Study) theStudyDocument,
+                             _PTR(StudyBuilder) theStudyBuilder,
+                             _PTR(SObject) theFatherSObject, 
+                             const string& theRefEntry,
+                             const TSelection& theSelection)
   {
     _PTR(SObject) aNewObj = theStudyBuilder->NewObject(theFatherSObject);
     _PTR(SObject) aRefSObj = theStudyDocument->FindObjectID(theRefEntry);
@@ -1334,11 +1338,10 @@ namespace
 
 
   //---------------------------------------------------------------
-  void
-  SetGaussPointsSelection(VisuGUI* theModule,
-                         VVTK_ViewWindow* theViewWindow,
-                         _PTR(Study) theCStudy,
-                         _PTR(SObject) theSObject)
+  /*void SetGaussPointsSelection(VisuGUI* theModule,
+                              SVTK_ViewWindow* theViewWindow,
+                              _PTR(Study) theCStudy,
+                              _PTR(SObject) theSObject)
   {
     SVTK_Selector* aSelector = theViewWindow->GetSelector();
     aSelector->ClearIObjects();
@@ -1353,16 +1356,16 @@ namespace
        PortableServer::ServantBase_var aServant = VISU::GetServant(anObject);
        if(VISU::Prs3d_i* aPrs3d = dynamic_cast<VISU::Prs3d_i*>(aServant.in())){
          // To set visiblity
-         VISU::UpdateViewer(theModule, aPrs3d, /*disp_only = */anIsFirst, /*highlight = */false);
+         VISU::UpdateViewer(theModule, aPrs3d, anIsFirst, false);
          anIsFirst = false;
-         
+
          // To update selection
          Storable::TRestoringMap aMap = Storable::GetStorableMap(aChildSObject);
          if(!aMap.empty()){
            bool anIsSelected = aMap["myIsSelected"].toInt();
            bool aHasSubId = aMap["myHasSubId"].toInt();
            int aSubId = aMap["mySubId"].toInt();
-           
+
            if(anIsSelected){
              std::string anEntry = aSObject->GetID();
              Handle(SALOME_InteractiveObject) anIO = new SALOME_InteractiveObject(anEntry.c_str(),"");
@@ -1377,24 +1380,23 @@ namespace
 
     aSelector->EndPickCallback(); // To invoke selection changed signal
   }
-
+  */
 
   //---------------------------------------------------------------
-  void
-  OnStoreConfiguration(SalomeApp_Module* theModule,
-                      bool theIsNew)
+  /*void OnStoreConfiguration(SalomeApp_Module* theModule,
+                           bool theIsNew)
   {
     _PTR(Study) aCStudy = GetCStudy(GetAppStudy(theModule));
     if (CheckLock(aCStudy,GetDesktop(theModule)))
       return;
-    
+
     LightApp_SelectionMgr* aSelectionMgr = GetSelectionMgr(theModule);
-    
+
     SUIT_ViewManager* aViewManager = theModule->getApp()->activeViewManager();
-    if(aViewManager->getType() == VVTK_Viewer::Type()){
+        if(aViewManager->getType() == VVTK_Viewer::Type()){
       SUIT_ViewWindow* aWindow = aViewManager->getActiveView();
       VVTK_ViewWindow* aViewWindow = dynamic_cast<VVTK_ViewWindow*>(aWindow);
-      
+
       SUIT_Study* aSStudy = aViewManager->study();
       SalomeApp_Study* aStudy = dynamic_cast<SalomeApp_Study*>(aSStudy);
       _PTR(Study) aCStudy = aStudy->studyDS();
@@ -1405,15 +1407,15 @@ namespace
 
       if(theIsNew){
        _PTR(SComponent) aSComponent = ClientFindOrCreateVisuComponent(aCStudy);
-       
+
        static int myNbConfigs = 0;
-       std::string aName = VISU::GenerateName("Config.", ++myNbConfigs).latin1();
-      
+       std::string aName = VISU::GenerateName("Config.", ++myNbConfigs).toLatin1().data();
+
        std::string aSComponentEntry = aSComponent->GetID();
-       anEntry = CreateAttributes(aCStudy, 
-                                  aSComponentEntry.c_str(), 
-                                  "", 
-                                  "", 
+       anEntry = CreateAttributes(aCStudy,
+                                  aSComponentEntry.c_str(),
+                                  "",
+                                  "",
                                   aName.c_str(),
                                   "",
                                   aValue.c_str());
@@ -1431,7 +1433,7 @@ namespace
            if(aCommentValue.compare("myComment=GAUSSVIEW") >= 0){
              aComment->SetValue(aValue.c_str());
              anEntry = aSObject->GetID();
-             
+
              _PTR(ChildIterator) aChildIter = aCStudy->NewChildIterator(aSObject);
              for (; aChildIter->More(); aChildIter->Next()) {
                _PTR(SObject) aChildSObject = aChildIter->Value();
@@ -1447,67 +1449,60 @@ namespace
        TVisibleEntries aVisibleEntries;
        GetGaussPointsSelection(aViewWindow,
                                aVisibleEntries);
-       
+
        _PTR(SObject) aSObject = aCStudy->FindObjectID(anEntry);
        _PTR(StudyBuilder) aStudyBuilder = aCStudy->NewBuilder();
        TVisibleEntries::const_iterator anIter =  aVisibleEntries.begin();
        for(; anIter != aVisibleEntries.end(); anIter++){
          const std::string& anEntry = anIter->first;
          const TSelection& aSelection = anIter->second;
-         
+
          CreateReference(aCStudy,
                          aStudyBuilder,
-                         aSObject, 
+                         aSObject,
                          anEntry,
                          aSelection);
        }
-      
+
        //UpdateObjBrowser(theModule,true,aSObject);
        UpdateObjBrowser(theModule,true);
       }
-    }
-  }
+    } 
+    }*/
 
 
   //---------------------------------------------------------------
-  template<class TMainWindow>
-  void
-  SetMainWindowParams(VisuGUI* theModule,
-                     _PTR(SObject) theSObject,
-                     VVTK_ViewWindow* theViewWindow,
-                     TMainWindow* theMainWindow)
+/*  template<class TMainWindow>
+  void SetMainWindowParams(VisuGUI* theModule,
+                          _PTR(SObject) theSObject,
+                          VVTK_ViewWindow* theViewWindow,
+                          TMainWindow* theMainWindow)
   {
     _PTR(Study) aCStudy = GetCStudy(GetAppStudy(theModule));
 
     Storable::TRestoringMap aMap = Storable::GetStorableMap(theSObject);
     if(!aMap.empty())
       SetViewParams(theMainWindow, aMap);
-  }
+      }*/
 }
 
 
 //---------------------------------------------------------------
-void
-VisuGUI_Module::
-OnSaveConfiguration()
-{
-  ::OnStoreConfiguration(this,true);
-}
+// void VisuGUI_Module::OnSaveConfiguration()
+// {
+//   ::OnStoreConfiguration(this,true);
+// }
 
 
 //---------------------------------------------------------------
-void
-VisuGUI_Module::
-OnOverwriteConfiguration()
-{
-  ::OnStoreConfiguration(this,false);
-}
+// void VisuGUI_Module::OnOverwriteConfiguration()
+// {
+//   ::OnStoreConfiguration(this,false);
+// }
 
 
 //---------------------------------------------------------------
-void
-VisuGUI_Module::
-OnRestoreConfiguration()
+/*void VisuGUI_Module::OnRestoreConfiguration()
 {
   LightApp_SelectionMgr* aSelectionMgr = GetSelectionMgr(this);
 
@@ -1523,13 +1518,12 @@ OnRestoreConfiguration()
     myConfigSObject = aSObject;
     Storable::TRestoringMap aMap = Storable::GetStorableMap(aSObject);
     if(!aMap.empty()){
-      SUIT_ViewWindow* aWindow = aViewManager->getActiveView();
-      VVTK_ViewWindow* aViewWindow = dynamic_cast<VVTK_ViewWindow*>(aWindow);
+      SUIT_ViewWindow* aViewWindow = aViewManager->getActiveView();
       
       Selection_Mode aSelectionMode = Storable::FindValue(aMap,"mySelectionMode").toInt();
       SVTK_Selector* aSelector = aViewWindow->GetSelector();
       aSelector->SetSelectionMode(aSelectionMode);
-      
+
       SetGaussPointsSelection(this,aViewWindow,aCStudy,aSObject);
 
       std::string aSegmentationMode;
@@ -1537,8 +1531,8 @@ OnRestoreConfiguration()
        aMainWindow->SetPlanesSegementation(false);
        aMainWindow->SetSphereSegementation(false);
        VISU_WidgetCtrl* aWidgetCtrl = aMainWindow->GetWidgetCtrl();
-       aSegmentationMode = Storable::FindValue(aMap,"mySegmentationMode").latin1();
-       
+       aSegmentationMode = Storable::FindValue(aMap,"mySegmentationMode").toLatin1().data();
+
        if(aSegmentationMode == "Planes"){
          VISU_PlanesWidget *aPlanesWidget = aWidgetCtrl->GetPlanesWidget();
          vtkFloatingPointType anOrigin[3];
@@ -1546,16 +1540,16 @@ OnRestoreConfiguration()
          anOrigin[1] = Storable::FindValue(aMap,"myCursorOrigin[1]").toDouble();
          anOrigin[2] = Storable::FindValue(aMap,"myCursorOrigin[2]").toDouble();
          aPlanesWidget->SetOrigin(anOrigin);
-         
+
          vtkFloatingPointType aNormal[3];
          aNormal[0] = Storable::FindValue(aMap,"myCursorNormal[0]").toDouble();
          aNormal[1] = Storable::FindValue(aMap,"myCursorNormal[1]").toDouble();
          aNormal[2] = Storable::FindValue(aMap,"myCursorNormal[2]").toDouble();
          aPlanesWidget->SetNormal(aNormal);
-         
+
          vtkFloatingPointType aDepth = Storable::FindValue(aMap,"myCursorDepth").toDouble();
          aPlanesWidget->SetDistance(aDepth);
-         
+
          aMainWindow->SetPlanesSegementation(true);
        }else if(aSegmentationMode == "Sphere"){
          VISU_SphereWidget *aSphereWidget = aWidgetCtrl->GetSphereWidget();
@@ -1564,10 +1558,10 @@ OnRestoreConfiguration()
          aCenter[1] = Storable::FindValue(aMap,"mySphereCursorCenter[1]").toDouble();
          aCenter[2] = Storable::FindValue(aMap,"mySphereCursorCenter[2]").toDouble();
          aSphereWidget->SetCenter(aCenter);
-         
+
          vtkFloatingPointType aRadius = Storable::FindValue(aMap,"mySphereCursorRaduis").toDouble();
          aSphereWidget->SetRadius(aRadius);
-         
+
          aMainWindow->SetSphereSegementation(true);
        }
       }
@@ -1593,37 +1587,35 @@ OnRestoreConfiguration()
       SetGaussPointsSelection(this,aViewWindow,aCStudy,aSObject);
     }
   }
-}
+}*/
 
 
 //---------------------------------------------------------------
-bool
-VisuGUI_Module::
-eventFilter( QObject * theWatched, QEvent * theEvent )
-{
-  bool aRet = VisuGUI::eventFilter(theWatched,theEvent);
-  if(theEvent->type() == QEvent::Show){
-    if(SUIT_ViewManager* aViewManager = getViewManager(VVTK_Viewer::Type(),false)){
-      SUIT_ViewWindow* aWindow = aViewManager->getActiveView();
-      VVTK_ViewWindow* aViewWindow = dynamic_cast<VVTK_ViewWindow*>(aWindow);
-      if(VVTK_MainWindow1* aMainWindow = aViewWindow->getMainWindow1()){
-       SVTK_RenderWindowInteractor* anInteractor = aMainWindow->GetInteractor();
-       if(theWatched == anInteractor){
-         SetMainWindowParams(this,myConfigSObject,aViewWindow,aMainWindow);
-         anInteractor->removeEventFilter(this);
-       }
-      }
-      if(VVTK_MainWindow2* aMainWindow = aViewWindow->getMainWindow2()){
-       SVTK_RenderWindowInteractor* anInteractor = aMainWindow->GetInteractor();
-       if(theWatched == aMainWindow->GetInteractor()){
-         SetMainWindowParams(this,myConfigSObject,aViewWindow,aMainWindow);
-         anInteractor->removeEventFilter(this);
-       }
-      }
-    }
-  }
-  return aRet;
-}
+//bool VisuGUI_Module::eventFilter( QObject * theWatched, QEvent * theEvent )
+//{
+//  bool aRet = VisuGUI::eventFilter(theWatched,theEvent);
+//   if(theEvent->type() == QEvent::Show){
+//     if(SUIT_ViewManager* aViewManager = getViewManager(VVTK_Viewer::Type(),false)){
+//       SUIT_ViewWindow* aWindow = aViewManager->getActiveView();
+//       VVTK_ViewWindow* aViewWindow = dynamic_cast<VVTK_ViewWindow*>(aWindow);
+//       if(VVTK_MainWindow1* aMainWindow = aViewWindow->getMainWindow1()){
+//     SVTK_RenderWindowInteractor* anInteractor = aMainWindow->GetInteractor();
+//     if(theWatched == anInteractor){
+//       SetMainWindowParams(this,myConfigSObject,aViewWindow,aMainWindow);
+//       anInteractor->removeEventFilter(this);
+//     }
+//       }
+//       if(VVTK_MainWindow2* aMainWindow = aViewWindow->getMainWindow2()){
+//     SVTK_RenderWindowInteractor* anInteractor = aMainWindow->GetInteractor();
+//     if(theWatched == aMainWindow->GetInteractor()){
+//       SetMainWindowParams(this,myConfigSObject,aViewWindow,aMainWindow);
+//       anInteractor->removeEventFilter(this);
+//     }
+//       }
+//     }
+//   }
+//  return aRet;
+//}
 
 
 const char gSeparator = '_'; // character used to separate parameter names
@@ -1640,38 +1632,40 @@ void VisuGUI_Module::storeVisualParameters(int savePoint)
   if( !study || !study->studyDS() )
     return;
   _PTR(Study) studyDS = study->studyDS();
-  _PTR(AttributeParameter) ap = studyDS->GetModuleParameters("Interface Applicative", moduleName().latin1(), savePoint);
+  _PTR(AttributeParameter) ap = studyDS->GetModuleParameters("Interface Applicative", moduleName().toLatin1().data(), savePoint);
   _PTR(IParameters) ip = ClientFactory::getIParameters(ap);
 
   // viewers counters are used for storing view_numbers in IParameters
-  int svtkViewers( 0 ), vvtkViewers( 0 ), plotViewers( 0 );
+  int svtkViewers( 0 ), /*vvtkViewers( 0 ),*/ plotViewers( 0 );
 
   // componentName is used for encoding of entries when storing them in IParameters
   _PTR(SComponent) visuEng = ClientFindOrCreateVisuComponent( studyDS );
   std::string componentName = visuEng->ComponentDataType();
 
-  QPtrList<SUIT_ViewManager> lst;
+  QList<SUIT_ViewManager*> lst;
+  QList<SUIT_ViewManager*>::Iterator it;
 
   // saving VVTK viewer parameters.  VVTK (Gauss Viewers) are NOT created by SalomeApp since
   // VVTK is declared in VISU, so here we store VVTK view window parameters.
   // VisuGUI_Module::restoreVisualParameters() creates VVTK_Views and restores its parameters.
-  ip->setProperty( "ActiveGaussViewer", "-1" ); 
+  /*  ip->setProperty( "ActiveGaussViewer", "-1" ); 
   getApp()->viewManagers( VVTK_Viewer::Type(), lst );
-  for ( QPtrListIterator<SUIT_ViewManager> it( lst ); it.current(); ++it ) {
-    SUIT_ViewManager* vman = it.current();
-    if ( SUIT_ViewWindow* vwin = vman->getActiveView() ) { 
-      // using predefined string "GaussViewer" as "entry"..  it's a hardcoded "workaround".  
+  for ( it = lst.begin(); it != lst.end(); it++ ) {
+    if ( SUIT_ViewWindow* vwin = (*it)->getActiveView() ) {
+      // using predefined string "GaussViewer" as "entry"..  it's a hardcoded "workaround".
       // gauss viewer parameters are retrieved using this "entry" string.
-      // name of parameter  = caption of gauss ViewWindow 
+      // name of parameter  = caption of gauss ViewWindow
       // value of parameter = ViewWindow's visual parameters
-      ip->setParameter( "GaussViewer", vwin->caption().latin1(), vwin->getVisualParameters().latin1() );
+      ip->setParameter( "GaussViewer",
+                        vwin->windowTitle().toLatin1().data(),
+                        vwin->getVisualParameters().toLatin1().data() );
 
       if ( application()->desktop()->activeWindow() == vwin )
-       ip->setProperty( "ActiveGaussViewer", QString::number( vvtkViewers ).latin1() );
+       ip->setProperty( "ActiveGaussViewer", QString::number( vvtkViewers ).toLatin1().data() );
       vvtkViewers++;
     }
   }
-
+  */
   // VISU module opens one SVTK viewer in activateModule().  This causes a bug in save-restore visual
   // parameters: it no SVTK view was saved, we need NOT any SVTK on restore.  Here we store if any is open..
   /*
@@ -1683,19 +1677,19 @@ void VisuGUI_Module::storeVisualParameters(int savePoint)
   // main cycle to store parameters of displayed objects
   lst.clear();
   getApp()->viewManagers( lst );
-  vvtkViewers = svtkViewers = plotViewers = 0;
-  for ( QPtrListIterator<SUIT_ViewManager> it( lst ); it.current(); ++it ) {
-    SUIT_ViewManager* vman = it.current();
+  /*vvtkViewers = */svtkViewers = plotViewers = 0;
+  for ( it = lst.begin(); it != lst.end(); it++ ) {
+    SUIT_ViewManager* vman = *it;
     QString vType = vman->getType();
     int* viewsCounter = vType == SVTK_Viewer::Type()    ? &svtkViewers :
-                        vType == VVTK_Viewer::Type()    ? &vvtkViewers :
+      //vType == VVTK_Viewer::Type()    ? &vvtkViewers :
                         vType == SPlot2d_Viewer::Type() ? &plotViewers : 0;
 
     // saving VTK actors' properties
-    if ( vType == SVTK_Viewer::Type() ||  // processing SVTK and VVTK viewers in the same
-        vType == VVTK_Viewer::Type() ) { // way (VVTK_ViewWindow inherits SVTK_ViewWindow)       
+    if ( vType == SVTK_Viewer::Type() /*||  // processing SVTK and VVTK viewers in the same
+                                       vType == VVTK_Viewer::Type()*/ ) { // way (VVTK_ViewWindow inherits SVTK_ViewWindow)       
 
-      QPtrVector<SUIT_ViewWindow> views = vman->getViews();
+      QVector<SUIT_ViewWindow*> views = vman->getViews();
       for ( int i = 0, iEnd = vman->getViewsCount(); i < iEnd; i++ ) {
        if ( SVTK_ViewWindow* vtkView = dynamic_cast<SVTK_ViewWindow*>( views[i] ) ) {
          vtkActorCollection* allActors = vtkView->getRenderer()->GetActors();
@@ -1704,37 +1698,39 @@ void VisuGUI_Module::storeVisualParameters(int savePoint)
            if ( actor->GetVisibility() ) { // store only visible actors
              if ( VISU_Actor* vActor = VISU_Actor::SafeDownCast( actor ) ) {
                if ( vActor->hasIO() ) { // actor corresponds to existing obj
-                 
+
                  Handle(SALOME_InteractiveObject) io = vActor->getIO();
-                 // entry is "ecoded" = it does NOT contain component adress, since it is a 
+                 // entry is "ecoded" = it does NOT contain component adress, since it is a
                  // subject to change on next component loading
-                 std::string entry = ip->encodeEntry( io->getEntry(), componentName ); 
+                 std::string entry = ip->encodeEntry( io->getEntry(), componentName );
 
-                 std::string param, vtkParam = vType.latin1(); vtkParam += gSeparator; 
-                 vtkParam += QString::number( *viewsCounter ).latin1();       vtkParam += gSeparator; 
+                 std::string param, vtkParam = vType.toLatin1().data();
+                  vtkParam += gSeparator;
+                 vtkParam += QString::number( *viewsCounter ).toLatin1().data();
+                  vtkParam += gSeparator;
 
-                 param = vtkParam + "Visibility";     
+                 param = vtkParam + "Visibility";
                  ip->setParameter( entry, param, "On" );
                  param = vtkParam + "Name";
                  ip->setParameter( entry, param, vActor->getName() );
                  param = vtkParam + "RepresentationMode";
-                 ip->setParameter( entry, param, QString::number( vActor->GetRepresentation() ).latin1() );
-                 param = vtkParam + "Opacity";  
-                 ip->setParameter( entry, param, QString::number( vActor->GetOpacity() ).latin1() );
+                 ip->setParameter( entry, param, QString::number( vActor->GetRepresentation() ).toLatin1().data() );
+                 param = vtkParam + "Opacity";
+                 ip->setParameter( entry, param, QString::number( vActor->GetOpacity() ).toLatin1().data() );
                  vtkFloatingPointType r, g, b;
                  vActor->GetColor(r, g, b);
                  QString colorStr  = QString::number( r ); colorStr += gDigitsSep;
-                         colorStr += QString::number( g ); colorStr += gDigitsSep; 
-                          colorStr += QString::number( b ); 
-                 param = vtkParam + "Color"; 
-                 ip->setParameter( entry, param, colorStr.latin1() );
+                         colorStr += QString::number( g ); colorStr += gDigitsSep;
+                          colorStr += QString::number( b );
+                 param = vtkParam + "Color";
+                 ip->setParameter( entry, param, colorStr.toLatin1().data() );
                  param = vtkParam + "LineWidth";
-                 ip->setParameter( entry, param, QString::number( vActor->GetLineWidth() ).latin1() );
+                 ip->setParameter( entry, param, QString::number( vActor->GetLineWidth() ).toLatin1().data() );
                  if ( vActor->IsShrunkable() && vActor->IsShrunk() ) {
                    param = vtkParam + "ShrinkMode";
                    ip->setParameter( entry, param, "On" );
                    param = vtkParam + "ShrinkFactor";
-                   ip->setParameter( entry, param, QString::number( vActor->GetShrinkFactor() ).latin1() );
+                   ip->setParameter( entry, param, QString::number( vActor->GetShrinkFactor() ).toLatin1().data() );
                  }
                  VISU_ScalarMapAct* scalarMapActor = dynamic_cast<VISU_ScalarMapAct*>( vActor );
                  if ( scalarMapActor && scalarMapActor->IsShading() ) {
@@ -1751,13 +1747,13 @@ void VisuGUI_Module::storeVisualParameters(int savePoint)
                      vtkFloatingPointType normal[3], origin[3];
                      plane->GetNormal( normal );
                      plane->GetOrigin( origin );
-                     std::string planeValue  = QString::number( normal[0] ).latin1(); planeValue += gDigitsSep;
-                                 planeValue += QString::number( normal[1] ).latin1(); planeValue += gDigitsSep;
-                                 planeValue += QString::number( normal[2] ).latin1(); planeValue += gDigitsSep;
-                                 planeValue += QString::number( origin[0] ).latin1(); planeValue += gDigitsSep;
-                                 planeValue += QString::number( origin[1] ).latin1(); planeValue += gDigitsSep;
-                                 planeValue += QString::number( origin[2] ).latin1(); 
-                     param = QString( "%1ClippingPlane_%2" ).arg( vtkParam.c_str() ).arg( p+1 ).latin1();
+                     std::string planeValue  = QString::number( normal[0] ).toLatin1().data(); planeValue += gDigitsSep;
+                                 planeValue += QString::number( normal[1] ).toLatin1().data(); planeValue += gDigitsSep;
+                                 planeValue += QString::number( normal[2] ).toLatin1().data(); planeValue += gDigitsSep;
+                                 planeValue += QString::number( origin[0] ).toLatin1().data(); planeValue += gDigitsSep;
+                                 planeValue += QString::number( origin[1] ).toLatin1().data(); planeValue += gDigitsSep;
+                                 planeValue += QString::number( origin[2] ).toLatin1().data();
+                     param = QString( "%1ClippingPlane_%2" ).arg( vtkParam.c_str() ).arg( p+1 ).toLatin1().data();
                      ip->setParameter( entry, param, planeValue );
                    }
                  }
@@ -1767,37 +1763,38 @@ void VisuGUI_Module::storeVisualParameters(int savePoint)
            } // isVisible
          } // end of ..while.. actors traversal
        } // if ( vtkView )
-      } // for ( views ) 
-      (*viewsCounter)++;   
+      } // for ( views )
+      (*viewsCounter)++;
     } // if ( SVTK view model )
     else if ( vType == SPlot2d_Viewer::Type() ) {  // processing Plot2d viewers
-      QPtrVector<SUIT_ViewWindow> views = vman->getViews();
+      QVector<SUIT_ViewWindow*> views = vman->getViews();
       for ( int i = 0, iEnd = vman->getViewsCount(); i < iEnd; i++ ) {
        if ( Plot2d_ViewWindow* plotView = dynamic_cast<Plot2d_ViewWindow*>( views[i] ) ) {
          Plot2d_ViewFrame* plotVF = plotView->getViewFrame();
-         QPtrList<Plot2d_Curve> curves;
+         QList<Plot2d_Curve*> curves;
+          QList<Plot2d_Curve*>::Iterator itCurve;
          plotVF->getCurves( curves );
          
-         Plot2d_Curve* curve;
-         for ( curve = curves.first(); curve; curve = curves.next() ) {
-           if ( SPlot2d_Curve* sCurve = dynamic_cast<SPlot2d_Curve*>( curve ) ) {
+         //Plot2d_Curve* curve;
+         for ( itCurve = curves.begin(); itCurve != curves.end(); itCurve++ ) {
+           if ( SPlot2d_Curve* sCurve = dynamic_cast<SPlot2d_Curve*>( *itCurve ) ) {
              if ( sCurve->hasIO() ) {
-               
+
                Handle(SALOME_InteractiveObject) io = sCurve->getIO();
-               // entry is "ecoded" = it does NOT contain component adress, since it is a 
+               // entry is "ecoded" = it does NOT contain component adress, since it is a
                // subject to change on next component loading
-               std::string entry = ip->encodeEntry( io->getEntry(), componentName ); 
+               std::string entry = ip->encodeEntry( io->getEntry(), componentName );
 
-               std::string param, plotParam = vType.latin1(); plotParam += gSeparator; 
-               plotParam += QString::number( *viewsCounter ).latin1();      plotParam += gSeparator; 
+               std::string param, plotParam = vType.toLatin1().data(); plotParam += gSeparator;
+               plotParam += QString::number( *viewsCounter ).toLatin1().data();      plotParam += gSeparator;
 
-               param = plotParam + "Visibility";     
+               param = plotParam + "Visibility";
                ip->setParameter( entry, param, "On" );
              }
            }
          } // for curves
        } // if ( plotView )
-      } // for ( views ) 
+      } // for ( views )
       (*viewsCounter)++;
     } // if ( SPlot2d view model )
   }
@@ -1813,9 +1810,9 @@ const int ParamName = 2;
 // return viewer type substring from parameter name
 std::string getParam( const std::string& paramName, const int index )
 {
-  QStringList lst = QStringList::split( gSeparator, QString( paramName.c_str() ) );
+  QStringList lst = QString( paramName.c_str() ).split( gSeparator, QString::SkipEmptyParts );
   if ( !lst.isEmpty() && index < lst.size() )
-    return lst[index].latin1();
+    return lst[index].toLatin1().data();
   return "";
 }
 
@@ -1832,43 +1829,44 @@ void VisuGUI_Module::restoreVisualParameters(int savePoint)
   if( !study || !study->studyDS() )
     return;
   _PTR(Study) studyDS = study->studyDS();
-  _PTR(AttributeParameter) ap = studyDS->GetModuleParameters("Interface Applicative", moduleName().latin1(), savePoint);
+  _PTR(AttributeParameter) ap =
+    studyDS->GetModuleParameters("Interface Applicative", moduleName().toLatin1().data(), savePoint);
   _PTR(IParameters) ip = ClientFactory::getIParameters(ap);
 
-  // actors are stored in a map after displaying of them for quicker access in future  
+  // actors are stored in a map after displaying of them for quicker access in future
   QMap<QString, QMap<QString, VISU_Actor*> > vtkActors; // map: entry to map: ViewType_<ID> to actor (SVTK/VVTK)
 
   std::vector<std::string> entries = ip->getEntries();
 
   for ( std::vector<std::string>::iterator entIt = entries.begin(); entIt != entries.end(); ++entIt ) {
-    
+
     std::vector<std::string> paramNames = ip->getAllParameterNames( *entIt );
     std::vector<std::string> paramValues = ip->getAllParameterValues( *entIt );
     std::vector<std::string>::iterator namesIt = paramNames.begin();
     std::vector<std::string>::iterator valuesIt = paramValues.begin();
     
-    if ( *entIt == "GaussViewer" ) {
-      // parameter names are view window's captions, values - visual parameters.
-      for ( ; namesIt != paramNames.end(); ++namesIt, ++valuesIt ) {
-       SUIT_ViewManager* vman = onCreateViewManager();
-       SUIT_ViewWindow* vwin = vman->getActiveView(); 
-       vwin->setCaption( (*namesIt).c_str() );
-
-       // wait untill the window is really shown.  This step fixes MANY bugs..
-       while ( !vwin->isVisible() )
-         qApp->processEvents();
-
-       vwin->setVisualParameters( (*valuesIt).c_str() );
-      }
-      continue; // skip to next entry
-    }
+//     if ( *entIt == "GaussViewer" ) {
+//       // parameter names are view window's captions, values - visual parameters.
+//       for ( ; namesIt != paramNames.end(); ++namesIt, ++valuesIt ) {
+//     SUIT_ViewManager* vman = onCreateViewManager();
+//     SUIT_ViewWindow* vwin = vman->getActiveView(); 
+//     vwin->setWindowTitle( (*namesIt).c_str() );
+
+//     // wait untill the window is really shown.  This step fixes MANY bugs..
+//     while ( !vwin->isVisible() )
+//       qApp->processEvents();
+
+//     vwin->setVisualParameters( (*valuesIt).c_str() );
+//       }
+//       continue; // skip to next entry
+//     }
     
     // entry is a normal entry - it should be "decoded" (setting base adress of component) 
     QString entry( ip->decodeEntry( *entIt ).c_str() );
 
     //SRN: Added a check that the entry corresponds to Standard_Real object in the Study
     //     as the object may be deleted or modified after the visual state is saved.
-    _PTR(SObject) so = studyDS->FindObjectID(entry.latin1());
+    _PTR(SObject) so = studyDS->FindObjectID(entry.toLatin1().data());
     if(!so) continue;  //Skip the not existent entry
 
     for ( ; namesIt != paramNames.end(); ++namesIt, ++valuesIt ) {
@@ -1879,20 +1877,20 @@ void VisuGUI_Module::restoreVisualParameters(int savePoint)
       std::string viewIndexStr = ::getParam( *namesIt, ViewIndex );
       int viewIndex = QString( viewIndexStr.c_str() ).toUInt( &ok );
       if ( !ok ) // bad conversion of view index to integer
-       continue;       
+       continue;
 
       //      cout << " -- " << viewerType << ": entry = " << entry.latin1() << ", paramName = " << paramName << endl;
 
-      if ( viewerType == SVTK_Viewer::Type().latin1() ||
-          viewerType == VVTK_Viewer::Type().latin1() ) {
+      if ( viewerType == SVTK_Viewer::Type().toLatin1().data() /*||
+                                                                viewerType == VVTK_Viewer::Type().toLatin1().data()*/ ) {
 
        // used as inner map key for locating the actor.
        QString viewerTypeIndex = QString( viewerType.c_str() ) + QString::number( viewIndex );
 
        if ( paramName == "Visibility" && displayer() ) {
-         // if VVTK, then we must create viewer first, because 
+         // if VVTK, then we must create viewer first, because
 
-         QPtrList<SUIT_ViewManager> lst;
+         QList<SUIT_ViewManager*> lst;
          getApp()->viewManagers( viewerType.c_str(), lst );
 
          // SVTK/VVTK ViewManager always has 1 ViewWindow, so view index is index of view manager
@@ -1922,18 +1920,18 @@ void VisuGUI_Module::restoreVisualParameters(int savePoint)
            continue;
 
          QString val( (*valuesIt).c_str() );
-         
+
          if ( paramName == "Name" )
-           vActor->setName( val.latin1() );
+           vActor->setName( val.toLatin1().data() );
 
-         else if ( paramName == "RepresentationMode" ) 
+         else if ( paramName == "RepresentationMode" )
            vActor->SetRepresentation( val.toInt() );
 
          else if ( paramName == "Opacity" )
            vActor->SetOpacity( val.toFloat() );
 
          else if ( paramName == "Color" ) {
-           QStringList colors = QStringList::split( gDigitsSep, val );
+           QStringList colors = val.split( gDigitsSep, QString::SkipEmptyParts );
            if ( colors.count() == 3 )
              vActor->SetColor( colors[0].toFloat(), colors[1].toFloat(), colors[2].toFloat() );
          }
@@ -1959,9 +1957,14 @@ void VisuGUI_Module::restoreVisualParameters(int savePoint)
            if ( !prs )
              continue;
 
-           prs->RemoveAllClippingPlanes();
+           //prs->RemoveAllClippingPlanes();
+           for (int i = prs->GetNumberOfClippingPlanes() - 1; i >= 0 ; i--) {
+             OrientedPlane* aPlane = dynamic_cast<OrientedPlane*>(prs->GetClippingPlane(i));
+             if (aPlane) 
+               prs->RemoveClippingPlane(i);
+           }
            if ( val != "Off" ) {
-             QStringList vals = QStringList::split( gDigitsSep, val );
+             QStringList vals = val.split( gDigitsSep, QString::SkipEmptyParts );
              if ( vals.count() == 6 ) { // format check: 6 float values
                vtkFloatingPointType normal[3], origin[3];
                for (int x = 0; x < 3; x++ ) {
@@ -1979,17 +1982,17 @@ void VisuGUI_Module::restoreVisualParameters(int savePoint)
        } // else ..
       } // if SVTK
 
-      else if ( viewerType == SPlot2d_Viewer::Type().latin1() ) {
+      else if ( viewerType == SPlot2d_Viewer::Type().toLatin1().data() ) {
 
        if ( paramName == "Visibility" && displayer() ) {
-         QPtrList<SUIT_ViewManager> lst;
+         QList<SUIT_ViewManager*> lst;
          getApp()->viewManagers( viewerType.c_str(), lst );
 
          if ( viewIndex >= 0 && viewIndex < lst.count() ) {
            SUIT_ViewManager* vman = lst.at( viewIndex );
            SUIT_ViewModel* vmodel = vman->getViewModel();
            // SVTK and VVTK view models can be casted to SALOME_View
-           displayer()->Display( entry, true, dynamic_cast<SALOME_View*>( vmodel ) ); 
+           displayer()->Display( entry, true, dynamic_cast<SALOME_View*>( vmodel ) );
          }
        }
 
@@ -1999,21 +2002,20 @@ void VisuGUI_Module::restoreVisualParameters(int savePoint)
   } // for entries iterator
 
   // [ update all SVTK/VVTK/Plot2D views
-  QPtrList<SUIT_ViewManager> lst;
+  QList<SUIT_ViewManager*> lst;
   getApp()->viewManagers( lst );
-  for ( QPtrListIterator<SUIT_ViewManager> it( lst ); it.current(); ++it ) {
-    SUIT_ViewManager* vman = it.current();
-    SUIT_ViewModel* vmodel = vman->getViewModel();
+  for ( QList<SUIT_ViewManager*>::Iterator it = lst.begin(); it != lst.end(); it++ ) {
+    SUIT_ViewModel* vmodel = (*it)->getViewModel();
     if ( !vmodel )
       continue;
-    if ( vmodel->getType() == SVTK_Viewer::Type() ||  // processing SVTK and VVTK viewers
-        vmodel->getType() == VVTK_Viewer::Type() ) { // in the same way 
-      SVTK_ViewWindow* vtkView = (SVTK_ViewWindow*) vman->getActiveView();
+    if ( vmodel->getType() == SVTK_Viewer::Type() /*||  // processing SVTK and VVTK viewers
+                                                   vmodel->getType() == VVTK_Viewer::Type()*/ ) { // in the same way 
+      SVTK_ViewWindow* vtkView = (SVTK_ViewWindow*) (*it)->getActiveView();
       vtkView->getRenderer()->ResetCameraClippingRange();
       vtkView->Repaint();
     }
-    else if ( vmodel->getType() == SPlot2d_Viewer::Type().latin1() ) {
-      Plot2d_ViewWindow* plotView = (Plot2d_ViewWindow*) vman->getActiveView();
+    else if ( vmodel->getType() == SPlot2d_Viewer::Type().toLatin1().data() ) {
+      Plot2d_ViewWindow* plotView = (Plot2d_ViewWindow*) (*it)->getActiveView();
       plotView->getViewFrame()->Repaint();
     }
   } // ] end of update views
@@ -2033,19 +2035,19 @@ void VisuGUI_Module::restoreVisualParameters(int savePoint)
   */
 
   // if active Gauss Viewer is set ( != -1) then raise the gauss view window.
-  bool ok;
-  QString activeGaussViewerStr = ip->getProperty( "ActiveGaussViewer" ).c_str();
-  int activeGaussViewer = activeGaussViewerStr.toInt( &ok );
-  if ( ok && activeGaussViewer != -1 ) {
-    lst.clear();
-    getApp()->viewManagers( VVTK_Viewer::Type(), lst );
-    if ( activeGaussViewer >= 0 && activeGaussViewer < lst.count() ) {
-      SUIT_ViewWindow* activeView = lst.at( activeGaussViewer )->getActiveView();
-      if ( activeView ) {
-       activeView->setActiveWindow();
-       activeView->setFocus();
-      }          
-    }
-  }
+//   bool ok;
+//   QString activeGaussViewerStr = ip->getProperty( "ActiveGaussViewer" ).c_str();
+//   int activeGaussViewer = activeGaussViewerStr.toInt( &ok );
+//   if ( ok && activeGaussViewer != -1 ) {
+//     lst.clear();
+//     getApp()->viewManagers( VVTK_Viewer::Type(), lst );
+//     if ( activeGaussViewer >= 0 && activeGaussViewer < lst.count() ) {
+//       SUIT_ViewWindow* activeView = lst.at( activeGaussViewer )->getActiveView();
+//       if ( activeView ) {
+//     activeView->activateWindow();
+//     //activeView->setFocus();
+//       }          
+//     }
+//   }
 }
 
index 02abf76e08c74e5d7465f7466a0245f6a23b9ce7..9d811a51234738dcf73ce80bbb519bbe4967f6e3 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_Module.h
 //  Author : 
 //  Module : VISU
-
+//
 #ifndef VisuGUI_Module_HeaderFile
 #define VisuGUI_Module_HeaderFile
 
@@ -50,9 +49,9 @@ public:
   virtual
   ~VisuGUI_Module();
 
-  virtual
-  bool
-  eventFilter( QObject * theWatched, QEvent * theEvent );
+  //  virtual
+  //  bool
+  //  eventFilter( QObject * theWatched, QEvent * theEvent );
 
   //! Redifined method of the module initializing.
   virtual
@@ -81,16 +80,12 @@ public:
   void
   restoreVisualParameters(int savePoint);
 
-public slots:
+  //public slots:
   //! Reimplemented method of the module deactivation.
-  virtual 
-  bool
-  deactivateModule( SUIT_Study* );
+  //  virtual bool deactivateModule( SUIT_Study* );
 
   //! Reimplemented method of the module activation.
-  virtual 
-  bool
-  activateModule( SUIT_Study* );
+  //  virtual bool activateModule( SUIT_Study* );
 
 protected:
   //! Create preferences for Gauss Points presentation.
@@ -123,8 +118,8 @@ protected:
   createRecorderPreferences();
 
 protected slots:
-  SUIT_ViewManager*
-  onCreateViewManager();
+  //  SUIT_ViewManager*
+  //  onCreateViewManager();
 
   void
   OnCreateGaussPoints();
@@ -132,8 +127,8 @@ protected slots:
   void
   OnViewCreated(SUIT_ViewWindow*);
 
-  void 
-  OnViewManagerAdded(SUIT_ViewManager*);
+  //  void 
+  //OnViewManagerAdded(SUIT_ViewManager*);
 
   //! Reimplemented method of the Gauss Points edition.
   virtual
@@ -141,25 +136,26 @@ protected slots:
   OnEditGaussPoints();
 
   //! Virtual method of saving configuration.
-  virtual
-  void
-  OnSaveConfiguration();
+  //  virtual
+  //  void
+  //  OnSaveConfiguration();
 
   //! Virtual method of overwriting configuration.
-  virtual
-  void
-  OnOverwriteConfiguration();
+  //  virtual
+  //  void
+  //  OnOverwriteConfiguration();
 
   //! Virtual method of restoring configuration.
-  virtual
-  void
-  OnRestoreConfiguration();
+  //  virtual
+  //  void
+  //  OnRestoreConfiguration();
 
 protected:
   _PTR(SObject) myConfigSObject;
 
   void setProperty( SVTK_ViewWindow*, const QString& );  // set a property (speed_increment, etc ) for SVTK ViewWindow
   void setProperty( SVTK_ViewManager*, const QString& ); // set a property for SVTK ViewWindow // set only 1 property for all ViewWindows of given view manager
+
 };
 
 #endif
index 67e3f3ee3c71e2444db689aeb8a52434ac1139ef..e7cffb53f2bdea4ab991bbcb2e6eddc671660cb9 100644 (file)
@@ -1,27 +1,29 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VisuGUI_NameDlg.cxx
 //  Author : Vadim SANDLER
 //  Module : SALOME
 //  $Header$
-
+//
 #include "VisuGUI_NameDlg.h"
 #include "VisuGUI.h"
 
 
 #include <LightApp_Application.h>
 
-#include <qgroupbox.h>
-#include <qlabel.h>
-#include <qlineedit.h>
-#include <qpushbutton.h>
-#include <qlayout.h>
+#include <QGroupBox>
+#include <QLabel>
+#include <QLineEdit>
+#include <QPushButton>
+#include <QLayout>
+#include <QKeyEvent>
 using namespace std;
 
 /*!
   Constructor
 */
 VisuGUI_NameDlg::VisuGUI_NameDlg( QWidget* parent )
-    : QDialog(parent ? parent : SUIT_Session::session()->activeApplication()->desktop(),
-              "VisuGUI_NameDlg",
-              true,
-              WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu)
+    : QDialog( parent ? parent : SUIT_Session::session()->activeApplication()->desktop(), 
+              Qt::WindowTitleHint | Qt::WindowSystemMenuHint )//,WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu )
 {
-  setCaption( tr("TLT_RENAME") );
+  setWindowTitle( tr("TLT_RENAME") );
   setSizeGripEnabled( TRUE );
+  setModal( true );
 
   QVBoxLayout* topLayout = new QVBoxLayout( this );
   topLayout->setMargin( 11 ); topLayout->setSpacing( 6 );
 
   /***************************************************************/
-  QGroupBox* GroupC1 = new QGroupBox( this, "GroupC1" );
-  GroupC1->setColumnLayout(0, Qt::Vertical );
-  GroupC1->layout()->setMargin( 0 ); GroupC1->layout()->setSpacing( 0 );
-  QHBoxLayout* GroupC1Layout = new QHBoxLayout( GroupC1->layout() );
+  QGroupBox* GroupC1 = new QGroupBox( this );  
+  //GroupC1->setColumnLayout(0, Qt::Vertical );
+  //GroupC1->layout()->setMargin( 0 ); GroupC1->layout()->setSpacing( 0 );
+  QHBoxLayout* GroupC1Layout = new QHBoxLayout( GroupC1 );
   GroupC1Layout->setAlignment( Qt::AlignTop );
   GroupC1Layout->setMargin( 11 ); GroupC1Layout->setSpacing( 6 );
-
-  QLabel* TextLabel = new QLabel( GroupC1, "TextLabel1" );
-  TextLabel->setText( tr( "NAME_LBL" ) );
+  
+  QLabel* TextLabel = new QLabel( tr( "NAME_LBL" ), GroupC1 );
   GroupC1Layout->addWidget( TextLabel );
-
-  myLineEdit = new QLineEdit( GroupC1, "LineEdit1" );
+  
+  myLineEdit = new QLineEdit( GroupC1 );
   myLineEdit->setMinimumSize( 250, 0 );
   GroupC1Layout->addWidget( myLineEdit );
 
   /***************************************************************/
-  QGroupBox* GroupButtons = new QGroupBox( this, "GroupButtons" );
-  GroupButtons->setColumnLayout(0, Qt::Vertical );
-  GroupButtons->layout()->setMargin( 0 ); GroupButtons->layout()->setSpacing( 0 );
-  QHBoxLayout* GroupButtonsLayout = new QHBoxLayout( GroupButtons->layout() );
+  QGroupBox* GroupButtons = new QGroupBox( this );
+  //GroupButtons->setColumnLayout(0, Qt::Vertical );
+  //GroupButtons->layout()->setMargin( 0 ); GroupButtons->layout()->setSpacing( 0 ); 
+  QHBoxLayout* GroupButtonsLayout = new QHBoxLayout( GroupButtons );
   GroupButtonsLayout->setAlignment( Qt::AlignTop );
   GroupButtonsLayout->setMargin( 11 ); GroupButtonsLayout->setSpacing( 6 );
-
-  myButtonOk = new QPushButton( GroupButtons, "buttonOk" );
+  
+  myButtonOk = new QPushButton( GroupButtons );
   myButtonOk->setText( tr( "BUT_OK"  ) );
   myButtonOk->setAutoDefault( TRUE ); myButtonOk->setDefault( TRUE );
   GroupButtonsLayout->addWidget( myButtonOk );
 
   GroupButtonsLayout->addStretch();
   
-  myButtonCancel = new QPushButton( GroupButtons, "buttonCancel" );
+  myButtonCancel = new QPushButton( GroupButtons );
   myButtonCancel->setText( tr( "BUT_CANCEL"  ) );
   myButtonCancel->setAutoDefault( TRUE );
   GroupButtonsLayout->addWidget( myButtonCancel );
 
-  myButtonHelp = new QPushButton( GroupButtons, "buttonHelp" );
+  myButtonHelp = new QPushButton( GroupButtons );
   myButtonHelp->setText( tr( "BUT_HELP"  ) );
   myButtonHelp->setAutoDefault( TRUE );
   GroupButtonsLayout->addWidget( myButtonHelp );
@@ -137,7 +138,7 @@ QString VisuGUI_NameDlg::name()
 
 void VisuGUI_NameDlg::accept()
 {
-  if ( name().stripWhiteSpace().isEmpty() )
+  if ( name().trimmed().isEmpty() )
     return;
   QDialog::accept();
 }
@@ -157,10 +158,9 @@ void VisuGUI_NameDlg::onHelp()
 #else
     platform = "application";
 #endif
-    SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"),
-                           QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
-                          arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
-                          QObject::tr("BUT_OK"));
+    SUIT_MessageBox::warning(0, QObject::tr("WRN_WARNING"),
+                             QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                             arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName) );
   }
 }
 
@@ -185,7 +185,7 @@ void VisuGUI_NameDlg::keyPressEvent( QKeyEvent* e )
   if ( e->isAccepted() )
     return;
 
-  if ( e->key() == Key_F1 )
+  if ( e->key() == Qt::Key_F1 )
     {
       e->accept();
       onHelp();
index 5198a631e52e0e5486b811a4eb875a9533e6581e..ed1cdab15083a7f3bbf7d19f3d79ea198dec2c33 100644 (file)
@@ -1,30 +1,32 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VisuGUI_NameDlg.h
 //  Author : Vadim SANDLER
 //  Module : SALOME
-
+//
 #ifndef VisuGUI_NAMEDLG_H
 #define VisuGUI_NAMEDLG_H
 
-#include <qdialog.h>
+#include <QDialog>
 
 class QLineEdit;
 class QPushButton;
index 5ef2cbfbe334d8ad8ff876df70b76ceedddc4e0a..ec2f95eec616c8c2c2bc11163c258c28a1a404ec 100644 (file)
@@ -1,23 +1,24 @@
-// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-// 
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either 
-// version 2.1 of the License.
-// 
-// This library is distributed in the hope that it will be useful 
-// but WITHOUT ANY WARRANTY; without even the implied warranty of 
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-// Lesser General Public License for more details.
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// You should have received a copy of the GNU Lesser General Public  
-// License along with this library; if not, write to the Free Software 
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
-
 #include "VisuGUI_OffsetDlg.h"
 
 #include "VisuGUI.h"
 #include "VISU_Actor.h"
 
 #include "LightApp_Application.h"
+#include "LightApp_SelectionMgr.h"
+#include "SALOME_ListIteratorOfListIO.hxx"
 #include "SalomeApp_Application.h"
 #include "SVTK_ViewWindow.h"
 #include "SVTK_ViewModel.h"
+#include "SUIT_ViewManager.h"
 #include "SUIT_Desktop.h"
 #include "SUIT_Session.h"
 #include "SUIT_MessageBox.h"
 #include "SUIT_ResourceMgr.h"
 
-#include "QtxDblSpinBox.h"
+#include "QtxDoubleSpinBox.h"
 
 // VTK Includes
 #include "vtkRenderer.h"
 
 // QT Includes
-#include <qhbox.h>
-#include <qlabel.h>
-#include <qlayout.h>
-#include <qcheckbox.h>
-#include <qgroupbox.h>
-#include <qpushbutton.h>
+#include <QLabel>
+#include <QLayout>
+#include <QCheckBox>
+#include <QGroupBox>
+#include <QPushButton>
+#include <QKeyEvent>
 
 
 #define  MAXVAL 1e10
 
 
 VisuGUI_OffsetDlg::VisuGUI_OffsetDlg (VisuGUI* theModule)
-: QDialog(VISU::GetDesktop(theModule), 0, false, WStyle_Customize |
-          WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu | WDestructiveClose),
-myModule(theModule)
+: QDialog(VISU::GetDesktop(theModule), Qt::WindowTitleHint | Qt::WindowSystemMenuHint ),
+  myModule(theModule),
+  mySelectionMgr(VISU::GetSelectionMgr(theModule))
 {
-  myPrsList.setAutoDelete(false);
+  //myPrsList.setAutoDelete(false);
+  //myPointMapList.setAutoDelete(false);
 
-  setName("VisuGUI_OffsetDlg");
-  setCaption(tr("TIT_OFFSETDLG"));
+  setWindowTitle(tr("TIT_OFFSETDLG"));
   setSizeGripEnabled(TRUE);
 
   QVBoxLayout* TopLayout = new QVBoxLayout (this);
   TopLayout->setSpacing(6);
   TopLayout->setMargin(11);
 
-  QHBox* anOffsetsPane = new QHBox (this);
-  anOffsetsPane->setSpacing(6);
+  QWidget* anOffsetsPane = new QWidget (this);
+  QHBoxLayout* aHBLay = new QHBoxLayout( anOffsetsPane );
+  aHBLay->setSpacing(6);
 
-  new QLabel ("dX:", anOffsetsPane);
-  myDxEdt = new QtxDblSpinBox (anOffsetsPane, "myDxEdt");
+  aHBLay->addWidget( new QLabel ("dX:", anOffsetsPane) );
+  aHBLay->addWidget( myDxEdt = new QtxDoubleSpinBox (anOffsetsPane) );
   myDxEdt->setRange(-MAXVAL, MAXVAL);
 
-  new QLabel("dY:", anOffsetsPane);
-  myDyEdt = new QtxDblSpinBox (anOffsetsPane, "myDyEdt");
+  aHBLay->addWidget( new QLabel("dY:", anOffsetsPane) );;
+  aHBLay->addWidget( myDyEdt = new QtxDoubleSpinBox (anOffsetsPane) );
   myDyEdt->setRange(-MAXVAL, MAXVAL);
 
-  new QLabel("dZ:", anOffsetsPane);
-  myDzEdt = new QtxDblSpinBox (anOffsetsPane, "myDzEdt");
+  aHBLay->addWidget( new QLabel("dZ:", anOffsetsPane) );
+  aHBLay->addWidget( myDzEdt = new QtxDoubleSpinBox (anOffsetsPane) );
   myDzEdt->setRange(-MAXVAL, MAXVAL);
 
   QPushButton* aResetBtn = new QPushButton(tr("BTN_RESET"), anOffsetsPane);
+  aHBLay->addWidget( aResetBtn );
   connect(aResetBtn, SIGNAL(clicked()), this, SLOT(onReset()));
 
   TopLayout->addWidget(anOffsetsPane);
@@ -96,32 +102,32 @@ myModule(theModule)
   }
 
   // Common buttons ===========================================================
-  QGroupBox* GroupButtons = new QGroupBox(this, "GroupButtons");
-  GroupButtons->setColumnLayout(0, Qt::Vertical);
-  GroupButtons->layout()->setSpacing(0);
-  GroupButtons->layout()->setMargin(0);
-  QGridLayout* GroupButtonsLayout = new QGridLayout(GroupButtons->layout());
+  QGroupBox* GroupButtons = new QGroupBox(this);
+  //GroupButtons->setColumnLayout(0, Qt::Vertical);
+  //GroupButtons->layout()->setSpacing(0);
+  //GroupButtons->layout()->setMargin(0);
+  QGridLayout* GroupButtonsLayout = new QGridLayout(GroupButtons);
   GroupButtonsLayout->setAlignment(Qt::AlignTop);
   GroupButtonsLayout->setSpacing(6);
   GroupButtonsLayout->setMargin(11);
 
-  QPushButton* buttonOk = new QPushButton(tr("&OK"), GroupButtons, "buttonOk");
+  QPushButton* buttonOk = new QPushButton(tr("&OK"), GroupButtons);
   buttonOk->setAutoDefault(TRUE);
   buttonOk->setDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonOk, 0, 0);
   GroupButtonsLayout->addItem(new QSpacerItem(5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum), 0, 1);
 
-  QPushButton* buttonApply = new QPushButton(tr("&Apply"), GroupButtons, "buttonApply");
+  QPushButton* buttonApply = new QPushButton(tr("&Apply"), GroupButtons);
   buttonOk->setAutoDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonApply, 0, 2);
   GroupButtonsLayout->addItem(new QSpacerItem(5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum), 0, 3);
 
-  QPushButton* buttonCancel = new QPushButton(tr("&Cancel") , GroupButtons, "buttonCancel");
+  QPushButton* buttonCancel = new QPushButton(tr("&Cancel") , GroupButtons);
   buttonCancel->setAutoDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonCancel, 0, 4);
   GroupButtonsLayout->addItem(new QSpacerItem(5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum), 0, 5);  
 
-  QPushButton* buttonHelp = new QPushButton(tr("&Help") , GroupButtons, "buttonHelp");
+  QPushButton* buttonHelp = new QPushButton(tr("&Help") , GroupButtons );
   buttonHelp->setAutoDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonHelp, 0, 6);
 
@@ -131,6 +137,50 @@ myModule(theModule)
   connect(buttonApply,  SIGNAL(clicked()), this, SLOT(onApply()));
   connect(buttonCancel, SIGNAL(clicked()), this, SLOT(reject()));
   connect(buttonHelp,   SIGNAL(clicked()), this, SLOT(onHelp()));
+  connect(mySelectionMgr, SIGNAL(currentSelectionChanged()), this, SLOT(onSelectionChanged()));
+  
+  onSelectionChanged();
+  show();
+}
+
+void VisuGUI_OffsetDlg::setVisible(bool show){
+  if ( show  && getPrsCount() > 0 )
+    QDialog::setVisible( show );
+  else
+    QDialog::setVisible( show );
+}
+
+void VisuGUI_OffsetDlg::onSelectionChanged(){
+  if(!mySelectionMgr)
+    return;
+  
+  //Clear old selection
+  clearPresentations();
+
+  SALOME_ListIO aListIO;
+  mySelectionMgr->selectedObjects(aListIO);
+
+  SalomeApp_Study* aStudy = VISU::GetAppStudy(myModule);
+  SALOME_ListIteratorOfListIO anIter(aListIO);
+  for (; anIter.More(); anIter.Next()) {
+    Handle(SALOME_InteractiveObject) anIO = anIter.Value();
+    if (anIO->hasEntry()) {
+      QString anEntry(anIO->getEntry());
+      VISU::TObjectInfo anObjectInfo = VISU::GetObjectByEntry(aStudy, anEntry.toLatin1().constData());
+      if(VISU::Prs3d_i* aPrsObject = VISU::GetPrs3dFromBase(anObjectInfo.myBase))
+       addPresentation(aPrsObject);
+      else if (VISU::PointMap3d_i* aPrs = dynamic_cast<VISU::PointMap3d_i*>(anObjectInfo.myBase)) {
+       addPointMapPresentation(aPrs);
+      }
+    }
+  }
+}
+
+void VisuGUI_OffsetDlg::clearPresentations(){
+  myPrsList.clear();
+  myPointMapList.clear();
+  myOldOffsets.clear();
+  myOldPointMapOffsets.clear();
 }
 
 void VisuGUI_OffsetDlg::addPresentation (VISU::Prs3d_i* thePrs)
@@ -148,6 +198,22 @@ void VisuGUI_OffsetDlg::addPresentation (VISU::Prs3d_i* thePrs)
   }
 }
 
+void VisuGUI_OffsetDlg::addPointMapPresentation (VISU::PointMap3d_i* thePrs)
+{
+  myPointMapList.append(thePrs);
+
+  CORBA::Float anOffset[3];
+  thePrs->GetOffset(anOffset[0],anOffset[1],anOffset[2]);
+  OffsetStruct anOffs(anOffset[0],anOffset[1],anOffset[2]);
+  myOldPointMapOffsets.append(anOffs);
+  if (myPointMapList.count() == 1) {
+    setOffset(anOffs.myOffset);
+  } else if (myPointMapList.count() == 2) {
+    OffsetStruct anOffs;
+    setOffset(anOffs.myOffset);
+  }
+}
+
 void VisuGUI_OffsetDlg::setOffset (const vtkFloatingPointType* theOffset)
 {
   myDxEdt->setValue(theOffset[0]);
@@ -182,22 +248,53 @@ void VisuGUI_OffsetDlg::updateOffset (VISU::Prs3d_i* thePrs, vtkFloatingPointTyp
   if (myPrsList.count() == 0) 
     return;
 
-  if (isToSave()) 
+  if (isToSave()) {
+    thePrs->SetOffset(theOffset[0],theOffset[1],theOffset[2]);
+    thePrs->UpdateActors();
+    return;
+  }
+
+  ViewManagerList aViewManagerList;
+  SalomeApp_Application* anApp = myModule->getApp();
+  anApp->viewManagers(aViewManagerList);
+  QList<SUIT_ViewManager*>::Iterator anVMIter = aViewManagerList.begin();
+  for (; anVMIter !=  aViewManagerList.end(); anVMIter++ ) {
+    QVector<SUIT_ViewWindow*> aViews = (*anVMIter)->getViews();
+    for (int i = 0, iEnd = aViews.size(); i < iEnd; i++) {
+      if (SUIT_ViewWindow* aViewWindow = aViews.at(i)) {
+        if (SVTK_ViewWindow* vw = dynamic_cast<SVTK_ViewWindow*>(aViewWindow)) {
+          if (VISU_Actor* anActor = VISU::FindActor(vw, thePrs)) {
+               anActor->SetPosition(theOffset);
+            vw->onAdjustTrihedron();
+            vw->getRenderer()->ResetCameraClippingRange();
+            vw->Repaint();
+          }
+        }
+      }
+    }
+  }
+}
+
+void VisuGUI_OffsetDlg::updatePointMapOffset (VISU::PointMap3d_i* thePrs, vtkFloatingPointType* theOffset)
+{
+  if (myPointMapList.count() == 0) 
+    return;
+
+  if (isToSave())
     thePrs->SetOffset(theOffset[0],theOffset[1],theOffset[2]);
 
   ViewManagerList aViewManagerList;
   SalomeApp_Application* anApp = myModule->getApp();
   anApp->viewManagers(aViewManagerList);
-  QPtrListIterator<SUIT_ViewManager> anVMIter (aViewManagerList);
-  for (; anVMIter.current(); ++anVMIter) {
-    SUIT_ViewManager* aViewManager = anVMIter.current();
-    QPtrVector<SUIT_ViewWindow> aViews = aViewManager->getViews();
+  SUIT_ViewManager* aViewManager;
+  foreach( aViewManager, aViewManagerList ) {
+    QVector<SUIT_ViewWindow*> aViews = aViewManager->getViews();
     for (int i = 0, iEnd = aViews.size(); i < iEnd; i++) {
       if (SUIT_ViewWindow* aViewWindow = aViews.at(i)) {
         if (SVTK_ViewWindow* vw = dynamic_cast<SVTK_ViewWindow*>(aViewWindow)) {
          vw->onAdjustTrihedron();
 
-          if (VISU_Actor* anActor = VISU::FindActor(vw, thePrs)) {
+          if (VISU_ActorBase* anActor = VISU::FindActorBase(vw, thePrs)) {
             anActor->SetPosition(theOffset);
            vw->highlight(thePrs->GetIO(), 1);
             vw->getRenderer()->ResetCameraClippingRange();
@@ -216,6 +313,9 @@ void VisuGUI_OffsetDlg::accept()
   for (int i = 0; i < myPrsList.count(); i++) {
     updateOffset(myPrsList.at(i), anOffset);
   }
+  for (int i = 0; i < myPointMapList.count(); i++) {
+    updatePointMapOffset(myPointMapList.at(i), anOffset);
+  }
   QDialog::accept();
 }
 
@@ -224,6 +324,9 @@ void VisuGUI_OffsetDlg::reject()
   for (int i = 0; i < myPrsList.count(); i++) {
     updateOffset(myPrsList.at(i), myOldOffsets[i].myOffset);
   }
+  for (int i = 0; i < myPointMapList.count(); i++) {
+    updatePointMapOffset(myPointMapList.at(i), myOldOffsets[i].myOffset);
+  }
   QDialog::reject();
 }
 
@@ -231,9 +334,13 @@ void VisuGUI_OffsetDlg::onApply()
 {
   vtkFloatingPointType anOffset[3];
   getOffset(anOffset);
+
   for (int i = 0; i < myPrsList.count(); i++) {
     updateOffset(myPrsList.at(i), anOffset);
   }
+  for (int i = 0; i < myPointMapList.count(); i++) {
+    updatePointMapOffset(myPointMapList.at(i), anOffset);
+  }
 }
 
 void VisuGUI_OffsetDlg::onHelp()
@@ -249,10 +356,10 @@ void VisuGUI_OffsetDlg::onHelp()
 #else
     platform = "application";
 #endif
-    SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"),
-                          QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
-                          arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
-                          QObject::tr("BUT_OK"));
+    SUIT_MessageBox::warning(0, QObject::tr("WRN_WARNING"),
+                             QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                             arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
+                             QObject::tr("BUT_OK"));
   }
 }
 
@@ -262,7 +369,7 @@ void VisuGUI_OffsetDlg::keyPressEvent( QKeyEvent* e )
   if ( e->isAccepted() )
     return;
 
-  if ( e->key() == Key_F1 )
+  if ( e->key() == Qt::Key_F1 )
     {
       e->accept();
       onHelp();
index a1d67a511616a9d8a01aa9f15141434c4fabdc3a..82ec25341cbbbb8d02d58b6d6222dc6b66b73ba5 100644 (file)
@@ -1,36 +1,39 @@
-// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-// 
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either 
-// version 2.1 of the License.
-// 
-// This library is distributed in the hope that it will be useful 
-// but WITHOUT ANY WARRANTY; without even the implied warranty of 
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-// Lesser General Public License for more details.
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// You should have received a copy of the GNU Lesser General Public  
-// License along with this library; if not, write to the Free Software 
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
-
 #ifndef DIALOGBOX_OFFSET_H
 #define DIALOGBOX_OFFSET_H
 
 #include "VTKViewer.h"
 #include "VISU_Prs3d_i.hh"
+#include "VISU_PointMap3d_i.hh"
 
 // QT Includes
-#include <qdialog.h>
-#include <qptrlist.h>
+#include <QDialog>
+#include <QList>
 
 class QCheckBox;
-class QtxDblSpinBox;
+class QtxDoubleSpinBox;
 class VisuGUI;
+class LightApp_SelectionMgr;
 
 struct OffsetStruct
 {
@@ -58,8 +61,12 @@ class VisuGUI_OffsetDlg: public QDialog
   VisuGUI_OffsetDlg (VisuGUI* theModule);
   ~VisuGUI_OffsetDlg() {};
 
+  virtual void setVisible(bool);
+
   void addPresentation (VISU::Prs3d_i* thePrs);
-  int getPrsCount() const { return myPrsList.count(); }
+  void addPointMapPresentation (VISU::PointMap3d_i* thePrs);
+  int  getPrsCount() const { return myPrsList.count() + myPointMapList.count(); }
+  void clearPresentations();
 
   void setOffset (const vtkFloatingPointType* theOffset);
   void getOffset (vtkFloatingPointType* theOffset) const;
@@ -76,19 +83,25 @@ class VisuGUI_OffsetDlg: public QDialog
   virtual void reject();
   void onApply();
   void onHelp();
+  void onSelectionChanged();
 
  private:
   void updateOffset (VISU::Prs3d_i* thePrs, vtkFloatingPointType* theOffset);
+  void updatePointMapOffset (VISU::PointMap3d_i* thePrs, vtkFloatingPointType* theOffset);
 
   VisuGUI * myModule;
+  LightApp_SelectionMgr*  mySelectionMgr;
 
-  QtxDblSpinBox * myDxEdt;
-  QtxDblSpinBox * myDyEdt;
-  QtxDblSpinBox * myDzEdt;
+  QtxDoubleSpinBox * myDxEdt;
+  QtxDoubleSpinBox * myDyEdt;
+  QtxDoubleSpinBox * myDzEdt;
   QCheckBox     * mySaveChk;
 
-  QPtrList<VISU::Prs3d_i>  myPrsList;
-  QValueList<OffsetStruct> myOldOffsets;
+  QList<VISU::Prs3d_i*>  myPrsList;
+  QList<OffsetStruct> myOldOffsets;
+
+  QList<VISU::PointMap3d_i*> myPointMapList;
+  QList<OffsetStruct>        myOldPointMapOffsets;
 };
 
 #endif // DIALOGBOX_OFFSET_H
diff --git a/src/VISUGUI/VisuGUI_Panel.cxx b/src/VISUGUI/VisuGUI_Panel.cxx
new file mode 100755 (executable)
index 0000000..c1be4ea
--- /dev/null
@@ -0,0 +1,241 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
+//  File   : VisuGUI_Panel.cxx
+//  Author : Oleg Uvarov
+//  Module : VISU
+//
+#include "VisuGUI_Panel.h"
+
+#include "VisuGUI.h"
+#include "VisuGUI_Tools.h"
+
+#include "SUIT_ResourceMgr.h"
+
+#include <QScrollArea>
+#include <QHBoxLayout>
+#include <QVBoxLayout>
+#include <QApplication>
+#include <QPushButton>
+
+/*!
+  \class MainFrame
+  \internal
+  \brief Frame inserted in viewport with redefined sizeHint method 
+         in order to avoid unreasonable increasing of viewport size
+*/
+class VisuGUI_Panel::MainFrame : public QFrame
+{
+public:
+  /*!
+    \brief Constructor.
+    \param theParent parent widget
+  */
+  MainFrame( QWidget* theParent = 0 )
+  : QFrame( theParent )
+  {
+  }
+  
+  /*!
+    \brief Gets frame size hint
+    \return frame size hint
+  */
+  virtual QSize sizeHint() const
+  {
+    return minimumSizeHint();
+  }
+};
+
+/*!
+  \class VisuGUI_Panel
+  \brief Base class for VISU interactive dockable panels.
+
+  Set of classes is derived from this class and are intended for representing widgets 
+  (GUI controls) for different operations. VisuGUI_Panel consists of main frame 
+  inserted in scroll view and four push buttons. So all widgets of derived sub-panels 
+  should be inherited from mainframe() instead of \93this\94 pointer.
+*/
+
+/*!
+  \brief Constructor creates panels look and feel
+  \param theName name of the panel
+  \param theParent parent widget
+*/
+VisuGUI_Panel::VisuGUI_Panel( const QString& theName, 
+                             const VisuGUI* theModule, 
+                             QWidget* theParent,
+                             const int theBtns  )
+  : QtxDockWidget( theName, theParent ),
+    myModule( theModule ),
+    myOK( 0 ),
+    myApply( 0 ),
+    myClose( 0 ),
+    myHelp( 0 )
+{
+  QWidget* aGrp = new QWidget( this );
+  setWidget( aGrp );
+
+  // Create scroll view
+  myView = new QScrollArea( aGrp );
+
+  // Create main frame
+  myMainFrame = new MainFrame( myView );
+  myMainFrame->setFrameStyle( QFrame::Plain | QFrame::NoFrame );
+  
+  myView->setWidget( myMainFrame );
+  myView->setAlignment( Qt::AlignCenter );
+  myView->setWidgetResizable( true );
+  myView->setMinimumWidth( myMainFrame->sizeHint().width() + 22 );
+  
+  // Create buttons
+  QWidget* aBtnWg = new QWidget( aGrp );
+  QHBoxLayout* aBtnWgLayout = new QHBoxLayout( aBtnWg );
+
+  aBtnWgLayout->addStretch();
+
+  if( theBtns & OKBtn )
+  {
+    myOK = new QPushButton( tr( "BUT_OK" ), aBtnWg );
+    aBtnWgLayout->addWidget( myOK );
+    connect( myOK, SIGNAL( clicked() ), SLOT( onOK() ) );
+  }
+  if( theBtns & ApplyBtn )
+  {
+    myApply = new QPushButton( tr( "BUT_APPLY" ), aBtnWg );
+    aBtnWgLayout->addWidget( myApply );
+    connect( myApply, SIGNAL( clicked() ), SLOT( onApply() ) );
+  }
+  if( theBtns & CloseBtn )
+  {
+    myClose = new QPushButton( tr( "BUT_CLOSE" ), aBtnWg );
+    aBtnWgLayout->addWidget( myClose );
+    connect( myClose, SIGNAL( clicked() ), SLOT( onClose() ) );
+  }
+  if( theBtns & HelpBtn )
+  {
+    myHelp = new QPushButton( tr( "BUT_HELP" ), aBtnWg );
+    aBtnWgLayout->addWidget( myHelp );
+    connect( myHelp, SIGNAL( clicked() ), SLOT( onHelp() ) );
+  }
+
+  aBtnWgLayout->addStretch();
+
+  // fill layout
+  QVBoxLayout* aLay = new QVBoxLayout( aGrp );
+  aLay->setContentsMargins( 0, 0, 0, 0 );
+  aLay->addWidget( myView, 1 );
+  aLay->addWidget( aBtnWg );
+}
+
+/*!
+  \brief Destructor
+*/
+VisuGUI_Panel::~VisuGUI_Panel()
+{
+}
+
+/*!
+  \brief Verifies validity of input data
+
+  This virtual method should be redefined in derived classes. Usually operator 
+  corresponding to the sub-panel calls this method to check validity of input 
+  data when Apply/OK button is pressed.
+
+  \param theErrMsg Error message. 
+  
+        If data is invalid when panel can return message using this parameter given 
+        clear explanation what is wrong
+
+  \return TRUE if data is valid, FALSE otherwise 
+*/
+bool VisuGUI_Panel::isValid( QString& /*theErrMsg*/ )
+{
+  return true;
+}
+/*!
+  \brief Virtual methods should be redefined in derived classes and 
+         clears all GUI controls
+*/
+void VisuGUI_Panel::clear()
+{
+}
+
+/*!
+  \brief Virtual slot called when \93OK\94 button pressed emits corresponding signal.
+
+  This slot moves focus in OK button before emitting signal. Mainly it provides 
+  application with correct moving data from currently edited controls to internal 
+  structure. For example QTable moves data from cell editor to table item when 
+  focus is out.
+
+*/
+void VisuGUI_Panel::onOK()
+{
+  if ( myOK )
+  {
+    myOK->setFocus();
+    qApp->processEvents();
+  }
+}
+
+/*!
+  \brief Virtual slot called when \93Apply\94 button pressed emits corresponding signal.
+  \sa onOK
+*/
+void VisuGUI_Panel::onApply()
+{
+  if ( myApply )
+  {
+    myApply->setFocus();
+    qApp->processEvents();
+  }
+}
+
+/*!
+  \brief Virtual slot called when \93Close\94 button pressed emits corresponding signal.
+  \sa onOK
+*/
+void VisuGUI_Panel::onClose()
+{
+  if ( myClose )
+    myClose->setFocus();
+}
+
+/*!
+  \brief Virtual slot called when \93Help\94 button pressed emits corresponding signal.
+  \sa onOK
+*/
+void VisuGUI_Panel::onHelp()
+{
+  if ( myHelp )
+    myHelp->setFocus();
+}
+
+/*!
+  \brief Gets frame inserted in scroll view. All controls of derived 
+         panels should use it as parent
+  \return QFrame* object 
+*/
+QFrame* VisuGUI_Panel::mainFrame()
+{
+  return myMainFrame;
+}
diff --git a/src/VISUGUI/VisuGUI_Panel.h b/src/VISUGUI/VisuGUI_Panel.h
new file mode 100755 (executable)
index 0000000..a3336c9
--- /dev/null
@@ -0,0 +1,83 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
+//  File   : VisuGUI_Panel.cxx
+//  Author : Oleg Uvarov
+//  Module : VISU
+//
+#ifndef VISUGUI_PANEL_H
+#define VISUGUI_PANEL_H
+
+#include <QtxDockWidget.h>
+
+class QFrame;
+class QScrollArea;
+class QPushButton;
+
+class VisuGUI;
+
+class VisuGUI_Panel : public QtxDockWidget
+{
+  Q_OBJECT
+
+  class MainFrame;
+
+public:
+  enum { OKBtn      = 0x0001,
+         ApplyBtn   = 0x0002,
+         CloseBtn   = 0x0004,
+         HelpBtn    = 0x0008, 
+         AllBtn = OKBtn | ApplyBtn | CloseBtn | HelpBtn
+  };
+
+public:
+  VisuGUI_Panel( const QString& theName,
+                const VisuGUI* theModule,
+                QWidget* theParent,
+                const int theBtns = AllBtn ); 
+  virtual ~VisuGUI_Panel();
+
+  virtual bool              isValid( QString& theMessage );
+  virtual void              clear();
+
+protected slots:
+  virtual void              onOK();
+  virtual void              onApply();
+  virtual void              onClose();
+  virtual void              onHelp();
+
+protected:
+  QFrame*                   mainFrame();
+
+protected:
+  QScrollArea*              myView;
+  QFrame*                   myMainFrame;
+
+  QPushButton*              myOK;
+  QPushButton*              myApply;
+  QPushButton*              myClose;
+  QPushButton*              myHelp;
+
+  const VisuGUI*            myModule;
+};
+
+#endif
index 7f66cd39d60983406f6531e24a3e8facbfc465d0..23ac13b55a559e6ede84867c6851af46e00133b4 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_Plot3DDlg.cxx
 //  Author : Laurent CORNABE & Hubert ROLLAND
 //  Module : VISU
 //  $Header$
-
+//
 #include "VisuGUI_Plot3DDlg.h"
 
 #include "VisuGUI.h"
 #include "SUIT_ResourceMgr.h"
 #include "LightApp_Application.h"
 
-#include "QtxDblSpinBox.h"
-
-#include <qlayout.h>
-#include <qvalidator.h>
-#include <qtabwidget.h>
-#include <qradiobutton.h>
-#include <qspinbox.h>
-#include <qcheckbox.h>
-#include <qlabel.h>
-#include <qpushbutton.h>
+#include "QtxDoubleSpinBox.h"
+
+#include <QLayout>
+#include <QValidator>
+#include <QTabWidget>
+#include <QRadioButton>
+#include <QSpinBox>
+#include <QCheckBox>
+#include <QVBoxLayout>
+#include <QHBoxLayout>
+#include <QKeyEvent>
+#include <QButtonGroup>
+#include <QGroupBox>
+#include <QLabel>
+#include <QPushButton>
 
 #include <vtkUnstructuredGrid.h>
 #include <vtkDataSetMapper.h>
@@ -76,7 +80,7 @@ using namespace std;
 static void renderViewFrame (SVTK_ViewWindow* vw)
 {
   if (vw) {
-    vw->getRenderer()->ResetCameraClippingRange();
+//    vw->getRenderer()->ResetCameraClippingRange();
     vw->Repaint();
   }
 }
@@ -142,113 +146,136 @@ class TPlane : public SALOME_Actor
 //purpose  :
 //=======================================================================
 VisuGUI_Plot3DPane::VisuGUI_Plot3DPane (QWidget* parent)
-     : QVBox(parent), myInitFromPrs(false), myPreviewActor(NULL),
+     : QWidget(parent), myInitFromPrs(false), myPreviewActor(NULL),
        myViewWindow(VISU::GetActiveViewWindow<SVTK_ViewWindow>()), myPrs(NULL), myPipeCopy(NULL)
 {
-  layout()->setAlignment(Qt::AlignTop);
-  setSpacing(6);
+  QVBoxLayout* aMainLay = new QVBoxLayout( this );
+  aMainLay->setAlignment(Qt::AlignTop);
+  aMainLay->setSpacing(6);
 
   // Orientation
 
-  GBOrientation = new QButtonGroup (tr("Orientation"), this, "GBOrientation");
-  GBOrientation->setTitle(tr("ORIENTATION"));
-  GBOrientation->setColumnLayout(0, Qt::Vertical);
-  GBOrientation->layout()->setSpacing(0);
-  GBOrientation->layout()->setMargin(0);
-  QGridLayout* BGOrientationLayout = new QGridLayout (GBOrientation->layout());
+  GBOrientation = new QButtonGroup ( this );
+  GBoxOrient = new QGroupBox(tr("ORIENTATION"),this);
+  aMainLay->addWidget(GBoxOrient);
+  
+  //GBOrientation->setColumnLayout(0, Qt::Vertical);
+  //GBOrientation->layout()->setSpacing(0);
+  //GBOrientation->layout()->setMargin(0);
+  QGridLayout* BGOrientationLayout = new QGridLayout (GBoxOrient);
   BGOrientationLayout->setAlignment(Qt::AlignTop);
   BGOrientationLayout->setSpacing(6);
   BGOrientationLayout->setMargin(11);
 
   QRadioButton *RBxy, *RByz, *RBzx;
-  RBxy = new QRadioButton (tr("// X-Y"), GBOrientation, "RBxy");
-  RByz = new QRadioButton (tr("// Y-Z"), GBOrientation, "RByz");
-  RBzx = new QRadioButton (tr("// Z-X"), GBOrientation, "RBzx");
+  RBxy = new QRadioButton (tr("// X-Y"), GBoxOrient );
+  RByz = new QRadioButton (tr("// Y-Z"), GBoxOrient );
+  RBzx = new QRadioButton (tr("// Z-X"), GBoxOrient );
   BGOrientationLayout->addWidget(RBxy, 0, 0);
   BGOrientationLayout->addWidget(RByz, 0, 1);
   BGOrientationLayout->addWidget(RBzx, 0, 2);
 
+  GBOrientation->addButton( RBxy, 0 );
+  GBOrientation->addButton( RByz, 1 );
+  GBOrientation->addButton( RBzx, 2 );
+
   // Rotation
 
-  QGroupBox* GBrot = new QGroupBox (tr("ROTATIONS"), this, "GBrot");
-  GBrot->setColumnLayout(0, Qt::Vertical);
-  GBrot->layout()->setSpacing(0);
-  GBrot->layout()->setMargin(0);
-  QGridLayout* GBrotLayout = new QGridLayout (GBrot->layout());
+  QGroupBox* GBrot = new QGroupBox (tr("ROTATIONS"), this);
+  aMainLay->addWidget( GBrot );
+  //GBrot->setColumnLayout(0, Qt::Vertical);
+  //GBrot->layout()->setSpacing(0);
+  //GBrot->layout()->setMargin(0);
+  QGridLayout* GBrotLayout = new QGridLayout (GBrot);
   GBrotLayout->setAlignment(Qt::AlignTop);
   GBrotLayout->setSpacing(6);
   GBrotLayout->setMargin(11);
   // label 1
-  LabelRot1 = new QLabel (tr("ROTATION_X"), GBrot, "LabelRot1");
+  LabelRot1 = new QLabel (tr("ROTATION_X"), GBrot );
   GBrotLayout->addWidget(LabelRot1, 0, 0);
   // spin 1
-  Rot1 = new QtxDblSpinBox (-180, 180, 5, GBrot);
+  Rot1 = new QtxDoubleSpinBox (-180, 180, 5, GBrot);
   Rot1->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed));
   GBrotLayout->addWidget(Rot1, 0, 1);
   // label 2
-  LabelRot2 = new QLabel (tr("ROTATION_Y"), GBrot, "LabelRot2");
+  LabelRot2 = new QLabel (tr("ROTATION_Y"), GBrot);
   GBrotLayout->addWidget(LabelRot2, 1, 0);
   // spin 2
-  Rot2 = new QtxDblSpinBox (-180, 180, 5, GBrot);
+  Rot2 = new QtxDoubleSpinBox (-180, 180, 5, GBrot);
   Rot2->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed));
   GBrotLayout->addWidget(Rot2, 1, 1);
 
   // Position
 
-  QGroupBox* GBpos = new QGroupBox (tr("POSITION"), this, "GBpos");
-  GBpos->setColumnLayout(0, Qt::Horizontal);
-  GBpos->layout()->setSpacing(0);
-  GBpos->layout()->setMargin(0);
-  QGridLayout* GBposLayout = new QGridLayout (GBpos->layout());
+  QGroupBox* GBpos = new QGroupBox (tr("POSITION"), this);
+  aMainLay->addWidget( GBpos );
+  //GBpos->setColumnLayout(0, Qt::Horizontal);
+  //GBpos->layout()->setSpacing(0);
+  //GBpos->layout()->setMargin(0);
+  QGridLayout* GBposLayout = new QGridLayout (GBpos);
   GBposLayout->setAlignment(Qt::AlignTop);
   GBposLayout->setSpacing(6);
   GBposLayout->setMargin(11);
   // value label
-  QLabel * valueLabel = new QLabel (tr("POSITION_VALUE"), GBpos, "LabelRot1");
+  QLabel * valueLabel = new QLabel (tr("POSITION_VALUE"), GBpos);
   GBposLayout->addWidget(valueLabel, 0, 0);
   // value spin
-  PositionSpn = new QtxDblSpinBox (0, 1, 0.1, GBpos);
+  PositionSpn = new QtxDoubleSpinBox (0, 1, 0.1, GBpos);
   GBposLayout->addWidget(PositionSpn, 0, 1);
   // Relative CheckBox
-  RelativeChkB = new QCheckBox (tr("RELATIVE"), GBpos, "RelativeChkB");
+  RelativeChkB = new QCheckBox (tr("RELATIVE"), GBpos);
   RelativeChkB->setChecked(true);
   GBposLayout->addWidget(RelativeChkB, 0, 2);
 
   // Scale, Presentation type, Nb Contours, Preview
 
   QFrame* bottomFrame = new QFrame (this);
+  aMainLay->addWidget( bottomFrame );
   QGridLayout* bottomLayout = new QGridLayout (bottomFrame);
   bottomLayout->setAlignment(Qt::AlignTop);
   bottomLayout->setSpacing(11);
   bottomLayout->setMargin(0);
   // scale
   QLabel* scaleLabel = new QLabel (tr("SCALE"), bottomFrame);
-  ScaleSpn = new QtxDblSpinBox (-1.e6, 1.e6, 0.1, bottomFrame);
+  SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
+  int aPrecision = aResourceMgr->integerValue( "VISU", "floating_point_precision", 0 );
+  ScaleSpn = new QtxDoubleSpinBox (-1.e38, 1.e38, 0.1, aPrecision*(-1), 38, bottomFrame);
   // Presentation type
-  GBPrsType = new QHButtonGroup (tr("PRESENTATION_TYPE"), bottomFrame);
-  new QRadioButton (tr("SURFACE"), GBPrsType);
-  new QRadioButton (tr("CONTOUR"), GBPrsType);
+  GBPrsType = new QButtonGroup ( bottomFrame);
+  QGroupBox* aGB = new QGroupBox (tr("PRESENTATION_TYPE"), bottomFrame);
+  QHBoxLayout* aHBoxLay = new QHBoxLayout( aGB );
+  
+  QRadioButton* aRB = new QRadioButton (tr("SURFACE"), aGB);
+  aHBoxLay->addWidget( aRB );
+  GBPrsType->addButton( aRB, 0 );
+  aRB = new QRadioButton (tr("CONTOUR"), aGB);
+  aHBoxLay->addWidget( aRB );
+  GBPrsType->addButton( aRB, 1 );
   // nb Contours
   QLabel* nbContLabel = new QLabel (tr("NUMBER_CONTOURS"), bottomFrame);
-  NbContoursSpn = new QSpinBox (1, 999, 1, bottomFrame, "NbContoursSpn");
+  NbContoursSpn = new QSpinBox ( bottomFrame );
+  NbContoursSpn->setMinimum( 1 );
+  NbContoursSpn->setMaximum( 999 );
+  NbContoursSpn->setSingleStep( 1 );
+  
   // Preview
   PreviewChkB = new QCheckBox (tr("PREVIEW"), bottomFrame);
   PreviewChkB->setChecked(false);
 
   bottomLayout->addWidget(scaleLabel,    0, 0);
   bottomLayout->addWidget(ScaleSpn,      0, 1);
-  bottomLayout->addMultiCellWidget(GBPrsType, 1, 1, 0, 1);
+  bottomLayout->addWidget(aGB, 1, 0, 1, 2);
   bottomLayout->addWidget(nbContLabel,   2, 0);
   bottomLayout->addWidget(NbContoursSpn, 2, 1);
   bottomLayout->addWidget(PreviewChkB,   3, 0);
 
   // signals and slots connections
-  connect(GBOrientation, SIGNAL(clicked(int)),         this, SLOT(orientationChanged(int)));
+  connect(GBOrientation, SIGNAL(buttonClicked(int)),   this, SLOT(orientationChanged(int)));
   connect(Rot1,          SIGNAL(valueChanged(double)), this, SLOT(updatePreview()));
   connect(Rot2,          SIGNAL(valueChanged(double)), this, SLOT(updatePreview()));
   connect(PositionSpn,   SIGNAL(valueChanged(double)), this, SLOT(onPositionSpn()));
   connect(RelativeChkB,  SIGNAL(toggled(bool)),        this, SLOT(onRelativePos(bool)));
-  connect(GBPrsType,     SIGNAL(clicked(int)),         this, SLOT(onPrsType(int)));
+  connect(GBPrsType,     SIGNAL(buttonClicked(int)),   this, SLOT(onPrsType(int)));
   connect(PreviewChkB,   SIGNAL(toggled(bool)),        this, SLOT(updatePreview()));
 }
 
@@ -349,9 +376,9 @@ void VisuGUI_Plot3DPane::onRelativePos(bool isRelativePos)
     minPos = 0.;
     maxPos = 1.;
   }
-  PositionSpn->setMinValue(minPos);
-  PositionSpn->setMaxValue(maxPos);
-  PositionSpn->setLineStep((maxPos - minPos) / 10.);
+  PositionSpn->setMinimum(minPos);
+  PositionSpn->setMaximum(maxPos);
+  PositionSpn->setSingleStep((maxPos - minPos) / 10.);
   PositionSpn->setValue(pos);
 }
 
@@ -399,7 +426,7 @@ void VisuGUI_Plot3DPane::updatePreview()
 
   renderViewFrame(myViewWindow);
 
-  if (fitall) {
+  if (fitall && VISU::GetResourceMgr()->booleanValue("VISU","automatic_fit_all",false)) {
     myPreviewActor->SetInfinitive(false);
     myViewWindow->onFitAll();
     myPreviewActor->SetInfinitive(true);
@@ -422,8 +449,7 @@ void VisuGUI_Plot3DPane::initFromPrsObject(VISU::Plot3D_i* thePrs)
   case VISU::Plot3D::YZ: id = 1; break;
   default: id = 2;
   }
-  GBOrientation->setButton(id);
-  orientationChanged(id);
+  GBOrientation->button(id)->click();
 
   // rotation
   Rot1->setValue(thePrs->GetRotateX() * 180./PI);
@@ -439,8 +465,7 @@ void VisuGUI_Plot3DPane::initFromPrsObject(VISU::Plot3D_i* thePrs)
 
   // prs type
   id = thePrs->GetIsContourPrs() ? CONTOUR_PRS_ID : SURFACE_PRS_ID;
-  GBPrsType->setButton(id);
-  onPrsType(id);
+  GBPrsType->button(id)->click();
 
   // nb contours
   NbContoursSpn->setValue(thePrs->GetNbOfContours());
@@ -449,7 +474,8 @@ void VisuGUI_Plot3DPane::initFromPrsObject(VISU::Plot3D_i* thePrs)
 
   if (thePrs->GetPipeLine()->IsPlanarInput())
   {
-    GBOrientation->setEnabled(false);
+    //GBOrientation->setEnabled(false);
+    GBoxOrient->setEnabled(false);
     Rot1         ->setEnabled(false);
     Rot2         ->setEnabled(false);
     PositionSpn  ->setEnabled(false);
@@ -470,7 +496,7 @@ int VisuGUI_Plot3DPane::storeToPrsObject(VISU::Plot3D_i* thePrs)
   if (myInitFromPrs)
     return 0;
   // orientation
-  int id = GBOrientation->id (GBOrientation->selected());
+  int id = GBOrientation->id (GBOrientation->checkedButton());
   VISU::Plot3D::Orientation ori;
   switch (id) {
   case 0 : ori = VISU::Plot3D::XY; break;
@@ -487,7 +513,7 @@ int VisuGUI_Plot3DPane::storeToPrsObject(VISU::Plot3D_i* thePrs)
   thePrs->SetScaleFactor(ScaleSpn->value());
 
   // prs type
-  id = GBPrsType->id (GBPrsType->selected());
+  id = GBPrsType->id (GBPrsType->checkedButton());
   thePrs->SetContourPrs(id == CONTOUR_PRS_ID);
 
   // nb contours
@@ -503,7 +529,7 @@ int VisuGUI_Plot3DPane::storeToPrsObject(VISU::Plot3D_i* thePrs)
 bool VisuGUI_Plot3DPane::check()
 {
   if(!myPreviewActor) return true;
-
+  
   vtkRenderer* aRend    = myPreviewActor->GetRenderer();
   vtkRenderWindow* aWnd = aRend->GetRenderWindow();
   if(aRend && aWnd){
@@ -512,7 +538,7 @@ bool VisuGUI_Plot3DPane::check()
     myPreviewActor->Delete();
     myPreviewActor = 0;
   }
-
+    
   return true;
 }
 
@@ -525,9 +551,8 @@ void VisuGUI_Plot3DPane::setPlane(int theOrientation, double theXRotation, doubl
   case VISU::Plot3D::YZ: id = 1; break;
   default: id = 2;
   }
-  GBOrientation->setButton(id);
-  orientationChanged(id);
-  GBOrientation->setEnabled(false);
+  GBOrientation->button(id)->click();
+  GBoxOrient->setEnabled(false);
 
 
   // Set rotation
@@ -552,7 +577,7 @@ void VisuGUI_Plot3DPane::setPlane(int theOrientation, double theXRotation, doubl
 VisuGUI_Plot3DDlg::VisuGUI_Plot3DDlg (SalomeApp_Module* theModule)
   : VisuGUI_ScalarBarBaseDlg(theModule)
 {
-  setCaption(tr("TITLE"));
+  setWindowTitle(tr("TITLE"));
   setSizeGripEnabled(TRUE);
 
   QVBoxLayout* TopLayout = new QVBoxLayout(this);
@@ -561,7 +586,8 @@ VisuGUI_Plot3DDlg::VisuGUI_Plot3DDlg (SalomeApp_Module* theModule)
 
   myTabBox = new QTabWidget (this);
   myIsoPane = new VisuGUI_Plot3DPane (this);
-  myIsoPane->setMargin(5);
+  if ( myIsoPane->layout()  )
+    myIsoPane->layout()->setMargin(5);
   myTabBox->addTab(myIsoPane, tr("PLOT3D_TAB_TITLE"));
   myInputPane = new VisuGUI_InputPane(VISU::TPLOT3D, theModule, this);
   myTabBox->addTab(GetScalarPane(), tr("SCALAR_BAR_TAB_TITLE"));
@@ -569,25 +595,25 @@ VisuGUI_Plot3DDlg::VisuGUI_Plot3DDlg (SalomeApp_Module* theModule)
 
   TopLayout->addWidget(myTabBox);
 
-  QGroupBox* GroupButtons = new QGroupBox (this, "GroupButtons");
+  QGroupBox* GroupButtons = new QGroupBox (this );
   GroupButtons->setGeometry(QRect(10, 10, 281, 48));
-  GroupButtons->setColumnLayout(0, Qt::Vertical);
-  GroupButtons->layout()->setSpacing(0);
-  GroupButtons->layout()->setMargin(0);
-  QGridLayout* GroupButtonsLayout = new QGridLayout (GroupButtons->layout());
+  //GroupButtons->setColumnLayout(0, Qt::Vertical);
+  //GroupButtons->layout()->setSpacing(0);
+  //GroupButtons->layout()->setMargin(0);
+  QGridLayout* GroupButtonsLayout = new QGridLayout (GroupButtons);
   GroupButtonsLayout->setAlignment(Qt::AlignTop);
   GroupButtonsLayout->setSpacing(6);
   GroupButtonsLayout->setMargin(11);
 
-  QPushButton* buttonOk = new QPushButton (tr("&OK"), GroupButtons, "buttonOk");
+  QPushButton* buttonOk = new QPushButton (tr("BUT_OK"), GroupButtons);
   buttonOk->setAutoDefault(TRUE);
   buttonOk->setDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonOk, 0, 0);
   GroupButtonsLayout->addItem(new QSpacerItem (5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum), 0, 1);
-  QPushButton* buttonCancel = new QPushButton (tr("&Cancel") , GroupButtons, "buttonCancel");
+  QPushButton* buttonCancel = new QPushButton (tr("BUT_CANCEL") , GroupButtons);
   buttonCancel->setAutoDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonCancel, 0, 2);
-  QPushButton* buttonHelp = new QPushButton (tr("&Help") , GroupButtons, "buttonHelp");
+  QPushButton* buttonHelp = new QPushButton (tr("BUT_HELP") , GroupButtons);
   buttonHelp->setAutoDefault(TRUE);
   GroupButtonsLayout->addWidget(buttonHelp, 0, 3);
 
@@ -625,8 +651,8 @@ void VisuGUI_Plot3DDlg::reject()
 //function : initFromPrsObject
 //purpose  :
 //=======================================================================
-void VisuGUI_Plot3DDlg::initFromPrsObject (VISU::ColoredPrs3d_i* thePrs,
-                                           bool theInit)
+void VisuGUI_Plot3DDlg::initFromPrsObject( VISU::ColoredPrs3d_i* thePrs, 
+                                          bool theInit )
 {
   if( theInit )
     myPrsCopy = VISU::TSameAsFactory<VISU::TPLOT3D>().Create(thePrs, VISU::ColoredPrs3d_i::EDoNotPublish);
@@ -639,7 +665,7 @@ void VisuGUI_Plot3DDlg::initFromPrsObject (VISU::ColoredPrs3d_i* thePrs,
     return;
 
   myInputPane->initFromPrsObject( myPrsCopy );
-  myTabBox->setCurrentPage( 0 );
+  myTabBox->setCurrentIndex( 0 );
 }
 
 //=======================================================================
@@ -650,7 +676,7 @@ int VisuGUI_Plot3DDlg::storeToPrsObject (VISU::ColoredPrs3d_i* thePrs)
 {
   if(!myInputPane->check() || !GetScalarPane()->check())
     return 0;
-
+  
   int anIsOk = myInputPane->storeToPrsObject( myPrsCopy );
   anIsOk &= GetScalarPane()->storeToPrsObject( myPrsCopy );
   anIsOk &= myIsoPane->storeToPrsObject( myPrsCopy );
index 8a8d2876367142589f140816d8aef7d3fb921fc3..e7acada183e05272961cf11401ff020a69744be9 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_Plot3DDlg.h
 //  Author : Laurent CORNABE & Hubert ROLLAND
 //  Module : VISU
 //  $Header$
-
+//
 #ifndef VISUGUI_PLOT3D_H
 #define VISUGUI_PLOT3D_H
 
 #include "VisuGUI_Prs3dDlg.h"
 
-#include <qhbuttongroup.h>
-#include <qtabwidget.h>
+
+class QButtonGroup;
+class QTabWidget;
+class QGroupBox;
 
 class SalomeApp_Module;
 class VisuGUI_InputPane;
@@ -45,9 +46,9 @@ namespace VISU
 class VISU_Plot3DPL;
 class SVTK_ViewWindow;
 class SALOME_Actor;
-class QtxDblSpinBox;
+class QtxDoubleSpinBox;
 
-class VisuGUI_Plot3DPane : public QVBox
+class VisuGUI_Plot3DPane : public QWidget//QVBox
 {
   Q_OBJECT
 
@@ -75,14 +76,15 @@ class VisuGUI_Plot3DPane : public QVBox
   void restorePrsParams();
 
   QButtonGroup  * GBOrientation;
+  QGroupBox     * GBoxOrient;
   QLabel        * LabelRot1;
   QLabel        * LabelRot2;
-  QtxDblSpinBox * Rot1;
-  QtxDblSpinBox * Rot2;
-  QtxDblSpinBox * PositionSpn;
+  QtxDoubleSpinBox * Rot1;
+  QtxDoubleSpinBox * Rot2;
+  QtxDoubleSpinBox * PositionSpn;
   QCheckBox     * RelativeChkB;
-  QtxDblSpinBox * ScaleSpn;
-  QHButtonGroup * GBPrsType;
+  QtxDoubleSpinBox * ScaleSpn;
+  QButtonGroup  * GBPrsType;
   QSpinBox      * NbContoursSpn;
   QCheckBox     * PreviewChkB;
 
diff --git a/src/VISUGUI/VisuGUI_PopupTools.cxx b/src/VISUGUI/VisuGUI_PopupTools.cxx
deleted file mode 100644 (file)
index 84a6326..0000000
+++ /dev/null
@@ -1,577 +0,0 @@
-//  VISU VISUGUI : GUI of VISU component
-//
-//  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
-//
-//  File   : VisuGUI_PopupTools.cxx
-//  Author : Sergey Anikin 
-//  Module : VISU
-
-#include "VisuGUI_PopupTools.h"
-
-#include "VisuGUI_ViewTools.h"
-#include "VisuGUI_Tools.h"
-
-#include "VISU_Result_i.hh"
-#include "VISU_Gen_i.hh"
-
-#include "VISU_Actor.h"
-#include "VISU_ScalarMapAct.h"
-
-#include "SalomeApp_Study.h"
-#include "LightApp_Study.h"
-
-using namespace VISU;
-
-//////////////////////////////////////////////////
-// Class: VisuGUI_Selection
-//////////////////////////////////////////////////
-
-
-//---------------------------------------------------------------
-QtxValue VisuGUI_Selection::param( const int ind, const QString& p ) const
-{
-  QtxValue val( LightApp_Selection::param( ind, p ) );
-  if ( !val.isValid() ) {
-    if      ( p == "type"           ) val = QtxValue( type( ind ) );
-    else if ( p == "nbComponents"   ) val = QtxValue( nbComponents( ind ) );
-    else if ( p == "medEntity"   ) val = QtxValue( medEntity( ind ) );
-    else if ( p == "medSource"   ) val = QtxValue( medSource( ind ) );
-    else if ( p == "representation" ) val = QtxValue( representation( ind ) );
-    else if ( p == "nbTimeStamps"   ) val = QtxValue( nbTimeStamps( ind ) );
-    else if ( p == "nbChildren"     ) val = QtxValue( nbChildren( ind ) );
-    else if ( p == "nbNamedChildren") val = QtxValue( nbNamedChildren( ind ) );
-    else if ( p == "isVisible"      ) val = QtxValue( isVisible( ind ) );
-    else if ( p == "isShrunk"       ) val = QtxValue( isShrunk( ind ) );
-    else if ( p == "hasActor"       ) val = QtxValue( hasActor( ind ) );
-    else if ( p == "isShading"      ) val = QtxValue( isShading( ind ) );
-    else if ( p == "isScalarMapAct" ) val = QtxValue( isScalarMapAct( ind ) );
-    else if ( p == "isVisuComponent") val = QtxValue( isVisuComponent( ind ) );
-
-    else if ( p == "fullResolution"   ) val = QtxValue( fullResolution( ind ) );
-    else if ( p == "mediumResolution"   ) val = QtxValue( mediumResolution( ind ) );
-    else if ( p == "lowResolution"   ) val = QtxValue( lowResolution( ind ) );
-    else if ( p == "resolutionState"   ) val = QtxValue( resolutionState( ind ) );
-  }
-
-  return val;
-}
-
-
-//---------------------------------------------------------------
-// Macro for converting VISU enumeration items into corresponding strings
-#define ENUM2STRING( x, y ) \
-  case y: \
-    x = QString( #y ); \
-    break
-
-QString VisuGUI_Selection::type( const int ind ) const
-{
-  QString aResStr;
-  SalomeApp_Study* aStudy = GetStudy();
-  if ( !aStudy )
-    return aResStr;
-
-  VISU::TObjectInfo anObjectInfo = VISU::GetObjectByEntry(aStudy, entry( ind ));
-  VISU::Storable::TRestoringMap aMap = VISU::Storable::GetStorableMap(anObjectInfo.mySObject);
-
-  VISU::Base_i* aBase = anObjectInfo.myBase;
-  if(aBase){
-    VISU::VISUType aType = aBase->GetType();
-    if(aType == VISU::TCOLOREDPRS3DHOLDER){
-      CORBA::Object_var anObject = ClientSObjectToObject(anObjectInfo.mySObject);
-      VISU::ColoredPrs3dHolder_var aHolder = VISU::ColoredPrs3dHolder::_narrow(anObject);
-      aType = aHolder->GetPrsType();
-    }
-    switch (aType) {
-      ENUM2STRING( aResStr, VISU::TVISUGEN );
-      ENUM2STRING( aResStr, VISU::TRESULT );
-      ENUM2STRING( aResStr, VISU::TTABLE );
-      ENUM2STRING( aResStr, VISU::TCURVE );
-      ENUM2STRING( aResStr, VISU::TCONTAINER );
-      ENUM2STRING( aResStr, VISU::TMESH );
-      ENUM2STRING( aResStr, VISU::TSCALARMAP );
-      ENUM2STRING( aResStr, VISU::TISOSURFACES );
-      ENUM2STRING( aResStr, VISU::TDEFORMEDSHAPE );
-      ENUM2STRING( aResStr, VISU::TSCALARMAPONDEFORMEDSHAPE );
-      ENUM2STRING( aResStr, VISU::TCUTPLANES );
-      ENUM2STRING( aResStr, VISU::TCUTLINES );
-      ENUM2STRING( aResStr, VISU::TVECTORS );
-      ENUM2STRING( aResStr, VISU::TSTREAMLINES );
-      ENUM2STRING( aResStr, VISU::TPLOT3D );
-      ENUM2STRING( aResStr, VISU::TANIMATION );
-    }
-  }
-
-  if(aResStr.isNull()){
-    VISU::VISUType aType = VISU::Storable::RestoringMap2Type(aMap);
-    switch (aType) {
-      ENUM2STRING( aResStr, VISU::TENTITY );
-      ENUM2STRING( aResStr, VISU::TFAMILY );
-      ENUM2STRING( aResStr, VISU::TGROUP );
-      ENUM2STRING( aResStr, VISU::TVIEW3D );
-      ENUM2STRING( aResStr, VISU::TFIELD );
-      ENUM2STRING( aResStr, VISU::TTIMESTAMP );
-    }
-  }
-
-  if(aResStr.isNull()){
-    bool anIsExist;
-    QString aVal = VISU::Storable::FindValue(aMap, "myComment", &anIsExist);
-    if ( anIsExist && aVal != "MESH" )
-      aResStr = "VISU::T" + aVal;
-  }
-
-  return aResStr;
-}
-
-
-//---------------------------------------------------------------
-QString VisuGUI_Selection::nbComponents( const int ind ) const
-{
-  QString aResStr;
-  SalomeApp_Study* aStudy = GetStudy();
-  if ( !aStudy )
-    return aResStr;
-
-  VISU::TObjectInfo anObjectInfo = VISU::GetObjectByEntry(aStudy, entry( ind ));
-  VISU::Storable::TRestoringMap aMap = VISU::Storable::GetStorableMap(anObjectInfo.mySObject);
-
-  bool isExist;
-  QString aVal = VISU::Storable::FindValue(aMap,"myNumComponent",&isExist);
-  if ( isExist )
-    aResStr = aVal;
-  return aResStr;
-}
-
-
-//---------------------------------------------------------------
-QString VisuGUI_Selection::resolutions( const int ind ) const
-{
-  QString aResStr;
-  SalomeApp_Study* aStudy = GetStudy();
-  if ( !aStudy )
-    return aResStr;
-
-  VISU::TObjectInfo anObjectInfo = VISU::GetObjectByEntry(aStudy, entry( ind ));
-  VISU::Storable::TRestoringMap aMap = VISU::Storable::GetStorableMap(anObjectInfo.mySObject);
-
-  bool isExist;
-  QString aVal = VISU::Storable::FindValue(aMap,"myResolutions",&isExist);
-  if ( isExist )
-    aResStr = aVal;
-
-  return aResStr;
-}
-
-
-//---------------------------------------------------------------
-QString VisuGUI_Selection::resolution( const int ind, char theResoltuion ) const
-{
-  QString aResStr;
-
-  QString aResolutions = resolutions( ind );
-  if(aResolutions.isEmpty())
-    return aResStr;
-  
-  if(aResolutions.find(theResoltuion) != -1)
-    aResStr = "1";
-  else
-    aResStr = "0";
-
-  return aResStr;
-}
-
-
-//---------------------------------------------------------------
-QString VisuGUI_Selection::fullResolution( const int ind ) const
-{
-  return resolution( ind, 'F');
-}
-
-
-//---------------------------------------------------------------
-QString VisuGUI_Selection::mediumResolution( const int ind ) const
-{
-  return resolution( ind, 'M');
-}
-
-
-//---------------------------------------------------------------
-QString VisuGUI_Selection::lowResolution( const int ind ) const
-{
-  return resolution( ind, 'L');
-}
-
-
-//---------------------------------------------------------------
-QString VisuGUI_Selection::resolutionState( const int ind ) const
-{
-  QString aResStr;
-  SalomeApp_Study* aStudy = GetStudy();
-  if ( !aStudy )
-    return aResStr;
-
-  VISU::TObjectInfo anObjectInfo = VISU::GetObjectByEntry(aStudy, entry( ind ));
-  VISU::Storable::TRestoringMap aMap = VISU::Storable::GetStorableMap(anObjectInfo.mySObject);
-
-  bool isExist;
-  QString aVal = VISU::Storable::FindValue(aMap,"myState",&isExist);
-  if ( isExist ) {
-    if ( aVal.toInt() == VISU::Result::FULL )
-      aResStr = "F";
-    if ( aVal.toInt() == VISU::Result::MEDIUM )
-      aResStr = "M";
-    if ( aVal.toInt() == VISU::Result::LOW )
-      aResStr = "L";
-    if ( aVal.toInt() == VISU::Result::HIDDEN )
-      aResStr = "H";
-  }
-
-  return aResStr;
-}
-
-
-//---------------------------------------------------------------
-QString VisuGUI_Selection::medEntity( const int ind ) const
-{
-  SalomeApp_Study* aStudy = GetStudy();
-  if ( !aStudy )
-    return QString();
-
-  VISU::TObjectInfo anObjectInfo = VISU::GetObjectByEntry(aStudy, entry( ind ));
-  VISU::Storable::TRestoringMap aMap = VISU::Storable::GetStorableMap(anObjectInfo.mySObject);
-
-  bool isExist;
-  QString aVal = VISU::Storable::FindValue(aMap,"myEntityId",&isExist);
-  if ( isExist ) {
-    using namespace VISU;
-    TEntity anEntityId = TEntity(aVal.toInt());
-    switch(anEntityId){
-    case NODE_ENTITY :
-      return "NODE_ENTITY";
-    case EDGE_ENTITY :
-      return "EDGE_ENTITY";
-    case FACE_ENTITY :
-      return "FACE_ENTITY";
-    case CELL_ENTITY :
-      return "CELL_ENTITY";
-    default:
-      return QString();
-    }
-  }
-  return QString();
-}
-
-QString VisuGUI_Selection::medSource( const int ind ) const
-{
-  _PTR(Study) aStudyDS = GetStudy()->studyDS();
-  if(_PTR(SObject) aSObject = aStudyDS->FindObjectID(entry(ind).latin1())){
-    VISU::Result_var aRes;
-    if(VISU::Result_i* aResult = CheckResult(myModule,aSObject,aRes)){
-      using namespace VISU;
-      Result_i::ECreationId aCreationId = aResult->GetCreationId();
-      switch(aCreationId){
-      case Result_i::eImportFile :
-       return "eImportFile";
-      case Result_i::eCopyAndImportFile :
-       return "eCopyAndImportFile";
-      case Result_i::eImportMed :
-       return "eImportMed";
-      case Result_i::eImportMedField :
-       return "eImportMedField";
-      default:
-       return QString();
-      }      
-    }
-  }
-  return QString();
-}
-
-QString VisuGUI_Selection::nbTimeStamps( const int ind ) const
-{
-  QString aResStr;
-  SalomeApp_Study* aStudy = GetStudy();
-  if ( !aStudy )
-    return aResStr;
-
-  VISU::TObjectInfo anObjectInfo = VISU::GetObjectByEntry(aStudy, entry( ind ));
-  VISU::Storable::TRestoringMap aMap = VISU::Storable::GetStorableMap(anObjectInfo.mySObject);
-
-  bool isExist;
-  const QString& aVal = VISU::Storable::FindValue(aMap,"myNbTimeStamps",&isExist);
-  if ( isExist )
-    aResStr = aVal;
-  return aResStr;
-}
-
-
-//----------------------------------------------------------------------------
-template<class TPopupFunctor>
-struct TPopupDispatcher
-{
-  QString
-  operator()(const SalomeApp_Module* theModule, 
-            const QString& theEntry)
-  {
-    if(SUIT_ViewManager* aViewManager = theModule->getApp()->activeViewManager()){
-      QString aType = aViewManager->getType();
-      TPopupFunctor aFunctor;
-      if(aType == SVTK_Viewer::Type())
-       return aFunctor.template Get<SVTK_Viewer>(theModule, theEntry);
-      else if(aType == VVTK_Viewer::Type())
-       return aFunctor.template Get<VVTK_Viewer>(theModule, theEntry);
-    }
-    return QString();
-  }    
-};
-
-
-//----------------------------------------------------------------------------
-template<class TViewer>
-bool
-GetPrs3dSelectionInfo(const SalomeApp_Module* theModule,
-                     const QString& theEntry,
-                     VISU::Prs3d_i*& thePrs3d,
-                     SVTK_ViewWindow*& theViewWindow,
-                     VISU_Actor*& thenActor)
-{
-  VISU::TObjectInfo anObjectInfo = VISU::GetObjectByEntry(GetAppStudy(theModule), theEntry);
-  thePrs3d = GetPrs3dFromBase(anObjectInfo.myBase);
-  if(!thePrs3d)
-    return false;
-  
-  typedef typename TViewer::TViewWindow TViewWindow;
-  theViewWindow = GetActiveViewWindow<TViewWindow>(theModule);
-  if(!theViewWindow)
-    return false;
-  
-  thenActor = FindActor(theViewWindow, thePrs3d);
-  if(!thenActor)
-    return false;
-  
-  return true;
-}
-
-
-//----------------------------------------------------------------------------
-struct TViewFunctor
-{
-  template<class TViewer>
-  QString
-  Get(const SalomeApp_Module* theModule, 
-      const QString& theEntry)
-  {
-    VISU_Actor* anActor = NULL;
-    VISU::Prs3d_i* aPrs3d = NULL;
-    SVTK_ViewWindow* aViewWindow = NULL;
-    if(!GetPrs3dSelectionInfo<TViewer>(theModule, theEntry, aPrs3d, aViewWindow, anActor))
-      return QString();
-    
-    return get(aPrs3d, aViewWindow, anActor);
-  }
-  
-  QString
-  virtual
-  get(VISU::Prs3d_i* thePrs3d,
-      SVTK_ViewWindow* theViewWindow,
-      VISU_Actor* theActor)
-  {
-    return QString();
-  }
-};
-
-
-//----------------------------------------------------------------------------
-struct TGetRepesentationFunctor: TViewFunctor
-{
-  QString
-  virtual
-  get(VISU::Prs3d_i* thePrs3d,
-      SVTK_ViewWindow* theViewWindow,
-      VISU_Actor* theActor)
-  {
-    QString aResStr;
-    switch (theActor->GetRepresentation()) {
-      ENUM2STRING( aResStr, VISU::POINT );
-      ENUM2STRING( aResStr, VISU::WIREFRAME );
-      ENUM2STRING( aResStr, VISU::SHADED );
-      ENUM2STRING( aResStr, VISU::INSIDEFRAME );
-      ENUM2STRING( aResStr, VISU::SURFACEFRAME );
-    }      
-    return aResStr;
-  }
-};
-
-QString VisuGUI_Selection::representation( const int ind ) const
-{
-  return TPopupDispatcher<TGetRepesentationFunctor>()(myModule, entry(ind));
-}
-
-//----------------------------------------------------------------------------
-SalomeApp_Study* VisuGUI_Selection::GetStudy() const
-  
-{
-  LightApp_Study* aLightStudy = const_cast<LightApp_Study*>( study() );
-  return dynamic_cast<SalomeApp_Study*>( aLightStudy );
-}
-
-//----------------------------------------------------------------------------
-int VisuGUI_Selection::nbChild( const int ind, const bool named ) const
-{
-  int cnt = 0;
-  SalomeApp_Study* aSStudy = GetStudy();
-  if ( !aSStudy )
-    return cnt;
-  _PTR(Study) aStudy =  GetCStudy( aSStudy );
-  if ( aStudy ){
-    _PTR(SObject) SO = aStudy->FindObjectID( entry( ind ).latin1() );
-    if ( SO ){
-      for ( _PTR(ChildIterator) Iter = aStudy->NewChildIterator( SO ); Iter->More(); Iter->Next() ) {
-       _PTR(SObject) refSO;
-       if ( !Iter->Value()->ReferencedObject( refSO ) && ( !named || Iter->Value()->GetName().size() ) )
-         cnt++;
-      }
-    }
-  }
-  return cnt;
-}
-
-//----------------------------------------------------------------------------
-QString VisuGUI_Selection::nbChildren( const int ind ) const
-{
-  QString aResStr;
-  aResStr.setNum( nbChild( ind, false ) );
-  return aResStr;
-}
-
-//----------------------------------------------------------------------------
-QString VisuGUI_Selection::nbNamedChildren( const int ind ) const
-{
-  QString aResStr;
-  aResStr.setNum( nbChild( ind, true ) );
-  return aResStr;
-}
-
-
-//----------------------------------------------------------------------------
-struct TIsVisibleFunctor: TViewFunctor
-{
-  QString
-  virtual
-  get(VISU::Prs3d_i* thePrs3d,
-      SVTK_ViewWindow* theViewWindow,
-      VISU_Actor* theActor)
-  {
-    return theActor->GetVisibility() ? "true" : "false";
-  }
-};
-
-QString VisuGUI_Selection::isVisible( const int ind ) const
-{
-  return TPopupDispatcher<TIsVisibleFunctor>()(myModule, entry(ind));
-}
-
-
-//----------------------------------------------------------------------------
-struct TIsShrunkFunctor: TViewFunctor
-{
-  QString
-  virtual
-  get(VISU::Prs3d_i* thePrs3d,
-      SVTK_ViewWindow* theViewWindow,
-      VISU_Actor* theActor)
-  {
-    return theActor->IsShrunk() ? "1" : "0";
-  }
-};
-
-QString VisuGUI_Selection::isShrunk( const int ind ) const
-{
-  return TPopupDispatcher<TIsShrunkFunctor>()(myModule, entry(ind));
-}
-
-
-//----------------------------------------------------------------------------
-QString VisuGUI_Selection::hasActor( const int ind ) const
-{
-  return representation( ind ).isEmpty() ? "0" : "1";
-}
-
-
-//----------------------------------------------------------------------------
-struct TIsShadingFunctor: TViewFunctor
-{
-  QString
-  virtual
-  get(VISU::Prs3d_i* thePrs3d,
-      SVTK_ViewWindow* theViewWindow,
-      VISU_Actor* theActor)
-  {
-    if(VISU_ScalarMapAct* anActor = dynamic_cast<VISU_ScalarMapAct*>(theActor))
-      return anActor->IsShading() ? "1" : "0";
-    return QString();
-  }
-};
-
-QString VisuGUI_Selection::isShading( const int ind ) const
-{
-  return TPopupDispatcher<TIsShadingFunctor>()(myModule, entry(ind));
-}
-
-
-//----------------------------------------------------------------------------
-struct TIsScalarMapActFunctor: TViewFunctor
-{
-  QString
-  virtual
-  get(VISU::Prs3d_i* thePrs3d,
-      SVTK_ViewWindow* theViewWindow,
-      VISU_Actor* theActor)
-  {
-    return dynamic_cast<VISU_ScalarMapAct*>(theActor)? "1" : "0";
-  }
-};
-
-
-//---------------------------------------------------------------
-QString VisuGUI_Selection::isScalarMapAct( const int ind ) const
-{
-  return TPopupDispatcher<TIsScalarMapActFunctor>()(myModule, entry(ind));
-}
-
-
-//----------------------------------------------------------------------------
-bool VisuGUI_Selection::isVisuComponent( const int ind ) const
-{
-  SalomeApp_Study* study = GetStudy();
-  if ( !study )
-    return false;
-  
-  _PTR(SObject) obj = study->studyDS()->FindObjectID( entry( ind ).latin1() );
-  if ( !obj )
-    return false;
-  CORBA::Object_var anObj = VISU::ClientSObjectToObject( obj );
-  if( CORBA::is_nil( anObj ) )
-    return false;
-
-  return dynamic_cast<VISU::VISU_Gen_i*>( VISU::GetServant( anObj ).in() );
-}
diff --git a/src/VISUGUI/VisuGUI_PopupTools.h b/src/VISUGUI/VisuGUI_PopupTools.h
deleted file mode 100644 (file)
index 61a5925..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-//  VISU VISUGUI : GUI of VISU component
-//
-//  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
-//
-//  File   : VisuGUI_PopupTools.h
-//  Author : Sergey Anikin 
-//  Module : VISU
-
-#ifndef VisuGUI_PopupTools_HeaderFile
-#define VisuGUI_PopupTools_HeaderFile
-
-#include <LightApp_Selection.h>
-
-//////////////////////////////////////////////////
-// Class: VisuGUI_Selection
-//////////////////////////////////////////////////
-
-class SalomeApp_Module;
-class SalomeApp_Study;
-
-class VisuGUI_Selection : public LightApp_Selection
-{
-public:
-  VisuGUI_Selection( SalomeApp_Module* theModule ) : myModule( theModule ) {};
-  virtual ~VisuGUI_Selection() {};
-
-  virtual QtxValue param( const int, const QString& ) const;
-
-private:
-  QString          type( const int ) const;
-  QString          nbComponents( const int ) const;
-  QString          medEntity( const int ) const;
-  QString          medSource( const int ) const;
-  QString          nbTimeStamps( const int ) const;
-  QString          representation( const int ) const;
-  QString          nbChildren( const int ) const;
-  QString          nbNamedChildren( const int ) const;
-  QString          isVisible( const int ) const;
-  QString          isShrunk( const int ) const;
-  QString          hasActor( const int ) const;
-  QString          isShading( const int ) const;
-  QString          isScalarMapAct( const int ) const;
-  bool             isVisuComponent( const int ) const;
-
-  QString          fullResolution( const int ) const;
-  QString          mediumResolution( const int ) const;
-  QString          lowResolution( const int ) const;
-  QString          resolutionState( const int ) const;
-
-private:
-  int              nbChild( const int, const bool ) const;
-  SalomeApp_Study* GetStudy() const;
-
-  QString          resolutions( const int ) const;
-  QString          resolution( const int, char theResoltuion ) const;
-
-private:
-  SalomeApp_Module* myModule;
-};
-
-#endif
index b574799518778f725371e20c08415fb4a05c99fb..8372ddb2730f046f028cab61541e1caa44d21896 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_Prs3dDlg.cxx
 //  Author : Laurent CORNABE & Hubert ROLLAND
 //  Module : VISU
-
+//
 #include "VisuGUI_Prs3dDlg.h"
 
 #include "VisuGUI.h"
 #include "VISU_ScalarMapAct.h"
 #include "VISU_ScalarMap_i.hh"
 #include "VISU_Result_i.hh"
+#include "VISU_Prs3dUtils.hh"
 
 #include "LightApp_Application.h"
 
 #include "SUIT_Session.h"
 #include "SUIT_MessageBox.h"
 #include "SUIT_ResourceMgr.h"
-
-#include <qcheckbox.h>
-#include <qlineedit.h>
-#include <qradiobutton.h>
-#include <qbuttongroup.h>
-#include <qgroupbox.h>
-#include <qlabel.h>
-#include <qpushbutton.h>
-#include <qcombobox.h>
-#include <qvbox.h>
-#include <qtoolbutton.h>
-#include <qlayout.h>
-#include <qvalidator.h>
-#include <qcolordialog.h>
-#include <qtabwidget.h>
-
-#include "QtxDblSpinBox.h"
+#include "SUIT_Desktop.h"
+
+#include <QCheckBox>
+#include <QLineEdit>
+#include <QRadioButton>
+#include <QButtonGroup>
+#include <QGroupBox>
+#include <QLabel>
+#include <QPushButton>
+#include <QComboBox>
+#include <QToolButton>
+#include <QLayout>
+#include <QValidator>
+#include <QColorDialog>
+#include <QTabWidget>
+#include <QKeyEvent>
+#include <QGridLayout>
+
+#include "QtxDoubleSpinBox.h"
 
 #include <vtkTextProperty.h>
 
@@ -79,64 +81,77 @@ using namespace std;
   Constructor
 */
 VisuGUI_TextPrefDlg::VisuGUI_TextPrefDlg (QWidget* parent)
-  : QDialog(parent, 0, true, WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu)
+  : QDialog(parent, Qt::WindowTitleHint | Qt::WindowSystemMenuHint )
 {
-  setName("VisuGUI_TextPrefDlg");
-  setCaption(tr("TIT_TEXT_PREF"));
+  setModal( true );
+  setWindowTitle(tr("TIT_TEXT_PREF"));
   setSizeGripEnabled(TRUE);
 
-  QVBoxLayout* TopLayout = new QVBoxLayout(this);
-  TopLayout->setSpacing(6);
-  TopLayout->setMargin(11);
+  QVBoxLayout* aMainLay = new QVBoxLayout(this);
+  aMainLay->setSpacing(6);
+  aMainLay->setMargin(11);
 
   // "Title" grp
-  QGroupBox* aTitleGrp = new QGroupBox (2, Qt::Vertical, tr("LBL_TITLE"), this);
+  QGroupBox* aTitleGrp = new QGroupBox ( tr("LBL_TITLE"), this);
+  QVBoxLayout* aVBLay = new QVBoxLayout( aTitleGrp );
 
-  //   edit line
+  //   edit line  
   myTitleEdt = new QLineEdit (aTitleGrp);
+  aVBLay->addWidget( myTitleEdt);
 
   //   font
-  QHBox* aHBox = new QHBox (aTitleGrp);
-  aHBox->setSpacing(5);
+  QWidget* aHBox = new QWidget (aTitleGrp);
+  aVBLay->addWidget( aHBox );
+
+  QHBoxLayout* aHBLay = new QHBoxLayout( aHBox );
+  aHBLay->setSpacing(5);
+
   myTitleFont = new SVTK_FontWidget (aHBox);
+  aHBLay->addWidget( myTitleFont );
 
-  TopLayout->addWidget(aTitleGrp);
+  aMainLay->addWidget(aTitleGrp);
 
   // "Labels" grp
-  QGroupBox* aLabelsGrp = new QGroupBox (1, Qt::Vertical, tr("LBL_LABELS"), this);
+  QGroupBox* aLabelsGrp = new QGroupBox (tr("LBL_LABELS"), this);
+  aVBLay = new QVBoxLayout( aLabelsGrp );
 
   //   font
-  aHBox = new QHBox (aLabelsGrp);
-  aHBox->setSpacing(5);
+  aHBox = new QWidget (aLabelsGrp);
+  aVBLay->addWidget( aHBox );
+
+  aHBLay = new QHBoxLayout( aHBox );
+  aHBLay->setSpacing(5);
+  
   myLabelFont = new SVTK_FontWidget (aHBox);
+  aHBLay->addWidget( myLabelFont );
 
-  TopLayout->addWidget(aLabelsGrp);
+  aMainLay->addWidget(aLabelsGrp);
 
   // Common buttons ===========================================================
-  QGroupBox* GroupButtons = new QGroupBox( this, "GroupButtons" );
-  GroupButtons->setColumnLayout(0, Qt::Vertical );
-  GroupButtons->layout()->setSpacing( 0 );
-  GroupButtons->layout()->setMargin( 0 );
-  QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons->layout() );
+  QGroupBox* GroupButtons = new QGroupBox( this );
+  //GroupButtons->setColumnLayout(0, Qt::Vertical );
+  //GroupButtons->layout()->setSpacing( 0 );
+  //GroupButtons->layout()->setMargin( 0 );
+  QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons );
   GroupButtonsLayout->setAlignment( Qt::AlignTop );
   GroupButtonsLayout->setSpacing( 6 );
   GroupButtonsLayout->setMargin( 11 );
 
-  QPushButton* buttonOk = new QPushButton( tr( "&OK" ), GroupButtons, "buttonOk" );
+  QPushButton* buttonOk = new QPushButton( tr( "&OK" ), GroupButtons );
   buttonOk->setAutoDefault( TRUE );
   buttonOk->setDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonOk, 0, 0 );
   GroupButtonsLayout->addItem( new QSpacerItem( 5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 1 );
 
-  QPushButton* buttonCancel = new QPushButton( tr( "&Cancel" ) , GroupButtons, "buttonCancel" );
+  QPushButton* buttonCancel = new QPushButton( tr( "&Cancel" ) , GroupButtons );
   buttonCancel->setAutoDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonCancel, 0, 2 );
 
-  QPushButton* buttonHelp = new QPushButton( tr( "&Help" ) , GroupButtons, "buttonHelp" );
+  QPushButton* buttonHelp = new QPushButton( tr( "&Help" ) , GroupButtons );
   buttonHelp->setAutoDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonHelp, 0, 3 );
 
-  TopLayout->addWidget( GroupButtons );
+  aMainLay->addWidget( GroupButtons );
 
   connect(buttonOk,     SIGNAL(clicked()), this, SLOT(accept()));
   connect(buttonCancel, SIGNAL(clicked()), this, SLOT(reject()));
@@ -152,7 +167,7 @@ QString VisuGUI_TextPrefDlg::getTitleText()
 
 
 //----------------------------------------------------------------------------
-void VisuGUI_TextPrefDlg::setTitleText(QString theText)
+void VisuGUI_TextPrefDlg::setTitleText( const QString& theText )
 {
   myTitleEdt->setText(theText);
 }
@@ -178,10 +193,10 @@ void VisuGUI_TextPrefDlg::onHelp()
     app->onHelpContextModule(aVisuGUI ? app->moduleName(aVisuGUI->moduleName()) : QString(""), aHelpFileName);
   }
   else {
-    SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"),
-                          QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
-                          arg(app->resourceMgr()->stringValue("ExternalBrowser", "application")).arg(aHelpFileName),
-                          QObject::tr("BUT_OK"));
+    SUIT_MessageBox::warning(0, QObject::tr("WRN_WARNING"),
+                             QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                             arg(app->resourceMgr()->stringValue("ExternalBrowser", "application")).arg(aHelpFileName),
+                             QObject::tr("BUT_OK"));
   }
 }
 
@@ -231,7 +246,7 @@ void VisuGUI_TextPrefDlg::keyPressEvent( QKeyEvent* e )
   if ( e->isAccepted() )
     return;
 
-  if ( e->key() == Key_F1 )
+  if ( e->key() == Qt::Key_F1 )
     {
       e->accept();
       onHelp();
@@ -244,184 +259,171 @@ void VisuGUI_TextPrefDlg::keyPressEvent( QKeyEvent* e )
 /*!
   Constructor
 */
-VisuGUI_BarPrefDlg::VisuGUI_BarPrefDlg (QWidget* parent)
-  : QDialog(parent, 0, true, WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu)
+VisuGUI_BarPrefDlg::VisuGUI_BarPrefDlg( QWidget* parent )
+  : QDialog( parent ),
+    myOrientation( 1 )
 {
-  setName("VisuGUI_BarPrefDlg");
-  setCaption(tr("TIT_BAR_PREF"));
-  setSizeGripEnabled(TRUE);
+  setModal( true );
+  setWindowTitle( tr( "TIT_BAR_PREF" ) );
+  setSizeGripEnabled( true );
 
-  SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
-  QString propertyName;
-  propertyName = QString("scalar_bar_vertical_");
+  QString propertyName = QString( "scalar_bar_vertical_" );
 
-  myTitleWidth = myTitleHeight = myLabelWidth = myLabelHeight = myBarWidth = myBarHeight = 0;
+  myTitleSize = myLabelSize = myBarWidth = myBarHeight = 0;
   myUnits = true;
-  myUnitsFormat = "%-#6.3g";
+  myPrecision = 3;
+
+  QVBoxLayout* aMainLay = new QVBoxLayout( this );
+  aMainLay->setSpacing( 5 );
+  aMainLay->setMargin( 5 );
 
-  QVBoxLayout* TopLayout = new QVBoxLayout(this);
-  TopLayout->setSpacing(6);
-  TopLayout->setMargin(11);
+  // dimensions
+  
+  QGroupBox* aDimGrp = new QGroupBox( this );
+  QGridLayout* aDimGrpLay = new QGridLayout( aDimGrp );
+  aDimGrpLay->setSpacing( 5 );
+  aDimGrpLay->setMargin( 5 );
+
+  myTitleSizeSpin = new QSpinBox( aDimGrp );
+  myTitleSizeSpin->setRange( 0, 100 );
+  myTitleSizeSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+  myTitleSizeSpin->setMinimumWidth( 70 );
+  myTitleSizeSpin->setValue( 0 );
+  myTitleSizeSpin->setSpecialValueText( tr( "AUTO" ) );
+  QLabel* aTitleSizeLbl = new QLabel( tr( "LBL_TITLE_W" ), aDimGrp );
+  
+  myLabelSizeSpin = new QSpinBox( aDimGrp );
+  myLabelSizeSpin->setRange( 0, 100 );
+  myLabelSizeSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+  myLabelSizeSpin->setMinimumWidth( 70 );
+  myLabelSizeSpin->setValue( 0 );
+  myLabelSizeSpin->setSpecialValueText( tr( "AUTO" ) );
+  QLabel* aLabelSizeLbl = new QLabel( tr( "LBL_LABEL_W" ), aDimGrp );
   
-  QGroupBox* WidthHeightGroup = new QGroupBox (tr(""), this, "WidthHeightGroup");
-  WidthHeightGroup->setColumnLayout(0, Qt::Vertical );
-  WidthHeightGroup->layout()->setSpacing( 0 );
-  WidthHeightGroup->layout()->setMargin( 0 );
-  QGridLayout* WidthHeightGroupLayout = new QGridLayout( WidthHeightGroup->layout() );
-  WidthHeightGroupLayout->setAlignment( Qt::AlignTop );
-  WidthHeightGroupLayout->setSpacing( 6 );
-  WidthHeightGroupLayout->setMargin( 11 );
-
-  QLabel* LabelTitleWidth = new QLabel (tr("LBL_TITLE_W"), WidthHeightGroup, "LabelTitleWidth");
-  TitleWidthSpin = new QSpinBox( 0, 100, 1, WidthHeightGroup );
-  TitleWidthSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
-  TitleWidthSpin->setMinimumWidth( 70 );
-  TitleWidthSpin->setValue( 0 );
-  TitleWidthSpin->setSpecialValueText( tr("AUTO") );
-  WidthHeightGroupLayout->addMultiCellWidget( LabelTitleWidth, 0, 0, 0, 0);
-  WidthHeightGroupLayout->addMultiCellWidget( TitleWidthSpin, 0, 0, 1, 1);
-
-  QLabel* LabelTitleHeight = new QLabel (tr("LBL_TITLE_H"), WidthHeightGroup, "LabelTitleHeight");
-  TitleHeightSpin = new QSpinBox( 0, 100, 1, WidthHeightGroup );
-  TitleHeightSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
-  TitleHeightSpin->setMinimumWidth( 70 );
-  TitleHeightSpin->setValue( 0 );
-  TitleHeightSpin->setSpecialValueText( tr("AUTO") );
-  WidthHeightGroupLayout->addMultiCellWidget( LabelTitleHeight, 0, 0, 2, 2);
-  WidthHeightGroupLayout->addMultiCellWidget( TitleHeightSpin, 0, 0, 3, 3);
-
-  CBUnits = new QCheckBox (tr("LBL_SHOW_UNITS"), WidthHeightGroup);
-  CBUnits->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
-  WidthHeightGroupLayout->addMultiCellWidget( CBUnits, 0, 0, 4, 5);
-
-  QLabel* LabelLabelWidth = new QLabel (tr("LBL_LABEL_W"), WidthHeightGroup, "LabelLabelWidth");
-  LabelWidthSpin = new QSpinBox( 0, 100, 1, WidthHeightGroup );
-  LabelWidthSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
-  LabelWidthSpin->setMinimumWidth( 70 );
-  LabelWidthSpin->setValue( 0 );
-  LabelWidthSpin->setSpecialValueText( tr("AUTO") );
-  WidthHeightGroupLayout->addMultiCellWidget( LabelLabelWidth, 1, 1, 0, 0);
-  WidthHeightGroupLayout->addMultiCellWidget( LabelWidthSpin, 1, 1, 1, 1);
-
-  QLabel* LabelLabelHeight = new QLabel (tr("LBL_LABEL_H"), WidthHeightGroup, "LabelLabelHeight");
-  LabelHeightSpin = new QSpinBox( 0, 100, 1, WidthHeightGroup );
-  LabelHeightSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
-  LabelHeightSpin->setMinimumWidth( 70 );
-  LabelHeightSpin->setValue( 0 );
-  LabelHeightSpin->setSpecialValueText( tr("AUTO") );
-  WidthHeightGroupLayout->addMultiCellWidget( LabelLabelHeight, 1, 1, 2, 2);
-  WidthHeightGroupLayout->addMultiCellWidget( LabelHeightSpin, 1, 1, 3, 3);
-
-  UnitsEdit = new QLineEdit(WidthHeightGroup , "UnirsEdit" );
-  UnitsEdit->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
-  UnitsEdit->setMinimumWidth( 35 );
-  UnitsEdit->setText( myUnitsFormat );
-  QLabel* UnitsLabel = new QLabel (tr("LBL_UNITS_FORMAT"), WidthHeightGroup, "UnitsLabel");
-  UnitsLabel->setBuddy(UnitsEdit);
-  WidthHeightGroupLayout->addMultiCellWidget( UnitsLabel, 1, 1, 4, 4);
-  WidthHeightGroupLayout->addMultiCellWidget( UnitsEdit, 1, 1, 5, 5);
-
-  QLabel* LabelBarWidth = new QLabel (tr("LBL_BAR_W"), WidthHeightGroup, "LabelBarWidth");
-  BarWidthSpin = new QSpinBox( 0, 100, 1, WidthHeightGroup );
-  BarWidthSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
-  BarWidthSpin->setMinimumWidth( 70 );
-  BarWidthSpin->setValue( 0 );
-  BarWidthSpin->setSpecialValueText( tr("AUTO") );
-  WidthHeightGroupLayout->addMultiCellWidget( LabelBarWidth, 2, 2, 0, 0);
-  WidthHeightGroupLayout->addMultiCellWidget( BarWidthSpin, 2, 2, 1, 1);
-
-  QLabel* LabelBarHeight = new QLabel (tr("LBL_BAR_H"), WidthHeightGroup, "LabelBarHeight");
-  BarHeightSpin = new QSpinBox( 0, 100, 1, WidthHeightGroup );
-  BarHeightSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
-  BarHeightSpin->setMinimumWidth( 70 );
-  BarHeightSpin->setValue( 0 );
-  BarHeightSpin->setSpecialValueText( tr("AUTO") );
-  WidthHeightGroupLayout->addMultiCellWidget( LabelBarHeight, 2, 2, 2, 2);
-  WidthHeightGroupLayout->addMultiCellWidget( BarHeightSpin, 2, 2, 3, 3);
-
-  TopLayout->addWidget( WidthHeightGroup );
+  myBarWidthSpin = new QSpinBox( aDimGrp );
+  myBarWidthSpin->setRange( 0, 100 );
+  myBarWidthSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+  myBarWidthSpin->setMinimumWidth( 70 );
+  myBarWidthSpin->setValue( 0 );
+  myBarWidthSpin->setSpecialValueText( tr( "AUTO" ) );
+  QLabel* aBarWidthLbl = new QLabel( tr( "LBL_BAR_W" ), aDimGrp );
+  
+  myBarHeightSpin = new QSpinBox( aDimGrp );
+  myBarHeightSpin->setRange( 0, 100 );
+  myBarHeightSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+  myBarHeightSpin->setMinimumWidth( 70 );
+  myBarHeightSpin->setValue( 0 );
+  myBarHeightSpin->setSpecialValueText( tr( "AUTO" ) );
+  QLabel* aBarHeightLbl = new QLabel( tr( "LBL_BAR_H" ), aDimGrp );
+
+  // format and units
+
+  QLabel* aPrecLbl = new QLabel( tr( "PRECISION" ), aDimGrp );
+  myPrecisionSpin = new QSpinBox( aDimGrp );
+  myPrecisionSpin->setRange( 1, 100 );
+  
+  myUnitsChk = new QCheckBox( tr( "LBL_SHOW_UNITS" ), aDimGrp );
+  
+  // layout
+  
+  aDimGrpLay->addWidget( aTitleSizeLbl,  0, 0 );
+  aDimGrpLay->addWidget( myTitleSizeSpin,   0, 1 );
+  aDimGrpLay->addWidget( aLabelSizeLbl,  0, 2 );
+  aDimGrpLay->addWidget( myLabelSizeSpin,   0, 3 );
+  aDimGrpLay->addWidget( aBarWidthLbl,   1, 0 );
+  aDimGrpLay->addWidget( myBarWidthSpin,    1, 1 );
+  aDimGrpLay->addWidget( aBarHeightLbl,  1, 2 );
+  aDimGrpLay->addWidget( myBarHeightSpin,   1, 3 );
+  aDimGrpLay->addWidget( aPrecLbl, 2, 0 );
+  aDimGrpLay->addWidget( myPrecisionSpin, 2, 1 );
+  aDimGrpLay->addWidget( myUnitsChk, 2, 2, 1, 2 );
+  
+  aMainLay->addWidget( aDimGrp );
 
   // Common buttons ===========================================================
-  QGroupBox* GroupButtons = new QGroupBox( this, "GroupButtons" );
-  GroupButtons->setColumnLayout(0, Qt::Vertical );
-  GroupButtons->layout()->setSpacing( 0 );
-  GroupButtons->layout()->setMargin( 0 );
-  QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons->layout() );
+
+  QGroupBox* GroupButtons = new QGroupBox( this );
+  QHBoxLayout* GroupButtonsLayout = new QHBoxLayout( GroupButtons );
   GroupButtonsLayout->setAlignment( Qt::AlignTop );
   GroupButtonsLayout->setSpacing( 6 );
   GroupButtonsLayout->setMargin( 11 );
 
-  QPushButton* buttonOk = new QPushButton( tr( "&OK" ), GroupButtons, "buttonOk" );
-  buttonOk->setAutoDefault( TRUE );
-  buttonOk->setDefault( TRUE );
-  GroupButtonsLayout->addWidget( buttonOk, 0, 0 );
-  GroupButtonsLayout->addItem( new QSpacerItem( 5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 1 );
-
-  QPushButton* buttonCancel = new QPushButton( tr( "&Cancel" ) , GroupButtons, "buttonCancel" );
-  buttonCancel->setAutoDefault( TRUE );
-  GroupButtonsLayout->addWidget( buttonCancel, 0, 2 );
-
-  QPushButton* buttonHelp = new QPushButton( tr( "&Help" ) , GroupButtons, "buttonHelp" );
-  buttonHelp->setAutoDefault( TRUE );
-  GroupButtonsLayout->addWidget( buttonHelp, 0, 3 );
-
-  TopLayout->addWidget( GroupButtons );
-
-  connect(buttonOk,     SIGNAL(clicked()), this, SLOT(accept()));
-  connect(buttonCancel, SIGNAL(clicked()), this, SLOT(reject()));
-  connect(buttonHelp,   SIGNAL(clicked()), this, SLOT(onHelp()));
-  connect(TitleWidthSpin, SIGNAL(valueChanged( int )), this, SIGNAL(updatePreview()));
-  connect(TitleHeightSpin, SIGNAL(valueChanged( int )), this, SIGNAL(updatePreview()));
-  connect(LabelWidthSpin, SIGNAL(valueChanged( int )), this, SIGNAL(updatePreview()));
-  connect(LabelHeightSpin, SIGNAL(valueChanged( int )), this, SIGNAL(updatePreview()));
-  connect(BarWidthSpin, SIGNAL(valueChanged( int )), this, SIGNAL(updatePreview()));
-  connect(BarHeightSpin, SIGNAL(valueChanged( int )), this, SIGNAL(updatePreview()));
-  connect(CBUnits, SIGNAL( toggled( bool )), this, SIGNAL(updatePreview()));
-  connect(UnitsEdit, SIGNAL( lostFocus() ), this, SIGNAL(updatePreview()));
+  QPushButton* buttonOk = new QPushButton( tr( "&OK" ), GroupButtons );
+  buttonOk->setAutoDefault( true );
+  buttonOk->setDefault( true );
+
+  QPushButton* buttonCancel = new QPushButton( tr( "&Cancel" ) , GroupButtons );
+  buttonCancel->setAutoDefault( true );
+
+  QPushButton* buttonHelp = new QPushButton( tr( "&Help" ) , GroupButtons );
+  buttonHelp->setAutoDefault( true );
+
+  GroupButtonsLayout->addWidget( buttonOk );
+  GroupButtonsLayout->addSpacing( 5 );
+  GroupButtonsLayout->addStretch();
+  GroupButtonsLayout->addWidget( buttonCancel );
+  GroupButtonsLayout->addWidget( buttonHelp );
+
+  aMainLay->addWidget( GroupButtons );
+
+  connect( buttonOk,        SIGNAL( clicked() ),           this, SLOT( accept() ) );
+  connect( buttonCancel,    SIGNAL( clicked() ),           this, SLOT( reject() ) );
+  connect( buttonHelp,      SIGNAL( clicked() ),           this, SLOT( onHelp() ) );
+  connect( myTitleSizeSpin,  SIGNAL( valueChanged( int ) ), this, SIGNAL( updatePreview() ) );
+  connect( myLabelSizeSpin,  SIGNAL( valueChanged( int ) ), this, SIGNAL( updatePreview() ) );
+  connect( myBarWidthSpin,    SIGNAL( valueChanged( int ) ), this, SIGNAL( updatePreview() ) );
+  connect( myBarHeightSpin,   SIGNAL( valueChanged( int ) ), this, SIGNAL( updatePreview() ) );
+  connect( myUnitsChk,         SIGNAL( toggled( bool ) ),     this, SIGNAL( updatePreview() ) );
+  connect( myPrecisionSpin,  SIGNAL( valueChanged( int ) ), this, SIGNAL( updatePreview() ) );
 }
 
 
 //----------------------------------------------------------------------------
-void VisuGUI_BarPrefDlg::setRatios(int titleRatioWidth, int titleRatioHeight,
-                                  int labelRatioWidth, int labelRatioHeight,
-                                  int barRatioWidth, int barRatioHeight)
+void VisuGUI_BarPrefDlg::setRatios( int titleRatioSize, int labelRatioWidth,
+                                   int barRatioWidth, int barRatioHeight )
 {
-  TitleWidthSpin->setValue( myTitleWidth=titleRatioWidth );
-  TitleHeightSpin->setValue( myTitleHeight=titleRatioHeight );
-  LabelWidthSpin->setValue( myLabelWidth=labelRatioWidth );
-  LabelHeightSpin->setValue( myLabelHeight=labelRatioHeight );
-  BarWidthSpin->setValue( myBarWidth=barRatioWidth );
-  BarHeightSpin->setValue( myBarHeight=barRatioHeight );
+  myTitleSizeSpin->setValue( myTitleSize = titleRatioSize );
+  myLabelSizeSpin->setValue( myLabelSize = labelRatioWidth );
+  myBarWidthSpin->setValue( myBarWidth = barRatioWidth );
+  myBarHeightSpin->setValue( myBarHeight = barRatioHeight );
 }
 
 
 //----------------------------------------------------------------------------
-void VisuGUI_BarPrefDlg::getRatios(int& titleRatioWidth, int& titleRatioHeight,
-                                  int& labelRatioWidth, int& labelRatioHeight,
-                                  int& barRatioWidth, int& barRatioHeight)
+void VisuGUI_BarPrefDlg::getRatios( int& titleRatioSize, int& labelRatioWidth,
+                                   int& barRatioWidth, int& barRatioHeight )
 {
-  titleRatioWidth=TitleWidthSpin->value();
-  titleRatioHeight=TitleHeightSpin->value();
-  labelRatioWidth=LabelWidthSpin->value();
-  labelRatioHeight=LabelHeightSpin->value();
-  barRatioWidth=BarWidthSpin->value();
-  barRatioHeight=BarHeightSpin->value();
+  titleRatioSize  = myTitleSizeSpin->value();
+  labelRatioWidth  = myLabelSizeSpin->value();
+  barRatioWidth    = myBarWidthSpin->value();
+  barRatioHeight   = myBarHeightSpin->value();
 }
 
 
 //----------------------------------------------------------------------------
-void VisuGUI_BarPrefDlg::setLabelsFormat(QString format)
+void VisuGUI_BarPrefDlg::setLabelsPrecision( const int p )
 {
-  UnitsEdit->setText(myUnitsFormat=format);
+  myPrecisionSpin->setValue( p );
 }
 
+//----------------------------------------------------------------------------
+int VisuGUI_BarPrefDlg::getLabelsPrecision() const
+{
+  return myPrecisionSpin->value();
+}
 
 //----------------------------------------------------------------------------
-QString VisuGUI_BarPrefDlg::getLabelsFormat()
+void VisuGUI_BarPrefDlg::setOrientation( const int ori )
 {
-  return UnitsEdit->text();
+  myOrientation = ori;
 }
 
+//----------------------------------------------------------------------------
+
+int VisuGUI_BarPrefDlg::getOrientation() const
+{
+  return myOrientation;
+}
 
 //----------------------------------------------------------------------------
 void VisuGUI_BarPrefDlg::onHelp()
@@ -433,10 +435,11 @@ void VisuGUI_BarPrefDlg::onHelp()
     app->onHelpContextModule(aVisuGUI ? app->moduleName(aVisuGUI->moduleName()) : QString(""), aHelpFileName);
   }
   else {
-    SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"),
-                          QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
-                          arg(app->resourceMgr()->stringValue("ExternalBrowser", "application")).arg(aHelpFileName),
-                          QObject::tr("BUT_OK"));
+    SUIT_MessageBox::warning( this, tr( "WRN_WARNING" ),
+                             tr( "EXTERNAL_BROWSER_CANNOT_SHOW_PAGE" ).
+                             arg( app->resourceMgr()->stringValue( "ExternalBrowser", 
+                                                                   "application" ) ).
+                             arg( aHelpFileName ) );
   }
 }
 
@@ -444,14 +447,14 @@ void VisuGUI_BarPrefDlg::onHelp()
 //----------------------------------------------------------------------------
 void VisuGUI_BarPrefDlg::setUnitsVisible(bool isVisible)
 {
-  CBUnits->setChecked(myUnits=isVisible);
+  myUnitsChk->setChecked( myUnits = isVisible );
 }
 
 
 //----------------------------------------------------------------------------
 bool VisuGUI_BarPrefDlg::isUnitsVisible()
 {
-  return CBUnits->isChecked();
+  return myUnitsChk->isChecked();
 }
 
 
@@ -461,14 +464,12 @@ bool VisuGUI_BarPrefDlg::isUnitsVisible()
 */
 void VisuGUI_BarPrefDlg::reject()
 {
-  TitleWidthSpin->setValue( myTitleWidth );
-  TitleHeightSpin->setValue( myTitleHeight );
-  LabelWidthSpin->setValue( myLabelWidth );
-  LabelHeightSpin->setValue( myLabelHeight );
-  BarWidthSpin->setValue( myBarWidth );
-  BarHeightSpin->setValue( myBarHeight );
-  CBUnits->setChecked(myUnits);
-  UnitsEdit->setText(myUnitsFormat);
+  myTitleSizeSpin->setValue( myTitleSize );
+  myLabelSizeSpin->setValue( myLabelSize );
+  myBarWidthSpin->setValue( myBarWidth );
+  myBarHeightSpin->setValue( myBarHeight );
+  myUnitsChk->setChecked( myUnits );
+  myPrecisionSpin->setValue( myPrecision );
   QDialog::reject();
 }
 
@@ -480,41 +481,26 @@ void VisuGUI_BarPrefDlg::reject()
 void VisuGUI_BarPrefDlg::accept()
 {
   QString dVal;
-  dVal.sprintf(UnitsEdit->text(),1.1);
-  if(dVal.toDouble() == 0.) {
-    SUIT_MessageBox::warn1( this,tr("WRN_VISU"),
-                           tr("MSG_LABEL_FORMAT"),
-                           tr("BUT_OK"));
-  } else {
-    if(
-       (
-       TitleWidthSpin->value()+
-       LabelWidthSpin->value()+
-       BarWidthSpin->value()
-       > 100
-       ) ||
-       (
-       TitleHeightSpin->value()+
-       LabelHeightSpin->value()+
-       BarHeightSpin->value()
-       > 100
-        )
-       ) {
-      SUIT_MessageBox::warn1( this,tr("WRN_VISU"),
-                             tr("MSG_BIG_SCALE"),
-                             tr("BUT_OK"));
-    } else {
-      myTitleWidth = TitleWidthSpin->value();
-      myTitleHeight = TitleHeightSpin->value();
-      myLabelWidth = LabelWidthSpin->value();
-      myLabelHeight = LabelHeightSpin->value();
-      myBarWidth = BarWidthSpin->value();
-      myBarHeight = BarHeightSpin->value();
-      myUnits = CBUnits->isChecked();
-      myUnitsFormat = UnitsEdit->text();
-      QDialog::accept();
-    }
+  int aBWH = myOrientation == 1 ? myBarWidthSpin->value() : myBarHeightSpin->value();
+  if( ( myLabelSizeSpin->value()+ aBWH ) > 100 ) 
+  {
+    SUIT_MessageBox::warning( this, tr( "WRN_VISU" ), tr( "MSG_BIG_SCALE" ) );
+    return;
+  } 
+  
+  if ( myTitleSizeSpin->value() > 100 )
+  {
+    SUIT_MessageBox::warning( this, tr( "WRN_VISU" ), tr( "MSG_BIG_SCALE_TLT" ) );
+    return;
   }
+  
+  myTitleSize = myTitleSizeSpin->value();
+  myLabelSize = myLabelSizeSpin->value();
+  myBarWidth = myBarWidthSpin->value();
+  myBarHeight = myBarHeightSpin->value();
+  myUnits = myUnitsChk->isChecked();
+  myPrecision = myPrecisionSpin->value();
+  QDialog::accept();
 }
 
 
@@ -528,123 +514,126 @@ void VisuGUI_BarPrefDlg::keyPressEvent( QKeyEvent* e )
   if ( e->isAccepted() )
     return;
 
-  if ( e->key() == Key_F1 )
-    {
-      e->accept();
-      onHelp();
-    }
+  if ( e->key() == Qt::Key_F1 ) {
+    e->accept();
+    onHelp();
+  }
 }
 
+
 //-----------------------------------------------------------------------
 // Scalar Bar Pane
 //-----------------------------------------------------------------------
+
 /*!
   Constructor
 */
-VisuGUI_ScalarBarPane::VisuGUI_ScalarBarPane (QWidget * parent, bool thePreview):
-  QVBox(parent),
-  myPreviewActor(0),
-  myScalarMap(NULL),
-  myScalarMapPL(NULL)
+VisuGUI_ScalarBarPane::VisuGUI_ScalarBarPane( QWidget* parent, bool thePreview )
+  : QWidget( parent ), 
+    myPreviewActor( 0 ),
+    myScalarMap( 0 ),
+    myScalarMapPL( 0 )
 {
+  QVBoxLayout* aMainLayout = new QVBoxLayout( this );
   SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
   QString propertyName;
   propertyName = QString("scalar_bar_vertical_");
-  myVerX  = aResourceMgr->doubleValue("VISU", propertyName + "x", 0.);
-  myVerY  = aResourceMgr->doubleValue("VISU", propertyName + "y", 0.);
-  myVerW  = aResourceMgr->doubleValue("VISU", propertyName + "width", 0.);
-  myVerH  = aResourceMgr->doubleValue("VISU", propertyName + "height",0.);
-  myVerTW = aResourceMgr->integerValue("VISU", propertyName + "title_width", 0);
-  myVerTH = aResourceMgr->integerValue("VISU", propertyName + "title_height",0);
-  myVerLW = aResourceMgr->integerValue("VISU", propertyName + "label_width", 0);
-  myVerLH = aResourceMgr->integerValue("VISU", propertyName + "label_height",0);
+  myVerX = aResourceMgr->doubleValue("VISU", propertyName + "x", 0.);
+  myVerY = aResourceMgr->doubleValue("VISU", propertyName + "y", 0.);
+  myVerW = aResourceMgr->doubleValue("VISU", propertyName + "width", 0.);
+  myVerH = aResourceMgr->doubleValue("VISU", propertyName + "height",0.);
+  myVerTS = aResourceMgr->integerValue("VISU", propertyName + "title_size", 0);
+  myVerLS = aResourceMgr->integerValue("VISU", propertyName + "label_size", 0);
   myVerBW = aResourceMgr->integerValue("VISU", propertyName + "bar_width", 0);
   myVerBH = aResourceMgr->integerValue("VISU", propertyName + "bar_height",0);
-
+  
   propertyName = QString("scalar_bar_horizontal_");
   myHorX  = aResourceMgr->doubleValue("VISU", propertyName + "x", 0.);
   myHorY  = aResourceMgr->doubleValue("VISU", propertyName + "y", 0.);
   myHorW  = aResourceMgr->doubleValue("VISU", propertyName + "width", 0.);
   myHorH  = aResourceMgr->doubleValue("VISU", propertyName + "height",0.);
-  myHorTW = aResourceMgr->integerValue("VISU", propertyName + "title_width", 0);
-  myHorTH = aResourceMgr->integerValue("VISU", propertyName + "title_height",0);
-  myHorLW = aResourceMgr->integerValue("VISU", propertyName + "label_width", 0);
-  myHorLH = aResourceMgr->integerValue("VISU", propertyName + "label_height",0);
+  myHorTS = aResourceMgr->integerValue("VISU", propertyName + "title_size", 0);
+  myHorLS = aResourceMgr->integerValue("VISU", propertyName + "label_size", 0);
   myHorBW = aResourceMgr->integerValue("VISU", propertyName + "bar_width", 0);
   myHorBH = aResourceMgr->integerValue("VISU", propertyName + "bar_height",0);
 
-  setSpacing(6);
-  //setMargin(11);
+  //aMainLayout->setSpacing(6);
 
   // Range ============================================================
-  RangeGroup = new QButtonGroup (tr("SCALAR_RANGE_GRP"), this, "RangeGroup");
-  RangeGroup->setColumnLayout(0, Qt::Vertical );
-  RangeGroup->layout()->setSpacing( 0 );
-  RangeGroup->layout()->setMargin( 0 );
-  QGridLayout* RangeGroupLayout = new QGridLayout( RangeGroup->layout() );
+  RangeGroup = new QButtonGroup ( this );
+  QGroupBox* aGB = new QGroupBox( tr("SCALAR_RANGE_GRP"),this  );
+  aMainLayout->addWidget( aGB );
+  QGridLayout* RangeGroupLayout = new QGridLayout( aGB );
   RangeGroupLayout->setAlignment( Qt::AlignTop );
-  RangeGroupLayout->setSpacing( 6 );
-  RangeGroupLayout->setMargin( 11 );
+  //RangeGroupLayout->setSpacing( 6 );
+  //RangeGroupLayout->setMargin( 11 );
 
-  myModeLbl = new QLabel("Scalar Mode", RangeGroup);
+  myModeLbl = new QLabel("Scalar Mode", aGB);
 
-  myModeCombo = new QComboBox(RangeGroup);
+  myModeCombo = new QComboBox(aGB);
 
-  CBLog = new QCheckBox (tr("LOGARITHMIC_SCALING"), RangeGroup);
+  CBLog = new QCheckBox (tr("LOGARITHMIC_SCALING"), aGB);
   CBLog->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
 
-  RBFrange = new QRadioButton (tr("FIELD_RANGE_BTN"), RangeGroup, "RBFrange");
-  RBIrange = new QRadioButton (tr("IMPOSED_RANGE_BTN"), RangeGroup, "RBIrange");
+  RBFrange = new QRadioButton (tr("FIELD_RANGE_BTN"), aGB);
+  RBIrange = new QRadioButton (tr("IMPOSED_RANGE_BTN"), aGB);
+  RangeGroup->addButton( RBFrange, 0 );
+  RangeGroup->addButton( RBIrange, 1 );
   RBFrange->setChecked( true );
 
-  MinEdit = new QLineEdit( RangeGroup, "MinEdit" );
+  MinEdit = new QLineEdit( aGB );
   MinEdit->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
-  MinEdit->setMinimumWidth( 70 );
+  //MinEdit->setMinimumWidth( 70 );
   MinEdit->setValidator( new QDoubleValidator(this) );
   MinEdit->setText( "0.0" );
-  QLabel* MinLabel = new QLabel (tr("LBL_MIN"), RangeGroup, "MinLabel");
+  QLabel* MinLabel = new QLabel (tr("LBL_MIN"), aGB);
+  MinLabel->setSizePolicy( QSizePolicy( QSizePolicy::Fixed, QSizePolicy::Fixed ) );
   MinLabel->setBuddy(MinEdit);
 
-  MaxEdit = new QLineEdit( RangeGroup, "MaxEdit" );
+  MaxEdit = new QLineEdit( aGB );
   MaxEdit->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
-  MaxEdit->setMinimumWidth( 70 );
+  //MaxEdit->setMinimumWidth( 70 );
   MaxEdit->setValidator( new QDoubleValidator(this) );
   MaxEdit->setText( "0.0" );
-  QLabel* MaxLabel = new QLabel (tr("LBL_MAX"), RangeGroup, "MaxLabel");
+  QLabel* MaxLabel = new QLabel (tr("LBL_MAX"), aGB);
+  MaxLabel->setSizePolicy( QSizePolicy( QSizePolicy::Fixed, QSizePolicy::Fixed ) );
   MaxLabel->setBuddy(MaxEdit);
 
-  RangeGroupLayout->addWidget( myModeLbl, 0, 0 );
-  RangeGroupLayout->addMultiCellWidget( myModeCombo, 0, 0, 1, 3);
-  RangeGroupLayout->addMultiCellWidget( CBLog, 1, 1, 0, 3);
-  RangeGroupLayout->addMultiCellWidget( RBFrange, 2, 2, 0, 1);
-  RangeGroupLayout->addMultiCellWidget( RBIrange, 2, 2, 2, 3);
-  RangeGroupLayout->addWidget( MinLabel, 3, 0 );
-  RangeGroupLayout->addWidget( MinEdit,  3, 1 );
-  RangeGroupLayout->addWidget( MaxLabel, 3, 2 );
-  RangeGroupLayout->addWidget( MaxEdit,  3, 3 );
-
-  //TopLayout->addWidget( RangeGroup );
+  RangeGroupLayout->addWidget( myModeLbl, 0, 0, 1, 1 );
+  RangeGroupLayout->addWidget( myModeCombo, 0, 1, 1, 2);
+  RangeGroupLayout->addWidget( CBLog, 0, 3, 1, 1);
+  RangeGroupLayout->addWidget( RBFrange, 1, 0, 1, 2);
+  RangeGroupLayout->addWidget( RBIrange, 1, 2, 1, 2);
+  RangeGroupLayout->addWidget( MinLabel, 2, 0 );
+  RangeGroupLayout->addWidget( MinEdit,  2, 1 );
+  RangeGroupLayout->addWidget( MaxLabel, 2, 2 );
+  RangeGroupLayout->addWidget( MaxEdit,  2, 3 );
 
   // Colors and Labels ========================================================
-  QGroupBox* ColLabGroup = new QGroupBox (tr("COLORS_LABELS_GRP"), this, "ColLabGroup");
-  ColLabGroup->setColumnLayout(0, Qt::Vertical );
-  ColLabGroup->layout()->setSpacing( 0 );
-  ColLabGroup->layout()->setMargin( 0 );
-  QGridLayout* ColLabGroupLayout = new QGridLayout( ColLabGroup->layout() );
+  QGroupBox* ColLabGroup = new QGroupBox (tr("COLORS_LABELS_GRP"), this);
+  aMainLayout->addWidget( ColLabGroup );
+  QGridLayout* ColLabGroupLayout = new QGridLayout( ColLabGroup );
   ColLabGroupLayout->setAlignment( Qt::AlignTop );
-  ColLabGroupLayout->setSpacing( 6 );
-  ColLabGroupLayout->setMargin( 11 );
-
-  QLabel* ColorLabel = new QLabel (tr("LBL_NB_COLORS"), ColLabGroup, "ColorLabel");
-  ColorSpin = new QSpinBox( 2, 256, 1, ColLabGroup );
+  //ColLabGroupLayout->setSpacing( 6 );
+  //ColLabGroupLayout->setMargin( 11 );
+
+  QLabel* ColorLabel = new QLabel (tr("LBL_NB_COLORS"), ColLabGroup);
+  ColorSpin = new QSpinBox( ColLabGroup );
+  ColorSpin->setMinimum( 2 );
+  ColorSpin->setMaximum( 256 );
+  ColorSpin->setSingleStep( 1 );
   ColorSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
-  ColorSpin->setMinimumWidth( 70 );
+  //ColorSpin->setMinimumWidth( 70 );
   ColorSpin->setValue( 64 );
 
-  QLabel* LabelLabel = new QLabel (tr("LBL_NB_LABELS"), ColLabGroup, "LabelLabel");
-  LabelSpin = new QSpinBox( 2, 65, 1, ColLabGroup );
+  QLabel* LabelLabel = new QLabel (tr("LBL_NB_LABELS"), ColLabGroup);
+  LabelSpin = new QSpinBox( ColLabGroup );
+  LabelSpin->setMinimum( 2 );
+  LabelSpin->setMaximum( 65 );
+  LabelSpin->setSingleStep( 1 );
+  
   LabelSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
-  LabelSpin->setMinimumWidth( 70 );
+  //LabelSpin->setMinimumWidth( 70 );
   LabelSpin->setValue( 5 );
 
   ColLabGroupLayout->addWidget( ColorLabel, 0, 0);
@@ -652,75 +641,70 @@ VisuGUI_ScalarBarPane::VisuGUI_ScalarBarPane (QWidget * parent, bool thePreview)
   ColLabGroupLayout->addWidget( LabelLabel, 0, 2);
   ColLabGroupLayout->addWidget( LabelSpin,  0, 3);
 
-  //TopLayout->addWidget( ColLabGroup );
-
   // Orientation ==========================================================
-  QButtonGroup* OrientGroup = new QButtonGroup (tr("ORIENTATION_GRP"), this, "OrientGroup");
-  OrientGroup->setColumnLayout(0, Qt::Vertical );
-  OrientGroup->layout()->setSpacing( 0 );
-  OrientGroup->layout()->setMargin( 0 );
-  QGridLayout* OrientGroupLayout = new QGridLayout( OrientGroup->layout() );
+  QButtonGroup* OrientGroup = new QButtonGroup ( this );
+  QGroupBox* OrientGB = new QGroupBox( tr("ORIENTATION_GRP"),this );
+  aMainLayout->addWidget( OrientGB );
+  QGridLayout* OrientGroupLayout = new QGridLayout( OrientGB );
   OrientGroupLayout->setAlignment( Qt::AlignTop );
-  OrientGroupLayout->setSpacing( 6 );
-  OrientGroupLayout->setMargin( 11 );
+  //OrientGroupLayout->setSpacing( 6 );
+  //OrientGroupLayout->setMargin( 11 );
 
-  RBvert = new QRadioButton (tr("VERTICAL_BTN"), OrientGroup, "RBvert");
+  RBvert = new QRadioButton (tr("VERTICAL_BTN"), OrientGB);
   RBvert->setChecked( true );
-  RBhori = new QRadioButton (tr("HORIZONTAL_BTN"), OrientGroup, "RBhori");
+  RBhori = new QRadioButton (tr("HORIZONTAL_BTN"), OrientGB);
+  OrientGroup->addButton( RBvert );
+  OrientGroup->addButton( RBhori );
   OrientGroupLayout->addWidget( RBvert, 0, 0 );
   OrientGroupLayout->addWidget( RBhori, 0, 1 );
 
-  //  TopLayout->addWidget( OrientGroup );
-
   // Origin ===============================================================
-  QGroupBox* OriginGroup = new QGroupBox (tr("ORIGIN_GRP"), this, "OriginGroup");
-  OriginGroup->setColumnLayout(0, Qt::Vertical );
-  OriginGroup->layout()->setSpacing( 0 );
-  OriginGroup->layout()->setMargin( 0 );
-  QGridLayout* OriginGroupLayout = new QGridLayout( OriginGroup->layout() );
+  QGroupBox* OriginGroup = new QGroupBox (tr("ORIGIN_GRP"), this);
+  aMainLayout->addWidget( OriginGroup );
+  QGridLayout* OriginGroupLayout = new QGridLayout( OriginGroup );
   OriginGroupLayout->setAlignment( Qt::AlignTop );
-  OriginGroupLayout->setSpacing( 6 );
-  OriginGroupLayout->setMargin( 11 );
+  //OriginGroupLayout->setSpacing( 6 );
+  //OriginGroupLayout->setMargin( 11 );
 
-  QLabel* XLabel = new QLabel (tr("LBL_X"), OriginGroup, "XLabel");
-  XSpin = new QtxDblSpinBox( 0.0, 1.0, 0.1, OriginGroup );
+  QLabel* XLabel = new QLabel (tr("LBL_X"), OriginGroup);
+  XSpin = new QtxDoubleSpinBox( OriginGroup );
+  VISU::initSpinBox(XSpin, 0.0, +1.0);
   XSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
-  XSpin->setMinimumWidth( 70 );
+  //XSpin->setMinimumWidth( 70 );
   XSpin->setValue( 0.01 );
 
-  QLabel* YLabel = new QLabel (tr("LBL_Y"), OriginGroup, "YLabel");
-  YSpin = new QtxDblSpinBox( 0.0, 1.0, 0.1, OriginGroup );
+  QLabel* YLabel = new QLabel (tr("LBL_Y"), OriginGroup);
+  YSpin = new QtxDoubleSpinBox( OriginGroup );
+  VISU::initSpinBox(YSpin, 0.0, +1.0);
   YSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
-  YSpin->setMinimumWidth( 70 );
-  YSpin->setValue( 0.01 );
+  //YSpin->setMinimumWidth( 70 );
+  YSpin->setValue( 0.1 );
 
   OriginGroupLayout->addWidget( XLabel, 0, 0);
   OriginGroupLayout->addWidget( XSpin,  0, 1);
   OriginGroupLayout->addWidget( YLabel, 0, 2);
   OriginGroupLayout->addWidget( YSpin,  0, 3);
 
-  //TopLayout->addWidget( OriginGroup );
-
   // Dimensions =========================================================
-  QGroupBox* DimGroup = new QGroupBox (tr("DIMENSIONS_GRP"), this, "DimGroup");
-  DimGroup->setColumnLayout(0, Qt::Vertical );
-  DimGroup->layout()->setSpacing( 0 );
-  DimGroup->layout()->setMargin( 0 );
-  QGridLayout* DimGroupLayout = new QGridLayout( DimGroup->layout() );
+  QGroupBox* DimGroup = new QGroupBox (tr("DIMENSIONS_GRP"), this );
+  aMainLayout->addWidget( DimGroup );
+  QGridLayout* DimGroupLayout = new QGridLayout( DimGroup );
   DimGroupLayout->setAlignment( Qt::AlignTop );
-  DimGroupLayout->setSpacing( 6 );
-  DimGroupLayout->setMargin( 11 );
+  //DimGroupLayout->setSpacing( 6 );
+  //DimGroupLayout->setMargin( 11 );
 
-  QLabel* WidthLabel = new QLabel (tr("LBL_WIDTH"), DimGroup, "WidthLabel");
-  WidthSpin = new QtxDblSpinBox( 0.0, 1.0, 0.1, DimGroup );
+  QLabel* WidthLabel = new QLabel (tr("LBL_WIDTH"), DimGroup);
+  WidthSpin = new QtxDoubleSpinBox( DimGroup );
+  VISU::initSpinBox(WidthSpin, 0.0, +1.0);
   WidthSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
-  WidthSpin->setMinimumWidth( 70 );
+  //WidthSpin->setMinimumWidth( 70 );
   WidthSpin->setValue( 0.1 );
 
-  QLabel* HeightLabel = new QLabel (tr("LBL_HEIGHT"), DimGroup, "HeightLabel");
-  HeightSpin = new QtxDblSpinBox( 0.0, 1.0, 0.1, DimGroup );
+  QLabel* HeightLabel = new QLabel (tr("LBL_HEIGHT"), DimGroup);
+  HeightSpin = new QtxDoubleSpinBox( DimGroup );
+  VISU::initSpinBox(HeightSpin, 0.0, +1.0);
   HeightSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
-  HeightSpin->setMinimumWidth( 70 );
+  //HeightSpin->setMinimumWidth( 70 );
   HeightSpin->setValue( 0.8 );
 
   DimGroupLayout->addWidget( WidthLabel, 0, 0);
@@ -728,60 +712,75 @@ VisuGUI_ScalarBarPane::VisuGUI_ScalarBarPane (QWidget * parent, bool thePreview)
   DimGroupLayout->addWidget( HeightLabel, 0, 2);
   DimGroupLayout->addWidget( HeightSpin,  0, 3);
 
-  //TopLayout->addWidget( DimGroup );
-
   // Save check box ===========================================================
-  QHBox* aSaveBox = new QHBox(this);
-  if (!thePreview) {
-    CBSave = new QCheckBox (tr("SAVE_DEFAULT_CHK"), aSaveBox, "CBSave");
-  }
-  else {
-    CBSave = 0;
-  }
-  myTextBtn = new QPushButton("Text properties...", aSaveBox);
-  myBarBtn = new QPushButton("Bar properties...", aSaveBox);
-  myTextDlg = new VisuGUI_TextPrefDlg(this);
+  QWidget* aSaveBox = new QWidget(this);
+  aMainLayout->addWidget( aSaveBox );
+  QHBoxLayout* aVBLay = new QHBoxLayout( aSaveBox );
+  aVBLay->addWidget( myTextBtn = new QPushButton("Text properties...", aSaveBox) );
+  aVBLay->addWidget( myBarBtn  = new QPushButton("Bar properties...",  aSaveBox) );
+  
+  aMainLayout->addWidget( myTextDlg = new VisuGUI_TextPrefDlg(this) );
   myTextDlg->setTitleVisible(!thePreview);
   myBarDlg = new VisuGUI_BarPrefDlg(this);
 
-  QGroupBox* CheckGroup = new QGroupBox("", this, "CheckGroup");
-  CheckGroup->setColumnLayout(0, Qt::Vertical );
-  CheckGroup->layout()->setSpacing( 0 );
-  CheckGroup->layout()->setMargin( 0 );
-  QGridLayout* CheckGroupLayout = new QGridLayout( CheckGroup->layout() );
-
+  QGroupBox* CheckGroup = new QGroupBox("", this );
+  aMainLayout->addWidget( CheckGroup );
+  //QHBoxLayout* CheckGroupLayout = new QHBoxLayout( CheckGroup );
+  QGridLayout* CheckGroupLayout = new QGridLayout( CheckGroup );
+  
   myPreviewCheck = new QCheckBox(tr("LBL_SHOW_PREVIEW"), CheckGroup);
   myPreviewCheck->setChecked(false);
-  CheckGroupLayout->addWidget(myPreviewCheck , 0, 0 );
-  if ( thePreview ) {
+  CheckGroupLayout->addWidget(myPreviewCheck, 0, 0);
+  
+  myHideBar = new QCheckBox(tr("HIDE_SCALAR_BAR"), CheckGroup);
+  myHideBar->setChecked(false);
+  CheckGroupLayout->addWidget(myHideBar, 0, 1);
+
+// RKV : Begin
+  CBDistr = new QCheckBox (tr("SHOW_DISTRIBUTION"), CheckGroup);
+  CheckGroupLayout->addWidget(CBDistr, 1, 0);
+// RKV : End
+  if (!thePreview) {
+    CBSave = new QCheckBox (tr("SAVE_DEFAULT_CHK"), CheckGroup);
+    CheckGroupLayout->addWidget( CBSave, 1, 1 );
+  }
+  else {
+    CBSave = 0;
     myPreviewCheck->hide();
     CheckGroup->hide();
   }
 
   if(RBvert->isChecked()) {
-    myBarDlg->setRatios(myVerTW, myVerTH, myVerLW, myVerLH, myVerBW, myVerBH);
+    myBarDlg->setRatios(myVerTS, myVerLS, myVerBW, myVerBH);
   } else {
-    myBarDlg->setRatios(myHorTW, myHorTH, myHorLW, myHorLH, myHorBW, myHorBH);
+    myBarDlg->setRatios(myHorTS, myHorLS, myHorBW, myHorBH);
   }
 
-  myBarDlg->setLabelsFormat(aResourceMgr->stringValue("VISU", propertyName + "label_format", "%-#6.3g"));
+  int lp = aResourceMgr->integerValue( "VISU", propertyName + "scalar_bar_label_precision", 3 );
+  myBarDlg->setLabelsPrecision( lp );
+  
   myBarDlg->setUnitsVisible(aResourceMgr->booleanValue("VISU", propertyName + "display_units", true));
 
   // signals and slots connections ===========================================
-  connect( RangeGroup,   SIGNAL( clicked( int ) ), this, SLOT( changeRange( int ) ) );
-  connect( myModeCombo,   SIGNAL( activated( int ) ), this, SLOT( changeScalarMode( int ) ) );
-  connect( OrientGroup,  SIGNAL( clicked( int ) ), this, SLOT( changeDefaults( int ) ) );
-  connect( XSpin,        SIGNAL( valueChanged( double ) ), this, SLOT( XYChanged( double ) ) );
-  connect( YSpin,        SIGNAL( valueChanged( double ) ), this, SLOT( XYChanged( double ) ) );
-  connect( myTextBtn,    SIGNAL( clicked() ), this, SLOT( onTextPref() ) );
-  connect( myBarBtn,     SIGNAL( clicked() ), this, SLOT( onBarPref() ) );
-  connect( myPreviewCheck, SIGNAL( toggled( bool )), this, SLOT( onPreviewCheck( bool ) ) );
-  connect( ColorSpin,    SIGNAL( valueChanged( int ) ), this, SLOT( updatePreview() ));
-  connect( LabelSpin,    SIGNAL( valueChanged( int ) ), this, SLOT( updatePreview() ));
-  connect( WidthSpin,    SIGNAL( valueChanged( double ) ), this, SLOT( updatePreview() ));
-  connect( HeightSpin,   SIGNAL( valueChanged( double ) ), this, SLOT( updatePreview() ));
-  connect( CBLog,        SIGNAL( toggled( bool ) ), this, SLOT( updatePreview() ));
-  connect( myBarDlg,     SIGNAL( updatePreview() ), this, SLOT( updatePreview() ));
+  connect( RBFrange,   SIGNAL( toggled( bool ) ), this, SLOT( onFieldRange( bool ) ) );
+  connect( RBIrange,   SIGNAL( toggled( bool ) ), this, SLOT( onImposedRange( bool ) ) );
+
+  connect( myModeCombo,    SIGNAL( activated( int ) ),       this, SLOT( changeScalarMode( int ) ) );
+  connect( OrientGroup,    SIGNAL( buttonClicked( int ) ),   this, SLOT( changeDefaults( int ) ) );
+  connect( XSpin,          SIGNAL( valueChanged( double ) ), this, SLOT( XYChanged( double ) ) );
+  connect( YSpin,          SIGNAL( valueChanged( double ) ), this, SLOT( XYChanged( double ) ) );
+  connect( myTextBtn,      SIGNAL( clicked() ),              this, SLOT( onTextPref() ) );
+  connect( myBarBtn,       SIGNAL( clicked() ),              this, SLOT( onBarPref() ) );
+  connect( myPreviewCheck, SIGNAL( toggled( bool )),         this, SLOT( onPreviewCheck( bool ) ) );
+  
+  connect( CBDistr,        SIGNAL( toggled( bool ) ),        this, SLOT( onShowDistribution( bool ) )); // RKV
+  
+  connect( ColorSpin,      SIGNAL( valueChanged( int ) ),    this, SLOT( updatePreview() ));
+  connect( LabelSpin,      SIGNAL( valueChanged( int ) ),    this, SLOT( updatePreview() ));
+  connect( WidthSpin,      SIGNAL( valueChanged( double ) ), this, SLOT( updatePreview() ));
+  connect( HeightSpin,     SIGNAL( valueChanged( double ) ), this, SLOT( updatePreview() ));
+  connect( CBLog,          SIGNAL( toggled( bool ) ),        this, SLOT( updatePreview() ));
+  connect( myBarDlg,       SIGNAL( updatePreview() ),        this, SLOT( updatePreview() ));
   changeDefaults( 0 );
   myIsStoreTextProp = false;
   myBusy = false;
@@ -803,13 +802,13 @@ void VisuGUI_ScalarBarPane::storeToResources() {
     if(orient == 0) {
       sbX1=0.01;
       sbY1=0.1;
-      sbW=0.17;
+      sbW=0.1;
       sbH=0.8;
     } else {
-      sbX1=0.2;
+      sbX1=0.1;
       sbY1=0.01;
-      sbW=0.6;
-      sbH=0.12;
+      sbW=0.8;
+      sbH=0.08;
     }
   }
 
@@ -846,6 +845,7 @@ void VisuGUI_ScalarBarPane::storeToResources() {
     aResourceMgr->setValue("VISU", "scalar_range_type", 0);
   
   aResourceMgr->setValue("VISU", "scalar_bar_logarithmic", isLogarithmic());
+  aResourceMgr->setValue("VISU", "scalar_bar_show_distribution", isShowDistribution()); // RKV
  
   ////
 
@@ -864,7 +864,7 @@ void VisuGUI_ScalarBarPane::storeToResources() {
     
     aTitleFont.setBold(isTitleBold);
     aTitleFont.setItalic(isTitleItalic);
-    aTitleFont.setUnderline(isTitleShadow);
+    aTitleFont.setOverline(isTitleShadow);
     
     QString titleFontFamily;
     switch (aTitleFontFamily) {
@@ -899,7 +899,7 @@ void VisuGUI_ScalarBarPane::storeToResources() {
     
     aLabelFont.setBold(isLabelBold);
     aLabelFont.setItalic(isLabelItalic);
-    aLabelFont.setUnderline(isLabelShadow);
+    aLabelFont.setOverline(isLabelShadow);
 
     QString labelFontFamily;
     switch (aLabelFontFamily) {
@@ -930,7 +930,6 @@ VisuGUI_ScalarBarPane::~VisuGUI_ScalarBarPane()
     aViewWindow->Repaint();
 }
 
-
 //----------------------------------------------------------------------------
 /**
  * Initialise dialog box from presentation object
@@ -938,7 +937,7 @@ VisuGUI_ScalarBarPane::~VisuGUI_ScalarBarPane()
 void VisuGUI_ScalarBarPane::initFromPrsObject(VISU::ColoredPrs3d_i* thePrs)
 {
   myScalarMap = dynamic_cast<VISU::ScalarMap_i*>(thePrs);
-  
+
   if( !myScalarMap )
     return;
 
@@ -957,26 +956,26 @@ void VisuGUI_ScalarBarPane::initFromPrsObject(VISU::ColoredPrs3d_i* thePrs)
   int aNbComp = aField->myNbComp;
   bool isScalarMode = (aNbComp > 1);
   myModeCombo->clear();
-  myModeCombo->insertItem("<Modulus>");
+  myModeCombo->addItem("<Modulus>");
   for(int i = 0; i < aNbComp; i++){
-    QString aComponent = QString(aCompNames[i].c_str()).simplifyWhiteSpace();
+    QString aComponent = QString(aCompNames[i].c_str()).simplified();
     if(aComponent.isNull() || aComponent == "")
       aComponent = "Component " + QString::number(i+1);
     else
       aComponent = "[" + QString::number(i+1) + "] " + aComponent;
 
-    QString anUnit = QString(aUnitNames[i].c_str()).simplifyWhiteSpace();
+    QString anUnit = QString(aUnitNames[i].c_str()).simplified();
     if(anUnit.isNull() || anUnit == "")
       anUnit = "-";
     
     aComponent = aComponent + ", " + anUnit;
 
-    myModeCombo->insertItem(aComponent);
+    myModeCombo->addItem(aComponent);
   }
 
-  myModeCombo->setCurrentItem(myScalarMap->GetScalarMode());
-  if(aNbComp == 1)
-    myModeCombo->setCurrentItem(1);
+  myModeCombo->setCurrentIndex(myScalarMap->GetScalarMode());
+  if ( aNbComp == 1 )
+    myModeCombo->setCurrentIndex(1);
 
   myModeLbl->setEnabled(isScalarMode);
   myModeCombo->setEnabled(isScalarMode);
@@ -984,15 +983,13 @@ void VisuGUI_ScalarBarPane::initFromPrsObject(VISU::ColoredPrs3d_i* thePrs)
   setRange( myScalarMap->GetMin(), myScalarMap->GetMax(), myScalarMap->IsRangeFixed() );
 
   setScalarBarData( myScalarMap->GetNbColors(), myScalarMap->GetLabels() );
+  setShowDistribution( myScalarMap->GetIsDistributionVisible() );
 
   // "Title"
   CORBA::String_var aTitle = myScalarMap->GetTitle();
   myTextDlg->setTitleText(aTitle.in());
   myTitle = aTitle.in();
 
-  vtkFloatingPointType R, G, B;
-  myScalarMap->GetTitleColor(&R, &G, &B);
-
   setPosAndSize( myScalarMap->GetPosX(),
                 myScalarMap->GetPosY(),
                 myScalarMap->GetWidth(),
@@ -1000,41 +997,46 @@ void VisuGUI_ScalarBarPane::initFromPrsObject(VISU::ColoredPrs3d_i* thePrs)
                 myScalarMap->GetBarOrientation());
 
   if(RBvert->isChecked()) {
-    myVerTW = myScalarMap->GetTitleWidth();
-    myVerTH = myScalarMap->GetTitleHeight();
-    myVerLW = myScalarMap->GetLabelWidth();
-    myVerLH = myScalarMap->GetLabelHeight();
+    myVerTS = myScalarMap->GetTitleSize();
+    myVerLS = myScalarMap->GetLabelSize();
     myVerBW = myScalarMap->GetBarWidth();
     myVerBH = myScalarMap->GetBarHeight();
-    myBarDlg->setRatios(myVerTW, myVerTH, myVerLW, myVerLH, myVerBW, myVerBH);
+    myBarDlg->setRatios(myVerTS, myVerLS, myVerBW, myVerBH);
   } else {
-    myHorTW = myScalarMap->GetTitleWidth();
-    myHorTH = myScalarMap->GetTitleHeight();
-    myHorLW = myScalarMap->GetLabelWidth();
-    myHorLH = myScalarMap->GetLabelHeight();
+    myHorTS = myScalarMap->GetTitleSize();
+    myHorLS = myScalarMap->GetLabelSize();
     myHorBW = myScalarMap->GetBarWidth();
     myHorBH = myScalarMap->GetBarHeight();
-    myBarDlg->setRatios(myHorTW, myHorTH, myHorLW, myHorLH, myHorBW, myHorBH);
+    myBarDlg->setRatios(myHorTS, myHorLS, myHorBW, myHorBH);
   }
 
-  myBarDlg->setLabelsFormat(myScalarMap->GetLabelsFormat());
+  myBarDlg->setLabelsPrecision( VISU::ToPrecision( myScalarMap->GetLabelsFormat() ) );
   myBarDlg->setUnitsVisible(myScalarMap->IsUnitsVisible());
 
-  myTextDlg->myTitleFont->SetData(QColor((int)(R*255.), (int)(G*255.), (int)(B*255.)),
+  vtkFloatingPointType R, G, B;
+  myScalarMap->GetTitleColor(R, G, B);
+
+  QColor aTextColor = QColor((int)(R*255.), (int)(G*255.), (int)(B*255.));
+
+  myTextDlg->myTitleFont->SetData(aTextColor,
                                   myScalarMap->GetTitFontType(),
                                   myScalarMap->IsBoldTitle(),
                                   myScalarMap->IsItalicTitle(),
                                   myScalarMap->IsShadowTitle());
 
   // "Labels"
-  myScalarMap->GetLabelColor(&R, &G, &B);
+  myScalarMap->GetLabelColor(R, G, B);
 
-  myTextDlg->myLabelFont->SetData(QColor((int)(R*255.), (int)(G*255.), (int)(B*255.)),
+  QColor aLabelColor = QColor((int)(R*255.), (int)(G*255.), (int)(B*255.));
+
+  myTextDlg->myLabelFont->SetData(aLabelColor,
                                   myScalarMap->GetLblFontType(),
                                   myScalarMap->IsBoldLabel(),
                                   myScalarMap->IsItalicLabel(),
                                   myScalarMap->IsShadowLabel());
 
+  myHideBar->setChecked(!myScalarMap->IsBarVisible());
+
   // Draw Preview
   if (myPreviewCheck->isChecked()) {
     createScalarBar();
@@ -1087,28 +1089,31 @@ void VisuGUI_ScalarBarPane::createScalarBar()
   VISU_ScalarBarActor* aScalarBarActor = myPreviewActor->GetScalarBar();
   myPreviewActor->GetScalarBar()->VisibilityOn();
   myPreviewActor->PickableOff();
+  //myPreviewActor->SetBarVisibility(!myHideBar->isChecked());
   
-  myScalarMapPL->SetScalarMode(myModeCombo->currentItem());
+  myScalarMapPL->SetScalarMode(myModeCombo->currentIndex());
   if(isLogarithmic())
     myScalarMapPL->SetScaling(VISU::LOGARITHMIC);
   else
     myScalarMapPL->SetScaling(VISU::LINEAR);
-  vtkFloatingPointType theRange[2];
-  if(RBFrange->isChecked()) {
-    theRange[0] = myScalarMap->GetSourceMin();
-    theRange[1] = myScalarMap->GetSourceMax();
+
+  if ( RBFrange->isChecked() ) {
+    myScalarMapPL->SetSourceRange();
   } else {
-    theRange[0] = (vtkFloatingPointType)MinEdit->text().toDouble();
-    theRange[1] = (vtkFloatingPointType)MaxEdit->text().toDouble();
+    vtkFloatingPointType aRange[2];
+    aRange[0] = (vtkFloatingPointType)MinEdit->text().toDouble();
+    aRange[1] = (vtkFloatingPointType)MaxEdit->text().toDouble();
+    myScalarMapPL->SetScalarRange( aRange );
   }
-  myScalarMapPL->SetScalarRange(theRange);
-  myScalarMapPL->SetNbColors(sbCol);
-  
+
+  myScalarMapPL->SetNbColors(sbCol);  
   myScalarMapPL->Update();
   
   aScalarBarActor->SetLookupTable(myScalarMapPL->GetBarTable());
+  aScalarBarActor->SetDistribution( myScalarMapPL->GetDistribution() );
+  aScalarBarActor->SetDistributionVisibility( isShowDistribution() );
   
-  if (myTextDlg->getTitleText().latin1() != "") {
+  if (!myTextDlg->getTitleText().isEmpty()) {
     VISU::PValForTime aValForTime;
     const VISU::PField& aField = myScalarMap->GetScalarField();
     const VISU::TValField& aValField = aField->myValField;
@@ -1119,18 +1124,18 @@ void VisuGUI_ScalarBarPane::createScalarBar()
     if (aValForTime) {
       std::strstream aStream;
       const VISU::TTime& aTime = aValForTime->myTime;
-      aStream<< myTextDlg->getTitleText() <<" ";
+      aStream<< myTextDlg->getTitleText().toLatin1().data() <<" ";
       if(myBarDlg->isUnitsVisible()) 
        aStream<<VISU_Convertor::GenerateName(aTime)<<std::ends;
       else {
        QString aName;
        aName.sprintf("%g", aTime.first);
-       aStream << aName << std::ends;
+       aStream << aName.toLatin1().data() << std::ends;
       }
       std::string aScalarBarTitle = aStream.str();
       aScalarBarActor->SetTitle(aScalarBarTitle.c_str());
     } else {
-      aScalarBarActor->SetTitle(myTextDlg->getTitleText().latin1());
+      aScalarBarActor->SetTitle(myTextDlg->getTitleText().toLatin1().data());
     }
   }
   else
@@ -1177,11 +1182,12 @@ void VisuGUI_ScalarBarPane::createScalarBar()
   (isLabelItalic)? aLabelProp->ItalicOn() : aLabelProp->ItalicOff();
   (isLabelShadow)? aLabelProp->ShadowOn() : aLabelProp->ShadowOff();
 
-  int VerTW, VerTH, VerLW, VerLH, VerBW, VerBH;
-  myBarDlg->getRatios(VerTW, VerTH, VerLW, VerLH, VerBW, VerBH);
-  aScalarBarActor->SetRatios(VerTW, VerTH, VerLW, VerLH, VerBW, VerBH);
+  int VerTS, VerTH, VerLS, VerBW, VerBH;
+  myBarDlg->getRatios(VerTS, VerLS, VerBW, VerBH);
+  aScalarBarActor->SetRatios(VerTS, VerLS, VerBW, VerBH);
 
-  aScalarBarActor->SetLabelFormat(myBarDlg->getLabelsFormat());
+  std::string f = VISU::ToFormat( myBarDlg->getLabelsPrecision() );
+  aScalarBarActor->SetLabelFormat( f.c_str() );
 
   aScalarBarActor->Modified();
 
@@ -1222,37 +1228,41 @@ int VisuGUI_ScalarBarPane::storeToPrsObject(VISU::ColoredPrs3d_i* thePrs) {
   if( !myScalarMap )
     return 0;
 
-  myScalarMap->SetScalarMode(myModeCombo->currentItem());
+  myScalarMap->SetScalarMode(myModeCombo->currentIndex());
   myScalarMap->SetPosition(XSpin->value(), YSpin->value());
   myScalarMap->SetSize(WidthSpin->value(), HeightSpin->value());
   if(RBvert->isChecked()) {
-    myScalarMap->SetRatios(myVerTW, myVerTH, myVerLW, myVerLH, myVerBW, myVerBH);
+    myScalarMap->SetRatios(myVerTS, myVerLS, myVerBW, myVerBH);
   } else {
-    myScalarMap->SetRatios(myHorTW, myHorTH, myHorLW, myHorLH, myHorBW, myHorBH);
+    myScalarMap->SetRatios(myHorTS, myHorLS, myHorBW, myHorBH);
   }
 
-  myScalarMap->SetLabelsFormat(myBarDlg->getLabelsFormat());
+  std::string f = VISU::ToFormat( myBarDlg->getLabelsPrecision() );
+  myScalarMap->SetLabelsFormat( f.c_str() );
   myScalarMap->SetUnitsVisible(myBarDlg->isUnitsVisible());
 
-  myScalarMap->SetBarOrientation((RBvert->isChecked())? VISU::ColoredPrs3d::VERTICAL : VISU::ColoredPrs3d::HORIZONTAL);
+  myScalarMap->SetBarOrientation((RBvert->isChecked())? VISU::ColoredPrs3dBase::VERTICAL : VISU::ColoredPrs3dBase::HORIZONTAL);
   if(isLogarithmic())
     myScalarMap->SetScaling(VISU::LOGARITHMIC);
   else
     myScalarMap->SetScaling(VISU::LINEAR);
 
-  if (RBFrange->isChecked()) {
+  if ( RBFrange->isChecked() ) {
     myScalarMap->SetSourceRange();
   } else {
-    myScalarMap->SetRange(MinEdit->text().toDouble(), MaxEdit->text().toDouble());
+    myScalarMap->SetRange( MinEdit->text().toDouble(), MaxEdit->text().toDouble() );
   }
   myScalarMap->SetNbColors(ColorSpin->value());
   myScalarMap->SetLabels(LabelSpin->value());
+  myScalarMap->SetIsDistributionVisible(isShowDistribution()); // RKV
+
+  myScalarMap->SetBarVisible(!myHideBar->isChecked());
 
   if (isToSave()) storeToResources();
 
   if (myIsStoreTextProp) {
     // "Title"
-    myScalarMap->SetTitle(myTextDlg->getTitleText().latin1());
+    myScalarMap->SetTitle(myTextDlg->getTitleText().toLatin1().data());
 
     QColor aTitColor (255, 255, 255);
     int aTitleFontFamily = VTK_ARIAL;
@@ -1321,6 +1331,32 @@ void VisuGUI_ScalarBarPane::changeDefaults( int )
 /*!
   Called when Range mode is changed
 */
+void VisuGUI_ScalarBarPane::onFieldRange( bool isOn )
+{
+  if (isOn) {
+    myScalarMap->SetSourceRange();
+    MinEdit->setEnabled( false );
+    MaxEdit->setEnabled( false );
+    changeScalarMode(myModeCombo->currentIndex());
+  }
+}
+
+void VisuGUI_ScalarBarPane::onImposedRange( bool isOn )
+{
+  if (isOn) {
+    myScalarMap->SetRange( myScalarMap->GetSourceMin(), myScalarMap->GetSourceMax() );
+    MinEdit->setEnabled( true );
+    MaxEdit->setEnabled( true );
+    changeScalarMode(myModeCombo->currentIndex());
+  }
+}
+
+void VisuGUI_ScalarBarPane::onShowDistribution( bool isOn )
+{
+  myScalarMap->SetIsDistributionVisible(isOn);
+  updatePreview();
+}
+
 void VisuGUI_ScalarBarPane::changeRange( int )
 {
   if ( RBFrange->isChecked() ) {
@@ -1328,12 +1364,12 @@ void VisuGUI_ScalarBarPane::changeRange( int )
     MinEdit->setEnabled( false );
     MaxEdit->setEnabled( false );
   } else {
-    myScalarMap->SetRange(myScalarMap->GetMin(), myScalarMap->GetMax());
+    myScalarMap->SetRange( myScalarMap->GetSourceMin(), myScalarMap->GetSourceMax() );
     MinEdit->setEnabled( true );
     MaxEdit->setEnabled( true );
   }
 
-  changeScalarMode(myModeCombo->currentItem());
+  changeScalarMode(myModeCombo->currentIndex());
 }
 
 
@@ -1343,12 +1379,12 @@ void VisuGUI_ScalarBarPane::changeRange( int )
 */
 void VisuGUI_ScalarBarPane::XYChanged( double )
 {
-  QtxDblSpinBox* snd = (QtxDblSpinBox*)sender();
+  QtxDoubleSpinBox* snd = (QtxDoubleSpinBox*)sender();
   if ( snd == XSpin ) {
-    WidthSpin->setMaxValue( 1.0 - XSpin->value() );
+    WidthSpin->setMaximum( 1.0 - XSpin->value() );
   }
   if ( snd == YSpin ) {
-    HeightSpin->setMaxValue( 1.0 - YSpin->value() );
+    HeightSpin->setMaximum( 1.0 - YSpin->value() );
   }
   updatePreview();
 }
@@ -1360,13 +1396,13 @@ void VisuGUI_ScalarBarPane::XYChanged( double )
 */
 void VisuGUI_ScalarBarPane::changeScalarMode( int theMode )
 {
+  myScalarMap->SetScalarMode(theMode);
+
   if ( RBFrange->isChecked() ) {
-    MinEdit->setText( QString::number( myScalarMap->GetComponentMin(theMode) ) );
-    MaxEdit->setText( QString::number( myScalarMap->GetComponentMax(theMode) ) );
+    MinEdit->setText( QString::number( myScalarMap->GetSourceMin() ) );
+    MaxEdit->setText( QString::number( myScalarMap->GetSourceMax() ) );
   }
 
-  myScalarMap->SetScalarMode(theMode);
-
   updatePreview();
 }
 
@@ -1379,7 +1415,6 @@ void VisuGUI_ScalarBarPane::setRange( double imin, double imax, bool sbRange )
 {
   MinEdit->setText( QString::number( imin ) );
   MaxEdit->setText( QString::number( imax ) );
-
   if( sbRange )
     RBIrange->setChecked( true );
   else
@@ -1457,6 +1492,22 @@ void VisuGUI_ScalarBarPane::setLogarithmic( bool on ) {
   CBLog->setChecked( on );
 }
 
+//----------------------------------------------------------------------------
+bool VisuGUI_ScalarBarPane::isShowDistribution() {
+  return CBDistr->isChecked();
+}
+
+
+//----------------------------------------------------------------------------
+void VisuGUI_ScalarBarPane::setShowDistribution( bool on ) {
+  CBDistr->setChecked( on );
+}
+
+// RKV : End
+//----------------------------------------------------------------------------
+bool VisuGUI_ScalarBarPane::isToSave() {
+  return CBSave ? CBSave->isChecked() : false;
+}
 
 //----------------------------------------------------------------------------
 /*!
@@ -1516,7 +1567,7 @@ bool VisuGUI_ScalarBarPane::check()
   double maxVal = MaxEdit->text().toDouble();
   if ( RBIrange->isChecked() ) {
     if (minVal >= maxVal) {
-      SUIT_MessageBox::warn1( this,tr("WRN_VISU"),
+      SUIT_MessageBox::warning( this,tr("WRN_VISU"),
                             tr("MSG_MINMAX_VALUES"),
                             tr("BUT_OK"));
       return false;
@@ -1527,15 +1578,21 @@ bool VisuGUI_ScalarBarPane::check()
   if ( CBLog->isChecked() ) {
     if ( minVal <= 0.0 || maxVal <= 0.0 ) {
       if ( RBIrange->isChecked() ) {
-       SUIT_MessageBox::warn1( this,
-                               tr("WRN_VISU"),
-                               tr("WRN_LOGARITHMIC_RANGE"),
-                               tr("BUT_OK"));
+       SUIT_MessageBox::warning( this,
+                                  tr("WRN_VISU"),
+                                  tr("WRN_LOGARITHMIC_RANGE"),
+                                  tr("BUT_OK"));
       } else {
-       SUIT_MessageBox::warn1( this,
-                               tr("WRN_VISU"),
-                               tr("WRN_LOGARITHMIC_FIELD_RANGE"),
-                               tr("BUT_OK"));
+       if ( minVal == 0 || maxVal == 0 )
+         SUIT_MessageBox::warning( this,
+                                 tr("WRN_VISU"),
+                                 tr("WRN_LOGARITHMIC_RANGE"),
+                                 tr("BUT_OK"));
+       else
+         SUIT_MessageBox::warning( this,
+                                   tr("WRN_VISU"),
+                                   tr("WRN_LOGARITHMIC_FIELD_RANGE"),
+                                   tr("BUT_OK"));
        RBIrange->setChecked(true);
        changeRange(1);
       }
@@ -1559,14 +1616,15 @@ void VisuGUI_ScalarBarPane::onTextPref()
 void VisuGUI_ScalarBarPane::onBarPref()
 {
   if(RBvert->isChecked())
-    myBarDlg->setRatios(myVerTW, myVerTH, myVerLW, myVerLH, myVerBW, myVerBH);
+    myBarDlg->setRatios(myVerTS, myVerLS, myVerBW, myVerBH);
   else
-    myBarDlg->setRatios(myHorTW, myHorTH, myHorLW, myHorLH, myHorBW, myHorBH);
+    myBarDlg->setRatios(myHorTS, myHorLS, myHorBW, myHorBH);
+  myBarDlg->setOrientation( getOrientation() );
   if(myBarDlg->exec()) {
     if(RBvert->isChecked())
-      myBarDlg->getRatios(myVerTW, myVerTH, myVerLW, myVerLH, myVerBW, myVerBH);
+      myBarDlg->getRatios(myVerTS, myVerLS, myVerBW, myVerBH);
     else
-      myBarDlg->getRatios(myHorTW, myHorTH, myHorLW, myHorLH, myHorBW, myHorBH);
+      myBarDlg->getRatios(myHorTS, myHorLS, myHorBW, myHorBH);
     updatePreview();
   }
 }
@@ -1585,13 +1643,10 @@ void VisuGUI_ScalarBarPane::onPreviewCheck (bool thePreview)
   }
 }
 
-
-//----------------------------------------------------------------------------
-VisuGUI_Prs3dDlg::VisuGUI_Prs3dDlg( SalomeApp_Module* theModule ) :
-  QDialog( VISU::GetDesktop( theModule ), 0, false,
-          WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu )
-{}
-
+VisuGUI_Prs3dDlg::VisuGUI_Prs3dDlg( SalomeApp_Module* theModule )
+  : QDialog( VISU::GetDesktop( theModule ), Qt::WindowTitleHint | Qt::WindowSystemMenuHint )
+{
+}
 
 //----------------------------------------------------------------------------
 /*!
@@ -1606,10 +1661,11 @@ void VisuGUI_Prs3dDlg::onHelp()
     app->onHelpContextModule(aVisuGUI ? app->moduleName(aVisuGUI->moduleName()) : QString(""), aHelpFileName);
   }
   else {
-    SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"),
-                          QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
-                          arg(app->resourceMgr()->stringValue("ExternalBrowser", "application")).arg(aHelpFileName),
-                          QObject::tr("BUT_OK"));
+    SUIT_MessageBox::warning( this, tr( "WRN_WARNING" ),
+                             tr( "EXTERNAL_BROWSER_CANNOT_SHOW_PAGE" ).
+                             arg( app->resourceMgr()->stringValue( "ExternalBrowser", 
+                                                                  "application" ) ).
+                             arg( aHelpFileName ) );
   }
 }
 
@@ -1621,19 +1677,18 @@ void VisuGUI_Prs3dDlg::keyPressEvent( QKeyEvent* e )
   if ( e->isAccepted() )
     return;
   
-  if ( e->key() == Key_F1 ) {
+  if ( e->key() == Qt::Key_F1 ) {
     e->accept();
     onHelp();
   }
 }
 
-
 //----------------------------------------------------------------------------
 VisuGUI_ScalarBarBaseDlg::VisuGUI_ScalarBarBaseDlg( SalomeApp_Module* theModule, bool thePreview ) :
   VisuGUI_Prs3dDlg( theModule )
 {
   myScalarPane = new VisuGUI_ScalarBarPane(this, thePreview);
-  myScalarPane->setMargin( 5 );
+  myScalarPane->layout()->setMargin( 5 );
 }
 
 
@@ -1642,7 +1697,6 @@ VisuGUI_ScalarBarBaseDlg::~VisuGUI_ScalarBarBaseDlg()
 }
 
 
-
 //----------------------------------------------------------------------------
 void VisuGUI_ScalarBarBaseDlg::initFromPrsObject( VISU::ColoredPrs3d_i* thePrs,
                                                  bool theInit )
index f6a17167904ffb33150ce468f2cec059ff2f89ea..734203e6718078dce855526a05606d9ad6646934 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_Prs3dDlg.h
 //  Author : Laurent CORNABE & Hubert ROLLAND
 //  Module : VISU
-
+//
 #ifndef VISUGUI_PRS3DDLG_H
 #define VISUGUI_PRS3DDLG_H
 
-#include <qdialog.h>
-#include <qcheckbox.h>
-#include <qvbox.h>
+#include <QDialog>
 
 #include "SALOME_GenericObjPointer.hh"
 #include "VISU_ColoredPrs3d_i.hh"
@@ -47,7 +44,7 @@ class QComboBox;
 class QToolButton;
 class QTabWidget;
 
-class QtxDblSpinBox;
+class QtxDoubleSpinBox;
 
 class SalomeApp_Module;
 class SVTK_FontWidget;
@@ -71,9 +68,9 @@ class VisuGUI_TextPrefDlg: public QDialog
   ~VisuGUI_TextPrefDlg() {};
 
   QString getTitleText();
-  void setTitleText(QString theText);
+  void setTitleText( const QString& theText);
 
-  void setTitleVisible(bool isVisible);
+  void setTitleVisible( bool isVisible );
 
   void storeBeginValues();
 
@@ -107,18 +104,20 @@ class VisuGUI_BarPrefDlg: public QDialog
   VisuGUI_BarPrefDlg (QWidget* parent);
   ~VisuGUI_BarPrefDlg() {};
 
-  void setRatios(int titleRatioWidth, int titleRatioHeight,
-                int labelRatioWidth, int labelRatioHeight,
+  void setRatios(int titleRatioSize, int labelRatioWidth,
                 int barRatioWidth, int barRatioHeight);
-  void getRatios(int& titleRatioWidth, int& titleRatioHeight,
-                int& labelRatioWidth, int& labelRatioHeight,
+  void getRatios(int& titleRatioSize, int& labelRatioWidth,
                 int& barRatioWidth, int& barRatioHeight);
 
   void setUnitsVisible(bool isVisible);
   bool isUnitsVisible();
 
-  void setLabelsFormat(QString format);
-  QString getLabelsFormat();
+  void setLabelsPrecision( const int p );
+  int getLabelsPrecision() const;
+
+  void setOrientation( const int ori );
+  int getOrientation() const;
+
 
  private:
   void keyPressEvent( QKeyEvent* e );
@@ -132,28 +131,25 @@ class VisuGUI_BarPrefDlg: public QDialog
   void onHelp();
 
  protected:
-  QSpinBox*  TitleWidthSpin;
-  QSpinBox*  TitleHeightSpin;
-  QSpinBox*  LabelWidthSpin;
-  QSpinBox*  LabelHeightSpin;
-  QSpinBox*  BarWidthSpin;
-  QSpinBox*  BarHeightSpin;
-  QCheckBox* CBUnits;  
-  QLineEdit* UnitsEdit;
-
-  int        myTitleWidth;
-  int        myTitleHeight;
-  int        myLabelWidth;
-  int        myLabelHeight;
+  QSpinBox*  myTitleSizeSpin;
+  QSpinBox*  myLabelSizeSpin;
+  QSpinBox*  myBarWidthSpin;
+  QSpinBox*  myBarHeightSpin;
+  QCheckBox* myUnitsChk;  
+  QSpinBox*  myPrecisionSpin;
+
+  int        myTitleSize;
+  int        myLabelSize;
   int        myBarWidth;
   int        myBarHeight;
   bool       myUnits;
-  QString    myUnitsFormat;
+  int        myPrecision;
+  int        myOrientation;
 };
 
 
 //----------------------------------------------------------------------------
-class VisuGUI_ScalarBarPane : public QVBox
+class VisuGUI_ScalarBarPane : public QWidget//QVBox
 {
   Q_OBJECT;
 
@@ -177,7 +173,9 @@ class VisuGUI_ScalarBarPane : public QVBox
   int     getNbLabels();
   bool    isLogarithmic();
   void    setLogarithmic( bool on );
-  bool    isToSave() {return CBSave ? CBSave->isChecked() : false;}
+  bool    isShowDistribution();
+  void    setShowDistribution( bool on );
+  bool    isToSave();
 
   void storeToResources();
   void initFromPrsObject(VISU::ColoredPrs3d_i* thePrs);
@@ -196,17 +194,20 @@ class VisuGUI_ScalarBarPane : public QVBox
   QRadioButton*   RBhori;
   QRadioButton*   RBvert;
 
-  QtxDblSpinBox*  XSpin;
-  QtxDblSpinBox*  YSpin;
+  QtxDoubleSpinBox*  XSpin;
+  QtxDoubleSpinBox*  YSpin;
 
-  QtxDblSpinBox*  WidthSpin;
-  QtxDblSpinBox*  HeightSpin;
+  QtxDoubleSpinBox*  WidthSpin;
+  QtxDoubleSpinBox*  HeightSpin;
 
   QSpinBox*       ColorSpin;
   QSpinBox*       LabelSpin;
 
   QCheckBox*      CBSave;
   QCheckBox*      CBLog;
+  QCheckBox*      CBDistr;
+  QCheckBox*      myHideBar;
+
   QLabel*         myModeLbl;
   QComboBox*      myModeCombo;
   QPushButton*    myTextBtn;
@@ -216,19 +217,22 @@ class VisuGUI_ScalarBarPane : public QVBox
 
   double          myHorX, myHorY, myHorW, myHorH;
   double          myVerX, myVerY, myVerW, myVerH;
-  int             myHorTW, myHorTH, myHorLW, myHorLH, myHorBW, myHorBH;
-  int             myVerTW, myVerTH, myVerLW, myVerLH, myVerBW, myVerBH;
+  int             myHorTS, myHorLS, myHorBW, myHorBH;
+  int             myVerTS, myVerTH, myVerLS, myVerBW, myVerBH;
   bool            myIsStoreTextProp;
 
  private slots:
   void changeDefaults( int );
-  void changeRange( int );
+ void changeRange( int );
+ void onFieldRange( bool );
+ void onImposedRange( bool );
   void XYChanged( double );
   void changeScalarMode( int );
   void onTextPref();
   void onBarPref();
   void onPreviewCheck(bool thePreview);
-  void updatePreview();
+  void updatePreview();  
+  void onShowDistribution(bool);
 
  private:
   void createScalarBar();
index ba3347a037229a0ee404f44fa0165135e4c327e8..76b11fce1fedf35420034db983cdae7b89a56bfc 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_Module.h
 //  Author : 
 //  Module : VISU
-
+//
 #ifndef VisuGUI_Prs3dTools_HeaderFile
 #define VisuGUI_Prs3dTools_HeaderFile
 
@@ -35,6 +34,9 @@
 #include "VISU_PipeLine.hxx"
 #include "VisuGUI_DialogRunner.h"
 
+#include <SUIT_Desktop.h>
+#include <SUIT_ResourceMgr.h>
+
 #include <SPlot2d_ViewWindow.h>
 
 #include <vtkRenderer.h>
@@ -68,17 +70,16 @@ namespace VISU
          aPrs3d->RemoveActors();
 
          INFOS(exc.what());
-         SUIT_MessageBox::warn1
+         SUIT_MessageBox::warning
            (GetDesktop(theModule), QObject::tr("WRN_VISU"),
-            QObject::tr("ERR_CANT_BUILD_PRESENTATION") + ": " + QObject::tr(exc.what()),
-            QObject::tr("BUT_OK"));
+            QObject::tr("ERR_CANT_BUILD_PRESENTATION") + ": " + QObject::tr(exc.what()) );
        }
        if (theViewWindow) {
          theViewWindow->getRenderer()->ResetCameraClippingRange();
          theViewWindow->Repaint();
        }
        // Optionally, create table and curves for cut lines
-       QApplication::setOverrideCursor(Qt::waitCursor);
+       QApplication::setOverrideCursor(Qt::WaitCursor);
        CreateCurves( theModule,
                      dynamic_cast<VISU::CutLines_i*>( aPrs3d ),
                      aDlg,
@@ -121,7 +122,7 @@ namespace VISU
   {
     VISU::Result_var aResult;
     if (CheckResult(theModule, theTimeStamp, aResult)){
-      QApplication::setOverrideCursor(Qt::waitCursor);
+      QApplication::setOverrideCursor(Qt::WaitCursor);
       TPrs3d_i* aPrs3d = NULL;
       if(thePublishInStudyMode == VISU::ColoredPrs3d_i::EPublishUnderTimeStamp)
        aPrs3d = VISU::CreatePrs3d<TPrs3d_i>(aResult,
@@ -145,13 +146,12 @@ namespace VISU
        if( anEnlargeType == VISU::ColoredPrs3dCache::IMPOSSIBLE )
        {
          size_t aMb = 1024 * 1024;
-         double aFreeMemory = double(VISU_PipeLine::GetAvailableMemory(2048*aMb)) / double(aMb);
+         double aFreeMemory = double(VISU_PipeLine::GetAvailableMemory(8192*aMb)) / double(aMb);
 
          CORBA::Float aNecessaryMemory = aRequiredMemory - aFreeMemory - anUsedMemory;
-         SUIT_MessageBox::warn1(GetDesktop(theModule),
-                                QObject::tr("WRN_VISU"),
-                                QObject::tr("ERR_NO_MEMORY_TO_BUILD").arg(aNecessaryMemory),
-                                QObject::tr("&OK") );
+         SUIT_MessageBox::warning(GetDesktop(theModule),
+                                  QObject::tr("WRN_VISU"),
+                                  QObject::tr("ERR_NO_MEMORY_TO_BUILD").arg(aNecessaryMemory) );
          QApplication::restoreOverrideCursor();
          return NULL;
        }
@@ -159,11 +159,11 @@ namespace VISU
        {
          if( anEnlargeType == VISU::ColoredPrs3dCache::ENLARGE )
          {
-           if(SUIT_MessageBox::info2(GetDesktop(theModule),
+           if(SUIT_MessageBox::information(GetDesktop(theModule),
                                      QObject::tr("WRN_VISU"),
                                      QObject::tr("WRN_EXTRA_MEMORY_REQUIRED").arg(aRequiredMemory),
                                      QObject::tr("&OK"), QObject::tr("&Cancel"),
-                                     0, 1, 0) == 1)
+                                     0, 1) == 1)
            {
              QApplication::restoreOverrideCursor();
              return NULL;
@@ -183,10 +183,10 @@ namespace VISU
       if(aPrs3d)
        return aPrs3d;
     }
-    SUIT_MessageBox::warn1(GetDesktop(theModule),
-                          QObject::tr("WRN_VISU"),
-                          QObject::tr("ERR_CANT_BUILD_PRESENTATION"),
-                          QObject::tr("BUT_OK") );
+    SUIT_MessageBox::warning(GetDesktop(theModule),
+                            QObject::tr("WRN_VISU"),
+                            QObject::tr("ERR_CANT_BUILD_PRESENTATION") );
+
     return NULL;
   }
 
@@ -216,14 +216,14 @@ namespace VISU
     int aPos = GetFreePositionOfDefaultScalarBar(theModule, aViewWindow);
     GetResourceMgr()->setValue("VISU", "scalar_bar_position_num", aPos);
 
-    QApplication::setOverrideCursor(Qt::waitCursor);
+    QApplication::setOverrideCursor(Qt::WaitCursor);
 
     TPrs3d_i* aPrs3d =
       CreatePrs3dFromFactory<TPrs3d_i>(theModule,
                                       theTimeStamp,
-                                      aMeshName.latin1(),
+                                      (const char*)aMeshName.toLatin1(),
                                       (Entity)anEntity.toInt(),
-                                      aFieldName.latin1(),
+                                      (const char*)aFieldName.toLatin1(),
                                       aTimeStampId.toInt(),
                                       thePublishInStudyMode);
     
@@ -243,7 +243,7 @@ namespace VISU
              if(SPlot2d_Viewer* aPlot2d = GetPlot2dViewer(theModule, false)) aPlot2d->EraseAll();
            } 
            // Optionally, create table and curves for cut lines
-           QApplication::setOverrideCursor(Qt::waitCursor);
+           QApplication::setOverrideCursor(Qt::WaitCursor);
            CreateCurves( theModule,
                          dynamic_cast<VISU::CutLines_i*>( aPrs3d ),
                          aDlg,
@@ -259,11 +259,13 @@ namespace VISU
          }
        }
       }
-      aViewWindow = GetViewWindow<TViewer>(theModule);
+      // aViewWindow = GetViewWindow<TViewer>(theModule); IPAL 20125 dmv
       // Display created presentation.
       if (aViewWindow) {
        PublishInView(theModule, aPrs3d, aViewWindow);
-       aViewWindow->onFitAll();
+        if(GetResourceMgr()->booleanValue("VISU","automatic_fit_all",false)){
+         aViewWindow->onFitAll();
+       }
 
        AddScalarBarPosition(theModule, aViewWindow, aPrs3d, aPos);
       }
@@ -277,61 +279,68 @@ namespace VISU
 
   //---------------------------------------------------------------
   template<class TPrs3d_i, class TViewer, class TDlg, int IsDlgModal>
-  void
+  TPrs3d_i*
   CreatePrs3dInViewer(VisuGUI* theModule,
                      _PTR(SObject) theTimeStampSObj,
                      ColoredPrs3d_i::EPublishInStudyMode thePublishInStudyMode)
   {
+    TPrs3d_i* aPrs = 0;
     // Create new TViewWindow instance, if it does not exist.
     typedef typename TViewer::TViewWindow TViewWindow;
     if (!GetViewWindow<TViewer>(theModule))
-      return;
+      return aPrs;
 
-    CreateAndEditPrs3d<TPrs3d_i,TViewer,TDlg,IsDlgModal>
-      (theModule,theTimeStampSObj,thePublishInStudyMode);
+    aPrs = CreateAndEditPrs3d<TPrs3d_i,TViewer,TDlg,IsDlgModal>
+              (theModule,theTimeStampSObj,thePublishInStudyMode);
 
     theModule->application()->putInfo(QObject::tr("INF_DONE"));
+    return aPrs;
   }
 
 
   //----------------------------------------------------------------------------
   template<class TPrs3d_i, class TDlg, int IsDlgModal>
-  void
+  TPrs3d_i*
   CreatePrs3d(VisuGUI* theModule,
              const QString& theDesiredViewerType = QString())
   {
+    TPrs3d_i* aPrs = 0;
     if (CheckLock(GetCStudy(GetAppStudy(theModule)),GetDesktop(theModule)))
-      return;
+      return aPrs;
 
     _PTR(SObject) aTimeStampSObj;
     Handle(SALOME_InteractiveObject) anIO;
     ColoredPrs3d_i::EPublishInStudyMode aPublishInStudyMode;
     if (!CheckTimeStamp(theModule,aTimeStampSObj,anIO,aPublishInStudyMode))
-      return;
-
-    if(aPublishInStudyMode == VISU::ColoredPrs3d_i::EPublishIndependently){
-      CreatePrs3dInViewer<TPrs3d_i,VVTK_Viewer,TDlg,0>
-       (theModule,aTimeStampSObj,aPublishInStudyMode);
-      return;
+      return aPrs;
+
+    if(/*aPublishInStudyMode == */VISU::ColoredPrs3d_i::EPublishIndependently){
+      //      CreatePrs3dInViewer<TPrs3d_i,VVTK_Viewer,TDlg,0>
+      //       (theModule,aTimeStampSObj,aPublishInStudyMode);
+      aPrs = CreatePrs3dInViewer<TPrs3d_i,SVTK_Viewer,TDlg,0>
+               (theModule,aTimeStampSObj,aPublishInStudyMode);
+      return aPrs;
     }else{
       if(theDesiredViewerType.isNull()){
-       if (SUIT_ViewManager* aViewManager = theModule->getApp()->activeViewManager())
-         if (aViewManager->getType() == VVTK_Viewer::Type()){ 
-           CreatePrs3dInViewer<TPrs3d_i,VVTK_Viewer,TDlg,IsDlgModal>
-             (theModule,aTimeStampSObj,aPublishInStudyMode);
-           return;
-         }
-       CreatePrs3dInViewer<TPrs3d_i,SVTK_Viewer,TDlg,IsDlgModal>
-         (theModule,aTimeStampSObj,aPublishInStudyMode);
+       if (/*SUIT_ViewManager* aViewManager = */theModule->getApp()->activeViewManager())
+         /*if (aViewManager->getType() == VVTK_Viewer::Type()){ 
+           aPrs = CreatePrs3dInViewer<TPrs3d_i,VVTK_Viewer,TDlg,IsDlgModal>
+                     (theModule,aTimeStampSObj,aPublishInStudyMode);
+           return aPrs;
+           }*/
+       aPrs = CreatePrs3dInViewer<TPrs3d_i,SVTK_Viewer,TDlg,IsDlgModal>
+                  (theModule,aTimeStampSObj,aPublishInStudyMode);
       }else{
-       if(theDesiredViewerType == VVTK_Viewer::Type())
-         CreatePrs3dInViewer<TPrs3d_i,VVTK_Viewer,TDlg,IsDlgModal>
-           (theModule,aTimeStampSObj,aPublishInStudyMode);
-       else
-         CreatePrs3dInViewer<TPrs3d_i,SVTK_Viewer,TDlg,IsDlgModal>
-           (theModule,aTimeStampSObj,aPublishInStudyMode);
+       /*if(theDesiredViewerType == VVTK_Viewer::Type()) {
+         aPrs = CreatePrs3dInViewer<TPrs3d_i,VVTK_Viewer,TDlg,IsDlgModal>
+                    (theModule,aTimeStampSObj,aPublishInStudyMode);
+                    } else {*/
+         aPrs = CreatePrs3dInViewer<TPrs3d_i,SVTK_Viewer,TDlg,IsDlgModal>
+                    (theModule,aTimeStampSObj,aPublishInStudyMode);
+         //}
       }
     }
+    return aPrs;
   }
 
 
index 32a57488f76ea2f94fef2dc7c423e0a50fa232e3..405584641da2a1e64ad086e359e3a8a33cd3b18f 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_ScalarBarDlg.cxx
 //  Author : Laurent CORNABE & Hubert ROLLAND
 //  Module : VISU
 //  $Header$
-
+//
 #include "VisuGUI_ScalarBarDlg.h"
 
 #include "VisuGUI.h"
 #include "SUIT_ResourceMgr.h"
 
 #include <limits.h>
-#include <qlayout.h>
-#include <qvalidator.h>
-#include <qcolordialog.h>
-#include <qtabwidget.h>
+
+#include <QLayout>
+#include <QValidator>
+#include <QColorDialog>
+#include <QTabWidget>
+#include <QPushButton>
+#include <QGridLayout>
+#include <QKeyEvent>
+
 #include <vtkTextProperty.h>
 
 using namespace std;
@@ -67,8 +71,7 @@ using namespace std;
 VisuGUI_ScalarBarDlg::VisuGUI_ScalarBarDlg (SalomeApp_Module* theModule)
   : VisuGUI_ScalarBarBaseDlg(theModule)
 {
-  setName("VisuGUI_ScalarBarDlg");
-  setCaption(tr("DLG_PROP_TITLE"));
+  setWindowTitle(tr("DLG_PROP_TITLE"));
   setSizeGripEnabled(TRUE);
 
   QVBoxLayout* TopLayout = new QVBoxLayout(this);
@@ -83,26 +86,26 @@ VisuGUI_ScalarBarDlg::VisuGUI_ScalarBarDlg (SalomeApp_Module* theModule)
   TopLayout->addWidget(myTabBox);
 
   // Common buttons ===========================================================
-  QGroupBox* GroupButtons = new QGroupBox( this, "GroupButtons" );
-  GroupButtons->setColumnLayout(0, Qt::Vertical );
-  GroupButtons->layout()->setSpacing( 0 );
-  GroupButtons->layout()->setMargin( 0 );
-  QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons->layout() );
+  QGroupBox* GroupButtons = new QGroupBox( this );
+  //GroupButtons->setColumnLayout(0, Qt::Vertical );
+  //GroupButtons->layout()->setSpacing( 0 );
+  //GroupButtons->layout()->setMargin( 0 );
+  QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons );
   GroupButtonsLayout->setAlignment( Qt::AlignTop );
   GroupButtonsLayout->setSpacing( 6 );
   GroupButtonsLayout->setMargin( 11 );
 
-  QPushButton* buttonOk = new QPushButton( tr( "&OK" ), GroupButtons, "buttonOk" );
+  QPushButton* buttonOk = new QPushButton( tr("BUT_OK"), GroupButtons );
   buttonOk->setAutoDefault( TRUE );
   buttonOk->setDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonOk, 0, 0 );
   GroupButtonsLayout->addItem( new QSpacerItem( 5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 1 );
 
-  QPushButton* buttonCancel = new QPushButton( tr( "&Cancel" ) , GroupButtons, "buttonCancel" );
+  QPushButton* buttonCancel = new QPushButton( tr("BUT_CANCEL") , GroupButtons );
   buttonCancel->setAutoDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonCancel, 0, 2 );
 
-  QPushButton* buttonHelp = new QPushButton( tr( "&Help" ) , GroupButtons, "buttonHelp" );
+  QPushButton* buttonHelp = new QPushButton( tr("BUT_HELP") , GroupButtons );
   buttonHelp->setAutoDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonHelp, 0, 3 );
 
@@ -138,8 +141,8 @@ void VisuGUI_ScalarBarDlg::initFromPrsObject( VISU::ColoredPrs3d_i* thePrs,
   if( !theInit )
     return;
 
-  myInputPane->initFromPrsObject(myPrsCopy);
-  myTabBox->setCurrentPage( 0 );
+  myInputPane->initFromPrsObject( myPrsCopy );
+  myTabBox->setCurrentIndex( 0 );
 }
 
 /*!
@@ -149,7 +152,7 @@ int VisuGUI_ScalarBarDlg::storeToPrsObject(VISU::ColoredPrs3d_i* thePrs)
 {
   if (!myInputPane->check() || !GetScalarPane()->check())
     return 0;
-
+  
   int anIsOk = myInputPane->storeToPrsObject( myPrsCopy );
   anIsOk &= GetScalarPane()->storeToPrsObject( myPrsCopy );
 
index 378e297090ba09b0eb8bc93b4abc0476f9799035..b5446e865c24bf80f7d9bc61bc7fefb248c46e7a 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_ScalarBarDlg.h
 //  Author : Laurent CORNABE & Hubert ROLLAND
 //  Module : VISU
 //  $Header$
-
+//
 #ifndef VISUGUI_SCALARBARDLG_H
 #define VISUGUI_SCALARBARDLG_H
 
 #include "VisuGUI_Prs3dDlg.h"
 
-#include <qbuttongroup.h>
-#include <qgroupbox.h>
-#include <qlabel.h>
-#include <qradiobutton.h>
-#include <qcheckbox.h>
-#include <qpushbutton.h>
-#include <qspinbox.h>
-#include <qlineedit.h>
-#include <qcombobox.h>
-#include <qvbox.h>
+class QTabWidget;
 
-#include "QtxDblSpinBox.h"
-#include "QtxListBox.h"
 
 class VisuGUI_InputPane;
 
diff --git a/src/VISUGUI/VisuGUI_ScalarMapOnDeformedShapeDlg.cxx b/src/VISUGUI/VisuGUI_ScalarMapOnDeformedShapeDlg.cxx
deleted file mode 100644 (file)
index 98dcd68..0000000
+++ /dev/null
@@ -1,458 +0,0 @@
-//  VISU VISUGUI : GUI of VISU component
-//
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-//  This library is free software; you can redistribute it and/or
-//  modify it under the terms of the GNU Lesser General Public
-//  License as published by the Free Software Foundation; either
-//  version 2.1 of the License.
-//
-//  This library is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-//  Lesser General Public License for more details.
-//
-//  You should have received a copy of the GNU Lesser General Public
-//  License along with this library; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
-//
-//  File   : VisuGUI_ScalarMapOnDeformedShapeDlg.cxx
-//  Author : Eugeny Nikolaev
-//  Module : VISU
-
-#include "VisuGUI_ScalarMapOnDeformedShapeDlg.h"
-
-#include "VisuGUI_Tools.h"
-#include "VisuGUI_InputPane.h"
-
-#include "VISU_Result_i.hh"
-#include "VISU_ScalarMapOnDeformedShape_i.hh"
-#include "VISU_ColoredPrs3dFactory.hh"
-
-#include "VISU_ScalarMapPL.hxx"
-#include "VISU_ScalarMapOnDeformedShapePL.hxx"
-
-#include "VISU_Convertor.hxx"
-
-#include "SalomeApp_Module.h"
-#include "LightApp_Application.h"
-#include "LightApp_SelectionMgr.h"
-#include "SUIT_Desktop.h"
-#include "SUIT_ResourceMgr.h"
-#include "SUIT_Session.h"
-#include "SUIT_MessageBox.h"
-
-#include "SALOME_ListIO.hxx"
-
-#include "SALOMEDSClient_AttributeString.hxx"
-#include "SALOMEDSClient_AttributeName.hxx"
-
-#include <qlayout.h>
-#include <qtabwidget.h>
-
-using namespace std;
-
-#define MYDEBUG 0
-
-/*!
- * Constructor
- */
-VisuGUI_ScalarMapOnDeformedShapeDlg::VisuGUI_ScalarMapOnDeformedShapeDlg (SalomeApp_Module* theModule)
-  : VisuGUI_ScalarBarBaseDlg(theModule),
-    myIsAnimation(false),
-    myUpdateScalars(true),
-    myVisuGUI(theModule)
-{
-  setCaption(tr("DLG_TITLE"));
-  setSizeGripEnabled(TRUE);
-
-  QVBoxLayout* TopLayout = new QVBoxLayout (this);
-  TopLayout->setSpacing(6);
-  TopLayout->setMargin(11);
-
-  myTabBox = new QTabWidget (this);
-
-  // Scalar Map on Deformed shape pane
-  QVBox* aBox = new QVBox (this);
-  aBox->setMargin(11);
-  QFrame* TopGroup = new QFrame (aBox, "TopGroup");
-  TopGroup->setFrameStyle(QFrame::Box | QFrame::Sunken);
-  TopGroup->setLineWidth(1);
-  QGridLayout* TopGroupLayout = new QGridLayout (TopGroup);
-  TopGroupLayout->setAlignment(Qt::AlignTop | Qt::AlignCenter);
-  TopGroupLayout->setSpacing(6);
-  TopGroupLayout->setMargin(11);
-
-  //   Scale factor
-  QLabel* ScaleLabel = new QLabel (tr("SCALE_FACTOR"), TopGroup, "ScaleLabel");
-  TopGroupLayout->addWidget(ScaleLabel, 0, 0);
-
-  ScalFact = new QtxDblSpinBox (0.0, 1.0E+38, 0.1, TopGroup);
-  ScalFact->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed));
-  ScalFact->setPrecision(38);
-  ScalFact->setValue(0.1);
-  TopGroupLayout->addWidget(ScalFact, 0, 1);
-
-  // Fields combo box
-  QLabel* FieldLabel = new QLabel (tr("FIELD_ITEM"), TopGroup, "FieldLabel");
-  myFieldsCombo = new QComboBox (TopGroup,"Fields");
-
-  TopGroupLayout->addWidget(FieldLabel, 1, 0);
-  TopGroupLayout->addWidget(myFieldsCombo,1,1);
-
-  // TimeStamps combo box
-  QLabel* TimeStampLabel = new QLabel (tr("TIMESTAMP_ITEM"), TopGroup, "TimeStampLabel");
-  myTimeStampsCombo = new QComboBox (TopGroup,"TimeStamp");
-
-  TopGroupLayout->addWidget(TimeStampLabel, 2, 0);
-  TopGroupLayout->addWidget(myTimeStampsCombo,2,1);
-
-  //
-  myTabBox->addTab(aBox, tr("SCALAR_MAP_ON_DEFORMED_SHAPE_TAB"));
-
-  // Scalar bar pane
-  myInputPane = new VisuGUI_InputPane(VISU::TSCALARMAPONDEFORMEDSHAPE, theModule, this);
-
-  myTabBox->addTab(GetScalarPane(), tr("SCALAR_BAR_TAB"));
-  myTabBox->addTab(myInputPane, tr("INPUT_TAB"));
-
-  // Buttons
-  QGroupBox* GroupButtons = new QGroupBox (this, "GroupButtons");
-  GroupButtons->setGeometry(QRect(10, 10, 281, 48));
-  GroupButtons->setColumnLayout(0, Qt::Vertical);
-  GroupButtons->layout()->setSpacing(0);
-  GroupButtons->layout()->setMargin(0);
-  QGridLayout* GroupButtonsLayout = new QGridLayout (GroupButtons->layout());
-  GroupButtonsLayout->setAlignment(Qt::AlignTop);
-  GroupButtonsLayout->setSpacing(6);
-  GroupButtonsLayout->setMargin(11);
-
-  QPushButton* buttonOk = new QPushButton (tr("&OK"), GroupButtons, "buttonOk");
-  buttonOk->setAutoDefault(TRUE);
-  buttonOk->setDefault(TRUE);
-  GroupButtonsLayout->addWidget(buttonOk, 0, 0);
-
-  GroupButtonsLayout->addItem(new QSpacerItem (5, 5, QSizePolicy::Expanding,
-                                               QSizePolicy::Minimum), 0, 1);
-
-  QPushButton* buttonCancel = new QPushButton (tr("&Cancel") , GroupButtons, "buttonCancel");
-  buttonCancel->setAutoDefault(TRUE);
-  GroupButtonsLayout->addWidget(buttonCancel, 0, 2);
-
-  QPushButton* buttonHelp = new QPushButton (tr("&Help") , GroupButtons, "buttonHelp");
-  buttonHelp->setAutoDefault(TRUE);
-  GroupButtonsLayout->addWidget(buttonHelp, 0, 3);
-
-  // Add Tab box and Buttons to the top layout
-  TopLayout->addWidget(myTabBox);
-  TopLayout->addWidget(GroupButtons);
-
-  // signals and slots connections
-  connect(buttonOk,     SIGNAL(clicked()), this, SLOT(accept()));
-  connect(buttonCancel, SIGNAL(clicked()), this, SLOT(reject()));
-  connect(buttonHelp,   SIGNAL(clicked()), this, SLOT(onHelp()));
-  connect(myFieldsCombo,     SIGNAL(activated(int)), this, SLOT(onFieldChanged(int)));
-  connect(myTimeStampsCombo, SIGNAL(activated(int)), this, SLOT(onTimeStampChanged(int)));
-}
-
-VisuGUI_ScalarMapOnDeformedShapeDlg::~VisuGUI_ScalarMapOnDeformedShapeDlg()
-{}
-
-void VisuGUI_ScalarMapOnDeformedShapeDlg::initFromPrsObject( VISU::ColoredPrs3d_i* thePrs,
-                                                            bool theInit )
-{
-  if( theInit )
-    myPrsCopy = VISU::TSameAsFactory<VISU::TSCALARMAPONDEFORMEDSHAPE>().Create(thePrs, VISU::ColoredPrs3d_i::EDoNotPublish);
-  setFactor(myPrsCopy->GetScale());
-  myTimeStampsCombo->setDisabled(myIsAnimation);
-
-  CORBA::String_var aFieldName(myPrsCopy->GetScalarFieldName());
-  QString aIteration = GetFloatValueOfTimeStamp(myPrsCopy->GetScalarEntity(),
-                                               aFieldName.in(),
-                                               myPrsCopy->GetScalarTimeStampNumber());
-  if (myEntity2Fields.size() == 0)
-  {
-    // find all fields and time stamps on it
-    _PTR(Study) aActiveStudy = VISU::GetCStudy(VISU::GetAppStudy(myVisuGUI));
-    LightApp_SelectionMgr* aSel = VISU::GetSelectionMgr(myVisuGUI);
-    SALOME_ListIO selected;
-    aSel->selectedObjects(selected);
-    if (selected.Extent() > 0) {
-      Handle(SALOME_InteractiveObject) aIO = selected.First();
-      if (aIO->hasEntry()) {
-       _PTR(SObject) aSObject = aActiveStudy->FindObjectID(aIO->getEntry());
-       VISU::VISUType aType = VISU::Storable::SObject2Type( aSObject );
-       switch(aType){
-       case VISU::TTIMESTAMP: {
-         aSObject = aSObject->GetFather();
-         aSObject = aSObject->GetFather();
-         break;
-       }
-       case VISU::TFIELD: {
-         _PTR(SObject) newSObject;
-         if(aSObject->ReferencedObject(newSObject)) aSObject = newSObject;
-         aSObject = aSObject->GetFather();
-         break;
-       }
-       case VISU::TANIMATION: {
-         _PTR(ChildIterator) aTmpIter = aActiveStudy->NewChildIterator(aSObject);
-         for (aTmpIter->InitEx(true); aTmpIter->More(); aTmpIter->Next()) {
-           _PTR(SObject) aTmpChildSObj = aTmpIter->Value();
-           _PTR(SObject) newSObject;
-           if(aTmpChildSObj->ReferencedObject(newSObject)){
-             aSObject = newSObject;
-             aSObject->GetFather();
-             break;
-           }
-         }
-         break;
-       }}
-       
-       aSObject = aSObject->GetFather();
-       aSObject = aSObject->GetFather();
-
-       mySelectionObj = aSObject;
-       CORBA::Object_var anObject = VISU::ClientSObjectToObject(mySelectionObj);
-       if (CORBA::is_nil(anObject)) {
-         mySelectionObj = mySelectionObj->GetFather();
-       }
-      }
-    }
-
-    if (mySelectionObj) {
-      _PTR(ChildIterator) aIter = aActiveStudy->NewChildIterator(mySelectionObj);
-
-      for (aIter->InitEx(true); aIter->More(); aIter->Next()) {
-        _PTR(SObject) aChildSObj = aIter->Value();
-       VISU::Storable::TRestoringMap aRestoringMap = VISU::Storable::GetStorableMap(aChildSObj);
-        if (!aRestoringMap.empty()) {
-         VISU::VISUType aType = VISU::Storable::RestoringMap2Type(aRestoringMap);
-         if (aType == VISU::TTIMESTAMP) {
-           QString aMeshName = aRestoringMap["myMeshName"];
-           CORBA::String_var aName = myPrsCopy->GetMeshName();
-           if (aMeshName != aName.in())
-             continue;
-           QString aFieldName = aRestoringMap["myFieldName"];
-           QString aTimeIter  = aRestoringMap["myTimeStampId"];
-           QString aEntity    = aRestoringMap["myEntityId"];
-           VISU::Entity anEntity;
-           switch (aEntity.toInt()) {
-           case 0: anEntity = VISU::NODE; break;
-           case 1: anEntity = VISU::EDGE; break;
-           case 2: anEntity = VISU::FACE; break;
-           case 3: anEntity = VISU::CELL; break;
-           }
-           TFieldName2TimeStamps& aFieldName2TimeStamps = myEntity2Fields[anEntity];
-           TTimeStampNumber2Time& aTimeStampNumber2Time = aFieldName2TimeStamps[aFieldName];
-           aTimeStampNumber2Time[aTimeIter.toInt()] = 
-             GetFloatValueOfTimeStamp(anEntity,
-                                      aFieldName.latin1(),
-                                      aTimeIter.toInt());
-         }
-        }
-      }
-    }
-    AddAllFieldNames();
-  }
-  myFieldsCombo->setCurrentText(aFieldName.in());
-  AddAllTimes(myFieldsCombo->currentText());
-  myTimeStampsCombo->setCurrentText(aIteration);
-  SetScalarField( false );
-
-  VisuGUI_ScalarBarBaseDlg::initFromPrsObject(myPrsCopy, theInit);
-
-  if( !theInit )
-    return;
-
-  myInputPane->initFromPrsObject( myPrsCopy );
-  myTabBox->setCurrentPage( 0 );
-}
-
-int
-VisuGUI_ScalarMapOnDeformedShapeDlg
-::storeToPrsObject(VISU::ColoredPrs3d_i* thePrs)
-{
-  if(!myInputPane->check() || !GetScalarPane()->check())
-    return 0;
-  
-  int anIsOk = myInputPane->storeToPrsObject( myPrsCopy );
-  anIsOk &= GetScalarPane()->storeToPrsObject( myPrsCopy );
-  
-  myPrsCopy->SetScale(getFactor());
-
-  myPrsCopy->SetScalarField(myPrsCopy->GetScalarEntity(),
-                           getCurrentScalarFieldName().latin1(),
-                           myTimeStampID[ myTimeStampsCombo->currentItem() ]);
-
-  if(myUpdateScalars) 
-    SetScalarField( false );
-
-  VISU::TSameAsFactory<VISU::TSCALARMAPONDEFORMEDSHAPE>().Copy(myPrsCopy, thePrs);
-
-  return anIsOk;
-}
-
-int VisuGUI_ScalarMapOnDeformedShapeDlg::getCurrentScalarFieldNamePos(){
-  return myFieldsCombo->currentItem();
-}
-
-QString VisuGUI_ScalarMapOnDeformedShapeDlg::getCurrentScalarFieldName(){
-  return myFieldsCombo->currentText();
-}
-
-int VisuGUI_ScalarMapOnDeformedShapeDlg::getCurrentScalarNbIterations(){
-  return myTimeStampsCombo->count();
-}
-
-VISU::Entity
-VisuGUI_ScalarMapOnDeformedShapeDlg
-::getCurrentScalarEntity()
-{
-  VISU::Entity anEntity = VISU::Entity(-1);
-  TEntity2Fields::const_iterator anIter = myEntity2Fields.begin();
-  for(; anIter != myEntity2Fields.end(); anIter++){
-    const TFieldName2TimeStamps& aFieldName2TimeStamps = anIter->second;
-    TFieldName2TimeStamps::const_iterator aFieldIter = aFieldName2TimeStamps.begin();
-    for(; aFieldIter != aFieldName2TimeStamps.end(); aFieldIter++){
-      const QString& aFieldName = aFieldIter->first;
-      if (aFieldName == myFieldsCombo->currentText()) {
-       anEntity = anIter->first;
-       break;
-      }
-    }
-  }
-  return anEntity;
-}
-
-void VisuGUI_ScalarMapOnDeformedShapeDlg::SetScalarField( const bool save_scalar_pane ){
-  SetScalarField( myTimeStampID[ myTimeStampsCombo->currentItem() ], "", save_scalar_pane );
-}
-
-void
-VisuGUI_ScalarMapOnDeformedShapeDlg
-::SetScalarField(int theIter,
-                QString theFieldName, 
-                const bool save_scalar_pane )
-{
-  QApplication::setOverrideCursor(Qt::waitCursor);
-
-  if( save_scalar_pane )
-    GetScalarPane()->storeToPrsObject(myPrsCopy);
-
-  QString aFieldName;
-
-  if(theFieldName.isEmpty())
-    aFieldName = myFieldsCombo->currentText();
-  else
-    aFieldName = theFieldName;
-
-  VISU::Entity anEntity = getCurrentScalarEntity();
-  
-  myPrsCopy->SetScalarField(anEntity,
-                           aFieldName.latin1(),
-                           theIter);
-  
-  if( save_scalar_pane )
-    UpdateScalarField();
-
-  QApplication::restoreOverrideCursor();
-}
-
-void VisuGUI_ScalarMapOnDeformedShapeDlg::accept()
-{
-  VisuGUI_ScalarBarBaseDlg::accept();
-}
-
-void VisuGUI_ScalarMapOnDeformedShapeDlg::reject()
-{
-  VisuGUI_ScalarBarBaseDlg::reject();
-}
-
-QString VisuGUI_ScalarMapOnDeformedShapeDlg::GetContextHelpFilePath()
-{
-  return "scalar_map_on_deformed_shape_page.html";
-}
-
-void VisuGUI_ScalarMapOnDeformedShapeDlg::AddAllFieldNames(){
-  TEntity2Fields::const_iterator anIter = myEntity2Fields.begin();
-  for(; anIter != myEntity2Fields.end(); anIter++){
-    const TFieldName2TimeStamps& aFieldName2TimeStamps = anIter->second;
-    TFieldName2TimeStamps::const_iterator aFieldIter = aFieldName2TimeStamps.begin();
-    for(; aFieldIter != aFieldName2TimeStamps.end(); aFieldIter++){
-      const QString& aFieldName = aFieldIter->first;
-      myFieldsCombo->insertItem(aFieldName);
-    }
-  }
-}
-
-void VisuGUI_ScalarMapOnDeformedShapeDlg::AddAllTimes(const QString& theFieldName){
-  TEntity2Fields::const_iterator anIter = myEntity2Fields.begin();
-  for(; anIter != myEntity2Fields.end(); anIter++){
-    const TFieldName2TimeStamps& aFieldName2TimeStamps = anIter->second;
-    TFieldName2TimeStamps::const_iterator aFieldIter = aFieldName2TimeStamps.begin();
-    for(; aFieldIter != aFieldName2TimeStamps.end(); aFieldIter++){
-      const QString& aFieldName = aFieldIter->first;
-      if(theFieldName != aFieldName) 
-       continue;
-
-      myTimeStampID.clear();
-      myTimeStampsCombo->clear();
-
-      const TTimeStampNumber2Time& aTimeStampNumber2Time = aFieldIter->second;
-      TTimeStampNumber2Time::const_iterator aTimeStampIter = aTimeStampNumber2Time.begin();
-      for(; aTimeStampIter != aTimeStampNumber2Time.end(); aTimeStampIter++){
-       int aTimeStampNumber = aTimeStampIter->first;
-       myTimeStampID.push_back(aTimeStampNumber);
-
-       QString aTimeStampTime = aTimeStampIter->second;
-       myTimeStampsCombo->insertItem(aTimeStampTime);
-      }
-      return;
-    }
-  }
-}
-
-void VisuGUI_ScalarMapOnDeformedShapeDlg::onFieldChanged(int){
-  AddAllTimes(myFieldsCombo->currentText());
-  SetScalarField();
-  UpdateScalarField();
-}
-
-void VisuGUI_ScalarMapOnDeformedShapeDlg::onTimeStampChanged(int){
-  SetScalarField();
-  UpdateScalarField();
-}
-
-void VisuGUI_ScalarMapOnDeformedShapeDlg::UpdateScalarField(){
-  GetScalarPane()->initFromPrsObject(myPrsCopy);
-}
-
-QString 
-VisuGUI_ScalarMapOnDeformedShapeDlg
-::GetFloatValueOfTimeStamp(VISU::Entity theEntity,
-                          const std::string& theFieldName,
-                          int theTimeStampNumber)
-{
-  QString aTime("");
-  VISU::TEntity anEntity = VISU::TEntity(theEntity);
-  VISU::Result_i* theResult = myPrsCopy->GetCResult();
-  VISU::Result_i::PInput anInput = theResult->GetInput();
-  VISU::PField aField = anInput->GetField(myPrsCopy->GetCMeshName(),
-                                         anEntity,
-                                         theFieldName);
-  if(!aField) 
-    return aTime;
-
-  VISU::TValField& aValField = aField->myValField;
-  VISU::TValField::const_iterator aIter = aValField.find(theTimeStampNumber);
-  if(aIter != aValField.end()){
-    VISU::PValForTime aValForTime = aIter->second;
-    aTime = VISU_Convertor::GenerateName(aValForTime->myTime).c_str();
-  }
-  return aTime;
-}
diff --git a/src/VISUGUI/VisuGUI_ScalarMapOnDeformedShapeDlg.h b/src/VISUGUI/VisuGUI_ScalarMapOnDeformedShapeDlg.h
deleted file mode 100644 (file)
index 6974d68..0000000
+++ /dev/null
@@ -1,123 +0,0 @@
-//  VISU VISUGUI : GUI of VISU component
-//
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-//  This library is free software; you can redistribute it and/or
-//  modify it under the terms of the GNU Lesser General Public
-//  License as published by the Free Software Foundation; either
-//  version 2.1 of the License.
-//
-//  This library is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-//  Lesser General Public License for more details.
-//
-//  You should have received a copy of the GNU Lesser General Public
-//  License along with this library; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
-//
-//  File   : VisuGUI_ScalarMapOnDeformedShapeDlg.h
-//  Author : Eugeny Nikolaev
-//  Module : VISU
-
-#ifndef VISUGUI_SCALARMAPONDEFORMEDSHAPEDLS_H
-#define VISUGUI_SCALARMAPONDEFORMEDSHAPEDLS_H
-
-#include "VisuGUI_Prs3dDlg.h"
-
-#include "VISUConfig.hh"
-
-#include "QtxDblSpinBox.h"
-
-#include <qdialog.h>
-#include <qgroupbox.h>
-#include <qcheckbox.h>
-#include <qcombobox.h>
-#include <qlabel.h>
-#include <qpushbutton.h>
-#include <qtabwidget.h>
-
-#include <set>
-#include <vector>
-
-class SalomeApp_Module;
-class VisuGUI_InputPane;
-
-namespace VISU
-{
-  class ScalarMapOnDeformedShape_i;
-}
-
-class VisuGUI_ScalarMapOnDeformedShapeDlg : public VisuGUI_ScalarBarBaseDlg
-{
-    Q_OBJECT
-
-public:
-    VisuGUI_ScalarMapOnDeformedShapeDlg (SalomeApp_Module* theModule);
-    ~VisuGUI_ScalarMapOnDeformedShapeDlg();
-
-    double getFactor()
-      { return ScalFact->value(); }
-    void setFactor(double theFactor)
-      { ScalFact->setValue(theFactor); }
-    
-    virtual void initFromPrsObject( VISU::ColoredPrs3d_i* thePrs,
-                                   bool theInit );
-
-    virtual int  storeToPrsObject(VISU::ColoredPrs3d_i* thePrs);
-
-    int getCurrentScalarFieldNamePos();
-    QString getCurrentScalarFieldName();
-    int getCurrentScalarNbIterations();
-    VISU::Entity getCurrentScalarEntity();
-    void SetScalarField(int theIter,QString theFieldName=QString(""), const bool = true );
-
-protected:
-  virtual QString GetContextHelpFilePath();
-
-protected slots:
-  void accept();
-  void reject();
-
-private slots:
-  void onFieldChanged(int i=0);
-  void onTimeStampChanged(int i=0);
-
-private:
- QtxDblSpinBox* ScalFact;
- QTabWidget* myTabBox;
- VisuGUI_ScalarBarPane* myScalarPane;
- VisuGUI_InputPane*     myInputPane;
- QComboBox *myFieldsCombo;
- QComboBox *myTimeStampsCombo;
- typedef std::map<int, QString> TTimeStampNumber2Time; // Times map definition (iteration time, real value of time)
- typedef std::map<QString, TTimeStampNumber2Time> TFieldName2TimeStamps; // Field name and enity to Times
- typedef std::map<VISU::Entity, TFieldName2TimeStamps> TEntity2Fields; // Mesh to fields map
- TEntity2Fields myEntity2Fields;
- int myCurrScalarIter;
- bool myIsAnimation;
- bool myUpdateScalars;
- std::vector<int> myTimeStampID;
- _PTR(SObject) mySelectionObj;
- SALOME::GenericObjPtr<VISU::ScalarMapOnDeformedShape_i> myPrsCopy;
- SalomeApp_Module* myVisuGUI;
-protected:
- void UpdateScalarField();
- void SetScalarField( const bool = true );
- void AddAllFieldNames();
- void AddAllTimes(const QString& theFieldName);
- QString GetFloatValueOfTimeStamp(VISU::Entity theEntity,
-                                 const std::string& theFieldName,
-                                 int theTimeStampNumber);
-};
-
-#endif // VISUGUI_DEFORMEDSHAPEDLS_H
index 3dcac912d5967ccae905470ee1b373be8b381c37..398f17441edadd5f26df079b4ea1e29c438f8b6c 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_Selection.cxx
-//  Author : Laurent CORNABE & Hubert ROLLAND
+//  Author : Sergey Anikin 
 //  Module : VISU
-//  $Header$
-
+//
 #include "VisuGUI_Selection.h"
 
-#include "VisuGUI.h"
-#include "VisuGUI_Tools.h"
 #include "VisuGUI_ViewTools.h"
+#include "VisuGUI_Tools.h"
+
+#include "VISU_Result_i.hh"
+#include "VISU_Gen_i.hh"
 
 #include "VISU_Actor.h"
-#include "VISU_PrsObject_i.hh"
-#include "VISU_Prs3d_i.hh"
-#include "VISU_PipeLine.hxx"
+#include "VISU_ScalarMapAct.h"
 
 #include "SalomeApp_Study.h"
-#include "SalomeApp_Application.h"
-#include "LightApp_Application.h"
-#include "LightApp_SelectionMgr.h"
-#include "LightApp_VTKSelector.h"
-
-#include "SUIT_MessageBox.h"
-#include "SUIT_ViewWindow.h"
-#include "SUIT_Session.h"
-#include "SUIT_ResourceMgr.h"
-
-#include "SALOME_ListIO.hxx"
-#include "SALOME_ListIteratorOfListIO.hxx"
-
-#include "SVTK_ViewWindow.h"
-#include "SVTK_Selector.h"
-
-#include "utilities.h"
-
-// OCCT Includes
-#include <TColStd_IndexedMapOfInteger.hxx>
-#include <TColStd_MapOfInteger.hxx>
-
-// QT Includes
-#include <qstring.h>
-#include <qlabel.h>
-#include <qspinbox.h>
-#include <qlistbox.h>
-#include <qlayout.h>
-#include <qhbuttongroup.h>
-#include <qradiobutton.h>
-#include <qvalidator.h>
-#include <qpushbutton.h>
-#include <qwidgetstack.h>
-#include <qvbox.h>
-#include <qgroupbox.h>
-#include <qlineedit.h>
-#include <qvalidator.h>
-#include <qtable.h>
-
-// VTK Includes
-#include <vtkDataSetMapper.h>
-#include <vtkDataSet.h>
-#include <vtkPointData.h>
-#include <vtkCellData.h>
-#include <vtkCell.h>
-
-// STL Includes
-#include <map>
-
-using namespace std;
-
-VisuGUI_SelectionDlg::VisuGUI_SelectionDlg (const SalomeApp_Module* theModule):
-  QDialog(VISU::GetDesktop(theModule),
-         0,
-         false,
-         WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu | WDestructiveClose),
-  mySelectionMgr(NULL),
-  myModule(theModule)
-{
-  setCaption( "Data on elements" );
-  setSizeGripEnabled(TRUE);
-
-  QGridLayout* TopLayout = new QGridLayout (this);
-  TopLayout->setSpacing(6);
-  TopLayout->setMargin(11);
-  TopLayout->setRowStretch(0, 0);
-  TopLayout->setRowStretch(1, 0);
-  TopLayout->setRowStretch(2, 1);
-  TopLayout->setRowStretch(3, 0);
-
-  QHButtonGroup* aTypeBox = new QHButtonGroup ("Selection", this);
-
-  QRadioButton* aPointBtn =
-  new QRadioButton ("Point", aTypeBox);
-  new QRadioButton ("Cell" , aTypeBox);
-  new QRadioButton ("Actor", aTypeBox);
-  aPointBtn->setChecked(true);
-
-  connect(aTypeBox, SIGNAL(clicked(int)), this, SLOT(onSelectionChange(int)));
-
-  TopLayout->addWidget(aTypeBox, 0, 0);
-
-  QWidget* aNamePane = new QWidget (this);
-  QGridLayout* aNameLay = new QGridLayout (aNamePane);
-
-  QLabel* aMeshLbl = new QLabel ("Mesh name: ", aNamePane);
-  myMeshName = new QLabel (aNamePane);
-
-  QLabel* aFieldLbl = new QLabel ("Field name: ", aNamePane);
-  myFieldName = new QLabel (aNamePane);
-
-  aNameLay->addWidget(aMeshLbl, 0, 0);
-  aNameLay->addWidget(myMeshName, 0, 1);
-  aNameLay->addWidget(aFieldLbl, 1, 0);
-  aNameLay->addWidget(myFieldName, 1, 1);
-
-  TopLayout->addWidget(aNamePane, 1, 0);
-
-  myWidgetStack = new QWidgetStack (this);
-
-  // Create Points pane
-  myPointsPane = new QVBox (myWidgetStack);
-  myPointsPane->layout()->setSpacing(6);
-
-  QGroupBox* aDataGrp = new QGroupBox (2, Qt::Horizontal, "Data of Point", myPointsPane);
-  aDataGrp->layout()->setSpacing(6);
-
-  new QLabel ("ID:", aDataGrp);
-  myIDValLbl = new QLineEdit ("", aDataGrp);
-  QIntValidator* aIntValidator = new QIntValidator (myIDValLbl);
-  aIntValidator->setBottom(0);
-  myIDValLbl->setValidator(aIntValidator);
-  connect(myIDValLbl, SIGNAL(textChanged(const QString&)), this, SLOT(onPointIdEdit(const QString&)));
-
-  new QLabel ("Scalar Value:", aDataGrp);
-  myScalarValLbl = new QLabel ("", aDataGrp);
-  new QLabel ("Vector Value:", aDataGrp);
-  myVectorValLbl = new QLabel ("", aDataGrp);
-  myVectorValLbl->setMinimumWidth(150);
-
-  QGroupBox* aCoordGrp = new QGroupBox (4, Qt::Horizontal, "Coordinates", myPointsPane);
-  aCoordGrp->layout()->setSpacing(6);
-  new QLabel ("X:", aCoordGrp);
-  myXValLbl = new QLabel ("", aCoordGrp);
-  //ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
-  new QLabel ("I:", aCoordGrp);
-  myIValLbl = new QLabel ("-", aCoordGrp);
-  //ENK: 23.11.2006
-  new QLabel ("Y:", aCoordGrp);
-  myYValLbl = new QLabel ("", aCoordGrp);
-  //ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
-  new QLabel ("J:", aCoordGrp);
-  myJValLbl = new QLabel ("-", aCoordGrp);
-  //ENK: 23.11.2006
-  new QLabel ("Z:",aCoordGrp );
-  myZValLbl = new QLabel ("", aCoordGrp);
-  //ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
-  new QLabel ("K:", aCoordGrp);
-  myKValLbl = new QLabel ("-", aCoordGrp);
-  //ENK: 23.11.2006
-
-
-  myWidgetStack->addWidget(myPointsPane, 0);
-
-  // Create Cells pane
-  myCellsPane = new QWidget (myWidgetStack);
-  QGridLayout* aCellLayout = new QGridLayout (myCellsPane);
-  aCellLayout->setSpacing(6);
-  aCellLayout->setRowStretch(0, 0);
-  aCellLayout->setRowStretch(1, 1);
-
-  QGroupBox* aCellGrp = new QGroupBox(2, Qt::Horizontal, "Data of Cell", myCellsPane);
-
-  new QLabel ("ID:", aCellGrp);
-  myCellIDValLbl = new QLineEdit ("", aCellGrp);
-  myCellIDValLbl->setValidator(aIntValidator);
-  connect(myCellIDValLbl, SIGNAL(textChanged(const QString&)), this, SLOT(onCellIdEdit(const QString&)));
-
-  new QLabel ("Scalar Value:", aCellGrp);
-  myCellScalarValLbl = new QLabel ("", aCellGrp);
-  new QLabel ("Vector Value:", aCellGrp);
-  myCellVectorValLbl = new QLabel ("", aCellGrp);
-
-  aCellLayout->addWidget(aCellGrp, 0, 0);
-
-  myListPoints = new QTable (myCellsPane);
-  myListPoints->setReadOnly(true);
-  myListPoints->setNumCols(9);
-  myListPoints->setNumRows(0);
-  myListPoints->setColumnWidth(0, 40);
-  myListPoints->setColumnWidth(1, 40);
-  myListPoints->setColumnWidth(2, 40);
-  myListPoints->setColumnWidth(3, 40);
-  myListPoints->setColumnWidth(4, 40);//ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
-  myListPoints->setColumnWidth(5, 40);//ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
-  myListPoints->setColumnWidth(6, 40);//ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
-  myListPoints->setSelectionMode(QTable::NoSelection);
-  QHeader* aHeader = myListPoints->horizontalHeader();
-  aHeader->setLabel( 0, "ID" );
-  aHeader->setLabel( 1, "X" );
-  aHeader->setLabel( 2, "Y" );
-  aHeader->setLabel( 3, "Z" );
-  aHeader->setLabel( 4, "I" );//ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
-  aHeader->setLabel( 5, "J" );//ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
-  aHeader->setLabel( 6, "K" );//ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
-  aHeader->setLabel( 7, "Scalar" );
-  aHeader->setLabel( 8, "Vector" );
-
-  aCellLayout->addWidget(myListPoints, 1, 0);
-
-  myWidgetStack->addWidget(myCellsPane, 1);
-
-  // Actor Pane
-  myActorsPane = new QVBox (myWidgetStack);
-  myActorsPane->layout()->setSpacing(6);
-
-  QGroupBox* aPosGrp = new QGroupBox (2, Qt::Horizontal, "Position", myActorsPane);
-  aPosGrp->layout()->setSpacing(6);
-  new QLabel ("X:", aPosGrp);
-  myXPosLbl = new QLabel ("0", aPosGrp);
-  new QLabel ("Y:", aPosGrp);
-  myYPosLbl = new QLabel ("0", aPosGrp);
-  new QLabel ("Z:", aPosGrp);
-  myZPosLbl = new QLabel ("0", aPosGrp);
-
-  QGroupBox* aSizeGrp = new QGroupBox (2, Qt::Horizontal, "Size", myActorsPane);
-  aSizeGrp->layout()->setSpacing(6);
-  new QLabel ("dX:", aSizeGrp);
-  myDXLbl = new QLabel ("0", aSizeGrp);
-  new QLabel ("dY:", aSizeGrp);
-  myDYLbl = new QLabel ("0", aSizeGrp);
-  new QLabel ("dZ:",aSizeGrp );
-  myDZLbl = new QLabel ("0", aSizeGrp);
-
-  myWidgetStack->addWidget(myActorsPane, 2);
-
-
-  TopLayout->addWidget(myWidgetStack, 2, 0);
-
-  // Create buttons group
-  QHBox* aBtnBox = new QHBox (this);
-  QHBoxLayout* aBtnLayout = (QHBoxLayout*)aBtnBox->layout();
-  aBtnLayout->addStretch();
-
-  QPushButton* aCloseBtn = new QPushButton (tr("BUT_CLOSE"), aBtnBox);
-  connect(aCloseBtn, SIGNAL(clicked()), this, SLOT(close()));
-
-  QPushButton* aHelpBtn = new QPushButton (tr("BUT_HELP"), aBtnBox);
-  connect(aHelpBtn, SIGNAL(clicked()), this, SLOT(onHelp()));
-
-  TopLayout->addWidget(aBtnBox, 3, 0);
-
-  SalomeApp_Application* anApp = dynamic_cast<SalomeApp_Application*>
-    (SUIT_Session::session()->activeApplication());
-  mySelectionMgr = anApp->selectionMgr();
-  connect(mySelectionMgr, SIGNAL(currentSelectionChanged()), this, SLOT(onSelectionEvent()));
-
-  //connect(visuGUI, SIGNAL(SignalCloseAllDialogs()), this, SLOT(close()));
-
-  myFl = false;
-
-  // Activate Points pane
-  myWidgetStack->raiseWidget(myPointsPane);
-  if (SVTK_ViewWindow* aViewWindow = VISU::GetActiveViewWindow<SVTK_ViewWindow>(myModule))
-    aViewWindow->SetSelectionMode(NodeSelection);
-  onSelectionEvent();
+#include "LightApp_Study.h"
+#include "LightApp_Displayer.h"
+
+using namespace VISU;
+
+//////////////////////////////////////////////////
+// Class: VisuGUI_Selection
+//////////////////////////////////////////////////
+
+
+//---------------------------------------------------------------
+QVariant VisuGUI_Selection::parameter( const int ind, const QString& p ) const
+{
+  QVariant val( LightApp_Selection::parameter( ind, p ) );
+  if ( !val.isValid() ) {
+    if      ( p == "type"           ) val = QVariant( type( ind ) );
+    else if ( p == "nbComponents"   ) val = QVariant( nbComponents( ind ) );
+    else if ( p == "medEntity"   ) val = QVariant( medEntity( ind ) );
+    else if ( p == "medSource"   ) val = QVariant( medSource( ind ) );
+    else if ( p == "representation" ) val = QVariant( representation( ind ) );
+    else if ( p == "nbTimeStamps"   ) val = QVariant( nbTimeStamps( ind ) );
+    else if ( p == "nbChildren"     ) val = QVariant( nbChildren( ind ) );
+    else if ( p == "nbNamedChildren") val = QVariant( nbNamedChildren( ind ) );
+    else if ( p == "isVisible"      ) val = QVariant( isVisible( ind ) );
+    else if ( p == "isShrunk"       ) val = QVariant( isShrunk( ind ) );
+    else if ( p == "hasActor"       ) val = QVariant( hasActor( ind ) );
+    else if ( p == "isShading"      ) val = QVariant( isShading( ind ) );
+    else if ( p == "isScalarMapAct" ) val = QVariant( isScalarMapAct( ind ) );
+    else if ( p == "isVisuComponent") val = QVariant( isVisuComponent( ind ) );
+    else if ( p == "fullResolution"   ) val = QVariant( fullResolution( ind ) );
+    else if ( p == "mediumResolution"   ) val = QVariant( mediumResolution( ind ) );
+    else if ( p == "lowResolution"   ) val = QVariant( lowResolution( ind ) );
+    else if ( p == "resolutionState"   ) val = QVariant( resolutionState( ind ) );
+    else if ( p == "isThereAreVisibleCurves" ) val = QVariant( findDisplayedCurves( ind, false ) );
+    else if ( p == "isThereAreHiddenCurves" ) val = QVariant( findDisplayedCurves( ind, true ) );
+    else if ( p == "hasCurves"      ) val = QVariant( hasCurves( ind ) );
+    else if ( p == "isPlot2dViewer"      ) val = QVariant( Plot2dViewerType( ind ) );
+    else if ( p == "isValuesLabeled"  ) val = QVariant( isValuesLabeled( ind ) );
+    else if ( p == "isScalarBarVisible" ) val = QVariant( isScalarBarVisible( ind ) );
+  }
+
+  return val;
 }
 
-VisuGUI_SelectionDlg::~VisuGUI_SelectionDlg()
+
+//---------------------------------------------------------------
+// Macro for converting VISU enumeration items into corresponding strings
+#define ENUM2STRING( x, y ) \
+  case y: \
+    x = QString( #y ); \
+    break
+
+QString VisuGUI_Selection::type( const int ind ) const
 {
-  SVTK_ViewWindow* aViewWindow = VISU::GetActiveViewWindow<SVTK_ViewWindow>(myModule);
-  if ( !aViewWindow )
-    return;
+  QString aResStr;
+  SalomeApp_Study* aStudy = GetStudy();
+  if ( !aStudy )
+    return aResStr;
+
+  VISU::TObjectInfo anObjectInfo = VISU::GetObjectByEntry(aStudy, (const char*)entry( ind ).toLatin1());
+  VISU::Storable::TRestoringMap aMap = VISU::Storable::GetStorableMap(anObjectInfo.mySObject);
+
+  VISU::Base_i* aBase = anObjectInfo.myBase;
+  if(aBase){
+    VISU::VISUType aType = aBase->GetType();
+    if(aType == VISU::TCOLOREDPRS3DHOLDER){
+      CORBA::Object_var anObject = ClientSObjectToObject(anObjectInfo.mySObject);
+      VISU::ColoredPrs3dHolder_var aHolder = VISU::ColoredPrs3dHolder::_narrow(anObject);
+      aType = aHolder->GetPrsType();
+    }
+    switch (aType) {
+      ENUM2STRING( aResStr, VISU::TVISUGEN );
+      ENUM2STRING( aResStr, VISU::TRESULT );
+      ENUM2STRING( aResStr, VISU::TTABLE );
+      ENUM2STRING( aResStr, VISU::TCURVE );
+      ENUM2STRING( aResStr, VISU::TCONTAINER );
+      ENUM2STRING( aResStr, VISU::TMESH );
+      ENUM2STRING( aResStr, VISU::TSCALARMAP );
+      ENUM2STRING( aResStr, VISU::TISOSURFACES );
+      ENUM2STRING( aResStr, VISU::TDEFORMEDSHAPE );
+      ENUM2STRING( aResStr, VISU::TSCALARMAPONDEFORMEDSHAPE );
+      ENUM2STRING( aResStr, VISU::TCUTPLANES );
+      ENUM2STRING( aResStr, VISU::TCUTLINES );
+      ENUM2STRING( aResStr, VISU::TVECTORS );
+      ENUM2STRING( aResStr, VISU::TSTREAMLINES );
+      ENUM2STRING( aResStr, VISU::TPLOT3D );
+      ENUM2STRING( aResStr, VISU::TANIMATION );
+      ENUM2STRING( aResStr, VISU::TPOINTMAP3D );
+    }
+  }
 
-  switch ( aViewWindow->SelectionMode() ) {
-  case NodeSelection:
-  case CellSelection:
-    aViewWindow->SetSelectionMode(ActorSelection);
-    break;
+  if(aResStr.isNull()){
+    VISU::VISUType aType = VISU::Storable::RestoringMap2Type(aMap);
+    switch (aType) {
+      ENUM2STRING( aResStr, VISU::TENTITY );
+      ENUM2STRING( aResStr, VISU::TFAMILY );
+      ENUM2STRING( aResStr, VISU::TGROUP );
+      ENUM2STRING( aResStr, VISU::TVIEW3D );
+      ENUM2STRING( aResStr, VISU::TFIELD );
+      ENUM2STRING( aResStr, VISU::TTIMESTAMP );
+    }
   }
-}
 
-void VisuGUI_SelectionDlg::onSelectionChange (int theId)
-{
-  SVTK_ViewWindow* aViewWindow = VISU::GetActiveViewWindow<SVTK_ViewWindow>(myModule);
-  if (!aViewWindow) return;
-
-  switch (theId) {
-  case 0: // Points
-    myWidgetStack->raiseWidget(myPointsPane);
-    aViewWindow->SetSelectionMode(NodeSelection);
-    onPointIdEdit(myIDValLbl->text());
-    break;
-  case 1: // Cells
-    myWidgetStack->raiseWidget(myCellsPane);
-    aViewWindow->SetSelectionMode(CellSelection);
-    onCellIdEdit(myCellIDValLbl->text());
-    break;
-  case 2: // Actor
-    myWidgetStack->raiseWidget(myActorsPane);
-    aViewWindow->SetSelectionMode(ActorSelection);
-    onSelectionEvent();
+  if(aResStr.isNull()){
+    bool anIsExist;
+    QString aVal = VISU::Storable::FindValue(aMap, "myComment", &anIsExist);
+    if ( anIsExist && aVal != "MESH" )
+      aResStr = "VISU::T" + aVal;
   }
+
+  return aResStr;
+}
+
+
+//---------------------------------------------------------------
+QString VisuGUI_Selection::nbComponents( const int ind ) const
+{
+  QString aResStr;
+  SalomeApp_Study* aStudy = GetStudy();
+  if ( !aStudy )
+    return aResStr;
+
+  VISU::TObjectInfo anObjectInfo = VISU::GetObjectByEntry(aStudy, (const char*)entry( ind ).toLatin1());
+  VISU::Storable::TRestoringMap aMap = VISU::Storable::GetStorableMap(anObjectInfo.mySObject);
+
+  bool isExist;
+  QString aVal = VISU::Storable::FindValue(aMap,"myNumComponent",&isExist);
+  if ( isExist )
+    aResStr = aVal;
+  return aResStr;
+}
+
+
+//---------------------------------------------------------------
+QString VisuGUI_Selection::resolutions( const int ind ) const
+{
+  QString aResStr;
+  SalomeApp_Study* aStudy = GetStudy();
+  if ( !aStudy )
+    return aResStr;
+
+  VISU::TObjectInfo anObjectInfo = VISU::GetObjectByEntry(aStudy, entry( ind ).toLatin1().data());
+  VISU::Storable::TRestoringMap aMap = VISU::Storable::GetStorableMap(anObjectInfo.mySObject);
+
+  bool isExist;
+  QString aVal = VISU::Storable::FindValue(aMap,"myResolutions",&isExist);
+  if ( isExist )
+    aResStr = aVal;
+
+  return aResStr;
 }
 
 
-void VisuGUI_SelectionDlg::closeEvent (QCloseEvent* theEvent)
+//---------------------------------------------------------------
+QString VisuGUI_Selection::resolution( const int ind, char theResoltuion ) const
 {
-  QDialog::closeEvent(theEvent);
+  QString aResStr;
+
+  QString aResolutions = resolutions( ind );
+  if(aResolutions.isEmpty())
+    return aResStr;
+  
+  if(aResolutions.indexOf(theResoltuion) != -1)
+    aResStr = "1";
+  else
+    aResStr = "0";
+
+  return aResStr;
 }
 
-template<class TData> QString getValue(TData* theData, int theId){
-  if (vtkDataArray *aScalar = theData->GetScalars()){
-    vtkFloatingPointType aVal = aScalar->GetTuple1(theId);
-    return QString::number(aVal);
-  } else {
-    return QString("No data");
+
+//---------------------------------------------------------------
+QString VisuGUI_Selection::fullResolution( const int ind ) const
+{
+  return resolution( ind, 'F');
+}
+
+
+//---------------------------------------------------------------
+QString VisuGUI_Selection::mediumResolution( const int ind ) const
+{
+  return resolution( ind, 'M');
+}
+
+
+//---------------------------------------------------------------
+QString VisuGUI_Selection::lowResolution( const int ind ) const
+{
+  return resolution( ind, 'L');
+}
+
+
+//---------------------------------------------------------------
+QString VisuGUI_Selection::resolutionState( const int ind ) const
+{
+  QString aResStr;
+  SalomeApp_Study* aStudy = GetStudy();
+  if ( !aStudy )
+    return aResStr;
+
+  VISU::TObjectInfo anObjectInfo = VISU::GetObjectByEntry(aStudy, entry( ind ).toLatin1().data());
+  VISU::Storable::TRestoringMap aMap = VISU::Storable::GetStorableMap(anObjectInfo.mySObject);
+
+  bool isExist;
+  QString aVal = VISU::Storable::FindValue(aMap,"myState",&isExist);
+  if ( isExist ) {
+    if ( aVal.toInt() == VISU::Result::FULL )
+      aResStr = "F";
+    if ( aVal.toInt() == VISU::Result::MEDIUM )
+      aResStr = "M";
+    if ( aVal.toInt() == VISU::Result::LOW )
+      aResStr = "L";
+    if ( aVal.toInt() == VISU::Result::HIDDEN )
+      aResStr = "H";
   }
+
+  return aResStr;
 }
 
-template<class TData> QString getVector(TData* theData, int theId){
-  if (vtkDataArray *aVector = theData->GetVectors()) {
-    vtkFloatingPointType *aVal = aVector->GetTuple3(theId);
-    return QString("%1; %2; %3").arg(aVal[0]).arg(aVal[1]).arg(aVal[2]);
-  } else {
-    return QString("No data");
+
+//---------------------------------------------------------------
+QString VisuGUI_Selection::medEntity( const int ind ) const
+{
+  SalomeApp_Study* aStudy = GetStudy();
+  if ( !aStudy )
+    return QString();
+
+  VISU::TObjectInfo anObjectInfo = VISU::GetObjectByEntry(aStudy, (const char*)entry( ind ).toLatin1());
+  VISU::Storable::TRestoringMap aMap = VISU::Storable::GetStorableMap(anObjectInfo.mySObject);
+
+  bool isExist;
+  QString aVal = VISU::Storable::FindValue(aMap,"myEntityId",&isExist);
+  if ( isExist ) {
+    using namespace VISU;
+    TEntity anEntityId = TEntity(aVal.toInt());
+    switch(anEntityId){
+    case NODE_ENTITY :
+      return "NODE_ENTITY";
+    case EDGE_ENTITY :
+      return "EDGE_ENTITY";
+    case FACE_ENTITY :
+      return "FACE_ENTITY";
+    case CELL_ENTITY :
+      return "CELL_ENTITY";
+    default:
+      return QString();
+    }
   }
+  return QString();
 }
 
-#define ABS(a) (a>=0)?a:-a
-
-void VisuGUI_SelectionDlg::onSelectionEvent() {
-  SVTK_ViewWindow* aViewWindow = VISU::GetActiveViewWindow<SVTK_ViewWindow>(myModule);
-  if (!aViewWindow)
-    return;
-
-  switch (aViewWindow->SelectionMode()) {
-  case NodeSelection:
-  case CellSelection:
-  case ActorSelection:
-    break;
-  default:
-    close( TRUE );
-    return;
+QString VisuGUI_Selection::medSource( const int ind ) const
+{
+  _PTR(Study) aStudyDS = GetStudy()->studyDS();
+  if(_PTR(SObject) aSObject = aStudyDS->FindObjectID((const char*)entry(ind).toLatin1())){
+    VISU::Result_var aRes;
+    if(VISU::Result_i* aResult = CheckResult(myModule,aSObject,aRes)){
+      using namespace VISU;
+      Result_i::ECreationId aCreationId = aResult->GetCreationId();
+      switch(aCreationId){
+      case Result_i::eImportFile :
+       return "eImportFile";
+      case Result_i::eCopyAndImportFile :
+       return "eCopyAndImportFile";
+      case Result_i::eImportMed :
+       return "eImportMed";
+      case Result_i::eImportMedField :
+       return "eImportMedField";
+      default:
+       return QString();
+      }      
+    }
   }
+  return QString();
+}
 
-  if (myFl)
-    return;
-  myFl = true;
+QString VisuGUI_Selection::nbTimeStamps( const int ind ) const
+{
+  QString aResStr;
+  SalomeApp_Study* aStudy = GetStudy();
+  if ( !aStudy )
+    return aResStr;
+
+  VISU::TObjectInfo anObjectInfo = VISU::GetObjectByEntry(aStudy, (const char*)entry( ind ).toLatin1());
+  VISU::Storable::TRestoringMap aMap = VISU::Storable::GetStorableMap(anObjectInfo.mySObject);
+
+  bool isExist;
+  const QString& aVal = VISU::Storable::FindValue(aMap,"myNbTimeStamps",&isExist);
+  if ( isExist )
+    aResStr = aVal;
+  return aResStr;
+}
 
-  int aType = myWidgetStack->id(myWidgetStack->visibleWidget());
 
-  SVTK_Selector* aSelector = aViewWindow->GetSelector();
+//----------------------------------------------------------------------------
+template<class TPopupFunctor>
+struct TPopupDispatcher
+{
+  QString
+  operator()(const SalomeApp_Module* theModule, 
+            const QString& theEntry)
+  {
+    if(SUIT_ViewManager* aViewManager = theModule->getApp()->activeViewManager()){
+      QString aType = aViewManager->getType();
+      TPopupFunctor aFunctor;
+      if(aType == SVTK_Viewer::Type())
+       return aFunctor.template Get<SVTK_Viewer>(theModule, theEntry);
+      //else if(aType == VVTK_Viewer::Type())
+      //return aFunctor.template Get<VVTK_Viewer>(theModule, theEntry);
+    }
+    return QString();
+  }    
+};
+
+
+//----------------------------------------------------------------------------
+template<class TViewer>
+bool
+GetPrs3dSelectionInfo(const SalomeApp_Module* theModule,
+                     const QString& theEntry,
+                     VISU::Prs3d_i*& thePrs3d,
+                     SVTK_ViewWindow*& theViewWindow,
+                     VISU_Actor*& thenActor)
+{
+  VISU::TObjectInfo anObjectInfo = VISU::GetObjectByEntry(GetAppStudy(theModule), (const char*)theEntry.toLatin1());
+  thePrs3d = GetPrs3dFromBase(anObjectInfo.myBase);
+  if(!thePrs3d)
+    return false;
+  
+  typedef typename TViewer::TViewWindow TViewWindow;
+  theViewWindow = GetActiveViewWindow<TViewWindow>(theModule);
+  if(!theViewWindow)
+    return false;
+  
+  thenActor = FindActor(theViewWindow, thePrs3d);
+  if(!thenActor)
+    return false;
+  
+  return true;
+}
 
-  _PTR(SObject) aSObject;
-  VISU::Prs3d_i* aPrs3d = NULL;
-  Handle(SALOME_InteractiveObject) anIO;
 
-  VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects(myModule);
-  if(aSelectionInfo.size() == 1){
-    // Get selected SObject
-    VISU::TSelectionItem aSelectionItem = aSelectionInfo.front();
-    VISU::TObjectInfo anObjectInfo = aSelectionItem.myObjectInfo;
-    aPrs3d = GetPrs3dFromBase(anObjectInfo.myBase);
-    if(aPrs3d){
-      anIO = aSelectionItem.myIO;
-      aSObject = anObjectInfo.mySObject;
+//----------------------------------------------------------------------------
+struct TViewFunctor
+{
+  template<class TViewer>
+  QString
+  Get(const SalomeApp_Module* theModule, 
+      const QString& theEntry)
+  {
+    VISU_Actor* anActor = NULL;
+    VISU::Prs3d_i* aPrs3d = NULL;
+    VISU_ActorBase* anActorBase = NULL;
+    VISU::PointMap3d_i* aPointMap3d = NULL;
+    SVTK_ViewWindow* aViewWindow = NULL;
+    if(GetPrs3dSelectionInfo<TViewer>(theModule, theEntry, aPrs3d, aViewWindow, anActor))
+      return get(aPrs3d, aViewWindow, anActor);
+    else {
+      aViewWindow = GetActiveViewWindow<SVTK_ViewWindow>(theModule);
+      VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects(theModule);
+      if ( aSelectionInfo.empty() )
+       return QString();
+      VISU::TSelectionItem aSelectionItem = aSelectionInfo.front();
+      aPointMap3d = dynamic_cast<VISU::PointMap3d_i*>(aSelectionItem.myObjectInfo.myBase);
+      anActorBase = VISU::FindActorBase(aViewWindow, aPointMap3d);
+      return getPointMap(aPointMap3d, aViewWindow, anActorBase);
     }
   }
   
+  QString
+  virtual
+  get(VISU::Prs3d_i* thePrs3d,
+      SVTK_ViewWindow* theViewWindow,
+      VISU_Actor* theActor)
+  {
+    return QString();
+  }
 
-  if (aPrs3d) {
-    QString aMeshName("NULL"), aFieldName("NULL");
-    if (aSObject) {
-      VISU::Storable::TRestoringMap aMap = VISU::Storable::GetStorableMap(aSObject);
-      if (!aMap.empty()) {
-       aMeshName  = VISU::Storable::FindValue(aMap, "myMeshName");
-       aFieldName = VISU::Storable::FindValue(aMap, "myFieldName");
-      }
+  QString
+  virtual
+  getPointMap(VISU::PointMap3d_i* thePrs3d,
+             SVTK_ViewWindow* theViewWindow,
+             VISU_ActorBase* theActor)
+  {
+    return QString();
+  }
+};
+
+
+//----------------------------------------------------------------------------
+struct TGetRepesentationFunctor: TViewFunctor
+{
+  QString
+  virtual
+  get(VISU::Prs3d_i* thePrs3d,
+      SVTK_ViewWindow* theViewWindow,
+      VISU_Actor* theActor)
+  {
+    QString aResStr;
+    switch (theActor->GetRepresentation()) {
+      ENUM2STRING( aResStr, VISU::POINT );
+      ENUM2STRING( aResStr, VISU::WIREFRAME );
+      ENUM2STRING( aResStr, VISU::SHADED );
+      ENUM2STRING( aResStr, VISU::INSIDEFRAME );
+      ENUM2STRING( aResStr, VISU::SURFACEFRAME );
+      ENUM2STRING( aResStr, VISU::FEATURE_EDGES );
     }
+    return aResStr;
+  }
 
-    myMeshName ->setText((aMeshName  == "NULL") ? QString("No name") : aMeshName);
-    myFieldName->setText((aFieldName == "NULL") ? QString("No name") : aFieldName);
-
-    VISU_Actor* anVISUActor =
-      VISU::FindActor(VISU::GetAppStudy(myModule), aViewWindow, aSObject->GetID().c_str());
-    if (anVISUActor) {
-      vtkFloatingPointType aCoord[6];
-      anVISUActor->GetBounds(aCoord);
-      myXPosLbl->setText(QString::number( aCoord[0] ));
-      myYPosLbl->setText(QString::number( aCoord[2] ));
-      myZPosLbl->setText(QString::number( aCoord[4] ));
-
-      myDXLbl->setText(QString::number( ABS(aCoord[1]-aCoord[0]) ));
-      myDYLbl->setText(QString::number( ABS(aCoord[3]-aCoord[2]) ));
-      myDZLbl->setText(QString::number( ABS(aCoord[5]-aCoord[4]) ));
-
-      TColStd_IndexedMapOfInteger aMapIndex;
-      typedef std::vector<vtkFloatingPointType> TCoordArray;
-      typedef map<int, TCoordArray> TPointCoordsMap;
-      TPointCoordsMap aPointCoordsMap;
-
-      aSelector->GetIndex(anIO, aMapIndex);
-
-      vtkDataSet* aDataSet = anVISUActor->GetMapper()->GetInput();
-      vtkPointData* aPntData = aDataSet->GetPointData();
-
-      for (int ind = 1; ind <= aMapIndex.Extent(); ind++) {
-        int anID = aMapIndex(ind);
-
-        switch (aType) {
-        case 0:
-          {
-            vtkFloatingPointType* aCoord = anVISUActor->GetNodeCoord(anID);
-           int aVTKID = anVISUActor->GetNodeVTKID(anID);
-            myXValLbl->setText( QString::number( aCoord[0] ) );
-            myYValLbl->setText( QString::number( aCoord[1] ) );
-            myZValLbl->setText( QString::number( aCoord[2] ) );
-            myIDValLbl->setText( QString::number(anID) );
-            myScalarValLbl->setText(getValue(aPntData, aVTKID));
-            myVectorValLbl->setText(getVector(aPntData, aVTKID));
-           //ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
-           const VISU::PIDMapper& aMapper = aPrs3d->GetPipeLine()->GetIDMapper();
-           VISU::TIdTypeVector aVec = aMapper->GetIndexesOfNode(anID);
-           switch(aVec.size()){
-             case 3:
-               myKValLbl->setText(QString::number(aVec[2]));
-             case 2:
-               myJValLbl->setText(QString::number(aVec[1]));
-             case 1:
-               myIValLbl->setText(QString::number(aVec[0]));
-               break;
-           default:
-             myIValLbl->setText("-");
-             myJValLbl->setText("-");
-             myKValLbl->setText("-");
-           }
-           //ENK: 23.11.2006
-          }
-          break;
-        case 1:
-          {
-            vtkCellData* aCellData = aDataSet->GetCellData();
-            vtkCell* aCell = anVISUActor->GetElemCell(anID);
-           int aVTKID = anVISUActor->GetElemVTKID(anID);
-            if (aCell != NULL) {
-              int aNbOfPoints = aCell->GetNumberOfPoints();
-              if ( aNbOfPoints > 0 ) {
-                myCellIDValLbl->setText( QString::number(anID) );
-                myCellScalarValLbl->setText(getValue(aCellData, aVTKID));
-                myCellVectorValLbl->setText(getVector(aCellData, aVTKID));
-
-                vtkIdList *aPointList = aCell->GetPointIds();
-                for (int i = 0; i < aNbOfPoints; i++) {
-                  int aNodeVTKId = aPointList->GetId(i);
-                  vtkFloatingPointType* aCoord = aDataSet->GetPoint(aNodeVTKId);
-                 vtkIdType aNodeObjId = anVISUActor->GetNodeObjId(aNodeVTKId);
-                 TCoordArray aCoordArray(aCoord, aCoord + 3);
-                  aPointCoordsMap[aNodeObjId] = aCoordArray;
-                }
-              }
-            }
-          }
-          break;
-        }
+  QString
+  virtual
+  getPointMap(VISU::PointMap3d_i* thePrs3d,
+             SVTK_ViewWindow* theViewWindow,
+             VISU_ActorBase* theActorBase)
+  {
+    QString aResStr = "";
+    if (theActorBase) {
+      switch (theActorBase->GetRepresentation()) {
+       ENUM2STRING( aResStr, VISU::WIREFRAME ); // = 1
+       ENUM2STRING( aResStr, VISU::SHADED ); // = 2
       }
+    }
+    return aResStr;
+  }
+};
 
-      myListPoints->setNumRows(aPointCoordsMap.size());
-      TPointCoordsMap::const_iterator anIter = aPointCoordsMap.begin();
-
-      const VISU::PIDMapper& aMapper = aPrs3d->GetPipeLine()->GetIDMapper();
-      for (int i = 0; anIter != aPointCoordsMap.end() && i < myListPoints->numRows(); anIter++, i++) {
-        myListPoints->verticalHeader()->setLabel(i, QString::number( i ));
-        vtkIdType aNodeObjId = anIter->first;
-       //ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
-       VISU::TIdTypeVector aVec = aMapper->GetIndexesOfNode(aNodeObjId);
-       QString aI,aJ,aK;
-       aI = "-";
-       aJ = "-";
-       aK = "-";
-       switch(aVec.size()){
-       case 3:
-         aK = QString::number(aVec[2]);
-       case 2:
-         aJ = QString::number(aVec[1]);
-       case 1:
-         aI = QString::number(aVec[0]);
-         break;
-       }
-       //ENK: 23.11.2006
-
-        myListPoints->setText(i, 0, QString::number( aNodeObjId ));
-        const TCoordArray& aCoordArray = anIter->second;
-        myListPoints->setText(i, 1, QString::number( aCoordArray[0] ));
-        myListPoints->setText(i, 2, QString::number( aCoordArray[1] ));
-        myListPoints->setText(i, 3, QString::number( aCoordArray[2] ));
-        myListPoints->setText(i, 4, aI);//ENK: 23.11.2006 - PAL13176
-        myListPoints->setText(i, 5, aJ);//ENK: 23.11.2006 - PAL13176
-        myListPoints->setText(i, 6, aK);//ENK: 23.11.2006 - PAL13176
-
-       vtkIdType aNodeVTKId = anVISUActor->GetNodeVTKID(aNodeObjId);
-        myListPoints->setText(i, 7, getValue(aPntData, aNodeVTKId));
-        myListPoints->setText(i, 8, getVector(aPntData, aNodeVTKId));
+QString VisuGUI_Selection::representation( const int ind ) const
+{
+  return TPopupDispatcher<TGetRepesentationFunctor>()(myModule, entry(ind));
+}
+
+//----------------------------------------------------------------------------
+SalomeApp_Study* VisuGUI_Selection::GetStudy() const
+  
+{
+  LightApp_Study* aLightStudy = const_cast<LightApp_Study*>( study() );
+  return dynamic_cast<SalomeApp_Study*>( aLightStudy );
+}
+
+//----------------------------------------------------------------------------
+int VisuGUI_Selection::nbChild( const int ind, const bool named ) const
+{
+  int cnt = 0;
+  SalomeApp_Study* aSStudy = GetStudy();
+  if ( !aSStudy )
+    return cnt;
+  _PTR(Study) aStudy =  GetCStudy( aSStudy );
+  if ( aStudy ){
+    _PTR(SObject) SO = aStudy->FindObjectID( (const char*)entry( ind ).toLatin1() );
+    if ( SO ){
+      for ( _PTR(ChildIterator) Iter = aStudy->NewChildIterator( SO ); Iter->More(); Iter->Next() ) {
+       _PTR(SObject) refSO;
+       if ( !Iter->Value()->ReferencedObject( refSO ) && ( !named || Iter->Value()->GetName().size() ) )
+         cnt++;
       }
-      for(int aColumnId = 0; aColumnId < 9; aColumnId++)
-       myListPoints->adjustColumn(aColumnId);
     }
-  } else {
-    clearFields();
   }
-  myFl = false;
+  return cnt;
+}
+
+//----------------------------------------------------------------------------
+int VisuGUI_Selection::nbChildren( const int ind ) const
+{
+  return nbChild( ind, false );
+}
+
+//----------------------------------------------------------------------------
+int VisuGUI_Selection::nbNamedChildren( const int ind ) const
+{
+  return nbChild( ind, true );
+}
+
+
+//----------------------------------------------------------------------------
+struct TIsVisibleFunctor: TViewFunctor
+{
+  QString
+  virtual
+  get(VISU::Prs3d_i* thePrs3d,
+      SVTK_ViewWindow* theViewWindow,
+      VISU_Actor* theActor)
+  {
+    return theActor->GetVisibility() ? "true" : "false";
+  }
+};
+
+QString VisuGUI_Selection::isVisible( const int ind ) const
+{
+  return TPopupDispatcher<TIsVisibleFunctor>()(myModule, entry(ind));
+}
+
+
+//----------------------------------------------------------------------------
+struct TIsShrunkFunctor: TViewFunctor
+{
+  QString
+  virtual
+  get(VISU::Prs3d_i* thePrs3d,
+      SVTK_ViewWindow* theViewWindow,
+      VISU_Actor* theActor)
+  {
+    return theActor->IsShrunk() ? "1" : "0";
+  }
+
+  QString
+  virtual
+  getPointMap(VISU::PointMap3d_i* thePointMap,
+             SVTK_ViewWindow* theViewWindow,
+             VISU_ActorBase* theActorBase)
+  {
+    if (theActorBase)
+      return theActorBase->IsShrunk() ? "1" : "0";
+    else return "0";
+  }
+};
+
+QString VisuGUI_Selection::isShrunk( const int ind ) const
+{
+  return TPopupDispatcher<TIsShrunkFunctor>()(myModule, entry(ind));
+}
+
+
+//----------------------------------------------------------------------------
+bool VisuGUI_Selection::hasActor( const int ind ) const
+{
+  return !representation( ind ).isEmpty();
+}
+
+
+//----------------------------------------------------------------------------
+struct TIsShadingFunctor: TViewFunctor
+{
+  QString
+  virtual
+  get(VISU::Prs3d_i* thePrs3d,
+      SVTK_ViewWindow* theViewWindow,
+      VISU_Actor* theActor)
+  {
+    if(VISU_ScalarMapAct* anActor = dynamic_cast<VISU_ScalarMapAct*>(theActor))
+      return anActor->IsShading() ? "1" : "0";
+    return QString();
+  }
+};
+
+QString VisuGUI_Selection::isShading( const int ind ) const
+{
+  return TPopupDispatcher<TIsShadingFunctor>()(myModule, entry(ind));
 }
-#undef ABS
-
-
-void VisuGUI_SelectionDlg::clearFields() {
-  int aType = myWidgetStack->id(myWidgetStack->visibleWidget());
-  switch (aType) {
-  case 0:
-    myXValLbl->setText( "" );
-    myYValLbl->setText( "" );
-    myZValLbl->setText( "" );
-    myIValLbl->setText( "-" );//ENK: 23.11.2006 - PAL13176
-    myJValLbl->setText( "-" );//ENK: 23.11.2006 - PAL13176
-    myKValLbl->setText( "-" );//ENK: 23.11.2006 - PAL13176
-    myScalarValLbl->setText("");
-    myVectorValLbl->setText("");
-    break;
-  case 1:
-    myCellScalarValLbl->setText("");
-    myCellVectorValLbl->setText("");
-    myListPoints->setNumRows(0);
-    break;
-  case 2:
-    myXPosLbl->setText("");
-    myYPosLbl->setText("");
-    myZPosLbl->setText("");
-    myDXLbl->setText("");
-    myDYLbl->setText("");
-    myDZLbl->setText("");
+
+
+//----------------------------------------------------------------------------
+struct TIsScalarMapActFunctor: TViewFunctor
+{
+  QString
+  virtual
+  get(VISU::Prs3d_i* thePrs3d,
+      SVTK_ViewWindow* theViewWindow,
+      VISU_Actor* theActor)
+  {
+    return dynamic_cast<VISU_ScalarMapAct*>(theActor)? "1" : "0";
   }
+};
+
+
+//---------------------------------------------------------------
+QString VisuGUI_Selection::isScalarMapAct( const int ind ) const
+{
+  return TPopupDispatcher<TIsScalarMapActFunctor>()(myModule, entry(ind));
 }
 
-typedef  vtkIdType (VISU_PipeLine::* TGetVTKIdMethod)(vtkIdType theID);
 
-bool onIdEdit (const QString& theText,
-               TGetVTKIdMethod theMethod,
-               bool theIsCell,
-              const SalomeApp_Module* theModule,
-               QLabel* theMeshName,
-               QString theValue,
-               QLabel* theFieldName)
+//----------------------------------------------------------------------------
+bool VisuGUI_Selection::isVisuComponent( const int ind ) const
+{
+  SalomeApp_Study* study = GetStudy();
+  if ( !study )
+    return false;
+  
+  _PTR(SObject) obj = study->studyDS()->FindObjectID( (const char*)entry( ind ).toLatin1() );
+  if ( !obj )
+    return false;
+  CORBA::Object_var anObj = VISU::ClientSObjectToObject( obj );
+  if( CORBA::is_nil( anObj ) )
+    return false;
+
+  return dynamic_cast<VISU::VISU_Gen_i*>( VISU::GetServant( anObj ).in() );
+}
+
+//---------------------------------------------------------------------------
+bool VisuGUI_Selection::findDisplayedCurves( const int ind, bool findHidden ) const
 {
-  SVTK_ViewWindow* aViewWindow = VISU::GetActiveViewWindow<SVTK_ViewWindow>(theModule);
-  if (!aViewWindow) 
+  // findHidden == false - find at least one Visible curve in the childs of ind
+  // findHidden == true - find at least one Hidden curve in the childs of ind
+  SalomeApp_Study* aSStudy = GetStudy();
+  if ( !aSStudy )
     return false;
-  SVTK_Selector* aSelector = aViewWindow->GetSelector();
-
-  _PTR(SObject) aSObject;
-  VISU::Prs3d_i* aPrs3d = NULL;
-  Handle(SALOME_InteractiveObject) anIO;
-
-  VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects(theModule);
-  if(aSelectionInfo.size() == 1){
-    // Get selected SObject
-    VISU::TSelectionItem aSelectionItem = aSelectionInfo.front();
-    VISU::TObjectInfo anObjectInfo = aSelectionItem.myObjectInfo;
-    aPrs3d = GetPrs3dFromBase(anObjectInfo.myBase);
-    if(aPrs3d){
-      anIO = aSelectionItem.myIO;
-      aSObject = anObjectInfo.mySObject;
+
+  QString entryId;
+  _PTR(Study) aStudy = GetCStudy( aSStudy );
+  if ( aStudy ){
+    _PTR(SObject) SO = aStudy->FindObjectID( (const char*) entry( ind ).toLatin1() );
+    if ( SO ){
+      for ( _PTR(ChildIterator) Iter = aStudy->NewChildIterator( SO ); Iter->More(); Iter->Next() ) {
+       _PTR(SObject) refSO;
+       if ( Iter->Value()->ReferencedObject(refSO) )
+         entryId = refSO->GetID().c_str();
+       else
+         entryId = Iter->Value()->GetID().c_str();
+
+       LightApp_Displayer* displayer = LightApp_Displayer::FindDisplayer( myModule->moduleName(), false );
+       if ( displayer->IsDisplayed( entryId ) && findHidden == false )
+         return true;
+       else if ( !displayer->IsDisplayed( entryId ) && findHidden == true )
+         return true;
+      }
     }
   }
-  if (aPrs3d) {
-    int anObjId = theText.toInt();
-    VISU_PipeLine* aPipeLine = aPrs3d->GetPipeLine();
-    int aVTKId = (aPipeLine->*theMethod)(anObjId);
-    if(aVTKId < 0)
-      return false;
-
-    TColStd_MapOfInteger newIndices;
-    newIndices.Add(anObjId);
-    aSelector->AddOrRemoveIndex(anIO, newIndices, false);
-    aViewWindow->highlight(anIO, true, true);
-
-    return true;
-
-  } else {
-    theMeshName->setText(theValue);
-    theFieldName->setText("");
-  }
   return false;
 }
 
-void VisuGUI_SelectionDlg::onPointIdEdit (const QString& theText)
-{
-  if (myFl) return;
-  TGetVTKIdMethod aMethod = &VISU_PipeLine::GetNodeVTKID;
-  bool anIsSelected = onIdEdit(theText,
-                              aMethod,
-                              false,
-                              myModule,
-                              myMeshName,
-                              tr("WRN_NO_AVAILABLE_DATA"),
-                              myFieldName);
-  if (anIsSelected)
-    // as selection manager doesn't send signal currentSelectionChanged()
-    onSelectionEvent();
-  else
-    clearFields();
+//---------------------------------------------------------------------------
+bool VisuGUI_Selection::hasCurves( const int ind ) const
+{
+  SalomeApp_Study* aSStudy = GetStudy();
+  if ( !aSStudy )
+    return false;
+
+  QString entryId;
+  _PTR(Study) aStudy = GetCStudy( aSStudy );
+  if ( aStudy ){
+    _PTR(SObject) SO = aStudy->FindObjectID( (const char*) entry( ind ).toLatin1() );
+    if ( SO ){
+      for ( _PTR(ChildIterator) Iter = aStudy->NewChildIterator( SO ); Iter->More(); Iter->Next() ) {
+       _PTR(SObject) refSO;
+       if ( Iter->Value()->ReferencedObject(refSO) ) {
+         // reference on curve
+       }
+       else
+         refSO = Iter->Value();
+
+       CORBA::Object_var aCORBAObject = VISU::ClientSObjectToObject(refSO);
+       if(!CORBA::is_nil(aCORBAObject)){
+         PortableServer::ServantBase_var aServant = VISU::GetServant(aCORBAObject);
+         if(dynamic_cast<VISU::Curve_i*>(aServant.in()))
+           return true;
+       }
+      }
+    }
+  }
+  return false;
 }
 
-void VisuGUI_SelectionDlg::onCellIdEdit (const QString& theText)
-{
-  if (myFl) return;
-  TGetVTKIdMethod aMethod = &VISU_PipeLine::GetElemVTKID;
-  bool anIsSelected = onIdEdit(theText,
-                              aMethod,
-                              true,
-                              myModule,
-                              myMeshName,
-                              tr("WRN_NO_AVAILABLE_DATA"),
-                              myFieldName);
-  if (anIsSelected)
-    // as selection manager doesn't send signal currentSelectionChanged()
-    onSelectionEvent();
-  else
-    clearFields();
+//---------------------------------------------------------------------------
+bool VisuGUI_Selection::Plot2dViewerType( const int ind ) const
+{
+  QString viewerType;
+  SUIT_Session* session = SUIT_Session::session();
+  if(  SUIT_Application* app = session->activeApplication() )
+    if( LightApp_Application* sApp = dynamic_cast<LightApp_Application*>( app ) )
+      if( SUIT_ViewManager* vman = sApp->activeViewManager() )
+        if( SUIT_ViewModel* vmod = vman->getViewModel() ) {
+          viewerType = vmod->getType();
+         if (viewerType ==SPlot2d_Viewer::Type())
+           return true;
+       }
+  return false;
 }
 
-void VisuGUI_SelectionDlg::onHelp()
-{
-  QString aHelpFileName = "selection_info_page.html";
-  LightApp_Application* app = (LightApp_Application*)(SUIT_Session::session()->activeApplication());
-  if (app)
-    app->onHelpContextModule(myModule ? app->moduleName(myModule->moduleName()) : QString(""), aHelpFileName);
-  else {
-    QString platform;
-#ifdef WIN32
-    platform = "winapplication";
-#else
-    platform = "application";
-#endif
-    SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"),
-                          QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
-                          arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
-                          QObject::tr("BUT_OK"));
+//----------------------------------------------------------------------------
+struct TIsValuesLabeled : TViewFunctor
+{
+  QString
+  virtual
+  get(VISU::Prs3d_i* thePrs3d,
+      SVTK_ViewWindow* theViewWindow,
+      VISU_Actor* theActor)
+  {
+    return theActor && theActor->GetValuesLabeled() ? "true" : "false";
   }
+};
+
+QString VisuGUI_Selection::isValuesLabeled( const int ind ) const
+{
+  return TPopupDispatcher<TIsValuesLabeled>()(myModule, entry(ind));
 }
 
-void VisuGUI_SelectionDlg::keyPressEvent( QKeyEvent* e )
+//----------------------------------------------------------------------------
+struct TIsScalarBarVisibleFunctor: TViewFunctor
 {
-  QDialog::keyPressEvent( e );
-  if ( e->isAccepted() )
-    return;
+  QString
+  virtual
+  get(VISU::Prs3d_i* thePrs3d,
+      SVTK_ViewWindow* theViewWindow,
+      VISU_Actor* theActor)
+  {
+    if(VISU_ScalarMapAct* anActor = dynamic_cast<VISU_ScalarMapAct*>(theActor))
+      return anActor->GetBarVisibility() ? "true" : "false";
+    return QString();
+  }
+};
 
-  if ( e->key() == Key_F1 )
-    {
-      e->accept();
-      onHelp();
-    }
+bool VisuGUI_Selection::isScalarBarVisible( const int ind ) const
+{
+  return TPopupDispatcher<TIsScalarBarVisibleFunctor>()(myModule, entry(ind)) == "true";
 }
index ef118b82bbd301f900f2c205d47a2de22c5f86de..dede2e8f268629fb7073aca02a3812ee8aa0d0c0 100644 (file)
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_Selection.h
-//  Author : Laurent CORNABE & Hubert ROLLAND 
+//  Author : Sergey Anikin 
 //  Module : VISU
-//  $Header$
-
+//
 #ifndef VisuGUI_Selection_HeaderFile
 #define VisuGUI_Selection_HeaderFile
 
-#include <qdialog.h>
+#include <LightApp_Selection.h>
 
-class QLabel;
-class QWidgetStack;
-class QVBox;
-class QLineEdit;
-class QTable;
-class LightApp_SelectionMgr;
-class SalomeApp_Application;
-class SalomeApp_Module;
+//////////////////////////////////////////////////
+// Class: VisuGUI_Selection
+//////////////////////////////////////////////////
 
-class VisuGUI_SelectionDlg: public QDialog {
-  Q_OBJECT
+class SalomeApp_Module;
+class SalomeApp_Study;
 
+class VisuGUI_Selection : public LightApp_Selection
+{
 public:
-  VisuGUI_SelectionDlg (const SalomeApp_Module* theModule);
-  virtual ~VisuGUI_SelectionDlg ();
+  VisuGUI_Selection( SalomeApp_Module* theModule )
+    : LightApp_Selection(), myModule( theModule ) {};
+  virtual ~VisuGUI_Selection() {};
 
-private:
-  void keyPressEvent( QKeyEvent* e );
-
-protected:
-  void closeEvent (QCloseEvent* theEvent);
-
-private slots:
-  void onSelectionChange (int theId);
-  void onSelectionEvent ();
-  void onPointIdEdit (const QString& theText);
-  void onCellIdEdit (const QString& theText);
-  void onHelp();
-
- private:
-  void clearFields ();
+  virtual QVariant parameter( const int, const QString& ) const;
 
-  QLabel* myMeshName;
-  QLabel* myFieldName;
-
-  QWidgetStack* myWidgetStack;
-  QVBox* myPointsPane;
-  QWidget* myCellsPane;
-  QLabel* myXValLbl;
-  QLabel* myYValLbl;
-  QLabel* myZValLbl;
-  //ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
-  QLabel* myIValLbl; //!< used for structured mesh selection
-  QLabel* myJValLbl; //!< used for structured mesh selection
-  QLabel* myKValLbl; //!< used for structured mesh selection
-  //ENK: 23.11.2006
+private:
+  QString          type( const int ) const;
+  QString          nbComponents( const int ) const;
+  QString          medEntity( const int ) const;
+  QString          medSource( const int ) const;
+  QString          nbTimeStamps( const int ) const;
+  QString          representation( const int ) const;
+  int              nbChildren( const int ) const;
+  int              nbNamedChildren( const int ) const;
+  QString          isVisible( const int ) const;
+  QString          isShrunk( const int ) const;
+  bool             hasActor( const int ) const;
+  QString          isShading( const int ) const;
+  QString          isScalarMapAct( const int ) const;
+  bool             isScalarBarVisible( const int ) const;
+  bool             isVisuComponent( const int ) const;
+  QString          isValuesLabeled( const int ) const;
+
+  QString          fullResolution( const int ) const;
+  QString          mediumResolution( const int ) const;
+  QString          lowResolution( const int ) const;
+  QString          resolutionState( const int ) const;
 
-  QLineEdit* myIDValLbl;
-  QLabel* myScalarValLbl;
-  QLabel* myVectorValLbl;
+private:
+  bool             findDisplayedCurves( const int, bool ) const;
+  bool             hasCurves( const int ) const;
+  bool             Plot2dViewerType( const int ) const;
 
-  QTable* myListPoints;
-  QLineEdit* myCellIDValLbl;
-  QLabel* myCellScalarValLbl;
-  QLabel* myCellVectorValLbl;
+  int              nbChild( const int, const bool ) const;
+  SalomeApp_Study* GetStudy() const;
 
-  QVBox* myActorsPane;
-  QLabel* myXPosLbl;
-  QLabel* myYPosLbl;
-  QLabel* myZPosLbl;
-  QLabel* myDXLbl;
-  QLabel* myDYLbl;
-  QLabel* myDZLbl;
+  QString          resolutions( const int ) const;
+  QString          resolution( const int, char theResoltuion ) const;
 
-  const SalomeApp_Module* myModule;
-  LightApp_SelectionMgr* mySelectionMgr;
-  bool myFl;
+private:
+  SalomeApp_Module* myModule;
 };
 
 #endif
diff --git a/src/VISUGUI/VisuGUI_SelectionPanel.cxx b/src/VISUGUI/VisuGUI_SelectionPanel.cxx
new file mode 100644 (file)
index 0000000..cb8531a
--- /dev/null
@@ -0,0 +1,1130 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
+//  File   : VisuGUI_SelectionPanel.h
+//  Author : Laurent CORNABE & Hubert ROLLAND
+//  Module : VISU
+//  $Header$
+//
+#include "VisuGUI_SelectionPanel.h"
+
+#include "VisuGUI.h"
+#include "VisuGUI_Tools.h"
+#include "VisuGUI_ViewTools.h"
+#include "VisuGUI_SelectionPrefDlg.h"
+#include "VisuGUI_GaussPointsSelectionPane.h"
+#include "VisuGUI_FindPane.h"
+
+#include "VISU_Event.h"
+#include "VISU_ConvertorUtils.hxx"
+
+#include "VISU_Actor.h"
+#include "VISU_PrsObject_i.hh"
+#include "VISU_Prs3d_i.hh"
+#include "VISU_PipeLine.hxx"
+#include "VISU_GaussPointsPL.hxx"
+#include "VISU_GaussPtsSettings.h"
+#include "VISU_PickingSettings.h"
+
+#include "SalomeApp_Study.h"
+#include "SalomeApp_Application.h"
+#include "LightApp_Application.h"
+#include "LightApp_SelectionMgr.h"
+#include "LightApp_VTKSelector.h"
+
+#include "SUIT_Desktop.h"
+#include "SUIT_MessageBox.h"
+#include "SUIT_ViewWindow.h"
+#include "SUIT_Session.h"
+#include "SUIT_ResourceMgr.h"
+
+#include "SALOME_ListIO.hxx"
+#include "SALOME_ListIteratorOfListIO.hxx"
+
+#include "SVTK_ViewWindow.h"
+#include "SVTK_Selector.h"
+#include "SVTK_RenderWindowInteractor.h"
+
+#include "utilities.h"
+
+// OCCT Includes
+#include <TColStd_IndexedMapOfInteger.hxx>
+#include <TColStd_MapOfInteger.hxx>
+
+// QT Includes
+#include <QLabel>
+#include <QSpinBox>
+#include <QListWidget>
+#include <QLayout>
+#include <QButtonGroup>
+#include <QRadioButton>
+#include <QValidator>
+#include <QPushButton>
+#include <QToolButton>
+#include <QGroupBox>
+#include <QLineEdit>
+#include <QValidator>
+#include <QTableWidget>
+#include <QVBoxLayout>
+#include <QHBoxLayout>
+#include <QKeyEvent>
+#include <QHeaderView>
+#include <QTabWidget>
+#include <QScrollArea>
+#include <QStackedWidget>
+
+// VTK Includes
+#include <vtkDataSetMapper.h>
+#include <vtkDataSet.h>
+#include <vtkPointData.h>
+#include <vtkCellData.h>
+#include <vtkCell.h>
+
+// STL Includes
+#include <map>
+
+using namespace std;
+
+class CustomIntValidator: public QIntValidator
+{
+public:
+  CustomIntValidator( QObject * theParent ):
+    QIntValidator( 0, VTK_LARGE_ID, theParent )
+  {}
+
+  virtual 
+  State
+  validate( QString& theInput, int& thePos ) const
+  {
+    if( theInput.isEmpty() )
+      return QValidator::Acceptable;
+
+    return QIntValidator::validate( theInput, thePos );
+  }
+};
+
+VisuGUI_SelectionPanel::VisuGUI_SelectionPanel( const VisuGUI* theModule, QWidget* theParent ) :
+  VisuGUI_Panel( tr("WINDOW_TITLE" ), theModule, theParent, CloseBtn | HelpBtn ),
+  myPreferencesDlg( 0 )
+{
+  QVBoxLayout* TopLayout = new QVBoxLayout ( mainFrame() );
+
+  QWidget* aNamePane = new QWidget (mainFrame());
+  QGridLayout* aNameLay = new QGridLayout (aNamePane);
+
+  QLabel* aMeshLbl = new QLabel (tr("MESH_NAME_LBL"), aNamePane);
+  myMeshName = new QLabel (aNamePane);
+  myMeshName->setText(tr("WRN_NO_AVAILABLE_DATA"));
+
+  QLabel* aFieldLbl = new QLabel (tr("FIELD_NAME_LBL"), aNamePane);
+  myFieldName = new QLabel (aNamePane);
+
+  aNameLay->addWidget(aMeshLbl, 0, 0);
+  aNameLay->addWidget(myMeshName, 0, 1);
+  aNameLay->addWidget(aFieldLbl, 1, 0);
+  aNameLay->addWidget(myFieldName, 1, 1);
+
+  TopLayout->addWidget(aNamePane);
+
+  myTabWidget = new QTabWidget( mainFrame() );
+
+  QTableWidget* aTable;
+
+  // Fill column data
+  myColumnData.insert( CellStdCell,  QList<int>() << Cell << Scalar << Vector );
+  myColumnData.insert( CellStdPoint, QList<int>() << Point << X << Y << Z << I << J << K << Scalar << Vector );
+  myColumnData.insert( PointStd,     QList<int>() << Point << X << Y << Z << I << J << K << Scalar << Vector );
+  myColumnData.insert( CellElno,     QList<int>() << Cell << Point << X << Y << Z << I << J << K << Scalar << Vector );
+  myColumnData.insert( PointElno,    QList<int>() << Point << X << Y << Z << I << J << K << Cell << Scalar << Vector );
+
+  QMap<int, QString> aColumnHeaders;
+  aColumnHeaders.insert( Cell, tr( "CELL_ID_HDR" ) );
+  aColumnHeaders.insert( Point, tr( "POINT_ID_HDR" ) );
+  aColumnHeaders.insert( X, "X" );
+  aColumnHeaders.insert( Y, "Y" );
+  aColumnHeaders.insert( Z, "Z" );
+  aColumnHeaders.insert( I, "I" );
+  aColumnHeaders.insert( J, "J" );
+  aColumnHeaders.insert( K, "K" );
+  aColumnHeaders.insert( Scalar, tr( "DATA_SCALAR_HDR" ) );
+  aColumnHeaders.insert( Vector, tr( "DATA_VECTOR_HDR" ) );
+
+  // Create Points pane
+  myPointsPane = new QWidget (mainFrame());
+  QVBoxLayout* aVBoxLayout = new QVBoxLayout(myPointsPane);
+
+  QGroupBox* aDataGrp = new QGroupBox ( tr("POINT_DATA_TITLE"), myPointsPane);
+  QGridLayout* aGridLay = new QGridLayout (aDataGrp);
+
+  aGridLay->addWidget( new QLabel (tr("DATA_ID_LBL"), aDataGrp), 0, 0 );
+  
+  myIDValLbl = new QLineEdit ("", aDataGrp);
+  aGridLay->addWidget( myIDValLbl, 0, 1 );
+  CustomIntValidator* aIntValidator = new CustomIntValidator (myIDValLbl);
+  aIntValidator->setBottom(0);
+  myIDValLbl->setValidator(aIntValidator);
+  connect(myIDValLbl, SIGNAL(returnPressed()), this, SLOT(onPointIdEdit()));
+
+  QToolButton* anIDBtn = new QToolButton( aDataGrp );
+  anIDBtn->setIcon( VISU::GetResourceMgr()->loadPixmap("VISU", tr( "ICON_OK" ) ) );
+  aGridLay->addWidget( anIDBtn, 0, 2 );
+  connect(anIDBtn, SIGNAL(clicked()), this, SLOT(onPointIdEdit()));
+
+  aVBoxLayout->addWidget( aDataGrp );
+
+  myPointStackedWg = new QStackedWidget( myPointsPane );
+
+  aTable = new QTableWidget( myPointStackedWg );
+  myPointStackedWg->insertWidget( StdMesh, aTable );
+  myTables.insert( PointStd, aTable );
+
+  aTable = new QTableWidget( myPointStackedWg );
+  myPointStackedWg->insertWidget( ElnoMesh, aTable );
+  myTables.insert( PointElno, aTable );
+
+  aVBoxLayout->addWidget(myPointStackedWg, 1, 0);
+
+  // Create Cells pane
+  myCellsPane = new QWidget (mainFrame());
+  QGridLayout* aCellLayout = new QGridLayout (myCellsPane);
+  aCellLayout->setRowStretch(0, 0);
+  aCellLayout->setRowStretch(1, 1);
+
+  QGroupBox* aCellGrp = new QGroupBox( tr("CELL_DATA_TITLE"), myCellsPane);
+  aGridLay = new QGridLayout (aCellGrp);
+
+  aGridLay->addWidget( new QLabel (tr("DATA_ID_LBL"), aCellGrp), 0, 0);
+  myCellIDValLbl = new QLineEdit ("", aCellGrp);
+  myCellIDValLbl->setValidator(aIntValidator);
+  aGridLay->addWidget( myCellIDValLbl, 0, 1);
+  connect(myCellIDValLbl, SIGNAL(returnPressed()), this, SLOT(onCellIdEdit()));
+
+  QToolButton* aCellIDBtn = new QToolButton( aDataGrp );
+  aCellIDBtn->setIcon( VISU::GetResourceMgr()->loadPixmap("VISU", tr( "ICON_OK" ) ) );
+  aGridLay->addWidget( aCellIDBtn, 0, 2 );
+  connect(aCellIDBtn, SIGNAL(clicked()), this, SLOT(onCellIdEdit()));
+
+  aCellLayout->addWidget(aCellGrp, 0, 0);
+
+  myCellStackedWg = new QStackedWidget( myCellsPane );
+
+  QTabWidget* aStdTabWidget = new QTabWidget( myCellStackedWg );
+  myCellStackedWg->insertWidget( StdMesh, aStdTabWidget );
+
+  aTable = new QTableWidget( aStdTabWidget );
+  aStdTabWidget->addTab( aTable, tr("CELL_INFO") );
+  myTables.insert( CellStdCell, aTable );
+
+  aTable = new QTableWidget( aStdTabWidget );
+  aStdTabWidget->addTab( aTable, tr("POINT_INFO") );
+  myTables.insert( CellStdPoint, aTable );
+
+  aTable = new QTableWidget( myCellStackedWg );
+  myCellStackedWg->insertWidget( ElnoMesh, aTable );
+  myTables.insert( CellElno, aTable );
+
+  aCellLayout->addWidget(myCellStackedWg, 1, 0);
+
+  // Common operations for all tables
+  QMap<int, QTableWidget*>::iterator it = myTables.begin(), itEnd = myTables.end();
+  for( ; it != itEnd; ++it )
+  {
+    aTable = it.value();
+    if( !aTable )
+      continue;
+
+    int aTableId = it.key();
+    if( !myColumnData.contains( aTableId ) )
+      continue;
+
+    QStringList aHorizontalHeaderLabels;
+    QList<int> aColumns = myColumnData[ aTableId ];
+    QListIterator<int> aColumnIter( aColumns );
+    while( aColumnIter.hasNext() )
+    {
+      int aColumnId = aColumnIter.next();
+      if( aColumnId >= 0 && aColumnId < aColumnHeaders.size() )
+       aHorizontalHeaderLabels << aColumnHeaders[ aColumnId ];
+    }
+    aTable->setColumnCount( aHorizontalHeaderLabels.size() );
+    aTable->setHorizontalHeaderLabels( aHorizontalHeaderLabels );
+
+    aTable->setEditTriggers( QAbstractItemView::NoEditTriggers );
+    aTable->setSelectionMode( QAbstractItemView::SingleSelection );
+    aTable->resizeColumnsToContents();
+
+    connect( aTable, SIGNAL( doubleClicked( const QModelIndex& ) ),
+            this, SLOT( onDoubleClicked( const QModelIndex& ) ) );
+  }
+
+  // Actor Pane
+  myActorsPane = new QWidget (mainFrame());
+  aVBoxLayout = new QVBoxLayout(myActorsPane);  
+
+  QGroupBox* aPosGrp = new QGroupBox (tr("ACTOR_DATA_POSITION_TITLE"), myActorsPane);
+  aGridLay = new QGridLayout (aPosGrp);
+  aGridLay->addWidget( new QLabel ("X:", aPosGrp), 0, 0);
+  myXPosLbl = new QLabel ("0", aPosGrp);
+  aGridLay->addWidget( myXPosLbl, 0, 1);
+  aGridLay->addWidget( new QLabel ("Y:", aPosGrp), 1, 0);
+  myYPosLbl = new QLabel ("0", aPosGrp);
+  aGridLay->addWidget( myYPosLbl, 1, 1);
+  aGridLay->addWidget( new QLabel ("Z:", aPosGrp), 2, 0);
+  myZPosLbl = new QLabel ("0", aPosGrp);
+  aGridLay->addWidget( myZPosLbl, 2, 1);
+
+  aVBoxLayout->addWidget( aPosGrp );
+
+  QGroupBox* aSizeGrp = new QGroupBox ( tr("ACTOR_DATA_SIZE_TITLE"), myActorsPane);
+  aGridLay = new QGridLayout (aSizeGrp);
+  aGridLay->addWidget( new QLabel ("dX:", aSizeGrp ), 0, 0);
+  myDXLbl = new QLabel ("0", aSizeGrp);
+  aGridLay->addWidget( myDXLbl, 0, 1);
+  aGridLay->addWidget( new QLabel ("dY:", aSizeGrp ), 1, 0);
+  myDYLbl = new QLabel ("0", aSizeGrp);
+  aGridLay->addWidget( myDYLbl, 1, 1);
+  aGridLay->addWidget( new QLabel ("dZ:", aSizeGrp ), 2, 0);
+  myDZLbl = new QLabel ("0", aSizeGrp);
+  aGridLay->addWidget( myDZLbl, 2, 1);
+
+  aVBoxLayout->addWidget( aSizeGrp );
+  aVBoxLayout->addStretch();
+
+  // Gauss Points Pane
+  myGaussPointsPane = new VisuGUI_GaussPointsSelectionPane( myModule, mainFrame() );
+
+  // Add panes to tab widget
+  myTabWidget->addTab(myActorsPane, tr("MODE_ACTOR"));
+  myTabWidget->addTab(myCellsPane,  tr("MODE_CELL"));
+  myTabWidget->addTab(myPointsPane, tr("MODE_POINT"));
+  myTabWidget->addTab(myGaussPointsPane, tr("MODE_GAUSS_POINT"));
+
+  connect( myTabWidget, SIGNAL( currentChanged( int ) ), this, SLOT( onSelectionModeChanged( int ) ) );
+
+  TopLayout->addWidget( myTabWidget );
+
+  // Find Pane
+  myFindPane = new VisuGUI_FindPane( mainFrame() );
+
+  connect( myFindPane, SIGNAL( idChanged( int, int ) ), this, SLOT( onIdChanged( int, int ) ) );
+
+  TopLayout->addWidget( myFindPane );
+
+  // Preferences button
+  QPushButton* aPrefBtn = new QPushButton( tr( "SELECTION_PREFERENCES" ),  mainFrame() );
+  connect( aPrefBtn, SIGNAL( clicked() ), this, SLOT( onPreferences() ) );
+
+  TopLayout->addWidget( aPrefBtn );
+
+  SalomeApp_Application* anApp =
+    dynamic_cast<SalomeApp_Application*>( SUIT_Session::session()->activeApplication() );
+  LightApp_SelectionMgr* aSelectionMgr = anApp->selectionMgr();
+  connect( aSelectionMgr, SIGNAL( currentSelectionChanged() ), this, SLOT( onSelectionEvent() ) );
+
+  connect( this, SIGNAL( selectionModeChanged( int ) ), myModule, SLOT( OnSwitchSelectionMode( int ) ) );
+
+  myFl = false;
+
+  // Activate Points pane
+  myTabWidget->setCurrentWidget(myActorsPane);
+  if (SVTK_ViewWindow* aViewWindow = VISU::GetActiveViewWindow<SVTK_ViewWindow>(myModule))
+    aViewWindow->SetSelectionMode(ActorSelection);
+  onSelectionEvent();
+}
+
+VisuGUI_SelectionPanel::~VisuGUI_SelectionPanel()
+{
+  if( myPreferencesDlg )
+  {
+    delete myPreferencesDlg;
+    myPreferencesDlg = 0;
+  }
+}
+
+int VisuGUI_SelectionPanel::column( int theTableId, int theColumnId )
+{
+  if( !myColumnData.contains( theTableId ) )
+    return -1;
+
+  const QList<int>& aColumnList = myColumnData[ theTableId ];
+  return aColumnList.indexOf( theColumnId );
+}
+
+QVariant VisuGUI_SelectionPanel::data( int theTableId, int theRow, int theColumnId )
+{
+  if( !myTables.contains( theTableId ) )
+    return QVariant();
+
+  if( QTableWidget* aTable = myTables[ theTableId ] )
+    if( QAbstractItemModel* aModel = aTable->model() )
+      return aModel->data( aModel->index( theRow, column( theTableId, theColumnId ) ) );
+
+  return QVariant();
+}
+
+void VisuGUI_SelectionPanel::setData( int theTableId, int theRow, int theColumnId, const QVariant& theValue )
+{
+  if( !myTables.contains( theTableId ) )
+    return;
+
+  if( QTableWidget* aTable = myTables[ theTableId ] )
+    if( QAbstractItemModel* aModel = aTable->model() )
+      aModel->setData( aModel->index( theRow, column( theTableId, theColumnId ) ), theValue );
+}
+
+void VisuGUI_SelectionPanel::setRowSpan( int theTableId, int theRow, int theColumnId, int theRowSpan )
+{
+  if( !myTables.contains( theTableId ) )
+    return;
+
+  if( QTableWidget* aTable = myTables[ theTableId ] )
+    aTable->setSpan( theRow, column( theTableId, theColumnId ), theRowSpan, 1 );
+}
+
+VisuGUI_SelectionPrefDlg* VisuGUI_SelectionPanel::preferencesDlg()
+{
+  if( !myPreferencesDlg )
+    myPreferencesDlg = new VisuGUI_SelectionPrefDlg();
+  myPreferencesDlg->update();
+  return myPreferencesDlg;
+}
+
+void VisuGUI_SelectionPanel::setSelectionMode( int theId )
+{
+  myTabWidget->setCurrentIndex( theId );
+}
+
+void VisuGUI_SelectionPanel::onSelectionModeChanged( int theId )
+{
+  SVTK_ViewWindow* aViewWindow = VISU::GetActiveViewWindow<SVTK_ViewWindow>(myModule);
+  if (!aViewWindow) return;
+
+  switch (theId) {
+  case 0: // Actor
+    aViewWindow->SetSelectionMode(ActorSelection);
+    onSelectionEvent();
+    break;
+  case 1: // Cells
+    aViewWindow->SetSelectionMode(CellSelection);
+    onCellIdEdit();
+    break;
+  case 2: // Points
+    aViewWindow->SetSelectionMode(NodeSelection);
+    onPointIdEdit();
+    break;
+  case 3: // Gauss Points
+    aViewWindow->SetSelectionMode(GaussPointSelection);
+    myGaussPointsPane->update();
+    onSelectionEvent();
+    break;
+  }
+
+  myFindPane->setSelectionMode( aViewWindow->SelectionMode() );
+
+  emit selectionModeChanged( theId );
+}
+
+void VisuGUI_SelectionPanel::showEvent( QShowEvent* theEvent )
+{
+  VisuGUI_Panel::showEvent(theEvent);
+}
+
+void VisuGUI_SelectionPanel::closeEvent( QCloseEvent* theEvent )
+{
+  onClose();
+  VisuGUI_Panel::closeEvent(theEvent);
+}
+
+template<class TData> QString getScalar(TData* theData, int theId){
+  if (vtkDataArray *aScalar = theData->GetScalars()){
+    vtkFloatingPointType aVal = aScalar->GetTuple1(theId);
+    return QString::number(aVal);
+  } else {
+    return QString("No data");
+  }
+}
+
+template<class TData> QString getVector(TData* theData, int theId){
+  if (vtkDataArray *aVector = theData->GetVectors()) {
+    vtkFloatingPointType *aVal = aVector->GetTuple3(theId);
+    return QString("%1; %2; %3").arg(aVal[0]).arg(aVal[1]).arg(aVal[2]);
+  } else {
+    return QString("No data");
+  }
+}
+
+template<class TData> TValueData getValueData( TPointID thePointVTKID, VISU_Actor* theActor, TData* theData )
+{
+  TValueData aValueData;
+
+  aValueData.Scalar = getScalar( theData, thePointVTKID );
+  aValueData.Vector = getVector( theData, thePointVTKID );
+
+  return aValueData;
+}
+
+TPointData getPointData( TPointID thePointVTKID, VISU_Actor* theActor, const VISU::PIDMapper& theMapper,
+                        bool theIsValueData )
+{
+  TPointData aPointData;
+
+  vtkDataSet* aDataSet = theActor->GetMapper()->GetInput();
+
+  vtkFloatingPointType* aCoord = aDataSet->GetPoint( thePointVTKID );
+  aPointData.X = aCoord[0];
+  aPointData.Y = aCoord[1];
+  aPointData.Z = aCoord[2];
+
+  TPointID aPointObjID = theActor->GetNodeObjId( thePointVTKID );
+  VISU::TStructuredId aVec = theMapper->GetIndexesOfNode( aPointObjID );
+  aPointData.I = aVec[0];
+  aPointData.J = aVec[1];
+  aPointData.K = aVec[2];
+
+  if( theIsValueData )
+    aPointData.ValueData = getValueData( thePointVTKID, theActor, aDataSet->GetPointData() );
+
+  return aPointData;
+}
+
+void VisuGUI_SelectionPanel::onSelectionEvent() {
+  SVTK_ViewWindow* aViewWindow = VISU::GetActiveViewWindow<SVTK_ViewWindow>(myModule);
+  if (!aViewWindow)
+    return;
+
+  switch (aViewWindow->SelectionMode()) {
+  case ActorSelection:
+  case CellSelection:
+  case NodeSelection:
+  case GaussPointSelection:
+    break;
+  default:
+    close();
+    return;
+  }
+
+  if (myFl)
+    return;
+  myFl = true;
+
+  int aType = myTabWidget->currentIndex();
+
+  SVTK_RenderWindowInteractor* anInteractor = aViewWindow->GetInteractor();
+  myGaussPointsPane->setInteractor(anInteractor);
+
+  SVTK_Selector* aSelector = aViewWindow->GetSelector();
+
+  _PTR(SObject) aSObject;
+  VISU::Prs3d_i* aPrs3d = NULL;
+  Handle(SALOME_InteractiveObject) anIO;
+
+  VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects(myModule);
+  if(aSelectionInfo.size() == 1){
+    // Get selected SObject
+    VISU::TSelectionItem aSelectionItem = aSelectionInfo.front();
+    VISU::TObjectInfo anObjectInfo = aSelectionItem.myObjectInfo;
+    aPrs3d = GetPrs3dFromBase(anObjectInfo.myBase);
+    if(aPrs3d){
+      anIO = aSelectionItem.myIO;
+      aSObject = anObjectInfo.mySObject;
+    }
+  }
+  
+  clearFields();
+
+  if (aPrs3d) {
+    QString aMeshName("NULL"), aFieldName("NULL");
+    if (aSObject) {
+      VISU::Storable::TRestoringMap aMap = VISU::Storable::GetStorableMap(aSObject);
+      if (!aMap.empty()) {
+       aMeshName  = VISU::Storable::FindValue(aMap, "myMeshName");
+       aFieldName = VISU::Storable::FindValue(aMap, "myFieldName");
+      }
+    }
+
+    myMeshName ->setText((aMeshName  == "NULL") ? QString("No name") : aMeshName);
+    myFieldName->setText((aFieldName == "NULL") ? QString("No name") : aFieldName);
+
+    VISU_Actor* anVISUActor =
+      VISU::FindActor(VISU::GetAppStudy(myModule), aViewWindow, aSObject->GetID().c_str());
+    myFindPane->setActor( anVISUActor );
+    if (anVISUActor) {
+      vtkFloatingPointType aCoord[6];
+      anVISUActor->GetBounds(aCoord);
+      myXPosLbl->setText(QString::number( aCoord[0] ));
+      myYPosLbl->setText(QString::number( aCoord[2] ));
+      myZPosLbl->setText(QString::number( aCoord[4] ));
+
+      myDXLbl->setText(QString::number( fabs(aCoord[1]-aCoord[0]) ));
+      myDYLbl->setText(QString::number( fabs(aCoord[3]-aCoord[2]) ));
+      myDZLbl->setText(QString::number( fabs(aCoord[5]-aCoord[4]) ));
+
+      TColStd_IndexedMapOfInteger aMapIndex;
+      aSelector->GetIndex(anIO, aMapIndex);
+      bool aSingleSelection = aMapIndex.Extent() == 1;
+
+      vtkDataSet* aDataSet = anVISUActor->GetMapper()->GetInput();
+      bool isElno = VISU::IsElnoData( aDataSet );
+
+      const VISU::PIDMapper& aMapper = aPrs3d->GetPipeLine()->GetIDMapper();
+      bool isStructured = aMapper->IsStructured();
+
+      TCellToPointDataMap aCellToPointDataMap;
+      TPointToCellDataMap aPointToCellDataMap;
+      TPointDataMap aGlobalPointDataMap;
+
+      for (int ind = 1; ind <= aMapIndex.Extent(); ind++) {
+        int anID = aMapIndex(ind);
+
+        switch( aType )
+       {
+          case 1:
+         {
+           if( aSingleSelection )
+             myCellIDValLbl->setText( QString::number( anID ) );
+
+            vtkCell* aCell = anVISUActor->GetElemCell( anID );
+           int aCellVTKID = anVISUActor->GetElemVTKID( anID );
+            if( !aCell || aCellVTKID < 0 )
+             break;
+
+           int aNbOfPoints = aCell->GetNumberOfPoints();
+           if( aNbOfPoints < 1 )
+             break;
+
+           TPointDataMap aPointDataMap;
+
+           vtkIdList* aPointList = aCell->GetPointIds();
+           for( int i = 0; i < aNbOfPoints; i++ )
+           {
+             int aPointVTKID = aPointList->GetId(i);
+
+             TPointID aPointID = anVISUActor->GetNodeObjId( aPointVTKID );
+             TPointData aPointData = getPointData( aPointVTKID, anVISUActor, aMapper, true );
+             aPointDataMap[ aPointID ] = aPointData;
+             aGlobalPointDataMap[ aPointID ] = aPointData;
+           }
+
+           TCellToPointData aCellToPointData;
+           aCellToPointData.CellData = getValueData( aCellVTKID, anVISUActor, aDataSet->GetCellData() );
+           aCellToPointData.PointDataMap = aPointDataMap;
+           aCellToPointDataMap[ anID ] = aCellToPointData;
+           break;
+          }
+          case 2:
+          {
+           if( aSingleSelection )
+             myIDValLbl->setText( QString::number( anID ) );
+
+           int aPointVTKID = anVISUActor->GetNodeVTKID( anID );
+           if( aPointVTKID < 0 )
+             break;
+
+           TCellDataMap aCellDataMap;
+
+           VISU::TElnoPoints anElnoPoints = VISU::GetElnoPoints( aDataSet, anID );
+           VISU::TElnoPoints::iterator anElnoIter = anElnoPoints.begin();
+           for( ; anElnoIter != anElnoPoints.end(); anElnoIter++ )
+           {
+             VISU::TElnoPointID anElnoPointID = *anElnoIter;
+             VISU::TVTKPointID aVTKPointID = anElnoPointID.first;
+             VISU::TVTKCellID aVTKCellID = anElnoPointID.second;
+
+             TCellID aCellID = anVISUActor->GetElemObjId( aVTKCellID );
+             TValueData aValueData = getValueData( aVTKPointID, anVISUActor, aDataSet->GetPointData() );
+             aCellDataMap[ aCellID ] = aValueData;
+           }
+
+           TPointToCellData aPointToCellData;
+           aPointToCellData.PointData = getPointData( aPointVTKID, anVISUActor, aMapper, !isElno );
+           aPointToCellData.CellDataMap = aCellDataMap;
+           aPointToCellDataMap[ anID ] = aPointToCellData;
+           break;
+          }
+        }
+      }
+
+      // Fill tables
+      QList<int> aTableIds;
+      switch( aType )
+      {
+        case 1:
+         if( isElno )
+           aTableIds.append( CellElno );
+         else
+         {
+           aTableIds.append( CellStdCell );
+           aTableIds.append( CellStdPoint );
+         }
+         break;
+        case 2:
+         aTableIds.append( isElno ? PointElno : PointStd );
+         break;
+      }
+
+      QListIterator<int> aTableIter( aTableIds );
+      while( aTableIter.hasNext() )
+      {
+       int aTableId = aTableIter.next();
+       if( !myTables.contains( aTableId ) )
+         continue;
+
+       QTableWidget* aTable = myTables[ aTableId ];
+       if( !aTable )
+         continue;
+
+       int aRow = -1;
+       switch( aTableId )
+       {
+         case CellStdPoint:
+         {
+           int aRowCount = aGlobalPointDataMap.size();
+           aTable->setRowCount( aRowCount );
+
+           TPointDataMap::const_iterator aPointIter = aGlobalPointDataMap.begin();
+           for( ; aPointIter != aGlobalPointDataMap.end(); aPointIter++ )
+           {
+             aRow++;
+             TPointID aPointID = aPointIter.key();
+             const TPointData& aPointData = aPointIter.value();
+             const TValueData& aValueData = aPointData.ValueData;
+
+             setData( aTableId, aRow, Point, aPointID );
+             setData( aTableId, aRow, X, aPointData.X );
+             setData( aTableId, aRow, Y, aPointData.Y );
+             setData( aTableId, aRow, Z, aPointData.Z );
+             setData( aTableId, aRow, I, aPointData.I );
+             setData( aTableId, aRow, J, aPointData.J );
+             setData( aTableId, aRow, K, aPointData.K );
+             setData( aTableId, aRow, Scalar, aValueData.Scalar );
+             setData( aTableId, aRow, Vector, aValueData.Vector );
+           }
+           break;
+         }
+         case CellStdCell:
+         case CellElno:
+         {
+           int aRowCount = 0;
+           TCellToPointDataMap::const_iterator aCellToPointIter = aCellToPointDataMap.begin();
+           for( ; aCellToPointIter != aCellToPointDataMap.end(); aCellToPointIter++ )
+           {
+             if( aTableId == CellStdCell )
+               aRowCount++;
+             else if( aTableId == CellElno )
+             {
+               const TCellToPointData& aCellToPointData = aCellToPointIter.value();
+               const TPointDataMap& aPointDataMap = aCellToPointData.PointDataMap;
+               int aNbPoints = aPointDataMap.size();
+
+               aRowCount += aNbPoints;
+             }
+           }
+           aTable->setRowCount( aRowCount );
+
+           aCellToPointIter = aCellToPointDataMap.begin();
+           for( ; aCellToPointIter != aCellToPointDataMap.end(); aCellToPointIter++ )
+           {
+             aRow++;
+
+             TCellID aCellID = aCellToPointIter.key();
+             const TCellToPointData& aCellToPointData = aCellToPointIter.value();
+             const TValueData& aCellData = aCellToPointData.CellData;
+
+             setData( aTableId, aRow, Cell, aCellID );
+             if( aTableId == CellStdCell )
+             {
+               setData( aTableId, aRow, Scalar, aCellData.Scalar );
+               setData( aTableId, aRow, Vector, aCellData.Vector );
+             }
+             else if( aTableId == CellElno )
+             {
+               const TPointDataMap& aPointDataMap = aCellToPointData.PointDataMap;
+               int aNbPoints = aPointDataMap.size();
+               if( aNbPoints > 1 )
+                 setRowSpan( aTableId, aRow, Cell, aNbPoints );
+
+               TPointDataMap::const_iterator aPointIter = aPointDataMap.begin();
+               for( aRow--; aPointIter != aPointDataMap.end(); aPointIter++ )
+               {
+                 aRow++;
+                 TPointID aPointID = aPointIter.key();
+                 const TPointData& aPointData = aPointIter.value();
+                 const TValueData& aValueData = aPointData.ValueData;
+
+                 setData( aTableId, aRow, Point, aPointID );
+                 setData( aTableId, aRow, X, aPointData.X );
+                 setData( aTableId, aRow, Y, aPointData.Y );
+                 setData( aTableId, aRow, Z, aPointData.Z );
+                 setData( aTableId, aRow, I, aPointData.I );
+                 setData( aTableId, aRow, J, aPointData.J );
+                 setData( aTableId, aRow, K, aPointData.K );
+                 setData( aTableId, aRow, Scalar, aValueData.Scalar );
+                 setData( aTableId, aRow, Vector, aValueData.Vector );
+               }
+             }
+           }
+           break;
+         }
+         case PointStd:
+         case PointElno:
+         {
+           int aRowCount = 0;
+           TPointToCellDataMap::const_iterator aPointToCellIter = aPointToCellDataMap.begin();
+           for( ; aPointToCellIter != aPointToCellDataMap.end(); aPointToCellIter++ )
+           {
+             const TPointToCellData& aPointToCellData = aPointToCellIter.value();
+             const TCellDataMap& aCellDataMap = aPointToCellData.CellDataMap;
+             int aNbCells = aCellDataMap.size();
+             if( aNbCells > 1 )
+               aRowCount += aNbCells;
+             else
+               aRowCount++;          
+           }
+           aTable->setRowCount( aRowCount );
+
+           aPointToCellIter = aPointToCellDataMap.begin();
+           for( ; aPointToCellIter != aPointToCellDataMap.end(); aPointToCellIter++ )
+           {
+             aRow++;
+
+             TPointID aPointID = aPointToCellIter.key();
+             const TPointToCellData& aPointToCellData = aPointToCellIter.value();
+             const TPointData& aPointData = aPointToCellData.PointData;
+
+             setData( aTableId, aRow, Point, aPointID );
+             setData( aTableId, aRow, X, aPointData.X );
+             setData( aTableId, aRow, Y, aPointData.Y );
+             setData( aTableId, aRow, Z, aPointData.Z );
+             setData( aTableId, aRow, I, aPointData.I );
+             setData( aTableId, aRow, J, aPointData.J );
+             setData( aTableId, aRow, K, aPointData.K );
+
+             if( aTableId == PointElno )
+             {
+               const TCellDataMap& aCellDataMap = aPointToCellData.CellDataMap;
+               int aNbCells = aCellDataMap.size();
+               if( aNbCells > 1 )
+                 for( int aColumnId = Point; aColumnId <= K; aColumnId++ )
+                   setRowSpan( aTableId, aRow, aColumnId, aNbCells );
+
+               TCellDataMap::const_iterator aCellIter = aCellDataMap.begin();
+               for( aRow--; aCellIter != aCellDataMap.end(); aCellIter++ )
+               {
+                 aRow++;
+                 TCellID aCellID = aCellIter.key();
+                 const TValueData& aCellData = aCellIter.value();
+
+                 setData( aTableId, aRow, Cell, aCellID );
+                 setData( aTableId, aRow, Scalar, aCellData.Scalar );
+                 setData( aTableId, aRow, Vector, aCellData.Vector );
+               }
+             }
+             else
+             {
+               const TValueData& aValueData = aPointData.ValueData;
+               setData( aTableId, aRow, Scalar, aValueData.Scalar );
+               setData( aTableId, aRow, Vector, aValueData.Vector );
+             }
+           }
+           break;
+         }
+       }
+
+       for( int aCol = column( aTableId, I ), aLastCol = column( aTableId, K ); aCol <= aLastCol; aCol++ )
+         if( aCol != -1 )
+           aTable->setColumnHidden( aCol, !isStructured );
+       aTable->resizeColumnsToContents();
+      }
+
+      int stackId = isElno ? ElnoMesh : StdMesh;
+      QStackedWidget* aStackedWg = aType == 1 ? myCellStackedWg : aType == 2 ? myPointStackedWg : 0;
+      if( aStackedWg )
+       aStackedWg->setCurrentIndex( stackId );
+    }
+  }
+  myFl = false;
+}
+
+void VisuGUI_SelectionPanel::clearFields() {
+  int aType = myTabWidget->currentIndex();
+  switch (aType) {
+  case 0:
+    myXPosLbl->setText("");
+    myYPosLbl->setText("");
+    myZPosLbl->setText("");
+    myDXLbl->setText("");
+    myDYLbl->setText("");
+    myDZLbl->setText("");
+    break;
+  case 1:
+    myCellIDValLbl->setText( "" );
+    break;
+  case 2:
+    myIDValLbl->setText( "" );
+    break;
+  }
+
+  QMap<int, QTableWidget*>::iterator it = myTables.begin(), itEnd = myTables.end();
+  for( ; it != itEnd; ++it )
+    if( QTableWidget* aTable = *it )
+    {
+      aTable->clearSpans();
+      aTable->setRowCount(0);
+      aTable->resizeColumnsToContents();
+    }
+}
+
+typedef  vtkIdType (VISU_PipeLine::* TGetVTKIdMethod)(vtkIdType theID);
+
+bool onIdEdit (const QString& theText,
+               TGetVTKIdMethod theMethod,
+               bool theIsCell,
+              const SalomeApp_Module* theModule,
+               QLabel* theMeshName,
+               QString theValue,
+               QLabel* theFieldName)
+{
+  SVTK_ViewWindow* aViewWindow = VISU::GetActiveViewWindow<SVTK_ViewWindow>(theModule);
+  if (!aViewWindow) 
+    return false;
+  SVTK_Selector* aSelector = aViewWindow->GetSelector();
+
+  _PTR(SObject) aSObject;
+  VISU::Prs3d_i* aPrs3d = NULL;
+  Handle(SALOME_InteractiveObject) anIO;
+
+  VISU::TSelectionInfo aSelectionInfo = VISU::GetSelectedObjects(theModule);
+  if(aSelectionInfo.size() == 1){
+    // Get selected SObject
+    VISU::TSelectionItem aSelectionItem = aSelectionInfo.front();
+    VISU::TObjectInfo anObjectInfo = aSelectionItem.myObjectInfo;
+    aPrs3d = GetPrs3dFromBase(anObjectInfo.myBase);
+    if(aPrs3d){
+      anIO = aSelectionItem.myIO;
+      aSObject = anObjectInfo.mySObject;
+    }
+  }
+  if (aPrs3d) {
+    bool ok = false;
+    int anObjId = theText.toInt( &ok );
+    if( !ok )
+      anObjId = -1;
+
+    VISU_PipeLine* aPipeLine = aPrs3d->GetPipeLine();
+
+    if( dynamic_cast<VISU_GaussPointsPL*>( aPipeLine ) )
+      return false;
+
+    if( anObjId < 0 )
+      aSelector->ClearIndex();
+    else
+    {
+      int aVTKId = (aPipeLine->*theMethod)(anObjId);
+      if(aVTKId < 0)
+       return false;
+
+      TColStd_MapOfInteger newIndices;
+      newIndices.Add(anObjId);
+      aSelector->AddOrRemoveIndex(anIO, newIndices, false);
+    }
+
+    aViewWindow->highlight(anIO, true, true);
+
+    SVTK_RenderWindowInteractor* anInteractor = aViewWindow->GetInteractor();
+    VISU_Actor* anActor = SVTK::Find<VISU_Actor>(anInteractor->getRenderer()->GetActors(),
+                                                SVTK::TIsSameIObject<VISU_Actor>( anIO ));
+    anActor->Highlight( anIO );
+
+    return true;
+
+  } else {
+    theMeshName->setText(theValue);
+    theFieldName->setText("");
+  }
+  return false;
+}
+
+void VisuGUI_SelectionPanel::onPointIdEdit ()
+{
+  if (myFl) return;
+  TGetVTKIdMethod aMethod = &VISU_PipeLine::GetNodeVTKID;
+  bool anIsSelected = onIdEdit(myIDValLbl->text(),
+                              aMethod,
+                              false,
+                              myModule,
+                              myMeshName,
+                              tr("WRN_NO_AVAILABLE_DATA"),
+                              myFieldName);
+  if (anIsSelected)
+    // as selection manager doesn't send signal currentSelectionChanged()
+    onSelectionEvent();
+  else
+    clearFields();
+}
+
+void VisuGUI_SelectionPanel::onCellIdEdit ()
+{
+  if (myFl) return;
+  TGetVTKIdMethod aMethod = &VISU_PipeLine::GetElemVTKID;
+  bool anIsSelected = onIdEdit(myCellIDValLbl->text(),
+                              aMethod,
+                              true,
+                              myModule,
+                              myMeshName,
+                              tr("WRN_NO_AVAILABLE_DATA"),
+                              myFieldName);
+  if (anIsSelected)
+    // as selection manager doesn't send signal currentSelectionChanged()
+    onSelectionEvent();
+  else
+    clearFields();
+}
+
+void VisuGUI_SelectionPanel::onDoubleClicked( const QModelIndex& theIndex )
+{
+  QTableWidget* aTable = dynamic_cast<QTableWidget*>( sender() );
+  if( !aTable )
+    return;
+
+  int aTableId = myTables.key( aTable, -1 );
+  if( aTableId == -1 )
+    return;
+
+  int aRow = theIndex.row(), aCol = theIndex.column();
+  const QList<int>& aColumnList = myColumnData[ aTableId ];
+
+  if( aCol >= aColumnList.size() )
+    return;
+
+  int aColumnId = aColumnList[ aCol ];
+
+  bool anIsCellSelection = true;
+  switch( aColumnId )
+  {
+    case Cell:
+      anIsCellSelection = true;
+      break;
+    case Point:
+    case X:
+    case Y:
+    case Z:
+    case I:
+    case J:
+    case K:
+      anIsCellSelection = false;
+      break;
+    case Scalar:
+    case Vector:
+      anIsCellSelection = aTableId == CellStdCell || aTableId == PointElno;
+      break;
+    default:
+      return;
+  }
+
+  int anIdColumnId = anIsCellSelection ? Cell : Point;
+  QVariant anId = data( aTableId, aRow, anIdColumnId );
+
+  bool ok = false;
+  anId.toInt( &ok );
+  if( !ok )
+    return;
+
+  if( anIsCellSelection )
+  {
+    setSelectionMode( 1 );
+    myCellIDValLbl->setText( anId.toString() );
+    onCellIdEdit();
+  }
+  else
+  {
+    setSelectionMode( 2 );
+    myIDValLbl->setText( anId.toString() );
+    onPointIdEdit();
+  }
+}
+
+void VisuGUI_SelectionPanel::onIdChanged( int theFirstId, int theSecondId )
+{
+  int aType = myTabWidget->currentIndex();
+  if( aType == 1 )
+  {
+    myCellIDValLbl->setText( theFirstId < 0 ? "" : QString::number( theFirstId ) );
+    onCellIdEdit();
+  }
+  else if( aType == 2 )
+  {
+    myIDValLbl->setText( theFirstId < 0 ? "" : QString::number( theFirstId ) );
+    onPointIdEdit();
+  }
+  else if( aType == 3 )
+    myGaussPointsPane->setIds( theFirstId, theSecondId );
+}
+
+void VisuGUI_SelectionPanel::onPreferences()
+{
+  preferencesDlg()->exec();
+}
+
+void VisuGUI_SelectionPanel::onApply()
+{
+  VisuGUI_Panel::onApply();
+}
+
+void VisuGUI_SelectionPanel::onClose()
+{
+  close();
+  VisuGUI_Panel::onClose();
+}
+
+void VisuGUI_SelectionPanel::onHelp()
+{
+  QString aHelpFileName = "selection_info_page.html";
+  LightApp_Application* app = (LightApp_Application*)(SUIT_Session::session()->activeApplication());
+  if (app)
+    app->onHelpContextModule(myModule ? app->moduleName(myModule->moduleName()) : QString(""), aHelpFileName);
+  else {
+    QString platform;
+#ifdef WIN32
+    platform = "winapplication";
+#else
+    platform = "application";
+#endif
+    SUIT_MessageBox::warning(0, QObject::tr("WRN_WARNING"),
+                             QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                             arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName) );
+  }
+
+  VisuGUI_Panel::onHelp();
+}
+
+void VisuGUI_SelectionPanel::keyPressEvent( QKeyEvent* e )
+{
+  VisuGUI_Panel::keyPressEvent( e );
+  if ( e->isAccepted() )
+    return;
+
+  if ( e->key() == Qt::Key_F1 )
+    {
+      e->accept();
+      onHelp();
+    }
+}
diff --git a/src/VISUGUI/VisuGUI_SelectionPanel.h b/src/VISUGUI/VisuGUI_SelectionPanel.h
new file mode 100644 (file)
index 0000000..3d5faf1
--- /dev/null
@@ -0,0 +1,168 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
+//  File   : VisuGUI_SelectionPanel.h
+//  Author : Laurent CORNABE & Hubert ROLLAND 
+//  Module : VISU
+//  $Header$
+//
+#ifndef VISUGUI_SELECTIONPANEL_H
+#define VISUGUI_SELECTIONPANEL_H
+
+#include <VisuGUI_Panel.h>
+
+#include <QMap>
+
+#include <vtkSystemIncludes.h>
+
+class QLabel;
+class QLineEdit;
+class QModelIndex;
+class QStackedWidget;
+class QTableWidget;
+class QTabWidget;
+
+class VisuGUI_GaussPointsSelectionPane;
+class VisuGUI_FindPane;
+class VisuGUI_SelectionPrefDlg;
+
+typedef vtkIdType TPointID;
+typedef vtkIdType TCellID;
+
+struct TValueData
+{
+  QString Scalar;
+  QString Vector;
+};
+
+struct TPointData
+{
+  vtkFloatingPointType X;
+  vtkFloatingPointType Y;
+  vtkFloatingPointType Z;
+  vtkIdType I;
+  vtkIdType J;
+  vtkIdType K;
+  TValueData ValueData;
+};
+
+typedef QMap<TPointID, TPointData> TPointDataMap;
+typedef QMap<TCellID,  TValueData> TCellDataMap;
+
+struct TCellToPointData
+{
+  TValueData CellData;
+  TPointDataMap PointDataMap;
+};
+
+struct TPointToCellData
+{
+  TPointData PointData;
+  TCellDataMap CellDataMap;
+};
+  
+typedef QMap<TCellID,  TCellToPointData> TCellToPointDataMap;
+typedef QMap<TPointID, TPointToCellData> TPointToCellDataMap;
+
+class VisuGUI_SelectionPanel: public VisuGUI_Panel
+{
+  Q_OBJECT
+
+  enum MeshType { StdMesh = 0, ElnoMesh };
+  enum TableId { CellStdCell = 0, CellStdPoint, PointStd, CellElno, PointElno };
+  enum ColumnId { Cell = 0, Point, X, Y, Z, I, J, K, Scalar, Vector };
+
+public:
+  VisuGUI_SelectionPanel( const VisuGUI* theModule, QWidget* theParent = 0 );
+  virtual ~VisuGUI_SelectionPanel ();
+
+public:
+  void                      setSelectionMode( int theId );
+
+protected:
+  virtual void              keyPressEvent( QKeyEvent* theEvent );
+  virtual void              showEvent( QShowEvent* theEvent );
+  virtual void              closeEvent( QCloseEvent* theEvent );
+
+private slots:
+  virtual void              onApply();
+  virtual void              onClose();
+  virtual void              onHelp();
+
+  void                      onPreferences();
+
+  void                      onSelectionModeChanged( int theId );
+  void                      onSelectionEvent();
+  void                      onPointIdEdit();
+  void                      onCellIdEdit();
+  void                      onDoubleClicked( const QModelIndex& theIndex );
+
+  void                      onIdChanged( int theFirstId, int theSecondId );
+
+signals:
+  void                      selectionModeChanged( int );
+
+private:
+  VisuGUI_SelectionPrefDlg* preferencesDlg();
+  void                      clearFields();
+
+  int                       column( int theTableId, int theColumnId );
+  QVariant                  data( int theTableId, int theRow, int theColumnId );
+  void                      setData( int theTableId, int theRow, int theColumnId, const QVariant& theValue );
+  void                      setRowSpan( int theTableId, int theRow, int theColumnId, int theRowSpan );
+
+private:
+  QLabel*                   myMeshName;
+  QLabel*                   myFieldName;
+
+  QTabWidget*               myTabWidget;
+  QWidget*                  myPointsPane;
+  QWidget*                  myCellsPane;
+
+  QLineEdit*                myIDValLbl;
+  QStackedWidget*           myPointStackedWg;
+
+  QLineEdit*                myCellIDValLbl;
+  QStackedWidget*           myCellStackedWg;
+
+  QMap<int, QTableWidget*>  myTables;
+
+  QWidget*                  myActorsPane;
+  QLabel*                   myXPosLbl;
+  QLabel*                   myYPosLbl;
+  QLabel*                   myZPosLbl;
+  QLabel*                   myDXLbl;
+  QLabel*                   myDYLbl;
+  QLabel*                   myDZLbl;
+
+  VisuGUI_GaussPointsSelectionPane* myGaussPointsPane;
+
+  VisuGUI_FindPane*         myFindPane;
+
+  VisuGUI_SelectionPrefDlg* myPreferencesDlg;
+
+  bool                      myFl;
+
+  QMap< int, QList<int> >   myColumnData;
+};
+
+#endif
diff --git a/src/VISUGUI/VisuGUI_SelectionPrefDlg.cxx b/src/VISUGUI/VisuGUI_SelectionPrefDlg.cxx
new file mode 100644 (file)
index 0000000..6022b9b
--- /dev/null
@@ -0,0 +1,300 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  File   : VisuGUI_SelectionPrefDlg.cxx
+//  Author : Oleg UVAROV
+//  Module : SALOME
+//
+#include "VisuGUI_SelectionPrefDlg.h"
+#include "VisuGUI.h"
+
+#include "VISU_PickingSettings.h"
+
+#include <SUIT_Session.h>
+#include <SUIT_Application.h>
+#include <SUIT_Desktop.h>
+#include <SUIT_Tools.h>
+#include <SUIT_MessageBox.h>
+#include <SUIT_ResourceMgr.h>
+
+#include <LightApp_Application.h>
+
+#include <QtxColorButton.h>
+#include <QtxDoubleSpinBox.h>
+#include <QtxIntSpinBox.h>
+
+#include <QComboBox>
+#include <QGroupBox>
+#include <QKeyEvent>
+#include <QLabel>
+#include <QLayout>
+#include <QLineEdit>
+#include <QPushButton>
+
+using namespace std;
+
+/*!
+  Constructor
+*/
+VisuGUI_SelectionPrefDlg::VisuGUI_SelectionPrefDlg( QWidget* parent )
+    : QDialog( parent ? parent : SUIT_Session::session()->activeApplication()->desktop(), 
+              Qt::WindowTitleHint | Qt::WindowSystemMenuHint )
+{
+  setWindowTitle( tr("TLT_SELECTION_PREFERENCES") );
+  setSizeGripEnabled( TRUE );
+  setModal( true );
+
+  QVBoxLayout* topLayout = new QVBoxLayout( this );
+  topLayout->setMargin( 11 ); topLayout->setSpacing( 6 );
+
+  // Cursor (gauss points)
+  QGroupBox* CursorGroup = new QGroupBox( tr( "CURSOR_TITLE" ), this );
+  QGridLayout* CursorGroupLayout = new QGridLayout (CursorGroup);
+  CursorGroupLayout->setAlignment(Qt::AlignTop | Qt::AlignCenter);
+  CursorGroupLayout->setSpacing(6);
+  CursorGroupLayout->setMargin(11);
+
+  QLabel* CursorSizeLabel = new QLabel( tr( "CURSOR_SIZE" ), CursorGroup );
+  myCursorSizeSpinBox = new QtxDoubleSpinBox( 0, 1, 0.1, CursorGroup );
+  myCursorSizeSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+
+  QLabel* PyramidHeightLabel = new QLabel( tr( "PYRAMID_HEIGHT" ), CursorGroup );
+  double aHeightMin=1.e-7;
+  double aHeightMax=10.;
+  double aHeightStep=0.1;
+  myPyramidHeightSpinBox = new QtxDoubleSpinBox(aHeightMin, aHeightMax, aHeightStep, CursorGroup );
+  myPyramidHeightSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+  
+  QLabel* SelectionColorLabel = new QLabel( tr( "SELECTION_COLOR" ), CursorGroup );
+  mySelectionColorButton = new QtxColorButton( CursorGroup );
+  mySelectionColorButton->setColor( Qt::blue );
+
+  CursorGroupLayout->addWidget( CursorSizeLabel, 0, 0 );
+  CursorGroupLayout->addWidget( myCursorSizeSpinBox, 0, 1 );
+  CursorGroupLayout->addWidget( PyramidHeightLabel, 1, 0 );
+  CursorGroupLayout->addWidget( myPyramidHeightSpinBox, 1, 1 );
+  CursorGroupLayout->addWidget( SelectionColorLabel, 2, 0 );
+  CursorGroupLayout->addWidget( mySelectionColorButton, 2, 1 );
+
+  topLayout->addWidget( CursorGroup );
+
+  // Tolerance (gauss points)
+  QGroupBox* ToleranceGroup = new QGroupBox( tr( "TOLERANCE_TITLE" ), this );
+  QGridLayout* ToleranceGroupLayout = new QGridLayout (ToleranceGroup);
+  ToleranceGroupLayout->setAlignment(Qt::AlignTop | Qt::AlignCenter);
+  ToleranceGroupLayout->setSpacing(6);
+  ToleranceGroupLayout->setMargin(11);
+
+  QLabel* PointToleranceLabel = new QLabel( tr( "POINT_TOLERANCE" ), ToleranceGroup );
+  myPointToleranceSpinBox = new QtxDoubleSpinBox( 0.001, 10.0, 0.01, ToleranceGroup );
+  myPointToleranceSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+
+  ToleranceGroupLayout->addWidget( PointToleranceLabel, 0, 0 );
+  ToleranceGroupLayout->addWidget( myPointToleranceSpinBox, 0, 1 );
+
+  topLayout->addWidget( ToleranceGroup );
+
+  // Information window
+  myInfoWindowGroup = new QGroupBox( tr( "INFO_WINDOW_TITLE" ), this );
+  myInfoWindowGroup->setCheckable( true );
+
+  QGridLayout* InfoWindowGroupLayout = new QGridLayout (myInfoWindowGroup);
+  InfoWindowGroupLayout->setAlignment(Qt::AlignTop | Qt::AlignCenter);
+
+  QLabel* TransparencyLabel = new QLabel( tr( "TRANSPARENCY" ), myInfoWindowGroup );
+  myTransparencySpinBox = new QtxIntSpinBox( 0, 100, 10, myInfoWindowGroup );
+  myTransparencySpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+
+  InfoWindowGroupLayout->addWidget( TransparencyLabel, 0, 0 );
+  InfoWindowGroupLayout->addWidget( myTransparencySpinBox, 0, 1 );
+
+  QLabel* PositionLabel = new QLabel( tr( "POSITION" ), myInfoWindowGroup );
+  myPositionComboBox = new QComboBox( myInfoWindowGroup );
+  myPositionComboBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+
+  myPositionComboBox->addItem( tr( "BELOW_POINT" ) );
+  myPositionComboBox->addItem( tr( "TOP_LEFT_CORNER" ) );
+
+  InfoWindowGroupLayout->addWidget( TransparencyLabel, 0, 0 );
+  InfoWindowGroupLayout->addWidget( myTransparencySpinBox, 0, 1 );
+  InfoWindowGroupLayout->addWidget( PositionLabel, 1, 0 );
+  InfoWindowGroupLayout->addWidget( myPositionComboBox, 1, 1 );
+
+  topLayout->addWidget( myInfoWindowGroup );
+
+  // Movement of the camera
+  myCameraGroup = new QGroupBox( tr( "CAMERA_TITLE" ), this );
+  myCameraGroup->setCheckable( true );
+
+  QGridLayout* CameraGroupLayout = new QGridLayout (myCameraGroup);
+  CameraGroupLayout->setAlignment(Qt::AlignTop | Qt::AlignCenter);
+
+  QLabel* ZoomFactorLabel = new QLabel( tr( "ZOOM_FACTOR" ), myCameraGroup );
+  myZoomFactorSpinBox = new QtxDoubleSpinBox( 0.1, 10.0, 0.1, myCameraGroup );
+  myZoomFactorSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+
+  QLabel* StepNumberLabel = new QLabel( tr( "STEP_NUMBER" ), myCameraGroup );
+  StepNumberLabel->setToolTip( tr( "STEP_NUMBER_TIP" ) );
+  myStepNumberSpinBox = new QtxIntSpinBox( 1, 100, 1, myCameraGroup );
+  myStepNumberSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+
+  CameraGroupLayout->addWidget( ZoomFactorLabel, 0, 0 );
+  CameraGroupLayout->addWidget( myZoomFactorSpinBox, 0, 1 );
+  CameraGroupLayout->addWidget( StepNumberLabel, 1, 0 );
+  CameraGroupLayout->addWidget( myStepNumberSpinBox, 1, 1 );
+
+  topLayout->addWidget( myCameraGroup );
+
+  // Common buttons
+  QGroupBox* GroupButtons = new QGroupBox( this );
+  QHBoxLayout* GroupButtonsLayout = new QHBoxLayout( GroupButtons );
+  GroupButtonsLayout->setAlignment( Qt::AlignTop );
+  GroupButtonsLayout->setMargin( 11 ); GroupButtonsLayout->setSpacing( 6 );
+  
+  myButtonOk = new QPushButton( GroupButtons );
+  myButtonOk->setText( tr( "BUT_OK"  ) );
+  myButtonOk->setAutoDefault( TRUE ); myButtonOk->setDefault( TRUE );
+  GroupButtonsLayout->addWidget( myButtonOk );
+
+  myButtonApply = new QPushButton( GroupButtons );
+  myButtonApply->setText( tr( "BUT_APPLY"  ) );
+  myButtonApply->setAutoDefault( TRUE );
+  GroupButtonsLayout->addWidget( myButtonApply );
+
+  GroupButtonsLayout->addStretch();
+  
+  myButtonCancel = new QPushButton( GroupButtons );
+  myButtonCancel->setText( tr( "BUT_CANCEL"  ) );
+  myButtonCancel->setAutoDefault( TRUE );
+  GroupButtonsLayout->addWidget( myButtonCancel );
+
+  myButtonHelp = new QPushButton( GroupButtons );
+  myButtonHelp->setText( tr( "BUT_HELP"  ) );
+  myButtonHelp->setAutoDefault( TRUE );
+  GroupButtonsLayout->addWidget( myButtonHelp );
+  /***************************************************************/
+  
+  //topLayout->addWidget( GroupC1 );
+  topLayout->addWidget( GroupButtons );
+  
+  // signals and slots connections
+  connect( myButtonOk,     SIGNAL( clicked() ), this, SLOT( accept() ) );
+  connect( myButtonApply,  SIGNAL( clicked() ), this, SLOT( onApply() ) );
+  connect( myButtonCancel, SIGNAL( clicked() ), this, SLOT( reject() ) );
+  connect( myButtonHelp,   SIGNAL( clicked() ), this, SLOT( onHelp() ) );
+  
+  /* Move widget on the botton right corner of main widget */
+  SUIT_Tools::centerWidget( this, parent );
+}
+
+/*!
+  Destructor
+*/
+VisuGUI_SelectionPrefDlg::~VisuGUI_SelectionPrefDlg()
+{
+}
+
+void VisuGUI_SelectionPrefDlg::update()
+{
+  VISU_PickingSettings* aPickingSettings = VISU_PickingSettings::Get();
+
+  myCursorSizeSpinBox->setValue( aPickingSettings->GetCursorSize() );
+  myPyramidHeightSpinBox->setValue( aPickingSettings->GetPyramidHeight() );
+  myPointToleranceSpinBox->setValue( aPickingSettings->GetPointTolerance() );
+
+  vtkFloatingPointType* aColor = aPickingSettings->GetColor();
+  mySelectionColorButton->setColor( QColor( ( int )( aColor[0] * 255.0 ),
+                                           ( int )( aColor[1] * 255.0 ),
+                                           ( int )( aColor[2] * 255.0 ) ) );
+
+  myInfoWindowGroup->setChecked( aPickingSettings->GetInfoWindowEnabled() );
+  myTransparencySpinBox->setValue( int(aPickingSettings->GetInfoWindowTransparency() * 100.0) );
+  myPositionComboBox->setCurrentIndex( aPickingSettings->GetInfoWindowPosition() );
+  myCameraGroup->setChecked( aPickingSettings->GetCameraMovementEnabled() );
+  myZoomFactorSpinBox->setValue( aPickingSettings->GetZoomFactor() );
+  myStepNumberSpinBox->setValue( aPickingSettings->GetStepNumber() );
+}
+
+void VisuGUI_SelectionPrefDlg::accept()
+{
+  onApply();
+
+  QDialog::accept();
+}
+
+void VisuGUI_SelectionPrefDlg::onApply()
+{
+  VISU_PickingSettings* aPickingSettings = VISU_PickingSettings::Get();
+
+  aPickingSettings->SetCursorSize( myCursorSizeSpinBox->value() );
+  aPickingSettings->SetPyramidHeight( myPyramidHeightSpinBox->value() );
+  aPickingSettings->SetPointTolerance( myPointToleranceSpinBox->value() );
+
+  QColor aButtonColor = mySelectionColorButton->color();
+  vtkFloatingPointType aColor[3];
+  aColor[0] = aButtonColor.red() / 255.0;
+  aColor[1] = aButtonColor.green() / 255.0;
+  aColor[2] = aButtonColor.blue() / 255.0;
+  aPickingSettings->SetColor( aColor );
+
+  aPickingSettings->SetInfoWindowEnabled( myInfoWindowGroup->isChecked() );
+  aPickingSettings->SetInfoWindowTransparency( myTransparencySpinBox->value() / 100.0 );
+  aPickingSettings->SetInfoWindowPosition( myPositionComboBox->currentIndex() );
+  aPickingSettings->SetCameraMovementEnabled( myCameraGroup->isChecked() );
+  aPickingSettings->SetZoomFactor( myZoomFactorSpinBox->value() );
+  aPickingSettings->SetStepNumber( myStepNumberSpinBox->value() );
+
+  aPickingSettings->InvokeEvent( VISU::UpdatePickingSettingsEvent,NULL );
+}
+
+void VisuGUI_SelectionPrefDlg::onHelp()
+{
+  QString aHelpFileName = "selection_preferences_page.html";
+  LightApp_Application* app = (LightApp_Application*)(SUIT_Session::session()->activeApplication());
+  if (app) {
+    VisuGUI* aVisuGUI = dynamic_cast<VisuGUI*>( app->activeModule() );
+    app->onHelpContextModule(aVisuGUI ? app->moduleName(aVisuGUI->moduleName()) : QString(""), aHelpFileName);
+  }
+  else {
+    QString platform;
+#ifdef WIN32
+    platform = "winapplication";
+#else
+    platform = "application";
+#endif
+    SUIT_MessageBox::warning(0, QObject::tr("WRN_WARNING"),
+                             QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                             arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName) );
+  }
+}
+
+void VisuGUI_SelectionPrefDlg::keyPressEvent( QKeyEvent* e )
+{
+  QDialog::keyPressEvent( e );
+  if ( e->isAccepted() )
+    return;
+
+  if ( e->key() == Qt::Key_F1 )
+    {
+      e->accept();
+      onHelp();
+    }
+}
diff --git a/src/VISUGUI/VisuGUI_SelectionPrefDlg.h b/src/VISUGUI/VisuGUI_SelectionPrefDlg.h
new file mode 100644 (file)
index 0000000..fcae10c
--- /dev/null
@@ -0,0 +1,79 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  File   : VisuGUI_SelectionPrefDlg.cxx
+//  Author : Oleg UVAROV
+//  Module : SALOME
+//
+#ifndef VisuGUI_SELECTIONPREFDLG_H
+#define VisuGUI_SELECTIONPREFDLG_H
+
+#include <QDialog>
+
+class QComboBox;
+class QGroupBox;
+class QPushButton;
+
+class QtxColorButton;
+class QtxDoubleSpinBox;
+class QtxIntSpinBox;
+
+class VisuGUI_SelectionPrefDlg : public QDialog
+{ 
+  Q_OBJECT
+
+public:
+  VisuGUI_SelectionPrefDlg( QWidget* parent = 0 );
+  ~VisuGUI_SelectionPrefDlg();
+    
+public:
+  void                      update();
+
+private:
+  void                      keyPressEvent( QKeyEvent* e );
+    
+protected slots:
+  void                      accept();
+
+  void                      onApply();
+  void                      onHelp();
+  
+private:
+  QtxDoubleSpinBox*         myCursorSizeSpinBox;
+  QtxDoubleSpinBox*         myPyramidHeightSpinBox;
+  QtxColorButton*           mySelectionColorButton;
+  QtxDoubleSpinBox*         myPointToleranceSpinBox;
+
+  QGroupBox*                myInfoWindowGroup;
+  QtxIntSpinBox*            myTransparencySpinBox;
+  QComboBox*                myPositionComboBox;
+
+  QGroupBox*                myCameraGroup;
+  QtxDoubleSpinBox*         myZoomFactorSpinBox;
+  QtxIntSpinBox*            myStepNumberSpinBox;
+
+  QPushButton*              myButtonOk;
+  QPushButton*              myButtonApply;
+  QPushButton*              myButtonCancel;
+  QPushButton*              myButtonHelp;
+};
+
+#endif // VisuGUI_SELECTIONPREFDLG_H
index 495a45f831a240422f267276068e961bdc6bba08..36109750adfafa274f258b4a91d12fa7d6512ea4 100644 (file)
@@ -1,27 +1,29 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
 //  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VisuGUI_SetupPlot2dDlg.cxx
 //  Author : Vadim SANDLER
 //  Module : SALOME
 //  $Header$
-
+//
 #include "VisuGUI_SetupPlot2dDlg.h"
 #include "VisuGUI.h"
 #include "SPlot2d_Curve.h"
 
 #include "LightApp_Application.h"
 
+#include <QtxColorButton.h>
+
 #include <SALOMEDSClient_AttributeTableOfInteger.hxx>
 #include <SALOMEDSClient_AttributeTableOfReal.hxx>
 
-#include <qlabel.h>
-#include <qpushbutton.h>
-#include <qcheckbox.h>
-#include <qtoolbutton.h>
-#include <qcombobox.h>
-#include <qscrollview.h>
-#include <qlayout.h>
-#include <qcolordialog.h>
-#include <qspinbox.h>
+#include <QLabel>
+#include <QPushButton>
+#include <QCheckBox>
+#include <QToolButton>
+#include <QComboBox>
+#include <QScrollArea>
+#include <QLayout>
+#include <QColorDialog>
+#include <QSpinBox>
+#include <QKeyEvent>
+#include <QFrame>
 
 #include <vector>
 #include <string>
@@ -53,7 +59,7 @@
 
 using namespace std;
 
-#define DLG_SIZE_WIDTH    500
+#define DLG_SIZE_WIDTH    500 
 #define DLG_SIZE_HEIGHT   400
 #define MAX_LINE_WIDTH    100
 #define MARGIN_SIZE       11
@@ -63,28 +69,26 @@ using namespace std;
   Constructor
 */
 VisuGUI_SetupPlot2dDlg::VisuGUI_SetupPlot2dDlg( _PTR(SObject) object, QWidget* parent )
-    : QDialog( parent,
-              "VisuGUI_SetupPlot2dDlg",
-              true,
-              WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu )
+    : QDialog( parent, Qt::WindowTitleHint | Qt::WindowSystemMenuHint)
 {
-  setCaption( tr("TLT_SETUP_PLOT2D") );
+  setModal( true );
+  setWindowTitle( tr("TLT_SETUP_PLOT2D") );
   setSizeGripEnabled( TRUE );
-  QGridLayout* topLayout = new QGridLayout( this );
+  QGridLayout* topLayout = new QGridLayout( this ); 
   topLayout->setSpacing( SPACING_SIZE );
   topLayout->setMargin( MARGIN_SIZE );
 
-  myItems.setAutoDelete( false );
+  //myItems.setAutoDelete( false );
 
   myObject = object;
 
   /* Top scroll view */
-  myView = new QScrollView( this );
+  myView = new QScrollArea( this );
   QFrame* frame  = new QFrame( myView );
   frame->setFrameStyle( QFrame::Plain | QFrame::NoFrame );
-  QGridLayout* frameLayout = new QGridLayout( frame, 1, 12 );
+  QGridLayout* frameLayout = new QGridLayout( frame );
   frameLayout->setMargin( MARGIN_SIZE ); frameLayout->setSpacing( SPACING_SIZE );
-
+  
   QFrame* lin;
 
   QLabel* labAxis = new QLabel( tr( "AXIS_LBL" ),       frame );
@@ -92,11 +96,11 @@ VisuGUI_SetupPlot2dDlg::VisuGUI_SetupPlot2dDlg( _PTR(SObject) object, QWidget* p
   QLabel* labData = new QLabel( tr( "DATA_LBL" ),       frame );
   QLabel* labUnit = new QLabel( tr( "UNITS_LBL" ),      frame );
   QLabel* labAttr = new QLabel( tr( "ATTRIBUTES_LBL" ), frame );
-  labAxis->setAlignment( AlignCenter );
-  labAssigned->setAlignment( AlignCenter );
-  labData->setAlignment( AlignCenter );
-  labUnit->setAlignment( AlignCenter );
-  labAttr->setAlignment( AlignCenter );
+  labAxis->setAlignment( Qt::AlignCenter );
+  labAssigned->setAlignment( Qt::AlignCenter );
+  labData->setAlignment( Qt::AlignCenter );
+  labUnit->setAlignment( Qt::AlignCenter );
+  labAttr->setAlignment( Qt::AlignCenter );
   QFont font = labAxis->font(); font.setBold( true );
   labAxis->setFont( font );
   labAssigned->setFont( font );
@@ -104,7 +108,7 @@ VisuGUI_SetupPlot2dDlg::VisuGUI_SetupPlot2dDlg( _PTR(SObject) object, QWidget* p
   labUnit->setFont( font );
   labAttr->setFont( font );
 
-  frameLayout->addMultiCellWidget( labAxis, 0,  0, 0, 1 );
+  frameLayout->addWidget( labAxis, 0, 0, 1, 2 );
       lin = new QFrame( frame ); lin->setFrameStyle( QFrame::VLine | QFrame::Sunken );
       frameLayout->addWidget( lin,          0,     2 );
 
@@ -118,27 +122,27 @@ VisuGUI_SetupPlot2dDlg::VisuGUI_SetupPlot2dDlg( _PTR(SObject) object, QWidget* p
   frameLayout->addWidget( labUnit,          0,     7 );
       lin = new QFrame( frame ); lin->setFrameStyle( QFrame::VLine | QFrame::Sunken );
       frameLayout->addWidget( lin,          0,     8 );
-  frameLayout->addMultiCellWidget( labAttr, 0,  0, 9, 13 );
-  frameLayout->setColStretch(               14, 5 );
+  frameLayout->addWidget( labAttr, 0,  9, 1, 5 );
+  //frameLayout->setColStretch(               14, 5 );
   lin = new QFrame( frame ); lin->setFrameStyle( QFrame::HLine | QFrame::Sunken );
-  frameLayout->addMultiCellWidget( lin, 1, 1, 0, 14 );
+  frameLayout->addWidget( lin, 1, 0, 1, 15 );
 
   int row = 2;
   _PTR(GenericAttribute)        anAttr;
   _PTR(AttributeTableOfInteger) tblIntAttr;
   _PTR(AttributeTableOfReal)    tblRealAttr;
-
+  
   /* Try table of integer */
   if ( myObject->FindAttribute( anAttr, "AttributeTableOfInteger" ) ) {
     tblIntAttr = anAttr;
     if ( tblIntAttr ) {
       try {
-       int nbRows = tblIntAttr->GetNbRows() ;
+       int nbRows = tblIntAttr->GetNbRows() ; 
        vector<string> rowTitles = tblIntAttr->GetRowTitles();
        vector<string> rowUnits  = tblIntAttr->GetRowUnits();
        QStringList rows;
        for ( int i = 0; i < nbRows; i++ )
-         rows.append( rowTitles[i] );
+         rows.append( rowTitles[i].c_str() );
 
        for ( int i = 0; i < nbRows; i++ ) {
          VisuGUI_ItemContainer* item = new VisuGUI_ItemContainer( this );
@@ -174,12 +178,12 @@ VisuGUI_SetupPlot2dDlg::VisuGUI_SetupPlot2dDlg( _PTR(SObject) object, QWidget* p
     tblRealAttr = anAttr;
     if ( tblRealAttr ) {
       try {
-       int nbRows = tblRealAttr->GetNbRows();
+       int nbRows = tblRealAttr->GetNbRows() ; 
        vector<string> rowTitles = tblRealAttr->GetRowTitles();
        vector<string> rowUnits  = tblRealAttr->GetRowUnits();
        QStringList rows;
        for ( int i = 0; i < nbRows; i++ )
-         rows.append( rowTitles[i] );
+         rows.append( rowTitles[i].c_str() );
 
        for ( int i = 0; i < nbRows; i++ ) {
          VisuGUI_ItemContainer* item = new VisuGUI_ItemContainer( this );
@@ -211,30 +215,31 @@ VisuGUI_SetupPlot2dDlg::VisuGUI_SetupPlot2dDlg( _PTR(SObject) object, QWidget* p
     }
   }
   lin = new QFrame( frame ); lin->setFrameStyle( QFrame::VLine | QFrame::Sunken );
-  frameLayout->addMultiCellWidget( lin, 2, row+1, 2, 2 );
+  frameLayout->addWidget( lin, 2, 2, row, 1 );
   lin = new QFrame( frame ); lin->setFrameStyle( QFrame::VLine | QFrame::Sunken );
-  frameLayout->addMultiCellWidget( lin, 2, row+1, 4, 4 );
+  frameLayout->addWidget( lin, 2, 4, row, 1 );
   lin = new QFrame( frame ); lin->setFrameStyle( QFrame::VLine | QFrame::Sunken );
-  frameLayout->addMultiCellWidget( lin, 2, row+1, 6, 6 );
-  frameLayout->setRowStretch( row+1, 5 );
-
-  myView->addChild( frame, 0, 0 );
-  myView->setResizePolicy( QScrollView::AutoOneFit );
+  frameLayout->addWidget( lin, 2, 6, row, 1 );
+  //frameLayout->setRowStretch( row+1, 5 );
 
+  myView->setWidget( frame );
+  myView->setAlignment( Qt::AlignCenter );
+  myView->setWidgetResizable( true );
+  
   myView->setMinimumWidth( frame->sizeHint().width() + MARGIN_SIZE * 2 );
 
   /* OK/Cancel/Help buttons */
-  myOkBtn = new QPushButton( tr( "BUT_OK" ), this, "buttonOk" );
+  myOkBtn = new QPushButton( tr( "BUT_OK" ), this );
   myOkBtn->setAutoDefault( TRUE );
   myOkBtn->setDefault( TRUE );
-  myCancelBtn = new QPushButton( tr( "BUT_CANCEL" ), this, "buttonCancel" );
+  myCancelBtn = new QPushButton( tr( "BUT_CANCEL" ), this );
   myCancelBtn->setAutoDefault( TRUE );
-  myHelpBtn = new QPushButton( tr( "BUT_HELP" ), this, "buttonHelp" );
+  myHelpBtn = new QPushButton( tr( "BUT_HELP" ), this );
   myHelpBtn->setAutoDefault( TRUE );
 
-  topLayout->addMultiCellWidget( myView, 0, 0, 0, 3 );
+  topLayout->addWidget( myView, 0, 0, 1, 4 );
   topLayout->addWidget( myOkBtn, 1, 0 );
-  topLayout->setColStretch( 1, 5 );
+  //topLayout->setColStretch( 1, 5 );
   topLayout->addWidget( myCancelBtn, 1, 2 );
   topLayout->addWidget( myHelpBtn, 1, 3 );
 
@@ -257,8 +262,8 @@ VisuGUI_SetupPlot2dDlg::~VisuGUI_SetupPlot2dDlg()
 /*!
   Gets curves info ( indexes of row data in the table for horizontal and verical axes )
 */
-void VisuGUI_SetupPlot2dDlg::getCurvesSource( int& horIndex, QValueList<int>& verIndexes,
-                                             QValueList<int>& zIndices )
+void VisuGUI_SetupPlot2dDlg::getCurvesSource( int& horIndex, QList<int>& verIndexes,
+                                             QList<int>& zIndices )
 {
   /* collecting horizontal and vertical axis items */
   horIndex = -1;
@@ -271,18 +276,18 @@ void VisuGUI_SetupPlot2dDlg::getCurvesSource( int& horIndex, QValueList<int>& ve
       verIndexes.append( i );
       zIndices.append( myItems.at( i )->assigned() );
     }
-
+    
   }
 }
 /*!
   Gets curve attributes
 */
-bool VisuGUI_SetupPlot2dDlg::getCurveAttributes (const int vIndex,
-                                                 bool&     isAuto,
-                                                 int&      marker,
-                                                 int&      line,
-                                                 int&      lineWidth,
-                                                 QColor&   color)
+bool VisuGUI_SetupPlot2dDlg::getCurveAttributes( const int vIndex, 
+                                                  bool&     isAuto, 
+                                                  int&      marker, 
+                                                  int&      line, 
+                                                  int&      lineWidth, 
+                                                  QColor&   color)
 {
   if ( vIndex >= 0 && vIndex < myItems.count() ) {
     isAuto    = myItems.at( vIndex )->isAutoAssign();
@@ -297,29 +302,29 @@ bool VisuGUI_SetupPlot2dDlg::getCurveAttributes (const int vIndex,
 /*!
   Creates and returns curves presentations
 */
-void VisuGUI_SetupPlot2dDlg::getCurves( QPtrList<Plot2d_Curve>& container )
+void VisuGUI_SetupPlot2dDlg::getCurves( QList<Plot2d_Curve*>& container )
 {
   _PTR(GenericAttribute)        anAttr;
   _PTR(AttributeTableOfInteger) tblIntAttr;
   _PTR(AttributeTableOfReal)    tblRealAttr;
-
+  
   /* clearing container contents */
   container.clear();
 
   /* collecting horizontal and vertical axis items */
   int horIndex;
   int i, j;
-  QValueList<int> verIndex, zIndices;
+  QList<int> verIndex, zIndices;
   getCurvesSource( horIndex, verIndex, zIndices );
   if ( horIndex < 0 || verIndex.isEmpty() ) /* no curves can be created */
     return;
-
+    
   /* Try table of integer */
   if ( myObject->FindAttribute( anAttr, "AttributeTableOfInteger" ) ) {
     tblIntAttr = anAttr;
     if ( tblIntAttr ) {
       try {
-       int nbCols = tblIntAttr->GetNbColumns();
+       int nbCols = tblIntAttr->GetNbColumns() ; 
        vector<string> rowTitles = tblIntAttr->GetRowTitles();
        vector<string> rowUnits  = tblIntAttr->GetRowUnits();
 
@@ -355,8 +360,8 @@ void VisuGUI_SetupPlot2dDlg::getCurves( QPtrList<Plot2d_Curve>& container )
            curve->setData( xList, yList, nbPoints, zList );
          }
          // curve attributes
-         curve->setLine( (Plot2d_Curve::LineType)myItems.at( verIndex[i] )->getLine(), myItems.at( verIndex[i] )->getLineWidth() );
-         curve->setMarker( (Plot2d_Curve::MarkerType)myItems.at( verIndex[i] )->getMarker() );
+         curve->setLine( (Plot2d::LineType)myItems.at( verIndex[i] )->getLine(), myItems.at( verIndex[i] )->getLineWidth() );
+         curve->setMarker( (Plot2d::MarkerType)myItems.at( verIndex[i] )->getMarker() );
          curve->setColor( myItems.at( verIndex[i] )->getColor() );
          curve->setAutoAssign( myItems.at( verIndex[i] )->isAutoAssign() );
          // add curve into container
@@ -373,7 +378,7 @@ void VisuGUI_SetupPlot2dDlg::getCurves( QPtrList<Plot2d_Curve>& container )
     tblRealAttr = anAttr;
     if ( tblRealAttr ) {
       try {
-       int nbCols = tblRealAttr->GetNbColumns();
+       int nbCols = tblRealAttr->GetNbColumns() ; 
        vector<string> rowTitles = tblRealAttr->GetRowTitles();
        vector<string> rowUnits  = tblRealAttr->GetRowUnits();
 
@@ -409,8 +414,8 @@ void VisuGUI_SetupPlot2dDlg::getCurves( QPtrList<Plot2d_Curve>& container )
            curve->setData( xList, yList, nbPoints, zList );
          }
          // curve attributes
-         curve->setLine( (Plot2d_Curve::LineType)myItems.at( verIndex[i] )->getLine(), myItems.at( verIndex[i] )->getLineWidth() );
-         curve->setMarker( (Plot2d_Curve::MarkerType)myItems.at( verIndex[i] )->getMarker() );
+         curve->setLine( (Plot2d::LineType)myItems.at( verIndex[i] )->getLine(), myItems.at( verIndex[i] )->getLineWidth() );
+         curve->setMarker( (Plot2d::MarkerType)myItems.at( verIndex[i] )->getMarker() );
          curve->setColor( myItems.at( verIndex[i] )->getColor() );
          curve->setAutoAssign( myItems.at( verIndex[i] )->isAutoAssign() );
          // add curve into container
@@ -443,8 +448,8 @@ void VisuGUI_SetupPlot2dDlg::onHBtnToggled( bool on )
 void VisuGUI_SetupPlot2dDlg::onVBtnToggled( bool on )
 {
   VisuGUI_ItemContainer* item = ( VisuGUI_ItemContainer* )sender();
-  QPtrList<VisuGUI_ItemContainer> itemList;
-  itemList.setAutoDelete( false );
+  QList<VisuGUI_ItemContainer*> itemList;
+  //itemList.setAutoDelete( false );
   item->myAssigned->setEnabled( on );
   int i;
   if ( on ) {
@@ -462,13 +467,14 @@ void VisuGUI_SetupPlot2dDlg::onVBtnToggled( bool on )
        }
       }
     }
-    if ( totalOn == 0 && !itemList.isEmpty() &&
-        SUIT_MessageBox::info2( this,
-                               this->caption(),
-                               tr( "QUE_WANT_SAME_UNITS" ),
-                               tr( "BUT_YES" ),
-                               tr( "BUT_NO" ),
-                               0, 1, 1 ) == 0 ) {
+    if ( totalOn == 0 && !itemList.isEmpty() && 
+        SUIT_MessageBox::information( this, 
+                                       this->windowTitle(), 
+                                       tr( "QUE_WANT_SAME_UNITS" ),
+                                       tr( "BUT_YES" ), 
+                                       tr( "BUT_NO" ), 
+                                       1, 1 ) == 0 )
+    {
       for ( i = 0; i < itemList.count(); i++ ) {
        itemList.at( i )->blockSignals( true );
        itemList.at( i )->setVerticalOn( true );
@@ -490,20 +496,20 @@ void VisuGUI_SetupPlot2dDlg::onHelp()
     app->onHelpContextModule(aVisuGUI ? app->moduleName(aVisuGUI->moduleName()) : QString(""), aHelpFileName);
   }
   else {
-    QString platform;
+               QString platform;
 #ifdef WIN32
-    platform = "winapplication";
+               platform = "winapplication";
 #else
-    platform = "application";
+               platform = "application";
 #endif
-    SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"),
-                          QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
-                          arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
-                          QObject::tr("BUT_OK"));
+    SUIT_MessageBox::warning(0, tr("WRN_WARNING"),
+                             tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                             arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
+                             tr("BUT_OK"));
   }
 }
 /*!
-  Enables/disables buttons
+  Enables/disables buttons 
 */
 void VisuGUI_SetupPlot2dDlg::enableControls()
 {
@@ -536,7 +542,7 @@ void VisuGUI_SetupPlot2dDlg::keyPressEvent( QKeyEvent* e )
   if ( e->isAccepted() )
     return;
 
-  if ( e->key() == Key_F1 )
+  if ( e->key() == Qt::Key_F1 )
     {
       e->accept();
       onHelp();
@@ -547,8 +553,8 @@ void VisuGUI_SetupPlot2dDlg::keyPressEvent( QKeyEvent* e )
 /*!
   Constructor
 */
-VisuGUI_ItemContainer::VisuGUI_ItemContainer( QObject* parent, const char* name )
-     : QObject( parent, name ),
+VisuGUI_ItemContainer::VisuGUI_ItemContainer( QObject* parent )
+     : QObject( parent ), 
        myEnabled( true )
 {
 }
@@ -559,58 +565,61 @@ void VisuGUI_ItemContainer::createWidgets( QWidget* parentWidget, const QStringL
 {
   myHBtn = new QToolButton( parentWidget );
   myHBtn->setText( tr( "H" ) );
-  myHBtn->setToggleButton( true );
-  myHBtn->setOn( false );
+  myHBtn->setCheckable( true );
+  myHBtn->setChecked( false );
 
   myVBtn = new QToolButton( parentWidget );
   myVBtn->setText( tr( "V" ) );
-  myVBtn->setToggleButton( true );
-  myVBtn->setOn( false );
-
+  myVBtn->setCheckable( true );
+  myVBtn->setChecked( false );
+  
   myTitleLab = new QLabel( parentWidget );
   myUnitLab  = new QLabel( parentWidget );
-  myUnitLab->setAlignment( AlignCenter);
-
+  myUnitLab->setAlignment( Qt::AlignCenter);
+  
   myAutoCheck = new QCheckBox( tr( "AUTO_CHECK_LBL" ), parentWidget );
   myAutoCheck->setChecked( true );
 
-  myLineCombo = new QComboBox( false, parentWidget );
-  myLineCombo->insertItem( tr( "NONE_LINE_LBL" ) );
-  myLineCombo->insertItem( tr( "SOLID_LINE_LBL" ) );
-  myLineCombo->insertItem( tr( "DASH_LINE_LBL" ) );
-  myLineCombo->insertItem( tr( "DOT_LINE_LBL" ) );
-  myLineCombo->insertItem( tr( "DASHDOT_LINE_LBL" ) );
-  myLineCombo->insertItem( tr( "DAHSDOTDOT_LINE_LBL" ) );
-  myLineCombo->setCurrentItem( 1 ); // SOLID by default
-
-  myLineSpin = new QSpinBox( 0, MAX_LINE_WIDTH, 1, parentWidget );
+  myLineCombo = new QComboBox( parentWidget );
+  myLineCombo->addItem( tr( "NONE_LINE_LBL" ) );
+  myLineCombo->addItem( tr( "SOLID_LINE_LBL" ) );
+  myLineCombo->addItem( tr( "DASH_LINE_LBL" ) );
+  myLineCombo->addItem( tr( "DOT_LINE_LBL" ) );
+  myLineCombo->addItem( tr( "DASHDOT_LINE_LBL" ) );
+  myLineCombo->addItem( tr( "DAHSDOTDOT_LINE_LBL" ) );
+  myLineCombo->setCurrentIndex( 1 ); // SOLID by default
+
+  myLineSpin = new QSpinBox( parentWidget );
+  myLineSpin->setMinimum( 0 );
+  myLineSpin->setMaximum( MAX_LINE_WIDTH );
+  myLineSpin->setSingleStep( 1 );
   myLineSpin->setValue( 0 );        // width = 0 by default
 
-  myMarkerCombo = new QComboBox( false, parentWidget );
-  myMarkerCombo->insertItem( tr( "NONE_MARKER_LBL" ) );
-  myMarkerCombo->insertItem( tr( "CIRCLE_MARKER_LBL" ) );
-  myMarkerCombo->insertItem( tr( "RECTANGLE_MARKER_LBL" ) );
-  myMarkerCombo->insertItem( tr( "DIAMOND_MARKER_LBL" ) );
-  myMarkerCombo->insertItem( tr( "DTRIANGLE_MARKER_LBL" ) );
-  myMarkerCombo->insertItem( tr( "UTRIANGLE_MARKER_LBL" ) );
-  myMarkerCombo->insertItem( tr( "LTRIANGLE_MARKER_LBL" ) );
-  myMarkerCombo->insertItem( tr( "RTRIANGLE_MARKER_LBL" ) );
-  myMarkerCombo->insertItem( tr( "CROSS_MARKER_LBL" ) );
-  myMarkerCombo->insertItem( tr( "XCROSS_MARKER_LBL" ) );
-  myMarkerCombo->setCurrentItem( 1 ); // CIRCLE by default
-
-  myColorBtn = new QToolButton( parentWidget );
+  myMarkerCombo = new QComboBox( parentWidget );
+  myMarkerCombo->addItem( tr( "NONE_MARKER_LBL" ) );
+  myMarkerCombo->addItem( tr( "CIRCLE_MARKER_LBL" ) );
+  myMarkerCombo->addItem( tr( "RECTANGLE_MARKER_LBL" ) );
+  myMarkerCombo->addItem( tr( "DIAMOND_MARKER_LBL" ) );
+  myMarkerCombo->addItem( tr( "DTRIANGLE_MARKER_LBL" ) );
+  myMarkerCombo->addItem( tr( "UTRIANGLE_MARKER_LBL" ) );
+  myMarkerCombo->addItem( tr( "LTRIANGLE_MARKER_LBL" ) );
+  myMarkerCombo->addItem( tr( "RTRIANGLE_MARKER_LBL" ) );
+  myMarkerCombo->addItem( tr( "CROSS_MARKER_LBL" ) );
+  myMarkerCombo->addItem( tr( "XCROSS_MARKER_LBL" ) );
+  myMarkerCombo->setCurrentIndex( 1 ); // CIRCLE by default
+
+  myColorBtn = new QtxColorButton( parentWidget );
   myColorBtn->setMinimumWidth( 20 );
 
-  myAssigned = new QComboBox( false, parentWidget );
-  myAssigned->insertItem( "" );
+  myAssigned = new QComboBox( parentWidget );
+  myAssigned->addItem( "" );
   QStringList::const_iterator anIt = lst.begin(), aLast = lst.end();
   for( ; anIt!=aLast; anIt++ )
-    myAssigned->insertItem( *anIt );
+    myAssigned->addItem( *anIt );
   myAssigned->setEnabled( false );
-
   connect( myAutoCheck, SIGNAL( clicked() ),       this, SLOT( onAutoChanged() ) );
-  connect( myColorBtn,  SIGNAL( clicked() ),       this, SLOT( onColorChanged() ) );
+  //connect( myColorBtn,  SIGNAL( clicked() ),       this, SLOT( onColorChanged() ) );
   connect( myHBtn,      SIGNAL( toggled( bool ) ), this, SLOT( onHVToggled( bool ) ) );
   connect( myVBtn,      SIGNAL( toggled( bool ) ), this, SLOT( onHVToggled( bool ) ) );
   setColor( QColor( 0, 0, 0 ) );
@@ -629,28 +638,28 @@ void VisuGUI_ItemContainer::enableWidgets( bool enable )
 */
 void VisuGUI_ItemContainer::setHorizontalOn( bool on )
 {
-  myHBtn->setOn( on );
+  myHBtn->setChecked( on );
 }
 /*!
   Gets horizontal button's state
 */
 bool VisuGUI_ItemContainer::isHorizontalOn() const
 {
-  return myHBtn->isOn();
+  return myHBtn->isChecked();
 }
 /*!
   Sets vertical button's state on
 */
 void VisuGUI_ItemContainer::setVerticalOn( bool on )
 {
-  myVBtn->setOn( on );
+  myVBtn->setChecked( on );
 }
 /*!
   Gets vertical button's state
 */
 bool VisuGUI_ItemContainer::isVerticalOn() const
 {
-  return myVBtn->isOn();
+  return myVBtn->isChecked();
 }
 /*!
   Sets item AutoAssign flag state
@@ -672,14 +681,14 @@ bool VisuGUI_ItemContainer::isAutoAssign() const
 */
 void VisuGUI_ItemContainer::setLine( const int line, const int width )
 {
-  myLineCombo->setCurrentItem( line );
+  myLineCombo->setCurrentIndex( line );
 }
 /*!
   Gets item line type
 */
 int VisuGUI_ItemContainer::getLine() const
 {
-  return myLineCombo->currentItem();
+  return myLineCombo->currentIndex();
 }
 /*!
   Gets item line width
@@ -693,35 +702,31 @@ int VisuGUI_ItemContainer::getLineWidth() const
 */
 void VisuGUI_ItemContainer::setMarker( const int marker )
 {
-  myMarkerCombo->setCurrentItem( marker );
+  myMarkerCombo->setCurrentIndex( marker );
 }
 /*!
   Gets item marker type
 */
 int VisuGUI_ItemContainer::getMarker() const
 {
-  return myMarkerCombo->currentItem();
+  return myMarkerCombo->currentIndex();
 }
 /*!
   Sets item color
 */
+
 void VisuGUI_ItemContainer::setColor( const QColor& color )
 {
-  QPalette pal = myColorBtn->palette();
-  QColorGroup ca = pal.active();
-  ca.setColor( QColorGroup::Button, color );
-  QColorGroup ci = pal.inactive();
-  ci.setColor( QColorGroup::Button, color );
-  pal.setActive( ca );
-  pal.setInactive( ci );
-  myColorBtn->setPalette( pal );
+  //QPalette pal = myColorBtn->palette();
+  //pal.setColor( myColorBtn->backgroundRole(), color );
+  myColorBtn->setColor( color );
 }
 /*!
   Gets item color
 */
 QColor VisuGUI_ItemContainer::getColor() const
 {
-  return myColorBtn->palette().active().button();
+  return myColorBtn->color();//palette().color( myColorBtn->backgroundRole() );
 }
 /*!
   Enables/disables widgets
@@ -729,10 +734,10 @@ QColor VisuGUI_ItemContainer::getColor() const
 void VisuGUI_ItemContainer::updateState()
 {
   myAutoCheck->setEnabled( myEnabled );
-  myLineCombo->setEnabled( myEnabled && !myAutoCheck->isChecked() );
-  myLineSpin->setEnabled( myEnabled && !myAutoCheck->isChecked() );
-  myMarkerCombo->setEnabled( myEnabled && !myAutoCheck->isChecked() );
-  myColorBtn->setEnabled( myEnabled && !myAutoCheck->isChecked() );
+  myLineCombo->setEnabled( myEnabled && !myAutoCheck->isChecked() ); 
+  myLineSpin->setEnabled( myEnabled && !myAutoCheck->isChecked() ); 
+  myMarkerCombo->setEnabled( myEnabled && !myAutoCheck->isChecked() ); 
+  myColorBtn->setEnabled( myEnabled && !myAutoCheck->isChecked() ); 
 }
 /*!
   Slot, called when user clickes <Auto assign> check box
@@ -745,13 +750,13 @@ void VisuGUI_ItemContainer::onAutoChanged()
 /*!
   <Color> button slot, invokes color selection dialog box
 */
-void VisuGUI_ItemContainer::onColorChanged()
+/*void VisuGUI_ItemContainer::onColorChanged()
 {
   QColor color = QColorDialog::getColor( getColor() );
   if ( color.isValid() ) {
     setColor( color );
   }
-}
+}*/
 /*!
   <H> and <V> buttons slot
 */
@@ -760,9 +765,9 @@ void VisuGUI_ItemContainer::onHVToggled( bool on )
   const QObject* snd = sender();
   if ( snd == myHBtn ) {
     if ( on ) {
-      if ( myVBtn->isOn() ) {
+      if ( myVBtn->isChecked() ) {
 //     blockSignals( true );
-       myVBtn->setOn( false );
+       myVBtn->setChecked( false );
 //     blockSignals( false );
       }
     }
@@ -770,9 +775,9 @@ void VisuGUI_ItemContainer::onHVToggled( bool on )
   }
   else {
     if ( on ) {
-      if ( myHBtn->isOn() ) {
+      if ( myHBtn->isChecked() ) {
 //     blockSignals( true );
-       myHBtn->setOn( false );
+       myHBtn->setChecked( false );
 //     blockSignals( false );
       }
     }
@@ -785,8 +790,8 @@ void VisuGUI_ItemContainer::onHVToggled( bool on )
 */
 int VisuGUI_ItemContainer::assigned() const
 {
-  if ( isVerticalOn() )
-    return myAssigned->currentItem()-1;
+  if( isVerticalOn() )
+    return myAssigned->currentIndex()-1;
   else
     return -1;
 }
index 234a28704cdf406af6e00aa7dfa69e76c0244e4d..985c34f7c46c8ef19f7cb3f306f634df8c89f71e 100644 (file)
@@ -1,26 +1,28 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VisuGUI_SetupPlot2dDlg.h
 //  Author : Vadim SANDLER
 //  Module : SALOME
-
+//
 #ifndef VISUGUI_SetupPlot2dDlg_H
 #define VISUGUI_SetupPlot2dDlg_H
 
 
 #include <SALOMEDSClient_SObject.hxx>
 
-#include <qdialog.h>
-#include <qptrlist.h>
+#include <QDialog>
+#include <QList>
 
 //=================================================================================
 // class    : VisuGUI_SetupPlot2dDlg
 // purpose  : Dialog box for setup Plot2d view
 //=================================================================================
 
-class QScrollView;
+class QScrollArea;
 class QPushButton;
 class QLabel;
 class QCheckBox;
@@ -44,6 +46,7 @@ class QComboBox;
 class QSpinBox;
 class QToolButton;
 class VisuGUI_ItemContainer;
+class QtxColorButton;
 
 class VisuGUI_SetupPlot2dDlg : public QDialog
 { 
@@ -53,8 +56,8 @@ public:
   VisuGUI_SetupPlot2dDlg( _PTR(SObject) object, QWidget* parent = 0 );
   ~VisuGUI_SetupPlot2dDlg();
 
-  void getCurves( QPtrList<Plot2d_Curve>& container );
-  void getCurvesSource( int& horIndex, QValueList<int>& verIndexes, QValueList<int>& zIndexes );
+  void getCurves( QList<Plot2d_Curve*>& container );
+  void getCurvesSource( int& horIndex, QList<int>& verIndexes, QList<int>& zIndexes );
   bool getCurveAttributes( const int vIndex, bool& isAuto, int& marker, int& line, int& lineWidth, QColor& color);
 
 private:
@@ -67,11 +70,11 @@ private slots:
   void enableControls();
 
 private:
-  QScrollView*                myView;
+  QScrollArea*                myView;
   QPushButton*                myOkBtn;
   QPushButton*                myCancelBtn;
   QPushButton*                myHelpBtn;
-  QPtrList<VisuGUI_ItemContainer> myItems;
+  QList<VisuGUI_ItemContainer*> myItems;
 
   _PTR(SObject)               myObject;
 };
@@ -81,7 +84,7 @@ class VisuGUI_ItemContainer : public QObject
   Q_OBJECT
 
 public:
-  VisuGUI_ItemContainer( QObject* parent = 0, const char* name = 0 );
+  VisuGUI_ItemContainer( QObject* parent = 0 );
   
   void   createWidgets( QWidget* parentWidget, const QStringList& );
   void   enableWidgets( bool enable );
@@ -111,7 +114,7 @@ signals:
 
 public slots:
   void   onAutoChanged();
-  void   onColorChanged();
+//void   onColorChanged();
   void   onHVToggled( bool );
 
 public:
@@ -124,7 +127,7 @@ public:
   QComboBox*            myLineCombo;
   QSpinBox*             myLineSpin;
   QComboBox*            myMarkerCombo, *myAssigned;
-  QToolButton*          myColorBtn;
+  QtxColorButton*       myColorBtn;
 };
 
 #endif // VISUGUI_SetupPlot2dDlg_H
index 2e6c8c0efa494aaae855d2a75972f800f1f18cb6..54f3ec6942ac1548fdcac35e4337a1cb1a64e5e3 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_Slider.cxx
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #include "VisuGUI_Slider.h"
 
 #include "SUIT_ResourceMgr.h"
 
 #include "VISU_Actor.h"
 
-#include "VVTK_MainWindow.h"
-#include "VVTK_ViewWindow.h"
-
 #include "VISU_Gen_i.hh"
-#include "VisuGUI_Module.h"
+#include "VisuGUI.h"
 #include "VisuGUI_Tools.h"
 #include "VisuGUI_Prs3dTools.h"
 
 #include "VTKViewer_Algorithm.h"
 #include "SVTK_Functor.h"
 
+#include "QtxDockWidget.h"
+#include "QtxDoubleSpinBox.h"
+
 #include <vtkActorCollection.h>
 #include <vtkRenderer.h>
 
-#include <qcombobox.h>
-#include <qfont.h>
-#include <qlabel.h>
-#include <qlayout.h>
-#include <qlineedit.h>
-#include <qtoolbutton.h>
-#include <qtooltip.h>
-#include <qslider.h>
-#include <qspinbox.h>
-#include <qtimer.h>
+#include <QMainWindow>
+#include <QComboBox>
+#include <QFont>
+#include <QLabel>
+#include <QLayout>
+#include <QLineEdit>
+#include <QToolButton>
+#include <QToolTip>
+#include <QSlider>
+#include <QSpinBox>
+#include <QGroupBox>
+#include <QCheckBox>
+#include <QRadioButton>
+#include <QTimer>
+#include <QAction>
+
+using namespace std;
 
 /*!
   Constructor
 */
-VisuGUI_Slider::VisuGUI_Slider( VisuGUI_Module* theModule, 
-                               VVTK_ViewWindow* theViewWindow,
+VisuGUI_Slider::VisuGUI_Slider( VisuGUI* theModule, 
+                               QMainWindow* theParent,
                                LightApp_SelectionMgr* theSelectionMgr )
-  : QtxToolBar( InDock, theViewWindow->getMainWindow1() ),
-    myModule( theModule ),
-    myMainWindow( theViewWindow->getMainWindow1() ),
-    mySelectionMgr( theSelectionMgr )
+  : QWidget( theParent )
+  , myViewManager( VISU::GetVisuGen( theModule )->GetViewManager() )
+  , mySelectionMgr( theSelectionMgr )
+  , myModule( theModule )
 {
-  setLabel(tr("TOOLBAR_TITLE"));
-  setCloseMode(QDockWindow::Undocked);
-
-  VISU::ViewManager_var aViewManager = VISU::GetVisuGen( myModule )->GetViewManager();
-  VISU::View_var aView = aViewManager->GetCurrentView();
-  if(!CORBA::is_nil(aView.in()))
-    myView3D = VISU::View3D::_narrow(aView);
+  setWindowTitle( tr("TITLE") );
+  setObjectName( tr("TITLE") );
 
   SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
 
-  setHorizontallyStretchable( true );
-
-  QWidget* aWidget = new QWidget( this );
-  aWidget->setFocusPolicy(StrongFocus);
-  setWidget( aWidget );
-
-  QGridLayout* aLayout = new QGridLayout( aWidget, 2, 13, 11, 6 );
-
-  // Slider and time stamps
-  myFirstTimeStamp = new QLabel( aWidget );
-  myFirstTimeStamp->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
-  aLayout->addWidget( myFirstTimeStamp, 0, 0, Qt::AlignHCenter );
-
-  mySlider = new QSlider( aWidget );
-  mySlider->setMinValue( 0 );
-  mySlider->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
-  mySlider->setOrientation( QSlider::Horizontal );
-  mySlider->setTracking( false );
-  mySlider->setFocusPolicy(StrongFocus);
-  aLayout->addMultiCellWidget( mySlider, 0, 0, 1, 8 );
-
-  myLastTimeStamp = new QLabel( aWidget );
-  myLastTimeStamp->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
-  aLayout->addWidget( myLastTimeStamp, 0, 9, Qt::AlignHCenter );
-
-  myTimeStampsNumber = new QLabel( aWidget );
-  myTimeStampsNumber->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
-  aLayout->addWidget( myTimeStampsNumber, 0, 10, Qt::AlignHCenter );
-
-  QLabel* aCacheMemoryLabel = new QLabel( tr( "CACHE_MEMORY" ), aWidget );
-  aCacheMemoryLabel->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
-  aLayout->addWidget( aCacheMemoryLabel, 0, 11 );
-
-  myCacheMemory = new QLabel( aWidget );
-  myCacheMemory->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
-  QFontMetrics fm( myCacheMemory->font() );
-  myCacheMemory->setFixedWidth( fm.width( "9.99E+99 Mb" ) );
-
-  aLayout->addWidget( myCacheMemory, 0, 12 );
-
-  // Buttons
-#ifdef ENABLE_AVI_AND_MORE_BUTTONS
-  myMoreButton = new QToolButton( aWidget );
-  myMoreButton->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
-  myMoreButton->setEnabled( false );
-  myMoreButton->setToggleButton( true );
-  myMoreButton->setIconSet( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_MORE" ) ) );
-  QToolTip::add( myMoreButton, tr( "MORE" ) );
-  aLayout->addWidget( myMoreButton, 1, 0 );
-
-  myAVIButton = new QToolButton( aWidget );
-  myAVIButton->setEnabled( false );
-  myAVIButton->setToggleButton( true );
-  myAVIButton->setIconSet( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_AVI" ) ) );
-  QToolTip::add( myAVIButton, tr( "AVI" ) );
-  aLayout->addWidget( myAVIButton, 1, 1 );
-#endif
-
-  aLayout->addItem( new QSpacerItem( 24, 24, QSizePolicy::Expanding, QSizePolicy::Minimum ), 1, 2 );
-
-  myFirstButton = new QToolButton( aWidget );
-  myFirstButton->setIconSet( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_FIRST" ) ) );
-  aLayout->addWidget( myFirstButton, 1, 3 );
-
-  myPreviousButton = new QToolButton( aWidget );
-  myPreviousButton->setIconSet( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_PREVIOUS" ) ) );
-  aLayout->addWidget( myPreviousButton, 1, 4 );
-
-  myPlayButton = new QToolButton( aWidget );
-  myPlayButton->setIconSet( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_PLAY" ) ) );
-  myPlayButton->setToggleButton( true );
-  aLayout->addWidget( myPlayButton, 1, 5 );
-
-  myNextButton = new QToolButton( aWidget );
-  myNextButton->setIconSet( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_NEXT" ) ) );
-  aLayout->addWidget( myNextButton, 1, 6 );
-
-  myLastButton = new QToolButton( aWidget );
-  myLastButton->setIconSet( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_LAST" ) ) );
-  aLayout->addWidget( myLastButton, 1, 7 );
-
-  aLayout->addItem( new QSpacerItem( 24, 24, QSizePolicy::Expanding, QSizePolicy::Minimum ), 1, 8 );
-
-  myTimeStampStrings = new QComboBox( aWidget );
-  myTimeStampStrings->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
-  myTimeStampStrings->setFocusPolicy(StrongFocus);
-  aLayout->addWidget( myTimeStampStrings, 1, 9 );
-
-  myTimeStampIndices = new QComboBox( aWidget );
-  myTimeStampIndices->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
-  myTimeStampIndices->setFocusPolicy(StrongFocus);
-  aLayout->addWidget( myTimeStampIndices, 1, 10 );
-
-  // Speed
-  QLabel* aSpeedLabel = new QLabel( tr( "SPEED" ), aWidget );
-  aSpeedLabel->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
-  aLayout->addWidget( aSpeedLabel, 1, 11 );
-
-  mySpeedBox = new QSpinBox( 1, 100, 1, aWidget );
-  mySpeedBox->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
-  mySpeedBox->setFocusPolicy(StrongFocus);
-  mySpeedBox->setValue( 50 );
-  aLayout->addWidget( mySpeedBox, 1, 12 );
+  //----------------------------------------------------------------------------
+  QVBoxLayout* aVBoxLayout = new QVBoxLayout( this );
+
+  QTabWidget* aTabWidget = new QTabWidget( this );
+  aTabWidget->setSizePolicy( QSizePolicy::Preferred, QSizePolicy::Fixed );
+
+  aVBoxLayout->addWidget( aTabWidget );
+
+  {
+    QWidget* aParent = new QWidget();
+    {
+      QGridLayout* aGridLayout = new QGridLayout( aParent );
+      {
+       myFirstTimeStamp = new QLabel( aParent );
+       myFirstTimeStamp->setAlignment( Qt::AlignRight | Qt::AlignTrailing | Qt::AlignVCenter );
+       myFirstTimeStamp->setSizePolicy( QSizePolicy::Fixed, QSizePolicy::Fixed );
+       aGridLayout->addWidget( myFirstTimeStamp, 0, 0, 1, 1 );
+       
+       mySlider = new QSlider( aParent );
+       mySlider->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
+       mySlider->setFocusPolicy( Qt::StrongFocus );
+       mySlider->setOrientation( Qt::Horizontal );
+       mySlider->setTracking( false );
+       mySlider->setMinimum( 0 );
+       aGridLayout->addWidget( mySlider, 0, 1, 1, 3 );
+       
+       myLastTimeStamp = new QLabel( aParent );
+       aGridLayout->addWidget( myLastTimeStamp, 0, 4, 1, 1 );
+      }     
+      {
+       myFirstButton = new QToolButton( aParent );
+       myFirstButton->setIcon( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_FIRST" ) ) );
+       myFirstButton->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
+       aGridLayout->addWidget( myFirstButton, 1, 0, 1, 1 );
+
+       myPreviousButton = new QToolButton( aParent );
+       myPreviousButton->setIcon( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_PREVIOUS" ) ) );
+       myPreviousButton->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
+       aGridLayout->addWidget( myPreviousButton, 1, 1, 1, 1 );
+
+       myPlayButton = new QToolButton( aParent );
+       myPlayButton->setIcon( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_PLAY" ) ) );
+       myPlayButton->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
+       myPlayButton->setCheckable( true );
+       aGridLayout->addWidget( myPlayButton, 1, 2, 1, 1 );
+
+       myNextButton = new QToolButton( aParent );
+       myNextButton->setIcon( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_NEXT" ) ) );
+       myNextButton->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
+       aGridLayout->addWidget( myNextButton, 1, 3, 1, 1 );
+
+       myLastButton = new QToolButton( aParent );
+       myLastButton->setIcon( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_LAST" ) ) );
+       myLastButton->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
+       aGridLayout->addWidget( myLastButton, 1, 4, 1, 1 );
+      }
+      {
+       myTimeStampIndexes = new QComboBox( aParent );
+       myTimeStampIndexes->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
+       myTimeStampIndexes->setFocusPolicy( Qt::StrongFocus );
+       aGridLayout->addWidget( myTimeStampIndexes, 2, 0, 1, 2 );
+
+       myIsCycled = new QToolButton( aParent );
+       myIsCycled->setText( tr( "IS_CYCLED" ) );
+       myIsCycled->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
+       myIsCycled->setLayoutDirection( Qt::LeftToRight );
+       myIsCycled->setCheckable( true );
+       //myIsCycled->setEnabled( false );
+       aGridLayout->addWidget( myIsCycled, 2, 2, 1, 1 );
+
+       myTimeStampStrings = new QComboBox( aParent );
+       myTimeStampStrings->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
+       myTimeStampStrings->setFocusPolicy( Qt::StrongFocus );
+       aGridLayout->addWidget( myTimeStampStrings, 2, 3, 1, 2 );
+      }
+    }
+
+    aTabWidget->addTab( aParent, tr( "NAVIGATION_TAB" ) );
+    myPlayTab = aParent;
+  }
+
+  {
+    QWidget* aParent = new QWidget();
+    {
+      QVBoxLayout* aVBoxLayout = new QVBoxLayout( aParent );
+      {
+       QHBoxLayout* aHBoxLayout = new QHBoxLayout();
+       
+       myMinimalMemoryButton = new QRadioButton( tr( "MINIMAL_MEMORY" ), aParent );
+       aHBoxLayout->addWidget( myMinimalMemoryButton );        
+
+       QSpacerItem* aSpacerItem = new QSpacerItem( 16, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );     
+       aHBoxLayout->addItem( aSpacerItem );
+
+       myLimitedMemoryButton = new QRadioButton( tr( "LIMITED_MEMORY" ), aParent );
+       myLimitedMemoryButton->setChecked( true );
+       aHBoxLayout->addWidget( myLimitedMemoryButton );
+       
+       myLimitedMemory = new QtxDoubleSpinBox( aParent );
+       myLimitedMemory->setMaximum( 10000 );
+       myLimitedMemory->setValue( 512 );
+       aHBoxLayout->addWidget( myLimitedMemory );
+       
+       QLabel* aMemoryDimensionLabel = new QLabel( aParent );
+       aMemoryDimensionLabel->setText( tr( "MEMORY_UNITS" ) );
+       aHBoxLayout->addWidget( aMemoryDimensionLabel );
+       
+       aVBoxLayout->addLayout( aHBoxLayout );
+      }
+      {
+       QHBoxLayout* aHBoxLayout = new QHBoxLayout();
+           
+       QLabel* aUsedMemoryLabel = new QLabel( tr( "USED_BY_CACHE" ), aParent );
+       aUsedMemoryLabel->setSizePolicy( QSizePolicy::Fixed, QSizePolicy::Fixed );
+       aHBoxLayout->addWidget( aUsedMemoryLabel );
+       
+       myUsedMemory = new QLineEdit( aParent );
+       myUsedMemory->setSizePolicy( QSizePolicy::Preferred, QSizePolicy::Fixed );
+       //myUsedMemory->setEnabled( false );
+       aHBoxLayout->addWidget( myUsedMemory );
+           
+       QSpacerItem* aSpacerItem = new QSpacerItem( 16, 20, QSizePolicy::Expanding, QSizePolicy::Minimum );     
+       aHBoxLayout->addItem( aSpacerItem );
+
+       QLabel* aFreeMemoryLabel = new QLabel( tr( "AVAILABLE_MEMORY" ), aParent );
+       aHBoxLayout->addWidget( aFreeMemoryLabel );
+    
+       myFreeMemory = new QLineEdit( aParent );
+       myFreeMemory->setSizePolicy( QSizePolicy::Preferred, QSizePolicy::Fixed );
+       //myFreeMemory->setEnabled( false );
+       aHBoxLayout->addWidget( myFreeMemory );
+
+       aVBoxLayout->addLayout( aHBoxLayout );
+      }
+      {
+       QHBoxLayout* aHBoxLayout = new QHBoxLayout();
+       
+       QLabel* aLabel = new QLabel( tr( "SPEED" ), aParent );
+       aLabel->setSizePolicy( QSizePolicy::Fixed, QSizePolicy::Fixed );
+       aHBoxLayout->addWidget( aLabel );   
+      
+       mySpeedSlider = new QSlider( aParent );
+       mySpeedSlider->setMinimum( 1 );
+       mySpeedSlider->setMaximum( 100 );
+       mySpeedSlider->setValue( mySpeedSlider->maximum() / 2 );
+       mySpeedSlider->setPageStep( mySpeedSlider->maximum() / 5 );
+       mySpeedSlider->setTickInterval( mySpeedSlider->pageStep() );    
+       mySpeedSlider->setOrientation( Qt::Horizontal );
+       mySpeedSlider->setTickPosition( QSlider::TicksBelow );
+       aHBoxLayout->addWidget( mySpeedSlider );   
+       
+       aVBoxLayout->addLayout( aHBoxLayout );
+      }
+      
+      aTabWidget->addTab( aParent, tr( "PROPERTIES_TAB" ) );
+    }
+  }
+
+  {
+    QSpacerItem* aSpacerItem = new QSpacerItem( 16, 20, QSizePolicy::Minimum, QSizePolicy::Expanding );
+    aVBoxLayout->addItem( aSpacerItem );
+  }
+
+
+  //----------------------------------------------------------------------------
+  myPlayPixmap = aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_PLAY" ) );
+  myPausePixmap = aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_PAUSE" ) );
 
   myTimer = new QTimer( this );
 
   // Common
+  connect( theModule, SIGNAL( moduleDeactivated() ), SLOT( onModuleDeactivated() ) );
+
+  connect( theModule, SIGNAL( moduleActivated() ), SLOT( onModuleActivated() ) );
+
   connect( mySelectionMgr, SIGNAL( currentSelectionChanged() ), SLOT( onSelectionChanged() ) );
 
   connect( myTimeStampStrings, SIGNAL( activated( int ) ),    SLOT( onTimeStampActivated( int ) ) );
-  connect( myTimeStampIndices, SIGNAL( activated( int ) ),    SLOT( onTimeStampActivated( int ) ) );
+  connect( myTimeStampIndexes, SIGNAL( activated( int ) ),    SLOT( onTimeStampActivated( int ) ) );
 
   connect( myFirstButton,      SIGNAL( clicked() ),           SLOT( onFirst() ) );
   connect( myPreviousButton,   SIGNAL( clicked() ),           SLOT( onPrevious() ) );
@@ -207,22 +276,85 @@ VisuGUI_Slider::VisuGUI_Slider( VisuGUI_Module* theModule,
 
   connect( mySlider,           SIGNAL( valueChanged( int ) ), SLOT( onValueChanged( int ) ) );
 
-  connect( mySpeedBox,         SIGNAL( valueChanged( int ) ), SLOT( onSpeedChanged( int ) ) );
+  connect( mySpeedSlider,      SIGNAL( valueChanged( int ) ), SLOT( onSpeedChanged( int ) ) );
 
   connect( myTimer,            SIGNAL( timeout() ),           SLOT( onTimeout() ) );
 
+  //----------------------------------------------------------------------------
+  connect( myLimitedMemoryButton, SIGNAL( toggled( bool ) ), this, SLOT( onMemoryModeChanged( bool ) ) );
+  connect( myLimitedMemory, SIGNAL( valueChanged( double ) ), this, SLOT( onMemorySizeChanged( double ) ) );
+
+  //----------------------------------------------------------------------------
   enableControls( false );
 
-  myMainWindow->addDockWindow( this, Qt::DockBottom );
+  QtxDockWidget* aQtxDockWidget = new QtxDockWidget( true, theParent );
+  theParent->addDockWidget( Qt::BottomDockWidgetArea , aQtxDockWidget );
+  aQtxDockWidget->setObjectName( objectName() );
+  aQtxDockWidget->setWidget( this );
+  
+  myToggleViewAction = aQtxDockWidget->toggleViewAction();
+  myToggleViewAction->setIcon( QIcon( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_PANEL" ) ) ) );
+  myToggleViewAction->setToolTip( tr( "MEN_SLIDER_PANE" ) );
+  myToggleViewAction->setText( tr( "MEN_SLIDER_PANE" ) );
+  myToggleViewAction->setCheckable( true );
+  aQtxDockWidget->setVisible( false );
+
+  connect( myToggleViewAction, SIGNAL( toggled( bool ) ), this, SLOT( onToggleView( bool ) ) );
 }
 
-/*!
-  Destructor
-*/
+
+//----------------------------------------------------------------------------
 VisuGUI_Slider::~VisuGUI_Slider()
 {
 }
 
+
+//----------------------------------------------------------------------------
+QAction* VisuGUI_Slider::toggleViewAction()
+{
+  return myToggleViewAction;
+}
+
+
+//----------------------------------------------------------------------------
+void VisuGUI_Slider::onModuleDeactivated()
+{
+  setHidden( true );
+}
+
+
+//----------------------------------------------------------------------------
+void VisuGUI_Slider::onModuleActivated()
+{
+  setHidden( false );
+}
+
+
+//----------------------------------------------------------------------------
+void VisuGUI_Slider::onMemoryModeChanged( bool )
+{
+  using namespace VISU;
+  SALOMEDS::Study_var aStudy = GetDSStudy( GetCStudy( GetAppStudy( myModule ) ) );
+  VISU::ColoredPrs3dCache_var aCache = GetVisuGen( myModule )->GetColoredPrs3dCache( aStudy );
+
+  if ( myLimitedMemoryButton->isChecked() ) {
+    aCache->SetMemoryMode( VISU::ColoredPrs3dCache::LIMITED );
+    aCache->SetLimitedMemory( myLimitedMemory->value() );
+  } else
+    aCache->SetMemoryMode( VISU::ColoredPrs3dCache::MINIMAL );
+
+  myLimitedMemory->setEnabled( myLimitedMemoryButton->isChecked() );
+}
+
+
+//----------------------------------------------------------------------------
+void VisuGUI_Slider::onMemorySizeChanged( double )
+{
+  onMemoryModeChanged( myLimitedMemoryButton->isChecked() );
+}
+
+
+//----------------------------------------------------------------------------
 bool VisuGUI_Slider::checkHolderList()
 {
   THolderList aHolderList;
@@ -237,16 +369,19 @@ bool VisuGUI_Slider::checkHolderList()
   return myHolderList.empty();
 }
 
+
+//----------------------------------------------------------------------------
 void VisuGUI_Slider::enableControls( bool on )
 {
-  widget()->setEnabled( on );
+  myPlayTab->setEnabled( on );
+
   if( on )
   {
     if( checkHolderList() )
       return;
 
     myTimeStampStrings->clear();
-    myTimeStampIndices->clear();
+    myTimeStampIndexes->clear();
 
     VISU::ColoredPrs3dHolder_var aHolder = myHolderList.front();
 
@@ -258,7 +393,6 @@ void VisuGUI_Slider::enableControls( bool on )
 
     myFirstTimeStamp->setText( aTimeStampsRange[0].myTime.in() );
     myLastTimeStamp->setText( aTimeStampsRange[aLength-1].myTime.in() );
-    myTimeStampsNumber->setText( QString("(") + QString::number( aLength ) + ")" );
 
     int aPageStep = aLength / 10;
     aPageStep = std::max(aPageStep, 1);
@@ -271,8 +405,8 @@ void VisuGUI_Slider::enableControls( bool on )
       CORBA::Long aNumber = anInfo.myNumber;
       QString aTime = anInfo.myTime.in();
 
-      myTimeStampStrings->insertItem( aTime );
-      myTimeStampIndices->insertItem( QString::number( aNumber ) );
+      myTimeStampStrings->addItem( aTime );
+      myTimeStampIndexes->addItem( QString::number( aNumber ) );
 
       if( aNumber == aTimeStampNumber )
        a_current_index = an_index;
@@ -281,38 +415,64 @@ void VisuGUI_Slider::enableControls( bool on )
     myTimeStampStrings->setFont(myTimeStampStrings->font());
     myTimeStampStrings->updateGeometry();
     
-    myTimeStampIndices->setFont(myTimeStampStrings->font());
-    myTimeStampIndices->updateGeometry();
+    myTimeStampIndexes->setFont(myTimeStampStrings->font());
+    myTimeStampIndexes->updateGeometry();
 
-    if( a_current_index > mySlider->maxValue() )
-      mySlider->setMaxValue( aLength-1 );
+    if( a_current_index > mySlider->maximum() )
+      mySlider->setMaximum( aLength-1 );
 
-    myTimeStampStrings->setCurrentItem( a_current_index );
-    myTimeStampIndices->setCurrentItem( a_current_index );
+    myTimeStampStrings->setCurrentIndex( a_current_index );
+    myTimeStampIndexes->setCurrentIndex( a_current_index );
     mySlider->setValue( a_current_index );
 
-    if( a_current_index <= mySlider->maxValue() )
-      mySlider->setMaxValue( aLength-1 );
+    if( a_current_index <= mySlider->maximum() )
+      mySlider->setMaximum( aLength-1 );
+
+    using namespace VISU;
+    SALOMEDS::Study_var aStudy = GetDSStudy( GetCStudy( GetAppStudy( myModule ) ) );
+    VISU::ColoredPrs3dCache_var aCache = GetVisuGen( myModule )->GetColoredPrs3dCache( aStudy );
+
+    long aMb = 1024 * 1024;
+    double aLimitedMemory = aCache->GetLimitedMemory();
+    myLimitedMemory->setValue( aLimitedMemory );
+
+    double aFreeMemory = (double)VISU_PipeLine::GetAvailableMemory( 2048 * aMb ) / (double)aMb;
+    double anUsedMemory = aCache->GetMemorySize();
+    double aLimitedMemoryMax = max( anUsedMemory + aFreeMemory, aLimitedMemory );
+    myLimitedMemory->setMaximum( aLimitedMemoryMax );
   }
   else
   {
-    myPlayButton->setOn( false );
+    myPlayButton->setChecked( false );
   }
 
 }
 
+
+//----------------------------------------------------------------------------
 void VisuGUI_Slider::updateMemoryState()
 {
   if( checkHolderList() )
     return;
 
   VISU::ColoredPrs3dHolder_var aHolder = myHolderList.front();
-
   VISU::ColoredPrs3dCache_var aCache = aHolder->GetCache();
+
   CORBA::Float aCacheMemory = aCache->GetMemorySize();
-  myCacheMemory->setText( QString::number( double( aCacheMemory ), 'E', 2 ) + " Mb" );
+  myUsedMemory->setText( QString::number( double( aCacheMemory ), 'E', 2 ) + " Mb" );
+  myUsedMemory->setFont( myUsedMemory->font() );
+  myUsedMemory->updateGeometry();
+    
+
+  long aMb = 1024 * 1024;
+  double aFreeMemory = (double)VISU_PipeLine::GetAvailableMemory( 2048 * aMb ) / (double)aMb;
+  myFreeMemory->setText( QString::number( double( aFreeMemory ), 'E', 2 ) + " Mb" );
+  myFreeMemory->setFont( myFreeMemory->font() );
+  myFreeMemory->updateGeometry();
 }
 
+
+//----------------------------------------------------------------------------
 void VisuGUI_Slider::onSelectionChanged()
 {
   //cout << "VisuGUI_Slider::onSelectionChanged()" << endl;
@@ -348,82 +508,115 @@ void VisuGUI_Slider::onSelectionChanged()
     }
   }
 
-  enableControls( !checkHolderList() );
+  VISU::View_var aView = myViewManager->GetCurrentView();
+
+  enableControls( !checkHolderList() && !CORBA::is_nil( aView.in() ) );
+
   updateMemoryState();
 }
 
+
+//----------------------------------------------------------------------------
 void VisuGUI_Slider::onTimeStampActivated( int value )
 {
   mySlider->setValue( value );
   onValueChanged( value );
 }
 
+
+//----------------------------------------------------------------------------
 void VisuGUI_Slider::onFirst()
 {
-  int value = mySlider->minValue();
+  int value = mySlider->minimum();
   mySlider->setValue( value );
 }
 
+
+//----------------------------------------------------------------------------
 void VisuGUI_Slider::onPrevious()
 {
   int value = mySlider->value() - 1;
-  if( value >= mySlider->minValue() )
+  if( value >= mySlider->minimum() )
     mySlider->setValue( value );
 }
 
+
+//----------------------------------------------------------------------------
 void VisuGUI_Slider::onPlay( bool on )
 {
-  SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
   if( on )
   {
-    myPlayButton->setIconSet( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_PAUSE" ) ) );
+    myPlayButton->setIcon( myPausePixmap );
 
-    int delay = int(5000.0 / double(mySpeedBox->value()));
+    int delay = int( 50.0 * mySpeedSlider->maximum() / mySpeedSlider->value() );
     myTimer->start( delay );
   }
   else
   {
     myTimer->stop();
-    myPlayButton->setIconSet( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_PLAY" ) ) );
+    myPlayButton->setIcon( myPlayPixmap );
   }
 }
 
+
+//----------------------------------------------------------------------------
+void VisuGUI_Slider::onToggleView( bool on )
+{
+  if ( !on ) {
+    onPlay( on );
+  }
+}
+
+
+//----------------------------------------------------------------------------
 void VisuGUI_Slider::onNext()
 {
   int value = mySlider->value() + 1;
-  if( value <= mySlider->maxValue() )
+  if( value <= mySlider->maximum() )
     mySlider->setValue( value );
 }
 
+
+//----------------------------------------------------------------------------
 void VisuGUI_Slider::onLast()
 {
-  int value = mySlider->maxValue();
+  int value = mySlider->maximum();
   mySlider->setValue( value );
 }
 
+
+//----------------------------------------------------------------------------
 void VisuGUI_Slider::onValueChanged( int value )
 {
-  if( checkHolderList() ){
+  if ( checkHolderList() ) {
     enableControls( false );
     return;
   }
 
-  myTimeStampStrings->setCurrentItem( value );
-  myTimeStampIndices->setCurrentItem( value );
+  myTimeStampStrings->setCurrentIndex( value );
+  myTimeStampIndexes->setCurrentIndex( value );
 
   VISU::ColoredPrs3dHolder_var aHolder = myHolderList.front();
 
   VISU::ColoredPrs3dHolder::TimeStampsRange_var aTimeStampsRange = aHolder->GetTimeStampsRange();
   CORBA::Long aLength = aTimeStampsRange->length();
-  if(value < 0 || aLength <= value)
+  if ( value < 0 || aLength <= value )
     return;
 
   VISU::ColoredPrs3dHolder::BasicInput_var anInput = aHolder->GetBasicInput();
   CORBA::Long aTimeStampNumber = anInput->myTimeStampNumber;
   CORBA::Long aNumber = aTimeStampsRange[ value ].myNumber;
-  if(aNumber == aTimeStampNumber)
+  if ( aNumber == aTimeStampNumber )
     return;
 
+  VISU::View_var aView = myViewManager->GetCurrentView();
+  if ( CORBA::is_nil( aView.in() ) ) {
+    enableControls( false );
+    return;
+  }
+
+  VISU::View3D_var aView3D = VISU::View3D::_narrow( aView );
+
   THolderList::const_iterator anIter = myHolderList.begin();
   THolderList::const_iterator anIterEnd = myHolderList.end();
   for( ; anIter != anIterEnd; anIter++ )
@@ -436,29 +629,42 @@ void VisuGUI_Slider::onValueChanged( int value )
     VISU::ColoredPrs3dHolder::BasicInput_var anInput = aHolder->GetBasicInput();
     anInput->myTimeStampNumber = aNumber;
 
-    QApplication::setOverrideCursor(Qt::waitCursor);
+    QApplication::setOverrideCursor(Qt::WaitCursor);
     
-    aHolder->Apply( aPrs3d, anInput, myView3D );
+    aHolder->Apply( aPrs3d, anInput, aView3D );
     
     QApplication::restoreOverrideCursor();
   }
 
+  aView3D->Destroy();
+
   updateMemoryState();
 }
 
+
+//----------------------------------------------------------------------------
 void VisuGUI_Slider::onSpeedChanged( int value )
 {
-  if(myPlayButton->isOn()){
-    int delay = int(5000.0 / double(mySpeedBox->value()));
+  if(myPlayButton->isChecked()){
+    int delay = int( 50.0 * mySpeedSlider->maximum() / mySpeedSlider->value() );
     myTimer->start( delay );
   }
 }
 
+
+//----------------------------------------------------------------------------
 void VisuGUI_Slider::onTimeout()
 {
   int value = mySlider->value();
-  if( value < mySlider->maxValue() )
+  if ( value < mySlider->maximum() ) {
     onNext();
-  else
-    myPlayButton->setOn( false );
+  } else {
+    if ( myIsCycled->isChecked() )
+      onFirst();
+    else
+      myPlayButton->setChecked( false );
+  }
 }
+
+
+//----------------------------------------------------------------------------
index 74b1deccf79bd8cda2d159a2826d3aad9c861546..db42f03ea4112d6223aa97d3a2bb091184c62403 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_Slider.h
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #ifndef VisuGUI_Slider_HeaderFile
 #define VisuGUI_Slider_HeaderFile
 
-#include "QtxToolBar.h"
+#include <QWidget>
+#include <QPixmap>
+
 #include <vector>
 
 #include "SALOMEconfig.h"
@@ -45,23 +46,28 @@ class QLineEdit;
 class QToolButton;
 class QSlider;
 class QSpinBox;
+class QCheckBox;
+class QRadioButton;
+class QMainWindow;
 class QTimer;
+class QAction;
 
-class VVTK_ViewWindow;
-class VVTK_MainWindow;
+class QtxDoubleSpinBox;
 class LightApp_SelectionMgr;
+class VisuGUI;
 
-class VisuGUI_Module;
-
-class VisuGUI_Slider : public QtxToolBar
+class VisuGUI_Slider : public QWidget
 {
-  Q_OBJECT
+  Q_OBJECT;
 
 public:
-  VisuGUI_Slider( VisuGUI_Module* theModule, 
-                 VVTK_ViewWindow* theViewWindow,
+  VisuGUI_Slider( VisuGUI* theModule, 
+                 QMainWindow* theParent,
                  LightApp_SelectionMgr* theSelectionMgr );
+
   virtual ~VisuGUI_Slider();
+  
+  QAction* toggleViewAction();
 
 public slots:
   virtual void     onSelectionChanged();
@@ -80,29 +86,32 @@ public slots:
 
   virtual void     onTimeout();
 
+  virtual void     onToggleView( bool );
+
+  void onMemoryModeChanged( bool );
+  void onMemorySizeChanged( double );
+
+protected slots:
+  void onModuleDeactivated();
+  void onModuleActivated();
+
 protected:
   virtual void     enableControls( bool );
   virtual void     updateMemoryState();
   virtual bool     checkHolderList();
 
 private:
-  VisuGUI_Module*  myModule;
-  VVTK_MainWindow* myMainWindow;
   LightApp_SelectionMgr* mySelectionMgr;
-  VISU::View3D_var myView3D;
+  VISU::ViewManager_var  myViewManager;
+  VisuGUI*               myModule;
 
   QSlider*         mySlider;
   QLabel*          myFirstTimeStamp;
   QLabel*          myLastTimeStamp;
-  QLabel*          myTimeStampsNumber;
 
-  QLabel*          myCacheMemory;
-
-#ifdef ENABLE_AVI_AND_MORE_BUTTONS
-  QToolButton*     myMoreButton;
-  QToolButton*     myAVIButton;
-#endif
+  QWidget* myPlayTab;
 
+  QToolButton*     myIsCycled;
   QToolButton*     myFirstButton;
   QToolButton*     myPreviousButton;
   QToolButton*     myPlayButton;
@@ -110,14 +119,24 @@ private:
   QToolButton*     myLastButton;
 
   QComboBox*       myTimeStampStrings;
-  QComboBox*       myTimeStampIndices;
+  QComboBox*       myTimeStampIndexes;
+
+  QSlider*         mySpeedSlider;
 
-  QSpinBox*        mySpeedBox;
+  QRadioButton*     myMinimalMemoryButton;
+  QRadioButton*     myLimitedMemoryButton;
+  QtxDoubleSpinBox* myLimitedMemory;
 
-  QTimer*          myTimer;
+  QLineEdit*      myUsedMemory;
+  QLineEdit*      myFreeMemory;
 
   typedef std::vector<VISU::ColoredPrs3dHolder_var> THolderList;
-  THolderList      myHolderList;
+  THolderList     myHolderList;
+  
+  QTimer*         myTimer;
+  QPixmap         myPlayPixmap;
+  QPixmap         myPausePixmap;
+  QAction*        myToggleViewAction;
 };
 
 #endif
index c94ed9dd0298c3f9fcb119316087b0fbbfc6852d..169f7e12b81bfc7ccfc298dee3a9d42f8c9bf702 100644 (file)
@@ -1,26 +1,28 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
 //  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VisuGUI_StreamLinesDlg.cxx
 //  Author : Vitaly SMETANNIKOV
 //  Module : VISU
-
+//
 #include "VisuGUI_StreamLinesDlg.h"
 
 #include "VisuGUI.h"
 
 #include <SALOMEDSClient_SObject.hxx>
 
-#include "QtxDblSpinBox.h"
+#include <QtxDoubleSpinBox.h>
+#include <QtxColorButton.h>
 
 #include <limits.h>
-#include <qlayout.h>
-#include <qcheckbox.h>
-#include <qgroupbox.h>
-#include <qcolordialog.h>
-#include <qtabwidget.h>
-#include <qpushbutton.h>
+
+#include <QLayout>
+#include <QLabel>
+#include <QCheckBox>
+#include <QComboBox>
+#include <QGroupBox>
+#include <QColorDialog>
+#include <QTabWidget>
+#include <QPushButton>
+#include <QLabel>
+#include <QStringList>
+#include <QKeyEvent>
+#include <QFrame>
+
 
 using namespace std;
 
@@ -65,7 +76,7 @@ VisuGUI_StreamLinesDlg::VisuGUI_StreamLinesDlg (SalomeApp_Module* theModule)
   : VisuGUI_ScalarBarBaseDlg(theModule),
     myVisuGUI(theModule)
 {
-  setCaption(tr("DLG_TITLE"));
+  setWindowTitle(tr("DLG_TITLE"));
   setSizeGripEnabled(TRUE);
 
   QVBoxLayout* aBoxLayout = new QVBoxLayout(this);
@@ -75,7 +86,7 @@ VisuGUI_StreamLinesDlg::VisuGUI_StreamLinesDlg (SalomeApp_Module* theModule)
   myTabBox = new QTabWidget(this);
 
   QFrame* aTopBox = new QFrame(this);
-  aTopBox->setMargin( 11 );
+  //aTopBox->setMargin( 11 );
   QGridLayout* TopLayout = new QGridLayout( aTopBox );
   TopLayout->setAlignment( Qt::AlignTop );
   TopLayout->setSpacing( 8 );
@@ -83,21 +94,26 @@ VisuGUI_StreamLinesDlg::VisuGUI_StreamLinesDlg (SalomeApp_Module* theModule)
 
   // Source box
   QGroupBox* aSourceBox = new QGroupBox (tr("SOURCE_GRP"), aTopBox);
-  aSourceBox->setColumnLayout(0, Qt::Vertical);
-  QGridLayout* aSrcLayout = new QGridLayout( aSourceBox->layout() );
+  //aSourceBox->setColumnLayout(0, Qt::Vertical);
+  QGridLayout* aSrcLayout = new QGridLayout( aSourceBox );
   aSrcLayout->setSpacing( 6 );
-  aSrcLayout->setMargin( 0 );
+  aSrcLayout->setMargin( 11 );
 
   QLabel* aTypeLbl = new QLabel( tr( "LBL_SOURCE_TYPE" ), aSourceBox);
   aSrcLayout->addWidget(aTypeLbl, 0, 0);
 
   myUseSrcCombo = new QComboBox(aSourceBox);
-  const char* aChoise[] = { "None", "Entity", "Family", "Group", "Presentation", 0 };
-  myUseSrcCombo->insertStrList(aChoise);
+  QStringList aChoise;
+  aChoise.append( "None" );
+  aChoise.append( "Entity" );
+  aChoise.append( "Family" );
+  aChoise.append( "Group" );
+  aChoise.append( "Presentation" );
+  myUseSrcCombo->addItems(aChoise);
   aSrcLayout->addWidget(myUseSrcCombo, 0, 1);
 
   mySrcCombo = new QComboBox(aSourceBox);
-  mySrcCombo->setEnabled((myUseSrcCombo->currentItem() == 0));
+  mySrcCombo->setEnabled((myUseSrcCombo->currentIndex() == 0));
 
   connect(myUseSrcCombo, SIGNAL(activated(int)), this, SLOT(onSourceTypeChange(int)));
 
@@ -197,33 +213,37 @@ VisuGUI_StreamLinesDlg::VisuGUI_StreamLinesDlg (SalomeApp_Module* theModule)
   }
 
   //  connect(myUseSrcChk, SIGNAL(toggled(bool)), mySrcCombo, SLOT(setEnabled(bool)));
-  aSrcLayout->addMultiCellWidget(mySrcCombo, 1, 1, 0, 1);
+  aSrcLayout->addWidget(mySrcCombo, 1, 0, 1, 2);
 
   QLabel* aPercentLbl = new QLabel (tr("LBL_USED_POINTS"), aSourceBox);
   aSrcLayout->addWidget(aPercentLbl, 2, 0);
 
-  myPntPercent = new QtxDblSpinBox( 0, 1, 0.1, aSourceBox );
+  myPntPercent = new QtxDoubleSpinBox( aSourceBox );
+  VISU::initSpinBox(myPntPercent, 0, 1);
   aSrcLayout->addWidget(myPntPercent, 2, 1);
 
-  TopLayout->addMultiCellWidget(aSourceBox, 0, 0, 0, 1);
+  TopLayout->addWidget(aSourceBox, 0, 0, 1, 2);
 
   QLabel* aStepLenLbl = new QLabel (tr("LBL_STEP_LENGTH"), aTopBox);
   TopLayout->addWidget(aStepLenLbl, 1, 0);
-  myStepLen = new QtxDblSpinBox( DBL_MIN, DBL_MAX, 0.1, aTopBox );
+  myStepLen = new QtxDoubleSpinBox( aTopBox );
+  VISU::initSpinBox(myStepLen, DBL_MIN, DBL_MAX);
   myStepLen->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   TopLayout->addWidget(myStepLen, 1, 1);
   connect(myStepLen, SIGNAL(valueChanged(double)), this, SLOT(StepLengthChanged(double)));
 
   QLabel* aIntegStepLenLbl = new QLabel (tr("LBL_INTEGRATION_STEP"), aTopBox);
   TopLayout->addWidget(aIntegStepLenLbl, 2, 0);
-  myIntegStepLen = new QtxDblSpinBox( DBL_MIN, DBL_MAX, 0.1, aTopBox );
+  myIntegStepLen = new QtxDoubleSpinBox( aTopBox );
+  VISU::initSpinBox(myIntegStepLen, DBL_MIN, DBL_MAX);
   myIntegStepLen->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   TopLayout->addWidget(myIntegStepLen, 2, 1);
   connect(myIntegStepLen, SIGNAL(valueChanged(double)), this, SLOT(IntegrationStepChanged(double)));
 
   QLabel* aPropagationLbl = new QLabel (tr("LBL_PROPAGATION_TIME"), aTopBox);
   TopLayout->addWidget(aPropagationLbl, 3, 0);
-  myPropTime = new QtxDblSpinBox( DBL_MIN, DBL_MAX, 1, aTopBox );
+  myPropTime = new QtxDoubleSpinBox( aTopBox );
+  VISU::initSpinBox(myPropTime, DBL_MIN, DBL_MAX);
   myPropTime->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   TopLayout->addWidget(myPropTime, 3, 1);
   connect(myPropTime, SIGNAL(valueChanged(double)), this, SLOT(PropagationTimeChanged(double)));
@@ -231,17 +251,18 @@ VisuGUI_StreamLinesDlg::VisuGUI_StreamLinesDlg (SalomeApp_Module* theModule)
   QLabel* aDirLbl = new QLabel (tr("LBL_DIRECTION"),aTopBox);
   TopLayout->addWidget(aDirLbl, 4, 0);
   myDirCombo = new QComboBox(aTopBox);
-  myDirCombo->insertItem("Forward");
-  myDirCombo->insertItem("Backward");
-  myDirCombo->insertItem("Both");
+  myDirCombo->addItem("Forward");
+  myDirCombo->addItem("Backward");
+  myDirCombo->addItem("Both");
   TopLayout->addWidget(myDirCombo, 4, 1);
 
-  myUseScalar = new QCheckBox (tr("MAGNITUDE_COLORING_CHK"), aTopBox, "UseMagn");
+  myUseScalar = new QCheckBox (tr("MAGNITUDE_COLORING_CHK"), aTopBox);
   connect( myUseScalar, SIGNAL( clicked() ), this, SLOT( enableSetColor() ) );
   TopLayout->addWidget(myUseScalar, 5, 0);
 
-  SelColor = new QPushButton (tr("USE_COLOR_BTN"), aTopBox, "SelColor");
-  connect( SelColor,     SIGNAL( clicked() ), this, SLOT( setVColor() ) );
+  SelColor = new QtxColorButton( aTopBox );
+  SelColor->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+  //connect( SelColor,     SIGNAL( clicked() ), this, SLOT( setVColor() ) );
   TopLayout->addWidget( SelColor, 5, 1);
 
   myTabBox->addTab(aTopBox, "Stream Lines");
@@ -251,27 +272,27 @@ VisuGUI_StreamLinesDlg::VisuGUI_StreamLinesDlg (SalomeApp_Module* theModule)
 
   aBoxLayout->addWidget(myTabBox);
 
-  QGroupBox* aGroupButtons = new QGroupBox( this, "GroupButtons" );
-  aGroupButtons->setColumnLayout(0, Qt::Vertical );
-  aGroupButtons->layout()->setSpacing( 0 );
-  aGroupButtons->layout()->setMargin( 0 );
+  QGroupBox* aGroupButtons = new QGroupBox( this );
+  //aGroupButtons->setColumnLayout(0, Qt::Vertical );
+  //aGroupButtons->layout()->setSpacing( 0 );
+  //aGroupButtons->layout()->setMargin( 0 );
 
-  QGridLayout* aGroupButtonsLayout = new QGridLayout( aGroupButtons->layout() );
+  QGridLayout* aGroupButtonsLayout = new QGridLayout( aGroupButtons );
   aGroupButtonsLayout->setAlignment( Qt::AlignTop );
   aGroupButtonsLayout->setSpacing( 6 );
   aGroupButtonsLayout->setMargin( 11 );
 
-  QPushButton* aOkBtn = new QPushButton( tr( "&OK" ), aGroupButtons, "buttonOk" );
+  QPushButton* aOkBtn = new QPushButton( tr( "BUT_OK" ), aGroupButtons );
   aOkBtn->setAutoDefault( TRUE );
   aOkBtn->setDefault( TRUE );
   aGroupButtonsLayout->addWidget( aOkBtn, 0, 0 );
   aGroupButtonsLayout->addItem( new QSpacerItem( 5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 1 );
 
-  QPushButton* aCancelBtn = new QPushButton( tr( "&Cancel" ) , aGroupButtons, "buttonCancel" );
+  QPushButton* aCancelBtn = new QPushButton( tr( "BUT_CANCEL" ) , aGroupButtons );
   aCancelBtn->setAutoDefault( TRUE );
   aGroupButtonsLayout->addWidget( aCancelBtn, 0, 2 );
 
-  QPushButton* aHelpBtn = new QPushButton( tr( "&Help" ) , aGroupButtons, "buttonHelp" );
+  QPushButton* aHelpBtn = new QPushButton( tr( "BUT_HELP" ) , aGroupButtons );
   aHelpBtn->setAutoDefault( TRUE );
   aGroupButtonsLayout->addWidget( aHelpBtn, 0, 3 );
 
@@ -302,29 +323,29 @@ void VisuGUI_StreamLinesDlg::initFromPrsObject ( VISU::ColoredPrs3d_i* thePrs,
   aMax = aStreamLinesPL->GetMaxPropagationTime();
   myPropTime->setRange(aMin,aMax);
   myPropTime->setValue(aStreamLinesPL->GetPropagationTime());
-  myPropTime->setLineStep((aMax-aMin)/aNbOfSteps);
+  myPropTime->setSingleStep((aMax-aMin)/aNbOfSteps);
 
   aMin = aStreamLinesPL->GetMinStepLength();
   aMax = aStreamLinesPL->GetMaxStepLength();
   myStepLen->setRange(aMin,aMax);
   myStepLen->setValue(aStreamLinesPL->GetStepLength());
-  myStepLen->setLineStep((aMax-aMin)/aNbOfSteps);
+  myStepLen->setSingleStep((aMax-aMin)/aNbOfSteps);
 
   aMin = aStreamLinesPL->GetMinIntegrationStep();
   aMax = aStreamLinesPL->GetMaxIntegrationStep();
   myIntegStepLen->setRange(aMin,aMax);
   myIntegStepLen->setValue(aStreamLinesPL->GetIntegrationStep());
-  myIntegStepLen->setLineStep((aMax-aMin)/aNbOfSteps);
+  myIntegStepLen->setSingleStep((aMax-aMin)/aNbOfSteps);
 
   switch (myPrsCopy->GetDirection()) {
   case VISU::StreamLines::FORWARD:
-    myDirCombo->setCurrentItem(0);
+    myDirCombo->setCurrentIndex(0);
     break;
   case VISU::StreamLines::BACKWARD:
-    myDirCombo->setCurrentItem(1);
+    myDirCombo->setCurrentIndex(1);
     break;
   case VISU::StreamLines::BOTH:
-    myDirCombo->setCurrentItem(2);
+    myDirCombo->setCurrentIndex(2);
   }
   myUseScalar->setChecked(myPrsCopy->IsColored());
   myPntPercent->setValue(myPrsCopy->GetUsedPoints());
@@ -341,11 +362,11 @@ void VisuGUI_StreamLinesDlg::initFromPrsObject ( VISU::ColoredPrs3d_i* thePrs,
     for (int i = 0; i < PRSLIST.count(); i++) { \
       VISU::Prs3d_i* aPrs = dynamic_cast<VISU::Prs3d_i*>(VISU::GetServant(PRSLIST[i]).in()); \
       if (aPrs == NULL) continue; \
-      if (aSrcEntry == aPrs->GetEntry()) { \
+      if (aSrcEntry == aPrs->GetEntry().c_str()) { \
         onSourceTypeChange(PRSNUM); \
-       myUseSrcCombo->setCurrentItem(PRSNUM); \
+       myUseSrcCombo->setCurrentIndex(PRSNUM); \
        mySrcCombo->setEnabled(true); \
-       mySrcCombo->setCurrentItem(i); \
+       mySrcCombo->setCurrentIndex(i); \
        return; \
       } \
     }
@@ -362,7 +383,7 @@ void VisuGUI_StreamLinesDlg::initFromPrsObject ( VISU::ColoredPrs3d_i* thePrs,
     return;
 
   myInputPane->initFromPrsObject( myPrsCopy );
-  myTabBox->setCurrentPage( 0 );
+  myTabBox->setCurrentIndex( 0 );
 
 }
 
@@ -370,7 +391,7 @@ int VisuGUI_StreamLinesDlg::storeToPrsObject (VISU::ColoredPrs3d_i* thePrs)
 {
   if(!myInputPane->check() || !GetScalarPane()->check())
     return 0;
-
+  
   int anIsOk = myInputPane->storeToPrsObject( myPrsCopy );
   anIsOk &= GetScalarPane()->storeToPrsObject( myPrsCopy );
   
@@ -378,14 +399,14 @@ int VisuGUI_StreamLinesDlg::storeToPrsObject (VISU::ColoredPrs3d_i* thePrs)
     myPrsCopy->ShowColored(myUseScalar->isChecked());
     if (!myPrsCopy->IsColored()) {
       SALOMEDS::Color aColor;
-      aColor.R = myColor.red()/255.;
-      aColor.G = myColor.green()/255.;
-      aColor.B = myColor.blue()/255.;
+      aColor.R = SelColor->color().red()/255.;
+      aColor.G = SelColor->color().green()/255.;
+      aColor.B = SelColor->color().blue()/255.;
       myPrsCopy->SetColor(aColor);
     }
 
     VISU::StreamLines::Direction aDirection = VISU::StreamLines::BOTH;
-    switch (myDirCombo->currentItem()) {
+    switch (myDirCombo->currentIndex()) {
     case 0:
       aDirection = VISU::StreamLines::FORWARD;
       break;
@@ -397,8 +418,8 @@ int VisuGUI_StreamLinesDlg::storeToPrsObject (VISU::ColoredPrs3d_i* thePrs)
     }
 
     VISU::Prs3d_var aPrs;
-    int aSrcSelection = myUseSrcCombo->currentItem();
-    int aSrcItem = (mySrcCombo->count() > 0)? mySrcCombo->currentItem() : -1;
+    int aSrcSelection = myUseSrcCombo->currentIndex();
+    int aSrcItem = (mySrcCombo->count() > 0)? mySrcCombo->currentIndex() : -1;
     if ((aSrcSelection > 0) && (aSrcItem > -1)) {
       VISU::VISUType aType;
       QString aName;
@@ -444,20 +465,23 @@ int VisuGUI_StreamLinesDlg::storeToPrsObject (VISU::ColoredPrs3d_i* thePrs)
 */
 void VisuGUI_StreamLinesDlg::setColor( QColor color )
 {
-  myColor = color;
-  SelColor->setPaletteBackgroundColor(myColor);
+  /*Color = color;
+  QPalette aPal = SelColor->palette();
+  aPal.setColor( SelColor->backgroundRole(), myColor );
+  SelColor->setPalette( aPal );*/
+  SelColor->setColor( color );
 }
 
 
 /*!
   Called when "Select Color" buttonx clicked
 */
-void VisuGUI_StreamLinesDlg::setVColor()
+/*void VisuGUI_StreamLinesDlg::setVColor()
 {
   QColor cnew = QColorDialog::getColor( myColor, this );
   if ( cnew.isValid() )
     setColor( cnew );
-}
+}*/
 
 
 /*!
@@ -484,7 +508,7 @@ void VisuGUI_StreamLinesDlg::IntegrationStepChanged(double theValue) {
 }
 
 void VisuGUI_StreamLinesDlg::PropagationTimeChanged(double theValue) {
-  myStepLen->setMaxValue(theValue);
+  myStepLen->setMaximum(theValue);
 }
 
 void VisuGUI_StreamLinesDlg::onSourceTypeChange(int theIndex) {
@@ -497,16 +521,16 @@ void VisuGUI_StreamLinesDlg::onSourceTypeChange(int theIndex) {
 
   switch(theIndex) {
   case 1: // Entity
-    mySrcCombo->insertStringList(myEntitiesLst);
+    mySrcCombo->addItems(myEntitiesLst);
     return;
   case 2: // Family
-    mySrcCombo->insertStringList(myFamilisLst);
+    mySrcCombo->addItems(myFamilisLst);
     return;
   case 3: // Group
-    mySrcCombo->insertStringList(myGroupsLst);
+    mySrcCombo->addItems(myGroupsLst);
     return;
   case 4: // Presentation
-    mySrcCombo->insertStringList(myPrsLst);
+    mySrcCombo->addItems(myPrsLst);
     return;
   }
 }
index 08ca73474c2a394db30ec8056c5c1e0bbaed7727..a9997da79f45e9b7ee9b36b9e86543fc7660d8aa 100644 (file)
@@ -1,42 +1,44 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VisuGUI_StreamLinesDlg.h
 //  Author : Vitaly SMETANNIKOV
 //  Module : VISU
-
+//
 #ifndef VISUGUI_STREAMLINESDLG_H
 #define VISUGUI_STREAMLINESDLG_H
 
 #include "VisuGUI_Prs3dDlg.h"
 
-#include <qlabel.h>
-#include <qcombobox.h>
-#include <qcheckbox.h>
-#include <qstringlist.h>
-#include <qtabwidget.h>
+class QTabWidget;
+class QCheckBox;
+class QComboBox;
+
 
 #include "VISUConfig.hh"
 
 class SalomeApp_Module;
 class VisuGUI_InputPane;
-class QtxDblSpinBox;
+class QtxDoubleSpinBox;
+class QtxColorButton;
 
 namespace VISU
 {
@@ -74,25 +76,24 @@ private slots:
 private:
   VISU::Mesh_ptr createMesh(VISU::VISUType theType, QString theName);
 
-    QtxDblSpinBox* myStepLen;
-    QtxDblSpinBox* myIntegStepLen;
-    QtxDblSpinBox* myPropTime;
+    QtxDoubleSpinBox* myStepLen;
+    QtxDoubleSpinBox* myIntegStepLen;
+    QtxDoubleSpinBox* myPropTime;
     QComboBox* myDirCombo;
     QCheckBox* myUseScalar;
-    QPushButton*    SelColor;
-    QColor          myColor;
+    QtxColorButton*   SelColor;
     //QCheckBox* myUseSrcChk;
     QComboBox* myUseSrcCombo;
-    QtxDblSpinBox* myPntPercent;
+    QtxDoubleSpinBox* myPntPercent;
     QComboBox* mySrcCombo;
 
     QTabWidget*            myTabBox;
     VisuGUI_InputPane*     myInputPane;
 
-    QValueList<VISU::Prs3d_var> myPrsList;
-    QValueList<VISU::Prs3d_var> myEntityList;
-    QValueList<VISU::Prs3d_var> myFamilyList;
-    QValueList<VISU::Prs3d_var> myGroupList;
+    QList<VISU::Prs3d_var> myPrsList;
+    QList<VISU::Prs3d_var> myEntityList;
+    QList<VISU::Prs3d_var> myFamilyList;
+    QList<VISU::Prs3d_var> myGroupList;
     QStringList myEntitiesLst;
     QStringList myFamilisLst;
     QStringList myGroupsLst;
@@ -103,7 +104,7 @@ private:
     SalomeApp_Module* myVisuGUI;
 
 private slots:
-  void setVColor();
+  //void setVColor();
   void enableSetColor();
 };
 
diff --git a/src/VISUGUI/VisuGUI_Sweep.cxx b/src/VISUGUI/VisuGUI_Sweep.cxx
new file mode 100644 (file)
index 0000000..cf33ba4
--- /dev/null
@@ -0,0 +1,541 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
+//  File   : VisuGUI_Slider.cxx
+//  Author : Oleg UVAROV
+//  Module : VISU
+//
+#include "VisuGUI_Sweep.h"
+
+#include "SUIT_ResourceMgr.h"
+
+#include "LightApp_SelectionMgr.h"
+
+#include "VISU_Actor.h"
+
+#include "VisuGUI.h"
+#include "VisuGUI_Tools.h"
+#include "VisuGUI_ViewTools.h"
+#include "VISU_ColoredPrs3d_i.hh"
+#include "VISU_Actor.h"
+
+#include "QtxDockWidget.h"
+#include "QtxIntSpinBox.h"
+#include "QtxDoubleSpinBox.h"
+
+#include <QMainWindow>
+#include <QComboBox>
+#include <QFont>
+#include <QLabel>
+#include <QLayout>
+#include <QLineEdit>
+#include <QToolButton>
+#include <QToolTip>
+#include <QSlider>
+#include <QGroupBox>
+#include <QCheckBox>
+#include <QRadioButton>
+#include <QTimer>
+#include <QAction>
+
+#include <vtkMath.h>
+
+/*!
+  Constructor
+*/
+VisuGUI_Sweep::VisuGUI_Sweep( VisuGUI* theModule, 
+                             QMainWindow* theParent,
+                             LightApp_SelectionMgr* theSelectionMgr )
+  : QWidget( theParent )
+  , myModule( theModule )
+  , myViewWindow( NULL )
+{
+  setWindowTitle( tr("TITLE") );
+  setObjectName( tr("TITLE") );
+
+  SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
+
+  //----------------------------------------------------------------------------
+  QVBoxLayout* aVBoxLayout = new QVBoxLayout( this );
+
+  QTabWidget* aTabWidget = new QTabWidget( this );
+  aTabWidget->setSizePolicy( QSizePolicy::Preferred, QSizePolicy::Fixed );
+  aVBoxLayout->addWidget( aTabWidget );
+
+  {
+    QWidget* aNavigationTab = new QWidget();
+    {
+      QVBoxLayout* aVBoxLayout = new QVBoxLayout( aNavigationTab );
+      {
+       QHBoxLayout* aHBoxLayout = new QHBoxLayout();
+       
+       QLabel* aStartSweepPosition = new QLabel( aNavigationTab );
+       aStartSweepPosition->setText( tr( "START_SWEEP_POSITION" ) );
+       aHBoxLayout->addWidget( aStartSweepPosition );
+      
+       mySweepSlider = new QSlider( aNavigationTab );
+       mySweepSlider->setOrientation( Qt::Horizontal );
+       mySweepSlider->setMinimum( 0 );
+       aHBoxLayout->addWidget( mySweepSlider );
+       
+       QLabel* anEndSweepPosition = new QLabel( aNavigationTab );
+       anEndSweepPosition->setText( tr( "END_SWEEP_POSITION" ) );
+       aHBoxLayout->addWidget( anEndSweepPosition );
+       
+       aVBoxLayout->addLayout( aHBoxLayout );
+      }
+      {
+       QHBoxLayout* aHBoxLayout = new QHBoxLayout();
+      
+       myFirstButton = new QToolButton( aNavigationTab );
+       myFirstButton->setIcon( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_FIRST" ) ) );
+       myFirstButton->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
+       connect( myFirstButton, SIGNAL( clicked() ), SLOT( onFirst() ) );
+       aHBoxLayout->addWidget( myFirstButton );
+       
+       myPreviousButton = new QToolButton( aNavigationTab );
+       myPreviousButton->setIcon( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_PREVIOUS" ) ) );
+       myPreviousButton->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
+       connect( myPreviousButton, SIGNAL( clicked() ), SLOT( onPrevious() ) );
+       aHBoxLayout->addWidget( myPreviousButton );
+       
+       myPlayButton = new QToolButton( aNavigationTab );
+       myPlayButton->setIcon( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_PLAY" ) ) );
+       myPlayButton->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
+       myPlayButton->setCheckable( true );
+       aHBoxLayout->addWidget( myPlayButton );
+       
+       myNextButton = new QToolButton( aNavigationTab );
+       myNextButton->setIcon( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_NEXT" ) ) );
+       myNextButton->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
+       connect( myNextButton, SIGNAL( clicked() ), SLOT( onNext() ) );
+       aHBoxLayout->addWidget( myNextButton );
+       
+       myLastButton = new QToolButton( aNavigationTab );
+       myLastButton->setIcon( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_LAST" ) ) );
+       myLastButton->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
+       connect( myLastButton, SIGNAL( clicked() ), SLOT( onLast() ) );
+       aHBoxLayout->addWidget( myLastButton );
+       
+       aVBoxLayout->addLayout( aHBoxLayout );
+      }
+      {
+       QHBoxLayout* aHBoxLayout = new QHBoxLayout();
+      
+       QToolButton* aStopButton = new QToolButton( aNavigationTab );
+       aStopButton->setIcon( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SWEEP_STOP" ) ) );
+       aStopButton->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
+       aStopButton->setCheckable( false );
+       connect( aStopButton, SIGNAL( clicked( ) ), SLOT( onStop( ) ) );
+       aHBoxLayout->addWidget( aStopButton );
+       
+       myIsCycled = new QCheckBox( aNavigationTab );
+       myIsCycled->setText( tr( "IS_CYCLED" ) );
+       myIsCycled->setChecked( false );
+       aHBoxLayout->addWidget( myIsCycled );
+       
+       aVBoxLayout->addLayout( aHBoxLayout );
+      }
+
+      aTabWidget->addTab( aNavigationTab, tr( "NAVIGATION_TAB" ) );
+    }
+  }
+  {
+    QWidget* aPropertiesTab = new QWidget();
+    {
+      QGridLayout* aGridLayout = new QGridLayout( aPropertiesTab );     
+      {
+       QHBoxLayout* aHBoxLayout = new QHBoxLayout();
+       
+       QLabel* aModeAnnotation = new QLabel( aPropertiesTab );
+       aModeAnnotation->setSizePolicy( QSizePolicy::Fixed, QSizePolicy::Preferred );
+       aModeAnnotation->setText( tr( "MODE" ) );
+       aHBoxLayout->addWidget( aModeAnnotation );
+       
+       mySweepMode = new QComboBox( aPropertiesTab );
+       mySweepMode->insertItems( 0, QStringList() 
+                                 << tr( "LINEAR" ) 
+                                 << tr( "COSINUSOIDAL" ) 
+                                 << tr( "SINUSOIDAL" ) );
+       mySweepMode->setCurrentIndex( aResourceMgr->integerValue( "VISU", "sweeping_modes", 0 ) );
+       aHBoxLayout->addWidget( mySweepMode );
+       
+       myIntervals = new QComboBox( aPropertiesTab );
+       myIntervals->insertItems( 0, QStringList() 
+                                 << tr( "[ 0, +PI ]" ) 
+                                 << tr( "[ -PI, +PI ]" ) );
+       myIntervals->setCurrentIndex( aResourceMgr->integerValue( "VISU", "sweeping_is2PI", 0 ) );
+       aHBoxLayout->addWidget( myIntervals );
+       
+       aGridLayout->addLayout( aHBoxLayout, 0, 0, 1, 2 );
+      }
+      
+      QLabel* aNumberOfStepsAnnotation = new QLabel( aPropertiesTab );
+      aNumberOfStepsAnnotation->setSizePolicy( QSizePolicy::Fixed, QSizePolicy::Preferred );
+      aNumberOfStepsAnnotation->setText( tr( "NUMBER_OF_STEPS" ) );
+      aGridLayout->addWidget( aNumberOfStepsAnnotation, 1, 0, 1, 1 );
+      
+      myNumberOfSteps = new QtxIntSpinBox( aPropertiesTab );
+      connect( myNumberOfSteps, SIGNAL( valueChanged( int ) ), SLOT( onNumberOfStepsChanged( int ) ) );
+      myNumberOfSteps->setValue( aResourceMgr->integerValue( "VISU", "sweeping_number_steps", 40 ) );
+      aGridLayout->addWidget( myNumberOfSteps, 1, 1, 1, 1 );
+      
+      QLabel* aStepDelayAnnotation = new QLabel( aPropertiesTab );
+      aStepDelayAnnotation->setSizePolicy( QSizePolicy::Fixed, QSizePolicy::Preferred );
+      aStepDelayAnnotation->setText( tr( "DELAY_BETWEEN_STEPS" ) );
+      aGridLayout->addWidget( aStepDelayAnnotation, 2, 0, 1, 1 );
+      
+      myStepDelay = new QtxDoubleSpinBox( aPropertiesTab );
+      myStepDelay->setValue( aResourceMgr->doubleValue("VISU", "sweeping_time_step", 0.1) );
+      aGridLayout->addWidget( myStepDelay, 2, 1, 1, 1 );
+    }
+
+    aTabWidget->addTab( aPropertiesTab, tr( "PROPERTIES_TAB" ) );
+  }
+
+  {
+    QSpacerItem* aSpacerItem = new QSpacerItem( 16, 20, QSizePolicy::Minimum, QSizePolicy::Expanding );
+    aVBoxLayout->addItem( aSpacerItem );
+  }
+
+
+  //----------------------------------------------------------------------------
+  QtxDockWidget* aQtxDockWidget = new QtxDockWidget( true, theParent );
+  theParent->addDockWidget( Qt::BottomDockWidgetArea , aQtxDockWidget );
+  aQtxDockWidget->setObjectName( objectName() );
+  aQtxDockWidget->setWidget( this );
+
+  myToggleViewAction = aQtxDockWidget->toggleViewAction();
+  myToggleViewAction->setIcon( QIcon( aResourceMgr->loadPixmap( "VISU", tr( "ICON_SWEEP_PANEL" ) ) ) );
+  myToggleViewAction->setToolTip( tr( "MEN_SWEEP_PANE" ) );
+  myToggleViewAction->setText( tr( "MEN_SWEEP_PANE" ) );
+  myToggleViewAction->setCheckable( true );
+  aQtxDockWidget->setVisible( false );
+
+  connect( myToggleViewAction, SIGNAL( toggled( bool ) ), this, SLOT( onToggleView( bool ) ) );
+
+  //----------------------------------------------------------------------------
+  myTimer = new QTimer( this );
+
+  myPlayPixmap = aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_PLAY" ) );
+  myPausePixmap = aResourceMgr->loadPixmap( "VISU", tr( "ICON_SLIDER_PAUSE" ) );
+
+  connect( myTimer, SIGNAL( timeout() ), SLOT( onTimeout() ) );
+
+  connect( myPlayButton, SIGNAL( toggled( bool ) ), SLOT( onPlay( bool ) ) );
+
+  connect( mySweepSlider, SIGNAL( valueChanged( int ) ), SLOT( onValueChanged( int ) ) );
+
+  connect( myStepDelay, SIGNAL( valueChanged( double ) ), SLOT( onDelayChanged( double ) ) );
+
+  connect( mySweepMode, SIGNAL( currentIndexChanged( int ) ), SLOT( onModeChanged( int ) ) );
+
+  connect( theModule, SIGNAL( moduleDeactivated() ), SLOT( onModuleDeactivated() ) );
+
+  connect( theModule, SIGNAL( moduleActivated() ), SLOT( onModuleActivated() ) );
+
+  connect( theSelectionMgr, SIGNAL( currentSelectionChanged() ), SLOT( onSelectionChanged() ) );
+
+  onSelectionChanged();
+  
+  onModeChanged( mySweepMode->currentIndex() );
+}
+
+
+//----------------------------------------------------------------------------
+VisuGUI_Sweep::~VisuGUI_Sweep()
+{}
+
+
+//----------------------------------------------------------------------------
+QAction* VisuGUI_Sweep::toggleViewAction()
+{
+  return myToggleViewAction;
+}
+
+
+//----------------------------------------------------------------------------
+void VisuGUI_Sweep::onModuleDeactivated()
+{
+  setHidden( true );
+
+  onEnable( true );
+}
+
+
+//----------------------------------------------------------------------------
+void VisuGUI_Sweep::onModuleActivated()
+{
+  setHidden( false );
+}
+
+
+//----------------------------------------------------------------------------
+namespace
+{
+  struct TEnabler
+  {
+    VisuGUI_Sweep* myWidget;
+    bool& myIsValidSelection;
+
+    TEnabler( VisuGUI_Sweep* theWidget, bool& theIsValidSelection )
+      : myWidget( theWidget )
+      , myIsValidSelection( theIsValidSelection )
+    {}
+    
+    ~TEnabler()
+    {
+      myWidget->onEnable( !myIsValidSelection );
+    }
+  };
+}
+
+
+//----------------------------------------------------------------------------
+void VisuGUI_Sweep::onSelectionChanged()
+{
+  VISU_Actor* anActor = NULL;
+  VISU::Prs3d_i* aPrs3d = NULL;
+  SVTK_ViewWindow* aViewWindow = NULL;
+
+  bool anIsValidSelection = VISU::GetPrs3dSelectionInfo( myModule, aPrs3d, aViewWindow, anActor );
+
+  // To instantiate special helper class which will analyze validity of selection 
+  // and make appropritate actions
+  TEnabler anEnabler( this, anIsValidSelection );
+
+  anIsValidSelection &= bool( aViewWindow );
+
+  // To keep the pointer on the view window properly it is necessary to get known when
+  // it will be destroyed
+  if ( myViewWindow != aViewWindow ) {
+    if ( myViewWindow )
+      disconnect( myViewWindow, SIGNAL( destroyed( QObject * ) ), this, SLOT( onSelectionChanged() ) );
+
+    myViewWindow = aViewWindow;
+
+    if ( myViewWindow )
+      connect( myViewWindow, SIGNAL( destroyed( QObject * ) ), this, SLOT( onSelectionChanged() ) );
+  }
+
+  if(!VISU::GetActiveViewWindow<SVTK_ViewWindow>(myModule)) {
+    myActor = NULL;
+    return;
+  }
+
+  VISU::ColoredPrs3d_i* aColoredPrs3d = dynamic_cast< VISU::ColoredPrs3d_i* >( aPrs3d );
+  anIsValidSelection &= ( aColoredPrs3d && aColoredPrs3d->IsTimeStampFixed() );
+
+  if ( myColoredPrs3d ) {
+    myColoredPrs3d->SetMapScale( 1.0 );
+    myColoredPrs3d->UpdateActors();
+  }
+
+  myColoredPrs3d = aColoredPrs3d;
+
+  anIsValidSelection &= ( anActor && anActor->GetVisibility() );
+
+  myActor = anActor;
+}
+
+
+//----------------------------------------------------------------------------
+void VisuGUI_Sweep::onValueChanged( int value )
+{
+  bool anIsValidSelection = ( myColoredPrs3d != NULL )
+                          && (myActor.GetPointer() != NULL );
+
+  if ( !anIsValidSelection )
+    return;
+
+  QApplication::setOverrideCursor(Qt::WaitCursor);
+
+  int aSweepMode = mySweepMode->currentIndex();
+  int aNbSteps = myNumberOfSteps->value();
+  
+  double anArgument = double( value ) / aNbSteps;
+
+  int anIntervalMode = myIntervals->currentIndex();
+  // To correct the input value according to the given interval mode
+  if ( aSweepMode != 0 ) {
+    switch ( anIntervalMode ) {
+    case 0 :
+      anArgument = vtkMath::Pi() * anArgument;
+      break;
+    case 1 :
+      anArgument = -vtkMath::Pi() + 2.0 * vtkMath::Pi() * anArgument;
+      break;
+    default :
+      break;
+    }
+  }
+  
+  // To correct the input value according to the given sweep mode
+  double aValue = anArgument;
+  switch ( aSweepMode ) {
+  case 1 :
+    aValue = ( 1.0 - cos( anArgument ) ) / 2.0;
+    break;
+  case 2 :
+    aValue = sin( anArgument - vtkMath::Pi() / 2.0 );
+    break;
+  default :
+    break;
+  }
+
+  try {
+    myColoredPrs3d->SetMapScale( aValue );
+    myColoredPrs3d->UpdateActor( myActor );
+    if(myViewWindow)
+      myViewWindow->Repaint();
+  } catch (std::exception& exc) {
+    INFOS( "Follow exception was occured :\n" << exc.what() );
+  } catch (...) {
+    INFOS( "Unknown exception was occured!" );
+  }
+
+  QApplication::restoreOverrideCursor();
+}
+
+
+//----------------------------------------------------------------------------
+void VisuGUI_Sweep::onDelayChanged( double value )
+{
+  myTimer->start( int( value * 1000 ) );
+}
+
+
+//----------------------------------------------------------------------------
+void VisuGUI_Sweep::onNumberOfStepsChanged( int value )
+{
+  int anOldNumberOfSteps = mySweepSlider->maximum();
+  mySweepSlider->setMaximum( value );
+
+  double aValue = double( value );
+
+  double aNewSweepValue = aValue / anOldNumberOfSteps * mySweepSlider->value();
+  mySweepSlider->setValue( int( aNewSweepValue + 1 ) );
+
+  double aNewPageStep = aValue / 10;
+  mySweepSlider->setPageStep( int( aNewPageStep + 1 ) );
+}
+
+
+//----------------------------------------------------------------------------
+void VisuGUI_Sweep::onModeChanged( int )
+{
+  myIntervals->setEnabled( mySweepMode->currentIndex() != 0 );
+}
+
+
+//----------------------------------------------------------------------------
+void VisuGUI_Sweep::onFirst()
+{
+  mySweepSlider->setValue( mySweepSlider->minimum() );
+}
+
+
+//----------------------------------------------------------------------------
+void VisuGUI_Sweep::onPrevious()
+{
+  mySweepSlider->setValue( mySweepSlider->value() - 1 );
+}
+
+void VisuGUI_Sweep::onNext()
+{
+  mySweepSlider->setValue( mySweepSlider->value() + 1 );
+}
+
+void VisuGUI_Sweep::onLast()
+{
+  mySweepSlider->setValue( mySweepSlider->maximum() );
+}
+
+//----------------------------------------------------------------------------
+void VisuGUI_Sweep::onPlay( bool on )
+{
+  if ( on ) {
+    myPlayButton->setIcon( myPausePixmap );
+    myTimer->start( int( myStepDelay->value() * 1000 ) );
+    myPlayButton->setChecked( true );
+  } else {
+    myTimer->stop();
+    myPlayButton->setChecked( false );
+    myPlayButton->setIcon( myPlayPixmap );
+  }
+}
+
+
+//----------------------------------------------------------------------------
+void VisuGUI_Sweep::onToggleView( bool on )
+{
+  if ( !on ) {
+    onPlay( on );
+  }
+}
+
+
+//----------------------------------------------------------------------------
+void VisuGUI_Sweep::onStop()
+{
+  onPlay( false );
+  mySweepSlider->setValue( mySweepSlider->maximum() );
+
+  if ( myViewWindow )
+    myViewWindow->Repaint();
+}
+
+
+//----------------------------------------------------------------------------
+void VisuGUI_Sweep::onEnable( bool on )
+{
+  onStop();
+
+  mySweepSlider->setEnabled( !on );
+  
+  myFirstButton->setEnabled( !on );
+  myPreviousButton->setEnabled( !on );
+  
+  myPlayButton->setEnabled( !on );
+  
+  myNextButton->setEnabled( !on );
+  myLastButton->setEnabled( !on );
+}
+
+
+//----------------------------------------------------------------------------
+void VisuGUI_Sweep::onTimeout()
+{
+  int value = mySweepSlider->value();
+  if ( value < mySweepSlider->maximum() ) {
+    mySweepSlider->setValue( value + 1 );
+  } else {
+    if ( myIsCycled->isChecked() )
+      mySweepSlider->setValue( 0 );
+    else
+      myPlayButton->setChecked( false );
+    //myStopButton->setEnabled( false );
+  }
+}
+
+
+//----------------------------------------------------------------------------
diff --git a/src/VISUGUI/VisuGUI_Sweep.h b/src/VISUGUI/VisuGUI_Sweep.h
new file mode 100644 (file)
index 0000000..1055330
--- /dev/null
@@ -0,0 +1,141 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
+//  File   : VisuGUI_Sweep.h
+//  Author : Oleg UVAROV
+//  Module : VISU
+//
+#ifndef VisuGUI_Sweep_HeaderFile
+#define VisuGUI_Sweep_HeaderFile
+
+#include "SALOME_GenericObjPointer.hh"
+
+#include <vtkSmartPointer.h>
+
+#include <QWidget>
+#include <QPixmap>
+
+class QComboBox;
+class QToolButton;
+class QSlider;
+class QSpinBox;
+class QCheckBox;
+class QMainWindow;
+class QTimer;
+class QAction;
+
+class QtxIntSpinBox;
+class QtxDoubleSpinBox;
+
+class LightApp_SelectionMgr;
+class SVTK_ViewWindow;
+class VISU_Actor;
+class VisuGUI;
+
+
+namespace VISU
+{
+  class ColoredPrs3d_i;
+}
+
+
+//----------------------------------------------------------------------------
+class VisuGUI_Sweep : public QWidget
+{
+  Q_OBJECT;
+
+public:
+  VisuGUI_Sweep( VisuGUI* theModule, 
+                QMainWindow* theParent,
+                LightApp_SelectionMgr* theSelectionMgr );
+
+  virtual ~VisuGUI_Sweep();
+
+  QAction* toggleViewAction();
+
+public slots:
+  virtual void     onSelectionChanged();
+
+  virtual void     onFirst();
+
+  virtual void     onPrevious();
+
+  virtual void     onPlay( bool );
+
+  virtual void     onNext();
+
+  virtual void     onLast();
+
+  virtual void     onStop();
+
+  virtual void     onEnable( bool );
+
+  virtual void     onValueChanged( int );
+
+  virtual void     onDelayChanged( double );
+
+  virtual void     onNumberOfStepsChanged( int );
+
+  virtual void     onModeChanged( int );
+
+  virtual void     onTimeout();
+
+  virtual void     onToggleView( bool );
+
+  void             onModuleDeactivated();
+
+  void             onModuleActivated();
+
+private:
+  QSlider*          mySweepSlider;
+
+  QToolButton*      myFirstButton;
+  QToolButton*      myPreviousButton;
+  QToolButton*      myPlayButton;
+  QToolButton*      myNextButton;
+  QToolButton*      myLastButton;
+
+  QCheckBox*        myIsCycled;
+
+  QComboBox*        mySweepMode;
+  QtxIntSpinBox*    myNumberOfSteps;
+
+  QComboBox*        myIntervals;
+  QtxDoubleSpinBox* myStepDelay;
+
+  QTimer*           myTimer;
+  QPixmap           myPlayPixmap;
+  QPixmap           myPausePixmap;
+  QAction*          myToggleViewAction;
+
+  VisuGUI*          myModule;
+  SVTK_ViewWindow*  myViewWindow;
+
+  vtkSmartPointer< VISU_Actor > myActor;
+  SALOME::GenericObjPtr< VISU::ColoredPrs3d_i > myColoredPrs3d;
+};
+
+
+//----------------------------------------------------------------------------
+
+
+#endif
diff --git a/src/VISUGUI/VisuGUI_Table3dDlg.cxx b/src/VISUGUI/VisuGUI_Table3dDlg.cxx
new file mode 100644 (file)
index 0000000..01224f5
--- /dev/null
@@ -0,0 +1,831 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+// VISU VISUGUI : GUI of VISU component
+// File   : VisuGUI_Table3dDlg.cxx
+// Author : Laurent CORNABE & Hubert ROLLAND
+//
+#include "VisuGUI_Table3dDlg.h"
+
+#include "VisuGUI.h"
+#include "VisuGUI_Tools.h"
+#include "VisuGUI_ViewTools.h"
+#include "VisuGUI_InputPane.h"
+
+#include "VISU_ColoredPrs3dFactory.hh"
+#include "VISU_ViewManager_i.hh"
+#include "VISU_Prs3dUtils.hh"
+
+#include <SVTK_ViewWindow.h>
+#include <SALOME_Actor.h>
+#include <SUIT_Desktop.h>
+#include <SUIT_Session.h>
+#include <SUIT_MessageBox.h>
+#include <SUIT_ResourceMgr.h>
+#include <LightApp_Application.h>
+#include <SVTK_FontWidget.h>
+#include <QtxDoubleSpinBox.h>
+
+#include <QGridLayout>
+#include <QHBoxLayout>
+#include <QVBoxLayout>
+#include <QTabWidget>
+#include <QRadioButton>
+#include <QSpinBox>
+#include <QCheckBox>
+#include <QLabel>
+#include <QPushButton>
+#include <QButtonGroup>
+#include <QGroupBox>
+#include <QLineEdit>
+
+#define SURFACE_PRS_ID 0
+#define CONTOUR_PRS_ID 1
+
+//=======================================================================
+//function : VisuGUI_Table3DPane
+//purpose  :
+//=======================================================================
+VisuGUI_Table3DPane::VisuGUI_Table3DPane( QWidget* parent )
+  : QWidget( parent ),
+    myViewWindow( VISU::GetActiveViewWindow<SVTK_ViewWindow>() ),
+    myPrs( 0 ),
+    myInitFromPrs( false )
+{
+  QGridLayout* topLayout = new QGridLayout( this );
+  topLayout->setMargin( 11 );
+  topLayout->setSpacing( 6 );
+
+  // scale
+  QLabel* scaleLabel = new QLabel( tr( "SCALE" ), this );
+  ScaleSpn = new QtxDoubleSpinBox( -1.e6, 1.e6, 0.1, this );
+  // Presentation type
+  GBPrsTypeBox = new QGroupBox( tr( "PRESENTATION_TYPE" ), this );
+  GBPrsType = new QButtonGroup( GBPrsTypeBox );
+  QRadioButton* rb1 = new QRadioButton( tr( "SURFACE" ), GBPrsTypeBox );
+  QRadioButton* rb2 = new QRadioButton( tr( "CONTOUR" ), GBPrsTypeBox );
+  GBPrsType->addButton( rb1, SURFACE_PRS_ID );
+  GBPrsType->addButton( rb2, CONTOUR_PRS_ID );
+  QHBoxLayout* GBPrsTypeBoxLayout = new QHBoxLayout( GBPrsTypeBox );
+  GBPrsTypeBoxLayout->setMargin( 11 );
+  GBPrsTypeBoxLayout->setSpacing( 6 );
+  GBPrsTypeBoxLayout->addWidget( rb1 );
+  GBPrsTypeBoxLayout->addWidget( rb2 );
+  
+  // nb Contours
+  QLabel* nbContLabel = new QLabel( tr( "NUMBER_CONTOURS" ), this );
+  NbContoursSpn = new QSpinBox( this );
+  NbContoursSpn->setMinimum( 1 );
+  NbContoursSpn->setMaximum( 999 );
+  NbContoursSpn->setSingleStep( 1 );
+
+  topLayout->addWidget( scaleLabel,    0, 0 );
+  topLayout->addWidget( ScaleSpn,      0, 1 );
+  topLayout->addWidget( GBPrsTypeBox,  1, 0, 1, 2 );
+  topLayout->addWidget( nbContLabel,   2, 0 );
+  topLayout->addWidget( NbContoursSpn, 2, 1 );
+  topLayout->setRowStretch( 3, 5 );
+
+  // signals and slots connections
+
+  connect( GBPrsType, SIGNAL( buttonClicked( int ) ), this, SLOT( onPrsType( int ) ) );
+}
+
+//=======================================================================
+//function : destructor
+//purpose  :
+//=======================================================================
+VisuGUI_Table3DPane::~VisuGUI_Table3DPane()
+{
+}
+
+//=======================================================================
+//function : onPrsType
+//purpose  :
+//=======================================================================
+void VisuGUI_Table3DPane::onPrsType( int id )
+{
+  NbContoursSpn->setEnabled( id == CONTOUR_PRS_ID );
+}
+
+//=======================================================================
+//function : storeToPrsObject
+//purpose  :
+//=======================================================================
+int VisuGUI_Table3DPane::storeToPrsObject( VISU::PointMap3d_i* thePrs )
+{
+  // scale
+  thePrs->SetScaleFactor( ScaleSpn->value() );
+
+  // prs type
+  thePrs->SetContourPrs( GBPrsType->checkedId() == CONTOUR_PRS_ID );
+
+  // nb contours
+  thePrs->SetNbOfContours( NbContoursSpn->value() );
+
+  return 1;
+}
+
+//=======================================================================
+//function : GetPrs
+//purpose  :
+//=======================================================================
+VISU::PointMap3d_i* VisuGUI_Table3DPane::GetPrs()
+{
+  return myPrs;
+}
+
+//=======================================================================
+//function : initFromPrsObject
+//purpose  :
+//=======================================================================
+void VisuGUI_Table3DPane::initFromPrsObject( VISU::PointMap3d_i* thePrs )
+{
+  myInitFromPrs = true;
+  myPrs = thePrs;
+
+  // scale
+  double aScale = thePrs->GetScaleFactor();
+  if (aScale<0)
+    aScale = 0;
+  ScaleSpn->setValue( aScale );
+
+  // prs type
+  int id = thePrs->GetIsContourPrs() ? CONTOUR_PRS_ID : SURFACE_PRS_ID;
+  GBPrsType->button( id )->setChecked( true );
+  onPrsType( id );
+
+  // nb contours
+  NbContoursSpn->setValue( thePrs->GetNbOfContours() );
+}
+
+//=======================================================================
+//function : Table Scalar Bar
+//purpose  :
+//=======================================================================
+
+VisuGUI_TableScalarBarPane::VisuGUI_TableScalarBarPane( QWidget* parent )
+  : QWidget( parent ), 
+    myBarPrs( 0 )
+{
+  QGridLayout* topLayout = new QGridLayout( this );
+  topLayout->setSpacing( 6 );
+  topLayout->setMargin( 11 );
+
+  SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
+  QString propertyName;
+  propertyName = QString( "scalar_bar_vertical_" );
+  myVerX  = aResourceMgr->doubleValue(  "VISU", propertyName + "x", 0. );
+  myVerY  = aResourceMgr->doubleValue(  "VISU", propertyName + "y", 0. );
+  myVerW  = aResourceMgr->doubleValue(  "VISU", propertyName + "width",  0. );
+  myVerH  = aResourceMgr->doubleValue(  "VISU", propertyName + "height", 0. );
+  myVerTS = aResourceMgr->integerValue( "VISU", propertyName + "title_size",  0 );
+  myVerLS = aResourceMgr->integerValue( "VISU", propertyName + "label_size",  0 );
+  myVerBW = aResourceMgr->integerValue( "VISU", propertyName + "bar_width",  0 );
+  myVerBH = aResourceMgr->integerValue( "VISU", propertyName + "bar_height", 0 );
+
+  propertyName = QString( "scalar_bar_horizontal_" );
+  myHorX  = aResourceMgr->doubleValue(  "VISU", propertyName + "x", 0. );
+  myHorY  = aResourceMgr->doubleValue(  "VISU", propertyName + "y", 0. );
+  myHorW  = aResourceMgr->doubleValue(  "VISU", propertyName + "width",  0. );
+  myHorH  = aResourceMgr->doubleValue(  "VISU", propertyName + "height", 0. );
+  myHorTS = aResourceMgr->integerValue( "VISU", propertyName + "title_size",  0 );
+  myHorLS = aResourceMgr->integerValue( "VISU", propertyName + "label_size",  0 );
+  myHorBW = aResourceMgr->integerValue( "VISU", propertyName + "bar_width",  0 );
+  myHorBH = aResourceMgr->integerValue( "VISU", propertyName + "bar_height", 0 );
+
+  // Range ============================================================
+  RangeGroup = new QGroupBox( tr( "SCALAR_RANGE_GRP" ), this );
+  QButtonGroup* RangeRB = new QButtonGroup( RangeGroup );
+  QGridLayout* RangeGroupLayout = new QGridLayout( RangeGroup );
+  RangeGroupLayout->setSpacing( 6 );
+  RangeGroupLayout->setMargin( 11 );
+
+  CBLog = new QCheckBox( tr( "LOGARITHMIC_SCALING" ), RangeGroup );
+
+  RBFrange = new QRadioButton( tr( "FIELD_RANGE_BTN" ),   RangeGroup );
+  RBIrange = new QRadioButton( tr( "IMPOSED_RANGE_BTN" ), RangeGroup );
+  RangeRB->addButton( RBFrange, 0 );
+  RangeRB->addButton( RBIrange, 1 );
+  RBFrange->setChecked( true );
+
+  MinEdit = new QLineEdit( RangeGroup );
+  MinEdit->setMinimumWidth( 70 );
+  MinEdit->setValidator( new QDoubleValidator( this ) );
+  MinEdit->setText( "0.0" );
+  QLabel* MinLabel = new QLabel( tr( "LBL_MIN" ), RangeGroup );
+  MinLabel->setBuddy( MinEdit );
+
+  MaxEdit = new QLineEdit( RangeGroup );
+  MaxEdit->setMinimumWidth( 70 );
+  MaxEdit->setValidator( new QDoubleValidator( this ) );
+  MaxEdit->setText( "0.0" );
+  QLabel* MaxLabel = new QLabel( tr( "LBL_MAX" ), RangeGroup );
+  MaxLabel->setBuddy( MaxEdit );
+
+  RangeGroupLayout->addWidget( CBLog,    1, 0, 1, 4 );
+  RangeGroupLayout->addWidget( RBFrange, 2, 0, 1, 2 );
+  RangeGroupLayout->addWidget( RBIrange, 2, 2, 1, 2 );
+  RangeGroupLayout->addWidget( MinLabel, 3, 0 );
+  RangeGroupLayout->addWidget( MinEdit,  3, 1 );
+  RangeGroupLayout->addWidget( MaxLabel, 3, 2 );
+  RangeGroupLayout->addWidget( MaxEdit,  3, 3 );
+
+  // Colors and Labels ========================================================
+  QGroupBox* ColLabGroup = new QGroupBox( tr( "COLORS_LABELS_GRP" ), this );
+  QHBoxLayout* ColLabGroupLayout = new QHBoxLayout( ColLabGroup );
+  ColLabGroupLayout->setSpacing( 6 );
+  ColLabGroupLayout->setMargin( 11 );
+
+  QLabel* ColorLabel = new QLabel( tr( "LBL_NB_COLORS" ), ColLabGroup );
+  ColorSpin = new QSpinBox( ColLabGroup );
+  ColorSpin->setMinimum( 2 );
+  ColorSpin->setMaximum( 256 );
+  ColorSpin->setSingleStep( 1 );
+  ColorSpin->setMinimumWidth( 70 );
+  ColorSpin->setValue( 64 );
+
+  QLabel* LabelLabel = new QLabel( tr( "LBL_NB_LABELS" ), ColLabGroup );
+  LabelSpin = new QSpinBox( ColLabGroup );
+  LabelSpin->setMinimum( 2 );
+  LabelSpin->setMaximum( 65 );
+  LabelSpin->setSingleStep( 1 );
+  LabelSpin->setMinimumWidth( 70 );
+  LabelSpin->setValue( 5 );
+
+  ColLabGroupLayout->addWidget( ColorLabel );
+  ColLabGroupLayout->addWidget( ColorSpin );
+  ColLabGroupLayout->addWidget( LabelLabel );
+  ColLabGroupLayout->addWidget( LabelSpin );
+
+  // Orientation ==========================================================
+  QGroupBox* OrientGroup = new QGroupBox( tr( "ORIENTATION_GRP" ), this );
+  QButtonGroup* OrientRB = new QButtonGroup( OrientGroup );
+  QHBoxLayout* OrientGroupLayout = new QHBoxLayout( OrientGroup );
+  OrientGroupLayout->setSpacing( 6 );
+  OrientGroupLayout->setMargin( 11 );
+
+  RBvert = new QRadioButton( tr( "VERTICAL_BTN" ), OrientGroup );
+  RBhori = new QRadioButton( tr( "HORIZONTAL_BTN" ), OrientGroup );
+  OrientRB->addButton( RBvert, 0 );
+  OrientRB->addButton( RBhori, 1 );
+  RBvert->setChecked( true );
+  OrientGroupLayout->addWidget( RBvert );
+  OrientGroupLayout->addWidget( RBhori );
+
+  // Origin ===============================================================
+  QGroupBox* OriginGroup = new QGroupBox( tr( "ORIGIN_GRP" ), this );
+  QHBoxLayout* OriginGroupLayout = new QHBoxLayout( OriginGroup );
+  OriginGroupLayout->setSpacing( 6 );
+  OriginGroupLayout->setMargin( 11 );
+
+  QLabel* XLabel = new QLabel( tr( "LBL_X" ), OriginGroup );
+  XSpin = new QtxDoubleSpinBox( 0.0, 1.0, 0.1, OriginGroup );
+  XSpin->setMinimumWidth( 70 );
+  XSpin->setValue( 0.01 );
+
+  QLabel* YLabel = new QLabel( tr( "LBL_Y" ), OriginGroup );
+  YSpin = new QtxDoubleSpinBox( 0.0, 1.0, 0.1, OriginGroup );
+  YSpin->setMinimumWidth( 70 );
+  YSpin->setValue( 0.1 );
+
+  OriginGroupLayout->addWidget( XLabel );
+  OriginGroupLayout->addWidget( XSpin );
+  OriginGroupLayout->addWidget( YLabel );
+  OriginGroupLayout->addWidget( YSpin );
+
+  // Dimensions =========================================================
+  QGroupBox* DimGroup = new QGroupBox( tr( "DIMENSIONS_GRP" ), this );
+  QHBoxLayout* DimGroupLayout = new QHBoxLayout( DimGroup );
+  DimGroupLayout->setSpacing( 6 );
+  DimGroupLayout->setMargin( 11 );
+
+  QLabel* WidthLabel = new QLabel( tr( "LBL_WIDTH" ), DimGroup );
+  WidthSpin = new QtxDoubleSpinBox( 0.0, 1.0, 0.1, DimGroup );
+  WidthSpin->setMinimumWidth( 70 );
+  WidthSpin->setValue( 0.1 );
+
+  QLabel* HeightLabel = new QLabel( tr( "LBL_HEIGHT" ), DimGroup );
+  HeightSpin = new QtxDoubleSpinBox( 0.0, 1.0, 0.1, DimGroup );
+  HeightSpin->setMinimumWidth( 70 );
+  HeightSpin->setValue( 0.8 );
+
+  DimGroupLayout->addWidget( WidthLabel );
+  DimGroupLayout->addWidget( WidthSpin );
+  DimGroupLayout->addWidget( HeightLabel );
+  DimGroupLayout->addWidget( HeightSpin );
+
+  myTextBtn = new QPushButton( tr( "Text properties..." ), this );
+  myBarBtn  = new QPushButton( tr( "Bar properties..." ), this );
+
+  // main layout =========================================================
+
+  topLayout->addWidget( RangeGroup,  0, 0, 1, 2 );
+  topLayout->addWidget( ColLabGroup, 1, 0, 1, 2 );
+  topLayout->addWidget( OrientGroup, 2, 0, 1, 2 );
+  topLayout->addWidget( OriginGroup, 3, 0, 1, 2 );
+  topLayout->addWidget( DimGroup,    4, 0, 1, 2 );
+  topLayout->addWidget( myTextBtn,   5, 0 );
+  topLayout->addWidget( myBarBtn,    5, 1 );
+
+  // init ================================================================
+
+  myTextDlg = new VisuGUI_TextPrefDlg( this );
+  myTextDlg->setTitleVisible( true );
+  myBarDlg = new VisuGUI_BarPrefDlg( this );
+
+  if ( RBvert->isChecked() ) {
+    myBarDlg->setRatios( myVerTS, myVerLS, myVerBW, myVerBH );
+  } else {
+    myBarDlg->setRatios( myHorTS, myHorLS, myHorBW, myHorBH );
+  }
+
+  int lp = aResourceMgr->integerValue( "VISU", propertyName + "scalar_bar_label_precision", 3 );
+  myBarDlg->setLabelsPrecision( lp );
+
+  myBarDlg->setUnitsVisible( aResourceMgr->booleanValue( "VISU", propertyName + "display_units", true ) );
+
+  // signals and slots connections ===========================================
+  connect( RangeRB,      SIGNAL( buttonClicked( int ) ),   this, SLOT( changeRange( int ) ) );
+  connect( OrientRB,     SIGNAL( buttonClicked( int ) ),   this, SLOT( changeDefaults( int ) ) );
+  connect( XSpin,        SIGNAL( valueChanged( double ) ), this, SLOT( XYChanged( double ) ) );
+  connect( YSpin,        SIGNAL( valueChanged( double ) ), this, SLOT( XYChanged( double ) ) );
+  connect( myTextBtn,    SIGNAL( clicked() ), this, SLOT( onTextPref() ) );
+  connect( myBarBtn,     SIGNAL( clicked() ), this, SLOT( onBarPref() ) );
+  changeDefaults( 0 );
+  myIsStoreTextProp = true;
+  myBusy = false;
+}
+
+//----------------------------------------------------------------------------
+
+void VisuGUI_TableScalarBarPane::onBarPref()
+{
+  if ( RBvert->isChecked() )
+    myBarDlg->setRatios( myVerTS, myVerLS, myVerBW, myVerBH );
+  else
+    myBarDlg->setRatios( myHorTS, myHorLS, myHorBW, myHorBH );
+  if ( myBarDlg->exec() ) {
+    if ( RBvert->isChecked() )
+      myBarDlg->getRatios( myVerTS, myVerLS, myVerBW, myVerBH );
+    else
+      myBarDlg->getRatios( myHorTS, myHorLS, myHorBW, myHorBH );
+  }
+}
+
+//----------------------------------------------------------------------------
+/**
+ * Initialise dialog box from presentation object
+ */
+void VisuGUI_TableScalarBarPane::initFromPrsObject( VISU::PointMap3d_i* thePrs )
+{
+  myBarPrs = dynamic_cast<VISU::PointMap3d_i*>( thePrs );
+  
+  if ( !myBarPrs )
+    return;
+
+  switch ( myBarPrs->GetScaling() ) {
+  case VISU::LOGARITHMIC:
+    CBLog->setChecked( true );
+    break;
+  default:
+    CBLog->setChecked( false );
+  }
+
+  setRange( myBarPrs->GetMin(), myBarPrs->GetMax(), myBarPrs->IsRangeFixed() );
+
+  setScalarBarData( myBarPrs->GetNbColors(), myBarPrs->GetLabels() );
+
+  // "Title"
+  CORBA::String_var aTitle = myBarPrs->GetTitle();
+  myTextDlg->setTitleText( aTitle.in() );
+  myTitle = aTitle.in();
+
+  vtkFloatingPointType R, G, B;
+  myBarPrs->GetTitleColor( R, G, B );
+
+  setPosAndSize( myBarPrs->GetPosX(),
+                myBarPrs->GetPosY(),
+                myBarPrs->GetWidth(),
+                myBarPrs->GetHeight(),
+                myBarPrs->GetBarOrientation() );
+  
+  myVerTS = myBarPrs->GetTitleSize();
+  myVerLS = myBarPrs->GetLabelSize();
+  myVerBW = myBarPrs->GetBarWidth();
+  myVerBH = myBarPrs->GetBarHeight();
+  myBarDlg->setRatios( myVerTS, myVerLS, myVerBW, myVerBH );
+
+  myBarDlg->setLabelsPrecision( VISU::ToPrecision( myBarPrs->GetLabelsFormat() ) );
+  myBarDlg->setUnitsVisible( myBarPrs->IsUnitsVisible() );
+
+  myTextDlg->myTitleFont->SetData( QColor( (int)(R*255.), (int)(G*255.), (int)(B*255.) ),
+                                  myBarPrs->GetTitFontType(),
+                                  myBarPrs->IsBoldTitle(),
+                                  myBarPrs->IsItalicTitle(),
+                                  myBarPrs->IsShadowTitle() );
+
+  // "Labels"
+  myBarPrs->GetLabelColor( R, G, B );
+
+  myTextDlg->myLabelFont->SetData( QColor( (int)(R*255.), (int)(G*255.), (int)(B*255.) ),
+                                   myBarPrs->GetLblFontType(),
+                                  myBarPrs->IsBoldLabel(),
+                                  myBarPrs->IsItalicLabel(),
+                                  myBarPrs->IsShadowLabel() );
+}
+
+//----------------------------------------------------------------------------
+/**
+ * Store values to presentation object
+ */
+int VisuGUI_TableScalarBarPane::storeToPrsObject( VISU::PointMap3d_i* thePrs ) {
+  if( !myBarPrs )
+    return 0;
+
+  myBarPrs->SetPosition( XSpin->value(), YSpin->value() );
+  myBarPrs->SetSize( WidthSpin->value(), HeightSpin->value() );
+
+  if(RBvert->isChecked()) {
+    myBarPrs->SetRatios(myVerTS, myVerLS, myVerBW, myVerBH);
+  } else {
+    myBarPrs->SetRatios(myHorTS, myHorLS, myHorBW, myHorBH);
+  }
+
+  std::string f = VISU::ToFormat( myBarDlg->getLabelsPrecision() );
+  myBarPrs->SetLabelsFormat( f.c_str() );
+  myBarPrs->SetUnitsVisible( myBarDlg->isUnitsVisible() );
+
+  myBarPrs->SetBarOrientation( ( RBvert->isChecked() )? VISU::ColoredPrs3dBase::VERTICAL : VISU::ColoredPrs3dBase::HORIZONTAL );
+  if ( CBLog->isChecked() )
+    myBarPrs->SetScaling( VISU::LOGARITHMIC );
+  else
+    myBarPrs->SetScaling( VISU::LINEAR );
+
+  if ( RBFrange->isChecked() ) {
+    myBarPrs->SetSourceRange();
+  } else {
+    myBarPrs->SetRange( MinEdit->text().toDouble(), MaxEdit->text().toDouble() );
+  }
+  myBarPrs->SetNbColors( ColorSpin->value() );
+  myBarPrs->SetLabels( LabelSpin->value() );
+
+  if ( myIsStoreTextProp ) {
+    // "Title"
+    myBarPrs->SetTitle( myTextDlg->getTitleText().toLatin1().constData() );
+
+    QColor aTitColor( 255, 255, 255 );
+    int aTitleFontFamily = VTK_ARIAL;
+    bool isTitleBold = false;
+    bool isTitleItalic = false;
+    bool isTitleShadow = false;
+
+    myTextDlg->myTitleFont->GetData( aTitColor, aTitleFontFamily, isTitleBold, isTitleItalic, isTitleShadow );
+
+    myBarPrs->SetBoldTitle( isTitleBold );
+    myBarPrs->SetItalicTitle( isTitleItalic );
+    myBarPrs->SetShadowTitle( isTitleShadow );
+    myBarPrs->SetTitFontType( aTitleFontFamily );
+    myBarPrs->SetTitleColor( aTitColor.red()/255.,
+                            aTitColor.green()/255.,
+                            aTitColor.blue()/255. );
+
+    // "Label"
+    QColor aLblColor( 255, 255, 255 );
+    int aLabelFontFamily = VTK_ARIAL;
+    bool isLabelBold = false;
+    bool isLabelItalic = false;
+    bool isLabelShadow = false;
+
+    myTextDlg->myLabelFont->GetData( aLblColor, aLabelFontFamily, isLabelBold, isLabelItalic, isLabelShadow );
+
+    myBarPrs->SetBoldLabel( isLabelBold);
+    myBarPrs->SetItalicLabel( isLabelItalic );
+    myBarPrs->SetShadowLabel( isLabelShadow );
+    myBarPrs->SetLblFontType( aLabelFontFamily );
+    myBarPrs->SetLabelColor( aLblColor.red()/255.,
+                            aLblColor.green()/255.,
+                            aLblColor.blue()/255. );
+    //    myIsStoreTextProp = false;
+  }
+  return 1;
+}
+
+//----------------------------------------------------------------------------
+/*!
+  Sets default values and range mode
+*/
+void VisuGUI_TableScalarBarPane::setRange( double imin, double imax, bool sbRange )
+{
+  MinEdit->setText( QString::number( imin ) );
+  MaxEdit->setText( QString::number( imax ) );
+
+  if ( sbRange )
+    RBIrange->setChecked( true );
+  else
+    RBFrange->setChecked( true );
+
+  changeRange( sbRange );
+}
+
+//----------------------------------------------------------------------------
+/*!
+  Called when Range mode is changed
+*/
+void VisuGUI_TableScalarBarPane::changeRange( int )
+{
+  if ( RBFrange->isChecked() ) {
+    myBarPrs->SetSourceRange();
+    MinEdit->setEnabled( false );
+    MaxEdit->setEnabled( false );
+  } else {
+    myBarPrs->SetRange( myBarPrs->GetMin(), myBarPrs->GetMax() );
+    myBarPrs->SetRange( MinEdit->text().toDouble(), MaxEdit->text().toDouble() );
+    MinEdit->setEnabled( true );
+    MaxEdit->setEnabled( true );
+  }
+
+  MinEdit->setText( QString::number( myBarPrs->GetMin() ) );
+  MaxEdit->setText( QString::number( myBarPrs->GetMax() ) );
+}
+
+//----------------------------------------------------------------------------
+/*!
+  Called when X,Y position is changed
+*/
+void VisuGUI_TableScalarBarPane::XYChanged( double )
+{
+  QtxDoubleSpinBox* snd = (QtxDoubleSpinBox*)sender();
+  if ( snd == XSpin ) {
+    WidthSpin->setMaximum( 1.0 - XSpin->value() );
+  }
+  if ( snd == YSpin ) {
+    HeightSpin->setMaximum( 1.0 - YSpin->value() );
+  }
+}
+
+//----------------------------------------------------------------------------
+/*!
+  
+*/
+void VisuGUI_TableScalarBarPane::changeScalarMode( int )
+{
+//do nothing
+}
+
+//----------------------------------------------------------------------------
+/*!
+  Sets size and position
+*/
+void VisuGUI_TableScalarBarPane::setPosAndSize( double x, double y, double w, double h, bool vert )
+{
+  if ( vert ) {
+    myVerX = x;
+    myVerY = y;
+    myVerW = w;
+    myVerH = h;
+    RBvert->setChecked( true );
+  }
+  else {
+    myHorX = x;
+    myHorY = y;
+    myHorW = w;
+    myHorH = h;
+    RBhori->setChecked( true );
+  }
+  changeDefaults( 0 );
+}
+
+//----------------------------------------------------------------------------
+/*!
+  Sets colors and labels number
+*/
+void VisuGUI_TableScalarBarPane::setScalarBarData( int colors, int labels )
+{
+  ColorSpin->setValue( colors );
+  LabelSpin->setValue( labels );
+}
+
+//----------------------------------------------------------------------------
+void VisuGUI_TableScalarBarPane::onTextPref()
+{
+  myTextDlg->storeBeginValues();
+  myIsStoreTextProp = myTextDlg->exec() || myIsStoreTextProp;
+}
+
+//----------------------------------------------------------------------------
+VisuGUI_TableScalarBarPane::~VisuGUI_TableScalarBarPane()
+{
+}
+
+//----------------------------------------------------------------------------
+/*!
+  Called when orientation is changed
+*/
+void VisuGUI_TableScalarBarPane::changeDefaults( int )
+{
+  if ( RBvert->isChecked() ) {
+    XSpin->setValue( myVerX );
+    YSpin->setValue( myVerY );
+    WidthSpin->setValue( myVerW );
+    HeightSpin->setValue( myVerH );
+  }
+  else {
+    XSpin->setValue( myHorX );
+    YSpin->setValue( myHorY );
+    WidthSpin->setValue( myHorW );
+    HeightSpin->setValue( myHorH );
+  }
+}
+
+//=======================================================================
+//function : Check
+//purpose  : Called when <OK> button is clicked, validates data and closes dialog
+//=======================================================================
+bool VisuGUI_TableScalarBarPane::check()
+{
+  double minVal = MinEdit->text().toDouble();
+  double maxVal = MaxEdit->text().toDouble();
+  if ( RBIrange->isChecked() ) {
+    if (minVal >= maxVal) {
+      SUIT_MessageBox::warning( this,tr("WRN_VISU"),
+                               tr("MSG_MINMAX_VALUES") );
+      return false;
+    }
+  }
+
+  // check if logarithmic mode is on and check imposed range to not contain negative values
+  if ( CBLog->isChecked() ) {
+    if ( minVal <= 0.0 || maxVal <= 0.0) {
+      if ( RBIrange->isChecked() ) {
+       SUIT_MessageBox::warning( this,
+                                 tr("WRN_VISU"),
+                                 tr("WRN_LOGARITHMIC_RANGE") );
+      } else {
+       if ( minVal == 0)
+         SUIT_MessageBox::warning( this,
+                                   tr("WRN_VISU"),
+                                   tr("WRN_LOGARITHMIC_RANGE") );
+       else
+         SUIT_MessageBox::warning( this,
+                                   tr("WRN_VISU"),
+                                   tr("WRN_LOGARITHMIC_FIELD_RANGE") );
+       RBIrange->setChecked(true);
+       changeRange(1);
+      }
+      return false;
+    }
+  }
+  return true;
+}
+
+//=======================================================================
+//function : Constructor
+//purpose  :
+//=======================================================================
+VisuGUI_Table3DDlg::VisuGUI_Table3DDlg ( SalomeApp_Module* theModule )
+  : QDialog ( VISU::GetDesktop( theModule ) )
+{
+  setModal( false );
+  setWindowTitle( tr( "Point Map 3D Definition" ) );
+  setSizeGripEnabled( true );
+
+  QVBoxLayout* TopLayout = new QVBoxLayout( this );
+  TopLayout->setSpacing( 6 );
+  TopLayout->setMargin( 11 );
+
+  myTabBox = new QTabWidget( this );
+  myIsoPane = new VisuGUI_Table3DPane( this );
+  myScalarBarPane = new VisuGUI_TableScalarBarPane( this );
+
+  myTabBox->addTab( myIsoPane,       tr( "DLG_PREF_TITLE" ) );
+  myTabBox->addTab( myScalarBarPane, tr( "DLG_PROP_TITLE" ) );
+
+  QGroupBox* GroupButtons = new QGroupBox( this );
+  QHBoxLayout* GroupButtonsLayout = new QHBoxLayout( GroupButtons );
+  GroupButtonsLayout->setSpacing( 6 );
+  GroupButtonsLayout->setMargin( 11 );
+
+  QPushButton* buttonOk = new QPushButton( tr( "&OK" ), GroupButtons );
+  buttonOk->setAutoDefault( true );
+  buttonOk->setDefault( true );
+  QPushButton* buttonApply = new QPushButton( tr( "&Apply" ), GroupButtons );
+  buttonApply->setAutoDefault( true );
+  QPushButton* buttonCancel = new QPushButton( tr( "&Cancel" ), GroupButtons );
+  buttonCancel->setAutoDefault( true );
+  QPushButton* buttonHelp = new QPushButton( tr( "&Help" ), GroupButtons );
+  buttonHelp->setAutoDefault( true );
+
+  GroupButtonsLayout->addWidget( buttonOk );
+  GroupButtonsLayout->addWidget( buttonApply );
+  GroupButtonsLayout->addSpacing( 10 );
+  GroupButtonsLayout->addStretch();
+  GroupButtonsLayout->addWidget( buttonCancel );
+  GroupButtonsLayout->addWidget( buttonHelp );
+
+  TopLayout->addWidget( myTabBox );
+  TopLayout->addWidget( GroupButtons );
+
+  // signals and slots connections
+  connect( buttonOk,     SIGNAL( clicked() ), this, SLOT( accept() ) );
+  connect( buttonCancel, SIGNAL( clicked() ), this, SLOT( reject() ) );
+  connect( buttonHelp,   SIGNAL( clicked() ), this, SLOT( onHelp() ) );
+  connect( buttonApply,  SIGNAL( clicked() ), this, SLOT( onApply() ) );
+}
+
+//=======================================================================
+//function : Destructor
+//purpose  :
+//=======================================================================
+VisuGUI_Table3DDlg::~VisuGUI_Table3DDlg()
+{
+}
+
+//=======================================================================
+//function : accept
+//purpose  :
+//=======================================================================
+void VisuGUI_Table3DDlg::accept()
+{
+  if (myScalarBarPane->check())
+    QDialog::accept();
+}
+
+//=======================================================================
+//function : onApply
+//purpose  :
+//=======================================================================
+void VisuGUI_Table3DDlg::onApply()
+{
+  if (myScalarBarPane->check()) {
+    storeToPrsObject( myPrsCopy );
+    myPrsCopy->UpdateActors();
+  }
+}
+
+//=======================================================================
+//function : onHelp
+//purpose  :
+//=======================================================================
+void VisuGUI_Table3DDlg::onHelp()
+{
+  QString aHelpFileName = "table_3d_page.html";
+  LightApp_Application* app = (LightApp_Application*)(SUIT_Session::session()->activeApplication());
+  if (app) {
+    VisuGUI* aVisuGUI = dynamic_cast<VisuGUI*>( app->activeModule() );
+    app->onHelpContextModule(aVisuGUI ? app->moduleName(aVisuGUI->moduleName()) : QString(""), aHelpFileName);
+  }
+  else {
+    QString platform;
+#ifdef WIN32
+    platform = "winapplication";
+#else
+    platform = "application";
+#endif
+    SUIT_MessageBox::warning( this, QObject::tr("WRN_WARNING"),
+                             tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                             arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName) );
+  }
+
+}
+
+//=======================================================================
+//function : storeToPrsObject
+//purpose  :
+//=======================================================================
+int VisuGUI_Table3DDlg::storeToPrsObject( VISU::PointMap3d_i* thePrs )
+{
+  int anIsOk = myIsoPane->storeToPrsObject( thePrs );
+  anIsOk &= myScalarBarPane->storeToPrsObject( thePrs );
+
+  return anIsOk;
+}
+
+//=======================================================================
+//function : initFromPrsObject
+//purpose  :
+//=======================================================================
+void VisuGUI_Table3DDlg::initFromPrsObject( VISU::PointMap3d_i* thePrs )
+{
+  myPrsCopy = thePrs;
+  myIsoPane->initFromPrsObject( thePrs );
+  myScalarBarPane->initFromPrsObject( thePrs );
+}
diff --git a/src/VISUGUI/VisuGUI_Table3dDlg.h b/src/VISUGUI/VisuGUI_Table3dDlg.h
new file mode 100644 (file)
index 0000000..867e426
--- /dev/null
@@ -0,0 +1,188 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+// VISU VISUGUI : GUI of VISU component
+// File   : VisuGUI_Table3dDlg.h
+// Author : Laurent CORNABE & Hubert ROLLAND
+//
+#ifndef VISUGUI_TABLE3D_H
+#define VISUGUI_TABLE3D_H
+
+#include "VisuGUI_Prs3dDlg.h"
+
+#include <QWidget>
+#include <string>
+
+class QTabWidget;
+class QButtonGroup;
+class QGroupBox;
+class QComboBox;
+class QCheckBox;
+class QLineEdit;
+class QRadioButton;
+class QPushButton;
+class QSpinBox;
+class QtxDoubleSpinBox;
+class VisuGUI_TextPrefDlg;
+class VisuGUI_BarPrefDlg;
+class SVTK_ViewWindow;
+class SalomeApp_Module;
+
+namespace VISU 
+{
+  class PointMap3d_i;
+};
+
+class VisuGUI_Table3DPane : public QWidget
+{
+  Q_OBJECT
+
+public:
+  VisuGUI_Table3DPane( QWidget* );
+  ~VisuGUI_Table3DPane();
+
+  void                 initFromPrsObject( VISU::PointMap3d_i* );
+  int                  storeToPrsObject( VISU::PointMap3d_i* );
+
+  VISU::PointMap3d_i*  GetPrs();
+
+private slots:
+  void                 onPrsType( int );
+
+private:
+  bool                 myInitFromPrs;
+
+  SVTK_ViewWindow*     myViewWindow;
+  VISU::PointMap3d_i*  myPrs;
+
+  QtxDoubleSpinBox*    ScaleSpn;
+  QGroupBox*           GBPrsTypeBox;
+  QButtonGroup*        GBPrsType;
+  QSpinBox*            NbContoursSpn;
+};
+
+class VisuGUI_TableScalarBarPane : public QWidget
+{
+  Q_OBJECT
+
+public:
+  VisuGUI_TableScalarBarPane( QWidget* );
+  ~VisuGUI_TableScalarBarPane();
+
+  void                 setRange( double, double, bool );
+  void                 setDefaultRange( double, double );
+  int                  getOrientation();
+  void                 setPosAndSize( double, double, double, double, bool );
+  void                 setScalarBarData( int, int );
+  bool                 isIRange();
+  double               getMin();
+  double               getMax();
+  double               getX();
+  double               getY();
+  double               getWidth();
+  double               getHeight();
+  int                  getNbColors();
+  int                  getNbLabels();
+  bool                 isLogarithmic();
+  void                 setLogarithmic( bool on );
+  //  bool    isToSave() {return CBSave ? CBSave->isChecked() : false;}
+
+  void                 storeToResources();
+
+  void                 initFromPrsObject( VISU::PointMap3d_i* );
+  int                  storeToPrsObject( VISU::PointMap3d_i* );
+
+  bool                 check();
+
+private slots:
+  void                 changeDefaults( int );
+  void                 changeRange( int );
+  void                 XYChanged( double );
+  void                 changeScalarMode( int );
+  void                 onTextPref();
+  void                 onBarPref();
+
+private:
+  QGroupBox*           RangeGroup;
+  QRadioButton*        RBFrange;
+  QRadioButton*        RBIrange;
+  QLineEdit*           MinEdit;
+  QLineEdit*           MaxEdit;
+
+  QRadioButton*        RBhori;
+  QRadioButton*        RBvert;
+
+  QtxDoubleSpinBox*    XSpin;
+  QtxDoubleSpinBox*    YSpin;
+
+  QtxDoubleSpinBox*    WidthSpin;
+  QtxDoubleSpinBox*    HeightSpin;
+
+  QSpinBox*            ColorSpin;
+  QSpinBox*            LabelSpin;
+
+  QCheckBox*           CBSave;
+  QCheckBox*           CBLog;
+  QComboBox*           myModeCombo;
+  QPushButton*         myTextBtn;
+  QPushButton*         myBarBtn;
+  VisuGUI_TextPrefDlg* myTextDlg;
+  VisuGUI_BarPrefDlg*  myBarDlg;
+
+  double               myHorX, myHorY, myHorW, myHorH;
+  double               myVerX, myVerY, myVerW, myVerH;
+  int                  myHorTS, myHorLS, myHorBW, myHorBH;
+  int                  myVerTS, myVerLS, myVerBW, myVerBH;
+  bool                 myIsStoreTextProp;
+
+  std::string          myTitle;
+  VISU::PointMap3d_i*  myBarPrs;
+
+  bool                 myBusy;
+};
+
+///////////////////////////////////////////////////////
+
+class VisuGUI_Table3DDlg : public QDialog
+{
+  Q_OBJECT
+
+public:
+  VisuGUI_Table3DDlg( SalomeApp_Module* );
+  ~VisuGUI_Table3DDlg();
+
+  virtual void initFromPrsObject( VISU::PointMap3d_i* );
+  virtual int  storeToPrsObject( VISU::PointMap3d_i* );
+
+protected slots:
+  void         accept();
+  void         onHelp();
+  void         onApply();
+
+private:
+  QTabWidget*                    myTabBox;
+  VisuGUI_Table3DPane*           myIsoPane;
+  VisuGUI_TableScalarBarPane*    myScalarBarPane;
+
+  SALOME::GenericObjPtr<VISU::PointMap3d_i> myPrsCopy;
+};
+
+#endif // VISUGUI_TABLE3D_H
index fd12611f93043c67d090497cf895813290dc74c1..326bac71e9792039da1189b0e2c6e83d917857a7 100644 (file)
@@ -1,26 +1,28 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VisuGUI_TimeAnimation.cxx
 //  Author : Vitaly SMETANNIKOV
 //  Module : VISU
-
+//
 #include "VisuGUI_TimeAnimation.h"
 
 #include "VisuGUI.h"
@@ -34,7 +36,7 @@
 #include "VisuGUI_VectorsDlg.h"
 #include "VisuGUI_IsoSurfacesDlg.h"
 #include "VisuGUI_StreamLinesDlg.h"
-#include "VisuGUI_ScalarMapOnDeformedShapeDlg.h"
+#include "VisuGUI_DeformedShapeAndScalarMapDlg.h"
 #include "VisuGUI_GaussPointsDlg.h"
 
 #include "VISU_TimeAnimation.h"
@@ -47,7 +49,7 @@
 #include "VISU_CutLines_i.hh"
 #include "VISU_Vectors_i.hh"
 #include "VISU_StreamLines_i.hh"
-#include "VISU_ScalarMapOnDeformedShape_i.hh"
+#include "VISU_DeformedShapeAndScalarMap_i.hh"
 #include "VISU_GaussPoints_i.hh"
 
 #include "VISU_ViewManager_i.hh"
 #include <vtkRenderer.h>
 #include <vtkMapper.h>
 
-#include <qhbox.h>
-#include <qgrid.h>
-#include <qimage.h>
-#include <qlayout.h>
-#include <qslider.h>
-#include <qthread.h>
-#include <qlistbox.h>
-#include <qlineedit.h>
+#include <QGridLayout>
+#include <QImage>
+#include <QImageWriter>
+#include <QLayout>
+#include <QSlider>
+#include <QThread>
+#include <QListWidget>
+#include <QLCDNumber>
+#include <QToolButton>
+#include <QKeyEvent>
+#include <QComboBox>
+#include <QLineEdit>
+#include <QRadioButton>
+#include <QGroupBox>
+#include <QPushButton>
+#include <QLabel>
+
 #include <qwt_wheel.h>
-#include <qlcdnumber.h>
-#include <qhgroupbox.h>
-#include <qvgroupbox.h>
-#include <qtoolbutton.h>
 
 #define  MAXVAL 1e10
+#define  VALPRECISION 8
+
+namespace {
+  void GeneratePresentations(int theFieldId, VISU_TimeAnimation* theAnimator)
+  {
+    if(theAnimator->getNbFields() == 0)
+      return;
+
+    theAnimator->generatePresentations(theFieldId);
+    FieldData& aFieldData = theAnimator->getFieldData(theFieldId);
+
+
+    int aRefFieldId = ( theAnimator->getAnimationMode() == VISU::Animation::PARALLEL ) ? theFieldId : 0;
+    if(VISU::ColoredPrs3d_i* aInitialPrs3d = dynamic_cast<VISU::ColoredPrs3d_i*>(theAnimator->getFieldData(aRefFieldId).myPrs[0])){
+      for (long aFrameId = 0; aFrameId < aFieldData.myNbFrames; aFrameId++) {
+        VISU::ColoredPrs3d_i* aColoredPrs3d = aFieldData.myPrs[aFrameId];
+
+        // Special case for DeformedShape And ScalarMap presentation
+        // Restore time stamp number for all presentations
+        VISU::DeformedShapeAndScalarMap_i* aDeformedAndScalPrs = dynamic_cast<VISU::DeformedShapeAndScalarMap_i*>(aColoredPrs3d);
+        int aTimeStampNum = -1;
+        if(aDeformedAndScalPrs){
+          aTimeStampNum = aDeformedAndScalPrs->GetScalarTimeStampNumber();
+        }
+        aColoredPrs3d->SameAs(aInitialPrs3d);
+
+        if(aDeformedAndScalPrs){
+          aDeformedAndScalPrs->SetScalarField(aDeformedAndScalPrs->GetScalarEntity(),
+                                              aDeformedAndScalPrs->GetScalarFieldName(),
+                                              aTimeStampNum);
+        }
+
+        std::string aTitle = aColoredPrs3d->GetCTitle();
+        if ( aFrameId != 0 && theAnimator->getAnimationMode() == VISU::Animation::SUCCESSIVE ) {
+          aColoredPrs3d->SetTitle(aTitle.c_str());
+        }
+      }
+    }
+  }
+}
 
 ArrangeDlg::ArrangeDlg(QWidget* theParent, VISU_TimeAnimation* theAnimator)
-  : QDialog(theParent, "ArrangeDlg", true,
-            WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu),
+  : QDialog(theParent, Qt::WindowTitleHint | Qt::WindowSystemMenuHint),
     myAnimator(theAnimator),
     myViewWindow(theAnimator->getViewer())
 {
+  setModal( true );
   myCurrent = 0;
   init();
   QStringList aFieldNames;
@@ -106,25 +153,25 @@ ArrangeDlg::ArrangeDlg(QWidget* theParent, VISU_TimeAnimation* theAnimator)
     aOffs.myOffset[2] = myAnimator->getFieldData(i).myOffset[2];
     myOffsets.append(aOffs);
   }
-  myFieldLst->insertStringList(aFieldNames);
-  myFieldLst->setSelected(0, true);
+  myFieldLst->addItems(aFieldNames);
+  myFieldLst->setCurrentRow(0);
 }
 
-ArrangeDlg::ArrangeDlg(QWidget* theParent, 
+ArrangeDlg::ArrangeDlg(QWidget* theParent,
                       const SalomeApp_Module* theModule,
                       SVTK_ViewWindow* theViewWindow)
-  : QDialog(theParent, "ArrangeDlg", true, WStyle_Customize |
-            WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu),
-    myAnimator(NULL), 
+  : QDialog(theParent,  Qt::WindowTitleHint | Qt::WindowSystemMenuHint ),
+    myAnimator(NULL),
     myViewWindow(theViewWindow)
 {
+  setModal( true );
   myCurrent = 0;
   init();
   QStringList aPrsNames;
   vtkActorCollection *aCollection = myViewWindow->getRenderer()->GetActors();
   aCollection->InitTraversal();
   while(vtkActor* anActor = aCollection->GetNextActor()){
-    if (VISU_Actor* anVISUActor = dynamic_cast<VISU_Actor*>(anActor))
+    if (VISU_Actor* anVISUActor = dynamic_cast<VISU_Actor*>(anActor)) {
       if(anVISUActor->GetVisibility() != 0){
        if (VISU::Prs3d_i* aPrs = anVISUActor->GetPrs3d()){
          if(!myPrsMap.contains(aPrs)){
@@ -148,87 +195,140 @@ ArrangeDlg::ArrangeDlg(QWidget* theParent,
          }
        }
       }
+    } else { //if PointMap3d Actor
+      if (VISU_ActorBase* anActorBase = dynamic_cast<VISU_ActorBase*>(anActor))
+       if(anActorBase->GetVisibility() != 0)
+         if (VISU::PointMap3d_i* aPrs = dynamic_cast<VISU::PointMap3d_i*>(anActorBase->GetFactory())) {
+           if(!myPointMapPrsMap.contains(aPrs)){
+             Handle(SALOME_InteractiveObject) anIO = aPrs->GetIO();
+             if(!anIO->hasEntry())
+               continue;
+             SalomeApp_Study* aStudy = VISU::GetAppStudy(theModule);
+             VISU::TObjectInfo anObjectInfo = VISU::GetObjectByEntry(aStudy, anIO->getEntry());
+             if(_PTR(SObject) aSObject = anObjectInfo.mySObject){
+               _PTR(GenericAttribute) anAttr;
+               if (aSObject->FindAttribute(anAttr, "AttributeName")) {
+                 _PTR(AttributeName) aName(anAttr);
+                 QString strIn(aName->Value().c_str());
+                 aPrsNames.append(strIn);
+                 myPointMapPrsMap[aPrs] = myOffsets.count();
+                 Offset aOffs;
+                 anActorBase->GetPosition(aOffs.myOffset);
+                 myOffsets.append(aOffs);
+               }
+             }
+           }
+         }
+    }
   }
-  myFieldLst->insertStringList(aPrsNames);
-  myFieldLst->setSelected(0, true);
+  myFieldLst->addItems(aPrsNames);
+  myFieldLst->setCurrentRow(0);
 }
 
 void ArrangeDlg::init()
 {
-  setCaption("Arrange Presentations");
+  setWindowTitle("Arrange Presentations");
   setSizeGripEnabled( TRUE );
 
-  QVBoxLayout* aMainLayout = new QVBoxLayout(this, 7, 6);
+  QVBoxLayout* aMainLayout = new QVBoxLayout(this);
+  aMainLayout->setMargin( 7 );
   aMainLayout->setSpacing(5);
 
-  QButtonGroup* aBtnGrp = new QButtonGroup(2, Qt::Horizontal, this);
+  QButtonGroup* aBtnGrp = new QButtonGroup( this);
   aBtnGrp->setExclusive(true);
-  aMainLayout->addWidget(aBtnGrp);
+  //aMainLayout->addWidget(aBtnGrp);
+
+  QGroupBox* aBtnGB = new QGroupBox( this );
+  QHBoxLayout* aHBLay = new QHBoxLayout( aBtnGB );
+  aMainLayout->addWidget(aBtnGB);
+
+  QRadioButton* aAutoBtn = new QRadioButton("Auto", aBtnGB);
+  aHBLay->addWidget( aAutoBtn );
+  aBtnGrp->addButton(aAutoBtn, AutoMode);
 
-  QRadioButton* aAutoBtn = new QRadioButton("Auto", aBtnGrp);
-  aBtnGrp->insert(aAutoBtn, AutoMode);
+  QRadioButton* aManualBtn = new QRadioButton("Manual", aBtnGB);
+  aHBLay->addWidget( aManualBtn );
+  aBtnGrp->addButton(aManualBtn, ManualMode);
 
-  QRadioButton* aManualBtn = new QRadioButton("Manual", aBtnGrp);
-  aBtnGrp->insert(aManualBtn, ManualMode);
-  aBtnGrp->setButton(AutoMode);
+  aAutoBtn->setChecked( true );
 
-  myStackWgt = new QWidgetStack(this);
+  myStackWgt = new QStackedWidget(this);
   aMainLayout->addWidget(myStackWgt);
 
   //  AUTO Pane
-  QVBox* aAutoPane = new QVBox(myStackWgt);
-  aAutoPane->setSpacing(5);
+  QWidget* aAutoPane = new QWidget(myStackWgt);
+  QVBoxLayout* aAutoLay = new QVBoxLayout( aAutoPane );
+  aAutoLay->setSpacing(5);
+
   // Axis Group
-  myAxisGrp = new QButtonGroup(3, Qt::Horizontal,"Axis", aAutoPane);
+  myAxisGrp = new QButtonGroup(aAutoPane);
+
+  QGroupBox* aAxisGB = new QGroupBox( "Axis", aAutoPane );
+  QHBoxLayout* aVBLay = new QHBoxLayout( aAxisGB );
+  aAutoLay->addWidget( aAxisGB );
 
-  QRadioButton* aXBtn = new QRadioButton("X",myAxisGrp );
-  myAxisGrp->insert(aXBtn, XAxis);
+  QRadioButton* aXBtn = new QRadioButton("X",aAxisGB );
+  aVBLay->addWidget( aXBtn );
+  myAxisGrp->addButton(aXBtn, XAxis);
 
-  QRadioButton* aYBtn = new QRadioButton("Y",myAxisGrp );
-  myAxisGrp->insert(aYBtn, YAxis);
+  QRadioButton* aYBtn = new QRadioButton("Y",aAxisGB );
+  aVBLay->addWidget( aYBtn );
+  myAxisGrp->addButton(aYBtn, YAxis);
 
-  QRadioButton* aZBtn = new QRadioButton("Z",myAxisGrp );
-  myAxisGrp->insert(aZBtn, ZAxis);
+  QRadioButton* aZBtn = new QRadioButton("Z",aAxisGB );
+  aVBLay->addWidget( aZBtn );
+  myAxisGrp->addButton(aZBtn, ZAxis);
 
-  myAxisGrp->setButton(XAxis);
+  aXBtn->setChecked( true );
 
   //Distance Input
-  QHBox* aDistPane = new QHBox(aAutoPane);
-  aDistPane->setSpacing(5);
-  new QLabel("Relative Distance", aDistPane);
-  myDistVal = new QtxDblSpinBox (-10,10, 0.5, aDistPane);
+  QWidget* aDistPane = new QWidget(aAutoPane);
+  QHBoxLayout* aHLay = new QHBoxLayout( aDistPane );
+  aHLay->setSpacing(5);
+  aHLay->addWidget( new QLabel("Relative Distance", aDistPane) );
+  myDistVal = new QtxDoubleSpinBox (-10,10, 0.5, aDistPane);
   myDistVal->setValue(1);
+  aHLay->addWidget( myDistVal );
+
+  aAutoLay->addWidget( aDistPane );
 
-  myStackWgt->addWidget(aAutoPane, AutoMode);
+  myStackWgt->insertWidget( AutoMode, aAutoPane);
 
   // Manual Pane
-  QHBox* aManualPane = new QHBox(myStackWgt);
-  aManualPane->setSpacing(10);
+  QWidget* aManualPane = new QWidget(myStackWgt);
+  aHLay = new QHBoxLayout( aManualPane );
+  aHLay->setSpacing(10);
 
-  myFieldLst = new QListBox(aManualPane);
-  connect( myFieldLst, SIGNAL( highlighted(int) ),
+  myFieldLst = new QListWidget(aManualPane);
+  aHLay->addWidget( myFieldLst );
+  connect( myFieldLst, SIGNAL( currentRowChanged(int) ),
           this, SLOT( onFieldChange(int) ) );
 
-  QGrid* aCoordPane = new QGrid(2, aManualPane);
-  aCoordPane->setSpacing(5);
+  QWidget* aCoordPane = new QWidget( aManualPane);
+  aHLay->addWidget( aCoordPane );
+  QGridLayout* aCoordLayout = new QGridLayout( aCoordPane );
+  aCoordLayout->setSpacing(5);
 
-  new QLabel("X", aCoordPane);
-  myCoord[0] = new QtxDblSpinBox(aCoordPane);
+  aCoordLayout->addWidget( new QLabel("X", aCoordPane), 0, 0 );
+  myCoord[0] = new QtxDoubleSpinBox(aCoordPane);
   myCoord[0]->setRange(-MAXVAL, MAXVAL);
+  aCoordLayout->addWidget( myCoord[0], 0, 1 );
 
-  new QLabel("Y", aCoordPane);
-  myCoord[1] = new QtxDblSpinBox(aCoordPane);
+  aCoordLayout->addWidget( new QLabel("Y", aCoordPane), 1, 0 );
+  myCoord[1] = new QtxDoubleSpinBox(aCoordPane);
   myCoord[1]->setRange(-MAXVAL, MAXVAL);
+  aCoordLayout->addWidget( myCoord[1], 1, 1 );
 
-  new QLabel("Z", aCoordPane);
-  myCoord[2] = new QtxDblSpinBox(aCoordPane);
+  aCoordLayout->addWidget( new QLabel("Z", aCoordPane), 2, 0 );
+  myCoord[2] = new QtxDoubleSpinBox(aCoordPane);
   myCoord[2]->setRange(-MAXVAL, MAXVAL);
+  aCoordLayout->addWidget( myCoord[2], 2, 1 );
 
-  myStackWgt->addWidget(aManualPane, ManualMode);
+  myStackWgt->insertWidget(ManualMode, aManualPane );
 
-  myStackWgt->raiseWidget(AutoMode);
+  myStackWgt->setCurrentIndex(AutoMode);
 
-  connect(aBtnGrp, SIGNAL(clicked(int)), myStackWgt, SLOT(raiseWidget(int)) );
+  connect(aBtnGrp, SIGNAL(buttonClicked(int)), myStackWgt, SLOT(setCurrentIndex(int)) );
 
   SUIT_Study* aSUITStudy = myViewWindow->getViewManager()->study();
   SalomeApp_Study* anAppStudy = dynamic_cast<SalomeApp_Study*>(aSUITStudy);
@@ -242,22 +342,22 @@ void ArrangeDlg::init()
   }
 
   // Common buttons ===========================================================
-  QGroupBox* GroupButtons = new QGroupBox( this, "GroupButtons" );
-  GroupButtons->setColumnLayout(0, Qt::Vertical );
-  GroupButtons->layout()->setSpacing( 0 );
-  GroupButtons->layout()->setMargin( 0 );
-  QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons->layout() );
+  QGroupBox* GroupButtons = new QGroupBox( this );
+  //GroupButtons->setColumnLayout(0, Qt::Vertical );
+  //GroupButtons->layout()->setSpacing( 0 );
+  //GroupButtons->layout()->setMargin( 0 );
+  QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons );
   GroupButtonsLayout->setAlignment( Qt::AlignTop );
   GroupButtonsLayout->setSpacing( 6 );
   GroupButtonsLayout->setMargin( 11 );
 
-  QPushButton* buttonOk = new QPushButton( tr( "&OK" ), GroupButtons, "buttonOk" );
+  QPushButton* buttonOk = new QPushButton( tr( "&OK" ), GroupButtons );
   buttonOk->setAutoDefault( TRUE );
   buttonOk->setDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonOk, 0, 0 );
   GroupButtonsLayout->addItem( new QSpacerItem( 5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 1 );
 
-  QPushButton* buttonCancel = new QPushButton( tr( "&Cancel" ) , GroupButtons, "buttonCancel" );
+  QPushButton* buttonCancel = new QPushButton( tr( "&Cancel" ) , GroupButtons );
   buttonCancel->setAutoDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonCancel, 0, 2 );
 
@@ -308,10 +408,10 @@ void ArrangeDlg::acceptAnimation()
       myAnimator->getFieldData(i).myOffset[2] = aOffs.myOffset[2];
     }
   } else {
-    QApplication::setOverrideCursor( Qt::waitCursor );
-    FieldData& aData = myAnimator->getFieldData(myFieldLst->currentItem());
+    QApplication::setOverrideCursor( Qt::WaitCursor );
+    FieldData& aData = myAnimator->getFieldData(myFieldLst->currentRow());
     if (aData.myPrs.empty())
-      myAnimator->generatePresentations(myFieldLst->currentItem());
+      GeneratePresentations(myFieldLst->currentRow(),myAnimator);
     vtkFloatingPointType aBounds[6];
     aData.myPrs[0]->GetBounds(aBounds);
     vtkFloatingPointType aDist = 0;
@@ -368,21 +468,31 @@ void ArrangeDlg::acceptViewWindow()
     QMap<VISU::Prs3d_i*, int>::Iterator it;
     for (it = myPrsMap.begin(); it != myPrsMap.end(); ++it) {
       VISU::Prs3d_i* aPrs = it.key();
-      Offset& aOffs = myOffsets[it.data()];
+      Offset& aOffs = myOffsets[it.value()];
       if (VISU_Actor* anActor = VISU::FindActor(myViewWindow, aPrs))
         anActor->SetPosition(aOffs.myOffset);
       if (mySaveChk)
        if (mySaveChk->isChecked())
          aPrs->SetOffset(aOffs.myOffset[0],aOffs.myOffset[1],aOffs.myOffset[2]);
     }
+    QMap<VISU::PointMap3d_i*, int>::Iterator itt;
+    for (itt = myPointMapPrsMap.begin(); itt != myPointMapPrsMap.end(); ++itt) {
+      VISU::PointMap3d_i* aPrs = itt.key();
+      Offset& aOffs = myOffsets[itt.value()];
+      if (VISU_ActorBase* anActor = VISU::FindActorBase(myViewWindow, aPrs))
+        anActor->SetPosition(aOffs.myOffset);
+      if (mySaveChk)
+       if (mySaveChk->isChecked())
+         aPrs->SetOffset(aOffs.myOffset[0],aOffs.myOffset[1],aOffs.myOffset[2]);
+    }
   } else {
     vtkFloatingPointType aDist = 0;
     vtkFloatingPointType aShift = 0;
     vtkFloatingPointType aPrevDist = 0;
     vtkFloatingPointType aPrevShift = 0;
-    int i;
+    int i = 0;
     QMap<VISU::Prs3d_i*, int>::Iterator it;
-    for (it = myPrsMap.begin(), i = 0; it != myPrsMap.end(); ++it, i++) {
+    for (it = myPrsMap.begin(); it != myPrsMap.end(); ++it, i++) {
       VISU::Prs3d_i* aPrs = it.key();
       if (VISU_Actor* aActor = VISU::FindActor(myViewWindow, aPrs)) {
        int aAxis = getAxis();
@@ -455,7 +565,69 @@ void ArrangeDlg::acceptViewWindow()
        aPrevDist = aDist;
        aPrevShift = aShift;
       }
-    }
+    } // end of myPrsMap loop
+    // Loop in PointMap3D the same as previous loop
+    QMap<VISU::PointMap3d_i*, int>::Iterator itt;
+    for (itt = myPointMapPrsMap.begin(); itt != myPointMapPrsMap.end(); ++itt, i++) {
+      VISU::PointMap3d_i* aPrs = itt.key();
+      if (VISU_ActorBase* aActor = VISU::FindActorBase(myViewWindow, aPrs)) {
+       int aAxis = getAxis();
+
+       vtkFloatingPointType aZeroOffset[3];
+       aZeroOffset[0] = aZeroOffset[1] = aZeroOffset[2] = 0;
+       aActor->SetPosition(aZeroOffset);
+        aActor->GetMapper()->Update();
+
+       vtkFloatingPointType aBounds[6];
+       aActor->GetBounds(aBounds);
+       switch (aAxis) {
+       case XAxis:
+         aDist = fabs(aBounds[1] - aBounds[0]);
+         break;
+       case YAxis:
+         aDist = fabs(aBounds[3] - aBounds[2]);
+         break;
+       case ZAxis:
+         aDist = fabs(aBounds[5] - aBounds[4]);
+       }
+       vtkFloatingPointType aOffset[3];
+        aOffset[0] = aOffset[1] = aOffset[2] = 0;
+        aOffset[aAxis] =
+          (aBounds[2*aAxis+1] < aBounds[2*aAxis]) ? -aBounds[2*aAxis+1] : -aBounds[2*aAxis];
+
+        if (i > 0) {
+          vtkFloatingPointType aCCDist = (aDist + aPrevDist) / 2.0;
+
+          vtkFloatingPointType dx = fabs(aBounds[1] - aBounds[0]);
+          vtkFloatingPointType dy = fabs(aBounds[3] - aBounds[2]);
+          vtkFloatingPointType dz = fabs(aBounds[5] - aBounds[4]);
+          vtkFloatingPointType max = (dx > dy) ? dx : dy;
+          max = (dz > max) ? dz : max;
+          max /= 100.0;
+
+          if (aCCDist < max) {
+            // set base distance between centers of bounding boxes
+            // to minimal (but big enough) size of current bounding box
+            if (dx < max) dx = FLT_MAX;
+            if (dy < max) dy = FLT_MAX;
+            if (dz < max) dz = FLT_MAX;
+
+            aCCDist = (dx < dy) ? dx : dy;
+            aCCDist = (dz < aCCDist) ? dz : aCCDist;
+          }
+          aShift = aPrevShift + aPrevDist/2.0 + aCCDist*getDistance() - aDist/2.0;
+        }
+
+       aOffset[aAxis] += aShift;
+       aActor->SetPosition(aOffset);
+       if (mySaveChk)
+         if (mySaveChk->isChecked())
+           aPrs->SetOffset(aOffset[0],aOffset[1],aOffset[2]);
+
+       aPrevDist = aDist;
+       aPrevShift = aShift;
+      }
+    } // end of myPointMapPrsMap loop
   }
   myViewWindow->getRenderer()->ResetCameraClippingRange();
   myViewWindow->Repaint();
@@ -463,76 +635,121 @@ void ArrangeDlg::acceptViewWindow()
 
 
 //------------------------------------------------------------------------
+//------------------------------------------------------------------------
+
+class SetupDlg::LineEdit : public QLineEdit
+{
+public:
+  LineEdit( QWidget* p = 0 ) : QLineEdit( p ) {}
+  virtual ~LineEdit() {}
+
+protected:
+  void    focusOutEvent( QFocusEvent* e )
+  {
+    QLineEdit::focusOutEvent( e );
+
+    if ( text().isEmpty() )
+      emit editingFinished();
+  }
+  void    keyPressEvent( QKeyEvent* e )
+  {
+    QLineEdit::keyPressEvent( e );
+
+    if ( text().isEmpty() && e->key() == Qt::Key_Return )
+      emit returnPressed();
+  }
+};
+
+
 //------------------------------------------------------------------------
 //------------------------------------------------------------------------
+
 SetupDlg::SetupDlg (QWidget* theParent,
-                   VisuGUI* theModule, 
+                   VisuGUI* theModule,
                    VISU_TimeAnimation* theAnimator) :
-  QDialog(theParent, 
-         "SetupDlg", 
-         true, 
-         WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu),
+  QDialog(theParent,
+         Qt::WindowTitleHint | Qt::WindowSystemMenuHint),
   myAnimator(theAnimator),
   myModule(theModule),
   myIsRegenerate( false )
 {
-  setCaption("Setup Animation");
+  setModal( true );
+  setWindowTitle("Setup Animation");
   setSizeGripEnabled( TRUE );
 
-  QVBoxLayout* aMainLayout = new QVBoxLayout(this, 7, 6);
+  QVBoxLayout* aMainLayout = new QVBoxLayout(this);
+  aMainLayout->setMargin( 7 );
   aMainLayout->setSpacing(5);
 
   // Range of time stamps
-  myUseRangeBox = new QHGroupBox("Use range of time stamps", this);
+  myUseRangeBox = new QGroupBox("Use range of time stamps", this);
   myUseRangeBox->setCheckable( true );
   myUseRangeBox->setChecked(myAnimator->isRangeDefined());
 
+  QHBoxLayout* aRangeLayout = new QHBoxLayout( myUseRangeBox );
+  aRangeLayout->setMargin( 11 );
+  aRangeLayout->setSpacing( 6 );
+
   double aMaxTime = myAnimator->getMaxTime();
   double aMinTime = myAnimator->getMinTime();
-  double aStep;
-  if ( myAnimator->getAnimationMode() == VISU::Animation::PARALLEL ) 
-    aStep = (aMaxTime - aMinTime) / (myAnimator->getFieldData(0).myNbTimes - 1);
-  else { // successive animation mode
-    std::pair<int,long> aLastFieldFrame(myAnimator->getNbFields() - 1,
-                                       myAnimator->getFieldData(myAnimator->getNbFields() - 1).myNbTimes - 1);
-    aStep = (aMaxTime - aMinTime) / myAnimator->getAbsoluteFrameNumber(aLastFieldFrame);
+  double aStep = 1;
+  if( myAnimator->getNbFields() > 0 ) {
+    if ( myAnimator->getAnimationMode() == VISU::Animation::PARALLEL )
+      aStep = (aMaxTime - aMinTime) / (myAnimator->getFieldData(0).myNbTimes - 1);
+    else { // successive animation mode
+      std::pair<int,long> aLastFieldFrame(myAnimator->getNbFields() - 1,
+                                         myAnimator->getFieldData(myAnimator->getNbFields() - 1).myNbTimes - 1);
+      aStep = (aMaxTime - aMinTime) / myAnimator->getAbsoluteFrameNumber(aLastFieldFrame);
+    }
   }
 
   QLabel* aMinLbl = new QLabel("From", myUseRangeBox);
-  myMinVal = new QtxDblSpinBox( aMinTime, aMaxTime, aStep, myUseRangeBox );
-  if (myUseRangeBox->isChecked())
-    myMinVal->setValue( myAnimator->getMinRange() );
+  aRangeLayout->addWidget(aMinLbl);
+  //myMinVal = new QtxDoubleSpinBox( aMinTime, aMaxTime, aStep, myUseRangeBox );
+  myMinVal = new LineEdit( myUseRangeBox );
+  myMinVal->setValidator( new QDoubleValidator( myMinVal ) );
+  if ( myUseRangeBox->isChecked() )
+    myMinVal->setText( QString::number( myAnimator->getMinRange() ) );
   else
-    myMinVal->setValue( aMinTime );
+    myMinVal->setText( QString::number( aMinTime ) );
 
-  connect(myMinVal, SIGNAL( valueChanged(double)),
-         this, SLOT( onMinValue(double) ));
+  //  connect(myMinVal, SIGNAL( valueChanged(double)),
+  //     this, SLOT( onMinValue(double) ));
+  connect( myMinVal, SIGNAL( returnPressed() ), this, SLOT( onMinValue() ) );
+  connect( myMinVal, SIGNAL( editingFinished() ), this, SLOT( onMinValue() ) );
+//   connect( myMinVal, SIGNAL( textChanged(const QString&)),
+//       this, SLOT( onMinValueEdit(const QString&) ));
+  aRangeLayout->addWidget(myMinVal);
 
   QLabel* aMaxLbl = new QLabel("To", myUseRangeBox);
-  myMaxVal = new QtxDblSpinBox( aMinTime, aMaxTime, aStep, myUseRangeBox );
-  if (myUseRangeBox->isChecked())
-    myMaxVal->setValue( myAnimator->getMaxRange() );
+  aRangeLayout->addWidget(aMaxLbl);
+  //myMaxVal = new QtxDoubleSpinBox( aMinTime, aMaxTime, aStep, myUseRangeBox );
+  myMaxVal = new LineEdit( myUseRangeBox );
+  myMaxVal->setValidator( new QDoubleValidator( myMaxVal ) );
+  if ( myUseRangeBox->isChecked() )
+    myMaxVal->setText( QString::number( myAnimator->getMaxRange() ) );
   else
-    myMaxVal->setValue( aMaxTime );
+    myMaxVal->setText( QString::number( aMaxTime ) );
 
-  connect(myMaxVal, SIGNAL( valueChanged(double)),
-         this, SLOT( onMaxValue(double) ));
+  //  connect(myMaxVal, SIGNAL( valueChanged(double)),
+  //     this, SLOT( onMaxValue(double) ));
+  connect( myMaxVal, SIGNAL( returnPressed() ), this, SLOT( onMaxValue() ) );
+  connect( myMaxVal, SIGNAL( editingFinished() ), this, SLOT( onMaxValue() ) );
+//   connect(myMaxVal, SIGNAL( textChanged(const QString&)),
+//       this, SLOT( onMaxValueEdit(const QString&) ));
+  aRangeLayout->addWidget(myMaxVal);
 
   connect(myUseRangeBox, SIGNAL( toggled(bool)),
          this, SLOT( onRangeCheck(bool) ));
 
   aMainLayout->addWidget(myUseRangeBox);
 
-
   // Sequence of time stamps
   myUseSequenceBox = new QGroupBox("Use sequence of time stamps", this);
   myUseSequenceBox->setCheckable( true );
   myUseSequenceBox->setChecked( myAnimator->isSequenceDefined() );
 
-  myUseSequenceBox->setColumnLayout(0, Qt::Vertical);
-  myUseSequenceBox->layout()->setSpacing( 0 );
-  myUseSequenceBox->layout()->setMargin( 0 );
-  QGridLayout* aUseSequenceLayout = new QGridLayout( myUseSequenceBox->layout() );
+  QGridLayout* aUseSequenceLayout = new QGridLayout( myUseSequenceBox );
   aUseSequenceLayout->setAlignment( Qt::AlignTop );
   aUseSequenceLayout->setSpacing( 6 );
   aUseSequenceLayout->setMargin( 11 );
@@ -540,13 +757,13 @@ SetupDlg::SetupDlg (QWidget* theParent,
   QLabel* anIndicesLbl = new QLabel("Indices", myUseSequenceBox);
   myIndices = new QLineEdit( myUseSequenceBox );
 
-  myValues = new QListBox( myUseSequenceBox );
-  myValues->setSelectionMode( QListBox::Extended );
+  myValues = new QListWidget( myUseSequenceBox );
+  myValues->setSelectionMode( QAbstractItemView::ExtendedSelection );
 
   connect(myIndices, SIGNAL( textChanged(const QString&)),
          this, SLOT( onIndicesChanged(const QString&) ));
 
-  connect(myValues, SIGNAL( selectionChanged() ),
+  connect(myValues, SIGNAL( itemSelectionChanged() ),
          this, SLOT( onValuesChanged() ) );
 
   connect(myUseSequenceBox, SIGNAL( toggled(bool)),
@@ -554,17 +771,22 @@ SetupDlg::SetupDlg (QWidget* theParent,
 
   aUseSequenceLayout->addWidget( anIndicesLbl, 0, 0 );
   aUseSequenceLayout->addWidget( myIndices, 0, 1 );
-  aUseSequenceLayout->addMultiCellWidget( myValues, 1, 1, 0, 1 );
+  aUseSequenceLayout->addWidget( myValues, 1, 1, 1, 2 );
 
   aMainLayout->addWidget(myUseSequenceBox);
 
-
   // Fields and Properties
-  QHBox* aPropFrame = new QHBox(this);
-  aPropFrame->setSpacing(5);
+  QWidget* aPropFrame = new QWidget(this);
+  QHBoxLayout* aHPropLayout = new QHBoxLayout( aPropFrame );
+  aHPropLayout->setSpacing(5);
+  aHPropLayout->setMargin(0);
+
+  QGroupBox* aNamesBox = new QGroupBox("Fields",aPropFrame);
+  aHPropLayout->addWidget( aNamesBox );
+  QVBoxLayout* aVBoxLayout = new QVBoxLayout( aNamesBox );
 
-  QVGroupBox* aNamesBox = new QVGroupBox("Fields",aPropFrame);
-  myFieldLst = new QListBox(aNamesBox);
+  myFieldLst = new QListWidget(aNamesBox);
+  aVBoxLayout->addWidget( myFieldLst );
   QStringList aFieldNames;
   // Find names of fields
   for (int i = 0; i < myAnimator->getNbFields(); i++) {
@@ -577,26 +799,33 @@ SetupDlg::SetupDlg (QWidget* theParent,
       _PTR(SObject) aSObject = aSO->GetFather()->GetFather()->GetFather();
       VISU::Storable::TRestoringMap aRestoringMap = VISU::Storable::GetStorableMap(aSObject);
       QString aFileName(aRestoringMap["myInitFileName"]);
-      aFileName = aFileName.right(aFileName.length() - (aFileName.findRev("/") + 1));
+      aFileName = aFileName.right(aFileName.length() - (aFileName.lastIndexOf("/") + 1));
       aFieldNames.append(aFileName + QString(" : ") + aFieldName);
     }
   }
-  myFieldLst->insertStringList(aFieldNames);
-  
+  myFieldLst->addItems(aFieldNames);
+
   if ( myAnimator->getAnimationMode() == VISU::Animation::PARALLEL ) {
-    myFieldLst->setSelected(0, true);
-    connect( myFieldLst, SIGNAL( highlighted(int) ),
+    myFieldLst->setCurrentRow(0);
+    connect( myFieldLst, SIGNAL( currentRowChanged(int) ),
             this, SLOT( onFieldChange(int) ) );
   }
   else if ( myAnimator->getAnimationMode() == VISU::Animation::SUCCESSIVE )
-    myFieldLst->setSelectionMode(QListBox::NoSelection);
-  
-    QVBox* aSetupBox = new QVBox(aPropFrame);
-  aSetupBox->setSpacing(5);
+    myFieldLst->setSelectionMode(QAbstractItemView::NoSelection);
+
+  QWidget* aSetupBox = new QWidget(aPropFrame);
+  aHPropLayout->addWidget( aSetupBox );
+  aVBoxLayout = new QVBoxLayout( aSetupBox );
+  aVBoxLayout->setSpacing(5);
+  aVBoxLayout->setMargin(0);
+
+  QGroupBox* aPropBox = new QGroupBox("Properties", aSetupBox);
+  aVBoxLayout->addWidget( aPropBox );
+  QVBoxLayout* aPropVBLay = new QVBoxLayout( aPropBox );
 
-  QVGroupBox* aPropBox = new QVGroupBox("Properties", aSetupBox);
   //QVGroupBox* aPropBox = new QVGroupBox("Properties", aPropFrame);
   myTypeCombo = new QComboBox(aPropBox);
+  aPropVBLay->addWidget( myTypeCombo );
   connect( myTypeCombo, SIGNAL( activated(int) ),
           this, SLOT( onTypeChanged(int) ) );
 
@@ -605,6 +834,8 @@ SetupDlg::SetupDlg (QWidget* theParent,
   //      this, SLOT( onScalarBarDlg() ) );
 
   myPropBtn = new QPushButton("Properties...", aPropBox);
+  myPropBtn->setAutoDefault( false );
+  aPropVBLay->addWidget( myPropBtn );
   //  myPropBtn->setEnabled(myAnimator->getFieldData(0).myPrsType != VISU::TSCALARMAP);
   connect( myPropBtn, SIGNAL( clicked() ),
           this, SLOT( onPreferencesDlg() ) );
@@ -612,20 +843,25 @@ SetupDlg::SetupDlg (QWidget* theParent,
   if (myAnimator->getNbFields() > 1 ) {
     if( myAnimator->getAnimationMode() == VISU::Animation::PARALLEL ) {
       myArrangeBtn = new QPushButton("Arrange...", aSetupBox);
+      aVBoxLayout->addWidget( myArrangeBtn );
       connect( myArrangeBtn, SIGNAL( clicked() ), this, SLOT( onArrangeDlg() ) );
     }
   }
   onFieldChange(0);
   aMainLayout->addWidget(aPropFrame);
 
-  QHBox* aBtnBox = new QHBox(this);
-  QHBoxLayout* aBtnLayout = new QHBoxLayout(aBtnBox->layout());
-  aBtnLayout->addStretch();
+  QWidget* aBtnBox = new QWidget(this);
+  QHBoxLayout* aBtnLayout = new QHBoxLayout(aBtnBox);
+  aBtnLayout->setContentsMargins( 5, 5, 0, 5 );
+  //  aBtnLayout->addStretch();
 
-  QPushButton* aCloseBtn = new QPushButton(tr("BUT_OK"), aBtnBox);
-  connect(aCloseBtn, SIGNAL(clicked()), this, SLOT(onClose()));
+  QPushButton* closeBtn = new QPushButton( tr( "BUT_OK" ), aBtnBox );
+  closeBtn->setAutoDefault( false );
+  aBtnLayout->addStretch();
+  aBtnLayout->addWidget( closeBtn );
+  connect( closeBtn, SIGNAL( clicked() ), this, SLOT( onClose() ) );
 
-  aMainLayout->addWidget(aBtnBox);
+  aMainLayout->addWidget( aBtnBox );
 }
 
 //------------------------------------------------------------------------
@@ -635,19 +871,23 @@ void SetupDlg::initialize()
 
   _PTR(Study) aStudy = myAnimator->getStudy();
 
+  if( myAnimator->getNbFields() == 0 )
+    return;
+
   FieldData& aData = myAnimator->getFieldData( 0 );
   _PTR(SObject) aField = aData.myField;
 
+  if ( !aField )
+    return;
+
   _PTR(ChildIterator) anIter = aStudy->NewChildIterator(aField);
   anIter->Next(); // First is reference on support
   for(int index = 1; anIter->More(); anIter->Next(), index++)
   {
-    QString aPrefix( "[" );
-    aPrefix += QString::number( index );
-    aPrefix += "] - ";
-
     double aTime = VISU_TimeAnimation::getTimeValue(anIter->Value());
-    myValues->insertItem( aPrefix + QString::number( aTime ) );
+    QString itemText = QString("[%1] - %2").arg( index ).arg( aTime );
+
+    myValues->addItem( itemText );
   }
 
   QString anIndices( myAnimator->getAnimationSequence() );
@@ -665,18 +905,24 @@ enum PrsComboItem {
   TVECTORS_ITEM       = 6, // VISU::TVECTORS
   TSTREAMLINES_ITEM   = 7, // VISU::TSTREAMLINES
   TGAUSSPOINTS_ITEM   = 8, // VISU::TGAUSSPOINTS
-  TSCALARMAPONDEFORMEDSHAPE_ITEM = 9 // VISU::TSCALARMAPONDEFORMEDSHAPE
+  TDEFORMEDSHAPEANDSCALARMAP_ITEM = 9 // VISU::TDEFORMEDSHAPEANDSCALARMAP
 };
 
 //------------------------------------------------------------------------
 void SetupDlg::onClose()
 {
-  if( !myUseRangeBox->isChecked() )
+  if ( !myUseRangeBox->isChecked() )
     myAnimator->setAnimationRange( 0, 0 );
-  
-  if( !myUseSequenceBox->isChecked() )
+  else
+  {
+    double min = myMinVal->text().toDouble();
+    double max = myMaxVal->text().toDouble();
+    myAnimator->setAnimationRange( qMin( min, max ), qMax( min, max ) );
+  }
+
+  if ( !myUseSequenceBox->isChecked() )
     myAnimator->setAnimationSequence( 0 );
-  
+
   close();
 }
 
@@ -687,24 +933,27 @@ void SetupDlg::onFieldChange (int theIndex)
   myTypeId2ComboId.clear();
   myComboId2TypeId.clear();
 
+  if( myAnimator->getNbFields() == 0 )
+    return;
+
   // ATTENTION: append items in the same order like it is done in the PrsComboItem enumeration
-  myTypeCombo->insertItem("Scalar Map");   // item 0
+  myTypeCombo->addItem("Scalar Map");   // item 0
   myTypeId2ComboId[TSCALARMAP_ITEM] = myComboId2TypeId.size();
   myComboId2TypeId.push_back(TSCALARMAP_ITEM);;
 
-  myTypeCombo->insertItem("Iso Surfaces"); // item 1
+  myTypeCombo->addItem("Iso Surfaces"); // item 1
   myTypeId2ComboId[TISOSURFACES_ITEM] = myComboId2TypeId.size();
   myComboId2TypeId.push_back(TISOSURFACES_ITEM);;
 
-  myTypeCombo->insertItem("Cut Planes");   // item 2
+  myTypeCombo->addItem("Cut Planes");   // item 2
   myTypeId2ComboId[TCUTPLANES_ITEM] = myComboId2TypeId.size();
   myComboId2TypeId.push_back(TCUTPLANES_ITEM);;
 
-  myTypeCombo->insertItem("Cut Lines");   // item 3
+  myTypeCombo->addItem("Cut Lines");   // item 3
   myTypeId2ComboId[TCUTLINES_ITEM] = myComboId2TypeId.size();
   myComboId2TypeId.push_back(TCUTLINES_ITEM);;
 
-  myTypeCombo->insertItem("Plot 3D");      // item 4
+  myTypeCombo->addItem("Plot 3D");      // item 4
   myTypeId2ComboId[TPLOT3D_ITEM] = myComboId2TypeId.size();
   myComboId2TypeId.push_back(TPLOT3D_ITEM);;
 
@@ -712,13 +961,13 @@ void SetupDlg::onFieldChange (int theIndex)
   bool anEnableGP = false;
   VISU::VISUType aPrsType;
   if ( myAnimator->getAnimationMode() == VISU::Animation::PARALLEL ) { // parallel animation mode
-    
+
     FieldData& aData = myAnimator->getFieldData(theIndex);
     _PTR(SObject) aSObject = aData.myField;
     VISU::Storable::TRestoringMap aRestoringMap = VISU::Storable::GetStorableMap(aSObject);
     long aNumComp = aRestoringMap["myNumComponent"].toLong();
     anEnableItems = (aNumComp > 1);
-    
+
     long anEntityId = aRestoringMap["myEntityId"].toLong();
     anEnableGP = (anEntityId == VISU::CELL);
 
@@ -726,13 +975,13 @@ void SetupDlg::onFieldChange (int theIndex)
 
   }
   else if ( myAnimator->getAnimationMode() == VISU::Animation::SUCCESSIVE ) { // successive animation mode
-    
+
     for (int i = 0; i < myAnimator->getNbFields(); i++) {
       _PTR(SObject) aSO = myAnimator->getFieldData(i).myField;
       VISU::Storable::TRestoringMap aRestoringMap = VISU::Storable::GetStorableMap(aSO);
       long aNumComp = aRestoringMap["myNumComponent"].toLong();
       anEnableItems = (aNumComp > 1);
-     
+
       long anEntityId = aRestoringMap["myEntityId"].toLong();
       anEnableGP = (anEntityId == VISU::CELL);
 
@@ -744,59 +993,60 @@ void SetupDlg::onFieldChange (int theIndex)
   }
 
   if (anEnableItems) {
-    myTypeCombo->insertItem("Deformed Shape"); // item 5
+    myTypeCombo->addItem("Deformed Shape"); // item 5
     myTypeId2ComboId[TDEFORMEDSHAPE_ITEM] = myComboId2TypeId.size();
     myComboId2TypeId.push_back(TDEFORMEDSHAPE_ITEM);;
 
-    myTypeCombo->insertItem("Vectors");        // item 6
+    myTypeCombo->addItem("Vectors");        // item 6
     myTypeId2ComboId[TVECTORS_ITEM] = myComboId2TypeId.size();
     myComboId2TypeId.push_back(TVECTORS_ITEM);;
 
-    myTypeCombo->insertItem("Stream Lines");   // item 7
+    myTypeCombo->addItem("Stream Lines");   // item 7
     myTypeId2ComboId[TSTREAMLINES_ITEM] = myComboId2TypeId.size();
     myComboId2TypeId.push_back(TSTREAMLINES_ITEM);;
 
-    myTypeCombo->insertItem("Scalar map on Deformed shape");   // item 9
-    myTypeId2ComboId[TSCALARMAPONDEFORMEDSHAPE_ITEM] = myComboId2TypeId.size();
-    myComboId2TypeId.push_back(TSCALARMAPONDEFORMEDSHAPE_ITEM);;
+    myTypeCombo->addItem("Deformed shape and Scalar map");   // item 9
+    myTypeId2ComboId[TDEFORMEDSHAPEANDSCALARMAP_ITEM] = myComboId2TypeId.size();
+    myComboId2TypeId.push_back(TDEFORMEDSHAPEANDSCALARMAP_ITEM);;
   }
 
   if(anEnableGP){
-    myTypeCombo->insertItem("Gauss Points");   // item 8
+    myTypeCombo->addItem("Gauss Points");   // item 8
     myTypeId2ComboId[TGAUSSPOINTS_ITEM] = myComboId2TypeId.size();
     myComboId2TypeId.push_back(TGAUSSPOINTS_ITEM);;
   }
 
   switch (aPrsType) {
   case VISU::TSCALARMAP: //Scalar Map
-    myTypeCombo->setCurrentItem(myTypeId2ComboId[TSCALARMAP_ITEM]);
+    myTypeCombo->setCurrentIndex(myTypeId2ComboId[TSCALARMAP_ITEM]);
     break;
   case VISU::TISOSURFACES: //Iso Surfaces
-    myTypeCombo->setCurrentItem(myTypeId2ComboId[TISOSURFACES_ITEM]);
+    myTypeCombo->setCurrentIndex(myTypeId2ComboId[TISOSURFACES_ITEM]);
     break;
   case VISU::TCUTPLANES: //Cut Planes
-    myTypeCombo->setCurrentItem(myTypeId2ComboId[TCUTPLANES_ITEM]);
+    myTypeCombo->setCurrentIndex(myTypeId2ComboId[TCUTPLANES_ITEM]);
     break;
   case VISU::TCUTLINES: //Cut Lines
-    myTypeCombo->setCurrentItem(myTypeId2ComboId[TCUTLINES_ITEM]);
+    myTypeCombo->setCurrentIndex(myTypeId2ComboId[TCUTLINES_ITEM]);
     break;
   case VISU::TPLOT3D: //Plot 3D
-    myTypeCombo->setCurrentItem(myTypeId2ComboId[TPLOT3D_ITEM]);
+    myTypeCombo->setCurrentIndex(myTypeId2ComboId[TPLOT3D_ITEM]);
     break;
   case VISU::TDEFORMEDSHAPE: //Deformed Shape
-    myTypeCombo->setCurrentItem(myTypeId2ComboId[TDEFORMEDSHAPE_ITEM]);
+    myTypeCombo->setCurrentIndex(myTypeId2ComboId[TDEFORMEDSHAPE_ITEM]);
     break;
   case VISU::TSCALARMAPONDEFORMEDSHAPE: //Scalar Map on Deformed Shape
-    myTypeCombo->setCurrentItem(myTypeId2ComboId[TSCALARMAPONDEFORMEDSHAPE_ITEM]);
+  case VISU::TDEFORMEDSHAPEANDSCALARMAP:
+    myTypeCombo->setCurrentIndex(myTypeId2ComboId[TDEFORMEDSHAPEANDSCALARMAP_ITEM]);
     break;
   case VISU::TVECTORS: //Vectors
-    myTypeCombo->setCurrentItem(myTypeId2ComboId[TVECTORS_ITEM]);
+    myTypeCombo->setCurrentIndex(myTypeId2ComboId[TVECTORS_ITEM]);
     break;
   case VISU::TSTREAMLINES: //Stream Lines
-    myTypeCombo->setCurrentItem(myTypeId2ComboId[TSTREAMLINES_ITEM]);
+    myTypeCombo->setCurrentIndex(myTypeId2ComboId[TSTREAMLINES_ITEM]);
     break;
   case VISU::TGAUSSPOINTS: //Gauss Points
-    myTypeCombo->setCurrentItem(myTypeId2ComboId[TGAUSSPOINTS_ITEM]);
+    myTypeCombo->setCurrentIndex(myTypeId2ComboId[TGAUSSPOINTS_ITEM]);
     break;
   }
   //myPropBtn->setEnabled(aData.myPrsType != VISU::TSCALARMAP);
@@ -806,10 +1056,10 @@ void SetupDlg::onFieldChange (int theIndex)
 void SetupDlg::onTypeChanged (int theIndex)
 {
   int aType = myComboId2TypeId[theIndex];
-  
+
   for (int i = 0; i < myAnimator->getNbFields(); i++) {
     FieldData& aData = ( myAnimator->getAnimationMode() == VISU::Animation::PARALLEL ) ?
-      myAnimator->getFieldData(myFieldLst->currentItem()) :
+      myAnimator->getFieldData(myFieldLst->currentRow()) :
       myAnimator->getFieldData(i);
 
     switch (aType) {
@@ -831,8 +1081,8 @@ void SetupDlg::onTypeChanged (int theIndex)
     case TDEFORMEDSHAPE_ITEM: //Deformed Shape
       aData.myPrsType = VISU::TDEFORMEDSHAPE;
       break;
-    case TSCALARMAPONDEFORMEDSHAPE_ITEM: //Scalar Map on Deformed Shape
-      aData.myPrsType = VISU::TSCALARMAPONDEFORMEDSHAPE;
+    case TDEFORMEDSHAPEANDSCALARMAP_ITEM: //Scalar Map on Deformed Shape
+      aData.myPrsType = VISU::TDEFORMEDSHAPEANDSCALARMAP;
       break;
     case TVECTORS_ITEM: //Vectors
       aData.myPrsType = VISU::TVECTORS;
@@ -892,83 +1142,116 @@ namespace
 
 void SetupDlg::onPreferencesDlg()
 {
+  if(myAnimator->getNbFields() == 0){
+    SUIT_MessageBox::warning(this,
+                           tr("ERROR"),
+                           VisuGUI_TimeAnimationDlg::tr("MSG_NO_ANIMATIONDATA"),
+                           tr("&OK"));
+    return;
+  }
+
   SUIT_OverrideCursor c;
 
   VISU::Animation::AnimationMode aMode = myAnimator->getAnimationMode();
-  int aRefFieldId = ( aMode == VISU::Animation::PARALLEL ) ? myFieldLst->currentItem() : 0;
+  int aRefFieldId = ( aMode == VISU::Animation::PARALLEL ) ? myFieldLst->currentRow() : 0;
   FieldData& aData = myAnimator->getFieldData(aRefFieldId);
-  if (aData.myPrs.empty()) 
+  if (aData.myPrs.empty())
     myAnimator->generatePresentations(aRefFieldId);
 
   if ( myAnimator->getAnimationMode() == VISU::Animation::SUCCESSIVE ) {
     for (int i = 0; i < myAnimator->getNbFields(); i++) {
-      if ( i != aRefFieldId && myAnimator->getFieldData(i).myPrs.empty() ) 
+      if ( i != aRefFieldId && myAnimator->getFieldData(i).myPrs.empty() )
        myAnimator->generatePresentations(i);
     }
   }
 
-  if(!aData.myNbFrames || !aData.myPrs[0]){
+  if(!aData.myNbFrames || aData.myPrs.empty() || !aData.myPrs[0]){
     QApplication::restoreOverrideCursor();
-    SUIT_MessageBox::warn1(this,
+    SUIT_MessageBox::warning(this,
                            tr("ERROR"),
                            VisuGUI_TimeAnimationDlg::tr("MSG_NO_ANIMATIONDATA"),
                            tr("&OK"));
     return;
   }
 
-  int aType = myComboId2TypeId[myTypeCombo->currentItem()];
+  int aType = myComboId2TypeId[myTypeCombo->currentIndex()];
   switch (aType) {
   case TSCALARMAP_ITEM: //Scalar Map
     c.suspend();
-    EditPrs<VISU::ScalarMap_i, VisuGUI_ScalarBarDlg>(myModule, aData, myAnimator);
+    EditPrs<VISU::ScalarMap_i,VisuGUI_ScalarBarDlg>(myModule,aData,myAnimator);
     break;
   case TISOSURFACES_ITEM: //Iso Surfaces
     c.suspend();
-    EditPrs<VISU::IsoSurfaces_i, VisuGUI_IsoSurfacesDlg>(myModule, aData, myAnimator);
+    EditPrs<VISU::IsoSurfaces_i,VisuGUI_IsoSurfacesDlg>(myModule,aData,myAnimator);
     break;
   case TCUTPLANES_ITEM: //Cut Planes
     c.suspend();
-    EditPrs<VISU::CutPlanes_i, VisuGUI_CutPlanesDlg>(myModule, aData, myAnimator);
+    EditPrs<VISU::CutPlanes_i,VisuGUI_CutPlanesDlg>(myModule,aData,myAnimator);
     break;
   case TCUTLINES_ITEM: //Cut Lines
     c.suspend();
-    EditPrs<VISU::CutLines_i, VisuGUI_CutLinesDlg>(myModule, aData, myAnimator);
+    EditPrs<VISU::CutLines_i,VisuGUI_CutLinesDlg>(myModule,aData,myAnimator);
     break;
   case TPLOT3D_ITEM: //Plot 3D
     c.suspend();
-    EditPrs<VISU::Plot3D_i, VisuGUI_Plot3DDlg>(myModule, aData, myAnimator);
+    EditPrs<VISU::Plot3D_i,VisuGUI_Plot3DDlg>(myModule,aData,myAnimator);
     break;
   case TDEFORMEDSHAPE_ITEM: //Deformed Shape
     c.suspend();
-    EditPrs<VISU::DeformedShape_i, VisuGUI_DeformedShapeDlg>(myModule, aData, myAnimator);
+    EditPrs<VISU::DeformedShape_i,VisuGUI_DeformedShapeDlg>(myModule,aData,myAnimator);
     break;
-  case TSCALARMAPONDEFORMEDSHAPE_ITEM: //Scalar Map on Deformed Shape
+  case TDEFORMEDSHAPEANDSCALARMAP_ITEM: //Scalar Map on Deformed Shape
     c.suspend();
     {
-      typedef VisuGUI_ScalarMapOnDeformedShapeDlg DLG;
-      typedef VISU::ScalarMapOnDeformedShape_i TYPE;
+      typedef VisuGUI_DeformedShapeAndScalarMapDlg DLG;
+      typedef VISU::DeformedShapeAndScalarMap_i TYPE;
       DLG* aDlg = new DLG (myModule);
       TYPE* aPrs3d = dynamic_cast<TYPE*>(aData.myPrs[0]);
       aDlg->initFromPrsObject(aPrs3d, true);
-      if (aDlg->exec() && aDlg->storeToPrsObject(aData.myPrs[0])) { 
-       for (int i = 1; i < aData.myNbFrames; i++){
-         aData.myPrs[i]->SameAs(aData.myPrs[0]);
-       }
+      if (aDlg->exec() && aDlg->storeToPrsObject(aData.myPrs[0])) {
+        for (long aFrameId = 1; aFrameId < aData.myNbFrames; aFrameId++){
+          TYPE* aDeformedPrs3d = dynamic_cast<TYPE*>(aData.myPrs[aFrameId]);
+          //Set correct time stamp number
+          int aTimeStampNum = aDeformedPrs3d->GetScalarTimeStampNumber();
+          aDeformedPrs3d->SameAs(aPrs3d);
+          aDeformedPrs3d->SetScalarField(aDeformedPrs3d->GetScalarEntity(),
+                                         aDeformedPrs3d->GetScalarFieldName(),
+                                         aTimeStampNum);
+
+        }
+
+        if ( myAnimator->getAnimationMode() == VISU::Animation::SUCCESSIVE ) {
+          for (int aFieldId = 1; aFieldId < myAnimator->getNbFields(); aFieldId++) {
+            FieldData& aFieldData = myAnimator->getFieldData(aFieldId);
+            for (long aFrameId = 0; aFrameId < aFieldData.myNbFrames; aFrameId++) {
+              TYPE* aDeformedPrs3d = dynamic_cast<TYPE*>(aFieldData.myPrs[aFrameId]);
+              std::string aTitle = aDeformedPrs3d->GetCTitle();
+              //Set correct time stamp number
+              int aTimeStampNum = aDeformedPrs3d->GetScalarTimeStampNumber();
+              aDeformedPrs3d->SameAs(aPrs3d);
+              aDeformedPrs3d->SetTitle(aTitle.c_str());
+              aDeformedPrs3d->SetScalarField(aDeformedPrs3d->GetScalarEntity(),
+                                             aDeformedPrs3d->GetScalarFieldName(),
+                                             aTimeStampNum);
+
+            }
+          }
+        }
       }
       delete aDlg;
     }
     break;
   case TVECTORS_ITEM: //Vectors
     c.suspend();
-    EditPrs<VISU::Vectors_i, VisuGUI_VectorsDlg>(myModule, aData, myAnimator);
+    EditPrs<VISU::Vectors_i,VisuGUI_VectorsDlg>(myModule,aData,myAnimator);
     break;
   case TSTREAMLINES_ITEM: //Stream Lines
     c.suspend();
-    EditPrs<VISU::StreamLines_i, VisuGUI_StreamLinesDlg>(myModule, aData, myAnimator);
+    EditPrs<VISU::StreamLines_i,VisuGUI_StreamLinesDlg>(myModule,aData,myAnimator);
     break;
   case TGAUSSPOINTS_ITEM: //Gauss Points
     c.suspend();
-    EditPrs<VISU::GaussPoints_i, VisuGUI_GaussPointsDlg>(myModule, aData, myAnimator);
+    EditPrs<VISU::GaussPoints_i,VisuGUI_GaussPointsDlg>(myModule,aData,myAnimator);
     break;
   }
 }
@@ -994,35 +1277,54 @@ void SetupDlg::onRangeCheck (bool theCheck)
   if (!theCheck)
     myAnimator->setAnimationRange(0, 0);
   else
-    myAnimator->setAnimationRange(myMinVal->value(), myMaxVal->value());
+    myAnimator->setAnimationRange(myMinVal->text().toDouble(), myMaxVal->text().toDouble());
 
   setIsRegenerate( true );
 }
 
 //------------------------------------------------------------------------
-void SetupDlg::onMinValue (double theVal)
+void SetupDlg::onMinValue()
 {
-  if (theVal > myAnimator->getMaxRange()) {
-    myMinVal->setValue( myAnimator->getMinTime() );
-    myMinVal->setFocus();
-    return;
-  }
-  myAnimator->setAnimationRange(theVal, myAnimator->getMaxRange());
+  double aVal = myMinVal->text().toDouble();
+  aVal = qMax( qMin( aVal, myAnimator->getMaxRange() ), myAnimator->getMinTime() );
+  myAnimator->setAnimationRange( aVal, myAnimator->getMaxRange() );
+  myMinVal->setText( QString::number( aVal ) );
+  myMinVal->setFocus();
 
   setIsRegenerate( true );
 }
 
 //------------------------------------------------------------------------
-void SetupDlg::onMaxValue (double theVal)
+void SetupDlg::onMaxValue()
 {
-  if (theVal < myAnimator->getMinRange()) {
-    myMaxVal->setValue( myAnimator->getMaxTime() );
-    myMaxVal->setFocus();
+  double aVal = myMaxVal->text().toDouble();
+  aVal = qMin( qMax( aVal, myAnimator->getMinRange() ), myAnimator->getMaxTime() );
+  myAnimator->setAnimationRange( myAnimator->getMinRange(), aVal );
+  myMaxVal->setText( QString::number( aVal ) );
+  myMaxVal->setFocus();
+
+  setIsRegenerate( true );
+}
+
+//------------------------------------------------------------------------
+void SetupDlg::onMinValueEdit (const QString& theVal)
+{
+  double aVal = theVal.toDouble();
+  if ((aVal > myAnimator->getMaxRange()) || (aVal < myAnimator->getMinRange())){
+    myMinVal->setText( QString::number(myAnimator->getMinTime()) );
+    myMinVal->setFocus();
     return;
   }
-  myAnimator->setAnimationRange(myAnimator->getMinRange(), theVal);
+}
 
-  setIsRegenerate( true );
+//------------------------------------------------------------------------
+void SetupDlg::onMaxValueEdit (const QString& theVal)
+{
+  double aVal = theVal.toDouble();
+  if ((aVal > myAnimator->getMaxRange()) || (aVal < myAnimator->getMinRange())) {
+    myMaxVal->setText( QString::number(myAnimator->getMaxTime()) );
+    myMaxVal->setFocus();
+  }
 }
 
 //------------------------------------------------------------------------
@@ -1036,7 +1338,7 @@ void SetupDlg::onSequenceCheck( bool theCheck )
   }
 
   QString anIndices = myIndices->text();
-  myAnimator->setAnimationSequence( anIndices.latin1() );
+  myAnimator->setAnimationSequence( anIndices.toLatin1().data() );
 
   setIsRegenerate( true );
 }
@@ -1047,14 +1349,14 @@ void SetupDlg::onIndicesChanged( const QString& theIndices )
   bool aCorrect = true;
   int aLimit = myValues->count();
 
-  QValueList<long> anIndicesList;
+  QList<long> anIndicesList;
   aCorrect = myAnimator->getIndicesFromSequence( theIndices, anIndicesList );
 
   myValues->blockSignals( true );
   myValues->clearSelection();
 
-  QValueList<long>::iterator indIt = anIndicesList.begin();
-  QValueList<long>::iterator indItEnd = anIndicesList.end();
+  QList<long>::iterator indIt = anIndicesList.begin();
+  QList<long>::iterator indItEnd = anIndicesList.end();
   for( int i = 0; indIt != indItEnd; ++indIt, i++ )
   {
     long anIndex = *indIt;
@@ -1064,20 +1366,24 @@ void SetupDlg::onIndicesChanged( const QString& theIndices )
       myValues->clearSelection();
       break;
     }
-    myValues->setSelected( anIndex-1, true );
+    myValues->item( anIndex-1 )->setSelected( true );
   }
 
   myValues->blockSignals( false );
 
+  QPalette palette = myIndices->palette();
+
   if( !aCorrect )
   {
-    myIndices->setPaletteForegroundColor( Qt::red );
+    palette.setColor(myIndices->foregroundRole(), Qt::red);
+    myIndices->setPalette(palette);
     return;
   }
 
-  myIndices->setPaletteForegroundColor( Qt::black );
+  palette.setColor(myIndices->foregroundRole(), Qt::black);
+  myIndices->setPalette(palette);
 
-  myAnimator->setAnimationSequence( theIndices.latin1() );
+  myAnimator->setAnimationSequence( theIndices.toLatin1().data() );
 
   setIsRegenerate( true );
 }
@@ -1091,13 +1397,13 @@ void SetupDlg::onValuesChanged()
 
   for( int i = 0; i < aLimit; i++ )
   {
-    if( !myValues->isSelected( i ) )
+    if( !myValues->item( i )->isSelected() )
       continue;
 
     QString aString = QString::number( i+1 );
 
-    bool aPrevSelected = i != 0 && myValues->isSelected( i-1 );
-    bool aNextSelected = i != aLimit - 1 && myValues->isSelected( i+1 );
+    bool aPrevSelected = i != 0 && myValues->item( i-1 )->isSelected();
+    bool aNextSelected = i != aLimit - 1 && myValues->item( i+1 )->isSelected();
     if( aPrevSelected )
     {
       if( aNextSelected )
@@ -1120,11 +1426,15 @@ void SetupDlg::onValuesChanged()
     anIndices.truncate( anIndices.length() - 1 );
 
   myIndices->blockSignals( true );
-  myIndices->setPaletteForegroundColor( Qt::black );
+
+  QPalette palette = myIndices->palette();
+  palette.setColor(myIndices->foregroundRole(), Qt::black);
+  myIndices->setPalette(palette);
+
   myIndices->setText( anIndices );
   myIndices->blockSignals( false );
 
-  myAnimator->setAnimationSequence( anIndices.latin1() );
+  myAnimator->setAnimationSequence( anIndices.toLatin1().data() );
 
   setIsRegenerate( true );
 }
@@ -1238,19 +1548,19 @@ static QPixmap MYpausePixmap(pauseIco);
 
 
 VisuGUI_TimeAnimationDlg::VisuGUI_TimeAnimationDlg (VisuGUI* theModule,
-                                                   _PTR(Study) theStudy, 
+                                                   _PTR(Study) theStudy,
                                                    VISU::Animation::AnimationMode theMode) :
-  QDialog(VISU::GetDesktop(theModule), 
-         "VisuGUI_TimeAnimationDlg", 
-         false, 
-         WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu | WDestructiveClose),
+  QDialog(VISU::GetDesktop(theModule),
+         Qt::WindowTitleHint | Qt::WindowSystemMenuHint ),
   myModule(theModule),
   mySetupDlg(NULL)
 {
+  setAttribute( Qt::WA_DeleteOnClose, true );
+  setModal( false );
   if ( theMode == VISU::Animation::PARALLEL )
-    setCaption(tr("PARALLEL_ANIMATION"));
+    setWindowTitle(tr("PARALLEL_ANIMATION"));
   else
-    setCaption(tr("SUCCESSIVE_ANIMATION"));
+    setWindowTitle(tr("SUCCESSIVE_ANIMATION"));
   setSizeGripEnabled( TRUE );
 
   myAnimator = new VISU_TimeAnimation (theStudy);
@@ -1259,7 +1569,8 @@ VisuGUI_TimeAnimationDlg::VisuGUI_TimeAnimationDlg (VisuGUI* theModule,
   connect(myAnimator, SIGNAL(stopped()),                 this, SLOT(onStop()));
   myAnimator->setAnimationMode(theMode);
 
-  QVBoxLayout* aMainLayout = new QVBoxLayout(this, 7, 6);
+  QVBoxLayout* aMainLayout = new QVBoxLayout(this);
+  aMainLayout->setMargin( 7 );
   aMainLayout->setSpacing(5);
 
   mySetupBtn = new QPushButton("Setup Animation...", this);
@@ -1283,45 +1594,46 @@ VisuGUI_TimeAnimationDlg::VisuGUI_TimeAnimationDlg (VisuGUI* theModule,
   TopLayout->setMargin( 11 );
 
   myTimeLbl = new QLabel("0", myPlayFrame);
-  TopLayout->addMultiCellWidget(myTimeLbl, 0, 0, 0, 2, Qt::AlignHCenter);
+  TopLayout->addWidget(myTimeLbl, 0, 0, 1, 3, Qt::AlignHCenter);
 
-  mySlider = new QSlider(Qt::Horizontal, myPlayFrame);
-  mySlider->setMinValue(0);
-  mySlider->setMaxValue(3);
+  mySlider = new QSlider( myPlayFrame);
+  mySlider->setOrientation(Qt::Horizontal);
+  mySlider->setMinimum(0);
+  mySlider->setMaximum(3);
   mySlider->setTickInterval(1);
   //mySlider->setTickmarks(QSlider::Below);
   mySlider->setTracking(false);
-  connect( mySlider, SIGNAL( valueChanged(int) ),
+  connect( mySlider, SIGNAL( sliderMoved(int) ),
           this, SLOT( onWindowChanged(int) ) );
-  TopLayout->addMultiCellWidget(mySlider, 1, 1, 0, 2);
+  TopLayout->addWidget(mySlider, 1, 0, 1, 3);
 
-  myPlayBtn = new QToolButton(myPlayFrame);
-  myPlayBtn->setIconSet(MYplayPixmap);
-  myPlayBtn->setToggleButton(true);
+  myPlayBtn = new QPushButton(myPlayFrame);
+  myPlayBtn->setIcon(MYplayPixmap);
+  myPlayBtn->setCheckable(true);
   connect( myPlayBtn, SIGNAL( clicked() ),
           this, SLOT( onPlayPressed() ) );
-  TopLayout->addMultiCellWidget(myPlayBtn, 2, 2, 0, 1);
+  TopLayout->addWidget(myPlayBtn, 2, 0, 1, 2);
 
-  QToolButton* aBackBtn = new QToolButton(myPlayFrame);
-  aBackBtn->setIconSet(QPixmap(leftIco));
+  QPushButton* aBackBtn = new QPushButton(myPlayFrame);
+  aBackBtn->setIcon(QPixmap(leftIco));
   connect( aBackBtn, SIGNAL( clicked() ),
           this, SLOT( onBackPressed() ) );
   TopLayout->addWidget(aBackBtn, 3, 0);
 
-  QToolButton* aForvardBtn = new QToolButton(myPlayFrame);
-  aForvardBtn->setIconSet(QPixmap(rightIco));
+  QPushButton* aForvardBtn = new QPushButton(myPlayFrame);
+  aForvardBtn->setIcon(QPixmap(rightIco));
   connect( aForvardBtn, SIGNAL( clicked() ),
           this, SLOT( onForvardPressed() ) );
   TopLayout->addWidget(aForvardBtn, 3, 1);
 
-  QToolButton* aFirstBtn = new QToolButton(myPlayFrame);
-  aFirstBtn->setIconSet(QPixmap(firstIco));
+  QPushButton* aFirstBtn = new QPushButton(myPlayFrame);
+  aFirstBtn->setIcon(QPixmap(firstIco));
   connect( aFirstBtn, SIGNAL( clicked() ),
           this, SLOT( onFirstPressed() ) );
   TopLayout->addWidget(aFirstBtn, 4, 0);
 
-  QToolButton* aLastBtn = new QToolButton(myPlayFrame);
-  aLastBtn->setIconSet(QPixmap(lastIco));
+  QPushButton* aLastBtn = new QPushButton(myPlayFrame);
+  aLastBtn->setIcon(QPixmap(lastIco));
   connect( aLastBtn, SIGNAL( clicked() ),
           this, SLOT( onLastPressed() ) );
   TopLayout->addWidget(aLastBtn, 4, 1);
@@ -1342,45 +1654,46 @@ VisuGUI_TimeAnimationDlg::VisuGUI_TimeAnimationDlg (VisuGUI* theModule,
           aSpeedNum, SLOT(display(double)) );
   connect( aWheel, SIGNAL(valueChanged(double)),
           this, SLOT(onSpeedChange(double)) );
-  TopLayout->addMultiCellWidget(aWheel, 1, 3, 3, 3, Qt::AlignRight);
+  TopLayout->addWidget(aWheel, 1, 3, 3, 1, Qt::AlignRight);
 
   QCheckBox* aCycleCheck = new QCheckBox("Cycled animation",myPlayFrame);
   aCycleCheck->setChecked(myAnimator->isCycling());
   connect(aCycleCheck, SIGNAL(toggled(bool)), myAnimator, SLOT(setCyclingSlot(bool)));
-  TopLayout->addMultiCellWidget(aCycleCheck, 5, 5, 0, 3);
+  TopLayout->addWidget(aCycleCheck, 5, 0, 1, 4);
 
   QCheckBox* aPropCheck = new QCheckBox("Use proportional timing",myPlayFrame);
   aPropCheck->setChecked(myAnimator->isProportional());
   connect(aPropCheck, SIGNAL(toggled(bool)), myAnimator, SLOT(setProportionalSlot(bool)));
-  TopLayout->addMultiCellWidget(aPropCheck, 6, 6, 0, 3);
+  TopLayout->addWidget(aPropCheck, 6, 0, 1, 4);
 
   // Pictures saving on disk
   QGroupBox* aSaveBox = new QGroupBox( "Saving", myPlayFrame );
-  aSaveBox->setColumnLayout(0, Qt::Horizontal );
-  QGridLayout* aSaveLay = new QGridLayout(aSaveBox->layout());
+  //aSaveBox->setColumnLayout(0, Qt::Horizontal );
+  QGridLayout* aSaveLay = new QGridLayout(aSaveBox);
   aSaveLay->setSpacing( 5 );
   aSaveLay->setMargin( 5 );
 
   mySaveCheck = new QCheckBox("Save pictures to directory", aSaveBox);
   connect(mySaveCheck, SIGNAL( toggled(bool)),
           this, SLOT( onCheckDump(bool) ));
-  aSaveLay->addMultiCellWidget(mySaveCheck, 0, 0, 0, 2);
+  aSaveLay->addWidget(mySaveCheck, 0, 0, 1, 3);
 
   QLabel* aFormatLbl = new QLabel("Saving format:", aSaveBox);
   aFormatLbl->setEnabled(false);
   connect(mySaveCheck, SIGNAL( toggled(bool)),
           aFormatLbl, SLOT( setEnabled(bool) ));
-  aSaveLay->addMultiCellWidget(aFormatLbl, 1, 1, 0, 1);
+  aSaveLay->addWidget(aFormatLbl, 1, 0, 1, 2);
 
   myPicsFormat = new QComboBox(aSaveBox);
-  QStrList aDumpFormats = QImageIO::outputFormats();
+  QList<QByteArray> aDumpFormats = QImageWriter::supportedImageFormats();
   for (unsigned int i = 0; i < aDumpFormats.count(); i++) {
-    myPicsFormat->insertItem(aDumpFormats.at(i));
+    myPicsFormat->addItem(aDumpFormats.at(i));
   }
-  if (aDumpFormats.find("JPEG"))
-    myPicsFormat->setCurrentItem(aDumpFormats.find("JPEG"));
+  if (aDumpFormats.indexOf("jpeg") >= 0)
+    myPicsFormat->setCurrentIndex(aDumpFormats.indexOf("jpeg"));
   else
-    myPicsFormat->setCurrentItem(0);
+    myPicsFormat->setCurrentIndex(0);
+
   myPicsFormat->setEnabled(false);
   aSaveLay->addWidget(myPicsFormat, 1, 2);
   connect(mySaveCheck, SIGNAL( toggled(bool)),
@@ -1413,7 +1726,7 @@ VisuGUI_TimeAnimationDlg::VisuGUI_TimeAnimationDlg (VisuGUI* theModule,
   mySaveAVICheck = new QCheckBox("Save animation to AVI file", aSaveBox);
   connect(mySaveAVICheck, SIGNAL( toggled(bool)),
           this, SLOT( onCheckDump(bool) ));
-  aSaveLay->addMultiCellWidget(mySaveAVICheck, 3, 3, 0, 2);
+  aSaveLay->addWidget(mySaveAVICheck, 3, 0, 1, 3);
 
   myPathAVILbl = new QLabel("Path:", aSaveBox);
   myPathAVILbl->setEnabled(false);
@@ -1439,37 +1752,43 @@ VisuGUI_TimeAnimationDlg::VisuGUI_TimeAnimationDlg (VisuGUI* theModule,
   mySaveAVICheck->setChecked(false);
   //mySaveAVICheck->setEnabled(myAnimator->checkAVIMaker());
 
-  TopLayout->addMultiCellWidget(aSaveBox, 7, 7, 0, 3);
+  TopLayout->addWidget(aSaveBox, 7, 0, 1, 4);
 
   QCheckBox* aCleanMemCheck = new QCheckBox("Clean memory at each frame",myPlayFrame);
   aCleanMemCheck->setChecked(myAnimator->isCleaningMemoryAtEachFrame());
   connect(aCleanMemCheck, SIGNAL(toggled(bool)), myAnimator, SLOT(setCleaningMemoryAtEachFrameSlot(bool)));
-  TopLayout->addMultiCellWidget(aCleanMemCheck, 8, 8, 0, 3);
+  TopLayout->addWidget(aCleanMemCheck, 8, 0, 1, 4);
 
   aMainLayout->addWidget(myPlayFrame);
 
   // Animation publishing in study
-  QHBox* aPublishBox = new QHBox(this);
-  aPublishBox->setSpacing(5);
+  QWidget* aPublishBox = new QWidget(this);
+  QHBoxLayout* aPubHBLay = new QHBoxLayout( aPublishBox );
+  aPubHBLay->setMargin( 0 );
 
   myPublishBtn = new QPushButton("Publish to study", aPublishBox);
+  aPubHBLay->addWidget( myPublishBtn );
   connect(myPublishBtn, SIGNAL(clicked()), this, SLOT(publishToStudy()));
 
   mySaveBtn = new QPushButton("Save Animation", aPublishBox);
   mySaveBtn->setEnabled(myAnimator->isSavedInStudy());
+  aPubHBLay->addWidget( mySaveBtn );
   connect(mySaveBtn, SIGNAL(clicked()), this, SLOT(saveToStudy()));
 
   aMainLayout->addWidget(aPublishBox);
 
 
-  QHBox* aBtnBox = new QHBox(this);
-  QHBoxLayout* aBtnLayout = new QHBoxLayout(aBtnBox->layout());
+  QWidget* aBtnBox = new QWidget(this);
+  QHBoxLayout* aBtnLayout = new QHBoxLayout(aBtnBox);
+  aBtnLayout->setContentsMargins( 5, 5, 0, 5 );
   aBtnLayout->addStretch();
 
   QPushButton* aCloseBtn = new QPushButton(tr("BUT_CLOSE"), aBtnBox);
+  aBtnLayout->addWidget( aCloseBtn );
   connect(aCloseBtn, SIGNAL(clicked()), this, SLOT(close()));
 
   QPushButton* aHelpBtn = new QPushButton(tr("BUT_HELP"), aBtnBox);
+  aBtnLayout->addWidget( aHelpBtn );
   connect(aHelpBtn, SIGNAL(clicked()), this, SLOT(onHelp()));
 
   SUIT_Study* aStudy = VISU::GetAppStudy(myModule);
@@ -1523,7 +1842,8 @@ void VisuGUI_TimeAnimationDlg::createFrames()
     FieldData& aFieldData = myAnimator->getFieldData(i);
     if( aFieldData.myPrs.empty() )
     {
-      myAnimator->generatePresentations(i);
+      //myAnimator->generatePresentations(i);
+      GeneratePresentations(i,myAnimator);
       continue;
     }
 
@@ -1532,6 +1852,8 @@ void VisuGUI_TimeAnimationDlg::createFrames()
     // when a range or a sequence of the animation has been changed
     if( isRegenerate )
     {
+      GeneratePresentations(i,myAnimator);
+      /*
       VISU::ColoredPrs3d_i* aPrs3d = dynamic_cast<VISU::ColoredPrs3d_i*>(aFieldData.myPrs[0]);
       if( !aPrs3d )
        continue;
@@ -1547,6 +1869,7 @@ void VisuGUI_TimeAnimationDlg::createFrames()
          aColoredPrs3d->SetTitle(aTitle.c_str());
        }
       }
+      */
     }
   }
   if( isRegenerate )
@@ -1555,18 +1878,18 @@ void VisuGUI_TimeAnimationDlg::createFrames()
   if (myAnimator->getNbFrames() == 0) {
     myPlayFrame->setEnabled(false);
     c.suspend();
-    SUIT_MessageBox::warn1(this,
+    SUIT_MessageBox::warning(this,
                            tr("ERROR"),
                            tr("MSG_NO_ANIMATIONDATA"),
                            tr("&OK"));
     return;
   }
-  mySlider->setMaxValue(myAnimator->getNbFrames()-1);
+  mySlider->setMaximum(myAnimator->getNbFrames()-1);
   myPlayFrame->setEnabled(true);
   if (!myAnimator->generateFrames()) {
     c.suspend();
     //myPlayFrame->setEnabled(false);
-    SUIT_MessageBox::warn1(this,
+    SUIT_MessageBox::warning(this,
                            tr("ERROR"),
                            myAnimator->getLastErrorMsg(),
                            tr("&OK"));
@@ -1578,15 +1901,15 @@ void VisuGUI_TimeAnimationDlg::createFrames()
 //------------------------------------------------------------------------
 void VisuGUI_TimeAnimationDlg::onPlayPressed()
 {
-  if (myPlayBtn->isOn() && (!myAnimator->running())) {
-    myPlayBtn->setIconSet(MYpausePixmap);
+  if (myPlayBtn->isChecked() && (!myAnimator->isRunning())) {
+    myPlayBtn->setIcon(MYpausePixmap);
     if (mySaveCheck->isChecked()) {
       onPicsFormatChanged();
       onPathChanged();
-      
+
     } else if (mySaveAVICheck->isChecked()) {
       myAnimator->setDumpFormat("AVI");
-      myAnimator->dumpTo(myPathAVIEdit->text());
+      myAnimator->dumpTo(myPathAVIEdit->text().toLatin1().data());
     } else {
       myAnimator->dumpTo("");
     }
@@ -1594,7 +1917,7 @@ void VisuGUI_TimeAnimationDlg::onPlayPressed()
     myGenBtn->setEnabled(false);
     myAnimator->startAnimation();
   } else {
-    myPlayBtn->setIconSet(MYplayPixmap);
+    myPlayBtn->setIcon(MYplayPixmap);
     myAnimator->stopAnimation();
     mySetupBtn->setEnabled(true);
     myGenBtn->setEnabled(true);
@@ -1645,7 +1968,7 @@ void VisuGUI_TimeAnimationDlg::closeEvent (QCloseEvent* theEvent)
   if (myAnimator != NULL) {
     myAnimator->stopAnimation();
     myAnimator->wait(500);
-    if (myAnimator->running() && (! myAnimator->finished())) {
+    if (myAnimator->isRunning() && (! myAnimator->isFinished())) {
       theEvent->ignore();
       QCloseEvent* aNewCloseEvent = new QCloseEvent;
       QApplication::postEvent( this, aNewCloseEvent );
@@ -1674,8 +1997,8 @@ void VisuGUI_TimeAnimationDlg::onSpeedChange (double theSpeed)
 void VisuGUI_TimeAnimationDlg::stopAnimation()
 {
   myAnimator->stopAnimation();
-  myPlayBtn->setOn(false);
-  myPlayBtn->setIconSet(MYplayPixmap);
+  myPlayBtn->setChecked(false);
+  myPlayBtn->setIcon(MYplayPixmap);
   mySetupBtn->setEnabled(true);
   myGenBtn->setEnabled(true);
 }
@@ -1690,7 +2013,7 @@ void VisuGUI_TimeAnimationDlg::onExecution (long theNewFrame, double theTime)
 //------------------------------------------------------------------------
 void VisuGUI_TimeAnimationDlg::onSetupDlg()
 {
-  if (myAnimator->getNbFrames() > 0) 
+  if (myAnimator->getNbFrames() > 0)
     myAnimator->firstFrame();
   mySetupDlg->exec();
   myPlayFrame->setEnabled(false);
@@ -1703,7 +2026,7 @@ void VisuGUI_TimeAnimationDlg::onBrowse()
   QString aDir;
   if (myPathEdit->text().isEmpty())
     aDir = getenv("HOME");
-  else 
+  else
     aDir = myPathEdit->text();
   QString aPath = SUIT_FileDlg::getExistingDirectory(this, aDir, "Select path");
   if (!aPath.isEmpty())
@@ -1723,7 +2046,7 @@ void VisuGUI_TimeAnimationDlg::onBrowseAVI()
     aDir = getenv("HOME");
   else {
     QFileInfo aFile(myPathAVIEdit->text());
-    aDir = aFile.dirPath(true);
+    aDir = aFile.absoluteDir().absolutePath();
   }
   QString aPath = SUIT_FileDlg::getFileName(this, aDir, aFilter, "Select file", false);
   if (!aPath.isEmpty())
@@ -1750,7 +2073,7 @@ void VisuGUI_TimeAnimationDlg::onCheckDump(bool)
     if (mySaveAVICheck->isChecked()) {
       if (!myAnimator->checkAVIMaker()) {
         // AVI maker is not available
-        SUIT_MessageBox::warn1(this, tr("ERROR"), tr("MSG_NO_AVI_MAKER"), tr("&OK"));
+        SUIT_MessageBox::warning(this, tr("ERROR"), tr("MSG_NO_AVI_MAKER"), tr("&OK"));
         mySaveAVICheck->setChecked(false);
       }
       else {
@@ -1778,8 +2101,8 @@ void VisuGUI_TimeAnimationDlg::onCheckDump(bool)
 //------------------------------------------------------------------------
 void VisuGUI_TimeAnimationDlg::onStop()
 {
-  myPlayBtn->setOn(false);
-  myPlayBtn->setIconSet(MYplayPixmap);
+  myPlayBtn->setChecked(false);
+  myPlayBtn->setIcon(MYplayPixmap);
   mySetupBtn->setEnabled(true);
   myGenBtn->setEnabled(true);
 }
@@ -1798,7 +2121,7 @@ void VisuGUI_TimeAnimationDlg::onHelp()
 #else
                platform = "application";
 #endif
-    SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"),
+    SUIT_MessageBox::warning(0, QObject::tr("WRN_WARNING"),
                           QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
                           arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
                           QObject::tr("BUT_OK"));
@@ -1825,21 +2148,29 @@ void VisuGUI_TimeAnimationDlg::restoreFromStudy(_PTR(SObject) theAnimation)
 {
   myAnimator->restoreFromStudy(theAnimation);
   mySaveBtn->setEnabled(myAnimator->isSavedInStudy());
-  if ( myAnimator->getAnimationMode() == VISU::Animation::SUCCESSIVE ) 
-    setCaption(tr("SUCCESSIVE_ANIMATION"));
+  if ( myAnimator->getAnimationMode() == VISU::Animation::SUCCESSIVE )
+    setWindowTitle(tr("SUCCESSIVE_ANIMATION"));
 }
 
 //------------------------------------------------------------------------
 void VisuGUI_TimeAnimationDlg::onPicsFormatChanged()
 {
-  QStrList aDumpFormats = QImageIO::outputFormats();
-  myAnimator->setDumpFormat(aDumpFormats.at(myPicsFormat->currentItem()));
+  QList<QByteArray> aDumpFormats = QImageWriter::supportedImageFormats();
+  if (aDumpFormats.count() < 1) {
+    SUIT_MessageBox::warning(this, tr("ERROR"), tr("MSG_NO_SUPPORTED_IMAGE_FORMATS"), tr("&OK"));
+    return;
+  }
+  if (myPicsFormat->currentIndex() < 0 || aDumpFormats.count() <= myPicsFormat->currentIndex()) {
+    SUIT_MessageBox::warning(this, tr("ERROR"), tr("MSG_INVALID_IMAGE_FORMAT_INDEX"), tr("&OK"));
+    return;
+  }
+  myAnimator->setDumpFormat(aDumpFormats.at(myPicsFormat->currentIndex()));
 }
 
 //------------------------------------------------------------------------
 void VisuGUI_TimeAnimationDlg::onPathChanged()
 {
-  myAnimator->dumpTo(myPathEdit->text());
+  myAnimator->dumpTo(myPathEdit->text().toLatin1().data());
 }
 
 //------------------------------------------------------------------------
@@ -1849,7 +2180,7 @@ void VisuGUI_TimeAnimationDlg::keyPressEvent( QKeyEvent* e )
   if ( e->isAccepted() )
     return;
 
-  if ( e->key() == Key_F1 )
+  if ( e->key() == Qt::Key_F1 )
     {
       e->accept();
       onHelp();
index d41e369c482563739dc7131431d21a7997694185..d0aeec1ffa4ef2712773f30321d0ab0f48eeda8a 100644 (file)
@@ -1,42 +1,45 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VisuGUI_TimeAnimation.h
 //  Author : Vitaly SMETANNIKOV
 //  Module : VISU
-
+//
 #ifndef VISUGUI_TIMEANIMATION_H
 #define VISUGUI_TIMEANIMATION_H
 
-#include "QtxDblSpinBox.h"
+#include "QtxDoubleSpinBox.h"
 #include "SALOMEDSClient_Study.hxx"
 
 #include "VTKViewer.h"
 
+#include <QDialog>
+#include <QButtonGroup>
+#include <QStackedWidget>
+#include <QMap>
+
 // IDL headers
 #include "SALOMEconfig.h"
 #include CORBA_SERVER_HEADER(VISU_Gen)
 
-#include <qdialog.h>
-#include <qbuttongroup.h>
-#include <qwidgetstack.h>
-
 #include <vector>
 #include <map>
 
@@ -44,18 +47,19 @@ class VisuGUI;
 class SalomeApp_Module;
 class VISU_TimeAnimation;
 
-namespace VISU 
+namespace VISU
 {
   class Prs3d_i;
+  class PointMap3d_i;
 }
 
 class SVTK_ViewWindow;
 
-class QtxDblSpinBox;
+//class QtxDoubleSpinBox;
 
 class QLabel;
 class QSlider;
-class QListBox;
+class QListWidget;
 class QLineEdit;
 class QCheckBox;
 class QComboBox;
@@ -72,18 +76,18 @@ class ArrangeDlg: public QDialog
   enum { AutoMode, ManualMode };
   enum { XAxis, YAxis, ZAxis };
 
-  ArrangeDlg(QWidget* theParent, 
+  ArrangeDlg(QWidget* theParent,
             VISU_TimeAnimation* theAnimator);
 
-  ArrangeDlg(QWidget* theParent, 
+  ArrangeDlg(QWidget* theParent,
             const SalomeApp_Module* theModule,
             SVTK_ViewWindow* theViewWindow);
 
   ~ArrangeDlg() {};
 
-  int getMode() const { return  myStackWgt->id(myStackWgt->visibleWidget()); }
+  int getMode() const { return  myStackWgt->indexOf(myStackWgt->currentWidget()); }
   double getDistance() const { return myDistVal->value(); }
-  int getAxis() const { return myAxisGrp->id(myAxisGrp->selected()); }
+  int getAxis() const { return myAxisGrp->id(myAxisGrp->checkedButton()); }
 
  protected slots:
   virtual void accept();
@@ -102,27 +106,30 @@ class ArrangeDlg: public QDialog
   VISU_TimeAnimation* myAnimator;
   SVTK_ViewWindow   * myViewWindow;
 
-  QWidgetStack*       myStackWgt;
+  QStackedWidget*       myStackWgt;
   QButtonGroup*       myAxisGrp;
-  QtxDblSpinBox*      myDistVal;
-  QListBox*           myFieldLst;
-  QtxDblSpinBox*      myCoord[3];
-  QValueList<Offset>  myOffsets;
+  QtxDoubleSpinBox*      myDistVal;
+  QListWidget*           myFieldLst;
+  QtxDoubleSpinBox*      myCoord[3];
+  QList<Offset>  myOffsets;
 
   QCheckBox*          mySaveChk;
 
   int               myCurrent;
   QMap<VISU::Prs3d_i*, int> myPrsMap;
+  QMap<VISU::PointMap3d_i*, int> myPointMapPrsMap;
 };
 
 
-class SetupDlg: public QDialog {
+class SetupDlg : public QDialog
+{
   Q_OBJECT
 
+ class LineEdit;
+
  public:
-  SetupDlg(QWidget* theParent,
-          VisuGUI* theModule, 
-          VISU_TimeAnimation* theAnimator);
+  SetupDlg( QWidget* theParent, VisuGUI* theModule,
+           VISU_TimeAnimation* theAnimator );
   ~SetupDlg() {};
 
  public:
@@ -138,8 +145,12 @@ class SetupDlg: public QDialog {
   //  void onScalarBarDlg();
   void onPreferencesDlg();
   void onRangeCheck(bool theCheck);
-  void onMinValue(double theVal);
-  void onMaxValue(double theVal);
+  //  void onMinValue(double theVal);
+  //  void onMaxValue(double theVal);
+  void onMinValue();
+  void onMaxValue();
+  void onMinValueEdit(const QString&);
+  void onMaxValueEdit(const QString&);
   void onSequenceCheck(bool theCheck);
   void onIndicesChanged(const QString& theIndices);
   void onValuesChanged();
@@ -151,30 +162,30 @@ class SetupDlg: public QDialog {
 
   bool myIsRegenerate;
 
-  QListBox* myFieldLst;
+  QListWidget* myFieldLst;
   QComboBox* myTypeCombo;
   std::vector<int> myComboId2TypeId;
   std::map<int,int> myTypeId2ComboId;
 
   QPushButton* myPropBtn;
   QPushButton* myArrangeBtn;
-
   QGroupBox* myUseRangeBox;
-  QtxDblSpinBox* myMinVal;
-  QtxDblSpinBox* myMaxVal;
+  //  QtxDoubleSpinBox* myMinVal;
+  //  QtxDoubleSpinBox* myMaxVal;
+  QLineEdit* myMinVal;
+  QLineEdit* myMaxVal;
 
   QGroupBox* myUseSequenceBox;
   QLineEdit* myIndices;
-  QListBox* myValues;
+  QListWidget* myValues;
 };
 
-
 class VisuGUI_TimeAnimationDlg: public QDialog
 {
     Q_OBJECT
  public:
     VisuGUI_TimeAnimationDlg(VisuGUI* theModule,
-                            _PTR(Study) theStudy, 
+                            _PTR(Study) theStudy,
                             VISU::Animation::AnimationMode theMode = VISU::Animation::PARALLEL);
     ~VisuGUI_TimeAnimationDlg();
 
@@ -188,7 +199,7 @@ class VisuGUI_TimeAnimationDlg: public QDialog
     virtual void showEvent(QShowEvent* theEvent);
     virtual void keyPressEvent(QKeyEvent* theEvent);
     void stopAnimation();
-    
+
  private slots:
    void onTypeChange(int index);
    void onPlayPressed();
@@ -222,7 +233,7 @@ class VisuGUI_TimeAnimationDlg: public QDialog
     QSlider* mySlider;
     QComboBox* myTypeCombo;
     QPushButton* myPropBtn;
-    QToolButton* myPlayBtn;
+    QPushButton* myPlayBtn;
     QLabel* myTimeLbl;
     QPushButton* mySetupBtn;
     QPushButton* myGenBtn;
index 61a268167d061ce84eaf2b1309aca9654be6f75b..206d3dd2e7874490c9a05d8b984916dea181617a 100644 (file)
@@ -1,29 +1,28 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_Timer.cxx
 //  Module : SALOME
-
+//
 #include "VisuGUI_Timer.h"
 
 #include "SUIT_Desktop.h"
index b49b5f823a9127190ac7b738faec5e81fd4c6d26..e5856d8cc42b85adc7358a035110cd9d159e9812 100644 (file)
@@ -1,32 +1,31 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_Timer.h
 //  Module : SALOME
-
+//
 #include <Utils_Timer.hxx>
 
-#include <qstring.h>
+#include <QString>
 
 class VisuGUI_Timer : public Utils_Timer
 {
index 2156d7ddb1c9705d8b03800cc42e956813ae83a8..768b7a5d466f8d0a429a6114132693d40d2edf6b 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_Tools.cxx
 //  Author : Sergey Anikin
 //  Module : VISU
-
-
+//
 #include "VisuGUI_Tools.h"
 #include "VisuGUI_ViewTools.h"
 #include "VisuGUI_Prs3dTools.h"
@@ -37,7 +35,7 @@
 #include "VISU_Prs3d_i.hh"
 #include "VISU_Result_i.hh"
 #include "VISU_Table_i.hh"
-#include "VISU_Mesh_i.hh"
+//#include "VISU_Mesh_i.hh"
 #include "VISU_ViewManager_i.hh"
 
 #include "VISU_Actor.h"
@@ -50,7 +48,8 @@
 #include "LightApp_DataObject.h"
 #include "LightApp_SelectionMgr.h"
 
-#include "OB_Browser.h"
+//TODO
+//#include "OB_Browser.h"
 
 #include "SALOME_ListIO.hxx"
 #include "SALOME_ListIteratorOfListIO.hxx"
 
 #include "SUIT_Session.h"
 #include "SUIT_MessageBox.h"
+#include "SUIT_Desktop.h"
+#include "SUIT_ViewWindow.h"
+
+#include "CAM_DataModel.h"
 
 #include <vtkRenderer.h>
 #include <vtkActorCollection.h>
 
-#include <qstring.h>
+#include <QString>
+#include <QSpinBox>
+#include <QDoubleSpinBox>
 
+using namespace std;
 
 //=============================================================================
 namespace VISU
@@ -120,10 +126,9 @@ namespace VISU
             QWidget* theWidget )
   {
     if(IsStudyLocked(theStudy)){
-      SUIT_MessageBox::warn1(theWidget,
-                            QObject::tr("WRN_VISU_WARNING"),
-                            QObject::tr("WRN_STUDY_LOCKED"),
-                            QObject::tr("BUT_OK"));
+      SUIT_MessageBox::warning(theWidget,
+                               QObject::tr("WRN_VISU_WARNING"),
+                               QObject::tr("WRN_STUDY_LOCKED") );
        return true;
     }
     return false;
@@ -147,9 +152,9 @@ namespace VISU
     QString aSourceEntry = theEntry.section(':',0,aLevel);
     DataObjectList aList;
     theDataObject->children(aList);
-    DataObjectListIterator aDataObjectIter(aList);
-    while(SUIT_DataObject* aDataObject = aDataObjectIter.current()){
-      if(LightApp_DataObject* aChildDataObject = dynamic_cast<LightApp_DataObject*>(aDataObject)){
+    DataObjectList::Iterator aDataObjectIter = aList.begin();
+    while( aDataObjectIter!= aList.end() ) {
+      if(LightApp_DataObject* aChildDataObject = dynamic_cast<LightApp_DataObject*>(*aDataObjectIter)){
        QString anEntry = aChildDataObject->entry();
        QString aCurrentEntry = anEntry.section(':',0,aLevel);
        if(aSourceEntry == aCurrentEntry){
@@ -160,7 +165,7 @@ namespace VISU
          }
        }
       }
-      ++aDataObjectIter;
+      aDataObjectIter++;
     }
     return NULL;
   }
@@ -223,7 +228,7 @@ namespace VISU
       }
     }
     if(!aGen)
-      throw std::runtime_error(QObject::tr("ERR_CANT_FIND_VISU_COMPONENT").latin1());
+      throw std::runtime_error(QObject::tr("ERR_CANT_FIND_VISU_COMPONENT").toLatin1().data());
     return aGen;
   }
 
@@ -238,7 +243,7 @@ namespace VISU
       aGen = SALOME_MED::MED_Gen::_narrow(aComponent);
     }
     if(CORBA::is_nil(aGen))
-      throw std::runtime_error(QObject::tr("ERR_CANT_FIND_MED_COMPONENT").latin1());
+      throw std::runtime_error(QObject::tr("ERR_CANT_FIND_MED_COMPONENT").toLatin1().data());
     return aGen;
   }
 
@@ -375,6 +380,88 @@ namespace VISU
     theSelectionMgr->setSelectedObjects(aNewListIO);
   }
 
+  /*!
+   * \brief Check, if the object can be deleted
+   *
+   * \param theEntry - entry of the object to check
+   * \param theModule - is used to access Study and VISU_Gen
+   * \retval bool - returns TRUE if the object is removable
+   */
+  bool
+  IsRemovable (const std::string theEntry,
+               const SalomeApp_Module* theModule)
+  {
+    // asv : if selected object is a Save Point object selected in object browser - return false
+    if ( QString( theEntry.c_str() ).startsWith( QObject::tr( "SAVE_POINT_DEF_NAME" ) ) )
+      return false;
+
+    _PTR(Study) aStudy = GetCStudy(GetAppStudy(theModule));
+
+    _PTR(SObject) aSObject = aStudy->FindObjectID(theEntry);
+    VISU::Storable::TRestoringMap pMap;
+    if (aSObject) {
+      CORBA::Object_var aCORBAObject = VISU::ClientSObjectToObject(aSObject);
+      if (!CORBA::is_nil(aCORBAObject)) {
+        VISU::RemovableObject_var aRemovableObj = VISU::RemovableObject::_narrow(aCORBAObject);
+        if (CORBA::is_nil(aRemovableObj)) {
+          // Not removable CORBA object
+          return false;
+        }
+      } else {
+        // Can be removed, if lays directly under VISU
+        // (first sub-level) or is a child of such an object
+        string aNAME, aVisuNAME = GetVisuGen(theModule)->ComponentDataType();
+        _PTR(GenericAttribute) anAttr;
+        _PTR(AttributeString) aComment;
+
+       _PTR(SObject) aRefSObject;
+       if (aSObject->ReferencedObject(aRefSObject)) {
+         // It can be a reference on curve, published under a container. IPAL 20317
+         VISU::TObjectInfo aRefObjectInfo = GetObjectByEntry(GetAppStudy(theModule), aRefSObject->GetID());
+         VISU::Base_i* aRefBase = aRefObjectInfo.myBase;
+         if( (aRefBase && aRefBase->GetType() == VISU::TCURVE) || (aRefBase && aRefBase->GetType() == VISU::TMESH) )
+           return true;
+       }
+
+        bool isUnderVISU = false;
+        _PTR(SObject) aFatherSObject = aSObject->GetFather();
+        if (aFatherSObject->FindAttribute(anAttr, "AttributeName")) {
+          // mkr : 24.11.2006 : use AttributeName and module title for correct "Delete"
+          //                    popup item displaying in object browser popup
+          _PTR(AttributeName) aComment (anAttr);
+          aNAME = aComment->Value();
+          QString aVisuTITLE = theModule->getApp()->moduleTitle(aVisuNAME.c_str());
+          if (!aVisuTITLE.compare(aNAME.c_str())) {
+            isUnderVISU = true;
+          }
+        }
+        if (!isUnderVISU) {
+          // Not directly under VISU component, check father
+          aCORBAObject = VISU::ClientSObjectToObject(aFatherSObject);
+          if (!CORBA::is_nil(aCORBAObject)) {
+            // Father has IOR
+            return false;
+          }
+
+          isUnderVISU = false;
+          aFatherSObject = aFatherSObject->GetFather();
+          if (aFatherSObject->FindAttribute(anAttr, "AttributeString")) {
+            _PTR(AttributeString) aComment (anAttr);
+            aNAME = aComment->Value();
+            if (aNAME == aVisuNAME) {
+              isUnderVISU = true;
+            }
+          }
+          if (!isUnderVISU) {
+            // Father is not directly under VISU component
+            return false;
+          }
+        }
+      }
+    }
+    return true;
+  }
+
   /*!
    * \brief Check, if "Delete" popup-menu can be put on current selection
    *
@@ -398,64 +485,8 @@ namespace VISU
     for (; anIter.More(); anIter.Next()) {
       Handle(SALOME_InteractiveObject) anIO = anIter.Value();
       if (anIO->hasEntry()) {
-
-       // asv : if selected object is a Save Point object selected in object browser - return false
-       if ( QString( anIO->getEntry() ).startsWith( QObject::tr( "SAVE_POINT_DEF_NAME" ) ) )
-         return false;
-
-        _PTR(SObject) aSObject = aStudy->FindObjectID(anIO->getEntry());
-        VISU::Storable::TRestoringMap pMap;
-        if (aSObject) {
-          CORBA::Object_var aCORBAObject = VISU::ClientSObjectToObject(aSObject);
-          if (!CORBA::is_nil(aCORBAObject)) {
-            VISU::RemovableObject_var aRemovableObj = VISU::RemovableObject::_narrow(aCORBAObject);
-            if (CORBA::is_nil(aRemovableObj)) {
-              // Not removable CORBA object
-              return false;
-            }
-          } else {
-            // Can be removed, if lays directly under VISU
-            // (first sub-level) or is a child of such an object
-            string aNAME, aVisuNAME = GetVisuGen(theModule)->ComponentDataType();
-            _PTR(GenericAttribute) anAttr;
-            _PTR(AttributeString) aComment;
-
-            bool isUnderVISU = false;
-            _PTR(SObject) aFatherSObject = aSObject->GetFather();
-            if (aFatherSObject->FindAttribute(anAttr, "AttributeName")) {
-             // mkr : 24.11.2006 : use AttributeName and module title for correct "Delete"
-             //                    popup item displaying in object browser popup
-              _PTR(AttributeName) aComment (anAttr);
-              aNAME = aComment->Value();
-             QString aVisuTITLE = theModule->getApp()->moduleTitle(QString(aVisuNAME));
-              if (!aVisuTITLE.compare(QString(aNAME))) {
-                isUnderVISU = true;
-              }
-            }
-            if (!isUnderVISU) {
-              // Not directly under VISU component, check father
-              aCORBAObject = VISU::ClientSObjectToObject(aFatherSObject);
-              if (!CORBA::is_nil(aCORBAObject)) {
-                // Father has IOR
-                return false;
-              }
-
-              isUnderVISU = false;
-              aFatherSObject = aFatherSObject->GetFather();
-              if (aFatherSObject->FindAttribute(anAttr, "AttributeString")) {
-                _PTR(AttributeString) aComment (anAttr);
-                aNAME = aComment->Value();
-                if (aNAME == aVisuNAME) {
-                  isUnderVISU = true;
-                }
-              }
-              if (!isUnderVISU) {
-                // Father is not directly under VISU component
-               return false;
-              }
-            }
-          }
-        }
+        if (!IsRemovable(anIO->getEntry(), theModule))
+          return false;
       }
     }
     return true;
@@ -534,32 +565,61 @@ namespace VISU
     if(aSelectionInfo.empty())
       return;
 
+    VISU::Prs3d_i* aPrs3d;
+    VISU::PointMap3d_i* aTable;
+    VISU_Actor* anActor;
+    VISU_ActorBase* anActorBase;
+
     TSelectionItem aSelectionItem = aSelectionInfo.front();
-    VISU::Prs3d_i* aPrs3d = GetPrs3dFromBase(aSelectionItem.myObjectInfo.myBase);
-    if(!aPrs3d)
-      return;
+    aPrs3d = GetPrs3dFromBase(aSelectionItem.myObjectInfo.myBase);
+    if(!aPrs3d) {
+      aTable = dynamic_cast<VISU::PointMap3d_i*>(aSelectionItem.myObjectInfo.myBase);      
+      if(!aTable)
+       return;
+    }
 
     SVTK_ViewWindow* aViewWindow = GetActiveViewWindow<SVTK_ViewWindow>(theModule);
     if(!aViewWindow)
       return;
 
-    VISU_Actor* anActor = FindActor(aViewWindow, aPrs3d);
-    if(!anActor)
-      return;
+    if (aPrs3d) {
+      anActor = FindActor(aViewWindow, aPrs3d);
+      if(!anActor)
+       return;
+    } else {
+      anActorBase = VISU::FindActorBase(aViewWindow, aTable);
+      if(!anActorBase)
+       return;
+    }
 
     switch (theType) {
     case VISU::SHRINK:
-      if (anActor->IsShrunk())
-       anActor->UnShrink();
-      else
-       anActor->SetShrink();
+      if (aPrs3d) {
+       if (anActor->IsShrunk())
+         anActor->UnShrink();
+       else
+         anActor->SetShrink();
+       if (VISU::Mesh_i* aMesh = dynamic_cast<VISU::Mesh_i*>(aPrs3d)) {
+         aMesh->SetShrink(true);
+       }
+      } else if (aTable) {
+       if (anActorBase->IsShrunk())
+         anActorBase->UnShrink();
+       else
+         anActorBase->SetShrink();
+      }
       break;
     default:
-      if (VISU::Mesh_i* aMesh = dynamic_cast<VISU::Mesh_i*>(aPrs3d)) {
-       aMesh->SetPresentationType(theType);
-       RecreateActor(theModule, aMesh);
-      } else {
-       anActor->SetRepresentation(theType);
+      if (aPrs3d) {
+       if (VISU::Mesh_i* aMesh = dynamic_cast<VISU::Mesh_i*>(aPrs3d)) {
+         aMesh->SetPresentationType(theType);
+         RecreateActor(theModule, aMesh);
+       } else {
+         anActor->SetRepresentation(theType);
+       }
+      }
+      else if (aTable) {
+       anActorBase->SetRepresentation(theType);
       }
     }
     aViewWindow->Repaint();
@@ -617,10 +677,9 @@ namespace VISU
          return true;
       }
     }
-    SUIT_MessageBox::warn1(GetDesktop(theModule),
-                           QObject::tr("WRN_VISU"),
-                           QObject::tr("WRN_NO_AVAILABLE_DATA"),
-                           QObject::tr("BUT_OK") );
+    SUIT_MessageBox::warning(GetDesktop(theModule),
+                             QObject::tr("WRN_VISU"),
+                             QObject::tr("WRN_NO_AVAILABLE_DATA") );
     return false;
   }
 
@@ -671,15 +730,14 @@ namespace VISU
     if (!thePrs || !theViewWindow)
       return aActor;
 
-    QApplication::setOverrideCursor( Qt::waitCursor );
+    QApplication::setOverrideCursor( Qt::WaitCursor );
     try {
       if ((aActor = thePrs->CreateActor()))
         theViewWindow->AddActor(aActor);
     } catch(std::exception& exc) {
-      SUIT_MessageBox::warn1
+      SUIT_MessageBox::warning
         (GetDesktop(theModule), QObject::tr("WRN_VISU"),
-         QObject::tr("ERR_CANT_CREATE_ACTOR") + ": " + QObject::tr(exc.what()),
-         QObject::tr("BUT_OK"));
+         QObject::tr("ERR_CANT_CREATE_ACTOR") + ": " + QObject::tr(exc.what()) );
     }
     QApplication::restoreOverrideCursor();
 
@@ -695,9 +753,10 @@ namespace VISU
     if (SalomeApp_Application* anApp = theModule->getApp()) {
       ViewManagerList aViewManagerList;
       anApp->viewManagers(SVTK_Viewer::Type(),aViewManagerList);
-      QPtrListIterator<SUIT_ViewManager> anIter (aViewManagerList);
-      while (SUIT_ViewManager* aViewManager = anIter.current()) {
-        QPtrVector<SUIT_ViewWindow> aViews = aViewManager->getViews();
+      QList<SUIT_ViewManager*>::Iterator anIter = aViewManagerList.begin();
+      while ( anIter != aViewManagerList.end() )
+      {
+        QVector<SUIT_ViewWindow*> aViews = (*anIter)->getViews();
         for (int i = 0, iEnd = aViews.size(); i < iEnd; i++) {
           if (SUIT_ViewWindow* aViewWindow = aViews.at(i)) {
             if (SVTK_ViewWindow* vw = dynamic_cast<SVTK_ViewWindow*>(aViewWindow)) {
@@ -709,7 +768,7 @@ namespace VISU
             }
           }
         }
-        ++anIter;
+        anIter++;
       }
     }
   }
@@ -720,17 +779,28 @@ namespace VISU
            SVTK_ViewWindow* theViewWindow,
            const QString& theEntry)
   {
-    TObjectInfo anObjectInfo = GetObjectByEntry(theStudy, theEntry);
+    TObjectInfo anObjectInfo = GetObjectByEntry(theStudy, theEntry.toLatin1().data());
     VISU::Prs3d_i* aPrs3d = GetPrs3dFromBase(anObjectInfo.myBase);
     return FindActor(theViewWindow, aPrs3d);
   }
 
+  //------------------------------------------------------------
+  VISU_ActorBase*
+  FindActorBase(const SalomeApp_Study* theStudy,
+               SVTK_ViewWindow* theViewWindow,
+               const QString& theEntry)
+  {
+    TObjectInfo anObjectInfo = GetObjectByEntry(theStudy, theEntry.toLatin1().constData());
+    VISU::PointMap3d_i* aTable = dynamic_cast<VISU::PointMap3d_i*>(anObjectInfo.myBase);
+    return FindActorBase(theViewWindow, aTable);
+  }
+
   //------------------------------------------------------------
   void
   RecreateActor (const SalomeApp_Module* theModule,
                  VISU::Prs3d_i* thePrs)
   {
-    QApplication::setOverrideCursor(Qt::waitCursor);
+    QApplication::setOverrideCursor(Qt::WaitCursor);
 
     SALOMEDS::SObject_var aSObject = thePrs->GetSObject();
     CORBA::String_var anEntry = aSObject->GetID();
@@ -740,10 +810,9 @@ namespace VISU
     } catch (std::runtime_error& exc) {
       INFOS(exc.what());
       QApplication::restoreOverrideCursor();
-      SUIT_MessageBox::warn1
+      SUIT_MessageBox::warning
         (GetDesktop(theModule), QObject::tr("WRN_VISU"),
-         QObject::tr("ERR_CANT_BUILD_PRESENTATION") + ": " + QObject::tr(exc.what()),
-         QObject::tr("BUT_OK"));
+         QObject::tr("ERR_CANT_BUILD_PRESENTATION") + ": " + QObject::tr(exc.what()) );
 
       thePrs->RemoveActors();
       return;
@@ -752,11 +821,10 @@ namespace VISU
   }
 
   //------------------------------------------------------------
-  static 
   bool
   ComputeVisiblePropBounds(SVTK_ViewWindow* theViewWindow,
                           vtkFloatingPointType allBounds[6], 
-                          const char* theActorClassName = "VISU_Actor")
+                          const char* theActorClassName)
   {
     vtkRenderer *aRen = theViewWindow->getRenderer();
     vtkActorCollection *anActColl = aRen->GetActors(); 
@@ -868,7 +936,7 @@ namespace VISU
       if ( plotCurve ) {
         plotCurve->setHorTitle( theCurve->GetHorTitle().c_str() );
         //plotCurve->setVerTitle( ( theCurve->GetVerTitle().c_str() ) );
-        plotCurve->setVerTitle( theCurve->GetName() );
+        plotCurve->setVerTitle( theCurve->GetName().c_str() );
         plotCurve->setHorUnits( theCurve->GetHorUnits().c_str() );
         plotCurve->setVerUnits( theCurve->GetVerUnits().c_str() );
         double* xList = 0;
@@ -879,8 +947,8 @@ namespace VISU
           plotCurve->setData( xList, yList, nbPoints, zList );
         }
         if ( !theCurve->IsAuto() ) {
-          plotCurve->setLine( (Plot2d_Curve::LineType)theCurve->GetLine(), theCurve->GetLineWidth() );
-          plotCurve->setMarker( (Plot2d_Curve::MarkerType)theCurve->GetMarker() );
+          plotCurve->setLine( (Plot2d::LineType)theCurve->GetLine(), theCurve->GetLineWidth() );
+          plotCurve->setMarker( (Plot2d::MarkerType)theCurve->GetMarker() );
           SALOMEDS::Color color = theCurve->GetColor();
           plotCurve->setColor( QColor( (int)(color.R*255.), (int)(color.G*255.), (int)(color.B*255.) ) );
         }
@@ -921,7 +989,7 @@ namespace VISU
 
     if ( theDisplaying == VISU::eDisplayOnly )
       aPlot->EraseAll();
-    QList<Plot2d_Curve> clist;
+    QList<Plot2d_Curve*> clist;
     aPlot->getCurves( clist );
     _PTR(Study) aStudy = GetCStudy( GetAppStudy( theModule ) );
     _PTR(SObject) TableSO = aStudy->FindObjectID( table->GetEntry() );
@@ -938,7 +1006,7 @@ namespace VISU
             for ( int i = 0; i < clist.count(); i++ ) {
               tmpCurve = dynamic_cast<SPlot2d_Curve*>( clist.at( i ) );
               if (tmpCurve && tmpCurve->hasIO() &&
-                  theCurve->GetEntry() != tmpCurve->getIO()->getEntry()) {
+                  theCurve->GetEntry() == tmpCurve->getIO()->getEntry()) {
                 plotCurve = tmpCurve;
                 break;
               }
@@ -947,7 +1015,7 @@ namespace VISU
             UpdateCurve( theCurve, aPlot, plotCurve, theDisplaying );
 
             if ( theDisplaying == VISU::eErase && plotCurve ) {
-              clist.removeplotCurve );
+              clist.removeAll(plotCurve );
             }
           }
         }
@@ -971,21 +1039,36 @@ namespace VISU
 
 //  if ( theDisplaying == VISU::eDisplayOnly )
 //    aPlot->EraseAll();
-    QList<Plot2d_Curve> clist;
+    QList<Plot2d_Curve*> clist;
     aPlot->getCurves( clist );
     SPlot2d_Curve* plotCurve = 0;
     SPlot2d_Curve* tmpCurve;
-    for (int i = 0; i < clist.count(); i++) {
-      tmpCurve = dynamic_cast<SPlot2d_Curve*>(clist.at(i));
-      if (tmpCurve && tmpCurve->hasIO() &&
-          theCurve->GetEntry() != tmpCurve->getIO()->getEntry()) {
-        plotCurve = tmpCurve;
-      } else if (theDisplaying == VISU::eDisplayOnly) {
-        aPlot->eraseCurve(clist.at(i));
+    if(theDisplaying == VISU::eErase) {
+      // 23.06.2008 skl for IPAL17672
+      for (int i = 0; i < clist.count(); i++) {
+        tmpCurve = dynamic_cast<SPlot2d_Curve*>(clist.at(i));
+        if (tmpCurve && tmpCurve->hasIO() &&
+            theCurve->GetEntry() == tmpCurve->getIO()->getEntry()) {
+          plotCurve = tmpCurve;
+          aPlot->eraseCurve(clist.at(i));
+          break;
+        }
       }
+      UpdateCurve(theCurve, aPlot, plotCurve, theDisplaying);
+    }
+    else {
+      for (int i = 0; i < clist.count(); i++) {
+        tmpCurve = dynamic_cast<SPlot2d_Curve*>(clist.at(i));
+        if (tmpCurve && tmpCurve->hasIO() &&
+            theCurve->GetEntry() == tmpCurve->getIO()->getEntry()) {
+          plotCurve = tmpCurve;
+        }
+        else if (theDisplaying == VISU::eDisplayOnly) {
+          aPlot->eraseCurve(clist.at(i));
+        }
+      }
+      UpdateCurve(theCurve, aPlot, plotCurve, theDisplaying);
     }
-
-    UpdateCurve(theCurve, aPlot, plotCurve, theDisplaying);
 
     aPlot->Repaint();
   }
@@ -995,22 +1078,23 @@ namespace VISU
   PlotRemoveCurve(const SalomeApp_Module* theModule,
                  VISU::Curve_i* pCrv)
   {
-    QString anEntry = pCrv->GetEntry();
+    QString anEntry = pCrv->GetEntry().c_str();
     ViewManagerList pvm_list;
     theModule->getApp()->viewManagers( SPlot2d_Viewer::Type(), pvm_list );
-    for( SUIT_ViewManager* mgr = pvm_list.first(); mgr; mgr = pvm_list.next() ){
-      Plot2d_ViewManager* pvm = dynamic_cast<Plot2d_ViewManager*>( mgr );
+    ViewManagerList::Iterator pvm_it = pvm_list.begin();
+    for( ; pvm_it != pvm_list.end(); pvm_it++ ){
+      Plot2d_ViewManager* pvm = dynamic_cast<Plot2d_ViewManager*>( *pvm_it );
       if( pvm ){
        SPlot2d_Viewer* aSPlot2d = dynamic_cast<SPlot2d_Viewer*>( pvm->getViewModel() );
        if( aSPlot2d ){
          Plot2d_ViewFrame* aPlot = aSPlot2d->getActiveViewFrame();
          if(aPlot){
-           QList<Plot2d_Curve> clist;
+           QList<Plot2d_Curve*> clist;
            aPlot->getCurves( clist );
            for (int i = 0; i < clist.count(); i++) {
-             if(SPlot2d_Curve* plotCurve = dynamic_cast<SPlot2d_Curve*>(clist.at(i)))
+             if(SPlot2d_Curve* plotCurve = dynamic_cast<SPlot2d_Curve*>(clist[i]))
                if(plotCurve->hasIO() && (plotCurve->getIO()->getEntry() == anEntry))
-                 aPlot->eraseCurve(clist.at(i));
+                 aPlot->eraseCurve(clist[i]);
            }
          }
        }
@@ -1033,7 +1117,7 @@ namespace VISU
 
     if ( theDisplaying == VISU::eDisplayOnly )
       aPlot->EraseAll();
-    QList<Plot2d_Curve> clist;
+    QList<Plot2d_Curve*> clist;
     aPlot->getCurves( clist );
     if ( container->GetNbCurves() > 0 ) {
       int nbCurves = container->GetNbCurves();
@@ -1046,13 +1130,16 @@ namespace VISU
           UpdateCurve( theCurve, aPlot, plotCurve, theDisplaying );
 
           if ( plotCurve && theDisplaying == VISU::eErase ) {
-            clist.remove( plotCurve );
+            clist.removeAll( plotCurve );
           }
         }
       }
     }
     aPlot->Repaint();
-    aPlot->fitAll();
+    if(GetResourceMgr()->booleanValue("VISU","automatic_fit_all",false)){
+      aPlot->fitAll();
+    }
+    qApp->processEvents();
   }
 
   //------------------------------------------------------------
@@ -1079,9 +1166,9 @@ namespace VISU
           }
           PlotContainer( theModule, pContainer, VISU::eDisplay );
 
-         QString anEntry = pContainer->GetEntry();
+         QString anEntry = pContainer->GetEntry().c_str();
          _PTR(Study) aStudy = theTableSO->GetStudy();
-         _PTR(SObject) aContainerSO = aStudy->FindObjectID(anEntry.latin1());
+         _PTR(SObject) aContainerSO = aStudy->FindObjectID(anEntry.toLatin1().data());
          _PTR(SObject) aParentSO = aContainerSO->GetFather();
          UpdateObjBrowser(theModule,true,aParentSO);
         }
@@ -1091,8 +1178,7 @@ namespace VISU
 
   //************************************************************
   // Others
-
-  void
+  VISU::Mesh_i*
   CreateMesh(VisuGUI* theModule,
             const Handle(SALOME_InteractiveObject)& theIO,
             SVTK_ViewWindow* theViewWindow)
@@ -1107,15 +1193,15 @@ namespace VISU
     VISU::Result_var aResult;
     VISU::Result_i* pResult = CheckResult(theModule, aResultSObj, aResult);
     if (pResult == NULL)
-      return;
+      return NULL;
 
     Storable::TRestoringMap aMap = Storable::GetStorableMap(aResultSObj);
     if (aMap.empty())
-      return;
+      return NULL;
 
     CORBA::Object_var aMesh;
-    string aComment = Storable::FindValue(aMap,"myComment").latin1();
-    string aMeshName = Storable::FindValue(aMap,"myMeshName").latin1();
+    string aComment = Storable::FindValue(aMap,"myComment").toLatin1().data();
+    string aMeshName = Storable::FindValue(aMap,"myMeshName").toLatin1().data();
 #ifdef CHECKTIME
     Utils_Timer timer;
     timer.Start();
@@ -1126,12 +1212,12 @@ namespace VISU
         aMesh = GetVisuGen(theModule)->MeshOnEntity(aResult,aMeshName.c_str(),anEntity);
     } else if (aComment == "FAMILY") {
       VISU::Entity anEntity = (VISU::Entity)Storable::FindValue(aMap,"myEntityId").toInt();
-      string aFamilyName = Storable::FindValue(aMap,"myName").latin1();
+      string aFamilyName = Storable::FindValue(aMap,"myName").toLatin1().data();
       if (VISU::Mesh_i::IsPossible(pResult,aMeshName.c_str(),anEntity,aFamilyName.c_str()))
         aMesh = GetVisuGen(theModule)->FamilyMeshOnEntity
           (aResult,aMeshName.c_str(),anEntity,aFamilyName.c_str());
     } else if (aComment == "GROUP") {
-      string aGroupName = Storable::FindValue(aMap,"myName").latin1();
+      string aGroupName = Storable::FindValue(aMap,"myName").toLatin1().data();
       if (VISU::Mesh_i::IsPossible(pResult,aMeshName.c_str(),aGroupName.c_str()))
         aMesh = GetVisuGen(theModule)->GroupMesh(aResult,aMeshName.c_str(),aGroupName.c_str());
     }
@@ -1146,11 +1232,10 @@ namespace VISU
     if (!CORBA::is_nil(aMesh))
       pPresent = dynamic_cast<VISU::Mesh_i*>(VISU::GetServant(aMesh).in());
     if (pPresent == NULL) {
-      SUIT_MessageBox::warn1 (GetDesktop(theModule),
-                              QObject::tr("WRN_VISU"),
-                              QObject::tr("ERR_CANT_BUILD_PRESENTATION"),
-                              QObject::tr("BUT_OK"));
-      return;
+      SUIT_MessageBox::warning (GetDesktop(theModule),
+                                QObject::tr("WRN_VISU"),
+                                QObject::tr("ERR_CANT_BUILD_PRESENTATION") );
+      return NULL;
     }
 
     if (theViewWindow) {
@@ -1164,7 +1249,9 @@ namespace VISU
          if(av)(const_cast<VisuGUI*>(av))->OnEraseAll();
        }
         PublishMeshInView(theModule, pPresent, theViewWindow);
-        SetFitAll(theViewWindow);
+        if(GetResourceMgr()->booleanValue("VISU","automatic_fit_all",false)){
+         SetFitAll(theViewWindow);
+       }
 #ifdef CHECKTIME
         timer.Stop();
         MESSAGE("VisuGUI::CreateMesh() - DISPLAY MESH");
@@ -1172,10 +1259,8 @@ namespace VISU
 #endif
       } catch (std::runtime_error& exc) {
         INFOS(exc.what());
-        SUIT_MessageBox::warn1
-          (GetDesktop(theModule), QObject::tr("WRN_VISU"),
-           QObject::tr("ERR_CANT_CREATE_ACTOR") + ": " + QObject::tr(exc.what()),
-           QObject::tr("BUT_OK"));
+        SUIT_MessageBox::warning(GetDesktop(theModule), QObject::tr("WRN_VISU"),
+                                 QObject::tr("ERR_CANT_CREATE_ACTOR") + ": " + QObject::tr(exc.what()) );
       }
     }
 
@@ -1184,6 +1269,7 @@ namespace VISU
     theModule->application()->putInfo(QObject::tr("INF_DONE"));
     // Make "Save" button active
     theModule->getApp()->updateActions();
+    return pPresent;
   }
 
   // ========================================================================================
@@ -1225,6 +1311,8 @@ namespace VISU
         case VISU::TSTREAMLINES:
         case VISU::TPLOT3D:
        case VISU::TSCALARMAPONDEFORMEDSHAPE:
+       case VISU::TDEFORMEDSHAPEANDSCALARMAP:
+       case VISU::TMESH:
           {
             PortableServer::ServantBase_var aServant = VISU::GetServant(aCORBAObject);
             if (aServant.in()) {
@@ -1345,4 +1433,37 @@ namespace VISU
       }
   }
   //------------------------------------------------------------
+  void initSpinBox( QSpinBox* spinBox, 
+                   int min,  int max, int step )
+  {
+    spinBox->setRange( min, max );
+    spinBox->setSingleStep( step );
+  }
+  //------------------------------------------------------------
+  void initSpinBox( QDoubleSpinBox* spinBox, 
+                   double min,  double max, 
+                   double step, int decimals )
+  {
+    spinBox->setRange( min, max );
+    spinBox->setSingleStep( step );
+    spinBox->setDecimals( decimals );
+  }
+  //------------------------------------------------------------
+  bool getClippingPlanesFolder(_PTR(Study) theStudy, _PTR(SObject)& theSObject)
+  {
+    _PTR(SComponent) aVisuSO = theStudy->FindComponent("VISU");
+    if (!aVisuSO) return false;
+    _PTR(SObject) aFolder = theStudy->FindObject(CLIP_PLANES_FOLDER);
+    if (!aFolder) {
+      _PTR(StudyBuilder) aBuilder = theStudy->NewBuilder();
+      aFolder = aBuilder->NewObject(aVisuSO);
+      
+      _PTR(GenericAttribute) anAttr;
+      anAttr = aBuilder->FindOrCreateAttribute(aFolder,"AttributeName");
+      _PTR(AttributeName) aName(anAttr);
+      aName->SetValue(CLIP_PLANES_FOLDER);
+    }
+    theSObject = aFolder;
+    return true;
+  }
 }
index aa795d80da03730fbf46aff5464b70b7e9d1f8ca..1faa3d7d513657655812c514e6f08b093743c945 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_Tools.h
 //  Author : Sergey Anikin
 //  Module : VISU
-
+//
 #ifndef VisuGUI_Tools_HeaderFile
 #define VisuGUI_Tools_HeaderFile
 
@@ -40,6 +39,8 @@
 
 class QWidget;
 class QDialog;
+class QSpinBox;
+class QDoubleSpinBox;
 
 class SUIT_Desktop;
 class SUIT_ViewWindow;
@@ -56,6 +57,7 @@ class VisuGUI;
 
 #include <vector>
 #include <utility>
+#include "VISU_Mesh_i.hh"
 
 namespace VISU 
 {
@@ -119,12 +121,19 @@ namespace VISU
 
   VISU::Prs3d_i*                       GetPrs3dFromBase(Base_i* theBase);
 
+  bool                                 GetPrs3dSelectionInfo( const SalomeApp_Module* theModule,
+                                                             VISU::Prs3d_i*& thePrs3d,
+                                                             SVTK_ViewWindow*& theViewWindow,
+                                                             VISU_Actor*& thenActor );
+
   //----------------------------------------------------------------------------
   void                                 Add(LightApp_SelectionMgr* theSelectionMgr,
                                           const Handle(SALOME_InteractiveObject)& theIO);
   void                                 Remove(LightApp_SelectionMgr* theSelectionMgr,
                                              const Handle(SALOME_InteractiveObject)& theIO);
 
+  bool                                 IsRemovable        (const std::string theEntry,
+                                                          const SalomeApp_Module* theModule);
   bool                                 IsRemovableSelected(const SalomeApp_Module* theModule);
 
   void                                 DeleteSObject(VisuGUI* theModule,
@@ -166,9 +175,16 @@ namespace VISU
   VISU_Actor*                          FindActor(const SalomeApp_Study* theStudy,
                                                 SVTK_ViewWindow* theViewWindow,
                                                 const QString& theEntry);
+  VISU_ActorBase*                      FindActorBase(const SalomeApp_Study* theStudy,
+                                                    SVTK_ViewWindow* theViewWindow,
+                                                    const QString& theEntry);
   void                                 RecreateActor(const SalomeApp_Module* theModule,
                                                     VISU::Prs3d_i* thePrs);
 
+  bool                                 ComputeVisiblePropBounds(SVTK_ViewWindow* theViewWindow,
+                                                               vtkFloatingPointType allBounds[6], 
+                                                               const char* theActorClassName = "VISU_Actor");
+
   /*!
    * \brief Advanced FitAll, sets view projection in accordance with current view contents
    *
@@ -208,9 +224,9 @@ namespace VISU
   /*! Create mesh presentation and display it in \a theViewWindow.
    *  If \a theViewWindow is NULL, no displaying will be done.
    */
-  void CreateMesh(VisuGUI* theModule,
-                 const Handle(SALOME_InteractiveObject)& theIO,
-                 SVTK_ViewWindow* theViewWindow);
+  VISU::Mesh_i* CreateMesh(VisuGUI* theModule,
+                          const Handle(SALOME_InteractiveObject)& theIO,
+                          SVTK_ViewWindow* theViewWindow);
   
   // Others
   std::vector<VISU::Prs3d_i*> GetPrs3dList (const SalomeApp_Module* theModule,
@@ -223,6 +239,12 @@ namespace VISU
                            VISU::Prs3d_i* thePrs3d, int pos);
   void RemoveScalarBarPosition(VisuGUI* theModule, SVTK_ViewWindow* theViewWindow,
                               VISU::Prs3d_i* thePrs3d);
+  void initSpinBox( QSpinBox*, int, int, int = 1 );
+  void initSpinBox( QDoubleSpinBox*, double, double, double = 0.1, int = 6 );
+
+#define CLIP_PLANES_FOLDER "Clipping Planes"
+
+  bool getClippingPlanesFolder(_PTR(Study) theStudy, _PTR(SObject)& theSObject);
 }
 
 #endif
index ca3d9f275c5e36d9907805d6b1d86f1f1836be6a..5b5b026e4930edfb99bbbe7241f66278255fe53b 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //
 //  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
-//
-//
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_TransparencyDlg.cxx
 //  Author : Nicolas REJNERI
 //  Module : VISU
 //  $Header$
-
+//
 #include "VisuGUI_TransparencyDlg.h"
 
 #include "VisuGUI.h"
 #include "SVTK_ViewWindow.h"
 
 // QT Includes
-#include <qlabel.h>
-#include <qpushbutton.h>
-#include <qslider.h>
-#include <qlayout.h>
-#include <qgroupbox.h>
+#include <QLabel>
+#include <QPushButton>
+#include <QSlider>
+#include <QLayout>
+#include <QGroupBox>
+#include <QKeyEvent>
 
 using namespace std;
 
@@ -63,78 +63,74 @@ using namespace std;
 // purpose  :
 //
 //=================================================================================
-VisuGUI_TransparencyDlg::VisuGUI_TransparencyDlg (VisuGUI* theModule,
-                                                  const char* name,
-                                                  bool modal,
-                                                  WFlags fl)
-  : QDialog(VISU::GetDesktop(theModule), name, modal, WStyle_Customize | WStyle_NormalBorder |
-            WStyle_Title | WStyle_SysMenu | WDestructiveClose),
-    myModule(theModule),
-    mySelectionMgr(VISU::GetSelectionMgr(theModule)),
-    myViewWindow(VISU::GetActiveViewWindow<SVTK_ViewWindow>(theModule))
+VisuGUI_TransparencyDlg::VisuGUI_TransparencyDlg( VisuGUI* theModule,
+                                                  bool modal )
+     : QDialog( VISU::GetDesktop( theModule ), Qt::WindowTitleHint | Qt::WindowSystemMenuHint ),
+     myModule(theModule),
+     mySelectionMgr( VISU::GetSelectionMgr( theModule ) ),
+     myViewWindow( VISU::GetActiveViewWindow<SVTK_ViewWindow>(theModule) )
 {
-  if (!name)
-    setName("VisuGUI_TransparencyDlg");
-  setCaption(tr("TRANSPARENCY_TITLE" ));
+  setModal( modal );
+  setAttribute( Qt::WA_DeleteOnClose );
+    
+  setWindowTitle(tr("TRANSPARENCY_TITLE" ));
   setSizeGripEnabled(TRUE);
   QGridLayout* VisuGUI_TransparencyDlgLayout = new QGridLayout(this);
   VisuGUI_TransparencyDlgLayout->setSpacing(6);
   VisuGUI_TransparencyDlgLayout->setMargin(11);
 
   /*************************************************************************/
-  QGroupBox* GroupC1 = new QGroupBox(this, "GroupC1");
-  GroupC1->setColumnLayout(0, Qt::Vertical);
-  GroupC1->layout()->setSpacing(0);
-  GroupC1->layout()->setMargin(0);
-  QGridLayout* GroupC1Layout = new QGridLayout(GroupC1->layout());
+  QGroupBox* GroupC1 = new QGroupBox(this);
+  //GroupC1->setColumnLayout(0, Qt::Vertical);
+  //GroupC1->layout()->setSpacing(0);
+  //GroupC1->layout()->setMargin(0);
+  QGridLayout* GroupC1Layout = new QGridLayout(GroupC1);
   GroupC1Layout->setAlignment(Qt::AlignTop);
   GroupC1Layout->setSpacing(6);
   GroupC1Layout->setMargin(11);
 
-  TextLabelTransparent = new QLabel(GroupC1, "TextLabelTransparent");
-  TextLabelTransparent->setText(tr("TRANSPARENCY_TRANSPARENT" ));
-  TextLabelTransparent->setAlignment(AlignLeft);
+  TextLabelTransparent = new QLabel(tr("TRANSPARENCY_TRANSPARENT" ), GroupC1);
+  TextLabelTransparent->setAlignment(Qt::AlignLeft);
   GroupC1Layout->addWidget(TextLabelTransparent, 0, 0);
 
-  ValueLab = new QLabel(GroupC1, "ValueLab");
-  ValueLab->setAlignment(AlignCenter);
+  ValueLab = new QLabel(GroupC1);
+  ValueLab->setAlignment(Qt::AlignCenter);
   ValueLab->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed));
   QFont fnt = ValueLab->font(); fnt.setBold(true); ValueLab->setFont(fnt);
   GroupC1Layout->addWidget(ValueLab, 0, 1);
 
-  TextLabelOpaque = new QLabel(GroupC1, "TextLabelOpaque");
-  TextLabelOpaque->setText(tr("TRANSPARENCY_OPAQUE" ));
-  TextLabelOpaque->setAlignment(AlignRight);
+  TextLabelOpaque = new QLabel(tr("TRANSPARENCY_OPAQUE" ), GroupC1);
+  TextLabelOpaque->setAlignment(Qt::AlignRight);
   GroupC1Layout->addWidget(TextLabelOpaque, 0, 2);
 
-  Slider1 = new QSlider(0, 10, 1, 5, Horizontal, GroupC1, "Slider1");
-  Slider1->setFocusPolicy(QWidget::NoFocus);
+  Slider1 = new QSlider( Qt::Horizontal, GroupC1 );
+  Slider1->setMinimum( 0 );
+  Slider1->setMaximum( 100 );
+  Slider1->setPageStep( 10 );
+  Slider1->setSingleStep( 1 );  
+  Slider1->setFocusPolicy(Qt::NoFocus);
   Slider1->setMinimumSize(300, 0);
-  Slider1->setTickmarks(QSlider::Above);
+  Slider1->setTickPosition(QSlider::TicksAbove);
   Slider1->setTickInterval(10);
   Slider1->setTracking(true);
-  Slider1->setMinValue(0);
-  Slider1->setMaxValue(100);
-  Slider1->setLineStep(1);
-  Slider1->setPageStep(10);
-  GroupC1Layout->addMultiCellWidget(Slider1, 1, 1, 0, 2);
+  GroupC1Layout->addWidget(Slider1, 1, 0, 1, 3);
 
   /*************************************************************************/
-  QGroupBox* GroupButtons = new QGroupBox(this, "GroupButtons");
-  GroupButtons->setColumnLayout(0, Qt::Vertical);
-  GroupButtons->layout()->setSpacing(0);
-  GroupButtons->layout()->setMargin(0);
-  QGridLayout* GroupButtonsLayout = new QGridLayout(GroupButtons->layout());
+  QGroupBox* GroupButtons = new QGroupBox(this);
+  //GroupButtons->setColumnLayout(0, Qt::Vertical);
+  //GroupButtons->layout()->setSpacing(0);
+  //GroupButtons->layout()->setMargin(0);
+  QGridLayout* GroupButtonsLayout = new QGridLayout(GroupButtons);
   GroupButtonsLayout->setAlignment(Qt::AlignTop);
   GroupButtonsLayout->setSpacing(6);
   GroupButtonsLayout->setMargin(11);
 
-  buttonOk = new QPushButton(GroupButtons, "buttonOk");
+  buttonOk = new QPushButton(GroupButtons);
   buttonOk->setText(tr("BUT_CLOSE"));
   buttonOk->setAutoDefault(TRUE);
   buttonOk->setDefault(TRUE);
 
-  buttonHelp = new QPushButton(GroupButtons, "buttonHelp");
+  buttonHelp = new QPushButton(GroupButtons);
   buttonHelp->setText(tr("BUT_HELP"));
   buttonHelp->setAutoDefault(TRUE);
 
@@ -187,16 +183,16 @@ void VisuGUI_TransparencyDlg::ClickOnHelp()
     app->onHelpContextModule(aVisuGUI ? app->moduleName(aVisuGUI->moduleName()) : QString(""), aHelpFileName);
   }
   else {
-    QString platform;
+               QString platform;
 #ifdef WIN32
-    platform = "winapplication";
+               platform = "winapplication";
 #else
-    platform = "application";
+               platform = "application";
 #endif
-    SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"),
-                          QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
-                          arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
-                          QObject::tr("BUT_OK"));
+    SUIT_MessageBox::warning(0, tr("WRN_WARNING"),
+                             tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                             arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
+                             tr("BUT_OK"));
   }
 }
 
@@ -218,8 +214,13 @@ void VisuGUI_TransparencyDlg::SetTransparency()
     for (; anIter.More(); anIter.Next()) {
       Handle(SALOME_InteractiveObject) anIO = anIter.Value();
       VISU_Actor* anActor = VISU::FindActor(VISU::GetAppStudy(myModule), myViewWindow, anIO->getEntry());
+      if (anActor)
+       anActor->SetOpacity(opacity);
+      else {
+       VISU_ActorBase* anActor = VISU::FindActorBase(VISU::GetAppStudy(myModule), myViewWindow, anIO->getEntry());
       if (anActor)
         anActor->SetOpacity(opacity);
+      }
     }
     myViewWindow->Repaint();
   }
@@ -291,7 +292,7 @@ void VisuGUI_TransparencyDlg::keyPressEvent( QKeyEvent* e )
   if ( e->isAccepted() )
     return;
 
-  if ( e->key() == Key_F1 )
+  if ( e->key() == Qt::Key_F1 )
     {
       e->accept();
       ClickOnHelp();
index 2bf3ddbb98875c9557f7b1a7c7aef1dbbbf9c6c2..5fb54f8776ac90858e488facc4f60143a1ea712a 100644 (file)
@@ -1,36 +1,35 @@
-//  VISU VisuGUI : GUI for VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VisuGUI : GUI for VISU component
 //  File   : VisuGUI_TransparencyDlg.h
 //  Author : Nicolas REJNERI
 //  Module : VISU
 //  $Header$
-
+//
 #ifndef VISUGUI_TRANSPARENCYDLG_H
 #define VISUGUI_TRANSPARENCYDLG_H
 
 // QT Includes
-#include <qdialog.h>
+#include <QDialog>
 
 class QLabel;
 class QPushButton;
@@ -51,9 +50,7 @@ class VisuGUI_TransparencyDlg : public QDialog
 
 public:
   VisuGUI_TransparencyDlg( VisuGUI* = 0, 
-                          const char* name = 0,
-                          bool modal = false,
-                          WFlags fl = 0 );
+                          bool modal = false );
 
   ~VisuGUI_TransparencyDlg();
 
diff --git a/src/VISUGUI/VisuGUI_ValuesLabelingDlg.cxx b/src/VISUGUI/VisuGUI_ValuesLabelingDlg.cxx
new file mode 100755 (executable)
index 0000000..83ccb7b
--- /dev/null
@@ -0,0 +1,233 @@
+//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
+// 
+//  This library is free software; you can redistribute it and/or 
+//  modify it under the terms of the GNU Lesser General Public 
+//  License as published by the Free Software Foundation; either 
+//  version 2.1 of the License. 
+// 
+//  This library is distributed in the hope that it will be useful, 
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+//  Lesser General Public License for more details. 
+// 
+//  You should have received a copy of the GNU Lesser General Public 
+//  License along with this library; if not, write to the Free Software 
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
+// 
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  File   : VisuGUI_ValuesLabelingDlg.cxx
+//  Author : Litonin SERGEY
+//  Module : SALOME
+
+#include "VisuGUI_ValuesLabelingDlg.h"
+#include "VisuGUI.h"
+
+#include <QGroupBox>
+#include <QHBoxLayout>
+#include <QLabel>
+#include <QPushButton>
+#include <QtxColorButton.h>
+#include <QtxFontEdit.h>
+#include <QVBoxLayout>
+
+/*!
+  \class VisuGUI_ValuesLabelingDlg
+  \brief This class is intended for changing parameters of labeling values 
+  of 3D colored presentations
+*/
+
+/*!
+  \brief Constructor
+  \param theModule module
+*/
+VisuGUI_ValuesLabelingDlg::VisuGUI_ValuesLabelingDlg( SalomeApp_Module* theModule )
+: VisuGUI_Prs3dDlg( theModule )
+{
+  setWindowTitle( tr( "PARAMETERS_OF_VALUES_LABELING" ) );
+
+  // font groups
+
+  QGroupBox* aFGrp = new QGroupBox( tr( "LABELS" ), this );
+
+  QLabel* aFont = new QLabel( tr( "FONT" ) );
+  QLabel* aColor = new QLabel( tr( "COLOR" ) );
+  myFont = new QtxFontEdit( aFGrp );
+  myColor = new  QtxColorButton( aFGrp );
+  myColor->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+
+  QGridLayout* aFLay = new QGridLayout( aFGrp );
+  aFLay->setSpacing( 5 );
+  aFLay->setMargin( 5 );
+
+  aFLay->addWidget( aFont, 0, 0 );
+  aFLay->addWidget( myFont, 0, 1 );
+  aFLay->addWidget( aColor, 1, 0 );
+  aFLay->addWidget( myColor, 1, 1 );
+
+  // buttons
+
+  QGroupBox* aBtnGrp = new QGroupBox( this );
+  QGridLayout* aBtnLay = new QGridLayout( aBtnGrp );
+  aBtnLay->setAlignment( Qt::AlignTop );
+  aBtnLay->setSpacing( 5 );
+  aBtnLay->setMargin( 5 );
+
+  QPushButton* anOK = new QPushButton( tr("BUT_OK"), aBtnGrp );
+  anOK->setAutoDefault( true );
+  anOK->setDefault( true );
+  aBtnLay->addWidget( anOK, 0, 0 );
+  aBtnLay->addItem( new QSpacerItem( 5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 1 );
+
+  QPushButton* aCancel = new QPushButton( tr("BUT_CANCEL") , aBtnGrp );
+  aCancel->setAutoDefault( true );
+  aBtnLay->addWidget( aCancel, 0, 2 );
+
+  QPushButton* aHelp = new QPushButton( tr("BUT_HELP") , aBtnGrp );
+  aHelp->setAutoDefault( true );
+  aBtnLay->addWidget( aHelp, 0, 3 );
+
+  myFont->setMode( QtxFontEdit::Custom );
+  myFont->setFeatures( QtxFontEdit::Family | QtxFontEdit::Bold | QtxFontEdit::Italic | 
+    QtxFontEdit::Shadow | QtxFontEdit::UserSize | QtxFontEdit::Size );
+  QStringList fam;
+  fam.append( tr( "VISU_FONT_ARIAL" ) );
+  fam.append( tr( "VISU_FONT_COURIER" ) );
+  fam.append( tr( "VISU_FONT_TIMES" ) );
+  myFont->setFonts( fam );
+
+  // Layout widgets
+  
+  QVBoxLayout* aMainLay = new QVBoxLayout( this );
+  aMainLay->setSpacing( 5 );
+  aMainLay->setMargin( 5 );
+  aMainLay->addWidget( aFGrp );
+  aMainLay->addWidget( aBtnGrp );
+  
+  // Connect signals and slots
+  connect( anOK,SIGNAL( clicked() ), SLOT( accept() ) );
+  connect( aCancel, SIGNAL( clicked() ), SLOT( reject() ) );
+  connect( aHelp, SIGNAL( clicked() ), SLOT( onHelp() ) );
+
+  setFixedSize( minimumSizeHint() );
+}
+
+/*!
+  \brief Destructor
+*/
+VisuGUI_ValuesLabelingDlg::~VisuGUI_ValuesLabelingDlg()
+{
+}
+
+/*!
+  \brief Initializes dialog fields using specified presentation 
+  \param thePrs presentation
+  \param theInit not used 
+  \sa storeToPrsObject()
+*/
+void VisuGUI_ValuesLabelingDlg::initFromPrsObject( VISU::ColoredPrs3d_i* thePrs, bool )
+{
+  if ( !thePrs )
+    return;
+
+  int aFType = thePrs->GetValLblFontType();
+
+  double aSize = thePrs->GetValLblFontSize();
+
+  bool isBold = thePrs->IsBoldValLbl();
+  bool isItalic = thePrs->IsItalicValLbl();
+  bool isShadow = thePrs->IsShadowValLbl();
+
+  vtkFloatingPointType aGRB[ 3 ];
+  thePrs->GetValLblFontColor( aGRB[ 0 ], aGRB[ 1 ], aGRB[ 2 ] );
+
+  // font
+  QFont aFont;
+
+  QString aFamily;
+  if ( aFType == VTK_ARIAL )
+    aFamily = "Arial";
+  else if ( aFType == VTK_COURIER )
+    aFamily = "Courier";
+  else if ( aFType == VTK_TIMES )
+    aFamily = "Times";
+
+  aFont.setFamily( aFamily );
+  aFont.setPointSize( aSize );
+  aFont.setBold( isBold );
+  aFont.setItalic( isItalic );
+  aFont.setOverline( isShadow );
+
+  myFont->setCurrentFont( aFont );
+
+  // color
+  QColor aColor( aGRB[ 0 ] * 255, aGRB[ 1 ] * 255, aGRB[ 2 ] * 255 );
+  myColor->setColor( aColor );
+}
+
+/*!
+  \brief Updates presentation in accordance with dialog input data
+  \param thePrs to be updated
+  \sa initFromPrsObject()
+*/
+int VisuGUI_ValuesLabelingDlg::storeToPrsObject( VISU::ColoredPrs3d_i* thePrs )
+{
+  if ( !thePrs )
+    return 0; 
+
+  QFont aFont = myFont->currentFont();
+
+  // type
+  if ( aFont.family() == "Arial" )
+    thePrs->SetValLblFontType( VTK_ARIAL );
+  else if ( aFont.family() == "Courier" )
+    thePrs->SetValLblFontType( VTK_COURIER );
+  else if ( aFont.family() == "Times" )
+    thePrs->SetValLblFontType( VTK_TIMES );
+
+  // size
+  int aSize = aFont.pointSize();
+  if ( aSize > 0 )
+    thePrs->SetValLblFontSize( aSize );
+
+  // bold, italic, shadow
+  thePrs->SetBoldValLbl( aFont.bold() );
+  thePrs->SetItalicValLbl( aFont.italic() );
+  thePrs->SetShadowValLbl( aFont.overline() );
+
+  // color
+  QColor aColor = myColor->color();
+  thePrs->SetValLblFontColor( 
+    aColor.red() / 255., aColor.green() / 255., aColor.blue() / 255. );
+
+  return 1;
+}
+
+/*!
+  \brief Gets help file name
+*/
+QString VisuGUI_ValuesLabelingDlg::GetContextHelpFilePath()
+{
+  return "values_labeling_page.html";
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/VISUGUI/VisuGUI_ValuesLabelingDlg.h b/src/VISUGUI/VisuGUI_ValuesLabelingDlg.h
new file mode 100755 (executable)
index 0000000..6f8d0e2
--- /dev/null
@@ -0,0 +1,66 @@
+//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
+// 
+//  This library is free software; you can redistribute it and/or 
+//  modify it under the terms of the GNU Lesser General Public 
+//  License as published by the Free Software Foundation; either 
+//  version 2.1 of the License. 
+// 
+//  This library is distributed in the hope that it will be useful, 
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
+//  Lesser General Public License for more details. 
+// 
+//  You should have received a copy of the GNU Lesser General Public 
+//  License along with this library; if not, write to the Free Software 
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
+// 
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  File   : VisuGUI_ValuesLabelingDlg.h
+//  Author : Sergey LITONIN
+//  Module : SALOME
+
+#ifndef VisuGUI_ValuesLabelingDlg_H
+#define VisuGUI_ValuesLabelingDlg_H
+
+#include <VisuGUI_Prs3dDlg.h>
+
+class QtxFontEdit;
+class QtxColorButton;
+
+class VisuGUI_ValuesLabelingDlg : public VisuGUI_Prs3dDlg
+{  
+  Q_OBJECT
+
+public:
+  VisuGUI_ValuesLabelingDlg( SalomeApp_Module* theModule );
+  ~VisuGUI_ValuesLabelingDlg();
+
+  virtual void      initFromPrsObject( VISU::ColoredPrs3d_i* thePrs, bool theInit );
+
+  virtual int       storeToPrsObject( VISU::ColoredPrs3d_i* thePrs );
+
+protected:
+  virtual QString   GetContextHelpFilePath();
+
+private:
+  QtxFontEdit*      myFont;
+  QtxColorButton*   myColor;
+};
+
+#endif // VisuGUI_ValuesLabelingDlg_H
+
+
+
+
+
+
+
+
+
+
+
+
+
+
index 9a92656d62fb3579d7dbd32f35187684b869d05b..e46f4498dd4dce86124b50e23ccfb22d079e5213 100644 (file)
@@ -1,31 +1,30 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_VectorsDlg.cxx
 //  Author : Laurent CORNABE & Hubert ROLLAND 
 //  Module : VISU
 //  $Header$
-
+//
 #include "VisuGUI_VectorsDlg.h"
 
 #include "VisuGUI.h"
 #include "SUIT_ResourceMgr.h"
 #include "SUIT_Session.h"
 
-#include <qlayout.h>
-#include <qcolordialog.h>
-#include <qtabwidget.h>
+#include <QtxColorButton.h>
+
+#include <QLayout>
+#include <QColorDialog>
+#include <QTabWidget>
+#include <QButtonGroup>
+#include <QGroupBox>
+#include <QRadioButton>
+#include <QCheckBox>
+#include <QLabel>
+#include <QSpinBox>
+#include <QPushButton>
+#include <QKeyEvent>
+
+#include <limits>
 
 using namespace std;
 
@@ -54,32 +65,36 @@ using namespace std;
 VisuGUI_VectorsDlg::VisuGUI_VectorsDlg (SalomeApp_Module* theModule)
   : VisuGUI_ScalarBarBaseDlg(theModule)
 {
-  setCaption(tr("DLG_TITLE"));
+  setWindowTitle(tr("DLG_TITLE"));
   setSizeGripEnabled(TRUE);
 
-  QVBoxLayout* TopLayout = new QVBoxLayout( this );
+  QVBoxLayout* TopLayout = new QVBoxLayout( this ); 
   TopLayout->setSpacing( 6 );
   TopLayout->setMargin( 11 );
 
   myTabBox = new QTabWidget(this);
 
-  QVBox* aBox = new QVBox(this);
-  aBox->setMargin( 11 );
+  QWidget* aBox = new QWidget(this);
+  QVBoxLayout* aVBLay = new QVBoxLayout( aBox );
+  aVBLay->setMargin( 11 );
 
-  TopGroup = new QButtonGroup( aBox, "TopGroup" );
-  TopGroup->setColumnLayout(0, Qt::Vertical );
-  TopGroup->layout()->setSpacing( 0 );
-  TopGroup->layout()->setMargin( 5 );
-  QGridLayout* TopGroupLayout = new QGridLayout( TopGroup->layout() );
+  TopGroup = new QGroupBox( aBox );
+  aVBLay->addWidget( TopGroup );
+  //TopGroup->setColumnLayout(0, Qt::Vertical );
+  //TopGroup->layout()->setSpacing( 0 );
+  //TopGroup->layout()->setMargin( 5 );
+  QGridLayout* TopGroupLayout = new QGridLayout( TopGroup );
   TopGroupLayout->setAlignment( Qt::AlignTop );
   TopGroupLayout->setSpacing( 6 );
   TopGroupLayout->setMargin( 11 );
 
   // Scale factor
-  ScaleLabel = new QLabel (tr("LBL_SCALE_FACTOR"), TopGroup, "ScaleLabel");
+  ScaleLabel = new QLabel (tr("LBL_SCALE_FACTOR"), TopGroup );
+
+  SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
+  int aPrecision = aResourceMgr->integerValue( "VISU", "floating_point_precision", 0 );
 
-  ScalFact = new QtxDblSpinBox( 1e-20, 1.0E+38, 0.1, TopGroup );
-  ScalFact->setPrecision( 5 );
+  ScalFact = new QtxDoubleSpinBox( 0, 1.0E+38, 0.1, aPrecision*(-1), 32, TopGroup );
   ScalFact->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   ScalFact->setValue( 0.1 );
 
@@ -87,9 +102,13 @@ VisuGUI_VectorsDlg::VisuGUI_VectorsDlg (SalomeApp_Module* theModule)
   TopGroupLayout->addWidget( ScalFact, 0, 1 );
 
   // Line width
-  LineWidLabel = new QLabel (tr("LBL_LINE_WIDTH"), TopGroup, "LineWidLabel");
+  LineWidLabel = new QLabel (tr("LBL_LINE_WIDTH"), TopGroup );
 
-  LinWid = new QSpinBox( 1, 10, 1, TopGroup, "LinWid" );
+  LinWid = new QSpinBox( TopGroup );
+  LinWid->setMinimum( 1 );
+  LinWid->setMaximum( 10 );
+  LinWid->setSingleStep( 1 );
+  
   LinWid->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   LinWid->setValue( 1 );
 
@@ -97,9 +116,11 @@ VisuGUI_VectorsDlg::VisuGUI_VectorsDlg (SalomeApp_Module* theModule)
   TopGroupLayout->addWidget( LinWid, 1, 1 );
 
   // Color
-  UseMagn = new QCheckBox (tr("MAGNITUDE_COLORING_CHK"), TopGroup, "UseMagn");
+  UseMagn = new QCheckBox (tr("MAGNITUDE_COLORING_CHK"), TopGroup);
   //UseMagn->setText(tr("MAGNITUDE_COLORING_CHK"));
-  SelColor = new QPushButton (tr("SEL_COLOR_BTN"), TopGroup, "SelColor");
+  SelColor = new QtxColorButton (TopGroup);
+  SelColor->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
+  SelColor->setText( tr("SEL_COLOR_BTN") );
 
   /*  ColorLab = new QLabel( TopGroup, "ColorLab" );
   ColorLab->setFixedSize( SelColor->sizeHint().height(), SelColor->sizeHint().height() );
@@ -110,63 +131,73 @@ VisuGUI_VectorsDlg::VisuGUI_VectorsDlg (SalomeApp_Module* theModule)
   TopGroupLayout->addWidget( SelColor, 2, 1 );
 
   // Gliphs
-  UseGlyph = new QCheckBox (tr("USE_GLYPHS_CHK"), TopGroup, "UseGlyph");
+  UseGlyph = new QCheckBox (tr("USE_GLYPHS_CHK"), TopGroup);
   
-  TypeGlyph = new QButtonGroup (tr("GLYPH_TYPE_GRP"), TopGroup, "TypeGlyph");
-  TypeGlyph->setColumnLayout(0, Qt::Vertical );
-  TypeGlyph->layout()->setSpacing( 0 );
-  TypeGlyph->layout()->setMargin( 0 );
-  QGridLayout* TypeGlyphLayout = new QGridLayout( TypeGlyph->layout() );
+  TypeGlyph = new QButtonGroup ( TopGroup);
+  TypeGB = new QGroupBox( tr("GLYPH_TYPE_GRP"), TopGroup );
+  //TypeGlyph->setColumnLayout(0, Qt::Vertical );
+  //TypeGlyph->layout()->setSpacing( 0 );
+  //TypeGlyph->layout()->setMargin( 0 );
+  QGridLayout* TypeGlyphLayout = new QGridLayout( TypeGB );
   TypeGlyphLayout->setAlignment( Qt::AlignTop );
   TypeGlyphLayout->setSpacing( 6 );
   TypeGlyphLayout->setMargin( 11 );
 
-  RBArrows = new QRadioButton (tr("ARROWS_BTN") , TypeGlyph, "RBArrows");
+  RBArrows = new QRadioButton (tr("ARROWS_BTN"), TypeGB );
   TypeGlyphLayout->addWidget( RBArrows, 0, 0 );
-  RBCones2 = new QRadioButton (tr("CONES2_BTN"), TypeGlyph, "RBCones2");
+  RBCones2 = new QRadioButton (tr("CONES2_BTN"), TypeG);
   TypeGlyphLayout->addWidget( RBCones2, 1, 0 );
-  RBCones6 = new QRadioButton (tr("CONES6_BTN"), TypeGlyph, "RBCones6");
+  RBCones6 = new QRadioButton (tr("CONES6_BTN"), TypeG);
   TypeGlyphLayout->addWidget( RBCones6, 2, 0 );
 
-  PosGlyph = new QButtonGroup (tr("GLYPH_POSITION_GRP"), TopGroup, "PosGlyph");
-  PosGlyph->setColumnLayout(0, Qt::Vertical );
-  PosGlyph->layout()->setSpacing( 0 );
-  PosGlyph->layout()->setMargin( 0 );
-  QGridLayout* PosGlyphLayout = new QGridLayout( PosGlyph->layout() );
+  TypeGlyph->addButton( RBArrows );
+  TypeGlyph->addButton( RBCones2 );
+  TypeGlyph->addButton( RBCones6 );
+
+  PosGlyph = new QButtonGroup ( TopGroup );
+  PosGB = new QGroupBox( tr("GLYPH_POSITION_GRP"), TopGroup );
+  //PosGlyph->setColumnLayout(0, Qt::Vertical );
+  //PosGlyph->layout()->setSpacing( 0 );
+  //PosGlyph->layout()->setMargin( 0 );
+  QGridLayout* PosGlyphLayout = new QGridLayout( PosGB );
   PosGlyphLayout->setAlignment( Qt::AlignTop );
   PosGlyphLayout->setSpacing( 6 );
   PosGlyphLayout->setMargin( 11 );
   
-  RBTail = new QRadioButton (tr("TAIL_BTN"  ), PosGlyph, "RBTail");
+  RBTail = new QRadioButton (tr("TAIL_BTN"  ), PosG);
   PosGlyphLayout->addWidget( RBTail, 0, 0 );
-  RBCent = new QRadioButton (tr("CENTER_BTN"), PosGlyph, "RBCent");
+  RBCent = new QRadioButton (tr("CENTER_BTN"), PosG);
   PosGlyphLayout->addWidget( RBCent, 1, 0 );
-  RBHead = new QRadioButton (tr("HEAD_BTN"  ), PosGlyph, "RBHead");
+  RBHead = new QRadioButton (tr("HEAD_BTN"  ), PosG);
   PosGlyphLayout->addWidget( RBHead, 2, 0 );
 
-  TopGroupLayout->addMultiCellWidget( UseGlyph, 3, 3, 0, 2 );
-  TopGroupLayout->addWidget( TypeGlyph, 4, 0 );
-  TopGroupLayout->addMultiCellWidget( PosGlyph, 4, 4, 1, 2 );
+  PosGlyph->addButton( RBTail );
+  PosGlyph->addButton( RBCent );
+  PosGlyph->addButton( RBHead );
+
+  TopGroupLayout->addWidget( UseGlyph, 3, 0, 1, 3 );
+  TopGroupLayout->addWidget( TypeGB, 4, 0 );
+  TopGroupLayout->addWidget( PosGB, 4, 1, 1, 2 );
 
   // Common buttons ===========================================================
-  GroupButtons = new QGroupBox( this, "GroupButtons" );
-  GroupButtons->setColumnLayout(0, Qt::Vertical );
-  GroupButtons->layout()->setSpacing( 0 );
-  GroupButtons->layout()->setMargin( 0 );
-  QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons->layout() );
+  GroupButtons = new QGroupBox( this );
+  //GroupButtons->setColumnLayout(0, Qt::Vertical );
+  //GroupButtons->layout()->setSpacing( 0 );
+  //GroupButtons->layout()->setMargin( 0 );
+  QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons );
   GroupButtonsLayout->setAlignment( Qt::AlignTop );
   GroupButtonsLayout->setSpacing( 6 );
   GroupButtonsLayout->setMargin( 11 );
 
-  buttonOk = new QPushButton( tr( "&OK" ), GroupButtons, "buttonOk" );
+  buttonOk = new QPushButton( tr( "BUT_OK" ), GroupButtons );
   buttonOk->setAutoDefault( TRUE );
   buttonOk->setDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonOk, 0, 0 );
   GroupButtonsLayout->addItem( new QSpacerItem( 5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 1 );
-  buttonCancel = new QPushButton( tr( "&Cancel" ) , GroupButtons, "buttonCancel" );
+  buttonCancel = new QPushButton( tr( "BUT_CANCEL" ) , GroupButtons );
   buttonCancel->setAutoDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonCancel, 0, 2 );
-  buttonHelp = new QPushButton( tr( "&Help" ) , GroupButtons, "buttonHelp" );
+  buttonHelp = new QPushButton( tr( "BUT_HELP" ) , GroupButtons );
   buttonHelp->setAutoDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonHelp, 0, 3 );
 
@@ -181,7 +212,7 @@ VisuGUI_VectorsDlg::VisuGUI_VectorsDlg (SalomeApp_Module* theModule)
   
   // signals and slots connections
   connect( UseGlyph,     SIGNAL( clicked() ), this, SLOT( enableGlyphType() ) );
-  connect( SelColor,     SIGNAL( clicked() ), this, SLOT( setVColor() ) );
+  //connect( SelColor,     SIGNAL( clicked() ), this, SLOT( setVColor() ) );
   connect( UseMagn,      SIGNAL( clicked() ), this, SLOT( enableSetColor() ) );
   connect( buttonOk,     SIGNAL( clicked() ), this, SLOT( accept() ) );
   connect( buttonCancel, SIGNAL( clicked() ), this, SLOT( reject() ) );
@@ -219,7 +250,7 @@ void VisuGUI_VectorsDlg::initFromPrsObject( VISU::ColoredPrs3d_i* thePrs,
     setUseGlyphs(true);
     setGlyphType(myPrsCopy->GetGlyphType());
     setGlyphPos(myPrsCopy->GetGlyphPos());
-  } else
+  } else 
     setUseGlyphs(false);
 
   enableSetColor();
@@ -228,7 +259,7 @@ void VisuGUI_VectorsDlg::initFromPrsObject( VISU::ColoredPrs3d_i* thePrs,
     return;
 
   myInputPane->initFromPrsObject( myPrsCopy );
-  myTabBox->setCurrentPage( 0 );
+  myTabBox->setCurrentIndex( 0 );
 }
 
 
@@ -244,16 +275,17 @@ int VisuGUI_VectorsDlg::storeToPrsObject(VISU::ColoredPrs3d_i* thePrs)
   myPrsCopy->SetLineWidth(getLineWidth());
   myPrsCopy->ShowColored(getUseMagnColor());
   if(!myPrsCopy->IsColored()){
+    QColor aSelectedColor = SelColor->color();
     SALOMEDS::Color aColor;
-    aColor.R = myColor.red()/255.;
-    aColor.G = myColor.green()/255.;
-    aColor.B = myColor.blue()/255.;
+    aColor.R = aSelectedColor.red()/255.;
+    aColor.G = aSelectedColor.green()/255.;
+    aColor.B = aSelectedColor.blue()/255.;
     myPrsCopy->SetColor(aColor);
   }
   if (getUseGlyphs()) {
     myPrsCopy->SetGlyphPos(getGlyphPos());
     myPrsCopy->SetGlyphType(getGlyphType());
-  } else
+  } else 
     myPrsCopy->SetGlyphType(VISU::Vectors::NONE);
 
   VISU::TSameAsFactory<VISU::TVECTORS>().Copy(myPrsCopy, thePrs);
@@ -268,8 +300,8 @@ int VisuGUI_VectorsDlg::storeToPrsObject(VISU::ColoredPrs3d_i* thePrs)
 */
 void VisuGUI_VectorsDlg::enableGlyphType()
 {
-  TypeGlyph->setEnabled( UseGlyph->isChecked() );
-  PosGlyph->setEnabled( UseGlyph->isChecked() );
+  TypeGB->setEnabled( UseGlyph->isChecked() );
+  PosGB->setEnabled( UseGlyph->isChecked() );
 }
 
 /*!
@@ -284,19 +316,31 @@ void VisuGUI_VectorsDlg::enableSetColor()
 /*!
   Called when "Select Color" buttonx clicked
 */
-void VisuGUI_VectorsDlg::setVColor()
+/*void VisuGUI_VectorsDlg::setVColor()
 {
   QColor cnew = QColorDialog::getColor( myColor, this );
   if ( cnew.isValid() )
     setColor( cnew );
-}
+}*/
 
 /*!
   Sets Scale factor
 */
-void VisuGUI_VectorsDlg::setScaleFactor( double sf )
+void VisuGUI_VectorsDlg::setScaleFactor(double theFactor)
 {
-  ScalFact->setValue( sf );
+  double step = 0.1;
+  if (fabs(theFactor) > std::numeric_limits<double>::epsilon()) {
+    int degree = int(log10(fabs(theFactor))) - 1;
+    if (fabs(theFactor) < 1) {
+      // as logarithm value is negative in this case
+      // and it is truncated to the bigger integer
+      degree -= 1;
+    }
+    step = pow(10., double(degree));
+  }
+
+  ScalFact->setSingleStep(step);
+  ScalFact->setValue(theFactor);
 }
 
 /*!
@@ -318,7 +362,7 @@ void VisuGUI_VectorsDlg::setLineWidth( int lw )
 /*!
   Gets Line width
 */
-int VisuGUI_VectorsDlg::getLineWidth()
+int VisuGUI_VectorsDlg::getLineWidth() 
 {
   return LinWid->value();
 }
@@ -343,7 +387,7 @@ bool VisuGUI_VectorsDlg::getUseMagnColor()
 /*!
   Sets "Use Glyphs" flag
 */
-void VisuGUI_VectorsDlg::setUseGlyphs( bool on )
+void VisuGUI_VectorsDlg::setUseGlyphs( bool on ) 
 {
   UseGlyph->setChecked( on );
   enableGlyphType();
@@ -362,13 +406,11 @@ bool VisuGUI_VectorsDlg::getUseGlyphs()
 */
 void VisuGUI_VectorsDlg::setColor( QColor color )
 {
-  myColor = color;
-  SelColor->setPaletteBackgroundColor(myColor);
-/*  QPalette pal = ColorLab->palette();
-  QColorGroup ca = pal.active();
-  ca.setColor( QColorGroup::Background, myColor );
-  pal.setActive( ca );
-  ColorLab->setPalette( pal );*/
+  //myColor = color;
+  //QPalette aPal = SelColor->palette();
+  //aPal.setColor( SelColor->backgroundRole(), myColor );
+  //SelColor->setPalette( aPal );
+  SelColor->setColor( color );
 }
 
 /*!
@@ -376,7 +418,7 @@ void VisuGUI_VectorsDlg::setColor( QColor color )
 */
 void VisuGUI_VectorsDlg::setGlyphType(VISU::Vectors::GlyphType type )
 {
-  if ( type ==  VISU::Vectors::CONE2)
+  if ( type ==  VISU::Vectors::CONE2) 
     RBCones2->setChecked( true );
   else if ( type == VISU::Vectors::CONE6)
     RBCones6->setChecked( true );
@@ -404,7 +446,7 @@ VISU::Vectors::GlyphType VisuGUI_VectorsDlg::getGlyphType()
 */
 void VisuGUI_VectorsDlg::setGlyphPos(VISU::Vectors::GlyphPos pos)
 {
-  if ( pos == VISU::Vectors::TAIL)
+  if ( pos == VISU::Vectors::TAIL) 
     RBTail->setChecked(true);
   else if ( pos == VISU::Vectors::HEAD)
     RBHead->setChecked(true);
@@ -436,7 +478,6 @@ void VisuGUI_VectorsDlg::enableMagnColor( bool enable )
   enableSetColor();
 }
 
-
 QString VisuGUI_VectorsDlg::GetContextHelpFilePath()
 {
   return "vectors_page.html";
index 7fae9ccbf9e466cc6ec8eeb4b1491f6f7a25209e..dee5ef5a353c7e9e45c61e63e70fcc655cea8d41 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_VectorsDlg.h
 //  Author : Laurent CORNABE & Hubert ROLLAND
 //  Module : VISU
 //  $Header$
-
+//
 #ifndef VISUGUI_VECTORSDLG_H
 #define VISUGUI_VECTORSDLG_H
 
 #include "VisuGUI_Prs3dDlg.h"
-#include "QtxDblSpinBox.h"
-
-#include <qdialog.h>
-#include <qbuttongroup.h>
-#include <qgroupbox.h>
-#include <qradiobutton.h>
-#include <qcheckbox.h>
-#include <qlabel.h>
-#include <qspinbox.h>
-#include <qpushbutton.h>
-#include <qtabwidget.h>
+#include "QtxDoubleSpinBox.h"
+
+class QGroupBox;
+class QTabWidget;
+class QRadioButton;
+class QButtonGroup;
+class QCheckBox;
+class QPushButton;
+class QtxColorButton;
 
 #include "SALOMEconfig.h"
 #include CORBA_CLIENT_HEADER(VISU_Gen)
@@ -90,18 +87,19 @@ protected slots:
 private:
     QGroupBox*      TopGroup;
     QCheckBox*      UseMagn;
-    //QLabel*         ColorLab;
-    QPushButton*    SelColor;
+    QtxColorButton* SelColor;
     QLabel*         LineWidLabel;
     QSpinBox*       LinWid;
     QLabel*         ScaleLabel;
-    QtxDblSpinBox*  ScalFact;
+    QtxDoubleSpinBox*  ScalFact;
     QCheckBox*      UseGlyph;
     QButtonGroup*   TypeGlyph;
+    QGroupBox*      TypeGB;
     QRadioButton*   RBCones6;
     QRadioButton*   RBCones2;
     QRadioButton*   RBArrows;
     QButtonGroup*   PosGlyph;
+    QGroupBox*      PosGB;
     QRadioButton*   RBTail;
     QRadioButton*   RBCent;
     QRadioButton*   RBHead;
@@ -120,7 +118,7 @@ private:
 
 private slots:
     void enableGlyphType();
-    void setVColor();
+//void setVColor();
     void enableSetColor();
 };
 
diff --git a/src/VISUGUI/VisuGUI_ViewExtender.cxx b/src/VISUGUI/VisuGUI_ViewExtender.cxx
new file mode 100644 (file)
index 0000000..243108d
--- /dev/null
@@ -0,0 +1,146 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
+//  File   : VisuGUI_ViewExtender.cxx
+//  Author : Vitaly Smetannikov
+//  Module : VISU
+//
+#include "VisuGUI_ViewExtender.h"
+
+#include "VisuGUI.h"
+#include "VisuGUI_SegmentationMgr.h"
+#include "VisuGUI_ViewTools.h"
+#include "VisuGUI_Tools.h"
+#include <VTKViewer_Actor.h>
+
+#include <LightApp_SelectionMgr.h>
+#include <SalomeApp_Application.h>
+
+#include <VISU_PipeLine.hxx>
+#include <SUIT_ViewManager.h>
+#include <SUIT_ViewWindow.h>
+
+#include <SVTK_ViewModel.h>
+#include <SVTK_ViewWindow.h>
+
+
+
+//using namespace std;
+
+VisuGUI_ViewExtender::VisuGUI_ViewExtender(VisuGUI* theModule):
+  myModule(theModule)
+{
+}
+
+//****************************************************************
+VisuGUI_ViewExtender::~VisuGUI_ViewExtender()
+{
+  QMapIterator<SVTK_ViewWindow*, VisuGUI_SegmentationMgr*> aIt(myViewMgrMap);
+  while (aIt.hasNext()) {
+    aIt.next();
+    delete aIt.value();
+  }
+}
+
+//****************************************************************
+int VisuGUI_ViewExtender::createToolbar(SUIT_ViewWindow* theView)
+{
+  SVTK_ViewWindow* aViewWindow = dynamic_cast<SVTK_ViewWindow*>(theView);
+  if (!aViewWindow) return -1;
+
+  VisuGUI_SegmentationMgr* aMgr = getSegmentationMgr(aViewWindow);
+  return aMgr->createToolbar(theView->toolMgr());
+}
+
+//****************************************************************
+void VisuGUI_ViewExtender::contextMenuPopup(QMenu* theMenu)
+{
+//   SVTK_ViewWindow* aViewWindow = VISU::GetActiveViewWindow<SVTK_ViewWindow>(myModule);
+//   if (!aViewWindow) return;
+
+//   SalomeApp_Application* anApp = myModule->getApp();
+//   LightApp_SelectionMgr* aSelectionMgr = VISU::GetSelectionMgr(myModule);
+//   myListIO.Clear();
+//   aSelectionMgr->selectedObjects(myListIO);
+//   if (myListIO.IsEmpty()) return;
+
+//   theMenu->addSeparator();
+//   theMenu->addAction(tr("VISU_SETPLANES_MNU"), this, SLOT(onSetPlanes()));
+}
+
+
+//****************************************************************
+void VisuGUI_ViewExtender::activate(SUIT_ViewModel* theViewer)
+{
+  // Connect to signal on destroy ViewWindow
+  SVTK_Viewer* aViewer = dynamic_cast<SVTK_Viewer*>(theViewer);
+  if (aViewer) {
+    if (!myViewers.contains(aViewer)) {
+      SUIT_ViewManager* aMgr = aViewer->getViewManager();
+      connect(aMgr, SIGNAL(deleteView(SUIT_ViewWindow*)), 
+             this, SLOT(onViewDeleted(SUIT_ViewWindow*)));
+      connect(aViewer, SIGNAL(actorAdded(SVTK_ViewWindow*, VTKViewer_Actor*)), 
+             this, SLOT(onAddActor(SVTK_ViewWindow*, VTKViewer_Actor*)));
+      myViewers.append(aViewer);
+    }
+  }
+}
+
+//****************************************************************
+void VisuGUI_ViewExtender::deactivate(SUIT_ViewModel*)
+{
+  QMapIterator<SVTK_ViewWindow*, VisuGUI_SegmentationMgr*> aIt(myViewMgrMap);
+  while (aIt.hasNext()) {
+    aIt.next();
+    aIt.value()->deactivate();
+  }
+}
+
+
+//****************************************************************
+VisuGUI_SegmentationMgr* VisuGUI_ViewExtender::getSegmentationMgr(SVTK_ViewWindow* theWindow)
+{
+  if (myViewMgrMap.contains(theWindow)) 
+    return myViewMgrMap[theWindow];
+  
+  VisuGUI_SegmentationMgr* aMgr = new VisuGUI_SegmentationMgr(myModule, theWindow);
+  myViewMgrMap[theWindow] = aMgr;
+  return aMgr;
+}
+
+//****************************************************************
+void VisuGUI_ViewExtender::onViewDeleted(SUIT_ViewWindow* theWindow)
+{
+  SVTK_ViewWindow* aWindow = dynamic_cast<SVTK_ViewWindow*>(theWindow);
+  if (!aWindow) return;
+
+  if (!myViewMgrMap.contains(aWindow)) return;
+  delete myViewMgrMap[aWindow];
+  myViewMgrMap.remove(aWindow);
+}
+
+//****************************************************************
+void VisuGUI_ViewExtender::onAddActor(SVTK_ViewWindow* theWindow, VTKViewer_Actor* theActor)
+{
+  if (!myViewMgrMap.contains(theWindow)) return;
+  myViewMgrMap[theWindow]->onAddActor(theActor);
+}
diff --git a/src/VISUGUI/VisuGUI_ViewExtender.h b/src/VISUGUI/VisuGUI_ViewExtender.h
new file mode 100644 (file)
index 0000000..1630317
--- /dev/null
@@ -0,0 +1,91 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU VISUGUI : GUI of VISU component
+//  File   : VisuGUI_ViewExtender.h
+//  Author : Vitaly Smetannikov
+//  Module : VISU
+//
+#ifndef VisuGUI_ViewExtender_HeaderFile
+#define VisuGUI_ViewExtender_HeaderFile
+
+#include <CAM_ViewExtender.h>
+#include <SALOME_ListIO.hxx>
+#include <QObject>
+#include <QMap>
+
+class VisuGUI;
+//class QtxAction;
+//class QDialog;
+
+class VisuGUI_SegmentationMgr;
+class SVTK_Viewer;
+class SVTK_ViewWindow;
+class SUIT_ViewWindow;
+class VTKViewer_Actor;
+
+
+class VisuGUI_ViewExtender:  public QObject, public CAM_ViewExtender
+{
+  Q_OBJECT
+
+ public:
+  VisuGUI_ViewExtender(VisuGUI* theModule);
+
+  virtual ~VisuGUI_ViewExtender();
+
+  virtual int createToolbar(SUIT_ViewWindow* theView);
+  virtual void contextMenuPopup(QMenu* theMenu);
+
+  virtual void activate(SUIT_ViewModel*);
+  virtual void deactivate(SUIT_ViewModel*);
+
+  VisuGUI_SegmentationMgr* getSegmentationMgr(SVTK_ViewWindow* theWindow);
+
+private slots:
+  //  void onPlanesMgr();
+  // void onDialogDestroy(); 
+  // void onShowPlanes(bool);
+  // void onDeactivatePlanes(bool);
+ void onViewDeleted(SUIT_ViewWindow* theWindow);
+ void onAddActor(SVTK_ViewWindow* theWindow, VTKViewer_Actor* theActor);
+
+ private:
+
+ //enum { ClippingPlaneMgrId, ShowClippingPlanesId, DeactivateClippingPlanesId };
+
+ //QMap<int, QtxAction*> myActionsMap;
+  VisuGUI* myModule;
+
+  //QDialog* myNonModalDlg;
+
+  //VisuGUI_SegmentationMgr* mySegmentationMgr;
+  QMap<SVTK_ViewWindow*, VisuGUI_SegmentationMgr*> myViewMgrMap;
+
+  QList<SVTK_Viewer*> myViewers;
+
+  //SALOME_ListIO myListIO;
+  
+};
+
+
+#endif
index 6062909c2f4144eef14e4f5b6d02f526de25a69b..f2c4fecfbd74ecd26e8d43e688cc088f646baa6b 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_Tools.cxx
 //  Author : Sergey Anikin
 //  Module : VISU
-
-
+//
 #include "VisuGUI_ViewTools.h"
 
 #include "VISU_Actor.h"
@@ -33,6 +31,8 @@
 #include "SVTK_ViewModel.h"
 #include "SVTK_ViewWindow.h"
 
+#include <SUIT_Desktop.h>
+
 namespace VISU 
 {
   //----------------------------------------------------------------------------
@@ -43,7 +43,7 @@ namespace VISU
                bool theIsHighlight)
   {
     if (theViewWindow) {
-      QApplication::setOverrideCursor( Qt::waitCursor );
+      QApplication::setOverrideCursor( Qt::WaitCursor );
       try {
        if (VISU_Actor* anActor = thePrs->CreateActor()) {
          theViewWindow->AddActor(anActor);
@@ -59,10 +59,9 @@ namespace VISU
 
        QApplication::restoreOverrideCursor();
        INFOS(exc.what());
-       SUIT_MessageBox::warn1
+       SUIT_MessageBox::warning
          (GetDesktop(theModule), QObject::tr("WRN_VISU"),
-          QObject::tr("ERR_CANT_CREATE_ACTOR") + ": " + QObject::tr(exc.what()),
-          QObject::tr("BUT_OK"));
+          QObject::tr("ERR_CANT_CREATE_ACTOR") + ": " + QObject::tr(exc.what()));
       }
     }
     return NULL;
@@ -95,10 +94,9 @@ namespace VISU
                isOk = false;
 
                INFOS(exc.what());
-               SUIT_MessageBox::warn1
+               SUIT_MessageBox::warning
                  (GetDesktop(theModule), QObject::tr("WRN_VISU"),
-                  QObject::tr("ERR_CANT_BUILD_PRESENTATION") + ": " + QObject::tr(exc.what()),
-                  QObject::tr("BUT_OK"));
+                  QObject::tr("ERR_CANT_BUILD_PRESENTATION") + ": " + QObject::tr(exc.what()) );
              }
            } else if (theDispOnly) {
              anActor->VisibilityOff();
@@ -161,6 +159,21 @@ namespace VISU
        PlotTable(theModule, aTable, VISU::eErase );
       break;
     }
+    case VISU::TPOINTMAP3D: {
+      if (VISU::PointMap3d_i* aTable3d = dynamic_cast<VISU::PointMap3d_i*>(theBase)) {
+       if (SVTK_ViewWindow* aViewWindow = GetActiveViewWindow<SVTK_ViewWindow>(theModule)) {
+         if(VISU_ActorBase* anActor = FindActorBase(aViewWindow, aTable3d)){
+           anActor->VisibilityOff();
+           if(theDoRepaint)
+           aViewWindow->Repaint();
+         }
+       } else {
+         if (VISU::Table_i* aTable = dynamic_cast<VISU::Table_i*>(theBase))
+           PlotTable(theModule, aTable, VISU::eErase );
+       }
+      }
+      break;
+    }
     default: {
       if(VISU::Prs3d_i* aPrs3d = VISU::GetPrs3dFromBase(theBase)){
        if(SVTK_ViewWindow* aViewWindow = GetActiveViewWindow<SVTK_ViewWindow>(theModule)){
index 521bafa60154df0cd902bc43d45ee88d15cb10bf..b13f17100b9ea05c3870ea26b410266941cd92cd 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VisuGUI_Tools.h
 //  Author : Sergey Anikin
 //  Module : VISU
-
+//
 #ifndef VisuGUI_ViewTools_HeaderFile
 #define VisuGUI_ViewTools_HeaderFile
 
@@ -34,6 +33,7 @@
 
 #include "VISU_Prs3d_i.hh"
 #include "VISU_Table_i.hh"
+#include "VISU_PointMap3d_i.hh"
 #include "VISU_ViewManager_i.hh"
 
 #include "VISU_Actor.h"
@@ -41,8 +41,8 @@
 #include "SalomeApp_Module.h"
 #include "SalomeApp_Application.h"
 
-#include "VVTK_ViewModel.h"
-#include "VVTK_ViewWindow.h"
+//#include "VVTK_ViewModel.h"
+//#include "VVTK_ViewWindow.h"
 
 #include "SVTK_Functor.h"
 #include "SVTK_ViewModel.h"
@@ -53,6 +53,7 @@
 #include "VTKViewer_Algorithm.h"
 
 #include "SUIT_Session.h"
+#include "SUIT_Desktop.h"
 #include "SUIT_MessageBox.h"
 #include "SUIT_ViewManager.h"
 #include "SUIT_ViewWindow.h"
@@ -63,7 +64,7 @@
 #include <vtkActorCollection.h>
 #include <vtkRenderer.h>
 
-class VVTK_Viewer;
+//class VVTK_Viewer;
 
 namespace VISU 
 {
index b08daa88931a4cbc7924e57d9bbd6cdd51517b61..0b92c4c43dcd29ccaa326b41cd461adb22c0ca3b 100644 (file)
@@ -1,26 +1,28 @@
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
 #  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 #  File   : Makefile.am
 #  Author : Alexey Petrov
 #  Module : VISU
-
+#
 include $(top_srcdir)/adm_local/unix/make_common_starter.am
 
 # Libraries targets
@@ -34,24 +36,35 @@ salomeinclude_HEADERS = \
        VISU_MultiResult_i.hh \
        VISU_PrsObject_i.hh \
        VISU_Table_i.hh \
+       VISU_ResultUtils.hh \
+       VISU_PointMap3d_i.hh \
        VISU_Prs3d_i.hh \
        VISU_Mesh_i.hh \
        VISU_ColoredPrs3d_i.hh \
+       VISU_CorbaMedConvertor.hxx \
        VISU_ScalarMap_i.hh \
        VISU_IsoSurfaces_i.hh \
        VISU_DeformedShape_i.hh \
        VISU_Plot3D_i.hh \
        VISU_CutPlanes_i.hh \
        VISU_CutLines_i.hh \
+       VISU_Prs3dUtils.hh \
        VISU_Vectors_i.hh \
        VISU_StreamLines_i.hh \
        VISU_GaussPoints_i.hh \
        VISU_ViewManager_i.hh \
        VISU_View_i.hh \
        VISU_TimeAnimation.h \
-       VISU_ScalarMapOnDeformedShape_i.hh \
+       VISU_DeformedShapeAndScalarMap_i.hh \
+       VISU_ColoredPrs3dCache_i.hh \
+       VISU_ColoredPrs3dHolder_i.hh \
        VISU_ColoredPrs3dFactory.hh \
-       SALOME_GenericObjPointer.hh
+       VISU_MonoColorPrs_i.hh \
+       VISU_Deformation_i.hh \
+       VISU_OptionalDeformation_i.hh \
+       SALOME_GenericObjPointer.hh \
+       VISU_ClippingPlaneMgr.hxx
+
 
 libVISUEngineImpl_la_SOURCES = \
        VISUConfig.cc \
@@ -73,7 +86,7 @@ libVISUEngineImpl_la_SOURCES = \
        VISU_CutLines_i.cc \
        VISU_Vectors_i.cc \
        VISU_StreamLines_i.cc \
-       VISU_ScalarMapOnDeformedShape_i.cc \
+       VISU_DeformedShapeAndScalarMap_i.cc \
        VISU_ColoredPrs3dCache_i.cc \
        VISU_ColoredPrs3dHolder_i.cc \
        VISU_ColoredPrs3dFactory.cc \
@@ -82,8 +95,13 @@ libVISUEngineImpl_la_SOURCES = \
        VISU_TimeAnimation.cxx \
        VISU_View_i.cc \
        VISU_Table_i.cc \
+       VISU_PointMap3d_i.cc \
        VISU_DumpPython.cc \
-       SALOME_GenericObjPointer.cc
+       VISU_MonoColorPrs_i.cc \
+       VISU_Deformation_i.cc \
+       VISU_OptionalDeformation_i.cc \
+       SALOME_GenericObjPointer.cc \
+       VISU_ClippingPlaneMgr.cxx
 
 MOC_FILES = VISU_TimeAnimation_moc.cxx
 nodist_libVISUEngineImpl_la_SOURCES= $(MOC_FILES)
@@ -105,13 +123,11 @@ libVISUEngineImpl_la_CPPFLAGS= \
        -I$(srcdir)/../CONVERTOR \
        -I$(srcdir)/../PIPELINE \
        -I$(srcdir)/../OBJECT \
-       -I$(srcdir)/../VVTK \
        -I$(srcdir)/../GUITOOLS \
        -I$(top_builddir)/idl \
        -I$(top_builddir)/salome_adm/unix
 
 libVISUEngineImpl_la_LDFLAGS= \
-       $(VTK_LIBS) \
        $(PYTHON_LIBS) \
        $(QT_MT_LIBS) \
        $(QWT_LIBS) \
@@ -119,7 +135,8 @@ libVISUEngineImpl_la_LDFLAGS= \
        $(KERNEL_LDFLAGS) \
        $(GUI_LDFLAGS) \
        $(MED_LDFLAGS) \
-       ../../idl/libSalomeIDLVISU.la
+       ../../idl/libSalomeIDLVISU.la \
+       $(VTK_LIBS)
 
 libVISUEngineImpl_la_LIBADD= \
        -lboost_signals@BOOST_LIBSUFFIX@ \
@@ -140,7 +157,6 @@ libVISUEngineImpl_la_LIBADD= \
        ../CONVERTOR/libVisuConvertor.la \
        ../PIPELINE/libVisuPipeLine.la \
        ../OBJECT/libVisuObject.la \
-       ../VVTK/libVVTK.la \
        ../GUITOOLS/libVISUGUITOOLS.la
 
 if MED_ENABLE_MULTIPR
@@ -171,11 +187,11 @@ VISU_I_LDADD=\
        -lsuit \
        -lstd \
        -lCAM \
-       -lLightApp \
        -lObjBrowser \
+       -lPyConsole \
+       -lLightApp \
        -lSalomePrs \
        -lPyInterp \
-       -lPythonConsole \
        -lLogWindow \
        -lToolsGUI  \
        -lGLViewer \
index 1e774e1ee8346b6a97ed47b9169692db59b59b9f..ad08d8aab62894a14b00cadc4a4208199ac9758c 100644 (file)
@@ -1,25 +1,26 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : SALOME_GenericObjPtr.cc
 //  Author : Oleg UVAROV
 //  Module : SALOME
-
+//
 #include "SALOME_GenericObjPointer.hh"
index 5492b59509077b5454ff42914f8b53b34590102d..c54c762a017939847f6da50efcfb6bf833ec2f41 100644 (file)
@@ -1,27 +1,28 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : SALOME_GenericObjPtr.hh
 //  Author : Oleg UVAROV
 //  Module : SALOME
-
+//
 #ifndef SALOME_GenericObjPointer_HH
 #define SALOME_GenericObjPointer_HH
 
index 31d8a6af97315e0c67fc47892020256aeb53053e..7f08f0a1e19e66c92b7e1ac5cec01d2f791b68da 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISUConfig.cc
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISUConfig.hh"
 
 #include "SUIT_ResourceMgr.h"
@@ -35,9 +35,9 @@
 #include "SalomeApp_Application.h"
 #include "SalomeApp_Study.h"
 
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 
-#include <qregexp.h>
+#include <QRegExp>
 
 #include <fstream>
 
@@ -47,6 +47,7 @@ static int MYDEBUG = 0;
 static int MYDEBUG = 0;
 #endif
 
+using namespace std;
 
 namespace VISU
 {
@@ -87,7 +88,7 @@ namespace VISU
 
   //---------------------------------------------------------------------------
   static int mySCnt = 0;
-  static QMutex aMutex(TRUE);
+  static QMutex aMutex(QMutex::Recursive);
 
   Mutex::Mutex(QMutex* theMutex): myMutex(&aMutex)
   {
@@ -169,14 +170,14 @@ namespace VISU
           CORBA::Boolean theIsMultiFile)
   {
     try{
-      QString aString( CorrectPersistentString( theLocalPersistentID ) );
+      QString aString( CorrectPersistentString( theLocalPersistentID ).c_str() );
       TRestoringMap aRestoringMap;
       StringToMap(aString, aRestoringMap);
       bool anIsExists;
       QString aComment = VISU::Storable::FindValue(aRestoringMap, "myComment", &anIsExists);
       if ( anIsExists ) {
-       TStorableEngineMap::const_iterator anIter = myStorableEngineMap.find(aComment.latin1());
-       if(MYDEBUG) MESSAGE("Storable::Create - "<<aComment.latin1()<<" "<<(anIter != myStorableEngineMap.end()));
+       TStorableEngineMap::const_iterator anIter = myStorableEngineMap.find(aComment.toLatin1().data());
+       if(MYDEBUG) MESSAGE("Storable::Create - "<<aComment.toLatin1().data()<<" "<<(anIter != myStorableEngineMap.end()));
        if(anIter == myStorableEngineMap.end()) 
          return NULL;
        TStorableEngine aStorableEngine = anIter->second;
@@ -200,6 +201,8 @@ namespace VISU
       return VISU::TCURVE;
     if ( theComment == "TABLE" ) 
       return VISU::TTABLE;
+    if ( theComment == "POINTMAP3D" ) 
+      return VISU::TPOINTMAP3D;
     if ( theComment == "CONTAINER" ) 
       return VISU::TCONTAINER;
     if ( theComment == "MESH" ) 
@@ -212,8 +215,8 @@ namespace VISU
       return VISU::TISOSURFACES;
     if ( theComment == "DEFORMEDSHAPE" ) 
       return VISU::TDEFORMEDSHAPE;
-    if ( theComment == "SCALARMAPONDEFORMEDSHAPE" ) 
-      return VISU::TSCALARMAPONDEFORMEDSHAPE;
+    if ( theComment == "DEFORMEDSHAPEANDSCALARMAP" ) 
+      return VISU::TDEFORMEDSHAPEANDSCALARMAP;
     if ( theComment == "GAUSSPOINTS" ) 
       return VISU::TGAUSSPOINTS;
     if ( theComment == "PLOT3D" ) 
@@ -267,7 +270,7 @@ namespace VISU
   ::RestoringMap2Type(const TRestoringMap& theRestoringMap)
   {
     QString aComment = Storable::FindValue( theRestoringMap, "myComment", "" );
-    return Comment2Type(aComment.latin1());
+    return Comment2Type(aComment.toLatin1().data());
   }
 
 
@@ -309,7 +312,7 @@ namespace VISU
   {
     QString aString(thePersistentString.c_str());
     if(aString.isEmpty())
-      return aString.latin1();
+      return aString.toLatin1().data();
 
     VISU::Storable::TRestoringMap aRestoringMap;
     Storable::StringToMap( aString, aRestoringMap );
@@ -321,7 +324,7 @@ namespace VISU
        aString.replace( "myComment=PRSMERGER", "myComment=SCALARMAP" );
     }
 
-    return aString.latin1();
+    return aString.toLatin1().data();
   }
 
 
@@ -372,24 +375,24 @@ namespace VISU
   ::StringToMap(const QString& theString, 
                TRestoringMap& theMap)
   {
-    if(0 && MYDEBUG) MESSAGE("Storable::StringToMap : string="<<theString);
-    QStringList strList = QStringList::split( ";", theString, false );
+    if(0 && MYDEBUG) MESSAGE("Storable::StringToMap : string="<<theString.toLatin1().data());
+    QStringList strList = theString.split( ";", QString::SkipEmptyParts );
     for ( int i = 0; i < strList.count(); i++ ) {
       QString next = strList[ i ];
-      int pos = next.find("=");
+      int pos = next.indexOf("=");
       QString aName, aValue;
       if ( pos < 0 ) {
-       aName = next.stripWhiteSpace();
+       aName = next.trimmed();
        aValue = "";
       }
       else {
-       aName = next.left( pos ).stripWhiteSpace();
+       aName = next.left( pos ).trimmed();
        aValue = next.mid( pos+1 );
        if ( aValue.isNull() )
          aValue = "";
       }
       if ( !aName.isEmpty() )
-       theMap.insert( TRestoringMap::value_type( aName.latin1(), aValue ) );
+       theMap.insert( TRestoringMap::value_type( (const char*)aName.toLatin1(), aValue ) );
     }
   }
 
@@ -422,7 +425,7 @@ namespace VISU
     QString output = ( !theName.isNull() ? theName : QString("") )
                    + QString( "=" )
                   + ( !theVal.isNull()  ? theVal  : QString("") );
-    theStr<<output.latin1()<<";";
+    theStr<<(const char*)output.toLatin1()<<";";
   }
 
 
@@ -436,7 +439,7 @@ namespace VISU
     QString output = ( !theName.isNull() ? theName : QString("") )
                    + QString( "=" )
                   + QString::number( theVal );
-    theStr<<output.latin1()<<";";
+    theStr<<(const char*)output.toLatin1()<<";";
   }
 
 
@@ -450,7 +453,7 @@ namespace VISU
     QString output = ( !theName.isNull() ? theName : QString("") )
                    + QString( "=" )
                   + QString::number( theVal );
-    theStr<<output.latin1()<<";";
+    theStr<<(const char*)output.toLatin1()<<";";
   }
 
 
@@ -464,7 +467,7 @@ namespace VISU
     QString output = ( !theName.isNull() ? theName : QString("") )
                    + QString( "=" )
                   + QString::number( theVal );
-    theStr<<output.latin1()<<";";
+    theStr<<output.toLatin1().data()<<";";
   }
 
 
@@ -730,10 +733,10 @@ namespace VISU
       
       int aStudyId = myStudy->StudyId();
       SUIT_Session* aSession = SUIT_Session::session();
-      QPtrList<SUIT_Application> anApplications = aSession->applications();
-      QPtrListIterator<SUIT_Application> anIter (anApplications);
-      while (SUIT_Application* anApp = anIter.current()) {
-       ++anIter;
+      QList<SUIT_Application*> anApplications = aSession->applications();
+      QListIterator<SUIT_Application*> anIter (anApplications);
+      while ( anIter.hasNext() ) {
+       SUIT_Application* anApp = anIter.next();
        if (SUIT_Study* aSStudy = anApp->activeStudy()) {
          if (SalomeApp_Study* aStudy = dynamic_cast<SalomeApp_Study*>(aSStudy)) {
            if (_PTR(Study) aCStudy = aStudy->studyDS()) {
index 94f11eec775381df17bdcca49bcf3a855833112e..27af4103b87bd0efe2b217664aafca35ce2eb8b4 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISUConfig.hh
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef __VISU_CONFIG_H__
 #define __VISU_CONFIG_H__
 
 #include "SALOMEDSClient_Study.hxx"
 
 // QT headers
-#include <qstring.h>
-#include <qthread.h>
-#include <qfileinfo.h>
-#include <qapplication.h>
+#include <QString>
+#include <QThread>
+#include <QFileInfo>
+#include <QApplication>
+#include <QMutex>
 
 // standard C++ headers
 #include <stdio.h>
diff --git a/src/VISU_I/VISU_ClippingPlaneMgr.cxx b/src/VISU_I/VISU_ClippingPlaneMgr.cxx
new file mode 100644 (file)
index 0000000..d9c9d40
--- /dev/null
@@ -0,0 +1,512 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+#include "VISU_ClippingPlaneMgr.hxx"
+#include "VISU_ColoredPrs3dHolder_i.hh"
+
+//#include CORBA_SERVER_HEADER(SALOMEDS)
+//#include CORBA_SERVER_HEADER(SALOMEDS_Attributes)
+
+#include "SALOMEDSClient_GenericAttribute.hxx"
+#include "SALOMEDSClient_AttributeName.hxx"
+#include "SALOMEDSClient_AttributeSequenceOfReal.hxx"
+#include "SALOMEDSClient_AttributeInteger.hxx"
+
+
+#include <vtkImplicitFunctionCollection.h>
+
+
+#define CLIP_PLANES_FOLDER "Clipping Planes"
+
+using namespace std;
+
+//*************************************************************
+VISU_ClippingPlaneMgr::VISU_ClippingPlaneMgr()
+{
+  myPlanes = vtkImplicitFunctionCollection::New();
+}
+
+//*************************************************************
+VISU_ClippingPlaneMgr::~VISU_ClippingPlaneMgr()
+{
+  myPlanes->Delete();
+}
+
+//*************************************************************
+void VISU_ClippingPlaneMgr::SetStudy(_PTR(Study) theStudy)
+{
+  if (myStudy == theStudy) return;
+  myStudy = theStudy;
+  myPlanes->RemoveAllItems();
+  if (!myStudy) return;
+
+  _PTR(SObject) aFolder = GetClippingPlanesFolder(false);
+  if (aFolder) {
+    _PTR(ChildIterator) aIter = myStudy->NewChildIterator(aFolder);
+    int i;
+    for (i = 0; aIter->More(); aIter->Next(), i++) { // For each plane
+      _PTR(SObject) aSObject = aIter->Value();
+      VISU_CutPlaneFunction* aPlane = VISU_CutPlaneFunction::New();
+      aPlane->setPlaneObject(aSObject);
+      aPlane->setName(aSObject->GetName());
+      
+      _PTR(GenericAttribute) anAttr;
+      if (aSObject->FindAttribute(anAttr, "AttributeSequenceOfReal")) {
+       _PTR(AttributeSequenceOfReal) aArray(anAttr);
+       aPlane->SetOrigin(aArray->Value(1), aArray->Value(2), aArray->Value(3));
+       aPlane->SetNormal(aArray->Value(4), aArray->Value(5), aArray->Value(6));
+      }
+      if (aSObject->FindAttribute(anAttr, "AttributeInteger")) {
+       _PTR(AttributeInteger) aFlag(anAttr);
+       aPlane->setAuto(aFlag->Value() == 1);
+      } else
+       aPlane->setAuto(false);
+
+      applyPlaneToAll(aPlane);
+      myPlanes->AddItem(aPlane);
+    }
+  }
+}
+
+
+void VISU_ClippingPlaneMgr::applyPlaneToAll(VISU_CutPlaneFunction* thePlane)
+{
+  _PTR(SComponent) aVisuSO = myStudy->FindComponent("VISU");
+  _PTR(ChildIterator) aChildIter = myStudy->NewChildIterator(aVisuSO);
+  for (aChildIter->InitEx(true); aChildIter->More(); aChildIter->Next()) {
+    _PTR(SObject) aSObject = aChildIter->Value();
+    CORBA::Object_var anObject = VISU::ClientSObjectToObject(aSObject);
+    if(VISU::Base_i* aBase = dynamic_cast<VISU::Base_i*>(VISU::GetServant(anObject).in())) {
+      VISU::Prs3d_i* aPrs;
+      if(aBase->GetType() == VISU::TCOLOREDPRS3DHOLDER){
+       CORBA::Object_var anObject = aBase->_this();
+       VISU::ColoredPrs3dHolder_var aHolder = VISU::ColoredPrs3dHolder::_narrow(anObject);
+       VISU::Prs3d_var aPrs3d = aHolder->GetDevice();
+       aPrs = dynamic_cast<VISU::Prs3d_i*>(VISU::GetServant(aPrs3d).in());
+      } else {
+       aPrs = dynamic_cast<VISU::Prs3d_i*>(aBase);
+      }
+      if (aPrs) {
+       if (!ContainsPlane(aPrs, thePlane)) {
+         if (thePlane->isAuto())
+           aPrs->AddClippingPlane(thePlane);
+         else {
+           string aPrsEntry = aPrs->GetEntry();
+           if (aPrsEntry.length() == 0) {
+             VISU::ColoredPrs3d_i* aColPrs = dynamic_cast<VISU::ColoredPrs3d_i*>(aPrs);
+             if (aColPrs)
+               aPrsEntry = aColPrs->GetHolderEntry();
+           }
+           
+           _PTR(SObject) aSObject = thePlane->getPlaneObject();
+           _PTR(ChildIterator) aRefIter = myStudy->NewChildIterator(aSObject);   
+           for (; aRefIter->More(); aRefIter->Next()) {
+             _PTR(SObject) aObj = aRefIter->Value();
+             _PTR(SObject) aRefPrsObject;
+             if (aObj->ReferencedObject(aRefPrsObject)) { // If it is referenced on current plane
+               if (aRefPrsObject->GetID() == aPrsEntry) {
+                 aPrs->AddClippingPlane(thePlane);
+               }
+             }
+           }
+         }
+       }
+      }
+    }
+  } 
+}
+
+//*************************************************************
+long VISU_ClippingPlaneMgr::CreateClippingPlane(double X,double  Y, double Z, 
+                                               double dX, double dY, double dZ, 
+                                               bool isAuto, const char* name)
+{
+  _PTR(SObject) aObjPtr = CreateClippingPlaneObject(X, Y, Z, dX, dY, dZ, isAuto, name);
+  return myPlanes->GetNumberOfItems() - 1;
+}
+
+
+//*************************************************************
+_PTR(SObject) VISU_ClippingPlaneMgr::CreateClippingPlaneObject(double X,double  Y, double Z, 
+                                                              double dX, double dY, double dZ, 
+                                                              bool isAuto, const char* name)
+{
+  _PTR(SObject) aPlaneObj;
+  if(!myStudy->GetProperties()->IsLocked()) {
+    _PTR(SObject) aFolder = GetClippingPlanesFolder(true);
+    if (aFolder) {
+      _PTR(StudyBuilder) aBuilder = myStudy->NewBuilder();
+      aPlaneObj = aBuilder->NewObject(aFolder);
+
+      // Save Name
+      _PTR(GenericAttribute) anAttr;
+      anAttr = aBuilder->FindOrCreateAttribute(aPlaneObj,"AttributeName");
+      _PTR(AttributeName) aName(anAttr);
+      aName->SetValue(name);
+
+      //Save Parameters
+      double aParams[6];
+      aParams[0] = X;
+      aParams[1] = Y;
+      aParams[2] = Z;
+      aParams[3] = dX;
+      aParams[4] = dY;
+      aParams[5] = dZ;
+
+      anAttr = aBuilder->FindOrCreateAttribute(aPlaneObj,"AttributeSequenceOfReal");
+      _PTR(AttributeSequenceOfReal) aArray(anAttr);
+      if (aArray->Length() == 6) {
+       for (int i = 0; i < 6; i++)
+         aArray->ChangeValue(i+1, aParams[i]);
+      } else {
+       for (int i = 0; i < 6; i++)
+         aArray->Add(aParams[i]);
+      }
+      // Save Bool Flag
+      anAttr = aBuilder->FindOrCreateAttribute(aPlaneObj,"AttributeInteger");
+      _PTR(AttributeInteger) aFlag(anAttr);
+      aFlag->SetValue(isAuto? 1 : 0);
+
+      vtkSmartPointer<VISU_CutPlaneFunction> aPlane = VISU_CutPlaneFunction::New();
+      aPlane->Delete(); //vtkSmartPointer specific
+      aPlane->setPlaneObject(aPlaneObj);
+      aPlane->SetOrigin(X, Y, Z);
+      aPlane->SetNormal(dX, dY, dZ);
+      aPlane->setName(name);
+      aPlane->setAuto(isAuto);
+      applyPlaneToAll(aPlane);
+      myPlanes->AddItem(aPlane.GetPointer());
+    }
+  }
+  return aPlaneObj;
+}
+  
+
+//*************************************************************
+void VISU_ClippingPlaneMgr::EditClippingPlane(long id, double X,double  Y, double Z, 
+                                             double dX, double dY, double dZ, 
+                                             bool isAuto, const char* name)
+{
+  VISU_CutPlaneFunction* aPlane = GetClippingPlane(id);
+  if (aPlane != NULL) {
+    _PTR(SObject) aSObj = aPlane->getPlaneObject();
+    aPlane->SetOrigin(X, Y, Z);
+    aPlane->SetNormal(dX, dY, dZ);
+    aPlane->setName(name);
+    aPlane->setAuto(isAuto);
+
+    if(!myStudy->GetProperties()->IsLocked()) {
+      _PTR(GenericAttribute) anAttr;
+      if (aSObj->FindAttribute(anAttr, "AttributeSequenceOfReal")) {
+       _PTR(AttributeSequenceOfReal) aArray(anAttr);
+       aArray->ChangeValue(1, X);
+       aArray->ChangeValue(2, Y);
+       aArray->ChangeValue(3, Z);
+       aArray->ChangeValue(4, dX);
+       aArray->ChangeValue(5, dY);
+       aArray->ChangeValue(6, dZ);
+      }
+      if (aSObj->FindAttribute(anAttr, "AttributeInteger")) {
+       _PTR(AttributeInteger) aFlag(anAttr);
+       aFlag->SetValue(isAuto? 1 : 0);
+      }
+      if (aSObj->FindAttribute(anAttr, "AttributeName")) {
+       _PTR(AttributeName) aName(anAttr);
+       aName->SetValue(name);
+      }
+      // Remove references on presentations if it becomes Auto plane
+      _PTR(SObject) aPlaneSObj = aPlane->getPlaneObject();
+      if (aPlane->isAuto()) {
+       _PTR(ChildIterator) aIter = myStudy->NewChildIterator(aPlaneSObj);
+       _PTR(StudyBuilder) aBuilder = myStudy->NewBuilder();
+       for (; aIter->More(); aIter->Next()) {
+         _PTR(SObject) aObj = aIter->Value();
+         aBuilder->RemoveObject(aObj);
+       }
+      } 
+    }
+  }
+}
+
+
+
+//*************************************************************
+  /* Returns clipping plane by its Id */
+VISU_CutPlaneFunction* VISU_ClippingPlaneMgr::GetClippingPlane(long id)
+{
+  if ((id < 0) || (id >= GetClippingPlanesNb()))
+    return NULL;
+  return (VISU_CutPlaneFunction*) myPlanes->GetItemAsObject(id);
+}
+
+//*************************************************************
+  /* Returns -1 if Plane is not exists */
+int VISU_ClippingPlaneMgr::GetPlaneId(VISU_CutPlaneFunction* thePlane)
+{
+  int aTag = thePlane->getPlaneObject()->Tag();
+  int aRes = -1;
+  VISU_CutPlaneFunction* aPlane;
+  for (int i = 0; i < GetClippingPlanesNb(); i++) {
+    aPlane = GetClippingPlane(i);
+    if (aPlane->getPlaneObject()->Tag() == aTag) {
+      aRes = i;
+      break;
+    }
+  }
+  return aRes;
+}
+
+  
+//*************************************************************
+  /* Deletes clipping plane by its Id */
+bool VISU_ClippingPlaneMgr::DeleteClippingPlane(long id)
+{
+  _PTR(SObject) aFolder = GetClippingPlanesFolder(false);
+  if (aFolder) {
+    VISU_CutPlaneFunction* aPlane = GetClippingPlane(id);
+    if (aPlane != NULL) {
+      _PTR(SComponent) aVisuSO = myStudy->FindComponent("VISU");
+      _PTR(ChildIterator) aChildIter = myStudy->NewChildIterator(aVisuSO);
+      for (aChildIter->InitEx(true); aChildIter->More(); aChildIter->Next()) {
+       _PTR(SObject) aSObject = aChildIter->Value();
+       CORBA::Object_var anObject = VISU::ClientSObjectToObject(aSObject);
+       if(VISU::Base_i* aBase = dynamic_cast<VISU::Base_i*>(VISU::GetServant(anObject).in())) {
+         VISU::Prs3d_i* aPrs;
+         if(aBase->GetType() == VISU::TCOLOREDPRS3DHOLDER){
+           CORBA::Object_var anObject = aBase->_this();
+           VISU::ColoredPrs3dHolder_var aHolder = VISU::ColoredPrs3dHolder::_narrow(anObject);
+           VISU::Prs3d_var aPrs3d = aHolder->GetDevice();
+           aPrs = dynamic_cast<VISU::Prs3d_i*>(VISU::GetServant(aPrs3d).in());
+         } else
+           aPrs = dynamic_cast<VISU::Prs3d_i*>(aBase);
+
+         if (aPrs) {
+           if (ContainsPlane(aPrs, aPlane)) {
+             short aTag1 = aPlane->getPlaneObject()->Tag();
+             for (int j = aPrs->GetNumberOfClippingPlanes()-1; j > -1; j--) {
+               VISU_CutPlaneFunction* aPln = dynamic_cast<VISU_CutPlaneFunction*>
+                 (aPrs->GetClippingPlane(j));
+               if (aPln) {
+                 short aTag2 = aPln->getPlaneObject()->Tag();
+                 if (aTag1 == aTag2) {
+                   aPrs->RemoveClippingPlane(j);
+                   break;
+                 }
+               }
+             }
+           }
+         }
+       }
+      }   
+      _PTR(SObject) aSObj = aPlane->getPlaneObject();
+      if (aSObj) {
+       _PTR(StudyBuilder) aBuilder = myStudy->NewBuilder();
+       aBuilder->RemoveObject(aSObj);
+      }
+      myPlanes->RemoveItem(id);
+      return true;
+    }
+  }
+  return false;
+}
+
+//*************************************************************
+bool VISU_ClippingPlaneMgr::ContainsPlane(VISU::Prs3d_ptr thePrs, VISU_CutPlaneFunction* thePlane)
+{
+  VISU::Prs3d_i* aPrs = dynamic_cast<VISU::Prs3d_i*>(VISU::GetServant(thePrs).in());
+  return ContainsPlane(aPrs, thePlane);
+}
+
+//*************************************************************
+bool VISU_ClippingPlaneMgr::ContainsPlane(VISU::Prs3d_i* thePrs, VISU_CutPlaneFunction* thePlane)
+{
+  VISU::Prs3d_i* aPrs = thePrs;
+  if (thePrs->GetType() == VISU::TCOLOREDPRS3DHOLDER) {
+    VISU::ColoredPrs3dHolder_i* aHolder = dynamic_cast<VISU::ColoredPrs3dHolder_i*>(thePrs);
+    if (!aHolder) return false;
+    aPrs = aHolder->GetPrs3dDevice();
+  }
+  string aEntry = thePlane->getPlaneObject()->GetID();
+  for (int i = 0; i < thePrs->GetNumberOfClippingPlanes(); i++) {
+    VISU_CutPlaneFunction* aPlane = dynamic_cast<VISU_CutPlaneFunction*>(thePrs->GetClippingPlane(i));
+    if (aPlane) {
+      if (aPlane->getPlaneObject()->GetID() == aEntry) {
+       return true;
+      }
+    }
+  }
+  return false;
+}
+
+  
+//*************************************************************
+  /* Applyes a clipping plane with Id to presentation thePrs */
+bool VISU_ClippingPlaneMgr::ApplyClippingPlane(VISU::Prs3d_i* thePrs, long id) 
+{
+  //VISU::Prs3d_i* aPrs = dynamic_cast<VISU::Prs3d_i*>(VISU::GetServant(thePrs).in());
+  if (!thePrs) return false;
+
+  VISU_CutPlaneFunction* aPlane = GetClippingPlane(id);
+  if (!aPlane) return false;
+  if (!ContainsPlane(thePrs, aPlane)) {
+    thePrs->AddClippingPlane(aPlane);
+    if (!aPlane->isAuto()) {
+      string aEntry = thePrs->GetEntry();
+      if (aEntry.length() == 0) {
+       VISU::ColoredPrs3d_i* aColPrs = dynamic_cast<VISU::ColoredPrs3d_i*>(thePrs);
+       if (aColPrs)
+         aEntry = aColPrs->GetHolderEntry();
+      }
+      if(!myStudy->GetProperties()->IsLocked()) {
+       _PTR(StudyBuilder) aBuilder = myStudy->NewBuilder();
+       _PTR(SObject) aPrsSObj = myStudy->FindObjectID(aEntry);
+       _PTR(SObject) aSObject = aPlane->getPlaneObject();
+       _PTR(SObject) aNewObj = aBuilder->NewObject(aSObject);
+       aBuilder->Addreference(aNewObj, aPrsSObj);
+      }
+    }
+    return true;
+  }
+  return false;
+}
+
+//*************************************************************
+bool VISU_ClippingPlaneMgr::DetachClippingPlane(VISU::Prs3d_i* thePrs, long id) 
+{
+  VISU_CutPlaneFunction* aPlane = GetClippingPlane(id);
+  //VISU::Prs3d_i* aPrs = dynamic_cast<VISU::Prs3d_i*>(VISU::GetServant(thePrs).in());
+  if (aPlane && thePrs) {
+    if (ContainsPlane(thePrs, aPlane)) {
+      bool isRemoved = false;
+      short aTag1 = aPlane->getPlaneObject()->Tag();
+      for (int j = thePrs->GetNumberOfClippingPlanes()-1; j > -1; j--) {
+       VISU_CutPlaneFunction* aPln = dynamic_cast<VISU_CutPlaneFunction*>
+         (thePrs->GetClippingPlane(j));
+       if (aPln) {
+         short aTag2 = aPln->getPlaneObject()->Tag();
+         if (aTag1 == aTag2) {
+           thePrs->RemoveClippingPlane(j);
+           isRemoved = true;
+           break;
+         }
+       }
+      }
+      if(!myStudy->GetProperties()->IsLocked()) {
+       _PTR(SObject) aSObject = aPlane->getPlaneObject();
+       _PTR(StudyBuilder) aBuilder = myStudy->NewBuilder();
+
+       string aEntry = thePrs->GetEntry();
+       if (aEntry.length() == 0) {
+         VISU::ColoredPrs3d_i* aColPrs = dynamic_cast<VISU::ColoredPrs3d_i*>(thePrs);
+         if (aColPrs)
+           aEntry = aColPrs->GetHolderEntry();
+       }
+       _PTR(ChildIterator) aIter = myStudy->NewChildIterator(aSObject);
+       for (; aIter->More(); aIter->Next()) {
+         _PTR(SObject) aRefObj = aIter->Value();
+         if(aRefObj) {
+           _PTR(SObject) aRefPrsObject;
+           if (aRefObj->ReferencedObject(aRefPrsObject)) {
+             if (aRefPrsObject->GetID() == aEntry) {
+               aBuilder->RemoveObject(aRefObj);
+               break;
+             }
+           }
+         }
+       }
+      }
+      return isRemoved;
+    }
+  }
+  return false;
+}
+
+  
+//*************************************************************
+  /* Get number of clipping planes */
+long VISU_ClippingPlaneMgr::GetClippingPlanesNb() 
+{
+  return myPlanes->GetNumberOfItems();
+}
+
+
+//*************************************************************
+_PTR(SObject) VISU_ClippingPlaneMgr::GetClippingPlanesFolder(bool toCreate)
+{
+  _PTR(SObject) aFolder;
+  _PTR(SComponent) aVisuSO = myStudy->FindComponent("VISU");
+  if (!aVisuSO) return aFolder;
+
+  aFolder = myStudy->FindObject(CLIP_PLANES_FOLDER);
+  if (!aFolder && toCreate) {
+    _PTR(StudyBuilder) aBuilder = myStudy->NewBuilder();
+    aFolder = aBuilder->NewObject(aVisuSO);
+    
+    _PTR(GenericAttribute) anAttr;
+    anAttr = aBuilder->FindOrCreateAttribute(aFolder,"AttributeName");
+    _PTR(AttributeName) aName(anAttr);
+    aName->SetValue(CLIP_PLANES_FOLDER);
+  }
+  return aFolder;
+}
+
+
+
+
+//****************************************************************
+//****************************************************************
+//****************************************************************
+VISU_CutPlaneFunction* VISU_CutPlaneFunction::New()
+{
+  return new VISU_CutPlaneFunction();
+}
+
+void VISU_CutPlaneFunction::setActive(bool theActive) 
+{ 
+  myIsActive = theActive; 
+  Modified();
+}
+
+double VISU_CutPlaneFunction::EvaluateFunction(double x[3])
+{
+  if (myIsActive)
+    return vtkPlane::EvaluateFunction(x);
+  else 
+    return -1;
+}
+
+double VISU_CutPlaneFunction::EvaluateFunction(double x, double y, double z)
+{
+  if (myIsActive)
+    return vtkPlane::EvaluateFunction(x,y,z);
+  else 
+    return -1;
+}
+  
+VISU_CutPlaneFunction::VISU_CutPlaneFunction():
+  myIsActive(true)
+{
+}
+
+VISU_CutPlaneFunction::~VISU_CutPlaneFunction()
+{
+}
+
diff --git a/src/VISU_I/VISU_ClippingPlaneMgr.hxx b/src/VISU_I/VISU_ClippingPlaneMgr.hxx
new file mode 100644 (file)
index 0000000..33dbbcd
--- /dev/null
@@ -0,0 +1,130 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+//  File   : VISU_ClippingPlaneMgr.hxx
+//  Author : VSV
+//  Module : VISU
+//
+#ifndef _VISU_ClippingPlane_H_
+#define _VISU_ClippingPlane_H_
+
+#include "VISU_I.hxx"
+#include "VISUConfig.hh"
+#include "SALOME_Component_i.hxx"
+#include "VISU_ColoredPrs3d_i.hh"
+
+#include <vtkPlane.h>
+#include <string>
+
+class vtkImplicitFunctionCollection;
+
+
+class VISU_I_EXPORT VISU_CutPlaneFunction: public vtkPlane
+{
+public:
+  static VISU_CutPlaneFunction* New();
+
+  vtkTypeMacro(VISU_CutPlaneFunction, vtkPlane);
+
+  virtual double EvaluateFunction(double x[3]);
+  virtual double EvaluateFunction(double x, double y, double z);
+
+  void setActive(bool theActive);
+  bool isActive() const { return myIsActive; }
+
+  void setPlaneObject(_PTR(SObject) aSOPlane) { mySObject = aSOPlane; }
+  _PTR(SObject) getPlaneObject() const { return mySObject; }
+
+  void setName(std::string theName) { myName = theName; }
+  std::string getName() const { return myName; }
+  
+  void setAuto(bool isAuto) { myIsAuto = isAuto; }
+  bool isAuto() const { return myIsAuto; }
+
+protected:
+  VISU_CutPlaneFunction();
+  ~VISU_CutPlaneFunction();
+
+private:
+  bool myIsActive;
+  _PTR(SObject) mySObject;
+  std::string myName;
+  bool myIsAuto;
+};
+
+
+
+class VISU_I_EXPORT VISU_ClippingPlaneMgr {
+public:
+  VISU_ClippingPlaneMgr();
+  ~VISU_ClippingPlaneMgr();
+
+  void SetStudy(_PTR(Study) theStudy);
+
+
+  long CreateClippingPlane(double X,double  Y, double Z, 
+                          double dX, double dY, double dZ, 
+                          bool isAuto, const char* name);
+
+  void EditClippingPlane(long id, double X,double  Y, double Z, 
+                          double dX, double dY, double dZ, 
+                          bool isAuto, const char* name);
+
+  _PTR(SObject) CreateClippingPlaneObject(double X,double  Y, double Z, 
+                                         double dX, double dY, double dZ, 
+                                         bool isAuto, const char* name);
+  
+  /* Returns clipping plane by its Id */
+  VISU_CutPlaneFunction* GetClippingPlane(long id);
+
+  /* Returns -1 if Plane is not exists */
+  int GetPlaneId(VISU_CutPlaneFunction* thePlane);
+  
+  /* Deletes clipping plane by its Id */
+  bool DeleteClippingPlane(long id);
+  
+  /* Applyes a clipping plane with Id to presentation thePrs */
+  bool ApplyClippingPlane(VISU::Prs3d_i* thePrs, long id);
+
+  bool DetachClippingPlane(VISU::Prs3d_i* thePrs, long id);
+  
+  /* Get number of clipping planes */
+  long GetClippingPlanesNb();
+
+  _PTR(SObject) GetClippingPlanesFolder(bool toCreate);
+
+  static bool ContainsPlane(VISU::Prs3d_ptr thePrs, VISU_CutPlaneFunction* thePlane);
+  static bool ContainsPlane(VISU::Prs3d_i* thePrs, VISU_CutPlaneFunction* thePlane);
+
+  vtkImplicitFunctionCollection* GetPlanesList() const { return myPlanes; }
+
+
+private:
+  void applyPlaneToAll(VISU_CutPlaneFunction* thePlane);
+
+
+  _PTR(Study) myStudy;
+
+  vtkImplicitFunctionCollection* myPlanes;
+};
+
+#endif
index 45ace2f3cccfbeea2f8d5b5b54522387f7adebc4..ae32d74a0d325fddee24954940851e14d78ddd2f 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_ColoredPrs3dCache_i.cc
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #include "VISU_ColoredPrs3dCache_i.hh"
 
 #include "VISU_ColoredPrs3dHolder_i.hh"
 
 #include "VISU_PipeLine.hxx"
 
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 
 #include "VTKViewer_Algorithm.h"
 #include "SVTK_Functor.h"
+#include "SVTK_ViewWindow.h"
 
-#include "VVTK_ViewWindow.h"
 #include "SUIT_ResourceMgr.h"
 
 #include <vtkRenderWindow.h>
 
+#include <QtGlobal>
+
+#include "utilities.h"
+
 #ifdef _DEBUG_
 static int MYDEBUG = 0;
 #else
 static int MYDEBUG = 0;
 #endif
 
+using namespace std;
+
 namespace
 {
   //----------------------------------------------------------------------------
@@ -134,7 +140,7 @@ namespace
       if( aHolderIter->first == theActiveHolderEntry )
        continue;
       const VISU::TLastVisitedPrsList& aPrsList = aHolderIter->second;
-      anIteration = QMAX( aPrsList.size() - 1, anIteration );
+      anIteration = qMax( (int)aPrsList.size() - 1, anIteration );
     }
 
     // To estimate what amount of memory can be obtained
@@ -345,7 +351,7 @@ VISU::ColoredPrs3dCache_i
       theRequiredMemory = int( aMemoryUsed + aMemoryNeeded ) + 1;
 
       size_t aMb = 1024 * 1024;
-      double aFreeMemory = double(VISU_PipeLine::GetAvailableMemory(2048*aMb)) / double(aMb);
+      double aFreeMemory = double(VISU_PipeLine::GetAvailableMemory(8192*aMb)) / double(aMb);
       anEnlargeType = aMemoryNeeded < aFreeMemory ?
        VISU::ColoredPrs3dCache::ENLARGE : VISU::ColoredPrs3dCache::IMPOSSIBLE;
     }
@@ -361,6 +367,15 @@ VISU::ColoredPrs3dCache_i
 {
   std::string aFolderName = VISU::ColoredPrs3dCache_i::GetFolderName();
   SALOMEDS::SObject_var aSObject = theStudy->FindObject(aFolderName.c_str());
+  if (CORBA::is_nil(aSObject)) {
+    aSObject = theStudy->FindObject("3D Cache System");
+    if (!CORBA::is_nil(aSObject)) {
+      SALOMEDS::StudyBuilder_var aBuilder = theStudy->NewBuilder();
+      SALOMEDS::GenericAttribute_var anAttr = aBuilder->FindOrCreateAttribute( aSObject, "AttributeName" );
+      SALOMEDS::AttributeName_var aNameAttr = SALOMEDS::AttributeName::_narrow( anAttr );
+      aNameAttr->SetValue( GetFolderName().c_str() );
+    }
+  }
   if(!CORBA::is_nil(aSObject)){
     CORBA::Object_var anObject = aSObject->GetObject();
     VISU::ColoredPrs3dCache_var aCache = VISU::ColoredPrs3dCache::_narrow(anObject);
@@ -388,13 +403,13 @@ VISU::ColoredPrs3dCache_i
 ::CreateHolder(VISU::VISUType theType,
               const VISU::ColoredPrs3dHolder::BasicInput& theInput)
 {
-  if(MYDEBUG) cout << "CreateHolder " << theType << endl;
+  if(MYDEBUG) MESSAGE ("CreateHolder "<<theType);
   CORBA::Float aRequiredMemory = 0.0;
   if(IsPossible(theType, theInput, aRequiredMemory, "")){
     if(VISU::ColoredPrs3d_i* aColoredPrs3d = CreateColoredPrs3d(theType, theInput)){
       VISU::ColoredPrs3dHolder_i* aHolder = new VISU::ColoredPrs3dHolder_i(*this);
       std::string aComment = std::string("myComment=") + aColoredPrs3d->GetComment();
-      std::string aName = aColoredPrs3d->GenerateName().latin1();
+      std::string aName = (const char*)aColoredPrs3d->GenerateName().toLatin1();
       aHolder->PublishInStudy(aName, aColoredPrs3d->GetIconName(), aComment);
       RegisterInHolder(aColoredPrs3d, aHolder->GetEntry());
       if( aRequiredMemory > 1.0 / VTK_LARGE_FLOAT )
@@ -440,7 +455,7 @@ VISU::ColoredPrs3dCache_i
     return;
 
   size_t aMb = 1024 * 1024;
-  double aFreeMemory = double(VISU_PipeLine::GetAvailableMemory(2048*aMb)) / double(aMb);
+  double aFreeMemory = double(VISU_PipeLine::GetAvailableMemory(8192*aMb)) / double(aMb);
   CORBA::Float aMemoryUsed = GetDeviceMemorySize();
   CORBA::Float aMemoryNeeded = theMemorySize - aMemoryUsed;
   if( aMemoryNeeded > aFreeMemory )
@@ -473,7 +488,8 @@ std::string
 VISU::ColoredPrs3dCache_i
 ::GetFolderName() 
 { 
-  return "3D Cache System"; 
+  //return "3D Cache System"; 
+  return "Presentations"; 
 }
 
 //----------------------------------------------------------------------------
@@ -500,7 +516,7 @@ VISU::ColoredPrs3dCache_i
 ::RegisterInHolder(VISU::ColoredPrs3d_i* thePrs3d,
                   const std::string& theHolderEntry)
 {
-  if(MYDEBUG) cout << "RegisterInHolder " << theHolderEntry.c_str() << " " << thePrs3d << endl;
+  if(MYDEBUG) MESSAGE("RegisterInHolder "<<theHolderEntry.c_str()<<" "<<thePrs3d);
   if(thePrs3d){
     TPrs3dPtr aPrs3d(thePrs3d);
     myHolderMap[theHolderEntry].push_front(aPrs3d);  
@@ -538,7 +554,7 @@ VISU::ColoredPrs3dCache_i
 ::GetLastVisitedPrs(VISU::ColoredPrs3dHolder_i* theHolder)
 {
   const TLastVisitedPrsList& aList = GetLastVisitedPrsList(theHolder);
-  if(MYDEBUG) cout << "GetLastVisitedPrs " << theHolder->GetEntry().c_str() << " " << aList.size() << endl;
+  if(MYDEBUG) MESSAGE("GetLastVisitedPrs " << theHolder->GetEntry().c_str() << " " << aList.size() );
   if( !aList.empty() )
     return aList.front();
   return VISU::TPrs3dPtr();
@@ -620,7 +636,7 @@ VISU::ColoredPrs3dCache_i
                       const VISU::ColoredPrs3dHolder::BasicInput& theInput,
                       VISU::View3D_ptr theView3D)
 {
-  if(MYDEBUG) cout << "VISU::ColoredPrs3dCache_i::UpdateLastVisitedPrs" << endl;
+  if(MYDEBUG) MESSAGE( "VISU::ColoredPrs3dCache_i::UpdateLastVisitedPrs" );
   TPrs3dPtr aPrs3d;
   try{
     TPrs3dPtr aLastVisitedPrs3d = GetLastVisitedPrs(theHolder);
@@ -631,12 +647,12 @@ VISU::ColoredPrs3dCache_i
     CORBA::Float aRequiredMemory = 0.0;
     if(aPrs3d = FindPrsByInput(aLastVisitedPrsList, theInput)){
       aLastVisitedPrsList.push_front(aPrs3d);
-      if(MYDEBUG) cout << "FindPrsByInput " << aPrs3d << endl;
+      if(MYDEBUG) MESSAGE( "FindPrsByInput " << aPrs3d );
     }else if(anIsCheckPossible && IsPossible(aPrsType, theInput, aRequiredMemory, aHolderEntry)){
       if( aRequiredMemory > 1.0 / VTK_LARGE_FLOAT )
        ClearMemory(aRequiredMemory, aHolderEntry);
       aPrs3d = CreatePrs(aPrsType, theInput, theHolder);
-      if(MYDEBUG) cout << "Created " << aPrs3d << endl;
+      if(MYDEBUG) MESSAGE( "Created " << aPrs3d );
     }else{
       aPrs3d = aLastVisitedPrsList.back();
       aPrs3d->SetResultObject(theInput.myResult);
@@ -646,12 +662,21 @@ VISU::ColoredPrs3dCache_i
       aPrs3d->SetTimeStampNumber(theInput.myTimeStampNumber);
       aLastVisitedPrsList.pop_back();
       aLastVisitedPrsList.push_front(aPrs3d);
-      if(MYDEBUG) cout << "Move only " << aPrs3d << endl;
+      if(MYDEBUG) MESSAGE( "Move only " << aPrs3d );
     }
     //if(MYDEBUG) PrintCache();
     
     aPrs3d->SameAs(thePrs);
-    aPrs3d->UpdateActors();
+    
+    // special case for deformed shape
+    VISU::DeformedShapeAndScalarMap_i* dShape =
+      dynamic_cast<VISU::DeformedShapeAndScalarMap_i*>( aPrs3d.get() );
+    if ( dShape && dShape->GetScalarTimeStampNumber() != theInput.myTimeStampNumber )
+    {
+      dShape->SetScalarField( dShape->GetScalarEntity(),
+        dShape->GetScalarFieldName(), theInput.myTimeStampNumber );            
+    }                    
+
     if(CORBA::is_nil(theView3D))
       return false;
 
@@ -695,6 +720,8 @@ VISU::ColoredPrs3dCache_i
 
            aPrs3d->SetActiveState(true);
          }
+
+         aPrs3d->UpdateActors();
          ProcessVoidEvent(new TRenderEvent(aViewWindow));
          //aViewWindow->getRenderWindow()->Render();
          return true;
@@ -759,8 +786,8 @@ VISU::ColoredPrs3dCache_i
 {
   if(MYDEBUG)
   {
-    cout << "--------------CACHE-----------------" << endl;
-    cout << "Cache memory - " << GetMemorySize() << " Mb" << endl;
+    MESSAGE_BEGIN(std::endl << "--------------CACHE-----------------" );
+    MESSAGE_ADD(std::endl << "Cache memory - " << GetMemorySize() << " Mb" );
     TColoredPrs3dHolderMap::const_iterator aHolderIter = myHolderMap.begin();
     TColoredPrs3dHolderMap::const_iterator aHolderIterEnd = myHolderMap.end();
     for(; aHolderIter != aHolderIterEnd; aHolderIter++){
@@ -768,19 +795,18 @@ VISU::ColoredPrs3dCache_i
       TLastVisitedPrsList::const_iterator aPrsIter = aPrsList.begin();
       TLastVisitedPrsList::const_iterator aPrsIterEnd = aPrsList.end();
 
-      cout << "--------------------------" << endl;
-      cout << "Holder - " << aHolderIter->first.c_str() << endl;
-      cout << "Size   - " << aPrsList.size() << endl;
+      MESSAGE_ADD(std::endl << "--------------------------" );
+      MESSAGE_ADD(std::endl <<  "Holder - " << aHolderIter->first.c_str() );
+      MESSAGE_ADD(std::endl <<  "Size   - " << aPrsList.size() );
       for(; aPrsIter != aPrsIterEnd; aPrsIter++)
        if(TPrs3dPtr aPrs3d = *aPrsIter)
        {
-         cout << aPrs3d << " (" << aPrs3d->GetMemorySize() << " Mb)";
+         MESSAGE_ADD(std::endl <<  aPrs3d << " (" << aPrs3d->GetMemorySize() << " Mb)");
          if(aPrsIter == aPrsList.begin())
-           cout << " (device)";
-         cout << endl;
+           MESSAGE_ADD( " (device)" );
        }
     }
-    cout << "------------------------------------" << endl;
+    MESSAGE_END(std::endl <<  "------------------------------------" );
   }
 }
 
index ead208074d4678cd5cc7cef1a1b6cdd7829908e4..61c6fc09a6743f2637be6b9e25e0a496471fa142 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_ColoredPrs3dCache_i.hh
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #ifndef VISU_ColoredPrs3dCache_i_HeaderFile
 #define VISU_ColoredPrs3dCache_i_HeaderFile
 
+#include "VISU_I.hxx"
+
 #include "VISU_ColoredPrs3dFactory.hh"
 
 #include "SALOME_GenericObjPointer.hh"
@@ -103,7 +105,7 @@ namespace VISU
    * This interface is responsible for memory management of 3d presentations.
    * One cache corresponds to one study.
    */
-  class ColoredPrs3dCache_i : public virtual POA_VISU::ColoredPrs3dCache,
+  class VISU_I_EXPORT ColoredPrs3dCache_i : public virtual POA_VISU::ColoredPrs3dCache,
                              public virtual SALOME::GenericObj_i,
                              public virtual RemovableObject_i
   {
index cff778da6a6851ba8d6241340e742e113326750c..bb3a816a1dab99a4bda8d6b60009e72095a28253 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_ColoredPrs3dCache_i.cc
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #include "VISU_ColoredPrs3dFactory.hh"
 #include "VISU_ColoredPrs3dCache_i.hh"
 
@@ -44,6 +44,7 @@
 //static int MYDEBUG = 0;
 #endif
 
+using namespace std;
 
 namespace VISU
 {
@@ -97,7 +98,8 @@ namespace VISU
     case TDEFORMEDSHAPE:
       return VISU::CreatePrs3dByEnum<TDEFORMEDSHAPE>(theStudy, thePublishInStudyMode);
     case TSCALARMAPONDEFORMEDSHAPE:
-      return VISU::CreatePrs3dByEnum<TSCALARMAPONDEFORMEDSHAPE>(theStudy, thePublishInStudyMode);
+    case TDEFORMEDSHAPEANDSCALARMAP:
+      return VISU::CreatePrs3dByEnum<TDEFORMEDSHAPEANDSCALARMAP>(theStudy, thePublishInStudyMode);
     case TISOSURFACES:
       return VISU::CreatePrs3dByEnum<TISOSURFACES>(theStudy, thePublishInStudyMode);
     case TSTREAMLINES:
@@ -201,7 +203,8 @@ namespace VISU
       aMemory = CheckIsPossible<TDEFORMEDSHAPE>(theInput, theMemoryCheck);
       break;
     case TSCALARMAPONDEFORMEDSHAPE:
-      aMemory = CheckIsPossible<TSCALARMAPONDEFORMEDSHAPE>(theInput, theMemoryCheck);
+    case TDEFORMEDSHAPEANDSCALARMAP:
+      aMemory = CheckIsPossible<TDEFORMEDSHAPEANDSCALARMAP>(theInput, theMemoryCheck);
       break;
     case TISOSURFACES:
       aMemory = CheckIsPossible<TISOSURFACES>(theInput, theMemoryCheck);
index eae438dde6f3c32cd0e1d90887a1461728d257cc..4b5c2b41cf6836fc3a0c817dc1e5bfdd1901b0e1 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_ColoredPrs3dCache_i.hh
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #ifndef VISU_ColoredPrs3dFactory_HeaderFile
 #define VISU_ColoredPrs3dFactory_HeaderFile
 
@@ -33,7 +33,7 @@
 
 #include "VISU_I.hxx"
 #include "SALOME_GenericObjPointer.hh"
-#include "VISU_ScalarMapOnDeformedShape_i.hh"
+#include "VISU_DeformedShapeAndScalarMap_i.hh"
 #include "VISU_Plot3D_i.hh"
 #include "VISU_GaussPoints_i.hh"
 #include "VISU_StreamLines_i.hh"
@@ -52,7 +52,8 @@ namespace VISU
   namespace TL
   {
     //----------------------------------------------------------------------------
-    typedef TList<ScalarMapOnDeformedShape_i,
+    typedef TList<DeformedShapeAndScalarMap_i,
+                 TList<DeformedShapeAndScalarMap_i,
                  TList<DeformedShape_i,
                        TList<StreamLines_i,
                              TList<GaussPoints_i,
@@ -62,11 +63,12 @@ namespace VISU
                                                      TList<CutLines_i,
                                                            TList<Vectors_i,
                                                                  TList<Plot3D_i, 
-                                                                       TNullType> > > > > > > > > >
+                                                                       TNullType> > > > > > > > > > >
     TColoredPrs3dTypeList;
     
 
     typedef TList<TInt2Type<TSCALARMAPONDEFORMEDSHAPE>,
+                 TList<TInt2Type<TDEFORMEDSHAPEANDSCALARMAP>,
                  TList<TInt2Type<TDEFORMEDSHAPE>, 
                        TList<TInt2Type<TSTREAMLINES>,
                              TList<TInt2Type<TGAUSSPOINTS>,
@@ -76,7 +78,7 @@ namespace VISU
                                                      TList<TInt2Type<TCUTLINES>,
                                                            TList<TInt2Type<TVECTORS>,
                                                                  TList<TInt2Type<TPLOT3D>, 
-                                                                       TNullType> > > > > > > > > >
+                                                                       TNullType> > > > > > > > > > >
     TColoredPrs3dEnumList;
     
 
index 8ee44542c1ba69510e7ffbc5b9cde435fd1bc094..539a7912763aec964b6b8dd2484f465b99029a4b 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_ColoredPrs3dHolder_i.cc
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #include "VISU_ColoredPrs3dHolder_i.hh"
 
 #include "VISU_ColoredPrs3dCache_i.hh"
 #include "VISU_ColoredPrs3d_i.hh"
 
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 
 using namespace VISU;
 using namespace std;
@@ -40,6 +40,8 @@ static int MYDEBUG = 0;
 static int MYDEBUG = 0;
 #endif
 
+using namespace std;
+
 //---------------------------------------------------------------
 int VISU::ColoredPrs3dHolder_i::myNbHolders = 0;
 
index 840d537e459a190d94a7d2fbd1d2484a059876d2..40859e8cb46196286f8267e8a0295a0d04d68832 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_ColoredPrs3dHolder_i.hxx
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #ifndef VISU_ColoredPrs3dHolder_i_HeaderFile
 #define VISU_ColoredPrs3dHolder_i_HeaderFile
 
+#include "VISU_I.hxx"
 #include "VISU_PrsObject_i.hh"
 
 #include "SALOME_GenericObj_i.hh"
@@ -41,7 +42,7 @@ namespace VISU
    * created on fields. It is publishing in the object browser in a separate folder
    * and can be controled by viewer's slider.
    */
-  class ColoredPrs3dHolder_i : public virtual POA_VISU::ColoredPrs3dHolder,
+  class VISU_I_EXPORT ColoredPrs3dHolder_i : public virtual POA_VISU::ColoredPrs3dHolder,
                               public virtual SALOME::GenericObj_i,
                               public virtual PrsObject_i
   {
index 4eb39df853d81342acc2a73510ee99b4ad4e7ffe..a09c1cc1e15f14416097039dbb82d6b7fa51bab0 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_PrsObject_i.cxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_ColoredPrs3d_i.hh"
 #include "VISU_Prs3dUtils.hh"
 
@@ -33,7 +33,7 @@
 #include "VISU_Convertor.hxx"
 
 #include "SUIT_ResourceMgr.h"
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 
 #include <strstream>
 #include <vtkMapper.h>
@@ -46,6 +46,7 @@ static int MYDEBUG = 0;
 static int MYDEBUG = 0;
 #endif
 
+using namespace std;
 
 //---------------------------------------------------------------
 namespace
@@ -86,8 +87,10 @@ namespace VISU
   {
     if(!theResult->IsMinMaxDone())
       theResult->GetInput()->BuildMinMax();
-    
-    return theField->GetMinMax(theCompID);
+    if(theField->myIsELNO)
+      return theField->GetMinMax(theCompID);
+    else
+      return theField->GetAverageMinMax(theCompID);
   }
 
   //---------------------------------------------------------------
@@ -168,11 +171,24 @@ namespace VISU
 //---------------------------------------------------------------
 VISU::ColoredPrs3d_i::
 ColoredPrs3d_i(EPublishInStudyMode thePublishInStudyMode) :
-  myPublishInStudyMode(thePublishInStudyMode),
+  myIsRestored(true),
+  myRestoringSObject( SALOMEDS::SObject::_nil() ),
+  myEntity( VISU::Entity( -1 ) ),
+  myPreviousEntity( VISU::Entity( -1 ) ),
+  myTimeStampNumber( -1 ),
+  myPreviousTimeStampNumber( -1 ),
   myIsTimeStampFixed(thePublishInStudyMode == EPublishUnderTimeStamp),
+  myPublishInStudyMode(thePublishInStudyMode),
+  myIsUnits( true ),
+  myNumberOfLabels( -1 ),
+  myOrientation( VISU::ColoredPrs3dBase::HORIZONTAL ),
+  //myPosition[2], myWidth, myHeight, myTitleWidth, myTitleHeight,
+  //myLabelWidth, myLabelHeight, myBarWidth, myBarHeight,
+  //myIsBoldTitle, myIsItalicTitle, myIsShadowTitle, myTitFontType, myTitleColor[3],
+  //myIsBoldLabel, myIsItalicLabel, myIsShadowLabel, myLblFontType, myLabelColor[3],
   myColoredPL(NULL),
   myIsFixedRange(false),
-  myIsRestored(true)
+  myIsDistributionVisible(false)
 {}
 
 //---------------------------------------------------------------
@@ -341,7 +357,7 @@ void
 VISU::ColoredPrs3d_i
 ::SetEntity(VISU::Entity theEntity)
 {
-  if(myEntity == theEntity)
+  if ( myEntity == theEntity )
     return;
 
   VISU::TSetModified aModified(this);
@@ -425,7 +441,7 @@ void
 VISU::ColoredPrs3d_i
 ::SetTimeStampNumber(CORBA::Long theTimeStampNumber)
 {
-  if(myTimeStampNumber == theTimeStampNumber)
+  if ( myTimeStampNumber == theTimeStampNumber )
     return;
 
   VISU::TSetModified aModified(this);
@@ -686,21 +702,24 @@ VISU::ColoredPrs3d_i
     SetNbColors(anOrigin->GetNbColors());
     
     SetUnitsVisible(anOrigin->IsUnitsVisible());
-    SetLabelsFormat(anOrigin->GetLabelsFormat());
-
+    SetIsDistributionVisible(anOrigin->GetIsDistributionVisible());
+    SetLabelsFormat( anOrigin->GetLabelsFormat() );
+    
     SetBarOrientation(anOrigin->GetBarOrientation());
     
     SetMinMaxController( anOrigin );
 
-    if(anOrigin->IsRangeFixed())
-      SetRange(anOrigin->GetMin(), anOrigin->GetMax());
+    if ( anOrigin->IsRangeFixed() )
+      SetRange( anOrigin->GetMin(), anOrigin->GetMax() );
     else
       SetSourceRange();
 
+    SetScalarFilterRange( anOrigin->GetScalarFilterMin(), anOrigin->GetScalarFilterMax() );
+    UseScalarFiltering( anOrigin->IsScalarFilterUsed() );
+
     SetPosition(anOrigin->GetPosX(), anOrigin->GetPosY());
     SetSize(anOrigin->GetWidth(), anOrigin->GetHeight());
-    SetRatios(anOrigin->GetTitleWidth(), anOrigin->GetTitleHeight(),
-             anOrigin->GetLabelWidth(), anOrigin->GetLabelHeight(),
+    SetRatios(anOrigin->GetTitleSize(), anOrigin->GetLabelSize(),
              anOrigin->GetBarWidth(), anOrigin->GetBarHeight());
     SetLabels(anOrigin->GetLabels());
 
@@ -710,14 +729,14 @@ VISU::ColoredPrs3d_i
     SetShadowTitle(anOrigin->IsShadowTitle());
     SetTitFontType(anOrigin->GetTitFontType());
     vtkFloatingPointType r,g,b;
-    anOrigin->GetTitleColor(&r,&g,&b);
+    anOrigin->GetTitleColor(r,g,b);
     SetTitleColor(r,g,b);
     
     SetBoldLabel(anOrigin->IsBoldLabel());
     SetItalicLabel(anOrigin->IsItalicLabel());
     SetShadowLabel(anOrigin->IsShadowLabel());
     SetLblFontType(anOrigin->GetLblFontType());
-    anOrigin->GetLabelColor(&r,&g,&b);
+    anOrigin->GetLabelColor(r,g,b);
     SetLabelColor(r,g,b);
 
     myIsTimeStampFixed = anOrigin->IsTimeStampFixed();
@@ -770,21 +789,74 @@ VISU::ColoredPrs3d_i
   return myColoredPL->GetScalarRange()[1];
 }
 
+
 //----------------------------------------------------------------------------
 void
 VISU::ColoredPrs3d_i
-::SetRange(CORBA::Double theMin, CORBA::Double theMax)
+::SetRange( CORBA::Double theMin, CORBA::Double theMax )
 {
   VISU::TSetModified aModified(this);
 
   vtkFloatingPointType aScalarRange[2] = {theMin, theMax};
   ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_ColoredPL, vtkFloatingPointType*>
                   (GetSpecificPL(), &VISU_ColoredPL::SetScalarRange, aScalarRange));
-
   UseFixedRange(true);
 }
 
 
+//----------------------------------------------------------------------------
+void
+VISU::ColoredPrs3d_i
+::SetScalarFilterRange( CORBA::Double theMin, CORBA::Double theMax )
+{
+  VISU::TSetModified aModified(this);
+
+  vtkFloatingPointType aScalarRange[ 2 ] = { theMin, theMax };
+  ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_ColoredPL, vtkFloatingPointType*>
+                  (GetSpecificPL(), &VISU_ColoredPL::SetScalarFilterRange, aScalarRange) );
+}
+
+
+//----------------------------------------------------------------------------
+CORBA::Double
+VISU::ColoredPrs3d_i
+::GetScalarFilterMin()
+{
+  vtkFloatingPointType aScalarRange[ 2 ];
+  GetSpecificPL()->GetScalarFilterRange( aScalarRange );
+
+  return aScalarRange[ 0 ];
+}
+
+
+//----------------------------------------------------------------------------
+CORBA::Double
+VISU::ColoredPrs3d_i
+::GetScalarFilterMax()
+{
+  vtkFloatingPointType aScalarRange[ 2 ];
+  GetSpecificPL()->GetScalarFilterRange( aScalarRange );
+
+  return aScalarRange[ 1 ];
+}
+
+
+//----------------------------------------------------------------------------
+CORBA::Boolean
+VISU::ColoredPrs3d_i
+::IsScalarFilterUsed()
+{
+  return myColoredPL->IsScalarFilterUsed();
+}
+
+//----------------------------------------------------------------------------
+void
+VISU::ColoredPrs3d_i
+::UseScalarFiltering( CORBA::Boolean theUseScalarFilter )
+{
+  return myColoredPL->UseScalarFiltering( theUseScalarFilter );
+}
+
 //----------------------------------------------------------------------------
 void
 VISU::ColoredPrs3d_i
@@ -797,7 +869,7 @@ VISU::ColoredPrs3d_i
     ProcessVoidEvent(new TVoidMemFunEvent<VISU_ColoredPL>
                     (GetSpecificPL(), &VISU_ColoredPL::SetSourceRange));
   }else{
-    vtkFloatingPointType aScalarRange[2] = {GetSourceMin(), GetSourceMax()};
+    vtkFloatingPointType aScalarRange[ 2 ] = {GetSourceMin(), GetSourceMax()};
     ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_ColoredPL, vtkFloatingPointType*>
                     (GetSpecificPL(), &VISU_ColoredPL::SetScalarRange, aScalarRange));
   }
@@ -831,82 +903,6 @@ VISU::ColoredPrs3d_i
 }
 
 
-//----------------------------------------------------------------------------
-struct TGetComponentMin: public SALOME_Event
-{
-  VISU::ColoredPrs3d_i* myColoredPrs3d;
-  vtkIdType myCompID;
-
-  typedef CORBA::Double TResult;
-  TResult myResult;
-  
-  TGetComponentMin( VISU::ColoredPrs3d_i* theColoredPrs3d,
-                   vtkIdType theCompID ):
-    myColoredPrs3d( theColoredPrs3d ),
-    myCompID( theCompID )
-  {}
-    
-  virtual
-  void
-  Execute()
-  {
-    VISU::PMinMaxController aMinMaxController = myColoredPrs3d->GetMinMaxController();
-    if ( aMinMaxController ) {
-      myResult = aMinMaxController->GetComponentMin( myCompID );
-    } else {
-      VISU::TMinMax aTMinMax = myColoredPrs3d->GetScalarField()->GetMinMax( myCompID );
-      myResult = aTMinMax.first;
-    }
-  }
-};
-
-
-//----------------------------------------------------------------------------
-vtkFloatingPointType 
-VISU::ColoredPrs3d_i
-::GetComponentMin(vtkIdType theCompID)
-{
-  return ProcessEvent( new TGetComponentMin( this, theCompID ) );
-}
-
-//----------------------------------------------------------------------------
-struct TGetComponentMax: public SALOME_Event
-{
-  VISU::ColoredPrs3d_i* myColoredPrs3d;
-  vtkIdType myCompID;
-
-  typedef CORBA::Double TResult;
-  TResult myResult;
-  
-  TGetComponentMax( VISU::ColoredPrs3d_i* theColoredPrs3d,
-                   vtkIdType theCompID ):
-    myColoredPrs3d( theColoredPrs3d ),
-    myCompID( theCompID )
-  {}
-    
-  virtual
-  void
-  Execute()
-  {
-    VISU::PMinMaxController aMinMaxController = myColoredPrs3d->GetMinMaxController();
-    if ( aMinMaxController ) {
-      myResult = aMinMaxController->GetComponentMax( myCompID );
-    } else {
-      VISU::TMinMax aTMinMax = myColoredPrs3d->GetScalarField()->GetMinMax( myCompID );
-      myResult = aTMinMax.second;
-    }
-  }
-};
-
-
-//----------------------------------------------------------------------------
-vtkFloatingPointType 
-VISU::ColoredPrs3d_i
-::GetComponentMax(vtkIdType theCompID)
-{
-  return ProcessEvent( new TGetComponentMax( this, theCompID ) );
-}
-
 //----------------------------------------------------------------------------
 void
 VISU::ColoredPrs3d_i
@@ -929,9 +925,9 @@ VISU::ColoredPrs3d_i
 //----------------------------------------------------------------------------
 void
 VISU::ColoredPrs3d_i
-::SetBarOrientation(VISU::ColoredPrs3d::Orientation theOrientation)
+::SetBarOrientation(VISU::ColoredPrs3dBase::Orientation theOrientation)
 {
-  if(myOrientation == theOrientation)
+  if ( myOrientation == theOrientation )
     return;
 
   VISU::TSetModified aModified(this);
@@ -941,7 +937,7 @@ VISU::ColoredPrs3d_i
 }
 
 //----------------------------------------------------------------------------
-VISU::ColoredPrs3d::Orientation 
+VISU::ColoredPrs3dBase::Orientation 
 VISU::ColoredPrs3d_i
 ::GetBarOrientation() 
 {
@@ -1017,14 +1013,11 @@ VISU::ColoredPrs3d_i
 //----------------------------------------------------------------------------
 void
 VISU::ColoredPrs3d_i
-::SetRatios(CORBA::Long theTitleWidth, CORBA::Long theTitleHeight,
-           CORBA::Long theLabelWidth, CORBA::Long theLabelHeight,
+::SetRatios(CORBA::Long theTitleSize, CORBA::Long theLabelSize, 
            CORBA::Long theBarWidth, CORBA::Long theBarHeight) 
 {
-  bool anIsSameValue = VISU::CheckIsSameValue(myTitleWidth, theTitleWidth);
-  anIsSameValue &= VISU::CheckIsSameValue(myTitleHeight, theTitleHeight);
-  anIsSameValue &= VISU::CheckIsSameValue(myLabelWidth, theLabelWidth);
-  anIsSameValue &= VISU::CheckIsSameValue(myLabelHeight, theLabelHeight);
+  bool anIsSameValue = VISU::CheckIsSameValue(myTitleSize, theTitleSize);
+  anIsSameValue &= VISU::CheckIsSameValue(myLabelSize, theLabelSize);
   anIsSameValue &= VISU::CheckIsSameValue(myBarWidth, theBarWidth);
   anIsSameValue &= VISU::CheckIsSameValue(myBarHeight, theBarHeight);
   if(anIsSameValue)
@@ -1032,10 +1025,8 @@ VISU::ColoredPrs3d_i
 
   VISU::TSetModified aModified(this);
 
-  myTitleWidth = theTitleWidth; 
-  myTitleHeight = theTitleHeight;
-  myLabelWidth = theLabelWidth; 
-  myLabelHeight = theLabelHeight;
+  myTitleSize = theTitleSize; 
+  myLabelSize = theLabelSize; 
   myBarWidth = theBarWidth; 
   myBarHeight = theBarHeight;
   myParamsTime.Modified();
@@ -1044,33 +1035,17 @@ VISU::ColoredPrs3d_i
 //----------------------------------------------------------------------------
 CORBA::Long
 VISU::ColoredPrs3d_i
-::GetTitleWidth() 
+::GetTitleSize() 
 {
-  return myTitleWidth;
+  return myTitleSize;
 }
 
 //----------------------------------------------------------------------------
 CORBA::Long
 VISU::ColoredPrs3d_i
-::GetTitleHeight() 
-{ 
-  return myTitleHeight;
-}
-
-//----------------------------------------------------------------------------
-CORBA::Long
-VISU::ColoredPrs3d_i
-::GetLabelWidth() 
+::GetLabelSize() 
 {
-  return myLabelWidth;
-}
-
-//----------------------------------------------------------------------------
-CORBA::Long
-VISU::ColoredPrs3d_i
-::GetLabelHeight() 
-{ 
-  return myLabelHeight;
+  return myLabelSize;
 }
 
 //----------------------------------------------------------------------------
@@ -1111,6 +1086,8 @@ VISU::ColoredPrs3d_i
   return myNumberOfLabels;
 }
 
+//----------------------------------------------------------------------------
+
 //----------------------------------------------------------------------------
 void
 VISU::ColoredPrs3d_i
@@ -1152,7 +1129,7 @@ VISU::ColoredPrs3d_i
     } else {
       QString aName;
       aName.sprintf("%g", aTime.first);
-      aStream << aName;
+      aStream << aName.toLatin1().data();
     }
     aStream <<std::ends;
     std::string aScalarBarTitle = aStream.str();
@@ -1177,13 +1154,15 @@ VISU::ColoredPrs3d_i
 //----------------------------------------------------------------------------
 void
 VISU::ColoredPrs3d_i
-::SetUnitsVisible(CORBA::Boolean isVisible)
+::SetUnitsVisible(CORBA::Boolean theIsVisible)
 {
-  if( myIsUnits != isVisible ){
-    VISU::TSetModified aModified(this);
-    myIsUnits = isVisible;
-    myParamsTime.Modified();
-  }
+  if ( myIsUnits == theIsVisible ) 
+    return;
+
+  VISU::TSetModified aModified( this );
+
+  myIsUnits = theIsVisible;
+  myParamsTime.Modified();
 }
 
 //----------------------------------------------------------------------------
@@ -1293,13 +1272,13 @@ VISU::ColoredPrs3d_i
 //----------------------------------------------------------------------------
 void
 VISU::ColoredPrs3d_i
-::GetTitleColor(vtkFloatingPointType* theR, 
-               vtkFloatingPointType* theG, 
-               vtkFloatingPointType* theB)
+::GetTitleColor(vtkFloatingPointType& theR, 
+               vtkFloatingPointType& theG, 
+               vtkFloatingPointType& theB)
 {
-  *theR = myTitleColor[0]; 
-  *theG = myTitleColor[1]; 
-  *theB = myTitleColor[2];
+  theR = myTitleColor[0]; 
+  theG = myTitleColor[1]; 
+  theB = myTitleColor[2];
 }
 
 //----------------------------------------------------------------------------
@@ -1414,13 +1393,13 @@ VISU::ColoredPrs3d_i
 //----------------------------------------------------------------------------
 void
 VISU::ColoredPrs3d_i
-::GetLabelColor(vtkFloatingPointType* theR, 
-               vtkFloatingPointType* theG, 
-               vtkFloatingPointType* theB)
+::GetLabelColor(vtkFloatingPointType& theR, 
+               vtkFloatingPointType& theG, 
+               vtkFloatingPointType& theB)
 {
-  *theR = myLabelColor[0]; 
-  *theG = myLabelColor[1]; 
-  *theB = myLabelColor[2];
+  theR = myLabelColor[0]; 
+  theG = myLabelColor[1]; 
+  theB = myLabelColor[2];
 }
 
 //----------------------------------------------------------------------------
@@ -1499,12 +1478,15 @@ VISU::ColoredPrs3d_i
 
   // Scalar Range
   int aRangeType = aResourceMgr->integerValue("VISU" , "scalar_range_type", 0);
-  if(aRangeType == 1){
+  if ( aRangeType == 1 ) {
     float aMin = aResourceMgr->doubleValue("VISU", "scalar_range_min", 0);
     float aMax = aResourceMgr->doubleValue("VISU", "scalar_range_max", 0);
-    SetRange(aMin, aMax);
+    SetRange( aMin, aMax );
   }
-  UseFixedRange(aRangeType == 1);
+  UseFixedRange( aRangeType == 1 );
+
+  bool isFiltered = aResourceMgr->booleanValue("VISU", "scalar_bar_filter_by_scalars", false);
+  UseScalarFiltering( isFiltered );
 
   int aNumberOfColors = aResourceMgr->integerValue( "VISU", "scalar_bar_num_colors", 64 );
   SetNbColors(aNumberOfColors);
@@ -1512,46 +1494,41 @@ VISU::ColoredPrs3d_i
   bool isUnits = aResourceMgr->booleanValue( "VISU", "scalar_bar_display_units", true );
   SetUnitsVisible(isUnits);
 
-  QString aLabelsFormat = aResourceMgr->stringValue( "VISU", "scalar_bar_label_format", "%-#6.3g" );
-  const char *lf=aLabelsFormat.latin1();
-  SetLabelsFormat(lf);
+  SetIsDistributionVisible( aResourceMgr->booleanValue("VISU", "scalar_bar_show_distribution", false) ); // RKV
+  
+  int lp = aResourceMgr->integerValue( "VISU", "scalar_bar_label_precision", 3 );
+  SetLabelsFormat( VISU::ToFormat( lp ).c_str() );
 
   // Orientation
   int anOrientation = aResourceMgr->integerValue("VISU", "scalar_bar_orientation", 0);
   if(anOrientation == 1)
-    SetBarOrientation(VISU::ColoredPrs3d::HORIZONTAL);
+    SetBarOrientation(VISU::ColoredPrs3dBase::HORIZONTAL);
   else
-    SetBarOrientation(VISU::ColoredPrs3d::VERTICAL);
+    SetBarOrientation(VISU::ColoredPrs3dBase::VERTICAL);
 
   // Scalar Bar origin
   QString propertyName = QString( "scalar_bar_%1_" ).arg( anOrientation == 0 ? "vertical" : "horizontal" );
 
-  vtkFloatingPointType aXorigin = (myOrientation == VISU::ColoredPrs3d::VERTICAL) ? 0.01 : 0.2;
+  vtkFloatingPointType aXorigin = (myOrientation == VISU::ColoredPrs3dBase::VERTICAL) ? 0.01 : 0.1;
   aXorigin = aResourceMgr->doubleValue("VISU", propertyName + "x", aXorigin);
   myPosition[0] = aXorigin;
 
-  vtkFloatingPointType aYorigin = (myOrientation == VISU::ColoredPrs3d::VERTICAL) ? 0.1 : 0.012;
+  vtkFloatingPointType aYorigin = (myOrientation == VISU::ColoredPrs3dBase::VERTICAL) ? 0.1 : 0.01;
   aYorigin = aResourceMgr->doubleValue("VISU", propertyName + "y", aYorigin);
   myPosition[1] = aYorigin;
 
   // Scalar Bar size
-  myWidth = (myOrientation == VISU::ColoredPrs3d::VERTICAL)? 0.1 : 0.6;
+  myWidth = (myOrientation == VISU::ColoredPrs3dBase::VERTICAL)? 0.08 : 0.8;
   myWidth = aResourceMgr->doubleValue("VISU", propertyName + "width", myWidth);
 
-  myHeight = (myOrientation == VISU::ColoredPrs3d::VERTICAL)? 0.8:0.12;
+  myHeight = (myOrientation == VISU::ColoredPrs3dBase::VERTICAL)? 0.8:0.08;
   myHeight = aResourceMgr->doubleValue("VISU", propertyName + "height", myHeight);
 
-  myTitleWidth = 0;
-  myTitleWidth = aResourceMgr->integerValue("VISU", propertyName + "title_width", myTitleWidth);
-
-  myTitleHeight = 0;
-  myTitleHeight = aResourceMgr->integerValue("VISU", propertyName + "title_height", myTitleHeight);
+  myTitleSize = 0;
+  myTitleSize = aResourceMgr->integerValue("VISU", propertyName + "title_size", myTitleSize);
 
-  myLabelWidth = 0;
-  myLabelWidth = aResourceMgr->integerValue("VISU", propertyName + "label_width", myLabelWidth);
-
-  myLabelHeight = 0;
-  myLabelHeight = aResourceMgr->integerValue("VISU", propertyName + "label_height", myLabelHeight);
+  myLabelSize = 0;
+  myLabelSize = aResourceMgr->integerValue("VISU", propertyName + "label_size", myLabelSize);
 
   myBarWidth = 0;
   myBarWidth = aResourceMgr->integerValue("VISU", propertyName + "bar_width", myBarWidth);
@@ -1565,7 +1542,7 @@ VISU::ColoredPrs3d_i
   if (anIsArrangeBar){
     aPlace = aResourceMgr->integerValue("VISU", "scalar_bar_position_num",0);
   }
-  if(myOrientation == VISU::ColoredPrs3d::HORIZONTAL){
+  if(myOrientation == VISU::ColoredPrs3dBase::HORIZONTAL){
     myPosition[1] += myHeight*(aPlace-1);
   } else {
     myPosition[0] += myWidth*(aPlace-1);
@@ -1589,14 +1566,16 @@ VISU::ColoredPrs3d_i
     
     myIsBoldTitle   = f.bold();
     myIsItalicTitle = f.italic();
-    myIsShadowTitle =  f.underline();
+    myIsShadowTitle =  f.overline();
   }
 
   QColor aTextColor = aResourceMgr->colorValue( "VISU", "scalar_bar_title_color", QColor( 255, 255, 255 ) );
 
-  myTitleColor[0] = aTextColor.red()   / 255;
-  myTitleColor[1] = aTextColor.green() / 255;
-  myTitleColor[2] = aTextColor.blue()  / 255;
+  SetTitleColor(aTextColor.red()/255., aTextColor.green()/255., aTextColor.blue()/255.);
+               
+  myTitleColor[0] = aTextColor.red()   / 255.;
+  myTitleColor[1] = aTextColor.green() / 255.;
+  myTitleColor[2] = aTextColor.blue()  / 255.;
 
   myIsBoldLabel = myIsItalicLabel = myIsShadowLabel = true;
   myLblFontType = VTK_ARIAL;
@@ -1612,15 +1591,51 @@ VISU::ColoredPrs3d_i
     
     myIsBoldLabel   = f.bold();
     myIsItalicLabel = f.italic();
-    myIsShadowLabel =  f.underline();
+    myIsShadowLabel =  f.overline();
   }
 
   QColor aLabelColor = aResourceMgr->colorValue( "VISU", "scalar_bar_label_color", QColor( 255, 255, 255 ) );
 
-  myLabelColor[0] = aLabelColor.red()   / 255;
-  myLabelColor[1] = aLabelColor.green() / 255;
-  myLabelColor[2] = aLabelColor.blue()  / 255;
+  SetLabelColor(aLabelColor.red()/255., aLabelColor.green()/255., aLabelColor.blue()/255.);
+
+  myLabelColor[0] = aLabelColor.red()   / 255.;
+  myLabelColor[1] = aLabelColor.green() / 255.;
+  myLabelColor[2] = aLabelColor.blue()  / 255.;
+  
+  // Parameters of labels displaed field values
 
+  myValLblFontType = VTK_ARIAL;
+  myIsBoldValLbl = true;
+  myIsItalicValLbl = myIsShadowValLbl = false;
+  myValLblFontSize = 12;
+  if( aResourceMgr->hasValue( "VISU", "values_labeling_font" ) )
+  {
+    // family
+    QFont f = aResourceMgr->fontValue( "VISU", "values_labeling_font" );
+    if ( f.family() == "Arial" )
+      myValLblFontType = VTK_ARIAL;
+    else if ( f.family() == "Courier" )
+      myValLblFontType = VTK_COURIER;
+    else if ( f.family() == "Times" )
+      myValLblFontType = VTK_TIMES;
+
+    // size
+    if ( f.pointSize() > -1 )
+      myValLblFontSize = f.pointSize();
+
+    // color
+    QColor aColor = aResourceMgr->colorValue( 
+      "VISU", "values_labeling_color", QColor( 255, 255, 255 ) );
+    myValLblFontColor[ 0 ] = aColor.red() / 255.;
+    myValLblFontColor[ 1 ] = aColor.green() / 255.;
+    myValLblFontColor[ 2 ] = aColor.blue()/ 255.;
+
+    // bold, italic, shadow
+    myIsBoldValLbl = f.bold();
+    myIsItalicValLbl = f.italic();
+    myIsShadowValLbl =  f.overline();
+  }
+  
   return this;
 }
 
@@ -1659,35 +1674,43 @@ VISU::ColoredPrs3d_i
     return NULL;
 
   SetEntity((VISU::Entity)VISU::Storable::FindValue(theMap,"myEntity").toInt());
-  SetFieldName(VISU::Storable::FindValue(theMap,"myFieldName").latin1());
+  SetFieldName(VISU::Storable::FindValue(theMap,"myFieldName").toLatin1().data());
   SetTimeStampNumber(VISU::Storable::FindValue(theMap,"myIteration").toInt());
   myIsTimeStampFixed = VISU::Storable::FindValue(theMap,"myIsTimeStampFixed", "1").toInt();
   OnSetInput(false);
 
   Build(ERestore);
 
-  SetScalarMode(VISU::Storable::FindValue(theMap,"myScalarMode").toInt());
-  float aMin = VISU::Storable::FindValue(theMap,"myScalarRange[0]").toDouble();
-  float aMax = VISU::Storable::FindValue(theMap,"myScalarRange[1]").toDouble();
-  SetRange(aMin, aMax);
+  SetScalarMode(VISU::Storable::FindValue( theMap,"myScalarMode" ).toInt() );
+  {
+    float aMin = VISU::Storable::FindValue( theMap, "myScalarRange[0]" ).toDouble();
+    float aMax = VISU::Storable::FindValue( theMap, "myScalarRange[1]" ).toDouble();
+    SetRange( aMin, aMax );
+  }
+  {
+    bool isFiltered = VISU::Storable::FindValue( theMap, "myIsFilteredByScalars", "0" ).toInt();
+    float aMin = VISU::Storable::FindValue( theMap, "myScalarFilterRange[0]" ).toDouble();
+    float aMax = VISU::Storable::FindValue( theMap, "myScalarFilterRange[1]" ).toDouble();
+    SetScalarFilterRange( aMin, aMax );
+    UseScalarFiltering( isFiltered );
+  }
+  SetIsDistributionVisible(VISU::Storable::FindValue(theMap,"myIsDistributionVisible", "0").toInt());
 
   UseFixedRange(VISU::Storable::FindValue(theMap,"myIsFixedRange", "0").toInt());
 
   SetNbColors(VISU::Storable::FindValue(theMap,"myNumberOfColors").toInt());
   SetUnitsVisible(VISU::Storable::FindValue(theMap,"myUnitsVisible", "1").toInt());
-  SetLabelsFormat(VISU::Storable::FindValue(theMap,"myLabelsFormat", "%-#6.3g"));
-  SetBarOrientation((VISU::ColoredPrs3d::Orientation)VISU::Storable::FindValue(theMap,"myOrientation").toInt());
+  SetLabelsFormat(VISU::Storable::FindValue(theMap,"myLabelsFormat", "%-#6.3g").toLatin1().data());
+  SetBarOrientation((VISU::ColoredPrs3dBase::Orientation)VISU::Storable::FindValue(theMap,"myOrientation").toInt());
   
-  SetTitle(VISU::Storable::FindValue(theMap,"myTitle").latin1());
+  SetTitle(VISU::Storable::FindValue(theMap,"myTitle").toLatin1().data());
   myNumberOfLabels = VISU::Storable::FindValue(theMap,"myNumberOfLabels").toInt();
   myPosition[0] = VISU::Storable::FindValue(theMap,"myPosition[0]").toDouble();
   myPosition[1] = VISU::Storable::FindValue(theMap,"myPosition[1]").toDouble();
   myWidth = VISU::Storable::FindValue(theMap,"myWidth").toDouble();
   myHeight = VISU::Storable::FindValue(theMap,"myHeight").toDouble();
-  myTitleWidth = VISU::Storable::FindValue(theMap,"myTitleWidth").toInt();
-  myTitleHeight = VISU::Storable::FindValue(theMap,"myTitleHeight").toInt();
-  myLabelWidth = VISU::Storable::FindValue(theMap,"myLabelWidth").toInt();
-  myLabelHeight = VISU::Storable::FindValue(theMap,"myLabelHeight").toInt();
+  myTitleSize = VISU::Storable::FindValue(theMap,"myTitleSize").toInt();
+  myLabelSize = VISU::Storable::FindValue(theMap,"myLabelSize").toInt();
   myBarWidth = VISU::Storable::FindValue(theMap,"myBarWidth").toInt();
   myBarHeight = VISU::Storable::FindValue(theMap,"myBarHeight").toInt();
 
@@ -1710,16 +1733,28 @@ VISU::ColoredPrs3d_i
   bool anIsExists;
   QString aGeomNames = VISU::Storable::FindValue(theMap, "myGeomNameList", &anIsExists);
   if(anIsExists){
-    QStringList aGeomNameList = QStringList::split("|", aGeomNames);
+    QStringList aGeomNameList = aGeomNames.split("|", QString::SkipEmptyParts);
     int aNbOfGroups = aGeomNameList.count();
     if(aNbOfGroups > 0){
       RemoveAllGeom();
       for(int aGroupNum = 0; aGroupNum < aNbOfGroups; aGroupNum++){
        QString aGroupName = aGeomNameList[aGroupNum];
-       AddMeshOnGroup(aGroupName.latin1());
+       AddMeshOnGroup(aGroupName.toLatin1().data());
       }
     }
   }
+  
+  // Parameters of labels displayed field values
+
+  myValLblFontType = VISU::Storable::FindValue( theMap, "myValLblFontType", "0"  ).toInt();
+  myIsBoldValLbl = VISU::Storable::FindValue( theMap, "myIsBoldValLbl", "1" ).toInt();
+  myIsItalicValLbl = VISU::Storable::FindValue( theMap, "myIsItalicValLbl", "0" ).toInt();
+  myIsShadowValLbl = VISU::Storable::FindValue( theMap, "myIsShadowValLbl", "0" ).toInt();
+  myValLblFontSize = VISU::Storable::FindValue( theMap, "myValLblFontSize", "12" ).toDouble();
+  myValLblFontColor[ 0 ] = VISU::Storable::FindValue( theMap, "myValLblFontColor[0]", "1" ).toFloat();
+  myValLblFontColor[ 1 ] = VISU::Storable::FindValue( theMap, "myValLblFontColor[1]", "1" ).toFloat();
+  myValLblFontColor[ 2 ] = VISU::Storable::FindValue( theMap, "myValLblFontColor[2]", "1" ).toFloat();
+  
   return this;
 }
 
@@ -1731,7 +1766,7 @@ VISU::ColoredPrs3d_i
   TSuperClass::ToStream(theStr);
 
   Storable::DataToStream( theStr, "myEntity",         GetEntity() );
-  Storable::DataToStream( theStr, "myFieldName",      GetCFieldName() );
+  Storable::DataToStream( theStr, "myFieldName",      GetCFieldName().c_str() );
   Storable::DataToStream( theStr, "myIteration",      int(GetTimeStampNumber()) );
   Storable::DataToStream( theStr, "myIsTimeStampFixed", int(myIsTimeStampFixed) );
 
@@ -1739,6 +1774,12 @@ VISU::ColoredPrs3d_i
   Storable::DataToStream( theStr, "myScalarRange[0]", GetMin() );
   Storable::DataToStream( theStr, "myScalarRange[1]", GetMax() );
   Storable::DataToStream( theStr, "myIsFixedRange",   IsRangeFixed() );
+  
+  Storable::DataToStream( theStr, "myIsFilteredByScalars",  IsScalarFilterUsed() );
+  Storable::DataToStream( theStr, "myScalarFilterRange[0]", GetScalarFilterMin() );
+  Storable::DataToStream( theStr, "myScalarFilterRange[1]", GetScalarFilterMax() );
+
+  Storable::DataToStream( theStr, "myIsDistributionVisible", GetIsDistributionVisible() ); // RKV
 
   Storable::DataToStream( theStr, "myNumberOfColors", int(GetNbColors()) );
   Storable::DataToStream( theStr, "myOrientation",    myOrientation );
@@ -1746,15 +1787,15 @@ VISU::ColoredPrs3d_i
   Storable::DataToStream( theStr, "myTitle",          myTitle.c_str() );
   Storable::DataToStream( theStr, "myUnitsVisible",   myIsUnits );
   Storable::DataToStream( theStr, "myNumberOfLabels", myNumberOfLabels );
+
   Storable::DataToStream( theStr, "myLabelsFormat",   myLabelsFormat.c_str() );
+
   Storable::DataToStream( theStr, "myPosition[0]",    myPosition[0] );
   Storable::DataToStream( theStr, "myPosition[1]",    myPosition[1] );
   Storable::DataToStream( theStr, "myWidth",          myWidth );
   Storable::DataToStream( theStr, "myHeight",         myHeight );
-  Storable::DataToStream( theStr, "myTitleWidth",     myTitleWidth );
-  Storable::DataToStream( theStr, "myTitleHeight",    myTitleHeight );
-  Storable::DataToStream( theStr, "myLabelWidth",     myLabelWidth );
-  Storable::DataToStream( theStr, "myLabelHeight",    myLabelHeight );
+  Storable::DataToStream( theStr, "myTitleSize",     myTitleSize );
+  Storable::DataToStream( theStr, "myLabelSize",     myLabelSize );
   Storable::DataToStream( theStr, "myBarWidth",       myBarWidth );
   Storable::DataToStream( theStr, "myBarHeight",      myBarHeight );
 
@@ -1773,6 +1814,18 @@ VISU::ColoredPrs3d_i
   Storable::DataToStream( theStr, "myLabelColor[0]",  myLabelColor[0] );
   Storable::DataToStream( theStr, "myLabelColor[1]",  myLabelColor[1] );
   Storable::DataToStream( theStr, "myLabelColor[2]",  myLabelColor[2] );
+  
+  // Parameters of labels displayed field values
+
+  Storable::DataToStream( theStr, "myValLblFontType", myValLblFontType );
+  Storable::DataToStream( theStr, "myIsBoldValLbl", myIsBoldValLbl );
+  Storable::DataToStream( theStr, "myIsItalicValLbl", myIsItalicValLbl );
+  Storable::DataToStream( theStr, "myIsShadowValLbl", myIsShadowValLbl );
+  Storable::DataToStream( theStr, "myValLblFontSize", myValLblFontSize );
+  Storable::DataToStream( theStr, "myValLblFontColor[0]", myValLblFontColor[ 0 ] );
+  Storable::DataToStream( theStr, "myValLblFontColor[1]", myValLblFontColor[ 1 ] );
+  Storable::DataToStream( theStr, "myValLblFontColor[2]", myValLblFontColor[ 2 ] );
+
 
   std::ostringstream aGeomNameList;
   std::string aMeshName = GetCMeshName();
@@ -1782,7 +1835,7 @@ VISU::ColoredPrs3d_i
     const std::string& aGroupName = *anIter;
     aGeomNameList<<aGroupName<<"|";   
   }
-  Storable::DataToStream(theStr, "myGeomNameList",  aGeomNameList.str());
+  Storable::DataToStream(theStr, "myGeomNameList",  aGeomNameList.str().c_str());
 }
 
 //----------------------------------------------------------------------------
@@ -1803,6 +1856,15 @@ VISU::ColoredPrs3d_i
 }
 
 
+//----------------------------------------------------------------------------
+void
+VISU::ColoredPrs3d_i
+::SetMapScale(double theMapScale)
+{
+  GetSpecificPL()->SetMapScale(theMapScale);
+}
+
+
 //----------------------------------------------------------------------------
 void
 VISU::ColoredPrs3d_i
@@ -1839,12 +1901,12 @@ VISU::ColoredPrs3d_i
        SetTitle(GetCFieldName().c_str());
     }
     if(myPublishInStudyMode == EPublishUnderTimeStamp){
-      SetName(GenerateName().latin1(), false);
+      SetName(GenerateName().toLatin1().data(), false);
       VISU::Storable::TRestoringMap aRestoringMap;
       aRestoringMap["myComment"] = "TIMESTAMP";
-      aRestoringMap["myMeshName"] = GetCMeshName();
+      aRestoringMap["myMeshName"] = GetCMeshName().c_str();
       aRestoringMap["myEntityId"] = QString::number(GetEntity());
-      aRestoringMap["myFieldName"] = GetCFieldName();
+      aRestoringMap["myFieldName"] = GetCFieldName().c_str();
       aRestoringMap["myTimeStampId"] = QString::number(GetTimeStampNumber());
       aRestoringMap["myNumComponent"] = QString::number(GetScalarField()->myNbComp);
       std::string anEntry = GetCResult()->GetEntry(aRestoringMap);
@@ -1864,10 +1926,10 @@ VISU::ColoredPrs3d_i
                       anIOR.in(),
                       GetName(),
                       "",
-                      aComment.latin1(),
+                      aComment.toLatin1().data(),
                       true);
     }else if(myPublishInStudyMode == EPublishIndependently){
-      SetName(GenerateName().latin1(), false);
+      SetName(GenerateName().toLatin1().data(), false);
       CORBA::String_var anIOR = GetID();
       std::string aFatherEntry = ::FindOrCreate3DPresentationsFolder(GetStudyDocument());
       aComment.sprintf("myComment=%s",
@@ -1878,7 +1940,7 @@ VISU::ColoredPrs3d_i
                       anIOR.in(),
                       GetName(),
                       "",
-                      aComment.latin1(),
+                      aComment.toLatin1().data(),
                       true);
     }
 #ifndef _DEXCEPT_
@@ -1895,3 +1957,181 @@ VISU::ColoredPrs3d_i
     aStudyBuilder->CommitCommand();
   return this;
 }
+
+//----------------------------------------------------------------------------
+void
+VISU::ColoredPrs3d_i
+::SetIsDistributionVisible(CORBA::Boolean isVisible)
+{
+  if( myIsDistributionVisible != isVisible ){
+    VISU::TSetModified aModified(this);
+    myIsDistributionVisible = isVisible;
+    myParamsTime.Modified();
+  }
+}
+
+//----------------------------------------------------------------------------
+CORBA::Boolean
+VISU::ColoredPrs3d_i
+::GetIsDistributionVisible()
+{
+  return myIsDistributionVisible;
+}
+
+//----------------------------------------------------------------------------
+
+
+int
+VISU::ColoredPrs3d_i
+::GetValLblFontType() const
+{
+  return myValLblFontType;
+}
+
+//----------------------------------------------------------------------------
+
+void
+VISU::ColoredPrs3d_i
+::SetValLblFontType( const int theType )
+{
+  if ( myValLblFontType == theType )
+    return;
+
+  VISU::TSetModified aModified( this );
+
+  myValLblFontType = theType;
+  myParamsTime.Modified();
+}
+
+//----------------------------------------------------------------------------
+
+double
+VISU::ColoredPrs3d_i
+::GetValLblFontSize() const
+{
+  return myValLblFontSize;
+}
+
+//----------------------------------------------------------------------------
+
+void
+VISU::ColoredPrs3d_i
+::SetValLblFontSize( const double theSize )
+{
+  if ( VISU::CheckIsSameValue( myValLblFontSize, theSize ) )
+    return;
+
+  VISU::TSetModified aModified( this );
+
+  myValLblFontSize = theSize;
+  myParamsTime.Modified();
+}
+
+//----------------------------------------------------------------------------
+
+void
+VISU::ColoredPrs3d_i
+::GetValLblFontColor( vtkFloatingPointType& theR, 
+                      vtkFloatingPointType& theG, 
+                      vtkFloatingPointType& theB ) const
+{
+  theR = myValLblFontColor[ 0 ];
+  theG = myValLblFontColor[ 1 ];
+  theB = myValLblFontColor[ 2 ];
+}
+
+//----------------------------------------------------------------------------
+
+void
+VISU::ColoredPrs3d_i
+::SetValLblFontColor( const vtkFloatingPointType theR, 
+                      const vtkFloatingPointType theG, 
+                      const vtkFloatingPointType theB )
+{
+  if ( VISU::CheckIsSameValue( myValLblFontColor[ 0 ], theR ) &&
+       VISU::CheckIsSameValue( myValLblFontColor[ 1 ], theG ) &&
+       VISU::CheckIsSameValue (myValLblFontColor[ 2 ], theB ) )
+    return;
+
+  VISU::TSetModified aModified(this);
+
+  myValLblFontColor[ 0 ] = theR; 
+  myValLblFontColor[ 1 ] = theG; 
+  myValLblFontColor[ 2 ] = theB; 
+  myParamsTime.Modified();
+}
+
+//----------------------------------------------------------------------------
+
+bool
+VISU::ColoredPrs3d_i
+::IsBoldValLbl() const
+{
+  return myIsBoldValLbl;
+}
+
+//----------------------------------------------------------------------------
+
+void
+VISU::ColoredPrs3d_i
+::SetBoldValLbl( const bool theVal )
+{
+  if ( myIsBoldValLbl == theVal )
+    return;
+
+  VISU::TSetModified aModified( this );
+
+  myIsBoldValLbl =  theVal;
+  myParamsTime.Modified();
+}
+
+//----------------------------------------------------------------------------
+
+bool
+VISU::ColoredPrs3d_i
+::IsItalicValLbl() const
+{
+  return myIsItalicValLbl;
+}
+
+//----------------------------------------------------------------------------
+
+void
+VISU::ColoredPrs3d_i
+::SetItalicValLbl( const bool theVal )
+{
+  if ( myIsItalicValLbl == theVal )
+    return;
+
+  VISU::TSetModified aModified( this );
+
+  myIsItalicValLbl =  theVal;
+  myParamsTime.Modified();
+}
+
+//----------------------------------------------------------------------------
+
+bool
+VISU::ColoredPrs3d_i
+::IsShadowValLbl() const
+{
+  return myIsShadowValLbl;
+}
+
+//----------------------------------------------------------------------------
+
+void
+VISU::ColoredPrs3d_i
+::SetShadowValLbl( const bool theVal )
+{
+  if ( myIsShadowValLbl == theVal )
+    return;
+
+  VISU::TSetModified aModified( this );
+
+  myIsShadowValLbl =  theVal;
+  myParamsTime.Modified();
+}
+
+//----------------------------------------------------------------------------
+
index cb22f72dd1a218e66299e48f31e30c030d4d148a..5548bfed2babce9ff50e46c98e0bbe7b605fad63 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_ColoredPrs3d_i.hh
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_ColoredPrs3d_i_HeaderFile
 #define VISU_ColoredPrs3d_i_HeaderFile
 
@@ -228,11 +228,11 @@ namespace VISU
 
     virtual
     vtkFloatingPointType
-    GetComponentMin(vtkIdType theCompID);
+    GetComponentMin(vtkIdType theCompID) = 0;
 
     virtual
     vtkFloatingPointType
-    GetComponentMax(vtkIdType theCompID);
+    GetComponentMax(vtkIdType theCompID) = 0;
 
     virtual
     CORBA::Double 
@@ -260,10 +260,10 @@ namespace VISU
 
     virtual
     void
-    SetBarOrientation(VISU::ColoredPrs3d::Orientation theOrientation);
+    SetBarOrientation(VISU::ColoredPrs3dBase::Orientation theOrientation);
 
     virtual 
-    VISU::ColoredPrs3d::Orientation 
+    VISU::ColoredPrs3dBase::Orientation 
     GetBarOrientation();
 
     virtual
@@ -284,8 +284,7 @@ namespace VISU
     
     virtual 
     void
-    SetRatios(CORBA::Long theTitleWidth, CORBA::Long theTitleHeight,
-             CORBA::Long theLabelWidth, CORBA::Long theLabelHeight,
+    SetRatios(CORBA::Long theTitleSize, CORBA::Long theLabelSize, 
              CORBA::Long theBarWidth, CORBA::Long theBarHeight);
     
     virtual 
@@ -298,19 +297,11 @@ namespace VISU
 
     virtual 
     CORBA::Long
-    GetTitleWidth();
-
-    virtual
-    CORBA::Long
-    GetTitleHeight();
+    GetTitleSize();
 
     virtual 
     CORBA::Long
-    GetLabelWidth();
-
-    virtual
-    CORBA::Long
-    GetLabelHeight();
+    GetLabelSize();
 
     virtual 
     CORBA::Long
@@ -355,6 +346,40 @@ namespace VISU
     CORBA::Boolean
     IsUnitsVisible();
 
+    /*!  
+     * Set the visibility of a distribution curve.
+     * \param theIs is used to switch on/off the visibility of a distribution curve.
+     */
+    virtual void SetIsDistributionVisible(CORBA::Boolean theIs);
+    
+    //! Gets current visibility of a distribution curve
+    virtual CORBA::Boolean GetIsDistributionVisible();
+    
+    //! Gets current filtering by scalars mode
+    virtual CORBA::Boolean IsScalarFilterUsed();
+    
+    virtual void UseScalarFiltering( CORBA::Boolean theUseScalarFilter );
+
+    /*!
+     * Sets scalar range - min and max boundaries of the scalar bar.
+     * \param theMin  Min boundary of the scalar bar.
+     * \param theMax  Max boundary of the scalar bar.
+     * \param theIsFilter  if true then filter by scalars.
+     */
+    virtual
+    void
+    SetScalarFilterRange( CORBA::Double theMin, CORBA::Double theMax );
+
+    //----------------------------------------------------------------------------
+    virtual
+    CORBA::Double
+    GetScalarFilterMin();
+
+    //----------------------------------------------------------------------------
+    virtual
+    CORBA::Double
+    GetScalarFilterMax();
+
     //----------------------------------------------------------------------------
     //! Gets memory size actually used by the presentation (Mb).
     virtual
@@ -483,9 +508,9 @@ namespace VISU
 
     virtual 
     void
-    GetTitleColor(vtkFloatingPointType* theR, 
-                 vtkFloatingPointType* theG, 
-                 vtkFloatingPointType* theB);
+    GetTitleColor(vtkFloatingPointType& theR, 
+                 vtkFloatingPointType& theG, 
+                 vtkFloatingPointType& theB);
     
     virtual
     void
@@ -527,9 +552,9 @@ namespace VISU
 
     virtual 
     void
-    GetLabelColor(vtkFloatingPointType* theR, 
-                 vtkFloatingPointType* theG, 
-                 vtkFloatingPointType* theB);
+    GetLabelColor(vtkFloatingPointType& theR, 
+                 vtkFloatingPointType& theG, 
+                 vtkFloatingPointType& theB);
 
     virtual
     void
@@ -537,12 +562,68 @@ namespace VISU
                  vtkFloatingPointType theG, 
                  vtkFloatingPointType theB);
 
+    virtual
+    void
+    SetMapScale(double theMapScale = 1.0);
+
     VISU_ColoredPL* 
     GetSpecificPL() const
     { 
       return myColoredPL; 
     }
     
+        virtual 
+    int
+    GetValLblFontType() const;
+
+    virtual 
+    void
+    SetValLblFontType( const int theType );
+
+    virtual 
+    double
+    GetValLblFontSize() const;
+
+    virtual 
+    void
+    SetValLblFontSize( const double theSize );
+
+    virtual 
+    bool
+    IsBoldValLbl() const;
+
+    virtual
+    void
+    SetBoldValLbl( const bool theVal );
+
+    virtual 
+    bool
+    IsItalicValLbl() const;
+
+    virtual
+    void
+    SetItalicValLbl( const bool theVal );
+
+    virtual 
+    bool
+    IsShadowValLbl() const;
+
+    virtual
+    void
+    SetShadowValLbl( const bool theVal );
+
+    virtual 
+    void
+    GetValLblFontColor( vtkFloatingPointType& theR, 
+                      vtkFloatingPointType& theG, 
+                      vtkFloatingPointType& theB ) const;
+
+    virtual
+    void
+    SetValLblFontColor( const vtkFloatingPointType theR, 
+                       const vtkFloatingPointType theG, 
+                       const vtkFloatingPointType theB );
+    
     //----------------------------------------------------------------------------
   protected:
     /*!
@@ -650,11 +731,11 @@ namespace VISU
 
     int myNumberOfLabels;
     std::string myLabelsFormat;
-    VISU::ColoredPrs3d::Orientation myOrientation;
+
+    VISU::ColoredPrs3dBase::Orientation myOrientation;
     vtkFloatingPointType myPosition[2],
                          myWidth, myHeight,
-                         myTitleWidth, myTitleHeight,
-                         myLabelWidth, myLabelHeight,
+                         myTitleSize, myLabelSize,
                          myBarWidth, myBarHeight;
 
     //Font management
@@ -673,6 +754,15 @@ namespace VISU
     VISU_ColoredPL* myColoredPL;
     bool myIsFixedRange;
 
+    bool myIsDistributionVisible; // RKV
+
+    // Result labels 
+    int                  myValLblFontType;
+    double               myValLblFontSize;
+    bool                 myIsBoldValLbl;
+    bool                 myIsItalicValLbl;
+    bool                 myIsShadowValLbl;
+    vtkFloatingPointType myValLblFontColor[ 3 ];
   };
 
 
index aea4b36ce887d7d6606dbe4c9d7f89e36c10d3fa..62e1243295236e22b3f105a59957b0b73fe5c9a2 100644 (file)
@@ -1,32 +1,30 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_CorbaMedConvertor.cxx
 //  Author : Alexey PETROV
 //  Module : VISU
 //  $Header$
-//  Copyright (C) 2003  CEA/DEN, EDF R&D
-
+//
 #include "VISU_CorbaMedConvertor.hxx"
 #include "VISU_ConvertorUtils.hxx"
 
@@ -37,6 +35,8 @@
 #include "ReceiverFactory.hxx"
 #include "MED_SliceArray.hxx"
 
+#include "utilities.h"
+
 #define USER_INTERLACE MED_FULL_INTERLACE
 
 #ifdef _DEBUG_
@@ -588,13 +588,13 @@ namespace
          else
            aGeom2ProfileIds = aSupport->getNumberFromFile(aMGeom);
          int aLen = aGeom2ProfileIds->length();
-         if(MYDEBUG) MESSAGE(" - aMGeom="<<aMGeom<<"; aNbCells="<<aLen);
+         if(MYDEBUG) MESSAGE_BEGIN(" - aMGeom="<<aMGeom<<"; aNbCells="<<aLen);
          for(int i = 0; i < aLen; i++){
            int anId = aGeom2ProfileIds[i];
            aGeom2Profile.push_back(anId);
-           if(MYDEBUG) cout << "------------------------------->" << anId << endl;
+           if(MYDEBUG) MESSAGE_ADD(std::endl << "------------------------------->" << anId);
          }
-         if(MYDEBUG) cout << endl;
+         if(MYDEBUG) MESSAGE_END(" ");
        } catch(...) {
          continue;
        }
@@ -886,7 +886,7 @@ VISU_MEDConvertor
          if(MYDEBUG) 
            MESSAGE("VISU_MEDConvertor::Build - Support isOnAllElements = '"<<aSupportName<<
                    "' aVEntity = "<<aVEntity);
-         int aNbCells, aCellsSize;
+         vtkIdType aNbCells, aCellsSize;
          //Check, if there is any data on the support?
          if(aVEntity == VISU::NODE_ENTITY){
            aMesh->myNbPoints = aMeshOnSupport->getNumberOfNodes();
@@ -934,7 +934,7 @@ VISU_MEDConvertor
            continue;
          VISU::PCMeshOnEntity aMeshOnEntity = aMeshOnEntityMapIter->second;
 
-         int aNbCells = aMeshOnEntity->myNbCells, aCellsSize = aMeshOnEntity->myCellsSize;
+         vtkIdType aNbCells = aMeshOnEntity->myNbCells, aCellsSize = aMeshOnEntity->myCellsSize;
          CORBA::Boolean anIsOnAllElements = aMEDSupport->isOnAllElements();
          if(!anIsOnAllElements)
            ::GetCellsSize(aNbCells,aCellsSize,aMEDFamily);
@@ -1192,8 +1192,16 @@ VISU_MEDConvertor
       
       vtkIdType aDataType = VTK_DOUBLE;
       SALOME_MED::FIELDDOUBLE_ptr aFieldDouble = SALOME_MED::FIELDDOUBLE::_narrow(aMEDField);
-      if(aFieldDouble->_is_nil())
-       aDataType = VTK_LONG;
+      if(aFieldDouble->_is_nil()){
+        if (sizeof(long) == 4 ) // Size of CORBA::Long is always 4 (see CORBA_basetypes.h)
+          //Fix for IPAL20325 Crash on create presentation for imported field 
+          aDataType = VTK_LONG;
+        else if (sizeof(int) == 4)
+          aDataType = VTK_INT;
+        else {
+          throw std::runtime_error("Can't map CORBA::Long to a VTK type");
+        }
+      }
       aField->Init(aMEDField->getNumberOfComponents(), aDataType);
 
       aFieldMap[aFieldName.in()] = aField;
@@ -1375,7 +1383,7 @@ VISU_MEDConvertor
       if(0 > anID || anID >= aSize){
        static QString aString;
        aString.sprintf("LoadPointsOnFamily - aSize(%d) <= aCellNumForType[%d] = %d < 0",aSize,iElem,anID);
-       throw std::runtime_error(aString.latin1());
+       throw std::runtime_error((const char*)aString.toLatin1());
       }
       aSubMeshID.push_back(anID);
     }
@@ -1677,8 +1685,8 @@ VISU_MEDConvertor
           for (int k = 0; k < aVNbNodes; k++) 
             if(anArray[k] < 0 || aNbPoints <= anArray[k]){
               static QString aString;
-              aString.sprintf("LoadCellsOnEntity >> aNbPoints(%d) <= anArray[%d][%d]=%d < 0 !!!",aNbPoints,iElem,k,anArray[k]);
-              throw std::runtime_error(aString.latin1());
+              aString.sprintf("LoadCellsOnEntity >> aNbPoints(%d) <= anArray[%d][%d]=%d < 0 !!!",int(aNbPoints),iElem,k,anArray[k]);
+              throw std::runtime_error((const char*)aString.toLatin1());
             }
           aCell2Connect.push_back(anArray);
         } // loop on elements
@@ -1758,7 +1766,7 @@ VISU_MEDConvertor
        if(0 > anID || anID >= aSize){
          static QString aString;
          aString.sprintf("LoadCellsOnFamily - aNbElem(%d) <= aCellNumForType[%d] = %d < 0 !!!",aNbElem,iElem,anID);
-         throw std::runtime_error(aString.latin1());
+         throw std::runtime_error((const char*)aString.toLatin1());
        }
        aSubMeshID.push_back(anID);
       }
index 9fc1c7765aefbe98f2feda76bbd7b6d7484ee31a..0b9d4294cff2b58d6315f1ac6b479a0835e55954 100644 (file)
@@ -1,32 +1,30 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_CorbaMedConvertor.hxx
 //  Author : Alexey PETROV
 //  Module : VISU
 //  $Header$
-//  Copyright (C) 2003  CEA/DEN, EDF R&D
-
+//
 #ifndef VISU_CorbaMedConvertor_HeaderFile
 #define VISU_CorbaMedConvertor_HeaderFile
 
index 06f6f87a518ac5e9fa870b70806cc6ee4412385e..76dfaab6dbd9fdd76c43deb3ff233425ddb9ecab 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_PrsObject_i.cxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_CutLines_i.hh"
 #include "VISU_Prs3dUtils.hh"
 #include "VISU_Result_i.hh"
@@ -34,7 +34,7 @@
 #include "VISU_PipeLineUtils.hxx"
 
 #include "SUIT_ResourceMgr.h"
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 
 #include <vtkAppendPolyData.h>
 
@@ -46,6 +46,7 @@ static int MYDEBUG = 0;
 static int MYDEBUG = 0;
 #endif
 
+using namespace std;
 
 //---------------------------------------------------------------
 size_t
@@ -102,6 +103,7 @@ VISU::CutLines_i::
 CutLines_i(EPublishInStudyMode thePublishInStudyMode) :
   ColoredPrs3d_i(thePublishInStudyMode),
   ScalarMap_i(thePublishInStudyMode),
+  myUseAbsLength( false ),
   myCutLinesPL(NULL)
 {}
 
@@ -173,14 +175,14 @@ VISU::CutLines_i
   else
     SetBasePlanePosition(VISU::Storable::FindValue(theMap,"myBasePlanePosition").toDouble());
   
-  QStringList aPosList = QStringList::split("|",VISU::Storable::FindValue(theMap,"myLinePosition") );
-  QStringList aCondList = QStringList::split("|",VISU::Storable::FindValue(theMap,"myLineCondition") );
+  QStringList aPosList = VISU::Storable::FindValue(theMap,"myLinePosition").split("|", QString::SkipEmptyParts );
+  QStringList aCondList = VISU::Storable::FindValue(theMap,"myLineCondition").split("|",QString::SkipEmptyParts );
   for(int i = 0, iEnd = GetNbLines(); i < iEnd; i++)
     if(aCondList[i].toInt() == 0)
       SetLinePosition(i,aPosList[i].toDouble());
 
   // Restoring the map - \a myMapCurvesInverted
-  QStringList aMapCurvesInverted = QStringList::split("|",VISU::Storable::FindValue(theMap,"myMapCurvesInverted") );
+  QStringList aMapCurvesInverted = VISU::Storable::FindValue(theMap,"myMapCurvesInverted").split("|",QString::SkipEmptyParts );
   if (aMapCurvesInverted.count() == GetNbLines()){
     for(int i = 0, iEnd = GetNbLines(); i < iEnd ; i++){
       if(aMapCurvesInverted[i].toInt())
@@ -224,15 +226,15 @@ VISU::CutLines_i
     aStrCon.append(QString::number(IsDefaultPosition(i)) + "|");
   }
 
-  Storable::DataToStream( theStr, "myLinePosition",  aStrPos.latin1());
-  Storable::DataToStream( theStr, "myLineCondition", aStrCon.latin1());
+  Storable::DataToStream( theStr, "myLinePosition",  (const char*)aStrPos.toLatin1());
+  Storable::DataToStream( theStr, "myLineCondition", (const char*)aStrCon.toLatin1());
   Storable::DataToStream( theStr,"myUseAbsLength", IsUseAbsoluteLength());
 
   // Storing the map - \a myMapCurvesInverted
   QString aStrCurvesInverted;
   for(int i = 0, iEnd = GetNbLines(); i < iEnd; i++) 
     aStrCurvesInverted.append(QString::number(IsCurveInverted(i)) + "|");
-  Storable::DataToStream( theStr, "myMapCurvesInverted", aStrCurvesInverted.latin1());
+  Storable::DataToStream( theStr, "myMapCurvesInverted", (const char*)aStrCurvesInverted.toLatin1());
 }
 
 
@@ -551,7 +553,7 @@ void
 VISU::CutLines_i
 ::SetUseAbsoluteLength(CORBA::Boolean theAbsLength)
 {
-  if(myUseAbsLength == theAbsLength)
+  if ( myUseAbsLength == theAbsLength )
     return;
 
   VISU::TSetModified aModified(this);
@@ -645,8 +647,8 @@ VISU::CutLines_i
     typedef map<long,long> TLineIdCont;
     
     QString aTitle( GetScalarBarTitle().c_str() );
-    aTitle = aTitle.simplifyWhiteSpace();
-    aTableOfReal->SetTitle( aTitle.latin1() );
+    aTitle = aTitle.simplified();
+    aTableOfReal->SetTitle( aTitle.toLatin1().data() );
     
     int iLineEnd = myCutLinesPL->GetAppendPolyData()->GetNumberOfInputConnections(0);
     if(MYDEBUG) MESSAGE("CutPlanes_i::BuildTableOfReal iLineEnd = "<<iLineEnd);
@@ -781,7 +783,7 @@ VISU::CutLines_i
       vtkFloatingPointType aDist = *aXContIter; 
       aTableOfReal->PutValue(aDist,1,i+1);
       aString.sprintf("%d",i);
-      aTableOfReal->SetColumnTitle(i+1,aString.latin1());
+      aTableOfReal->SetColumnTitle(i+1,(const char*)aString.toLatin1());
       if(MYDEBUG) MESSAGE("CutPlanes_i::BuildTableOfReal aDist = "<<aDist);
       TXYMapCont::const_iterator aXYMapContIter = aXYMapCont.begin();
       for(; aXYMapContIter != aXYMapCont.end(); aXYMapContIter++){
@@ -802,7 +804,7 @@ VISU::CutLines_i
       int aScalarMode = myCutLinesPL->GetScalarMode();
       if(aScalarMode != 0) 
        aUnitName = GetField()->myUnitNames[aScalarMode-1].c_str();
-      aUnitName = aUnitName.simplifyWhiteSpace();
+      aUnitName = aUnitName.simplified();
       if(aUnitName.isEmpty()) aUnitName = "-";
       TXYMapCont::const_iterator aXYMapContIter = aXYMapCont.begin();
       for(; aXYMapContIter != aXYMapCont.end(); aXYMapContIter++){
@@ -810,9 +812,9 @@ VISU::CutLines_i
        long iLineId = aLineIdCont[iLine];
        aString.sprintf("Y%d",iLine);
        if(MYDEBUG) 
-         MESSAGE("CutPlanes_i::BuildTableOfReal - SetRowTitle("<<iLineId+2<<",'"<<aString<<"')");
-       aTableOfReal->SetRowTitle(iLineId+2,aString.latin1());
-       aTableOfReal->SetRowUnit(iLineId+2,aUnitName.latin1());
+         MESSAGE("CutPlanes_i::BuildTableOfReal - SetRowTitle("<<iLineId+2<<",'"<<(const char*)aString.toLatin1()<<"')");
+       aTableOfReal->SetRowTitle(iLineId+2,(const char*)aString.toLatin1());
+       aTableOfReal->SetRowUnit(iLineId+2,(const char*)aUnitName.toLatin1());
       }
     }
   }catch(std::exception& exc){
index 742c1072126cec5c90a88df7fbe029d861c86e40..41c53209dfb136dbdc2ad7ae4fd0f9ab511a1f6f 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_PrsObject_i.hxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_CutLines_i_HeaderFile
 #define VISU_CutLines_i_HeaderFile
 
@@ -36,7 +36,7 @@ namespace VISU
 {
   //----------------------------------------------------------------------------
   class VISU_I_EXPORT CutLines_i : public virtual POA_VISU::CutLines,
-                     public virtual ScalarMap_i
+                                   public virtual ScalarMap_i
   {
     static int myNbPresent;
        CutLines_i(const CutLines_i&);
index a0f724b7cdb0330ad02634f061ccd6cb2c6804f1..c9411b389c583869fcd787136ca34860ffe58b69 100644 (file)
@@ -1,30 +1,31 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_PrsObject_i.cxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_CutPlanesPL.hxx"
+#include "VISU_Convertor.hxx"
 #include "VISU_Prs3dUtils.hh"
 #include "VISU_CutPlanes_i.hh"
 
@@ -32,7 +33,7 @@
 #include "VISU_Actor.h"
 
 #include "SUIT_ResourceMgr.h"
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 
 #ifdef _DEBUG_
 static int MYDEBUG = 0;
@@ -40,6 +41,7 @@ static int MYDEBUG = 0;
 static int MYDEBUG = 0;
 #endif
 
+using namespace std;
 
 //----------------------------------------------------------------------------
 size_t 
@@ -95,8 +97,12 @@ VISU::CutPlanes_i
 ::CutPlanes_i(EPublishInStudyMode thePublishInStudyMode):
   ColoredPrs3d_i(thePublishInStudyMode),
   ScalarMap_i(thePublishInStudyMode),
-  myCutPlanesPL(NULL)
-{}
+  myCutPlanesPL(NULL),
+  Deformation_i(this),
+  OptionalDeformation_i(this)
+{
+  if(MYDEBUG) MESSAGE("CutPlanes_i::CutPlanes_i()");
+}
 
 
 //----------------------------------------------------------------------------
@@ -125,12 +131,14 @@ VISU::CutPlanes_i
   SetOrientation(VISU::CutPlanes::Orientation(VISU::Storable::FindValue(theMap,"myBasePlane").toInt()),
                 Storable::FindValue(theMap,"aRot[0]").toDouble(),
                 Storable::FindValue(theMap,"aRot[1]").toDouble());
-  QStringList aPosList = QStringList::split("|",VISU::Storable::FindValue(theMap,"myPlanePosition") );
-  QStringList aCondList = QStringList::split("|",VISU::Storable::FindValue(theMap,"myPlaneCondition") );
+  QStringList aPosList = VISU::Storable::FindValue(theMap,"myPlanePosition").split("|", QString::SkipEmptyParts );
+  QStringList aCondList = VISU::Storable::FindValue(theMap,"myPlaneCondition").split("|", QString::SkipEmptyParts );
   for(int i = 0, iEnd = GetNbPlanes(); i < iEnd; i++)
     if(aCondList[i].toInt() == 0)
       SetPlanePosition(i,aPosList[i].toDouble());
 
+  OptionalDeformation_i::RestoreDeformation(theSObject,theMap);
+  
   return this;
 }
 
@@ -150,8 +158,9 @@ void VISU::CutPlanes_i::ToStream(std::ostringstream& theStr){
     aStrPos.append(QString::number(GetPlanePosition(i)) + "|");
     aStrCon.append(QString::number(IsDefault(i)) + "|");
   }
-  Storable::DataToStream( theStr, "myPlanePosition",  aStrPos.latin1());
-  Storable::DataToStream( theStr, "myPlaneCondition", aStrCon.latin1());
+  Storable::DataToStream( theStr, "myPlanePosition",  (const char*)aStrPos.toLatin1());
+  Storable::DataToStream( theStr, "myPlaneCondition", (const char*)aStrCon.toLatin1());
+  OptionalDeformation_i::DeformationToStream(theStr);
 }
 
 
@@ -321,6 +330,7 @@ VISU::CutPlanes_i
   }else
     myCutPlanesPL = dynamic_cast<VISU_CutPlanesPL*>(thePipeLine);
 
+  InitDeformedPipeLine(myCutPlanesPL);
   TSuperClass::CreatePipeLine(myCutPlanesPL);
 }
 
@@ -348,3 +358,10 @@ VISU::CutPlanes_i
   return NULL;
 }
 
+void
+VISU::CutPlanes_i::
+SameAs(const Prs3d_i* theOrigin){
+  if(MYDEBUG) MESSAGE("CutPlanes_i::SameAs()");
+  TSuperClass::SameAs(theOrigin);
+  OptionalDeformation_i::SameAsDeformation(dynamic_cast<const Deformation_i*>(theOrigin));
+}
index 9386f9f3ea241aef07e830b6d8aeeb9dbcdf86ab..e00faebbf98b74165474d5182758c51e0e66aafa 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_PrsObject_i.hxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_CutPlanes_i_HeaderFile
 #define VISU_CutPlanes_i_HeaderFile
 
 #include "VISU_ScalarMap_i.hh"
+#include "VISU_OptionalDeformation_i.hh"
 
 class VISU_CutPlanesPL;
 
@@ -35,7 +36,8 @@ namespace VISU
 {
   //----------------------------------------------------------------------------
   class VISU_I_EXPORT CutPlanes_i : public virtual POA_VISU::CutPlanes,
-                                   public virtual ScalarMap_i
+                                   public virtual ScalarMap_i,
+                                   public virtual OptionalDeformation_i
   {
     static int myNbPresent;
     CutPlanes_i(const CutPlanes_i&);
@@ -157,6 +159,10 @@ namespace VISU
     Restore(SALOMEDS::SObject_ptr theSObject,
            const Storable::TRestoringMap& theMap);
 
+    virtual 
+    void
+    SameAs(const Prs3d_i* theOrigin);
+
     //! Redefines VISU_ColoredPrs3d_i::CreateActor
     virtual 
     VISU_Actor* 
diff --git a/src/VISU_I/VISU_Deformation_i.cc b/src/VISU_I/VISU_Deformation_i.cc
new file mode 100755 (executable)
index 0000000..7ed03fa
--- /dev/null
@@ -0,0 +1,167 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  File   : VISU_Deformation_i.cc
+//  Author : 
+//  Module : VISU
+//
+#include "VISU_Deformation_i.hh"
+#include "VISU_Result_i.hh"
+#include "VISU_Prs3dUtils.hh"
+
+#include "VISU_DeformationPL.hxx"
+#include "VISU_Convertor.hxx"
+#include "VISU_DeformationPL.hxx"
+#include "VISUConfig.hh"
+
+#ifdef _DEBUG_
+static int MYDEBUG = 0;
+#else
+static int MYDEBUG = 0;
+#endif
+
+//---------------------------------------------------------------
+VISU::Deformation_i::Deformation_i(VISU::ColoredPrs3d_i *thePrs3d):
+  myColoredPrs3d(thePrs3d)
+{
+  if(MYDEBUG) MESSAGE("Deformation_i::Deformation_i()");
+}
+
+//---------------------------------------------------------------
+VISU::Deformation_i::~Deformation_i()
+{
+  if(MYDEBUG) MESSAGE("Deformation_i::~Deformation_i()");
+}
+
+//---------------------------------------------------------------
+void VISU::Deformation_i::SetScale(CORBA::Double theScale)
+{
+  if(MYDEBUG) MESSAGE("Deformation_i::SetScale()");
+
+  VISU::TSetModified aModified(GetColoredPrs3d());
+
+  ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_DeformationPL, vtkFloatingPointType>
+                  (GetSpecificDeformedPL(), &VISU_DeformationPL::SetScale, theScale));
+}
+
+//---------------------------------------------------------------
+void VISU::Deformation_i::InitDeformedPipeLine(VISU_DeformationPL* theDeformedPipeLine){
+  
+  if(MYDEBUG) MESSAGE("Deformation_i::InitDeformedPipeLine()");
+  myDeformationPL = theDeformedPipeLine;
+}
+
+//---------------------------------------------------------------
+CORBA::Double 
+VISU::Deformation_i
+::GetScale()
+{
+  if(MYDEBUG) MESSAGE("Deformation_i::GetScale()");
+  return GetSpecificDeformedPL()->GetScale();
+}
+
+//---------------------------------------------------------------
+VISU::Entity VISU::Deformation_i::GetVectorialFieldEntity(){
+  return myVectorialEntity;
+}
+
+//---------------------------------------------------------------
+char* VISU::Deformation_i::GetVectorialFieldName(){
+  return CORBA::string_dup(myVectorialFieldName.c_str());
+}
+
+//---------------------------------------------------------------
+void VISU::Deformation_i::
+DeformationToStream(std::ostringstream& theStr)
+{
+  Storable::DataToStream(theStr,"myScaleFactor", GetScale());
+  Storable::DataToStream(theStr,"myVectorialField", GetVectorialFieldName());
+  Storable::DataToStream(theStr,"myVectorialEntiry", GetVectorialFieldEntity());
+
+}
+
+//---------------------------------------------------------------
+void
+VISU::Deformation_i::RestoreDeformation(SALOMEDS::SObject_ptr theSObject,
+                                       const Storable::TRestoringMap& theMap)
+{
+  SetScale(VISU::Storable::FindValue(theMap,"myScaleFactor").toDouble());
+  VISU::Entity anEntity = VISU::Entity(VISU::Storable::FindValue(theMap, "myVectorialEntiry").toInt());
+  
+  SetVectorialField(anEntity,
+                   VISU::Storable::FindValue(theMap, "myVectorialField").toLatin1().constData()); 
+}
+
+//---------------------------------------------------------------
+void
+VISU::Deformation_i::SameAsDeformation(const Deformation_i *aDeformedPrs){
+  if(const Deformation_i* aPrs = dynamic_cast<const Deformation_i*>(aDeformedPrs)) {
+    Deformation_i* anOrigin = const_cast<Deformation_i*>(aPrs);
+    
+    CORBA::String_var aVectorialFieldName = anOrigin->GetVectorialFieldName();
+    VISU::Entity anEntity = anOrigin->GetVectorialFieldEntity();
+    this->SetVectorialField(anEntity,
+                           aVectorialFieldName);
+    this->SetScale(anOrigin->GetScale());
+  }
+}
+
+void VISU::Deformation_i::SetVectorialField(Entity theEntity, const char* theFieldName){
+  if(MYDEBUG) MESSAGE("CutPlanes_i::SetVectorialField()");
+
+  bool anIsModified = false;
+  if(!anIsModified)
+    anIsModified |= GetVectorialFieldEntity() != theEntity;
+  
+  if(!anIsModified)
+    anIsModified |= GetVectorialFieldName() != theFieldName;
+
+  if(!anIsModified)
+    return;
+
+  ColoredPrs3d_i *aColoredPrs = GetColoredPrs3d();
+  int aTimeStampNumber = aColoredPrs->GetTimeStampNumber();
+
+  VISU::TEntity aEntity = VISU::TEntity(theEntity);
+
+  VISU::Result_i::PInput anInput = aColoredPrs->GetCResult()->GetInput(aColoredPrs->GetCMeshName(),
+                                                                      theEntity,
+                                                                      theFieldName,
+                                                                      aTimeStampNumber);
+
+  PField aVectorialField = anInput->GetField(aColoredPrs->GetCMeshName(), aEntity, theFieldName);
+
+  VISU::PUnstructuredGridIDMapper anIDMapper = 
+    anInput->GetTimeStampOnMesh(aColoredPrs->GetCMeshName(),
+                               aEntity,
+                               theFieldName,
+                               aTimeStampNumber);
+  if(GetSpecificDeformedPL() && anIDMapper) {
+    ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_DeformationPL, VISU::PUnstructuredGridIDMapper>
+                    (GetSpecificDeformedPL(), &VISU_DeformationPL::SetVectorialField, anIDMapper));
+    
+    VISU::TSetModified aModified(GetColoredPrs3d());
+    
+    myVectorialEntity = theEntity;
+    myVectorialFieldName = theFieldName;
+    myVectorialField = anIDMapper;
+  }
+};
diff --git a/src/VISU_I/VISU_Deformation_i.hh b/src/VISU_I/VISU_Deformation_i.hh
new file mode 100755 (executable)
index 0000000..85dcf3a
--- /dev/null
@@ -0,0 +1,104 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  File   : VISU_Deformation_i.hxx
+//  Author : 
+//  Module : VISU
+//
+#ifndef VISU_Deformation_i_HeaderFile
+#define VISU_Deformation_i_HeaderFile
+
+#include "VISU_I.hxx"
+#include "VISU_ColoredPrs3d_i.hh"
+#include "VISU_DeformationPL.hxx"
+
+
+
+namespace VISU{
+
+  class VISU_I_EXPORT Deformation_i : public virtual POA_VISU::Deformation
+  {
+    Deformation_i(const Deformation_i&);
+  public:
+    typedef VISU::Deformation TInterface;
+
+    Deformation_i(VISU::ColoredPrs3d_i* theColoredPrs3d);
+    virtual ~Deformation_i();
+
+    virtual 
+    void
+    SetScale(CORBA::Double theScale);
+
+    virtual
+    CORBA::Double 
+    GetScale();
+
+    virtual
+    void
+    DeformationToStream(std::ostringstream& theStr);
+
+    virtual
+    void
+    RestoreDeformation(SALOMEDS::SObject_ptr theSObject,
+           const Storable::TRestoringMap& theMap);
+
+    virtual 
+    void 
+    SameAsDeformation(const Deformation_i *aDeformedPrs);
+
+    virtual
+    VISU::Entity
+    GetVectorialFieldEntity();
+
+    virtual
+    char* 
+    GetVectorialFieldName();
+
+    virtual void SetVectorialField(Entity theEntity, const char* theFieldName);
+
+  protected:
+    virtual
+    void
+    InitDeformedPipeLine(VISU_DeformationPL* theDeformedPipeLine);
+
+    VISU_DeformationPL*
+    GetSpecificDeformedPL() const
+    { 
+      return myDeformationPL; 
+    }
+
+    ColoredPrs3d_i* GetColoredPrs3d(){
+      return myColoredPrs3d;
+    }
+    
+    
+  private:
+    VISU_DeformationPL *myDeformationPL;
+
+    PField myVectorialField;
+    VISU::Entity myVectorialEntity;
+    std::string myVectorialFieldName;
+    ColoredPrs3d_i *myColoredPrs3d;
+    
+  };
+}
+
+#endif
diff --git a/src/VISU_I/VISU_DeformedShapeAndScalarMap_i.cc b/src/VISU_I/VISU_DeformedShapeAndScalarMap_i.cc
new file mode 100644 (file)
index 0000000..8fa94e4
--- /dev/null
@@ -0,0 +1,409 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+//  File   : VISU_DeformedShapeAndScalarMap_i.cc
+//  Author : Eugeny Nikolaev
+//  Module : VISU
+//
+#include "VISU_DeformedShapeAndScalarMap_i.hh"
+#include "VISU_Prs3dUtils.hh"
+#include "VISU_Result_i.hh"
+
+#include "VISU_ScalarMapAct.h"
+#include "VISU_DeformedShapeAndScalarMapPL.hxx"
+#include "VISU_Convertor.hxx"
+
+#include "SUIT_ResourceMgr.h"
+#include "SALOME_Event.h"
+
+#include <vtkUnstructuredGrid.h>
+#include <vtkProperty.h>
+#include <vtkMapper.h>
+
+#ifdef _DEBUG_
+static int MYDEBUG = 0;
+#else
+static int MYDEBUG = 0;
+#endif
+
+static int INCMEMORY = 4+12;
+
+using namespace std;
+
+//---------------------------------------------------------------
+size_t
+VISU::DeformedShapeAndScalarMap_i
+::IsPossible(Result_i* theResult, 
+            const std::string& theMeshName, 
+            VISU::Entity theEntity,
+            const std::string& theFieldName, 
+            CORBA::Long theTimeStampNumber,
+            bool theIsMemoryCheck)
+{
+  size_t aResult = 0;
+  try{
+    aResult = TSuperClass::IsPossible(theResult,
+                                     theMeshName,
+                                     theEntity,
+                                     theFieldName,
+                                     theTimeStampNumber,
+                                     false);
+    if(theIsMemoryCheck && aResult){
+      VISU::Result_i::PInput anInput = theResult->GetInput(theMeshName,
+                                                          theEntity,
+                                                          theFieldName,
+                                                          theTimeStampNumber);
+      VISU::PField aField = anInput->GetField(theMeshName,
+                                             (VISU::TEntity)theEntity,
+                                             theFieldName);
+      if(aField->myNbComp <= 1)
+       return 0;
+
+      bool anIsEstimated = true;
+      size_t aSize = anInput->GetTimeStampOnMeshSize(theMeshName,
+                                                    (VISU::TEntity)theEntity,
+                                                    theFieldName,
+                                                    theTimeStampNumber,
+                                                    anIsEstimated);
+      if(anIsEstimated)
+       aSize *= INCMEMORY;
+      aResult = VISU_PipeLine::CheckAvailableMemory(aSize);
+      if(MYDEBUG) 
+       MESSAGE("DeformedShapeAndScalarMap_i::IsPossible - CheckAvailableMemory = "<<float(aSize)<<"; aResult = "<<aResult);
+    }
+  }catch(std::exception& exc){
+    INFOS("Follow exception was occured :\n"<<exc.what());
+  }catch(...){
+    INFOS("Unknown exception was occured!");
+  }
+  return aResult;
+}
+
+//---------------------------------------------------------------
+int VISU::DeformedShapeAndScalarMap_i::myNbPresent = 0;
+
+//---------------------------------------------------------------
+QString
+VISU::DeformedShapeAndScalarMap_i
+::GenerateName() 
+{
+  return VISU::GenerateName("ScalarDef.Shape",myNbPresent++);
+}
+
+//---------------------------------------------------------------
+const string VISU::DeformedShapeAndScalarMap_i::myComment = "SCALARMAPONDEFORMEDSHAPE"; // It is obsolete. Use "DEFORMEDSHAPEANDSCALARMAP" instead.
+
+//---------------------------------------------------------------
+const char* 
+VISU::DeformedShapeAndScalarMap_i
+::GetComment() const
+{ 
+  return myComment.c_str();
+}
+
+//----------------------------------------------------------------------------
+const char*
+VISU::DeformedShapeAndScalarMap_i
+::GetIconName()
+{
+  if (!IsGroupsUsed())
+    return "ICON_TREE_SCALAR_MAP_ON_DEFORMED_SHAPE";
+  else
+    return "ICON_TREE_SCALAR_MAP_ON_DEFORMED_SHAPE_GROUPS";
+}
+
+//---------------------------------------------------------------
+VISU::DeformedShapeAndScalarMap_i
+::DeformedShapeAndScalarMap_i(EPublishInStudyMode thePublishInStudyMode) :
+  ColoredPrs3d_i(thePublishInStudyMode),
+  ScalarMap_i(thePublishInStudyMode),
+  myDeformedShapeAndScalarMapPL(NULL),
+  myScalarTimeStampNumber(1)
+{}
+
+
+//---------------------------------------------------------------
+VISU::Storable* 
+VISU::DeformedShapeAndScalarMap_i
+::Create(const std::string& theMeshName, 
+        VISU::Entity theEntity,
+        const std::string& theFieldName, 
+        CORBA::Long theTimeStampNumber)
+{
+  TSuperClass::Create(theMeshName,
+                            theEntity,
+                            theFieldName,
+                            theTimeStampNumber);
+  SetScalarField(theEntity,
+                theFieldName.c_str(),
+                theTimeStampNumber);
+  return this;
+}
+
+
+//---------------------------------------------------------------
+VISU::Storable*
+VISU::DeformedShapeAndScalarMap_i
+::Restore(SALOMEDS::SObject_ptr theSObject,
+         const Storable::TRestoringMap& theMap)
+{
+  if(!TSuperClass::Restore(theSObject, theMap))
+    return NULL;
+
+  QString aMeshName = VISU::Storable::FindValue(theMap,"myScalarMeshName");
+  VISU::Entity anEntity = VISU::Entity(VISU::Storable::FindValue(theMap,"myScalarEntity").toInt());
+
+  QString aFieldName = VISU::Storable::FindValue(theMap,"myScalarFieldName");
+  int aTimeStampNumber = VISU::Storable::FindValue(theMap,"myScalarIteration").toInt();
+
+  SetScalarField(anEntity,
+                aFieldName.toLatin1().constData(),
+                aTimeStampNumber);
+
+  SetScale(VISU::Storable::FindValue(theMap,"myFactor").toDouble());
+  
+  return this;
+}
+
+
+//---------------------------------------------------------------
+void
+VISU::DeformedShapeAndScalarMap_i
+::ToStream(std::ostringstream& theStr)
+{
+  TSuperClass::ToStream(theStr);
+  
+  Storable::DataToStream( theStr, "myScalarEntity",    int(myScalarEntity));
+  Storable::DataToStream( theStr, "myScalarFieldName", myScalarFieldName.c_str());
+  Storable::DataToStream( theStr, "myScalarIteration", int(myScalarTimeStampNumber));
+
+  Storable::DataToStream( theStr, "myFactor", GetScale() );
+}
+
+
+//---------------------------------------------------------------
+VISU::DeformedShapeAndScalarMap_i
+::~DeformedShapeAndScalarMap_i()
+{
+  if(MYDEBUG) MESSAGE("DeformedShapeAndScalarMap_i::~DeformedShapeAndScalarMap_i()");
+}
+
+
+//---------------------------------------------------------------
+void
+VISU::DeformedShapeAndScalarMap_i
+::SameAs(const Prs3d_i* theOrigin)
+{
+  TSuperClass::SameAs(theOrigin);
+  
+  if(const DeformedShapeAndScalarMap_i* aPrs3d = dynamic_cast<const DeformedShapeAndScalarMap_i*>(theOrigin)){
+    DeformedShapeAndScalarMap_i* anOrigin = const_cast<DeformedShapeAndScalarMap_i*>(aPrs3d);
+    CORBA::String_var aFieldName = anOrigin->GetScalarFieldName();
+    
+    SetScalarField(anOrigin->GetScalarEntity(),
+                  aFieldName,
+                  anOrigin->GetScalarTimeStampNumber());
+    SetTitle(anOrigin->GetTitle()); //fix of 20094 issue
+    SetScalarMode(anOrigin->GetScalarMode()); //
+    if(!IsRangeFixed() && IsPipeLineExists()) //fix of 20107 issue
+      SetSourceRange();                       //
+    Update();
+  }
+}
+
+
+//---------------------------------------------------------------
+void
+VISU::DeformedShapeAndScalarMap_i
+::SetScale(CORBA::Double theScale) 
+{ 
+  VISU::TSetModified aModified(this);
+
+  ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_DeformedShapeAndScalarMapPL, vtkFloatingPointType>
+                  (GetSpecificPL(), &VISU_DeformedShapeAndScalarMapPL::SetScale, theScale));
+}
+
+
+//---------------------------------------------------------------
+CORBA::Double
+VISU::DeformedShapeAndScalarMap_i
+::GetScale()
+{
+  return myDeformedShapeAndScalarMapPL->GetScale();
+}
+
+
+//---------------------------------------------------------------
+void
+VISU::DeformedShapeAndScalarMap_i
+::CreatePipeLine(VISU_PipeLine* thePipeLine)
+{
+  if(!thePipeLine){
+    myDeformedShapeAndScalarMapPL = VISU_DeformedShapeAndScalarMapPL::New();
+  }else
+    myDeformedShapeAndScalarMapPL = dynamic_cast<VISU_DeformedShapeAndScalarMapPL*>(thePipeLine);
+
+  myDeformedShapeAndScalarMapPL->GetMapper()->SetScalarVisibility(1);
+
+  TSuperClass::CreatePipeLine(myDeformedShapeAndScalarMapPL);
+}
+
+
+//---------------------------------------------------------------
+bool
+VISU::DeformedShapeAndScalarMap_i
+::CheckIsPossible() 
+{
+  return IsPossible(GetCResult(),GetCMeshName(),GetEntity(),GetCFieldName(),GetTimeStampNumber(),true);
+}
+
+
+//---------------------------------------------------------------
+VISU_Actor* 
+VISU::DeformedShapeAndScalarMap_i
+::CreateActor() 
+{
+  VISU_Actor* anActor = TSuperClass::CreateActor(true);
+  SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
+  int  aDispMode = aResourceMgr->integerValue("VISU", "scalar_def_represent", 2);
+  bool toShrink  = aResourceMgr->booleanValue("VISU", "scalar_def_shrink", false);
+  anActor->SetRepresentation(aDispMode);
+  if (toShrink) 
+    anActor->SetShrink();
+  anActor->SetVTKMapping(false);
+  return anActor;
+}
+
+
+//---------------------------------------------------------------
+void
+VISU::DeformedShapeAndScalarMap_i
+::UpdateActor(VISU_Actor* theActor) 
+{
+  if(VISU_ScalarMapAct* anActor = dynamic_cast<VISU_ScalarMapAct*>(theActor)){
+    anActor->SetBarVisibility(true);
+    GetPipeLine()->GetMapper()->SetScalarVisibility(1);
+  }
+  TSuperClass::UpdateActor(theActor);
+}
+
+
+//---------------------------------------------------------------
+void
+VISU::DeformedShapeAndScalarMap_i
+::SetField(VISU::PField theField)
+{
+  TSuperClass::SetField(theField);
+  
+  if(!myScalarField)
+    myScalarField = theField;
+}
+
+
+//---------------------------------------------------------------
+void
+VISU::DeformedShapeAndScalarMap_i
+::SetScalarField(VISU::Entity theEntity,
+                const char* theFieldName,
+                CORBA::Long theTimeStampNumber)
+{
+  bool anIsModified = false;
+
+  if(!anIsModified)
+    anIsModified |= myScalarEntity != theEntity;
+
+  if(!anIsModified)
+    anIsModified |= myScalarFieldName != theFieldName;
+
+  if(!anIsModified)
+    anIsModified |= myScalarTimeStampNumber != theTimeStampNumber;
+  
+  if(!anIsModified)
+    return;
+
+  VISU::TSetModified aModified(this);
+
+  VISU::TEntity aEntity = VISU::TEntity(theEntity);
+  VISU::Result_i::PInput anInput = GetCResult()->GetInput(GetCMeshName(),
+                                                         theEntity,
+                                                         theFieldName,
+                                                         theTimeStampNumber);
+  myScalarField = anInput->GetField(GetCMeshName(), aEntity, theFieldName);
+
+  VISU::PUnstructuredGridIDMapper anIDMapper = 
+    anInput->GetTimeStampOnMesh(GetCMeshName(),
+                               aEntity,
+                               theFieldName,
+                               theTimeStampNumber);
+
+  vtkUnstructuredGrid* anOutput = anIDMapper->GetUnstructuredGridOutput();
+  if(myDeformedShapeAndScalarMapPL && anOutput)
+    ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_DeformedShapeAndScalarMapPL, vtkDataSet*>
+                    (GetSpecificPL(), &VISU_DeformedShapeAndScalarMapPL::SetScalars, anOutput));
+  
+  myScalarEntity = theEntity;
+  myScalarFieldName = theFieldName;
+  myScalarTimeStampNumber = theTimeStampNumber;
+
+  SetTitle(theFieldName);
+  SetScalarMode(GetScalarMode());
+  if(!IsRangeFixed() && IsPipeLineExists())
+    SetSourceRange();
+
+  myParamsTime.Modified();
+}
+
+
+//---------------------------------------------------------------
+VISU::Entity 
+VISU::DeformedShapeAndScalarMap_i
+::GetScalarEntity()
+{
+  return myScalarEntity;
+}
+
+
+//---------------------------------------------------------------
+char* 
+VISU::DeformedShapeAndScalarMap_i
+::GetScalarFieldName()
+{
+  return CORBA::string_dup(myScalarFieldName.c_str());
+}
+
+
+//---------------------------------------------------------------
+CORBA::Long 
+VISU::DeformedShapeAndScalarMap_i
+::GetScalarTimeStampNumber()
+{
+  return myScalarTimeStampNumber;
+}
+
+
+//---------------------------------------------------------------
+VISU::PField
+VISU::DeformedShapeAndScalarMap_i
+::GetScalarField()
+{
+  return myScalarField;
+}
diff --git a/src/VISU_I/VISU_DeformedShapeAndScalarMap_i.hh b/src/VISU_I/VISU_DeformedShapeAndScalarMap_i.hh
new file mode 100644 (file)
index 0000000..a50f64d
--- /dev/null
@@ -0,0 +1,179 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+// File:    VISU_DeformedShapeAndScalarMap_i.hh
+// Author:  Eugeny Nikolaev
+// Module : VISU
+//
+#ifndef VISU_DeformedShapeAndScalarMap_i_HeaderFile
+#define VISU_DeformedShapeAndScalarMap_i_HeaderFile
+
+#include "VISU_ScalarMap_i.hh"
+
+class VISU_DeformedShapeAndScalarMapPL;
+
+namespace VISU
+{
+  //----------------------------------------------------------------------------  
+  //! Class of Scalar Map on Deformed Shape presentation.
+  class VISU_I_EXPORT DeformedShapeAndScalarMap_i : public virtual POA_VISU::DeformedShapeAndScalarMap,
+                                                   public virtual ScalarMap_i
+  {
+    static int myNbPresent;
+    DeformedShapeAndScalarMap_i(const DeformedShapeAndScalarMap_i&);
+    
+  public:
+    //----------------------------------------------------------------------------     
+    typedef ScalarMap_i TSuperClass;
+    typedef VISU::DeformedShapeAndScalarMap TInterface;
+        
+    explicit
+    DeformedShapeAndScalarMap_i(EPublishInStudyMode thePublishInStudyModep);
+    
+    virtual
+    ~DeformedShapeAndScalarMap_i();
+
+    virtual
+    VISU::VISUType
+    GetType()
+    { 
+      return VISU::TDEFORMEDSHAPEANDSCALARMAP;
+    }
+    
+    virtual 
+    void
+    SetScale(CORBA::Double theScale);
+
+    virtual
+    CORBA::Double 
+    GetScale();
+
+    virtual 
+    void
+    SameAs(const Prs3d_i* theOrigin);
+
+    VISU_DeformedShapeAndScalarMapPL* 
+    GetSpecificPL()
+    { 
+      return myDeformedShapeAndScalarMapPL;
+    }
+   
+  protected:
+    //! Redefines VISU_ColoredPrs3d_i::SetField
+    virtual
+    void
+    SetField(VISU::PField theField);
+
+    //! Redefines VISU_ColoredPrs3d_i::CreatePipeLine
+    virtual
+    void
+    CreatePipeLine(VISU_PipeLine* thePipeLine);
+
+    //! Redefines VISU_ColoredPrs3d_i::CheckIsPossible
+    virtual 
+    bool 
+    CheckIsPossible();
+
+  public:
+    //! Redefines VISU_ColoredPrs3d_i::IsPossible
+    static
+    size_t
+    IsPossible(Result_i* theResult, 
+              const std::string& theMeshName, 
+              VISU::Entity theEntity,
+              const std::string& theFieldName, 
+              CORBA::Long theTimeStampNumber,
+              bool theIsMemoryCheck);
+
+    //! Redefines VISU_ColoredPrs3d_i::IsPossible
+    virtual
+    Storable* 
+    Create(const std::string& theMeshName, 
+          VISU::Entity theEntity,
+          const std::string& theFieldName, 
+          CORBA::Long theTimeStampNumber);
+
+    //! Redefines VISU_ColoredPrs3d_i::ToStream
+    virtual
+    void
+    ToStream(std::ostringstream& theStr);
+
+    //! Redefines VISU_ColoredPrs3d_i::Restore
+    virtual
+    Storable* 
+    Restore(SALOMEDS::SObject_ptr theSObject,
+           const Storable::TRestoringMap& theMap);
+    
+    static const std::string myComment;
+
+    virtual
+    const char* 
+    GetComment() const;
+
+    virtual
+    QString 
+    GenerateName();
+
+    virtual
+    const char* 
+    GetIconName();
+    
+    virtual
+    VISU_Actor* 
+    CreateActor();
+
+    virtual
+    void
+    UpdateActor(VISU_Actor* theActor) ;
+
+    virtual 
+    void
+    SetScalarField(VISU::Entity theEntity,
+                  const char* theFieldName,
+                  CORBA::Long theTimeStampNumber);
+
+    virtual
+    VISU::Entity
+    GetScalarEntity();
+
+    virtual
+    char* 
+    GetScalarFieldName();
+
+    virtual
+    CORBA::Long
+    GetScalarTimeStampNumber();
+
+    virtual 
+    VISU::PField
+    GetScalarField();
+
+  private:
+    VISU_DeformedShapeAndScalarMapPL *myDeformedShapeAndScalarMapPL;
+
+    PField myScalarField;
+    VISU::Entity myScalarEntity;
+    std::string myScalarFieldName;
+    CORBA::Long myScalarTimeStampNumber;
+  };
+}
+#endif
index 5e8ae25df85037ccdb09dd3661c2870ab03b4893..fa280ebf1af303c12ec38d2e2f48824a9e20a181 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_PrsObject_i.cxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_DeformedShape_i.hh"
 #include "VISU_Prs3dUtils.hh"
 #include "VISU_Result_i.hh"
@@ -34,7 +34,7 @@
 #include "VISU_Convertor.hxx"
 
 #include "SUIT_ResourceMgr.h"
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 
 #include <vtkDataSetMapper.h>
 #include <vtkProperty.h>
@@ -45,6 +45,7 @@ static int MYDEBUG = 0;
 static int MYDEBUG = 0;
 #endif
 
+using namespace std;
 
 //---------------------------------------------------------------
 size_t
@@ -123,6 +124,7 @@ VISU::DeformedShape_i
 ::DeformedShape_i(EPublishInStudyMode thePublishInStudyMode):
   ColoredPrs3d_i(thePublishInStudyMode),
   ScalarMap_i(thePublishInStudyMode),
+  MonoColorPrs_i(thePublishInStudyMode),
   myDeformedShapePL(NULL)
 {
   if(MYDEBUG) MESSAGE("DeformedShape_i::DeformedShape_i");
@@ -151,8 +153,6 @@ VISU::DeformedShape_i
         const std::string& theFieldName, 
         CORBA::Long theTimeStampNumber)
 {
-  myIsColored = false;
-  myColor.R = myColor.G = myColor.B = 0.5;
   return TSuperClass::Create(theMeshName,theEntity,theFieldName,theTimeStampNumber);
 }
 
@@ -167,10 +167,6 @@ VISU::DeformedShape_i
     return NULL;
 
   SetScale(VISU::Storable::FindValue(theMap,"myFactor").toDouble());
-  myIsColored = VISU::Storable::FindValue(theMap,"myIsColored").toInt();
-  myColor.R = VISU::Storable::FindValue(theMap,"myColor.R").toDouble();
-  myColor.G = VISU::Storable::FindValue(theMap,"myColor.G").toDouble();
-  myColor.B = VISU::Storable::FindValue(theMap,"myColor.B").toDouble();
 
   return this;
 }
@@ -184,11 +180,6 @@ VISU::DeformedShape_i
   TSuperClass::ToStream(theStr);
 
   Storable::DataToStream( theStr, "myFactor", GetScale() );
-
-  Storable::DataToStream( theStr, "myIsColored", myIsColored );
-  Storable::DataToStream( theStr, "myColor.R", myColor.R );
-  Storable::DataToStream( theStr, "myColor.G", myColor.G );
-  Storable::DataToStream( theStr, "myColor.B", myColor.B );
 }
 
 
@@ -220,54 +211,6 @@ VISU::DeformedShape_i
 }
 
 
-//---------------------------------------------------------------
-CORBA::Boolean 
-VISU::DeformedShape_i
-::IsColored()
-{
-  return myIsColored;
-}
-
-
-//---------------------------------------------------------------
-void
-VISU::DeformedShape_i
-::ShowColored(CORBA::Boolean theColored)
-{
-  if(myIsColored == theColored)
-    return;
-
-  myIsColored = theColored; 
-  myParamsTime.Modified();
-}
-
-//---------------------------------------------------------------
-SALOMEDS::Color 
-VISU::DeformedShape_i
-::GetColor()
-{
-  return myColor;
-}
-
-
-//---------------------------------------------------------------
-void
-VISU::DeformedShape_i
-::SetColor(const SALOMEDS::Color& theColor)
-{
-  bool anIsSameValue = VISU::CheckIsSameValue(myColor.R, theColor.R);
-  anIsSameValue &= VISU::CheckIsSameValue(myColor.G, theColor.G);
-  anIsSameValue &= VISU::CheckIsSameValue(myColor.B, theColor.B);
-  if(anIsSameValue)
-    return;
-
-  VISU::TSetModified aModified(this);
-  
-  myColor = theColor;
-  myParamsTime.Modified();
-}
-
-
 //---------------------------------------------------------------
 void
 VISU::DeformedShape_i
@@ -321,34 +264,7 @@ VISU::DeformedShape_i
   bool toShrink  = aResourceMgr->booleanValue("VISU", "deformed_shape_shrink", false);
   anActor->SetRepresentation(aDispMode);
   if (toShrink && !toSupressShrinking) anActor->SetShrink();
-  anActor->GetProperty()->SetColor(myColor.R,myColor.G,myColor.B);
   return anActor;
 }
 
 
-//---------------------------------------------------------------
-VISU_Actor* 
-VISU::DeformedShape_i
-::CreateActor() 
-{
-  return CreateActor(false);
-}
-
-
-//---------------------------------------------------------------
-void
-VISU::DeformedShape_i
-::UpdateActor(VISU_Actor* theActor) 
-{
-  if(VISU_ScalarMapAct* anActor = dynamic_cast<VISU_ScalarMapAct*>(theActor)){
-    if(IsColored()){
-      anActor->SetBarVisibility(true);
-      GetPipeLine()->GetMapper()->SetScalarVisibility(1);
-    }else{
-      anActor->SetBarVisibility(false);
-      GetPipeLine()->GetMapper()->SetScalarVisibility(0);
-      anActor->GetProperty()->SetColor(myColor.R,myColor.G,myColor.B);
-    }
-    TSuperClass::UpdateActor(theActor);
-  }
-}
index 1f5d90c78c5cd6513dd043d5fa90739bb6b4cbe0..f2b95dd9cbfda9bea749253eacbb81d2116e30a6 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_PrsObject_i.hxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_DeformedShape_i_HeaderFile
 #define VISU_DeformedShape_i_HeaderFile
 
 #include <VISU_I.hxx>
-#include "VISU_ScalarMap_i.hh"
+#include "VISU_MonoColorPrs_i.hh"
 
 class VISU_DeformedShapePL;
 
@@ -36,14 +36,14 @@ namespace VISU
 {
   //----------------------------------------------------------------------------
   class VISU_I_EXPORT DeformedShape_i : public virtual POA_VISU::DeformedShape,
-                         public virtual ScalarMap_i
+                                       public virtual MonoColorPrs_i
   {
     static int myNbPresent;
     DeformedShape_i(const DeformedShape_i&);
 
   public:
     //----------------------------------------------------------------------------
-    typedef ScalarMap_i TSuperClass;
+    typedef MonoColorPrs_i TSuperClass;
     typedef VISU::DeformedShape TInterface;
 
     explicit
@@ -71,22 +71,6 @@ namespace VISU
     CORBA::Double 
     GetScale();
 
-    virtual 
-    CORBA::Boolean 
-    IsColored();
-
-    virtual 
-    void
-    ShowColored(CORBA::Boolean theColored);
-
-    virtual 
-    SALOMEDS::Color 
-    GetColor();
-
-    virtual
-    void
-    SetColor(const SALOMEDS::Color& theColor);
-
     VISU_DeformedShapePL* 
     GetSpecificPL() const
     { 
@@ -105,8 +89,6 @@ namespace VISU
     CheckIsPossible();
 
     VISU_DeformedShapePL *myDeformedShapePL;
-    SALOMEDS::Color myColor;
-    bool myIsColored;
 
   public:
     static
@@ -152,17 +134,10 @@ namespace VISU
     void
     SetMapScale(double theMapScale = 1.0);
 
-    virtual 
-    VISU_Actor* 
-    CreateActor();
-
     virtual 
     VISU_Actor* 
     CreateActor(bool toSupressShrinking);
 
-    virtual 
-    void
-    UpdateActor(VISU_Actor* theActor) ;
   };
 }
 
index aea67bc018a99c96bcf6ac2e5e88351c5bb46f0f..c91a9c014c385fa6c1de056e1cfe98a371fff1eb 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_DumpPython.cc
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_Gen_i.hh"
 #include "VISU_Result_i.hh"
 #include "VISU_PrsObject_i.hh"
@@ -39,8 +39,9 @@
 #include "VISU_StreamLines_i.hh"
 #include "VISU_Plot3D_i.hh"
 #include "VISU_Table_i.hh"
+#include "VISU_PointMap3d_i.hh"
 #include "VISU_GaussPoints_i.hh"
-#include "VISU_ScalarMapOnDeformedShape_i.hh"
+#include "VISU_DeformedShapeAndScalarMap_i.hh"
 #include "VISU_ColoredPrs3dCache_i.hh"
 #include "VISU_ColoredPrs3dHolder_i.hh"
 
@@ -50,8 +51,8 @@
 #include <strstream>
 #include <functional>
 
-#include <qstring.h>
-#include <qfileinfo.h>
+#include <QString>
+#include <QFileInfo>
 
 //#define COUT
 
@@ -105,7 +106,7 @@ namespace VISU
   {
     CORBA::String_var aString = theSObject->GetName();
 
-    std::string aName = QString(aString.in()).simplifyWhiteSpace().latin1();
+    std::string aName = QString(aString.in()).simplified().toLatin1().data();
 
     //replace_if(aName.begin(),aName.end(),not1(ptr_fun(isxdigit)),'_');
     replace_if(aName.begin(),aName.end(),TReplacePredicate(),'_');
@@ -178,6 +179,28 @@ namespace VISU
 
 
   //---------------------------------------------------------------------------
+  void SetClippingPlane(Prs3d_i* thePrs, string theName,
+                       std::ostream& theStr,
+                       std::string thePrefix) 
+  {
+    VISU_CutPlaneFunction* aPlane;
+    VISU_Gen_i* aGen = VISU_Gen_i::GetVisuGenImpl();
+    VISU_ClippingPlaneMgr& aMgr = aGen->GetClippingPlaneMgr();
+    int aId;
+    for (int i = 0; i < thePrs->GetNumberOfClippingPlanes(); i++) {
+      aPlane = dynamic_cast<VISU_CutPlaneFunction*>(thePrs->GetClippingPlane(i));
+      if (aPlane) {
+       if (!aPlane->isAuto()) {
+         aId = aMgr.GetPlaneId(aPlane);
+         if (aId > -1) {
+           theStr<<thePrefix<<"aVisu.ApplyClippingPlane("<<theName<<", "<<aId<<")"<<endl;
+         }
+       }
+      }
+    }
+  }
+  
+
   void
   Prs3dToPython(VISU::Prs3d_i* theServant,
                std::ostream& theStr,
@@ -187,6 +210,7 @@ namespace VISU
     float x, y, z;
     theServant->GetOffset(x,y,z);
     theStr<<thePrefix<<theName<<".SetOffset("<<x<<", "<<y<<", "<<z<<")"<<endl;
+    SetClippingPlane(theServant, theName, theStr, thePrefix);
   }
 
   //---------------------------------------------------------------------------
@@ -289,10 +313,10 @@ namespace VISU
 
     std::string aParam;
     switch(theServant->GetBarOrientation()){
-    case ColoredPrs3d::HORIZONTAL:
+    case ColoredPrs3dBase::HORIZONTAL:
       aParam = "VISU.ColoredPrs3d.HORIZONTAL";
       break;
-    case ColoredPrs3d::VERTICAL:
+    case ColoredPrs3dBase::VERTICAL:
       aParam = "VISU.ColoredPrs3d.VERTICAL";
       break;
     }
@@ -363,7 +387,7 @@ namespace VISU
 
     QString aMainTexture = theServant->GetQMainTexture();
     QString anAlphaTexture = theServant->GetQAlphaTexture();
-    theStr<<thePrefix<<theName<<".SetTextures('"<<aMainTexture.latin1()<<"', '"<<anAlphaTexture.latin1()<<"')"<<endl;
+    theStr<<thePrefix<<theName<<".SetTextures('"<<aMainTexture.toLatin1().data()<<"', '"<<anAlphaTexture.toLatin1().data()<<"')"<<endl;
 
     theStr<<thePrefix<<theName<<".SetAlphaThreshold("<<theServant->GetAlphaThreshold()<<")"<<endl;
 
@@ -410,11 +434,28 @@ namespace VISU
       aParam = "VISU.LOGARITHMIC";
       break;
     }
+    std::string aVisible = theServant->IsBarVisible()? "True" : "False";
     theStr<<thePrefix<<theName<<".SetScaling("<<aParam<<")"<<endl;
+    theStr<<thePrefix<<theName<<".SetBarVisible("<<aVisible<<")"<<endl;
 
     return thePrefix;
   }
 
+  //---------------------------------------------------------------------------
+  std::string
+  MonoColorPrsToPython(SALOMEDS::SObject_ptr theSObject,
+                      VISU::MonoColorPrs_i* theServant,
+                      std::ostream& theStr,
+                      const std::string& theName,
+                      TColoredPrs3dFactory& thePrsFactory,
+                      std::string thePrefix)
+  {
+    thePrefix = ScalarMapToPython(theSObject, theServant, theStr, theName, thePrsFactory, thePrefix);
+    theStr<<thePrefix<<endl;
+    theStr<<thePrefix<<theName<<".ShowColored("<<GetBoolean(theServant->IsColored())<<")"<<endl;
+    theStr<<thePrefix<<theName<<".SetColor("<<GetColor(theServant->GetColor())<<")"<<endl;
+    return thePrefix;
+  }
 
   //---------------------------------------------------------------------------
   std::string
@@ -425,12 +466,12 @@ namespace VISU
                        TColoredPrs3dFactory& thePrsFactory,
                        std::string thePrefix)
   {
-    thePrefix = ScalarMapToPython(theSObject, theServant, theStr, theName, thePrsFactory, thePrefix);
+    thePrefix = MonoColorPrsToPython(theSObject, theServant, theStr, theName, thePrsFactory, thePrefix);
     theStr<<thePrefix<<endl;
 
     theStr<<thePrefix<<theName<<".SetScale("<<theServant->GetScale()<<")"<<endl;
-    theStr<<thePrefix<<theName<<".ShowColored("<<GetBoolean(theServant->IsColored())<<")"<<endl;
-    theStr<<thePrefix<<theName<<".SetColor("<<GetColor(theServant->GetColor())<<")"<<endl;
+//     theStr<<thePrefix<<theName<<".ShowColored("<<GetBoolean(theServant->IsColored())<<")"<<endl;
+//     theStr<<thePrefix<<theName<<".SetColor("<<GetColor(theServant->GetColor())<<")"<<endl;
 
     return thePrefix;
   }
@@ -446,7 +487,8 @@ namespace VISU
                      TColoredPrs3dFactory& thePrsFactory,
                      std::string thePrefix)
   {
-    thePrefix = DeformedShapeToPython(theSObject, theServant, theStr, theName, thePrsFactory, thePrefix);
+    thePrefix = MonoColorPrsToPython(theSObject, theServant, theStr, theName, thePrsFactory, thePrefix);
+    //    thePrefix = DeformedShapeToPython(theSObject, theServant, theStr, theName, thePrsFactory, thePrefix);
     theStr<<thePrefix<<endl;
     
     std::string aParam;
@@ -490,12 +532,12 @@ namespace VISU
 
   //---------------------------------------------------------------------------
   std::string
-  ScalarMapOnDeformedShapeToPython(SALOMEDS::SObject_ptr theSObject,
-                                  VISU::ScalarMapOnDeformedShape_i* theServant,
-                                  std::ostream& theStr,
-                                  const std::string& theName,
-                                  TColoredPrs3dFactory& thePrsFactory,
-                                  std::string thePrefix)
+  DeformedShapeAndScalarMapToPython(SALOMEDS::SObject_ptr theSObject,
+                                   VISU::DeformedShapeAndScalarMap_i* theServant,
+                                   std::ostream& theStr,
+                                   const std::string& theName,
+                                   TColoredPrs3dFactory& thePrsFactory,
+                                   std::string thePrefix)
   {
     thePrefix = ScalarMapToPython(theSObject, theServant, theStr, theName, thePrsFactory, thePrefix);
     theStr<<thePrefix<<endl;
@@ -594,6 +636,7 @@ namespace VISU
     theStr<<thePrefix<<endl;
 
     theStr<<thePrefix<<theName<<".SetNbSurfaces("<<theServant->GetNbSurfaces()<<")"<<endl;
+    theStr<<thePrefix<<theName<<".ShowLabels("<<theServant->IsLabeled()<<","<<theServant->GetNbLabels()<<")"<<endl;
 
     return thePrefix;
   }
@@ -634,6 +677,27 @@ namespace VISU
        theStr<<thePrefix<<theName<<".SetPlanePosition("<<anId<<", "<<theServant->GetPlanePosition(anId)<<")"<<endl;
     }
 
+    theStr<<thePrefix<<theName<<".UseDeformation("<<GetBoolean(theServant->IsDeformed())<<")"<<endl;
+    if(theServant->IsDeformed()){
+      theStr<< thePrefix << theName << ".SetScale(" << theServant->GetScale()<<")"<<endl;
+      std::string aStringEntity;
+      VISU::Entity anEntity = theServant->GetVectorialFieldEntity();
+      switch(anEntity){
+      case NODE:
+       aStringEntity = "VISU.NODE";
+       break;
+      case EDGE:
+       aStringEntity = "VISU.EDGE";
+       break;
+      case FACE:
+       aStringEntity = "VISU.FACE";
+       break;
+      case CELL:
+       aStringEntity = "VISU.CELL";
+       break;
+      }
+      theStr<< thePrefix << theName << ".SetVectorialField("<<aStringEntity<<", '" << theServant->GetVectorialFieldName() <<"')"<<endl;
+    }
     return thePrefix;
   }
 
@@ -731,7 +795,6 @@ namespace VISU
     return thePrefix;
   }
 
-
   //---------------------------------------------------------------------------
   // declaration
   void DumpChildrenToPython(SALOMEDS::Study_ptr theStudy,
@@ -770,7 +833,7 @@ namespace VISU
       bool anIsExist;
       QString aMethodName = VISU::Storable::FindValue(aMap,"myComment",&anIsExist);
       if(anIsExist){
-       if(strcmp(aMethodName.latin1(),"ImportTables") == 0){
+       if(strcmp(aMethodName.toLatin1().data(),"ImportTables") == 0){
          return;
        }
       }
@@ -959,7 +1022,7 @@ namespace VISU
     }
   }
 
-  
+
 
   //---------------------------------------------------------------------------
   void
@@ -1194,6 +1257,7 @@ namespace VISU
              break;
            }
            theStr<<thePrefix<<aName<<".SetPresentationType("<<aParam<<")"<<endl;
+           theStr<<thePrefix<<aName<<".SetShrink("<<(aServant->IsShrank()? "True" : "False")<<")"<<endl;
            theStr<<thePrefix<<endl;
 
            DumpChildrenToPython(theStudy,
@@ -1232,9 +1296,10 @@ namespace VISU
           }
           return;
         case VISU::TSCALARMAPONDEFORMEDSHAPE:
-          if(ScalarMapOnDeformedShape_i* aServant = dynamic_cast<ScalarMapOnDeformedShape_i*>(GetServant(anObj).in())){
-           TCreateFromResult aPrsFactory(theSObject, aServant, aName, "ScalarMapOnDeformedShapeOnField", theArgumentName);
-           thePrefix = ScalarMapOnDeformedShapeToPython(theSObject, aServant, theStr, aName, aPrsFactory, thePrefix);
+       case VISU::TDEFORMEDSHAPEANDSCALARMAP:
+          if(DeformedShapeAndScalarMap_i* aServant = dynamic_cast<DeformedShapeAndScalarMap_i*>(GetServant(anObj).in())){
+           TCreateFromResult aPrsFactory(theSObject, aServant, aName, "DeformedShapeAndScalarMapOnField", theArgumentName);
+           thePrefix = DeformedShapeAndScalarMapToPython(theSObject, aServant, theStr, aName, aPrsFactory, thePrefix);
            theStr<<thePrefix<<"pass"<<endl<<endl;
           }
           return;
@@ -1285,6 +1350,78 @@ namespace VISU
             theStr<<thePrefix<<"pass"<<endl<<endl;
           }
           return;
+        case VISU::TPOINTMAP3D:
+          if (PointMap3d_i* aServant = dynamic_cast<PointMap3d_i*>(GetServant(anObj).in())) {
+           CORBA::Short aTag = theSObject->Tag();
+           theStr<<thePrefix<<"anIsFound, aSObject = "<<theArgumentName<<".FindSubObject("<<aTag<<")"<<endl;
+           theStr<<thePrefix<<"if anIsFound:"<<endl;
+           thePrefix += PREFIX;
+           
+           theStr<<thePrefix<<"anID = aSObject.GetID()"<<endl;
+           theStr<<thePrefix<<aName<<" = aVisu.CreateTable(anID)"<<endl;
+           
+           // Set name (as this object could be renamed by user)
+           theStr<<thePrefix<<aName<<".SetTitle('"<<aNameInStudy.in()<<"') # 3"<<endl;
+
+           // Set PointMap3D Properties
+
+           theStr<<thePrefix<<aName<<".SetScaleFactor("<<aServant->GetScaleFactor()<<")"<<endl;
+           theStr<<thePrefix<<aName<<".SetContourPrs("<<aServant->GetIsContourPrs()<<")"<<endl;
+           theStr<<thePrefix<<aName<<".SetNbOfContours("<<aServant->GetNbOfContours()<<")"<<endl;
+
+           std::string aParam;
+           switch(aServant->GetScaling()){
+           case LINEAR:
+             aParam = "VISU.LINEAR";
+             break;
+           case LOGARITHMIC:
+             aParam = "VISU.LOGARITHMIC";
+             break;
+           }
+           theStr<<thePrefix<<aName<<".SetScaling("<<aParam<<")"<<endl;
+
+           theStr<<thePrefix<<aName<<".SetNbColors("<<aServant->GetNbColors()<<")"<<endl;
+           theStr<<thePrefix<<aName<<".SetLabels("<<aServant->GetLabels()<<")"<<endl;
+
+           switch(aServant->GetBarOrientation()){
+           case ColoredPrs3dBase::HORIZONTAL:
+             aParam = "VISU.ColoredPrs3d.HORIZONTAL";
+             break;
+           case ColoredPrs3dBase::VERTICAL:
+             aParam = "VISU.ColoredPrs3d.VERTICAL";
+             break;
+           }
+           theStr<<thePrefix<<aName<<".SetBarOrientation("<<aParam<<")"<<endl;
+
+           if(aServant->IsRangeFixed())
+             theStr<<thePrefix<<aName<<".SetRange("<<aServant->GetMin()<<", "<<aServant->GetMax()<<")"<<endl;
+           else
+             theStr<<thePrefix<<aName<<".SetSourceRange()"<<endl;
+
+           theStr<<thePrefix<<aName<<".SetPosition("<<aServant->GetPosX()<<", "<<aServant->GetPosY()<<")"<<endl;
+           theStr<<thePrefix<<aName<<".SetSize("<<aServant->GetWidth()<<", "<<aServant->GetHeight()<<")"<<endl;
+
+           float dx, dy, dz;
+           aServant->GetOffset(dx, dy, dz);
+           theStr<<thePrefix<<aName<<".SetOffset("<<dx<<", "<<dy<<", "<<dz<<")"<<endl;
+
+           
+           theStr<<thePrefix<<endl;
+           
+           theArgumentName = aName;
+           DumpChildrenToPython(theStudy,
+                                theIsPublished,
+                                theIsValidScript,
+                                theSObject,
+                                theStr,
+                                theName2EntryMap,
+                                theEntry2NameMap,
+                                theArgumentName,
+                                thePrefix);
+
+           theStr<<thePrefix<<"pass"<<endl<<endl;
+          }
+          return;
         case VISU::TGAUSSPOINTS:
           if(GaussPoints_i* aServant = dynamic_cast<GaussPoints_i*>(GetServant(anObj).in())){
            TCreateFromResult aPrsFactory(theSObject, aServant, aName, "GaussPointsOnField", theArgumentName);
@@ -1350,7 +1487,7 @@ namespace VISU
              bool anIsExist;
              QString aSourceId = VISU::Storable::FindValue(aMap,"mySourceId",&anIsExist);
              if(anIsExist){
-               if(strcmp(aSourceId.latin1(),"CutLines") == 0){
+               if( aSourceId == "CutLines" ){
                  theStr<<thePrefix<<"if aName2ObjectMap.has_key('"<<theArgumentName<<"'):"<<endl;
                  thePrefix += PREFIX;
 
@@ -1382,7 +1519,7 @@ namespace VISU
 
                  theStr<<thePrefix<<"pass"<<endl<<endl;
                  theStr<<aPrefix<<"pass"<<endl<<endl;
-               }else if(strcmp(aSourceId.latin1(),"TableFile") == 0){
+               }else if( aSourceId == "TableFile" ){
                  CORBA::Short aTag = theSObject->Tag();
                  theStr<<thePrefix<<"anIsFound, aSObject = "<<theArgumentName<<".FindSubObject("<<aTag<<")"<<endl;
                  theStr<<thePrefix<<"if anIsFound:"<<endl;
@@ -1408,7 +1545,7 @@ namespace VISU
                                       thePrefix);
 
                  theStr<<thePrefix<<"pass"<<endl<<endl;
-               }else if(strcmp(aSourceId.latin1(),"TableAttr") == 0){
+               }else if( aSourceId == "TableAttr" ){
                  theArgumentName = aName;
                  DumpTableAttrToPython(theStudy,
                                        theIsPublished,
@@ -1437,11 +1574,11 @@ namespace VISU
        bool anIsExist;
        QString aTypeName = VISU::Storable::FindValue(aMap,"myComment",&anIsExist);
        if (anIsExist) {
-         if (strcmp(aTypeName.latin1(),"ImportTables") == 0) {
+         if (aTypeName == "ImportTables") {
            QString aFileName = VISU::Storable::FindValue(aMap,"myFileName",&anIsExist);
            if(anIsExist){
              std::string aName = GenerateName(theSObject,theName2EntryMap,theEntry2NameMap);
-             theStr<<thePrefix<<aName<<" = aVisu.ImportTables('"<<aFileName.latin1()<<"')"<<endl;
+             theStr<<thePrefix<<aName<<" = aVisu.ImportTables('"<<aFileName.toLatin1().data()<<"')"<<endl;
              theStr<<thePrefix<<"if "<<aName<<":"<<endl;
              thePrefix += PREFIX;
 
@@ -1459,7 +1596,7 @@ namespace VISU
              theStr<<thePrefix<<"pass"<<endl<<endl;
              return;
            }
-         } else if (strcmp(aTypeName.latin1(),"VIEW3D") == 0) {
+         } else if (aTypeName == "VIEW3D") {
            std::string aName = GetName(theSObject);
            theStr<<thePrefix<<aName<<" = aBuilder.NewObject(aSComponent)"<<endl;
 
@@ -1476,8 +1613,8 @@ namespace VISU
            return;
          } else if (aTypeName == "ENTITY" || aTypeName == "FAMILY" || aTypeName == "GROUP") {
            // Set name (as this object could be renamed by user)
-           string aMeshName = VISU::Storable::FindValue(aMap,"myMeshName").latin1();
-           string aSubMeshName = VISU::Storable::FindValue(aMap,"myName").latin1();
+           string aMeshName = VISU::Storable::FindValue(aMap,"myMeshName").toLatin1().data();
+           string aSubMeshName = VISU::Storable::FindValue(aMap,"myName").toLatin1().data();
            string anEntityTypeKey = "myEntityId";
            if (aTypeName == "ENTITY") anEntityTypeKey = "myId";
            int anEntity = VISU::Storable::FindValue(aMap,anEntityTypeKey,"0").toInt();
@@ -1721,8 +1858,9 @@ namespace VISU
                    break;
                  }
                case VISU::TSCALARMAPONDEFORMEDSHAPE:
-                 if(ScalarMapOnDeformedShape_i* aServant = dynamic_cast<ScalarMapOnDeformedShape_i*>(aDevice)){
-                   ScalarMapOnDeformedShapeToPython(aSObject, aServant, theStr, "aDevice", aPrsFactory, aPrefix3);
+               case VISU::TDEFORMEDSHAPEANDSCALARMAP:
+                 if(DeformedShapeAndScalarMap_i* aServant = dynamic_cast<DeformedShapeAndScalarMap_i*>(aDevice)){
+                   DeformedShapeAndScalarMapToPython(aSObject, aServant, theStr, "aDevice", aPrsFactory, aPrefix3);
                    break;
                  }
                case VISU::TVECTORS:
@@ -1801,12 +1939,12 @@ namespace VISU
       //ANIMATION
       theStr<<thePrefix<<endl;
       QString animName = aSObject->GetName();
-      theStr<<thePrefix<<"#Animation: "<<animName<<endl;
+      theStr<<thePrefix<<"#Animation: "<<animName.toLatin1().data()<<endl;
       theStr<<thePrefix<<endl;
       theStr<<thePrefix<<"animSO = aBuilder.NewObject(aSComponent)"<<endl;
-      theStr<<thePrefix<<"aBuilder.SetName(animSO, '"<<animName<<"')"<< endl;
+      theStr<<thePrefix<<"aBuilder.SetName(animSO, '"<<animName.toLatin1().data()<<"')"<< endl;
       theStr<<thePrefix<<"strAttr = aBuilder.FindOrCreateAttribute(animSO, 'AttributeString')"<< endl;
-      theStr<<thePrefix<<"strAttr.SetValue('"<<value<<"')"<< endl;
+      theStr<<thePrefix<<"strAttr.SetValue('"<<value.toLatin1().data()<<"')"<< endl;
 
 
     
@@ -1828,10 +1966,10 @@ namespace VISU
          value = refObj->GetName();
          QString path(theStudy->GetObjectPath(father));
          //The following code requierd as a field name can contain '/' character
-         theStr<<thePrefix<<"aBuilder.Addreference(fieldSO,getSObjectByFatherPathAndName(theStudy, '"<<path<<"', '"<<value<<"'))"<<endl;
+         theStr<<thePrefix<<"aBuilder.Addreference(fieldSO,getSObjectByFatherPathAndName(theStudy, '"<<path.toLatin1().data()<<"', '"<<value.toLatin1().data()<<"'))"<<endl;
        }
        value = anObj->GetName();
-       if(!value.isEmpty()) theStr<<thePrefix<<"aBuilder.SetName(fieldSO, '"<<value<<"')"<< endl;
+       if(!value.isEmpty()) theStr<<thePrefix<<"aBuilder.SetName(fieldSO, '"<<value.toLatin1().data()<<"')"<< endl;
 
        //SCALARMAP,...
        SALOMEDS::ChildIterator_var aSubIter = theStudy->NewChildIterator(anObj);
@@ -1840,7 +1978,7 @@ namespace VISU
          
          theStr<<thePrefix<<"subSO = aBuilder.NewObject(fieldSO)"<<endl;
          value = aSubObj->GetName();
-         if(!value.isEmpty()) theStr<<thePrefix<<"aBuilder.SetName(subSO, '"<<value<<"')"<< endl;
+         if(!value.isEmpty()) theStr<<thePrefix<<"aBuilder.SetName(subSO, '"<<value.toLatin1().data()<<"')"<< endl;
          if (aSubObj->FindAttribute(anAttr, "AttributeString")) {
            aStringAttr = SALOMEDS::AttributeString::_narrow(anAttr);
            theStr<<thePrefix<<"strAttr = aBuilder.FindOrCreateAttribute(subSO, 'AttributeString')"<< endl;
@@ -1855,6 +1993,35 @@ namespace VISU
     theStr<<thePrefix<<endl;
   }
 
+
+  void
+  DumpClippingPlanesToPython(SALOMEDS::Study_ptr theStudy,
+                            CORBA::Boolean theIsPublished,
+                            CORBA::Boolean& theIsValidScript,
+                            SALOMEDS::SObject_ptr theSObject,
+                            std::ostream& theStr,
+                            std::string thePrefix,
+                            VISU_ClippingPlaneMgr& thePlaneMgr)
+  {
+
+    if(!theIsPublished) return;
+
+    VISU_CutPlaneFunction* aPlane;
+    double aOrigin[3], aDir[3];
+    for (int i = 0; i < thePlaneMgr.GetClippingPlanesNb(); i++) {
+      aPlane = thePlaneMgr.GetClippingPlane(i);
+      aPlane->GetOrigin(aOrigin);
+      aPlane->GetNormal(aDir);
+
+      theStr<<thePrefix<<"aVisu.CreateClippingPlane("<<
+       aOrigin[0]<<","<<aOrigin[1]<<","<<aOrigin[2]<<","<<
+       aDir[0]<<","<<aDir[1]<<","<<aDir[2]<<","<<
+       aPlane->isAuto()<<",\""<<aPlane->getName()<<"\")"<<endl;      
+    }
+    theStr<<endl;
+  }  
+
+
   //---------------------------------------------------------------------------
   Engines::TMPFile*
   VISU_Gen_i::
@@ -1895,6 +2062,16 @@ namespace VISU
     aStr<<endl;
 
     SALOMEDS::SComponent_var aComponent = FindOrCreateVisuComponent(aStudy);
+
+    VISU::DumpClippingPlanesToPython(aStudy,
+                                    theIsPublished,
+                                    theIsValidScript,
+                                    aComponent.in(),
+                                    aStr,
+                                    aPrefix, 
+                                    myClippingPlaneMgr);
+
+
     VISU::DumpChildrenToPython(aStudy,
                               theIsPublished,
                               theIsValidScript,
@@ -1932,6 +2109,7 @@ namespace VISU
                                 aStr,
                                 aPrefix);
 
+
     //Output the script that sets up the visul parameters.
     if(theIsPublished) {
       char* script = aStudy->GetDefaultScript("Post-Pro", aPrefix.c_str());
index befdcf6320a50ee6e5c7bc61db164933ac421769..6c5efd3f72f1d461c77dca64d8f94f012060f357 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   :
 //  Author :
 //  Module :
-
+//
 #include "VISU_GaussPoints_i.hh"
 #include "VISU_ScalarMap_i.hh"
 #include "VISU_Prs3dUtils.hh"
@@ -37,7 +37,7 @@
 #include "VISU_ScalarBarCtrl.hxx"
 #include <VISU_ScalarBarActor.hxx>
 #include "VISU_LookupTable.hxx"
-#include "VISU_Convertor.hxx"
+#include "VISU_MedConvertor.hxx"
 
 #include "SUIT_ResourceMgr.h"
 
@@ -56,6 +56,8 @@ static int MYDEBUG = 0;
 
 static int INCMEMORY = 10;
 
+using namespace std;
+
 //----------------------------------------------------------------------------
 size_t
 VISU::GaussPoints_i
@@ -75,6 +77,8 @@ VISU::GaussPoints_i
                                                         theEntity,
                                                         theFieldName,
                                                         theTimeStampNumber);
+    if(!dynamic_cast<const VISU_MedConvertor*>(anInput.get()))
+      return aResult;
     size_t aSize = anInput->GetTimeStampOnGaussPtsSize(theMeshName,
                                                       VISU::TEntity(theEntity),
                                                       theFieldName,
@@ -210,7 +214,7 @@ VISU::GaussPoints_i
   QString anAlphaTexture = QString( getenv( "VISU_ROOT_DIR") ) + "/share/salome/resources/visu/sprite_alpha.bmp";
   anAlphaTexture = aResourceMgr->stringValue( "VISU", "point_sprite_alpha_texture", anAlphaTexture );
 
-  SetTextures( aMainTexture, anAlphaTexture );
+  SetTextures( aMainTexture.toLatin1().data(), anAlphaTexture.toLatin1().data() );
 
   return this;
 }
@@ -295,8 +299,8 @@ VISU::GaussPoints_i
 
   SetAlphaThreshold(Storable::FindValue(theMap,"myAlphaThreshold").toDouble());
 
-  SetTextures( Storable::FindValue(theMap,"myMainTexture"),
-              Storable::FindValue(theMap,"myAlphaTexture") );
+  SetTextures( Storable::FindValue(theMap,"myMainTexture").toLatin1().data(),
+              Storable::FindValue(theMap,"myAlphaTexture").toLatin1().data() );
 
   SetResolution(Storable::FindValue(theMap,"myResolution").toInt());
 
@@ -493,7 +497,7 @@ char*
 VISU::GaussPoints_i
 ::GetMainTexture() 
 { 
-  return CORBA::string_dup(myMainTexture.latin1());
+  return CORBA::string_dup(myMainTexture.toLatin1().data());
 }
 
 
@@ -524,7 +528,7 @@ char*
 VISU::GaussPoints_i
 ::GetAlphaTexture() 
 { 
-  return CORBA::string_dup(myAlphaTexture.latin1());
+  return CORBA::string_dup(myAlphaTexture.toLatin1().data());
 }
 
 
@@ -851,7 +855,11 @@ VISU_Actor*
 VISU::GaussPoints_i
 ::CreateActor() 
 {
-  return OnCreateActor1();
+  VISU_GaussPtsAct* anActor = VISU_GaussPtsAct::New();
+  if(OnCreateActor(anActor))
+    return anActor;
+  return NULL;
+  //  return OnCreateActor1();
 }
 
 //----------------------------------------------------------------------------
@@ -877,8 +885,7 @@ VISU::GaussPoints_i
   theScalarBar->SetTitle(GetScalarBarTitle().c_str());
   theScalarBar->SetOrientation(GetBarOrientation());
   theScalarBar->SetNumberOfLabels(GetLabels());
-  theScalarBar->SetRatios(GetTitleWidth(), GetTitleHeight(),
-                         GetLabelWidth(), GetLabelHeight(),
+  theScalarBar->SetRatios(GetTitleSize(), GetLabelSize(), 
                          GetBarWidth(), GetBarHeight());
   theScalarBar->SetLabelFormat(GetLabelsFormat());
 
@@ -892,7 +899,7 @@ VISU::GaussPoints_i
   vtkTextProperty* aTitleProp = theScalarBar->GetTitleTextProperty();
   aTitleProp->SetFontFamily(GetTitFontType());
 
-  GetTitleColor(&anRGB[0],&anRGB[1],&anRGB[2]);
+  GetTitleColor(anRGB[0],anRGB[1],anRGB[2]);
   aTitleProp->SetColor(anRGB[0],anRGB[1],anRGB[2]);
 
   IsBoldTitle()? aTitleProp->BoldOn() : aTitleProp->BoldOff();
@@ -902,7 +909,7 @@ VISU::GaussPoints_i
   vtkTextProperty* aLabelProp = theScalarBar->GetLabelTextProperty();
   aLabelProp->SetFontFamily(GetLblFontType());
 
-  GetLabelColor(&anRGB[0],&anRGB[1],&anRGB[2]);
+  GetLabelColor(anRGB[0],anRGB[1],anRGB[2]);
   aLabelProp->SetColor(anRGB[0],anRGB[1],anRGB[2]);
 
   IsBoldLabel()? aLabelProp->BoldOn() : aLabelProp->BoldOff();
@@ -916,7 +923,7 @@ VISU::GaussPoints_i
 //----------------------------------------------------------------------------
 void 
 VISU::GaussPoints_i
-::UpdateActor(VISU_Actor* theActor) 
+::UpdateActor(VISU_ActorBase* theActor) 
 {
   if(VISU_GaussPtsAct* anActor = dynamic_cast<VISU_GaussPtsAct*>(theActor)){
     VISU_ScalarBarCtrl *aScalarBarCtrl = anActor->GetScalarBarCtrl();
@@ -994,7 +1001,24 @@ VISU::GaussPoints_i
       theActor->SetRepresentation( VTK_POINTS );
     else
       theActor->SetRepresentation( VTK_SURFACE );
+      
+    // Update values labels
+
+    vtkTextProperty* aProp = anActor->GetsValLabelsProps();
+    if ( aProp )
+    {
+      aProp->SetFontFamily( GetValLblFontType() );
+      aProp->SetFontSize( GetValLblFontSize() );
+      aProp->SetBold( IsBoldValLbl() );
+      aProp->SetItalic( IsItalicValLbl() );
+      aProp->SetShadow( IsShadowValLbl() );
+
+      vtkFloatingPointType anRGB[ 3 ];
+      GetValLblFontColor( anRGB[ 0 ], anRGB[ 1 ], anRGB[ 2 ] );
+      aProp->SetColor( anRGB[ 0 ], anRGB[ 1 ], anRGB[ 2 ] );
+    }
   }
+  
   TSuperClass::UpdateActor(theActor);
 }
 
@@ -1024,7 +1048,8 @@ VISU::GaussPoints_i
   VISU::TSetModified aModified(this);
   
   using namespace VISU;
-  TTextureValue aTextureValue = GetTexture(theMainTexture, theAlphaTexture);
+  TTextureValue aTextureValue = GetTexture(theMainTexture.toLatin1().data(), 
+                                          theAlphaTexture.toLatin1().data());
   myGaussPointsPL->SetImageData( aTextureValue.GetPointer() );
 }
 
@@ -1215,3 +1240,79 @@ VISU::GaussPoints_i
 {
   return mySpacing;
 }
+
+//----------------------------------------------------------------------------
+struct TGetComponentMin: public SALOME_Event
+{
+  VISU::ColoredPrs3d_i* myColoredPrs3d;
+  vtkIdType myCompID;
+  
+  typedef CORBA::Double TResult;
+  TResult myResult;
+  
+  TGetComponentMin( VISU::ColoredPrs3d_i* theColoredPrs3d,
+                   vtkIdType theCompID ):
+    myColoredPrs3d( theColoredPrs3d ),
+    myCompID( theCompID )
+  {}
+    
+  virtual
+  void
+  Execute()
+  {
+    VISU::PMinMaxController aMinMaxController = myColoredPrs3d->GetMinMaxController();
+    if ( aMinMaxController ) {
+      myResult = aMinMaxController->GetComponentMin( myCompID );
+    } else {
+      VISU::TMinMax aTMinMax = myColoredPrs3d->GetScalarField()->GetMinMax( myCompID );
+      myResult = aTMinMax.first;
+    }
+  }
+};
+
+
+//----------------------------------------------------------------------------
+vtkFloatingPointType 
+VISU::GaussPoints_i
+::GetComponentMin(vtkIdType theCompID)
+{
+  return ProcessEvent( new TGetComponentMin( this, theCompID ) );
+}
+
+//----------------------------------------------------------------------------
+struct TGetComponentMax: public SALOME_Event
+{
+  VISU::ColoredPrs3d_i* myColoredPrs3d;
+  vtkIdType myCompID;
+
+  typedef CORBA::Double TResult;
+  TResult myResult;
+  
+  TGetComponentMax( VISU::ColoredPrs3d_i* theColoredPrs3d,
+                   vtkIdType theCompID ):
+    myColoredPrs3d( theColoredPrs3d ),
+    myCompID( theCompID )
+  {}
+    
+  virtual
+  void
+  Execute()
+  {
+    VISU::PMinMaxController aMinMaxController = myColoredPrs3d->GetMinMaxController();
+    if ( aMinMaxController ) {
+      myResult = aMinMaxController->GetComponentMax( myCompID );
+    } else {
+      VISU::TMinMax aTMinMax = myColoredPrs3d->GetScalarField()->GetMinMax( myCompID );
+      myResult = aTMinMax.second;
+    }
+  }
+};
+
+
+//----------------------------------------------------------------------------
+vtkFloatingPointType 
+VISU::GaussPoints_i
+::GetComponentMax(vtkIdType theCompID)
+{
+  return ProcessEvent( new TGetComponentMax( this, theCompID ) );
+}
index 117ab8abb73c559a4ec7a25409d0448fb94f586f..5d623de2d21fc345f5c8e3e5d122a867e4ef6369 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_PrsObject_i.hxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_GaussPoints_i_HeaderFile
 #define VISU_GaussPoints_i_HeaderFile
 
@@ -35,6 +35,8 @@ class VISU_ScalarBarActor;
 
 class VISU_GaussPointsPL;
 
+#include <QColor>
+
 namespace VISU
 {
   //! Class of the Gauss Points presentation.
@@ -285,6 +287,14 @@ namespace VISU
     virtual
     void
     RemoveAllGeom();
+
+    virtual
+    vtkFloatingPointType
+    GetComponentMin(vtkIdType theCompID);
+
+    virtual
+    vtkFloatingPointType
+    GetComponentMax(vtkIdType theCompID);
     
   protected:
     //! Redefines VISU_ColoredPrs3d_i::DoSetInput
@@ -385,7 +395,7 @@ namespace VISU
 
     virtual
     void
-    UpdateActor(VISU_Actor* theActor);
+    UpdateActor(VISU_ActorBase* theActor);
 
     virtual 
     void
index 60b544ab8147a6396ce96765cb9130e5a0373b9b..9862db8362460ee999b4071cbb34f9473b313cc9 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //
 //  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
-//
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_Gen_i.cc
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_Gen_i.hh"
 #include "VISU_Result_i.hh"
 #include "VISU_PrsObject_i.hh"
 #include "VISU_Prs3d_i.hh"
 #include "VISU_Mesh_i.hh"
 #include "VISU_Table_i.hh"
+#include "VISU_PointMap3d_i.hh"
 #include "VISU_TimeAnimation.h"
 
 #include "VISU_ColoredPrs3dFactory.hh"
 #include "VISU_ColoredPrs3dCache_i.hh"
 #include "VISU_ColoredPrs3dHolder_i.hh"
 
+#include <VISU_Vtk2MedConvertor.hxx>
+
 #include "VISU_Actor.h"
 
 #include "HDFascii.hxx"
@@ -52,7 +55,7 @@
 #include "LightApp_SelectionMgr.h"
 #include "SVTK_ViewModel.h"
 #include "SVTK_ViewWindow.h"
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 #include "SALOME_ListIO.hxx"
 #include "SALOME_ListIteratorOfListIO.hxx"
 
@@ -65,8 +68,8 @@
 #include CORBA_SERVER_HEADER(MED_Gen)
 
 // QT Includes
-#include <qdir.h>
-#include <qfileinfo.h>
+#include <QDir>
+#include <QFileInfo>
 
 // VTK Includes
 #include <vtkRenderer.h>
@@ -93,6 +96,8 @@ static int MYDEBUG = 0;
 static int MYDEBUG = 0;
 #endif
 
+using namespace std;
+
 extern "C" 
 VISU_I_EXPORT VISU::VISU_Gen_ptr
 GetImpl(CORBA::ORB_ptr theORB,
@@ -209,11 +214,12 @@ namespace VISU
     Storable::RegistryStorableEngine(StreamLines_i::myComment.c_str(),&(StorableEngine<StreamLines_i>));
     Storable::RegistryStorableEngine(Plot3D_i::myComment.c_str(),&(StorableEngine<Plot3D_i>));
     Storable::RegistryStorableEngine(Vectors_i::myComment.c_str(),&(StorableEngine<Vectors_i>));
-    Storable::RegistryStorableEngine(ScalarMapOnDeformedShape_i::myComment.c_str(),&(StorableEngine<ScalarMapOnDeformedShape_i>));
+    Storable::RegistryStorableEngine(DeformedShapeAndScalarMap_i::myComment.c_str(),&(StorableEngine<DeformedShapeAndScalarMap_i>));
 
     Storable::RegistryStorableEngine(ColoredPrs3dHolder_i::myComment.c_str(),&(ColoredPrs3dHolder_i::StorableEngine));
     Storable::RegistryStorableEngine(ColoredPrs3dCache_i::myComment.c_str(),&(ColoredPrs3dCache_i::StorableEngine));
 
+    Storable::RegistryStorableEngine(PointMap3d_i::myComment.c_str(),&(PointMap3d_i::StorableEngine));
     Storable::RegistryStorableEngine(Table_i::myComment.c_str(),&(Table_i::StorableEngine));
     Storable::RegistryStorableEngine(Curve_i::myComment.c_str(),&(Curve_i::StorableEngine));
     Storable::RegistryStorableEngine(Container_i::myComment.c_str(),&(Container_i::StorableEngine));
@@ -257,6 +263,7 @@ namespace VISU
       CORBA::String_var aStudyName = aListOfOpenStudies[0];
       //aFileInfo.setFile(aStudyName.in());
       myStudyDocument = aStudyManager->GetStudyByName(aStudyName/*aFileInfo.baseName()*/);
+      myClippingPlaneMgr.SetStudy(GetStudy(myStudyDocument));
     }else
       if(MYDEBUG) MESSAGE("VISU_Gen_i::VISU_Gen_i : there is no opened study in StudyManager !!!");
   }
@@ -503,11 +510,11 @@ namespace VISU
        {
          bool isActive = false;
          SUIT_Session* aSession = SUIT_Session::session();
-         QPtrList<SUIT_Application> anApplications = aSession->applications();
-         QPtrListIterator<SUIT_Application> anIter (anApplications);
-         SUIT_Application* aFirstApp = anIter.current();
-         while (SUIT_Application* anApp = anIter.current()) {
-           ++anIter;
+         QList<SUIT_Application*> anApplications = aSession->applications();
+         QList<SUIT_Application*>::Iterator anIter = anApplications.begin();
+         SUIT_Application* aFirstApp = *anIter;
+         while (anIter != anApplications.end()) {
+           SUIT_Application* anApp = *anIter;
            if (SUIT_Study* aSStudy = anApp->activeStudy()) {
              if (SalomeApp_Study* aStudy = dynamic_cast<SalomeApp_Study*>(aSStudy)) {
                 if (_PTR(Study) aCStudy = aStudy->studyDS()) {
@@ -520,6 +527,7 @@ namespace VISU
                }
              }
            }
+           anIter++;
          }
          if (!isActive) {
            MESSAGE("!!! anApp->onLoadDoc(myStudyName) !!!");
@@ -536,6 +544,7 @@ namespace VISU
       std::string aStudyName (aName.in());
       if(MYDEBUG) MESSAGE("StudyId = " << theStudy->StudyId() << "; Name = '" << aName.in() << "'");
       myStudyDocument = SALOMEDS::Study::_duplicate(theStudy);
+      myClippingPlaneMgr.SetStudy(GetStudy(myStudyDocument));
 
       ProcessVoidEvent(new TEvent(aStudyName));
 
@@ -591,7 +600,16 @@ namespace VISU
   {
     if(myStudyDocument->GetProperties()->IsLocked())
       return SALOMEDS::SObject::_nil();
+
     SALOMEDS::SObject_var aRes = VISU::ImportTables(theFileName,myStudyDocument);
+
+    SALOMEDS::Study_var aStudy = aRes->GetStudy();
+    SALOMEDS::ChildIterator_var anIter = aStudy->NewChildIterator(aRes);
+    for (; anIter->More(); anIter->Next()) {
+      SALOMEDS::SObject_var SO = anIter->Value();
+      CreateTable( SO->GetID() );
+    }
+
     return aRes._retn();
   }
 
@@ -756,7 +774,7 @@ namespace VISU
       aType = VISU::TGROUP;
 
     VISU::Storable::TRestoringMap aRestoringMap;
-    aRestoringMap["myMeshName"] = theMeshName;
+    aRestoringMap["myMeshName"] = theMeshName.c_str();
 
     switch (aType) {
     case VISU::TENTITY:
@@ -766,11 +784,11 @@ namespace VISU
     case VISU::TFAMILY:
       aRestoringMap["myComment"] = "FAMILY";
       aRestoringMap["myEntityId"] = QString::number(theEntity);
-      aRestoringMap["myName"] = theSubMeshName;
+      aRestoringMap["myName"] = theSubMeshName.c_str();
       break;
     case VISU::TGROUP:
       aRestoringMap["myComment"] = "GROUP";
-      aRestoringMap["myName"] = theSubMeshName;
+      aRestoringMap["myName"] = theSubMeshName.c_str();
       break;
     }
 
@@ -957,7 +975,7 @@ namespace VISU
 
 
   //---------------------------------------------------------------
-  ScalarMapOnDeformedShape_ptr 
+  DeformedShapeAndScalarMap_ptr 
   VISU_Gen_i
   ::ScalarMapOnDeformedShapeOnField(Result_ptr theResult,
                                    const char* theMeshName,
@@ -965,11 +983,28 @@ namespace VISU
                                    const char* theFieldName,
                                    CORBA::Long theIteration)
   {
-    return Prs3dOnField<VISU::ScalarMapOnDeformedShape_i>(theResult,
-                                                         theMeshName,
-                                                         theEntity,
-                                                         theFieldName,
-                                                         theIteration)._retn();
+    return DeformedShapeAndScalarMapOnField(theResult,
+                                           theMeshName,
+                                           theEntity,
+                                           theFieldName,
+                                           theIteration);
+  }
+  
+
+//---------------------------------------------------------------
+  DeformedShapeAndScalarMap_ptr 
+  VISU_Gen_i
+  ::DeformedShapeAndScalarMapOnField(Result_ptr theResult,
+                                    const char* theMeshName,
+                                    VISU::Entity theEntity,
+                                    const char* theFieldName,
+                                    CORBA::Long theIteration)
+  {
+    return Prs3dOnField<VISU::DeformedShapeAndScalarMap_i>(theResult,
+                                                          theMeshName,
+                                                          theEntity,
+                                                          theFieldName,
+                                                          theIteration)._retn();
   }
   
 
@@ -1074,7 +1109,6 @@ namespace VISU
                                          theIteration)._retn();
   }
 
-
   //---------------------------------------------------------------
   struct CreateTableEvent: public SALOME_Event
   {
@@ -1083,7 +1117,7 @@ namespace VISU
     typedef Table_ptr TResult;
     TResult myResult;
     
-    CreateTableEvent(const SALOMEDS::Study_var& theStudy, const char* theTableEntry)
+    CreateTableEvent(SALOMEDS::Study_var theStudy, const char* theTableEntry)
     {
       myStudyDocument = theStudy;
       myTableEntry = theTableEntry;
@@ -1094,29 +1128,60 @@ namespace VISU
     void
     Execute()
     {
+      SALOMEDS::SObject_var SO = myStudyDocument->FindObjectID(myTableEntry);
+      SALOMEDS::GenericAttribute_var anAttr;
+      if ( SO->FindAttribute(anAttr, "AttributeTableOfReal") ) {
+       SALOMEDS::AttributeTableOfReal_var aTableOfReal = SALOMEDS::AttributeTableOfReal::_narrow(anAttr);
+       if ( isSparseMatrix( aTableOfReal ) ) {
+         PointMap3d_i* pPresent = new PointMap3d_i(myStudyDocument,myTableEntry);
+         if(pPresent->Create() != NULL)
+           myResult = pPresent->_this();
+         else {
+           pPresent->_remove_ref();
+           myResult = VISU::Table::_nil();
+         }
+         return;
+       }
+      }
       Table_i* pPresent = new Table_i(myStudyDocument,myTableEntry);
       if(pPresent->Create() != NULL)
        myResult = pPresent->_this();
-      else{
+      else {
        pPresent->_remove_ref();
        myResult = VISU::Table::_nil();
       }
     }
-  };
 
+    virtual
+    bool
+    isSparseMatrix(SALOMEDS::AttributeTableOfReal_var theTableOfReal)
+    {
+      int aCols = theTableOfReal->GetNbColumns();
+      int aRows = theTableOfReal->GetNbRows();
+      
+      for (int i=1; i<=aCols; i++) {
+       for (int j=1; j<=aRows; j++) {
+         if ( !(theTableOfReal->HasValue(j, i)) )
+           return false;
+       }
+      }
+      return true;
+    }
+  };
 
   //---------------------------------------------------------------
   Table_ptr
   VISU_Gen_i
   ::CreateTable(const char* theTableEntry)
   {
-    if(myStudyDocument->GetProperties()->IsLocked())
+    TCollection_AsciiString tmp( (char*)theTableEntry ); // 11.06.2008 IPAL18844
+    if( myStudyDocument->GetProperties()->IsLocked() ||
+       tmp.Length()==0 )
       return Table::_nil();
-    Mutex mt(myMutex);
+
     return ProcessEvent(new CreateTableEvent(myStudyDocument, theTableEntry));
   }
 
-
   //---------------------------------------------------------------
   Curve_ptr
   VISU_Gen_i
@@ -1246,7 +1311,7 @@ namespace VISU
     if (!aResultObj) 
       return aResultSO._retn();
     const QFileInfo& aFileInfo = aResultObj->GetFileInfo();
-    CORBA::String_var anEntry = aResultObj->Create(aFileInfo.filePath().latin1())->GetID();
+    CORBA::String_var anEntry = aResultObj->Create((const char*)aFileInfo.absoluteFilePath().toLatin1())->GetID();
     aResultSO = theStudy->FindObjectID(anEntry);
     return aResultSO._retn();
   }
@@ -1336,12 +1401,11 @@ namespace VISU
       SALOMEDS_Tool::PutStreamToFiles(theStream, aTmpDir, false);
     if(MYDEBUG) MESSAGE("Result_i::PasteInto - aListOfFileNames->length() = "<<aListOfFileNames->length());
     
-    std::string aLocalPersistentID;
+    std::ostrstream aLocalPersistentID;
     {
       std::string aCopyPersist =  aTmpDir + "copy_persistent";
-      std::ifstream anInputFileStream(aCopyPersist.c_str());
-      anInputFileStream>>aLocalPersistentID;
-      anInputFileStream.close();
+      std::ifstream anInputFileStream( aCopyPersist.c_str() );
+      anInputFileStream >> aLocalPersistentID.rdbuf();
     }
     
     //Just for Result::Restore to find the Comment attribute :(
@@ -1350,7 +1414,7 @@ namespace VISU
     std::string aFileName(aTmpDir);
     if(aListOfFileNames->length() > 1)
       aFileName += aListOfFileNames[1].in();
-    Storable* aStorable = Storable::Create(aSObject, aLocalPersistentID, aFileName, false);
+    Storable* aStorable = Storable::Create(aSObject, aLocalPersistentID.str(), aFileName, false);
     
     SALOMEDS::ListOfFileNames_var aFilesToRemove = new SALOMEDS::ListOfFileNames;
     aFilesToRemove->length(1);
@@ -1373,4 +1437,123 @@ namespace VISU
   {
     return ColoredPrs3dCache_i::GetInstance(theStudy);
   }
+
+    
+  CORBA::Long VISU_Gen_i::CreateClippingPlane(CORBA::Double X,CORBA::Double  Y, CORBA::Double Z, 
+                                             CORBA::Double dX, CORBA::Double dY, CORBA::Double dZ, 
+                                             CORBA::Boolean isAuto, const char* name)
+  {
+    return myClippingPlaneMgr.CreateClippingPlane(X, Y, Z, dX, dY, dZ, isAuto, name);
+  }
+
+    
+  void VISU_Gen_i::EditClippingPlane(CORBA::Long id, CORBA::Double X,CORBA::Double  Y, CORBA::Double Z, 
+                                    CORBA::Double dX, CORBA::Double dY, CORBA::Double dZ, 
+                                    CORBA::Boolean isAuto, const char* name)
+  {
+    myClippingPlaneMgr.EditClippingPlane(id, X, Y, Z, dX, dY, dZ, isAuto, name);
+  }
+  
+    /* Returns clipping plane by its Id */
+  VISU::ClippingPlane* VISU_Gen_i::GetClippingPlane(CORBA::Long id)
+  {
+    VISU_CutPlaneFunction* aPlane = myClippingPlaneMgr.GetClippingPlane(id);
+    
+    if (aPlane != NULL) {
+      double aOrigin[3];
+      double aDir[3];
+      aPlane->GetOrigin(aOrigin);
+      aPlane->GetNormal(aDir);
+
+      VISU::ClippingPlane* aRetPlane = new VISU::ClippingPlane;
+      aRetPlane->X = aOrigin[0];
+      aRetPlane->Y = aOrigin[1];
+      aRetPlane->Z = aOrigin[2];
+      aRetPlane->dX = aDir[0];
+      aRetPlane->dY = aDir[1];
+      aRetPlane->dZ = aDir[2];
+      aRetPlane->isAuto = aPlane->isAuto();
+
+      aRetPlane->name = aPlane->getName().c_str();
+      return aRetPlane;
+    }
+    return NULL;
+  }
+    
+    /* Deletes clipping plane by its Id */
+  CORBA::Boolean VISU_Gen_i::DeleteClippingPlane(CORBA::Long id)
+  {
+    return myClippingPlaneMgr.DeleteClippingPlane(id);
+  }
+    
+    /* Applyes a clipping plane with Id to presentation thePrs */
+  CORBA::Boolean VISU_Gen_i::ApplyClippingPlane(Prs3d_ptr thePrs, CORBA::Long id)
+  {
+    VISU::Prs3d_i* aPrs = dynamic_cast<VISU::Prs3d_i*>(VISU::GetServant(thePrs).in());
+    return myClippingPlaneMgr.ApplyClippingPlane(aPrs, id);
+  }
+
+    /* Detaches a clipping plane with Id from presentation thePrs */
+  CORBA::Boolean VISU_Gen_i::DetachClippingPlane(Prs3d_ptr thePrs, CORBA::Long id)
+  {
+    VISU::Prs3d_i* aPrs = dynamic_cast<VISU::Prs3d_i*>(VISU::GetServant(thePrs).in());
+    return myClippingPlaneMgr.DetachClippingPlane(aPrs, id);
+  }
+    
+    /* Get number of clipping planes */
+  CORBA::Long VISU_Gen_i::GetClippingPlanesNb()
+  {
+    return myClippingPlaneMgr.GetClippingPlanesNb();
+  }
+
+  /*!
+  \brief Converts set of VTK files to the one MED-file
+  \param theVTKFiles sequence of VTK files
+  \param theMEDFile MED-file
+  \param theMeshName mesh name. This parameter can be empty. In this case name
+         of mesh is equal vtk2med
+  \param theTStamps values of time stamps. This array can be empty, in
+         this case values of time stamps will be generated automatically ( 0, 1, 2 ... )
+  \return TRUE if operation has been completed successfully, FALSE otherwise
+  */
+  CORBA::Boolean
+  VISU_Gen_i
+  ::VTK2MED( const VISU::string_array& theVTKFiles,
+            const char* theMEDFile,
+            const char* theMeshName,
+            const VISU::double_array& theTStamps )
+  {
+    if ( !theMEDFile || !theVTKFiles.length() )
+      return false;
+
+    VISU_Vtk2MedConvertor aConvertor;
+    aConvertor.setMEDFileName( theMEDFile );
+    // std::string aFirstFile = theVTKFiles[ 0 ];
+    char* aFirstFile = CORBA::string_dup( theVTKFiles[ 0 ] );
+    aConvertor.setFirstVTKFileName( aFirstFile );
+    if ( theVTKFiles.length() > 1 )
+    {
+      VISU_Vtk2MedConvertor::TVectorString aFiles( theVTKFiles.length() - 1 );
+      for ( int i = 1, n = theVTKFiles.length(); i < n; i++ )
+        aFiles[ i - 1 ] = theVTKFiles[ i ];
+      aConvertor.setDataVTKFileNames( aFiles );
+    }
+    if ( theTStamps.length() > 0 )
+    {
+      VISU_Vtk2MedConvertor::TVectorDouble aTStamps( theTStamps.length() );
+      for ( int i = 0, n = theTStamps.length(); i < n; i++ )
+        aTStamps[ i ] = theTStamps[ i ];
+      aConvertor.setTimeStamps( aTStamps );
+    }
+
+    if ( theMeshName && strlen( theMeshName ) > 0 )
+      aConvertor.setMeshName( theMeshName );
+
+    aConvertor.addToIgnoringFieldList("cellID");
+    aConvertor.setCellDataFieldNameIDS("cellID");
+
+    int res = aConvertor.Execute();
+
+    return res == 0;
+  }
 }
index 1f38e06e556220f53c5539c9ef20f811b2922380..baee283131ba4498ee354655a184a20b4ca93518 100644 (file)
@@ -1,26 +1,28 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VISU_Gen_i.hh
 //  Author : Alexey Petrov
 //  Module : VISU
-
+//
 #ifndef __VISU_GEN_I_H__
 #define __VISU_GEN_I_H__
 
@@ -30,6 +32,7 @@
 #include "SALOME_Component_i.hxx"
 #include "SALOME_NamingService.hxx"
 #include "VISU_ColoredPrs3d_i.hh"
+#include "VISU_ClippingPlaneMgr.hxx"
 
 #include <string>
 
@@ -41,6 +44,8 @@ namespace VISU
                     public virtual Base_i
   {
     SALOMEDS::Study_var myStudyDocument;
+    VISU_ClippingPlaneMgr myClippingPlaneMgr;
+
     VISU_Gen_i(const VISU::VISU_Gen_i &);
   public:
     VISU_Gen_i(CORBA::ORB_ptr theORB,
@@ -177,13 +182,23 @@ namespace VISU
                         const char* theFieldName, 
                         CORBA::Long theIteration);
 
+    //This function is obsolete. Use DeformedShapeAndScalarMapOnField instead.
     virtual
-    ScalarMapOnDeformedShape_ptr
+    DeformedShapeAndScalarMap_ptr
     ScalarMapOnDeformedShapeOnField(Result_ptr theResult,
                                    const char* theMeshName, 
                                    VISU::Entity theEntity,
                                    const char* theFieldName, 
                                    CORBA::Long theIteration);
+
+    virtual
+    DeformedShapeAndScalarMap_ptr
+    DeformedShapeAndScalarMapOnField(Result_ptr theResult,
+                                    const char* theMeshName, 
+                                    VISU::Entity theEntity,
+                                    const char* theFieldName, 
+                                    CORBA::Long theIteration);
+
     virtual
     Vectors_ptr
     VectorsOnField(Result_ptr theResult,
@@ -351,6 +366,41 @@ namespace VISU
     virtual
     VISU::ColoredPrs3dCache_ptr
     GetColoredPrs3dCache(SALOMEDS::Study_ptr theStudy);
+
+    
+    virtual CORBA::Long CreateClippingPlane(CORBA::Double X,CORBA::Double  Y, CORBA::Double Z, 
+                                           CORBA::Double dX, CORBA::Double dY, CORBA::Double dZ, 
+                                           CORBA::Boolean isAuto, const char* name);
+
+    virtual void EditClippingPlane(CORBA::Long id, CORBA::Double X,CORBA::Double  Y, CORBA::Double Z, 
+                                    CORBA::Double dX, CORBA::Double dY, CORBA::Double dZ, 
+                                    CORBA::Boolean isAuto, const char* name);
+
+    /* Returns clipping plane by its Id */
+    virtual VISU::ClippingPlane* GetClippingPlane(CORBA::Long id);
+    
+    /* Deletes clipping plane by its Id */
+    virtual CORBA::Boolean DeleteClippingPlane(CORBA::Long id);
+    
+    /* Applyes a clipping plane with Id to presentation thePrs */
+    virtual CORBA::Boolean ApplyClippingPlane(Prs3d_ptr thePrs, CORBA::Long id);
+    
+    /* Detaches a clipping plane with Id from presentation thePrs */
+    virtual CORBA::Boolean DetachClippingPlane(Prs3d_ptr thePrs, CORBA::Long id);
+    
+    /* Get number of clipping planes */
+    virtual CORBA::Long GetClippingPlanesNb();
+
+    VISU_ClippingPlaneMgr& GetClippingPlaneMgr() { return myClippingPlaneMgr; }
+
+    /* Convert a set of VTK files to the MED file */
+    virtual
+    CORBA::Boolean
+    VTK2MED(const VISU::string_array& theVTKFiles,
+           const char* theMEDFile,
+           const char* theMeshName,
+           const VISU::double_array& theTStamps);
+
   };
 }
 
index 6c8c3973d65372bfa63e809354d02d967d4507fb..825aec9f1d935c4cf51f7e2c2459b01e6be789ad 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   :
 //  Author :
 //  Module :
 //  $Header$
-
+//
 #include "VISUConfig.hh"
 #include "VISU_Gen_i.hh"
 #include "VISU_Result_i.hh"
@@ -43,7 +42,7 @@
 #include "VISU_Vectors_i.hh"
 #include "VISU_StreamLines_i.hh"
 #include "VISU_GaussPoints_i.hh"
-#include "VISU_ScalarMapOnDeformedShape_i.hh"
+#include "VISU_DeformedShapeAndScalarMap_i.hh"
 #include "VISU_ViewManager_i.hh"
 #include "VISU_View_i.hh"
 #include "VISU_TimeAnimation.h"
index 43132b4573fbffbbcc6cbcd62f1587f077aec4e8..3e81200aeecea679be3d64ac8577da1f18cf77bf 100755 (executable)
@@ -1,28 +1,28 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-//  See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org 
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VISU_I.hxx
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #ifndef _VISU_I_HXX_
 #define _VISU_I_HXX_
 
index 96377ac7c03c0616209ea2d07fc5d4a99cf37815..1e60235ec8889b5a43e2665f8caf6632c3c04bb1 100644 (file)
@@ -1,38 +1,41 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_PrsObject_i.cxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_IsoSurfaces_i.hh"
 #include "VISU_Prs3dUtils.hh"
 
 #include "VISU_IsoSurfacesPL.hxx"
 #include "VISU_Result_i.hh"
 #include "VISU_Actor.h"
+#include "VISU_ScalarMapAct.h"
+#include "VISU_IsoSurfActor.h"
 
 #include "SUIT_ResourceMgr.h"
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
+#include <vtkMapper.h>
 
 #ifdef _DEBUG_
 static int MYDEBUG = 0;
@@ -40,6 +43,8 @@ static int MYDEBUG = 0;
 static int MYDEBUG = 0;
 #endif
 
+using namespace std;
+
 //---------------------------------------------------------------
 size_t
 VISU::IsoSurfaces_i
@@ -94,7 +99,10 @@ VISU::IsoSurfaces_i
 ::IsoSurfaces_i(EPublishInStudyMode thePublishInStudyMode) :
   ColoredPrs3d_i(thePublishInStudyMode),
   ScalarMap_i(thePublishInStudyMode),
-  myIsoSurfacesPL(NULL)
+  MonoColorPrs_i(thePublishInStudyMode),
+  myIsoSurfacesPL(NULL),
+  myIsLabeled(false),
+  myNbLabels(3)
 {}
 
 
@@ -106,7 +114,12 @@ VISU::IsoSurfaces_i
         const std::string& theFieldName, 
         CORBA::Long theTimeStampNumber)
 {
-  return TSuperClass::Create(theMeshName,theEntity,theFieldName,theTimeStampNumber);
+  VISU::Storable* aRes = TSuperClass::Create(theMeshName,theEntity,theFieldName,theTimeStampNumber);
+  myIsColored = true;
+  myColor.R = myColor.G = myColor.B = 0.;
+  //myIsLabeled = false;
+  //myNbLabels = 3;
+  return aRes;
 }
 
 
@@ -122,6 +135,8 @@ VISU::IsoSurfaces_i
   SetNbSurfaces(VISU::Storable::FindValue(theMap,"myNbSurface").toInt());
   float aMin = VISU::Storable::FindValue(theMap,"myRange[0]").toDouble();
   float aMax = VISU::Storable::FindValue(theMap,"myRange[1]").toDouble();
+  myNbLabels = VISU::Storable::FindValue(theMap,"myNbLabels").toInt();
+  myIsLabeled = VISU::Storable::FindValue(theMap,"myIsLabeled").toInt();
   SetSubRange(aMin,aMax);
     
   return this;
@@ -138,9 +153,23 @@ VISU::IsoSurfaces_i
   Storable::DataToStream( theStr, "myNbSurface", int(GetNbSurfaces()) );
   Storable::DataToStream( theStr, "myRange[0]", GetSubMin() );
   Storable::DataToStream( theStr, "myRange[1]", GetSubMax() );
+  Storable::DataToStream( theStr, "myNbLabels", myNbLabels );
+  Storable::DataToStream( theStr, "myIsLabeled", myIsLabeled );
+}
+
+//---------------------------------------------------------------
+void VISU::IsoSurfaces_i::SameAs(const Prs3d_i* theOrigin)
+{
+  TSuperClass::SameAs(theOrigin);
+
+  if(const IsoSurfaces_i* aPrs3d = dynamic_cast<const IsoSurfaces_i*>(theOrigin)){
+    IsoSurfaces_i* anOrigin = const_cast<IsoSurfaces_i*>(aPrs3d);
+    ShowLabels(anOrigin->IsLabeled(), anOrigin->GetNbLabels());
+  }
 }
 
 
+
 //---------------------------------------------------------------
 VISU::IsoSurfaces_i
 ::~IsoSurfaces_i()
@@ -231,20 +260,33 @@ VISU::IsoSurfaces_i
 }
 
 //---------------------------------------------------------------
-VISU_Actor* 
-VISU::IsoSurfaces_i
-::CreateActor()
+VISU_Actor* VISU::IsoSurfaces_i::CreateActor()
 {
-  if(VISU_Actor* anActor = TSuperClass::CreateActor()){
+  VISU_IsoSurfActor* anActor = VISU_IsoSurfActor::New();
+  try{
+    VISU::Prs3d_i::CreateActor(anActor);
+    anActor->SetBarVisibility(true);
     anActor->SetVTKMapping(true);
     SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
     int  aDispMode = aResourceMgr->integerValue("VISU" , "iso_surfaces_represent", 2);
     anActor->SetRepresentation(aDispMode);
-    return anActor;
+    UpdateActor(anActor);
+  }catch(...){
+    anActor->Delete();
+    throw ;
   }
-  return NULL;
+
+ return anActor;
 }
 
+//---------------------------------------------------------------
+void VISU::IsoSurfaces_i::UpdateActor(VISU_ActorBase* theActor) 
+{
+  if(VISU_IsoSurfActor* anActor = dynamic_cast<VISU_IsoSurfActor*>(theActor)){
+    anActor->SetLinesLabeled(myIsLabeled, myNbLabels);
+  }
+  TSuperClass::UpdateActor(theActor);
+}
 
 //---------------------------------------------------------------
 void
@@ -253,3 +295,26 @@ VISU::IsoSurfaces_i
 {
   myIsoSurfacesPL->SetMapScale(theMapScale);
 }
+
+//---------------------------------------------------------------
+CORBA::Boolean VISU::IsoSurfaces_i::IsLabeled()
+{
+  return myIsLabeled;
+}
+
+//---------------------------------------------------------------
+void VISU::IsoSurfaces_i::ShowLabels(CORBA::Boolean theShow, CORBA::Long theNb)
+{
+  if ((myIsLabeled == theShow) && (myNbLabels == theNb)) return;
+  VISU::TSetModified aModified(this);
+  myIsLabeled = theShow;
+  myNbLabels = theNb;
+  myParamsTime.Modified();
+}
+
+//---------------------------------------------------------------
+CORBA::Long VISU::IsoSurfaces_i::GetNbLabels()
+{
+  return myNbLabels;
+}
+
index 74cc1c3d3fd77e7c42104312f3fbd8359bf51863..86833c534a7f2ac6a7d24613fa67d0df42f088a3 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_PrsObject_i.hxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_IsoSurfaces_i_HeaderFile
 #define VISU_IsoSurfaces_i_HeaderFile
 
 #include "VISU_I.hxx"
-#include "VISU_ScalarMap_i.hh"
+//#include "VISU_ScalarMap_i.hh"
+#include "VISU_MonoColorPrs_i.hh"
 
 class VISU_IsoSurfacesPL;
 
@@ -36,19 +37,21 @@ namespace VISU
 {
   //----------------------------------------------------------------------------
   class VISU_I_EXPORT IsoSurfaces_i : public virtual POA_VISU::IsoSurfaces,
-                       public virtual ScalarMap_i
+                                     public virtual MonoColorPrs_i
   {
     static int myNbPresent;
     IsoSurfaces_i(const IsoSurfaces_i&);
 
   public:
     //----------------------------------------------------------------------------
-    typedef ScalarMap_i TSuperClass;
+    typedef MonoColorPrs_i TSuperClass;
     typedef VISU::IsoSurfaces TInterface;
 
     explicit
     IsoSurfaces_i(EPublishInStudyMode thePublishInStudyModep);
 
+    virtual void SameAs(const Prs3d_i* theOrigin);
+
     virtual 
     ~IsoSurfaces_i();
 
@@ -84,7 +87,14 @@ namespace VISU
     { 
       return myIsoSurfacesPL; 
     }
+
+
+    virtual CORBA::Boolean IsLabeled();
+    virtual void ShowLabels(CORBA::Boolean theShow, CORBA::Long theNb);
+
+    virtual CORBA::Long GetNbLabels();
     
+
   protected:
     //! Redefines VISU_ColoredPrs3d_i::CreatePipeLine
     virtual 
@@ -103,6 +113,9 @@ namespace VISU
 
     VISU_IsoSurfacesPL* myIsoSurfacesPL;
 
+    bool myIsLabeled;
+    CORBA::Long myNbLabels;
+
   public:
     static
     size_t
@@ -150,6 +163,9 @@ namespace VISU
     virtual 
     void 
     SetMapScale(double theMapScale = 1.0);
+
+    virtual void UpdateActor(VISU_ActorBase* theActor);
+    
   };
 }
 
index 6b9f866078d5d5492b0345dbd6013c52f94ce601..c29834317a04fec316c4ca726c527fdf775112f0 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_PrsObject_i.cxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_Mesh_i.hh"
 #include "VISU_Prs3dUtils.hh"
 
@@ -34,7 +34,7 @@
 #include "VISU_PipeLineUtils.hxx"
 #include "VISU_Convertor.hxx"
 
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 
 #include "SUIT_ResourceMgr.h"
 
@@ -46,6 +46,8 @@ static int MYDEBUG = 0;
 
 static int INCMEMORY = 4;
 
+using namespace std;
+
 //----------------------------------------------------------------------------
 namespace
 {
@@ -127,6 +129,8 @@ VISU::Mesh_i
   SetMeshName(theMeshName.c_str());
   myEntity = int(theEntity);//jfa IPAL9284
   mySubMeshName = theFamilyName;
+  SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
+  myIsShrank = aResourceMgr->booleanValue("VISU", "mesh_shrink", false);
   return Build(false);
 }
 
@@ -189,9 +193,11 @@ VISU::Mesh_i
       throw std::runtime_error("Mesh_i::Build - GetCResult()->GetInput() == NULL !!!");
     if (!theRestoring) {
       myPresentType =  VISU::PresentationType(VISU::GetResourceMgr()->integerValue("VISU" , "mesh_represent", 2));
+      myIsShrank = (myPresentType == VISU::SHRINK);
+
       if(myEntity == VISU::NODE_ENTITY)
        myPresentType = VISU::POINT;
-      SetName(GenerateName().latin1(), false);
+      SetName((const char*)GenerateName().toLatin1(), false);
       myCellColor.R = 0.0;  myCellColor.G = myCellColor.B = 1.0;
       myNodeColor.R = myNodeColor.G = 1.0;  myNodeColor.B = 1.0;
       myLinkColor.R = myLinkColor.G = myLinkColor.B = 83/255.;
@@ -212,7 +218,7 @@ VISU::Mesh_i
     VISU::TEntity anEntity = VISU::TEntity(myEntity);
 
     VISU::Storable::TRestoringMap aRestoringMap;
-    aRestoringMap["myMeshName"] = GetCMeshName();
+    aRestoringMap["myMeshName"] = GetCMeshName().c_str();
 
     VISU::PUnstructuredGridIDMapper anIDMapper;
     VISU::Result_i::PInput anInput = GetCResult()->GetInput();
@@ -229,13 +235,13 @@ VISU::Mesh_i
                                              mySubMeshName);
       aRestoringMap["myComment"] = "FAMILY";
       aRestoringMap["myEntityId"] = QString::number(anEntity);
-      aRestoringMap["myName"] = mySubMeshName;
+      aRestoringMap["myName"] = mySubMeshName.c_str();
       break;
     case VISU::TGROUP :
       anIDMapper = anInput->GetMeshOnGroup(GetCMeshName(),
                                           mySubMeshName);
       aRestoringMap["myComment"] = "GROUP";
-      aRestoringMap["myName"] = mySubMeshName;
+      aRestoringMap["myName"] = mySubMeshName.c_str();
       break;
     }
     if(!anIDMapper) 
@@ -397,7 +403,9 @@ VISU::Mesh_i
     return;
 
   VISU::TSetModified aModified(this);
-  
+  if (theType == VISU::SHRINK) {
+    myIsShrank = true;
+  }
   myPresentType = theType;
   myParamsTime.Modified();
 }
@@ -440,10 +448,12 @@ VISU::Mesh_i
     return NULL;
 
   myEntity = VISU::Storable::FindValue(theMap,"myEntity").toInt();//jfa IPAL9284
-  mySubMeshName = VISU::Storable::FindValue(theMap,"mySubMeshName").latin1();
+  mySubMeshName = (const char*)VISU::Storable::FindValue(theMap,"mySubMeshName").toLatin1();
 
   myPresentType = VISU::PresentationType(VISU::Storable::FindValue(theMap,"myPresentType").toInt());
 
+  myIsShrank = (VISU::Storable::FindValue(theMap,"myIsShrank", "0").toInt() == 1)? true: false;
+
   myCellColor.R = VISU::Storable::FindValue(theMap,"myCellColor.R").toDouble();
   myCellColor.G = VISU::Storable::FindValue(theMap,"myCellColor.G").toDouble();
   myCellColor.B = VISU::Storable::FindValue(theMap,"myCellColor.B").toDouble();
@@ -485,6 +495,8 @@ VISU::Mesh_i
 
   Storable::DataToStream( theStr, "myPresentType", int(myPresentType) );
 
+  Storable::DataToStream( theStr, "myIsShrank",  (myIsShrank? "1":"0"));
+
   Storable::DataToStream( theStr, "myCellColor.R", myCellColor.R );
   Storable::DataToStream( theStr, "myCellColor.G", myCellColor.G );
   Storable::DataToStream( theStr, "myCellColor.B", myCellColor.B );
@@ -508,8 +520,21 @@ VISU::Mesh_i
   try{
     VISU::Prs3d_i::CreateActor(anActor);
     SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
-    bool toShrink  = aResourceMgr->booleanValue("VISU", "mesh_shrink", false);
-    if (toShrink) anActor->SetShrink();
+    //bool toShrink  = aResourceMgr->booleanValue("VISU", "mesh_shrink", false);
+    //if (toShrink) anActor->SetShrink();
+    if (anActor->IsShrunkable()) {
+      if (myIsShrank)
+       anActor->SetShrink();
+      else
+       anActor->UnShrink();
+    }
+    anActor->SetFeatureEdgesAngle( aResourceMgr->doubleValue("VISU", "feature_edges_angle", 0.0) );
+    anActor->SetFeatureEdgesFlags( aResourceMgr->booleanValue("VISU", "show_feature_edges", false),
+                                  aResourceMgr->booleanValue("VISU", "show_boundary_edges", false),
+                                  aResourceMgr->booleanValue("VISU", "show_manifold_edges", false),
+                                  aResourceMgr->booleanValue("VISU", "show_non_manifold_edges", false) );
+    anActor->SetFeatureEdgesColoring( aResourceMgr->booleanValue("VISU", "feature_edges_coloring", false) );
+
     UpdateActor(anActor);
   }catch (...) {
     anActor->Delete();
@@ -522,12 +547,18 @@ VISU::Mesh_i
 //----------------------------------------------------------------------------
 void
 VISU::Mesh_i
-::UpdateActor(VISU_Actor* theActor) 
+::UpdateActor(VISU_ActorBase* theActor) 
 {
   if(VISU_MeshAct* anActor = dynamic_cast<VISU_MeshAct*>(theActor)){
     if(MYDEBUG) MESSAGE("Mesh_i::UpdateActor");
     VISU::Prs3d_i::UpdateActor(anActor);
     anActor->SetRepresentation(myPresentType);
+    if (anActor->IsShrunkable()) {
+      if (myIsShrank)
+       anActor->SetShrink();
+      else
+       anActor->UnShrink();
+    }
     anActor->GetSurfaceProperty()->SetColor(myCellColor.R, myCellColor.G, myCellColor.B);
     anActor->GetEdgeProperty()->SetColor(myLinkColor.R, myLinkColor.G, myLinkColor.B);
     anActor->GetNodeProperty()->SetColor(myNodeColor.R, myNodeColor.G, myNodeColor.B);
@@ -535,3 +566,20 @@ VISU::Mesh_i
 }
 
 //----------------------------------------------------------------------------
+
+
+void VISU::Mesh_i::SetShrink(CORBA::Boolean toShrink)
+{
+  if(toShrink == myIsShrank)
+    return;
+  VISU::TSetModified aModified(this);
+  myIsShrank = toShrink;
+  myParamsTime.Modified();
+}
+
+//----------------------------------------------------------------------------
+CORBA::Boolean VISU::Mesh_i::IsShrank()
+{
+  return myIsShrank;
+}
+
index 6576b7be3263801fe6335447d79819c686e53453..de7e3142660d62f0fd47ed31a684b73826208a87 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_PrsObject_i.hxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_Mesh_i_HeaderFile
 #define VISU_Mesh_i_HeaderFile
 
@@ -95,6 +95,11 @@ namespace VISU
     VISU::PresentationType 
     GetPresentationType();
 
+
+    virtual void SetShrink(CORBA::Boolean toShrink);
+
+    virtual CORBA::Boolean IsShrank();
+
     VISU_MeshPL* GetSpecificPL() const
     { 
       return myMeshPL;
@@ -114,6 +119,7 @@ namespace VISU
     SALOMEDS::Color myCellColor;
     SALOMEDS::Color myNodeColor;
     SALOMEDS::Color myLinkColor;
+    bool myIsShrank;
 
   public:
     static 
@@ -178,7 +184,7 @@ namespace VISU
 
     virtual
     void 
-    UpdateActor(VISU_Actor* theActor);
+    UpdateActor(VISU_ActorBase* theActor);
   };
 }
 
diff --git a/src/VISU_I/VISU_MonoColorPrs_i.cc b/src/VISU_I/VISU_MonoColorPrs_i.cc
new file mode 100644 (file)
index 0000000..b7ddf57
--- /dev/null
@@ -0,0 +1,185 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+//  File   : VISU_MonoColorPrs_i.cxx
+//  Author : Vitaly Smetannikov
+//  Module : VISU
+//
+#include "VISU_MonoColorPrs_i.hh"
+#include "VISU_Prs3dUtils.hh"
+#include "VISU_PipeLineUtils.hxx"
+#include "VISU_ScalarMapAct.h"
+
+#include "VISU_PipeLine.hxx"
+
+#include <vtkDataSetMapper.h>
+#include <vtkProperty.h>
+
+#ifdef _DEBUG_
+static int MYDEBUG = 0;
+#else
+static int MYDEBUG = 0;
+#endif
+
+//---------------------------------------------------------------
+VISU::MonoColorPrs_i
+::MonoColorPrs_i(EPublishInStudyMode thePublishInStudyMode):
+  ColoredPrs3d_i(thePublishInStudyMode),
+  ScalarMap_i(thePublishInStudyMode)
+{
+  if(MYDEBUG) MESSAGE("MonoColorPrs_i::MonoColorPrs_i");
+}
+
+//---------------------------------------------------------------
+void 
+VISU::MonoColorPrs_i
+::SameAs(const Prs3d_i* theOrigin)
+{
+  TSuperClass::SameAs(theOrigin);
+
+  if(const MonoColorPrs_i* aPrs3d = dynamic_cast<const MonoColorPrs_i*>(theOrigin)){
+    MonoColorPrs_i* anOrigin = const_cast<MonoColorPrs_i*>(aPrs3d);
+    SetColor(anOrigin->GetColor());
+    ShowColored(anOrigin->IsColored());
+  }
+}
+
+
+//---------------------------------------------------------------
+VISU::Storable* 
+VISU::MonoColorPrs_i
+::Create(const std::string& theMeshName, 
+        VISU::Entity theEntity,
+        const std::string& theFieldName, 
+        CORBA::Long theTimeStampNumber)
+{
+  myIsColored = false;
+  myColor.R = myColor.G = myColor.B = 0.5;
+  return TSuperClass::Create(theMeshName,theEntity,theFieldName,theTimeStampNumber);
+}
+
+//---------------------------------------------------------------
+VISU::Storable* 
+VISU::MonoColorPrs_i
+::Restore(SALOMEDS::SObject_ptr theSObject,
+         const Storable::TRestoringMap& theMap)
+{
+  if(!TSuperClass::Restore(theSObject, theMap))
+    return NULL;
+
+  myIsColored = VISU::Storable::FindValue(theMap,"myIsColored").toInt();
+  myColor.R = VISU::Storable::FindValue(theMap,"myColor.R").toDouble();
+  myColor.G = VISU::Storable::FindValue(theMap,"myColor.G").toDouble();
+  myColor.B = VISU::Storable::FindValue(theMap,"myColor.B").toDouble();
+
+  return this;
+}
+
+//---------------------------------------------------------------
+void
+VISU::MonoColorPrs_i
+::ToStream(std::ostringstream& theStr)
+{
+  TSuperClass::ToStream(theStr);
+
+  Storable::DataToStream( theStr, "myIsColored", myIsColored );
+  Storable::DataToStream( theStr, "myColor.R", myColor.R );
+  Storable::DataToStream( theStr, "myColor.G", myColor.G );
+  Storable::DataToStream( theStr, "myColor.B", myColor.B );
+}
+
+
+//---------------------------------------------------------------
+VISU::MonoColorPrs_i::~MonoColorPrs_i()
+{
+  if(MYDEBUG) MESSAGE("MonoColorPrs_i::~MonoColorPrs_i()");
+}
+
+//---------------------------------------------------------------
+CORBA::Boolean VISU::MonoColorPrs_i::IsColored()
+{
+  return myIsColored;
+}
+
+
+
+//---------------------------------------------------------------
+void
+VISU::MonoColorPrs_i::ShowColored(CORBA::Boolean theColored)
+{
+  if(myIsColored == theColored)
+    return;
+  myIsColored = theColored; 
+  myParamsTime.Modified();
+}
+
+//---------------------------------------------------------------
+SALOMEDS::Color VISU::MonoColorPrs_i::GetColor()
+{
+  return myColor;
+}
+
+//---------------------------------------------------------------
+void VISU::MonoColorPrs_i::SetColor(const SALOMEDS::Color& theColor)
+{
+  bool anIsSameValue = VISU::CheckIsSameValue(myColor.R, theColor.R);
+  anIsSameValue &= VISU::CheckIsSameValue(myColor.G, theColor.G);
+  anIsSameValue &= VISU::CheckIsSameValue(myColor.B, theColor.B);
+  if(anIsSameValue)
+    return;
+
+  VISU::TSetModified aModified(this);
+  
+  myColor = theColor;
+  myParamsTime.Modified();
+}
+
+//---------------------------------------------------------------
+VISU_Actor* VISU::MonoColorPrs_i::CreateActor(bool toSupressShrinking) 
+{
+  VISU_Actor* anActor = TSuperClass::CreateActor(toSupressShrinking);
+  anActor->GetProperty()->SetColor(myColor.R,myColor.G,myColor.B);
+  return anActor;
+}
+
+//---------------------------------------------------------------
+VISU_Actor* VISU::MonoColorPrs_i::CreateActor()
+{
+  return CreateActor(false);
+}
+
+//---------------------------------------------------------------
+void VISU::MonoColorPrs_i::UpdateActor(VISU_ActorBase* theActor) 
+{
+  if(VISU_ScalarMapAct* anActor = dynamic_cast<VISU_ScalarMapAct*>(theActor)){
+    if(IsColored()){
+      anActor->SetBarVisibility(true);
+      GetPipeLine()->GetMapper()->SetScalarVisibility(1);
+    }else{
+      anActor->SetBarVisibility(false);
+      GetPipeLine()->GetMapper()->SetScalarVisibility(0);
+      anActor->GetProperty()->SetColor(myColor.R,myColor.G,myColor.B);
+    }
+    TSuperClass::UpdateActor(theActor);
+  }
+}
+
diff --git a/src/VISU_I/VISU_MonoColorPrs_i.hh b/src/VISU_I/VISU_MonoColorPrs_i.hh
new file mode 100644 (file)
index 0000000..4e71e35
--- /dev/null
@@ -0,0 +1,82 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+//  File   : VISU_MonoColorPrs_i.hxx
+//  Author : Vitaly Smetannikov
+//  Module : VISU
+//
+#ifndef VISU_MonoColorPrs_i_HeaderFile
+#define VISU_MonoColorPrs_i_HeaderFile
+
+#include <VISU_I.hxx>
+#include "VISU_ScalarMap_i.hh"
+
+namespace VISU
+{
+  //----------------------------------------------------------------------------
+  class VISU_I_EXPORT MonoColorPrs_i : public virtual POA_VISU::MonoColorPrs,
+                                      public virtual ScalarMap_i
+  {
+    MonoColorPrs_i(const MonoColorPrs_i&);
+
+  public:
+    //----------------------------------------------------------------------------
+    typedef ScalarMap_i TSuperClass;
+    typedef VISU::MonoColorPrs TInterface;
+
+    explicit MonoColorPrs_i(EPublishInStudyMode thePublishInStudyModep);
+
+    virtual void SameAs(const Prs3d_i* theOrigin);
+
+    virtual ~MonoColorPrs_i();
+
+    virtual CORBA::Boolean IsColored();
+
+    virtual void ShowColored(CORBA::Boolean theColored);
+
+    virtual SALOMEDS::Color GetColor();
+
+    virtual void SetColor(const SALOMEDS::Color& theColor);
+
+  protected:
+    SALOMEDS::Color myColor;
+    bool myIsColored;
+
+  public:
+    virtual Storable* Create(const std::string& theMeshName, 
+                            VISU::Entity theEntity,
+                            const std::string& theFieldName, 
+                            CORBA::Long theTimeStampNumber);
+
+    virtual void ToStream(std::ostringstream& theStr);
+
+    virtual Storable* Restore(SALOMEDS::SObject_ptr theSObject,
+                             const Storable::TRestoringMap& theMap);
+
+    virtual VISU_Actor* CreateActor();
+
+    virtual VISU_Actor* CreateActor(bool toSupressShrinking);
+
+    virtual void UpdateActor(VISU_ActorBase* theActor);
+  };
+};
+#endif
index f99d8ffda706df3072300b9cc17880b698915c25..42ef355fa59a6887496166a1384afb5aea9116a1 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_MultiResult_i.cc
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifdef ENABLE_MULTIPR
 
 #include "VISU_MultiResult_i.hh"
@@ -42,6 +42,8 @@
 #include <boost/thread/thread.hpp>
 #include <boost/bind.hpp>
 
+#include <QStringList>
+
 #include <strstream>
 
 #ifdef _DEBUG_
@@ -308,7 +310,7 @@ namespace VISU
                         NO_IOR,
                         "Parts",
                         NO_PERFSITENT_REF,
-                        aComment.latin1(),
+                        aComment.toLatin1().data(),
                         false);
       }
       
@@ -330,7 +332,7 @@ namespace VISU
        MultiResult_i::TPartInfo aPartInfo = GetPartInfo(aMultiprObj, aPartName);
 
        QFileInfo aFileInfo(aPartInfo.myFileName.c_str());
-       aPartInfos[aFileInfo.fileName()] = aPartInfo;
+       aPartInfos[aFileInfo.fileName().toLatin1().data()] = aPartInfo;
        
        aPartName2FileName[aPartInfo.myName] = aPartInfo.myFileName;
        BEGMSG(MYDEBUG, "aPartName2FileName['"<<aPartInfo.myName<<"'] = '"<<aPartInfo.myFileName<<"'\n");
@@ -352,7 +354,7 @@ namespace VISU
                           NO_IOR,
                           aPartInfo.myName,
                           NO_PERFSITENT_REF,
-                          aComment.latin1(),
+                          aComment.toLatin1().data(),
                           true);
          aPartName2Resolution[aPartInfo.myName] = aResolution;
          BEGMSG(MYDEBUG, "aPartName2Resolution['"<<aPartInfo.myName<<"'] = '"<<aResoltutionsString<<"'\n");
@@ -559,9 +561,9 @@ VISU::MultiResult_i
     try {
       myMultiprObj.create(theFileName);
       if ( myMultiprObj.isValidDistributedMEDFile() ) {
-       aTargetFileName = myMultiprObj.getSequentialMEDFilename();
-       SetInitFileName(aFileInfo.filePath().latin1());
-       SetName(VISU::GenerateName(aFileInfo.fileName()).latin1(), false);
+       aTargetFileName = myMultiprObj.getSequentialMEDFilename().c_str();
+       SetInitFileName(aFileInfo.filePath().toLatin1().data());
+       SetName(VISU::GenerateName(aFileInfo.fileName().toLatin1().data()).toLatin1().data(), false);
        myIsBuildParts = true;
       }
     }catch(std::exception& exc){
@@ -576,7 +578,7 @@ VISU::MultiResult_i
     }
   }
 
-  return TSuperClass::Create(aTargetFileName);
+  return TSuperClass::Create(aTargetFileName.toLatin1().data());
 }
 
 
@@ -622,8 +624,8 @@ VISU::MultiResult_i
   BEGMSG(MYDEBUG, "aPrefix = '"<<aPrefix<<"'\n");
 
   // To get a common prefix used in the multi file
-  QFileInfo aFileInfo(myMultiprObj.getSequentialMEDFilename());
-  std::string aFilePrefix = aFileInfo.baseName(TRUE).latin1();
+  QFileInfo aFileInfo(myMultiprObj.getSequentialMEDFilename().c_str());
+  std::string aFilePrefix = aFileInfo.completeBaseName().toLatin1().data();
 
   MultiResult_i::TPartNames aPartNames = myMultiprObj.getParts();
   for (size_t aPartID = 0 ; aPartID < aPartNames.size() ; aPartID++) {
@@ -631,9 +633,9 @@ VISU::MultiResult_i
     MultiResult_i::TPartInfo aPartInfo = GetPartInfo(myMultiprObj, aPartName);
 
     QFileInfo aFileInfo(aPartInfo.myFileName.c_str());
-    std::string aFile = aFileInfo.absFilePath().latin1();
+    std::string aFile = aFileInfo.absoluteFilePath().toLatin1().data();
 
-    std::string aFileName = aFileInfo.fileName().latin1();
+    std::string aFileName = aFileInfo.fileName().toLatin1().data();
     VISU::TSubString(aFileName, aFilePrefix) = aPrefix;
     VISU::TSubString(aFileName, aSuffix) = "";
     aFileName = aFileName + aSuffix;
@@ -702,8 +704,8 @@ VISU::MultiResult_i
     VISU::SplitName(GetFileName(), aBase, aSuffix);
     INITMSG(MYDEBUG, "aBase = '"<<aBase<<"'; aSuffix = '"<<aSuffix<<"'\n");
 
-    QFileInfo aFileInfo(myMultiprObj.getSequentialMEDFilename());
-    std::string aFilePrefix = aFileInfo.baseName(TRUE).latin1();
+    QFileInfo aFileInfo(myMultiprObj.getSequentialMEDFilename().c_str());
+    std::string aFilePrefix = aFileInfo.completeBaseName().toLatin1().data();
     BEGMSG(MYDEBUG, "aFilePrefix = '"<<aFilePrefix<<"'\n");
 
     std::ostringstream aPartInfos;
@@ -713,7 +715,7 @@ VISU::MultiResult_i
       MultiResult_i::TPartInfo aPartInfo = GetPartInfo(myMultiprObj, aPartName);
 
       QFileInfo aFileInfo(aPartInfo.myFileName.c_str());
-      std::string aFileName = aFileInfo.fileName().latin1();
+      std::string aFileName = aFileInfo.fileName().toLatin1().data();
       VISU::TSubString(aFileName, aFilePrefix + "_") = "";      
       VISU::TSubString(aFileName, aSuffix) = "";
       aPartInfo.myFileName = aFileName + aSuffix;
@@ -744,20 +746,20 @@ VISU::MultiResult_i
   if(!myIsBuildParts)
     return this;
   
-  QStringList aResolutions = QStringList::split("|", VISU::Storable::FindValue(theMap, "myResolutions"));
-  QStringList aPartNames = QStringList::split("|",VISU::Storable::FindValue(theMap, "myPartNames") );
+  QStringList aResolutions = VISU::Storable::FindValue(theMap, "myResolutions").split("|", QString::SkipEmptyParts);
+  QStringList aPartNames = VISU::Storable::FindValue(theMap, "myPartNames").split("|", QString::SkipEmptyParts);
   for(size_t anId = 0, anEnd = aPartNames.size(); anId < anEnd; anId++){
     const QString& aPartName = aPartNames[anId];
     VISU::Result::Resolution aResolution = VISU::Result::Resolution(aResolutions[anId].toInt());
-    myPartName2Resolution[aPartName.latin1()] = aResolution;
-    INITMSG(MYDEBUG, "aPartName = '"<<aPartName<<"' = "<<aResolution<<"\n");
+    myPartName2Resolution[aPartName.toLatin1().data()] = aResolution;
+    INITMSG(MYDEBUG, "aPartName = '"<<aPartName.toLatin1().data()<<"' = "<<aResolution<<"\n");
   }
   
   std::string aBase, aSuffix;
   SplitName(GetFileName(), aBase, aSuffix);
   INITMSGA(MYDEBUG, 0, "aBase = '"<<aBase<<"'; aSuffix = '"<<aSuffix<<"'\n");
 
-  std::string aSourceFileName = GetFileInfo().absFilePath().latin1();
+  std::string aSourceFileName = GetFileInfo().absoluteFilePath().toLatin1().data();
   BEGMSG(MYDEBUG, "aSourceFileName = '"<<aSourceFileName<<"'\n");    
   
   std::string aPrefix = aSourceFileName;
@@ -775,11 +777,11 @@ VISU::MultiResult_i
     aMultiFileStream<<"# [SOURCE]="<<aSourceFileName<<"\n";
     aMultiFileStream<<"#\n";
 
-    QStringList aPartInfos = QStringList::split("|", VISU::Storable::FindValue(theMap, "myPartInfos"));
+    QStringList aPartInfos = VISU::Storable::FindValue(theMap, "myPartInfos").split("|", QString::SkipEmptyParts);
     aMultiFileStream<<aPartInfos.size()<<"\n";
 
     for(size_t anId = 0, anEnd = aPartInfos.size(); anId < anEnd; anId++){
-      MultiResult_i::TPartInfo aPartInfo = GetPartInfo(aPartInfos[anId].latin1());
+      MultiResult_i::TPartInfo aPartInfo = GetPartInfo(aPartInfos[anId].toLatin1().data());
       aPartInfo.myFileName = aPrefix + "_" + aPartInfo.myFileName;
       INITMSG(MYDEBUG, "aPartInfo.myFileName = '"<<aPartInfo.myFileName<<"'\n");    
       aMultiFileStream<<aPartInfo<<"\n";
@@ -961,7 +963,7 @@ VISU::MultiResult_i
   anOutputStream<<"myComment=PART;";
   anOutputStream<<"myName="<<thePartName<<";";
   anOutputStream<<"myMeshName="<<theMeshName<<";";
-  anOutputStream<<"myResolutions="<<aRestoringMap["myResolutions"]<<";";
+  anOutputStream<<"myResolutions="<<aRestoringMap["myResolutions"].toLatin1().data()<<";";
   anOutputStream<<"myState="<<theResolution;
   anOutputStream<<ends;
 
index 18598c861ba61137df4d359dc3a5f5c720722979..1bbfad1b7c9740d5a14ec06e22ca4aaaac8d6c17 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_MultiResult_i.hh
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef __VISU_MULTI_RESULT_I_H__
 #define __VISU_MULTI_RESULT_I_H__
 
diff --git a/src/VISU_I/VISU_OptionalDeformation_i.cc b/src/VISU_I/VISU_OptionalDeformation_i.cc
new file mode 100755 (executable)
index 0000000..d726325
--- /dev/null
@@ -0,0 +1,111 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  File   : VISU_OptionalDeformation_i.cc
+//  Author : 
+//  Module : VISU
+//
+#include "VISU_OptionalDeformation_i.hh"
+#include "VISU_Result_i.hh"
+#include "VISU_Prs3dUtils.hh"
+#include "VISUConfig.hh"
+
+#include "VISU_OptionalDeformationPL.hxx"
+
+
+#ifdef _DEBUG_
+static int MYDEBUG = 0;
+#else
+static int MYDEBUG = 0;
+#endif
+
+//---------------------------------------------------------------
+VISU::OptionalDeformation_i::OptionalDeformation_i(VISU::ColoredPrs3d_i *theColoredPrs3d):
+  Deformation_i(theColoredPrs3d)
+{
+  if(MYDEBUG) MESSAGE("OptionalDeformation_i::OptionalDeformation_i()");
+}
+
+//---------------------------------------------------------------
+VISU::OptionalDeformation_i::~OptionalDeformation_i()
+{
+  if(MYDEBUG) MESSAGE("OptionalDeformation_i::~OptionalDeformation_i()");
+}
+
+//---------------------------------------------------------------
+void VISU::OptionalDeformation_i::UseDeformation(CORBA::Boolean theFlag){
+  if(MYDEBUG) MESSAGE("OptionalDeformation_i::UseDeformation()");
+
+  VISU::TSetModified aModified(GetColoredPrs3d());
+
+  ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_OptionalDeformationPL, bool>
+                  (GetSpecificDeformedPL(), &VISU_OptionalDeformationPL::UseDeformation, theFlag));
+}
+
+//---------------------------------------------------------------
+CORBA::Boolean VISU::OptionalDeformation_i::IsDeformed(){
+
+  if(MYDEBUG) MESSAGE("OptionalDeformation_i::IsDeformed()");
+  return GetSpecificDeformedPL()->IsDeformed();
+}
+
+
+void VISU::OptionalDeformation_i::InitDeformedPipeLine(VISU_DeformationPL* theDeformedPipeLine){
+
+  if(MYDEBUG) MESSAGE("OptionalDeformation_i::InitDeformedPipeLine()");
+  myOptionalDeformationPL = dynamic_cast<VISU_OptionalDeformationPL*>(theDeformedPipeLine);
+
+  TSuperClass::InitDeformedPipeLine(myOptionalDeformationPL);
+}
+
+//---------------------------------------------------------------
+void VISU::OptionalDeformation_i::
+DeformationToStream(std::ostringstream& theStr)
+{
+  Storable::DataToStream(theStr,"IsDeformed", IsDeformed());
+  if(IsDeformed())
+    TSuperClass::DeformationToStream(theStr);
+}
+
+//---------------------------------------------------------------
+void
+VISU::OptionalDeformation_i::RestoreDeformation(SALOMEDS::SObject_ptr theSObject,
+                                               const Storable::TRestoringMap& theMap)
+{
+  UseDeformation(Storable::FindValue(theMap,"IsDeformed").toInt());
+  if(IsDeformed())
+    TSuperClass::RestoreDeformation(theSObject,theMap);
+}
+
+
+
+void 
+VISU::OptionalDeformation_i::SameAsDeformation(const Deformation_i *aDeformedPrs){
+
+  if(const OptionalDeformation_i* aPrs3d = dynamic_cast<const OptionalDeformation_i*>(aDeformedPrs)){
+    OptionalDeformation_i* anOrigin = const_cast<OptionalDeformation_i*>(aPrs3d);
+    UseDeformation(anOrigin->IsDeformed());
+    
+    if(anOrigin->IsDeformed()){
+      TSuperClass::SameAsDeformation(aDeformedPrs);
+    }
+  }
+}
diff --git a/src/VISU_I/VISU_OptionalDeformation_i.hh b/src/VISU_I/VISU_OptionalDeformation_i.hh
new file mode 100755 (executable)
index 0000000..b7ba13f
--- /dev/null
@@ -0,0 +1,77 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  File   : VISU_Deformation_i.hxx
+//  Author : 
+//  Module : VISU
+//
+#ifndef VISU_OptionalDeformation_i_HeaderFile
+#define VISU_OptionalDeformation_i_HeaderFile
+
+#include "VISU_I.hxx"
+#include "VISU_Deformation_i.hh"
+#include "VISU_OptionalDeformationPL.hxx"
+
+namespace VISU {
+  class VISU_I_EXPORT OptionalDeformation_i : public virtual POA_VISU::OptionalDeformation,
+                                             public virtual Deformation_i
+  {
+    OptionalDeformation_i(const OptionalDeformation_i&);
+  public:
+    typedef VISU::OptionalDeformation TInterface;
+    typedef Deformation_i TSuperClass;
+
+    OptionalDeformation_i(VISU::ColoredPrs3d_i* theModifiedEngine);
+    virtual ~OptionalDeformation_i();
+    
+    virtual void UseDeformation(CORBA::Boolean theFlag);
+    virtual CORBA::Boolean IsDeformed();
+
+
+    virtual
+    void
+    DeformationToStream(std::ostringstream& theStr);
+
+    virtual
+    void
+    RestoreDeformation(SALOMEDS::SObject_ptr theSObject,
+           const Storable::TRestoringMap& theMap);
+
+    virtual 
+    void 
+    SameAsDeformation(const Deformation_i *aDeformedPrs);
+
+  protected:
+    virtual
+    void InitDeformedPipeLine(VISU_DeformationPL* theDeformedPipeLine);
+
+    VISU_OptionalDeformationPL*
+    GetSpecificDeformedPL() const
+    { 
+      return myOptionalDeformationPL;
+    }
+    
+  private:
+    VISU_OptionalDeformationPL* myOptionalDeformationPL;
+    
+  };
+}
+#endif
index a8de05e67d153a7b2ae860a23d5d6b43e13b1ed1..cea07c35fbd21cd97246f2b97f24952e1f19b2e3 100644 (file)
@@ -1,23 +1,24 @@
-// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-// 
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either 
-// version 2.1 of the License.
-// 
-// This library is distributed in the hope that it will be useful 
-// but WITHOUT ANY WARRANTY; without even the implied warranty of 
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-// Lesser General Public License for more details.
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// You should have received a copy of the GNU Lesser General Public  
-// License along with this library; if not, write to the Free Software 
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
-
 #include "VISU_Plot3D_i.hh"
 #include "VISU_Prs3dUtils.hh"
 
@@ -26,7 +27,7 @@
 #include "VISU_Actor.h"
 
 #include "SUIT_ResourceMgr.h"
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 
 #ifdef _DEBUG_
 static int MYDEBUG = 0;
@@ -34,6 +35,7 @@ static int MYDEBUG = 0;
 static int MYDEBUG = 0;
 #endif
 
+using namespace std;
 
 //---------------------------------------------------------------
 size_t 
index de7ffb09e13ec4f5c9c4695a5646af91b069580a..929cce8d14b46cb70575ce4d7aa51b9ca604543e 100644 (file)
@@ -1,23 +1,24 @@
-// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-// 
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either 
-// version 2.1 of the License.
-// 
-// This library is distributed in the hope that it will be useful 
-// but WITHOUT ANY WARRANTY; without even the implied warranty of 
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-// Lesser General Public License for more details.
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// You should have received a copy of the GNU Lesser General Public  
-// License along with this library; if not, write to the Free Software 
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
-
 #ifndef VISU_Plot3D_i_HeaderFile
 #define VISU_Plot3D_i_HeaderFile
 
diff --git a/src/VISU_I/VISU_PointMap3d_i.cc b/src/VISU_I/VISU_PointMap3d_i.cc
new file mode 100644 (file)
index 0000000..f03b72c
--- /dev/null
@@ -0,0 +1,1255 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+//  File   : VISU_PointMap3d_i.cc
+//  Author : Dmitry Matveitchev
+//  Module : VISU
+//
+#include "VISU_PointMap3d_i.hh"
+
+#include "VISU_CutLines_i.hh"
+#include "VISU_Result_i.hh"
+#include "VISU_ViewManager_i.hh"
+#include "VISU_ScalarBarActor.hxx"
+#include "SUIT_ResourceMgr.h"
+
+#include "SALOME_Event.h"
+#include "VISU_Prs3dUtils.hh"
+#include "SPlot2d_Curve.h"
+#include "VISU_PipeLineUtils.hxx"
+
+#include "VISU_TableReader.hxx"
+#include "VISU_ConvertorUtils.hxx"
+#include "VISU_DeformedGridPL.hxx"
+
+#include "SALOME_InteractiveObject.hxx"
+#include "VISU_Gen_i.hh"
+
+#include <vtkTextProperty.h>
+#include <vtkActorCollection.h>
+
+#include <boost/bind.hpp>
+
+#ifdef _DEBUG_
+static int MYDEBUG = 0;
+#else
+static int MYDEBUG = 0;
+#endif
+
+using namespace std;
+
+//----------------------------------------------------------------
+//                      PointMap3d Object
+//----------------------------------------------------------------
+int VISU::PointMap3d_i::myNbPresent = 0;
+const string VISU::PointMap3d_i::myComment  = "POINTMAP3D";
+/*!
+  Generate unique name
+*/
+QString VISU::PointMap3d_i::GenerateName()
+{
+  return VISU::GenerateName( "Table3D - ", ++myNbPresent );
+}
+/*!
+  Gets comment string
+*/
+const char* VISU::PointMap3d_i::GetComment() const
+{
+  return myComment.c_str();
+}
+/*!
+  Constructor
+*/
+VISU::PointMap3d_i::PointMap3d_i( SALOMEDS::Study_ptr theStudy, const char* theObjectEntry )
+  : Table_i(theStudy, theObjectEntry),
+  myActorCollection(vtkActorCollection::New()),
+  myIsActiveState(true)
+{
+  if(MYDEBUG) MESSAGE("PointMap3d_i::PointMap3d_i - this = "<<this);
+  SetStudyDocument(theStudy);
+  mySObj = theStudy->FindObjectID(theObjectEntry);
+  myOffset[0] = myOffset[1] = myOffset[2] = 0;
+  myActorCollection->Delete();
+}
+/*!
+  Destructor
+*/
+VISU::PointMap3d_i::~PointMap3d_i()
+{
+  if(MYDEBUG) MESSAGE("PointMap3d_i::~PointMap3d_i - this = "<<this);
+}
+
+//----------------------------------------------------------------------------
+namespace VISU
+{
+  struct TInvokeSignalEvent: public SALOME_Event
+  {
+    typedef boost::signal0<void> TSignal;
+    const TSignal& mySignal;
+    
+    TInvokeSignalEvent(const TSignal& theSignal):
+      mySignal(theSignal)
+    {}
+    
+    virtual
+    void
+    Execute()
+    {
+      mySignal();
+    }
+  };
+}
+
+//----------------------------------------------------------------------------
+void
+VISU::PointMap3d_i
+::SetTitle( const char* theTitle )
+{
+  SetName( theTitle, true );
+}
+
+//----------------------------------------------------------------------------
+char*
+VISU::PointMap3d_i
+::GetTitle()
+{
+  return CORBA::string_dup( GetName().c_str() );
+}
+
+//----------------------------------------------------------------------------
+SALOMEDS::SObject_var
+VISU::PointMap3d_i
+::GetSObject() const
+{
+  return mySObj;
+}
+
+//----------------------------------------------------------------------------
+std::string
+VISU::PointMap3d_i
+::GetObjectEntry() 
+{
+  CORBA::String_var anEntry = mySObj->GetID();
+  return anEntry.in(); 
+}
+
+//----------------------------------------------------------------------------
+Handle(SALOME_InteractiveObject)
+VISU::PointMap3d_i
+::GetIO()
+{
+  if( myIO.IsNull() )
+    myIO = new SALOME_InteractiveObject(GetEntry().c_str(), "VISU", GetName().c_str());
+
+  return myIO;
+}
+
+//----------------------------------------------------------------------------
+/*!
+  Creates table3d object
+*/
+VISU::Storable* VISU::PointMap3d_i::Create()
+{
+  // generate name ...
+  SetName(GetTableTitle().toLatin1().constData(), false);
+
+  if ( GetName() == "" ) {
+    if ( !mySObj->_is_nil() ) {
+      CutLines_i* pCutLines = NULL;
+      CORBA::Object_var anObj = SObjectToObject(mySObj);
+      if(!CORBA::is_nil(anObj)){
+       VISU::CutLines_var aCutLines = VISU::CutLines::_narrow(anObj);
+       if(!aCutLines->_is_nil())
+         pCutLines = dynamic_cast<CutLines_i*>(GetServant(aCutLines).in());
+      }
+      if (!pCutLines)
+       if (mySObj->GetName()) SetName(mySObj->GetName(), false);
+    }
+  }
+
+  if ( GetName() == "" )
+    SetName(GenerateName().toLatin1().constData(), false);
+
+  // Create Pipeline
+  myTablePL = VISU_DeformedGridPL::New();
+  myTablePL->SetPolyDataIDMapper(GetTableIDMapper());
+  myTablePL->Update();
+
+  SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
+
+  bool isUnits = aResourceMgr->booleanValue( "VISU", "scalar_bar_display_units", true );
+  SetUnitsVisible(isUnits);
+
+  SetSourceRange();
+
+  if( aResourceMgr->booleanValue("VISU", "scalar_bar_logarithmic", false) )
+    SetScaling(VISU::LOGARITHMIC);
+  else
+    SetScaling(VISU::LINEAR);
+
+  int aNumberOfColors = aResourceMgr->integerValue( "VISU", "scalar_bar_num_colors", 64 );
+  SetNbColors(aNumberOfColors);
+
+  int aRangeType = aResourceMgr->integerValue("VISU" , "scalar_range_type", 0);
+  UseFixedRange(aRangeType == 1);
+  if(aRangeType == 1){
+    float aMin = aResourceMgr->doubleValue("VISU", "scalar_range_min", 0);
+    float aMax = aResourceMgr->doubleValue("VISU", "scalar_range_max", 0);
+    SetRange(aMin, aMax);
+  }
+
+  int lp = aResourceMgr->integerValue( "VISU", "scalar_bar_label_precision", 3 );
+  SetLabelsFormat( VISU::ToFormat( lp ).c_str() );
+
+  // Orientation
+  int anOrientation = aResourceMgr->integerValue("VISU", "scalar_bar_orientation", 0);
+  if(anOrientation == 1)
+    SetBarOrientation(VISU::ColoredPrs3dBase::HORIZONTAL);
+  else
+    SetBarOrientation(VISU::ColoredPrs3dBase::VERTICAL);
+
+  // Scalar Bar origin
+  QString propertyName = QString( "scalar_bar_%1_" ).arg( anOrientation == 0 ? "vertical" : "horizontal" );
+
+  vtkFloatingPointType aXorigin = (myBarOrientation == VISU::ColoredPrs3dBase::VERTICAL) ? 0.01 : 0.2;
+  aXorigin = aResourceMgr->doubleValue("VISU", propertyName + "x", aXorigin);
+  myPosition[0] = aXorigin;
+
+  vtkFloatingPointType aYorigin = (myBarOrientation == VISU::ColoredPrs3dBase::VERTICAL) ? 0.1 : 0.012;
+  aYorigin = aResourceMgr->doubleValue("VISU", propertyName + "y", aYorigin);
+  myPosition[1] = aYorigin;
+
+  // Scalar Bar size
+  myWidth = (myBarOrientation == VISU::ColoredPrs3dBase::VERTICAL)? 0.1 : 0.6;
+  myWidth = aResourceMgr->doubleValue("VISU", propertyName + "width", myWidth);
+
+  myHeight = (myBarOrientation == VISU::ColoredPrs3dBase::VERTICAL)? 0.8:0.12;
+  myHeight = aResourceMgr->doubleValue("VISU", propertyName + "height", myHeight);
+
+  myTitleSize = aResourceMgr->doubleValue("VISU", propertyName + "title_size", 0);
+  myLabelSize = aResourceMgr->doubleValue("VISU", propertyName + "label_size", 0);
+  myBarWidth = aResourceMgr->doubleValue("VISU", propertyName + "bar_width", 0);
+  myBarHeight = aResourceMgr->doubleValue("VISU", propertyName + "bar_height", 0);
+
+  // Nb of Labels
+  myNumberOfLabels = aResourceMgr->integerValue( "VISU", "scalar_bar_num_labels", 5 );
+
+  // Fonts properties definition
+  myIsBoldTitle = myIsItalicTitle = myIsShadowTitle = true;
+  myTitFontType = VTK_ARIAL;
+
+  if(aResourceMgr->hasValue( "VISU", "scalar_bar_title_font" )){
+    QFont f = aResourceMgr->fontValue( "VISU", "scalar_bar_title_font" );
+    if ( f.family() == "Arial" )
+      myTitFontType = VTK_ARIAL;
+    else if ( f.family() == "Courier" )
+      myTitFontType = VTK_COURIER;
+    else if ( f.family() == "Times" )
+      myTitFontType = VTK_TIMES;
+    
+    myIsBoldTitle   = f.bold();
+    myIsItalicTitle = f.italic();
+    myIsShadowTitle =  f.overline();
+  }
+
+  QColor aTextColor = aResourceMgr->colorValue( "VISU", "scalar_bar_title_color", QColor( 255, 255, 255 ) );
+
+  myTitleColor[0] = aTextColor.red()   / 255;
+  myTitleColor[1] = aTextColor.green() / 255;
+  myTitleColor[2] = aTextColor.blue()  / 255;
+
+  myIsBoldLabel = myIsItalicLabel = myIsShadowLabel = true;
+  myLblFontType = VTK_ARIAL;
+
+  if( aResourceMgr->hasValue( "VISU", "scalar_bar_label_font" )){
+    QFont f = aResourceMgr->fontValue( "VISU", "scalar_bar_label_font" );
+    if ( f.family() == "Arial" )
+      myLblFontType = VTK_ARIAL;
+    else if ( f.family() == "Courier" )
+      myLblFontType = VTK_COURIER;
+    else if ( f.family() == "Times" )
+      myLblFontType = VTK_TIMES;
+    
+    myIsBoldLabel   = f.bold();
+    myIsItalicLabel = f.italic();
+    myIsShadowLabel =  f.overline();
+  }
+
+  QColor aLabelColor = aResourceMgr->colorValue( "VISU", "scalar_bar_label_color", QColor( 255, 255, 255 ) );
+
+  myLabelColor[0] = aLabelColor.red()   / 255;
+  myLabelColor[1] = aLabelColor.green() / 255;
+  myLabelColor[2] = aLabelColor.blue()  / 255;
+
+  // scalar bar default position
+  bool anIsArrangeBar = aResourceMgr->booleanValue("VISU", "scalar_bars_default_position", 0);
+  int aPlace = 1;
+  if (anIsArrangeBar){
+    aPlace = aResourceMgr->integerValue("VISU", "scalar_bar_position_num",0);
+  }
+  if(myBarOrientation == VISU::ColoredPrs3dBase::HORIZONTAL){
+    myPosition[1] += myHeight*(aPlace-1);
+  } else {
+    myPosition[0] += myWidth*(aPlace-1);
+  }
+
+  return Build( false );
+}
+
+/*
+  GetIDMapper
+*/
+
+VISU::PTableIDMapper
+VISU::PointMap3d_i
+::GetTableIDMapper()
+{
+  //Initialisate table mapper
+  SALOMEDS::GenericAttribute_var anAttr;
+  mySObj->FindAttribute(anAttr, "AttributeTableOfReal");
+  SALOMEDS::AttributeTableOfReal_var aTableOfReal = SALOMEDS::AttributeTableOfReal::_narrow(anAttr);
+
+  PTableIDMapper aTableIDMapper( new TTableIDMapper() );
+  TTable2D& aTable2D = *aTableIDMapper;
+
+  aTable2D.myTitle = aTableOfReal->GetTitle();
+
+  SALOMEDS::StringSeq_var aColStrList = aTableOfReal->GetColumnTitles();
+  SALOMEDS::StringSeq_var aRowStrList = aTableOfReal->GetRowTitles();
+
+  for ( int i = 0; i < aRowStrList->length(); i++ ) {
+    aTable2D.myColumnTitles.push_back( aRowStrList[ i ].in() );
+  }
+
+  int aCols = aTableOfReal->GetNbColumns();
+  int aRows = aTableOfReal->GetNbRows();
+
+  for (int i=1; i<=aCols; i++) {
+    TTable2D::TRow aRow;
+    aRow.myTitle = aColStrList[ i-1 ].in();
+    for (int j=1; j<=aRows; j++) {
+      double aVal = aTableOfReal->GetValue(j, i);
+      QString aValStr = QString::number(aVal);
+      aRow.myValues.push_back( aValStr.toLatin1().constData() );
+    }
+    if( aRow.myValues.size() > 0 )
+      aTable2D.myRows.push_back( aRow );
+  }
+
+  return aTableIDMapper;
+}
+
+/*
+  Create Actor
+*/
+VISU_PointMap3dActor* VISU::PointMap3d_i::CreateActor()
+{
+  VISU_PointMap3dActor* anActor = VISU_PointMap3dActor::New();
+  anActor->SetPipeLine(myTablePL);
+  anActor->SetFactory(this);
+
+  SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
+  int  aDispMode = aResourceMgr->integerValue("VISU", "point_map_represent", 2);
+  bool toShrink  = aResourceMgr->booleanValue("VISU", "scalar_map_shrink", false);
+  anActor->SetRepresentation(aDispMode);
+  if (toShrink) anActor->SetShrink();
+
+  Handle (SALOME_InteractiveObject) anIO = new SALOME_InteractiveObject(GetEntry().c_str(), "VISU", GetName().c_str());
+  anActor->setIO(anIO);
+
+  myUpdateActorsSignal.connect(boost::bind(&VISU_Actor::UpdateFromFactory,anActor));
+  //  myRemoveActorsFromRendererSignal.connect(boost::bind(&VISU_Actor::RemoveFromRender,anActor));
+
+  myActorCollection->AddItem(anActor);
+
+  UpdateActor( anActor );
+
+  return anActor;
+}
+
+/*
+  Update Actor
+*/
+void VISU::PointMap3d_i::UpdateActor(VISU_ActorBase* theActor)
+{
+  if(VISU_PointMap3dActor* anActor = dynamic_cast<VISU_PointMap3dActor*>(theActor)){
+    Update();
+    VISU_ScalarBarActor *aScalarBar = anActor->GetScalarBar();
+    aScalarBar->SetLookupTable(GetSpecificPL()->GetBarTable());
+    aScalarBar->SetTitle(GetTitle());
+    aScalarBar->SetOrientation(GetBarOrientation());
+    aScalarBar->GetPositionCoordinate()->SetCoordinateSystemToNormalizedViewport();
+    aScalarBar->GetPositionCoordinate()->SetValue(GetPosX(),GetPosY());
+    aScalarBar->SetWidth(GetWidth());
+    aScalarBar->SetHeight(GetHeight());
+    aScalarBar->SetNumberOfLabels(GetLabels());
+    aScalarBar->SetRatios(myTitleSize, myLabelSize, 
+                         myBarWidth, myBarHeight);
+    aScalarBar->SetNumberOfLabels(GetLabels());
+    aScalarBar->SetLabelFormat(GetLabelsFormat());
+
+    vtkFloatingPointType anRGB[3];
+
+    vtkTextProperty* aTitleProp = aScalarBar->GetTitleTextProperty();
+    aTitleProp->SetFontFamily(GetTitFontType());
+
+    GetTitleColor(anRGB[0],anRGB[1],anRGB[2]);
+    aTitleProp->SetColor(anRGB[0],anRGB[1],anRGB[2]);
+
+    IsBoldTitle()? aTitleProp->BoldOn() : aTitleProp->BoldOff();
+    IsItalicTitle()? aTitleProp->ItalicOn() : aTitleProp->ItalicOff();
+    IsShadowTitle()? aTitleProp->ShadowOn() : aTitleProp->ShadowOff();
+
+    vtkTextProperty* aLabelProp = aScalarBar->GetLabelTextProperty();
+    aLabelProp->SetFontFamily(GetLblFontType());
+
+    GetLabelColor(anRGB[0],anRGB[1],anRGB[2]);
+    aLabelProp->SetColor(anRGB[0],anRGB[1],anRGB[2]);
+
+    IsBoldLabel()? aLabelProp->BoldOn() : aLabelProp->BoldOff();
+    IsItalicLabel()? aLabelProp->ItalicOn() : aLabelProp->ItalicOff();
+    IsShadowLabel()? aLabelProp->ShadowOn() : aLabelProp->ShadowOff();
+
+    aScalarBar->Modified();
+  }
+  theActor->SetPosition(myOffset[0],myOffset[1],myOffset[2]);
+}
+
+void
+VISU::PointMap3d_i
+::UpdateActors()
+{
+  if(MYDEBUG) MESSAGE("Prs3d_i::UpdateActors - this = "<<this);
+  ProcessVoidEvent(new TVoidMemFunEvent<VISU_PipeLine>
+                  (GetSpecificPL(), &VISU_PipeLine::Update));
+
+  ProcessVoidEvent(new VISU::TInvokeSignalEvent(myUpdateActorsSignal));
+}
+
+//----------------------------------------------------------------------------
+void
+VISU::PointMap3d_i
+::Update()
+{
+  if(GetMTime() < myUpdateTime.GetMTime())
+    return;
+
+  if(MYDEBUG) MESSAGE("PointMap3d_i::Update - this = "<<this);
+
+  try{
+    ProcessVoidEvent(new TVoidMemFunEvent<VISU_PipeLine>
+                    (GetSpecificPL(), &VISU_PipeLine::Update));
+    myUpdateTime.Modified();
+  }catch(std::exception&){
+    throw;
+  }catch(...){
+    throw std::runtime_error("PointMap3d_i::Update >> unexpected exception was caught!!!");
+  }
+}
+
+//----------------------------------------------------------------------------
+unsigned long int 
+VISU::PointMap3d_i
+::GetMTime()
+{
+  unsigned long int aTime = myParamsTime.GetMTime();
+  if( GetSpecificPL() )
+    aTime = std::max(aTime, GetSpecificPL()->GetMTime());
+  return aTime;
+}
+
+/*!
+  Builds presentation of table
+*/
+VISU::Storable* VISU::PointMap3d_i::Build( int theRestoring )
+{
+
+  // look for reference SObject with table attribute
+  SALOMEDS::SObject_var SO = mySObj;
+
+  if ( !SO->_is_nil() ) {
+    CutLines_i* pCutLines = NULL;
+    CORBA::Object_var anObj = SObjectToObject(SO);
+    if(!CORBA::is_nil(anObj)){
+      VISU::CutLines_var aCutLines = VISU::CutLines::_narrow(anObj);
+      if(!aCutLines->_is_nil())
+       pCutLines = dynamic_cast<CutLines_i*>(GetServant(aCutLines).in());
+    }
+    SALOMEDS::Study_var aStudy = GetStudyDocument();
+    SALOMEDS::StudyBuilder_var Builder = GetStudyDocument()->NewBuilder();
+    SALOMEDS::GenericAttribute_var anAttr;
+    // look for component
+    if ( !theRestoring ) {
+       SALOMEDS::SComponent_var SComponent = VISU::FindOrCreateVisuComponent( GetStudyDocument() );
+       // create SObject and set attributes
+       QString aComment;
+       if(pCutLines)
+         aComment.sprintf("myComment=%s;mySourceId=CutLines",GetComment());
+       else{
+         aComment.sprintf("myComment=%s;mySourceId=TableAttr",GetComment());
+         SALOMEDS::SObject_var aFatherSObject = SO->GetFather();
+         if(aFatherSObject->FindAttribute(anAttr,"AttributeString")){
+           SALOMEDS::AttributeString_var aCommentAttr =
+             SALOMEDS::AttributeString::_narrow(anAttr);
+           CORBA::String_var aValue = aCommentAttr->Value();
+           Storable::TRestoringMap aMap;
+           Storable::StringToMap(aValue.in(),aMap);
+           bool anIsExist;
+           QString aMethodName = VISU::Storable::FindValue(aMap,"myComment",&anIsExist);
+           if(anIsExist){
+             if(aMethodName == "ImportTables"){
+               aComment.sprintf("myComment=%s;mySourceId=TableFile",GetComment());
+             }
+           }
+         }
+       }
+
+       string anEntry = CreateAttributes( GetStudyDocument(),
+                                         SO->GetID(),//SComponent->GetID(),
+                                         "ICON_TREE_TABLE",
+                                         GetID(),
+                                         GetName(),
+                                         "",
+                                         aComment.toLatin1().constData(),
+                                         pCutLines );
+       // create SObject referenced to real table object
+       mySObj = SALOMEDS::SObject::_duplicate(GetStudyDocument()->FindObjectID( anEntry.c_str() ));
+       if(pCutLines) {
+         pCutLines->BuildTableOfReal(mySObj);
+       }
+       // mpv (PAL5357): reference attributes are unnecessary now
+       //SALOMEDS::SObject_var refSO = Builder->NewObject( mySObj );
+       //Builder->Addreference( refSO, SO );
+    }
+
+    return this;
+  }
+  return NULL;
+}
+/*!
+  Restores table object from stream
+*/
+VISU::Storable* VISU::PointMap3d_i::Restore( const Storable::TRestoringMap& theMap, SALOMEDS::SObject_ptr SO)
+{
+  if(MYDEBUG) MESSAGE(GetComment());
+  SetName(VISU::Storable::FindValue(theMap,"myName").toLatin1().constData(), false);
+  myTitle = VISU::Storable::FindValue(theMap,"myTitle").toLatin1().constData();
+  myOrientation = ( VISU::Table::Orientation )( VISU::Storable::FindValue(theMap,"myOrientation").toInt() );
+  mySObj = SALOMEDS::SObject::_duplicate(SO);
+
+  //Create PipeLine
+  myTablePL = VISU_DeformedGridPL::New();
+  myTablePL->SetPolyDataIDMapper(GetTableIDMapper());
+  myTablePL->Update();
+
+  //Restore Other Values
+  
+  float aMin = VISU::Storable::FindValue(theMap,"myScalarRange[0]").toDouble();
+  float aMax = VISU::Storable::FindValue(theMap,"myScalarRange[1]").toDouble();
+  SetRange(aMin, aMax);
+
+  UseFixedRange(VISU::Storable::FindValue(theMap,"myIsFixedRange", "0").toInt());
+
+  SetNbColors(VISU::Storable::FindValue(theMap,"myNumberOfColors").toInt());
+  SetUnitsVisible(VISU::Storable::FindValue(theMap,"myUnitsVisible", "1").toInt());
+  SetLabelsFormat(VISU::Storable::FindValue(theMap,"myLabelsFormat", "%-#6.3g").toLatin1().constData());
+  SetBarOrientation((VISU::ColoredPrs3dBase::Orientation)VISU::Storable::FindValue(theMap,"myBarOrientation").toInt());
+
+  SetTitle(VISU::Storable::FindValue(theMap,"myTitle").toLatin1().constData());
+  myNumberOfLabels = VISU::Storable::FindValue(theMap,"myNumberOfLabels").toInt();
+  myPosition[0] = VISU::Storable::FindValue(theMap,"myPosition[0]").toDouble();
+  myPosition[1] = VISU::Storable::FindValue(theMap,"myPosition[1]").toDouble();
+  myWidth = VISU::Storable::FindValue(theMap,"myWidth").toDouble();
+  myHeight = VISU::Storable::FindValue(theMap,"myHeight").toDouble();
+  myTitleSize = VISU::Storable::FindValue(theMap,"myTitleSize").toInt();
+  myLabelSize = VISU::Storable::FindValue(theMap,"myLabelSize").toInt();
+  myBarWidth = VISU::Storable::FindValue(theMap,"myBarWidth").toInt();
+  myBarHeight = VISU::Storable::FindValue(theMap,"myBarHeight").toInt();
+
+  myTitFontType = VISU::Storable::FindValue(theMap,"myTitFontType").toInt();
+  myIsBoldTitle = VISU::Storable::FindValue(theMap,"myIsBoldTitle").toInt();
+  myIsItalicTitle = VISU::Storable::FindValue(theMap,"myIsItalicTitle").toInt();
+  myIsShadowTitle = VISU::Storable::FindValue(theMap,"myIsShadowTitle").toInt();
+  myTitleColor[0] = VISU::Storable::FindValue(theMap,"myTitleColor[0]").toFloat();
+  myTitleColor[1] = VISU::Storable::FindValue(theMap,"myTitleColor[1]").toFloat();
+  myTitleColor[2] = VISU::Storable::FindValue(theMap,"myTitleColor[2]").toFloat();
+
+  myLblFontType = VISU::Storable::FindValue(theMap,"myLblFontType").toInt();
+  myIsBoldLabel = VISU::Storable::FindValue(theMap,"myIsBoldLabel").toInt();
+  myIsItalicLabel = VISU::Storable::FindValue(theMap,"myIsItalicLabel").toInt();
+  myIsShadowLabel = VISU::Storable::FindValue(theMap,"myIsShadowLabel").toInt();
+  myLabelColor[0] = VISU::Storable::FindValue(theMap,"myLabelColor[0]").toFloat();
+  myLabelColor[1] = VISU::Storable::FindValue(theMap,"myLabelColor[1]").toFloat();
+  myLabelColor[2] = VISU::Storable::FindValue(theMap,"myLabelColor[2]").toFloat();
+
+  myParamsTime.Modified();
+  return Build( true );
+}
+/*!
+  Flushes table data into stream
+*/
+void VISU::PointMap3d_i::ToStream( std::ostringstream& theStr )
+{
+  Storable::DataToStream( theStr, "myName",        GetName().c_str() );
+  Storable::DataToStream( theStr, "myTitle",       myTitle.c_str() );
+  Storable::DataToStream( theStr, "myOrientation", myOrientation );
+
+  Storable::DataToStream( theStr, "myScalarRange[0]", GetMin() );
+  Storable::DataToStream( theStr, "myScalarRange[1]", GetMax() );
+  Storable::DataToStream( theStr, "myIsFixedRange",   IsRangeFixed() );
+
+  Storable::DataToStream( theStr, "myNumberOfColors", int(GetNbColors()) );
+  Storable::DataToStream( theStr, "myBarOrientation", myBarOrientation );
+
+  Storable::DataToStream( theStr, "myTitle",          myTitle.c_str() );
+  Storable::DataToStream( theStr, "myUnitsVisible",   myIsUnits );
+  Storable::DataToStream( theStr, "myNumberOfLabels", myNumberOfLabels );
+  Storable::DataToStream( theStr, "myLabelsFormat",   myLabelsFormat.c_str() );
+  Storable::DataToStream( theStr, "myPosition[0]",    myPosition[0] );
+  Storable::DataToStream( theStr, "myPosition[1]",    myPosition[1] );
+  Storable::DataToStream( theStr, "myWidth",          myWidth );
+  Storable::DataToStream( theStr, "myHeight",         myHeight );
+  Storable::DataToStream( theStr, "myTitleSize",      myTitleSize );
+  Storable::DataToStream( theStr, "myLabelSize",     myLabelSize );
+  Storable::DataToStream( theStr, "myBarWidth",       myBarWidth );
+  Storable::DataToStream( theStr, "myBarHeight",      myBarHeight );
+
+  Storable::DataToStream( theStr, "myTitFontType",    myTitFontType );
+  Storable::DataToStream( theStr, "myIsBoldTitle",    myIsBoldTitle );
+  Storable::DataToStream( theStr, "myIsItalicTitle",  myIsItalicTitle );
+  Storable::DataToStream( theStr, "myIsShadowTitle",  myIsShadowTitle );
+  Storable::DataToStream( theStr, "myTitleColor[0]",  myTitleColor[0] );
+  Storable::DataToStream( theStr, "myTitleColor[1]",  myTitleColor[1] );
+  Storable::DataToStream( theStr, "myTitleColor[2]",  myTitleColor[2] );
+
+  Storable::DataToStream( theStr, "myLblFontType",    myLblFontType );
+  Storable::DataToStream( theStr, "myIsBoldLabel",    myIsBoldLabel );
+  Storable::DataToStream( theStr, "myIsItalicLabel",  myIsItalicLabel );
+  Storable::DataToStream( theStr, "myIsShadowLabel",  myIsShadowLabel );
+  Storable::DataToStream( theStr, "myLabelColor[0]",  myLabelColor[0] );
+  Storable::DataToStream( theStr, "myLabelColor[1]",  myLabelColor[1] );
+  Storable::DataToStream( theStr, "myLabelColor[2]",  myLabelColor[2] );
+}
+/*!
+  Called from engine to restore table from the file
+*/
+VISU::Storable* VISU::PointMap3d_i::StorableEngine(SALOMEDS::SObject_ptr theSObject,
+                                                  const Storable::TRestoringMap& theMap,
+                                                  const std::string& thePrefix,
+                                                  CORBA::Boolean theIsMultiFile)
+{
+  SALOMEDS::Study_var aStudy = theSObject->GetStudy();
+  VISU::PointMap3d_i* pResent = new VISU::PointMap3d_i( aStudy, "" );
+  return pResent->Restore( theMap, theSObject);
+}
+/*!
+  Gets title for the original table object
+*/
+QString VISU::PointMap3d_i::GetTableTitle()
+{
+  SALOMEDS::SObject_var SO = mySObj;
+  SALOMEDS::StudyBuilder_var Builder = GetStudyDocument()->NewBuilder();
+  SALOMEDS::GenericAttribute_var        anAttr;
+  SALOMEDS::AttributeTableOfInteger_var anInt;
+  SALOMEDS::AttributeTableOfReal_var    aReal;
+  if ( !SO->_is_nil() ) {
+    if ( Builder->FindAttribute( SO, anAttr, "AttributeTableOfInteger" ) ) {
+      anInt = SALOMEDS::AttributeTableOfInteger::_narrow( anAttr );
+      CORBA::String_var aString = anInt->GetTitle();
+      return aString.in();
+    }
+    else if ( Builder->FindAttribute( SO, anAttr, "AttributeTableOfReal" ) ) {
+      aReal = SALOMEDS::AttributeTableOfReal::_narrow( anAttr );
+      CORBA::String_var aString = aReal->GetTitle();
+      return aString.in();
+    }
+  }
+  return "";
+}
+
+//---------------------------------------------------------------
+void VISU::PointMap3d_i::RemoveFromStudy()
+{
+  struct TRemoveFromStudy: public SALOME_Event
+  {
+    VISU::PointMap3d_i* myRemovable;
+    TRemoveFromStudy(VISU::PointMap3d_i* theRemovable):
+      myRemovable(theRemovable)
+    {}
+    
+    virtual
+    void
+    Execute()
+    {
+      VISU::RemoveFromStudy(myRemovable->GetSObject(),false);
+    }
+  };
+
+  // Remove the table with all curves
+  ProcessVoidEvent(new TRemoveFromStudy(this));
+}
+
+//----------------------------------------------------------------
+void VISU::PointMap3d_i::SetOffset(CORBA::Float theDx, CORBA::Float theDy, CORBA::Float theDz)
+{
+  myOffset[0] = theDx;
+  myOffset[1] = theDy;
+  myOffset[2] = theDz;
+  myParamsTime.Modified();
+}
+
+void VISU::PointMap3d_i::GetOffset(CORBA::Float& theDx, CORBA::Float& theDy, CORBA::Float& theDz)
+{
+  theDx = myOffset[0];
+  theDy = myOffset[1];
+  theDz = myOffset[2];
+}
+
+CORBA::Float VISU::PointMap3d_i::GetMemorySize()
+{
+  CORBA::Float aSize = GetSpecificPL()->GetMemorySize();
+
+  int anEnd = myActorCollection->GetNumberOfItems();
+  for(int anId = 0; anId < anEnd; anId++)
+    if(vtkObject* anObject = myActorCollection->GetItemAsObject(anId))
+      if(VISU_Actor* anActor = dynamic_cast<VISU_Actor*>(anObject)){
+       aSize += anActor->GetMemorySize();
+       //cout<<"Prs3d_i::GetMemorySize - "<<this<<"; anActor = "<<aSize / (1024.0 * 1024.0)<<endl;
+      }
+
+  // Convert to mega bytes
+  return aSize / (1024.0 * 1024.0);
+}
+
+//------------------ ColoredPrs3dBase Methods --------------------
+CORBA::Double VISU::PointMap3d_i::GetMin()
+{
+  return myTablePL->GetScalarRange()[0];
+}
+
+CORBA::Double VISU::PointMap3d_i::GetMinTableValue()
+{
+  SALOMEDS::GenericAttribute_var anAttr;
+  mySObj->FindAttribute(anAttr, "AttributeTableOfReal");
+  SALOMEDS::AttributeTableOfReal_var aTableOfReal = SALOMEDS::AttributeTableOfReal::_narrow(anAttr);
+  double aMin = aTableOfReal->GetValue(1, 1);
+  
+  for (int i=1; i<=aTableOfReal->GetNbColumns(); i++)
+    for (int j=1; j<=aTableOfReal->GetNbRows(); j++) {
+      double aVal = aTableOfReal->GetValue(j, i);
+      if (aVal < aMin)
+       aMin = aVal;
+    }
+  
+  return aMin;
+}
+
+CORBA::Double VISU::PointMap3d_i::GetMaxTableValue()
+{
+  SALOMEDS::GenericAttribute_var anAttr;
+  mySObj->FindAttribute(anAttr, "AttributeTableOfReal");
+  SALOMEDS::AttributeTableOfReal_var aTableOfReal = SALOMEDS::AttributeTableOfReal::_narrow(anAttr);
+  double aMax = aTableOfReal->GetValue(1, 1);
+
+  for (int i=1; i<=aTableOfReal->GetNbColumns(); i++)
+    for (int j=1; j<=aTableOfReal->GetNbRows(); j++) {
+      double aVal = aTableOfReal->GetValue(j, i);
+      if (aVal > aMax)
+       aMax = aVal;
+    }
+
+  return aMax;
+}
+
+CORBA::Double VISU::PointMap3d_i::GetMax()
+{
+  return myTablePL->GetScalarRange()[1];
+}
+
+void VISU::PointMap3d_i::SetRange(CORBA::Double theMin, CORBA::Double theMax)
+{
+  vtkFloatingPointType aScalarRange[2] = {theMin, theMax};
+  ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_DeformedGridPL, vtkFloatingPointType*>
+                  (GetSpecificPL(), &VISU_DeformedGridPL::SetScalarRange, aScalarRange));
+
+  UseFixedRange(true);
+}
+
+CORBA::Double VISU::PointMap3d_i::GetSourceMin()
+{
+  vtkFloatingPointType aRange[2];
+  GetSpecificPL()->GetSourceRange(aRange);
+  return aRange[0];
+}
+
+CORBA::Double VISU::PointMap3d_i::GetSourceMax()
+{
+  vtkFloatingPointType aRange[2];
+  GetSpecificPL()->GetSourceRange(aRange);
+  return aRange[1];
+}
+
+void VISU::PointMap3d_i::SetSourceRange()
+{
+  GetSpecificPL()->SetSourceRange();
+  ProcessVoidEvent(new TVoidMemFunEvent<VISU_DeformedGridPL>
+                  (GetSpecificPL(), &VISU_DeformedGridPL::SetSourceRange));
+
+  UseFixedRange(false);
+}
+
+CORBA::Boolean VISU::PointMap3d_i::IsRangeFixed()
+{
+  return myIsFixedRange; 
+}
+
+void VISU::PointMap3d_i::UseFixedRange(bool theRange)
+{
+  if(myIsFixedRange == theRange)
+    return;
+
+  myIsFixedRange = theRange;
+}
+
+void VISU::PointMap3d_i::SetPosition(CORBA::Double theX, CORBA::Double theY)
+{
+  bool anIsSameValue = VISU::CheckIsSameValue(myPosition[0], theX);
+  anIsSameValue &= VISU::CheckIsSameValue(myPosition[1], theY);
+  if(anIsSameValue)
+    return;
+
+  myPosition[0] = theX; 
+  myPosition[1] = theY;
+}
+
+CORBA::Double VISU::PointMap3d_i::GetPosX()
+{
+  return myPosition[0];
+}
+
+CORBA::Double VISU::PointMap3d_i::GetPosY()
+{
+  return myPosition[1];
+}
+
+void VISU::PointMap3d_i::SetSize(CORBA::Double theWidth, CORBA::Double theHeight)
+{
+  bool anIsSameValue = VISU::CheckIsSameValue(myWidth, theWidth);
+  anIsSameValue &= VISU::CheckIsSameValue(myHeight, theHeight);
+  if(anIsSameValue)
+    return;
+
+  myWidth = theWidth; 
+  myHeight = theHeight;
+}
+
+CORBA::Double VISU::PointMap3d_i::GetHeight()
+{
+  return myHeight;
+}
+
+CORBA::Double VISU::PointMap3d_i::GetWidth()
+{
+  return myWidth;
+}
+
+void VISU::PointMap3d_i::SetNbColors(CORBA::Long theNbColors)
+{
+  ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_DeformedGridPL, int>
+                  (GetSpecificPL(), &VISU_DeformedGridPL::SetNbColors, theNbColors));
+}
+
+CORBA::Long VISU::PointMap3d_i::GetNbColors()
+{
+  return GetSpecificPL()->GetNbColors();
+}
+
+void VISU::PointMap3d_i::SetLabels(CORBA::Long theNbLabels)
+{
+  if(myNumberOfLabels == theNbLabels)
+    return;
+
+  myNumberOfLabels = theNbLabels;
+}
+
+CORBA::Long VISU::PointMap3d_i::GetLabels()
+{
+  return myNumberOfLabels;
+}
+
+void VISU::PointMap3d_i::SetBarOrientation(VISU::ColoredPrs3dBase::Orientation theBarOrientation)
+{
+  if(myBarOrientation == theBarOrientation)
+    return;
+
+  myBarOrientation = theBarOrientation;
+}
+
+VISU::ColoredPrs3dBase::Orientation VISU::PointMap3d_i::GetBarOrientation()
+{
+  return myBarOrientation;
+}
+
+//------------------- ScaledPrs3d Methods -----------------------
+
+void VISU::PointMap3d_i::SetScaling(VISU::Scaling theScaling)
+{
+  ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_DeformedGridPL, int>
+                  (GetSpecificPL(), &VISU_DeformedGridPL::SetScaling, theScaling));
+}
+
+VISU::Scaling VISU::PointMap3d_i::GetScaling()
+{
+  return VISU::Scaling(GetSpecificPL()->GetScaling());
+}
+
+//------------------- Check Table on Positive Values ------------
+bool VISU::PointMap3d_i::IsPositiveTable()
+{
+  SALOMEDS::GenericAttribute_var anAttr;
+  mySObj->FindAttribute(anAttr, "AttributeTableOfReal");
+  SALOMEDS::AttributeTableOfReal_var aTableOfReal = SALOMEDS::AttributeTableOfReal::_narrow(anAttr);
+
+  for (int i=1; i<=aTableOfReal->GetNbColumns(); i++)
+    for (int j=1; j<=aTableOfReal->GetNbRows(); j++) {
+      double aVal = aTableOfReal->GetValue(j, i);
+      if (aVal < 0)
+       return false;
+    }
+
+  return true;
+}
+
+//------------------- Plot3dBase Methods ------------------------
+
+void VISU::PointMap3d_i::SetScaleFactor (CORBA::Double theScaleFactor)
+{
+  ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_DeformedGridPL, vtkFloatingPointType>
+                  (GetSpecificPL(), &VISU_DeformedGridPL::SetScaleFactor, theScaleFactor));
+}
+
+CORBA::Double VISU::PointMap3d_i::GetScaleFactor ()
+{
+  return myTablePL->GetScaleFactor();
+}
+
+void VISU::PointMap3d_i::SetContourPrs (CORBA::Boolean theIsContourPrs )
+{
+  ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_DeformedGridPL, bool>
+                  (GetSpecificPL(), &VISU_DeformedGridPL::SetContourPrs, theIsContourPrs));
+}
+
+CORBA::Boolean VISU::PointMap3d_i::GetIsContourPrs()
+{
+  return myTablePL->GetIsContourPrs();
+}
+
+void VISU::PointMap3d_i::SetNbOfContours (CORBA::Long theNb)
+{
+  ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_DeformedGridPL, int>
+                  (GetSpecificPL(), &VISU_DeformedGridPL::SetNumberOfContours, theNb));
+}
+
+CORBA::Long VISU::PointMap3d_i::GetNbOfContours ()
+{
+  return myTablePL->GetNumberOfContours();
+}
+
+//-------------------- Actor Factory Methods --------------------
+
+bool VISU::PointMap3d_i::GetActiveState ()
+{
+  return myIsActiveState;
+}
+
+void VISU::PointMap3d_i::SetActiveState ( bool theState )
+{
+  myIsActiveState = theState;
+}
+
+void VISU::PointMap3d_i::RemoveActor (VISU_ActorBase* theActor)
+{
+  myActorCollection->RemoveItem(theActor);
+}
+
+void VISU::PointMap3d_i::RemoveActors ()
+{
+  ProcessVoidEvent(new TInvokeSignalEvent(myRemoveActorsFromRendererSignal));
+  myActorCollection->RemoveAllItems();
+}
+
+
+//-----------------------Text Properties & Label Properties------------------
+bool VISU::PointMap3d_i::IsBoldTitle() 
+{ 
+  return myIsBoldTitle;
+}
+
+//----------------------------------------------------------------------------
+void VISU::PointMap3d_i::SetBoldTitle(bool theIsBoldTitle)
+{
+  if(myIsBoldTitle == theIsBoldTitle)
+    return;
+
+  myIsBoldTitle = theIsBoldTitle;
+  myParamsTime.Modified();
+}
+
+//----------------------------------------------------------------------------
+bool VISU::PointMap3d_i::IsItalicTitle() 
+{ 
+  return myIsItalicTitle;
+}
+
+//----------------------------------------------------------------------------
+void VISU::PointMap3d_i::SetItalicTitle(bool theIsItalicTitle)
+{ 
+  if(myIsItalicTitle == theIsItalicTitle)
+    return;
+
+  myIsItalicTitle = theIsItalicTitle;
+  myParamsTime.Modified();
+}
+
+//----------------------------------------------------------------------------
+bool VISU::PointMap3d_i::IsShadowTitle() 
+{ 
+  return myIsShadowTitle;
+}
+
+//----------------------------------------------------------------------------
+void VISU::PointMap3d_i::SetShadowTitle(bool theIsShadowTitle)
+{ 
+  if(myIsShadowTitle == theIsShadowTitle)
+    return;
+
+  myIsShadowTitle = theIsShadowTitle;
+  myParamsTime.Modified();
+}
+
+//----------------------------------------------------------------------------
+int VISU::PointMap3d_i::GetTitFontType()
+{
+  return myTitFontType;
+}
+
+//----------------------------------------------------------------------------
+void VISU::PointMap3d_i::SetTitFontType(int theTitFontType)
+{
+  if(myTitFontType == theTitFontType)
+    return;
+
+  myTitFontType = theTitFontType;
+  myParamsTime.Modified();
+}
+
+//----------------------------------------------------------------------------
+void VISU::PointMap3d_i::GetTitleColor(vtkFloatingPointType& theR, 
+                                        vtkFloatingPointType& theG, 
+                                        vtkFloatingPointType& theB)
+{
+  theR = myTitleColor[0]; 
+  theG = myTitleColor[1]; 
+  theB = myTitleColor[2];
+}
+
+//----------------------------------------------------------------------------
+void VISU::PointMap3d_i::SetTitleColor(vtkFloatingPointType theR, 
+                                        vtkFloatingPointType theG, 
+                                        vtkFloatingPointType theB)
+{
+  bool anIsSameValue = VISU::CheckIsSameValue(myTitleColor[0], theR);
+  anIsSameValue &= VISU::CheckIsSameValue(myTitleColor[1], theG);
+  anIsSameValue &= VISU::CheckIsSameValue(myTitleColor[2], theB);
+  if(anIsSameValue)
+    return;
+
+  myTitleColor[0] = theR; 
+  myTitleColor[1] = theG; 
+  myTitleColor[2] = theB; 
+  myParamsTime.Modified();
+}
+
+//----------------------------------------------------------------------------
+bool VISU::PointMap3d_i::IsBoldLabel()
+{
+  return myIsBoldLabel;
+}
+
+//----------------------------------------------------------------------------
+void VISU::PointMap3d_i::SetBoldLabel(bool theIsBoldLabel) 
+{
+  if(myIsBoldLabel == theIsBoldLabel)
+    return;
+
+  myIsBoldLabel = theIsBoldLabel;
+  myParamsTime.Modified();
+}
+
+//----------------------------------------------------------------------------
+bool VISU::PointMap3d_i::IsItalicLabel() 
+{
+  return myIsItalicLabel;
+}
+
+//----------------------------------------------------------------------------
+void VISU::PointMap3d_i::SetItalicLabel(bool theIsItalicLabel)
+{
+  if(myIsItalicLabel == theIsItalicLabel)
+    return;
+
+  myIsItalicLabel = theIsItalicLabel;
+  myParamsTime.Modified();
+}
+
+//----------------------------------------------------------------------------
+bool VISU::PointMap3d_i::IsShadowLabel() 
+{
+  return myIsShadowLabel;
+}
+
+//----------------------------------------------------------------------------
+void VISU::PointMap3d_i::SetShadowLabel(bool theIsShadowLabel)
+{
+  if(myIsShadowLabel == theIsShadowLabel)
+    return;
+
+  myIsShadowLabel = theIsShadowLabel;
+  myParamsTime.Modified();
+}
+
+//----------------------------------------------------------------------------
+int VISU::PointMap3d_i::GetLblFontType()
+{
+  return myLblFontType;
+}
+
+//----------------------------------------------------------------------------
+void VISU::PointMap3d_i::SetLblFontType(int theLblFontType)
+{
+  if(myLblFontType == theLblFontType)
+    return;
+
+  myLblFontType = theLblFontType;
+  myParamsTime.Modified();
+}
+
+//----------------------------------------------------------------------------
+void VISU::PointMap3d_i::GetLabelColor(vtkFloatingPointType& theR, 
+                                 vtkFloatingPointType& theG, 
+                                 vtkFloatingPointType& theB)
+{
+  theR = myLabelColor[0]; 
+  theG = myLabelColor[1]; 
+  theB = myLabelColor[2];
+}
+
+//----------------------------------------------------------------------------
+void VISU::PointMap3d_i::SetLabelColor(vtkFloatingPointType theR, 
+                                 vtkFloatingPointType theG, 
+                                 vtkFloatingPointType theB)
+{
+  bool anIsSameValue = VISU::CheckIsSameValue(myLabelColor[0], theR);
+  anIsSameValue &= VISU::CheckIsSameValue(myLabelColor[1], theG);
+  anIsSameValue &= VISU::CheckIsSameValue(myLabelColor[2], theB);
+  if(anIsSameValue)
+    return;
+
+  myLabelColor[0] = theR; 
+  myLabelColor[1] = theG; 
+  myLabelColor[2] = theB; 
+  myParamsTime.Modified();
+}
+
+//----------------------------------------------------------------------------
+CORBA::Long VISU::PointMap3d_i::GetTitleSize() 
+{
+  return myTitleSize;
+}
+
+//----------------------------------------------------------------------------
+CORBA::Long VISU::PointMap3d_i::GetLabelSize() 
+{
+  return myLabelSize;
+}
+
+//----------------------------------------------------------------------------
+CORBA::Long VISU::PointMap3d_i::GetBarWidth() 
+{
+  return myBarWidth;
+}
+
+//----------------------------------------------------------------------------
+CORBA::Long VISU::PointMap3d_i::GetBarHeight() 
+{ 
+  return myBarHeight;
+}
+
+//----------------------------------------------------------------------------
+void
+VISU::PointMap3d_i::SetLabelsFormat(const char* theFormat)
+{
+  if( myLabelsFormat != theFormat ){
+    myLabelsFormat = theFormat;
+    myParamsTime.Modified();
+  }
+}
+
+//----------------------------------------------------------------------------
+char* VISU::PointMap3d_i::GetLabelsFormat() 
+{ 
+  return CORBA::string_dup(myLabelsFormat.c_str());
+}
+
+//----------------------------------------------------------------------------
+void VISU::PointMap3d_i::SetUnitsVisible(CORBA::Boolean isVisible)
+{
+  if( myIsUnits != isVisible ){
+    myIsUnits = isVisible;
+    myParamsTime.Modified();
+  }
+}
+
+//----------------------------------------------------------------------------
+CORBA::Boolean VISU::PointMap3d_i::IsUnitsVisible()
+{
+  return myIsUnits;
+}
+
+//----------------------------------------------------------------------------
+void VISU::PointMap3d_i::SetRatios(CORBA::Long theTitleSize, 
+                             CORBA::Long theLabelSize, 
+                             CORBA::Long theBarWidth, CORBA::Long theBarHeight) 
+{
+  bool anIsSameValue = VISU::CheckIsSameValue(myTitleSize, theTitleSize);
+  anIsSameValue &= VISU::CheckIsSameValue(myLabelSize, theLabelSize);
+  anIsSameValue &= VISU::CheckIsSameValue(myBarWidth, theBarWidth);
+  anIsSameValue &= VISU::CheckIsSameValue(myBarHeight, theBarHeight);
+  if(anIsSameValue)
+    return;
+
+  myTitleSize = theTitleSize; 
+  myLabelSize = theLabelSize; 
+  myBarWidth = theBarWidth; 
+  myBarHeight = theBarHeight;
+  myParamsTime.Modified();
+}
diff --git a/src/VISU_I/VISU_PointMap3d_i.hh b/src/VISU_I/VISU_PointMap3d_i.hh
new file mode 100644 (file)
index 0000000..547191d
--- /dev/null
@@ -0,0 +1,269 @@
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  VISU OBJECT : interactive object for VISU entities implementation
+//  File   : VISU_PointMap3d_i.hh
+//  Author : 
+//  Module : VISU
+//
+#ifndef VISU_PointMap3d_i_HeaderFile
+#define VISU_PointMap3d_i_HeaderFile
+
+#include "VISU_PrsObject_i.hh"
+#include "SALOME_GenericObj_i.hh"
+
+#include "VISU_TableReader.hxx"
+#include "VISU_PointMap3dActor.h"
+#include "VISU_Table_i.hh"
+#include "VISU_ActorFactory.h"
+#include "VISU_DeformedGridPL.hxx"
+
+#include <vtkTimeStamp.h>
+#include <vtkSmartPointer.h>
+
+namespace VISU
+{
+
+  struct TActorFactory;
+
+  //==============================================================================
+  class VISU_I_EXPORT PointMap3d_i : public virtual POA_VISU::PointMap3d,
+                                    public virtual SALOME::GenericObj_i,
+                                    public virtual TActorFactory,
+                                    public virtual Table_i
+  {
+    static int myNbPresent;
+    PointMap3d_i( const PointMap3d_i& );
+  public:
+    PointMap3d_i( SALOMEDS::Study_ptr theStudy, const char* theObjectEntry);
+
+    virtual ~PointMap3d_i();
+    virtual VISU::VISUType GetType() { return VISU::TPOINTMAP3D;};
+
+    virtual void SetTitle( const char* theTitle );
+    virtual char* GetTitle();
+
+    virtual void RemoveFromStudy();
+    virtual void UpdateActor(VISU_ActorBase* thePointMap3dActor);
+    virtual void UpdateActors();
+
+    virtual void Update();
+
+    virtual Handle(SALOME_InteractiveObject) GetIO();
+
+    //----------- override Prs3d methods -----------------------------
+
+    //! Move the 3D presentation according to the given offset parameters
+    virtual void SetOffset(CORBA::Float theDx, CORBA::Float theDy, CORBA::Float theDz);
+
+    //! Gets offset parameters for the 3D presentation
+    virtual void GetOffset(CORBA::Float& theDx, CORBA::Float& theDy, CORBA::Float& theDz);
+
+    //! Gets memory size actually used by the presentation (Mb).
+    virtual CORBA::Float GetMemorySize();
+
+    //----------- override ColoredPrs3dBase methods ------------------
+
+    virtual CORBA::Double GetMin();
+    virtual CORBA::Double GetMax();
+    virtual CORBA::Double GetMinTableValue();
+    virtual CORBA::Double GetMaxTableValue();
+    virtual void SetRange(CORBA::Double theMin, CORBA::Double theMax);
+
+    virtual CORBA::Double GetSourceMin();
+    virtual CORBA::Double GetSourceMax();
+    virtual void SetSourceRange();
+
+    virtual CORBA::Boolean IsRangeFixed();
+
+    virtual void SetPosition(CORBA::Double X, CORBA::Double Y);
+    virtual CORBA::Double GetPosX();
+    virtual CORBA::Double GetPosY();
+
+    virtual void SetSize(CORBA::Double theWidth, CORBA::Double theHeight);
+
+    virtual void SetRatios(CORBA::Long theTitleSize, CORBA::Long theLabelSize, 
+                          CORBA::Long theBarWidth, CORBA::Long theBarHeight);
+
+    virtual CORBA::Double GetWidth();
+    virtual CORBA::Double GetHeight();
+
+    virtual void SetNbColors(CORBA::Long theNbColors);
+    virtual CORBA::Long GetNbColors();
+
+    virtual void SetLabels(CORBA::Long theNbLabels);
+    virtual CORBA::Long GetLabels();
+
+    virtual void  SetLabelsFormat(const char* theFormat);
+    virtual char* GetLabelsFormat();
+    
+    virtual void SetBarOrientation(VISU::ColoredPrs3dBase::Orientation theOrientation);
+    virtual VISU::ColoredPrs3dBase::Orientation GetBarOrientation();
+
+    void UseFixedRange(bool theUseFixedRange);
+
+    // ScaledMap Methods
+
+    virtual VISU::Scaling GetScaling();
+    virtual void SetScaling(VISU::Scaling theScaling);
+
+    bool IsPositiveTable();
+
+    // Plot3dBase methods
+
+    void SetScaleFactor (CORBA::Double theScaleFactor);
+    CORBA::Double GetScaleFactor();
+
+    void SetContourPrs (CORBA::Boolean theIsContourPrs );
+    CORBA::Boolean GetIsContourPrs();
+
+    void SetNbOfContours (CORBA::Long);
+    CORBA::Long GetNbOfContours();
+
+    VISU_DeformedGridPL* GetSpecificPL() const { return myTablePL; }
+
+    // TActorFactory Methods
+
+    //! Gets know whether the factory instance can be used for actor management or not
+    virtual bool GetActiveState();
+
+    virtual void SetActiveState(bool theState);
+
+    //! Return modified time of the factory
+    virtual unsigned long int GetMTime();
+
+    //! To unregister the actor
+    virtual void RemoveActor(VISU_ActorBase* theActor);
+    virtual void RemoveActors();
+
+    //------ Text Properties & Label Properties ------------------------
+
+    virtual bool IsBoldTitle();
+    virtual void SetBoldTitle(bool isBold);
+    virtual bool IsItalicTitle();
+    virtual void SetItalicTitle(bool isItalic);
+    virtual bool IsShadowTitle();
+    virtual void SetShadowTitle(bool isShadow);
+    virtual int  GetTitFontType();
+    virtual void SetTitFontType(int theType);
+    virtual void GetTitleColor(vtkFloatingPointType& theR, 
+                vtkFloatingPointType& theG, 
+                vtkFloatingPointType& theB);
+    virtual void SetTitleColor(vtkFloatingPointType theR, 
+                vtkFloatingPointType theG, 
+                vtkFloatingPointType theB);    
+
+    virtual bool IsBoldLabel();
+    virtual void SetBoldLabel(bool isBold);
+    virtual bool IsItalicLabel();
+    virtual void SetItalicLabel(bool isItalic);
+    virtual bool IsShadowLabel();
+    virtual void SetShadowLabel(bool isShadow);
+    virtual int  GetLblFontType();
+    virtual void SetLblFontType(int theType);
+    virtual void GetLabelColor(vtkFloatingPointType& theR, 
+                vtkFloatingPointType& theG, 
+                vtkFloatingPointType& theB);
+    virtual void SetLabelColor(vtkFloatingPointType theR, 
+                vtkFloatingPointType theG, 
+                vtkFloatingPointType theB);
+
+    //-------------------------------------------------------------------
+    virtual CORBA::Long GetTitleSize();
+    virtual CORBA::Long GetLabelSize();
+    virtual CORBA::Long GetBarWidth();
+    virtual CORBA::Long GetBarHeight();
+
+    virtual void SetUnitsVisible(CORBA::Boolean isVisible);
+    virtual CORBA::Boolean IsUnitsVisible();
+
+    //-------------------------------------------------------------------
+
+  protected:
+    Storable* Build(int theRestoring);
+
+    VISU::Table::Orientation myOrientation;
+    VISU::ColoredPrs3dBase::Orientation myBarOrientation;
+    std::string              myTitle;
+    std::string              myScalarBarTitle;
+    bool                     myIsUnits;
+    SALOMEDS::SObject_var    mySObj;
+    int                      myNumberOfLabels;
+    std::string              myLabelsFormat;
+    vtkFloatingPointType     myPosition[2],
+                             myWidth, myHeight,
+                             myTitleSize,
+                             myLabelSize, 
+                             myBarWidth, myBarHeight;
+    bool                     myIsFixedRange;
+    CORBA::Float             myOffset[3];
+    bool                     myIsActiveState;
+    vtkTimeStamp             myParamsTime;
+    vtkTimeStamp             myUpdateTime;
+
+    Handle(SALOME_InteractiveObject) myIO;
+
+
+    //Font management
+    bool myIsBoldTitle;
+    bool myIsItalicTitle;
+    bool myIsShadowTitle;
+    int  myTitFontType;
+    vtkFloatingPointType myTitleColor[3];
+
+    bool myIsBoldLabel;
+    bool myIsItalicLabel;
+    bool myIsShadowLabel;
+    int  myLblFontType;
+    vtkFloatingPointType myLabelColor[3];
+
+    boost::signal0<void> myUpdateActorsSignal;
+    boost::signal0<void> myRemoveActorsFromRendererSignal;
+    vtkSmartPointer<vtkActorCollection> myActorCollection;
+
+  public:
+    //    virtual Storable* Create( const VISU::PTableIDMapper& theTableIDMapper );
+    virtual Storable*       Create();
+    VISU_PointMap3dActor*   CreateActor();
+    VISU::PTableIDMapper    GetTableIDMapper();
+
+    SALOMEDS::SObject_var GetSObject() const;
+    VISU_DeformedGridPL*  myTablePL;
+
+    virtual Storable* Restore( const Storable::TRestoringMap& theMap,
+                              SALOMEDS::SObject_ptr SO);
+
+    static Storable* StorableEngine(SALOMEDS::SObject_ptr theSObject,
+                                   const Storable::TRestoringMap& theMap,
+                                   const std::string& thePrefix,
+                                   CORBA::Boolean theIsMultiFile);
+
+    virtual void ToStream( std::ostringstream& theStr );
+    static const std::string myComment;
+    virtual const char* GetComment() const;
+    virtual QString GenerateName();
+    virtual QString GetTableTitle();
+
+    virtual std::string GetObjectEntry();
+  };
+}
+
+#endif
index f99e7843bacf8782f321a4d365de05e71d0bd263..35685d9fe12589c69518e1eaee8ec9aa6d1d5bbc 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_Prs3dUtils.cc
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_Prs3dUtils.hh"
 #include "SalomeApp_Study.h"
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 
 
 namespace VISU
@@ -70,6 +70,59 @@ namespace VISU
     ProcessVoidEvent(new TEvent(this));
   }
 
+  //----------------------------------------------------------------------------
+
+  std::string ToFormat( const int thePrec )
+  {
+    // "%-#6.3g"
+    char str[ 255 ];
+    sprintf( str, "%%-#.%dg", thePrec );
+    return str;
+  }
 
   //----------------------------------------------------------------------------
+
+  int ToPrecision( const char* theFormat )
+  {
+    int N = strlen( theFormat );
+    int k = -1;
+    char str[ 255 ];
+    bool isOk = false;
+    for ( int i = 0; i < N; i++ )
+    {
+      if ( theFormat[ i ] ==  '.' )
+        k = 0;
+      else if ( theFormat[ i ] == 'g' )
+      {
+        str[ k ] = 0;
+        isOk = true;
+        break;
+      }
+      else if ( k >= 0 )
+        str[ k++ ] = theFormat[ i ];
+    }
+
+    int res = 0;
+    if ( isOk )
+      res = atoi( str );
+
+    return res;
+  }
 };
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
index 2f4bf8b9b5f6b9c7e520f2d27358a7d91d369dda..7cf7fd20237672f195cb66425ae855812a6274dd 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_Prs3dUtils.hh
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef __VISU_PRS3D_UTILS_H__
 #define __VISU_PRS3D_UTILS_H__
 
@@ -31,7 +31,6 @@
 
 #include <vtkTimeStamp.h>
 
-
 namespace VISU
 {
   //----------------------------------------------------------------------------
@@ -44,6 +43,9 @@ namespace VISU
     ~TSetModified();
   };
 
+  Standard_EXPORT std::string  ToFormat( const int thePrec );
+  Standard_EXPORT int ToPrecision( const char* theFormat );
+
 
   //----------------------------------------------------------------------------
 }
index 466e104e164822cf97aca273b7e4ef2658e2da9f..3ec20db4328e6cf4dab98590b1cd9df54c54ab9c 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_Prs3d_i.cc
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_Prs3d_i.hh"
 #include "VISU_Prs3dUtils.hh"
 #include "VISU_PipeLine.hxx"
@@ -31,7 +31,7 @@
 #include "VISU_Result_i.hh"
 #include "VISU_Actor.h"
 
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 
 #include <vtkActorCollection.h>
 #include <vtkUnstructuredGrid.h>
@@ -41,7 +41,7 @@
 #include <boost/bind.hpp>
 
 #ifdef _DEBUG_
-static int MYDEBUG = 0;
+static int MYDEBUG = 1;
 #else
 static int MYDEBUG = 0;
 #endif
@@ -99,6 +99,7 @@ VISU::Prs3d_i::~Prs3d_i()
 {
   if(MYDEBUG) MESSAGE("Prs3d_i::~Prs3d_i - this = "<<this);
   ProcessVoidEvent(new TInvokeSignalEvent(myRemoveActorsFromRendererSignal));
+  if(myResult) myResult->Destroy();
 }
 
 
@@ -157,8 +158,13 @@ VISU::Prs3d_i
   if(GetCResult() == theResult)
     return;
 
-  if(theResult)
+  if(theResult) {
     SetStudyDocument(theResult->GetStudyDocument());
+    theResult->Register();
+  }
+  if(myResult) {
+    myResult->Destroy();
+  }
   
   VISU::TSetModified aModified(this);
   
@@ -297,12 +303,12 @@ VISU::Prs3d_i
       aResultEntry = anEntry.in();
     }
   }
-  SetResultEntry(aResultEntry.latin1());
+  SetResultEntry(aResultEntry.toLatin1().data());
   if(!GetCResult())
     return NULL;
 
-  SetMeshName(VISU::Storable::FindValue(theMap,"myMeshName").latin1());
-  SetName(VISU::Storable::FindValue(theMap,"myName").latin1(), false);
+  SetMeshName((const char*)VISU::Storable::FindValue(theMap,"myMeshName").toLatin1());
+  SetName((const char*)VISU::Storable::FindValue(theMap,"myName").toLatin1(), false);
   myOffset[0] = VISU::Storable::FindValue(theMap,"myOffset[0]").toFloat();
   myOffset[1] = VISU::Storable::FindValue(theMap,"myOffset[1]").toFloat();
   myOffset[2] = VISU::Storable::FindValue(theMap,"myOffset[2]").toFloat();
@@ -315,8 +321,8 @@ void
 VISU::Prs3d_i
 ::ToStream(std::ostringstream& theStr)
 {
-  Storable::DataToStream( theStr, "myResultEntry", GetResultEntry() );
-  Storable::DataToStream( theStr, "myMeshName", GetCMeshName() );
+  Storable::DataToStream( theStr, "myResultEntry", GetResultEntry().c_str() );
+  Storable::DataToStream( theStr, "myMeshName", GetCMeshName().c_str() );
   Storable::DataToStream( theStr, "myName", GetName().c_str() );
   Storable::DataToStream( theStr, "myOffset[0]", myOffset[0] );
   Storable::DataToStream( theStr, "myOffset[1]", myOffset[1] );
@@ -388,13 +394,13 @@ VISU::Prs3d_i
   struct TEvent: public TInvokeSignalEvent
   {
     VISU::Prs3d_i* myRemovable;
-
+  
     TEvent(const TSignal& theSignal,
           VISU::Prs3d_i* theRemovable):
       TInvokeSignalEvent(theSignal),
       myRemovable(theRemovable)
     {}
-
+  
     virtual
     void
     Execute()
@@ -497,8 +503,7 @@ VISU::Prs3d_i
     }
 
     theActor->SetFactory(this);
-    myUpdateActorsSignal.connect(boost::bind(&VISU_Actor::UpdateFromFactory,theActor));
-    myRemoveActorsFromRendererSignal.connect(boost::bind(&VISU_Actor::RemoveFromRender,theActor));
+    theActor->ConnectToFactory(myUpdateActorsSignal, myRemoveActorsFromRendererSignal);
 
     myActorCollection->AddItem(theActor);
     theActor->Delete();
@@ -515,7 +520,7 @@ VISU::Prs3d_i
 //----------------------------------------------------------------------------
 void
 VISU::Prs3d_i
-::RemoveActor(VISU_Actor* theActor)
+::RemoveActor(VISU_ActorBase* theActor)
 {
   if(MYDEBUG) MESSAGE("Prs3d_i::RemoveActor - this = "<<this<<"; theActor = "<<theActor<<"; "<<theActor->GetReferenceCount());
   myActorCollection->RemoveItem(theActor);
@@ -534,11 +539,13 @@ VISU::Prs3d_i
 //----------------------------------------------------------------------------
 void
 VISU::Prs3d_i
-::UpdateActor(VISU_Actor* theActor)
+::UpdateActor(VISU_ActorBase* theActor)
 {
-  if(MYDEBUG) MESSAGE("Prs3d_i::UpdateActor - this = "<<this<<"; theActor = "<<theActor);
-  theActor->SetPosition(myOffset[0],myOffset[1],myOffset[2]);
-  theActor->ShallowCopyPL(GetPipeLine());
+  if(VISU_Actor* anActor = dynamic_cast<VISU_Actor*>(theActor)){
+    if(MYDEBUG) MESSAGE("Prs3d_i::UpdateActor - this = "<<this<<"; theActor = "<<anActor);
+    anActor->SetPosition(myOffset[0],myOffset[1],myOffset[2]);
+    anActor->ShallowCopyPL(GetPipeLine());
+  }
 }
 
 void
@@ -585,6 +592,12 @@ GetClippingPlane(vtkIdType theID) const
   return GetPipeLine()->GetClippingPlane(theID);
 }
 
+//----------------------------------------------------------------------------
+void VISU::Prs3d_i::RemoveClippingPlane(vtkIdType theID)
+{
+  GetPipeLine()->RemoveClippingPlane(theID);
+}
+
 //----------------------------------------------------------------------------
 void
 VISU::Prs3d_i
index 92df8102554c8d7ceeab6d1e4073634a503e3e38..d720ccf3b32164c471b3a114d1d56e8b9891f1ff 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_PrsObject_i.hxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_Prs3d_i_HeaderFile
 #define VISU_Prs3d_i_HeaderFile
 
@@ -42,6 +42,7 @@
 #include <vtkTimeStamp.h>
 
 class VISU_PipeLine;
+class VISU_ActorBase;
 class VISU_Actor;
 
 class vtkPlane;
@@ -191,7 +192,7 @@ namespace VISU
     //! To unregister the pointed actor
     virtual 
     void
-    RemoveActor(VISU_Actor* theActor);
+    RemoveActor(VISU_ActorBase* theActor);
 
     //! To unregister all actors of the instance
     virtual 
@@ -201,7 +202,7 @@ namespace VISU
     //! To update the pointed actor
     virtual 
     void
-    UpdateActor(VISU_Actor* theActor);
+    UpdateActor(VISU_ActorBase* theActor);
 
     //! To update all actors of the instance
     virtual 
@@ -222,6 +223,8 @@ namespace VISU
     vtkPlane* 
     GetClippingPlane(vtkIdType theID) const;
 
+    void RemoveClippingPlane(vtkIdType theID);
+
     void
     SetPlaneParam(vtkFloatingPointType theDir[3], 
                  vtkFloatingPointType theDist, 
index b6ab264c9c54cb23f7b0dc44a290db18743717d1..1893a1b689445f0a388ba08742a81be9dbbd484e 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_PrsObject_i.cxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_PrsObject_i.hh"
 
 #ifdef _DEBUG_
index 08e95ef88c44db04086e7027d1ecc05217fe6db3..3827f496abac1bccd65b7f960b940ae5fa393062 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_PrsObject_i.hxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_PrsObject_i_HeaderFile
 #define VISU_PrsObject_i_HeaderFile
 
index 8caa8bf8296027284d9235a87ced3f7de8f72c3b..b117cc9c91f661efa52f4a0c35dae98d6a43bb75 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_ResultUtils.cc
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_ResultUtils.hh"
 
 #include "SUIT_Session.h"
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 #include "SalomeApp_Study.h"
 #include "SalomeApp_Application.h"
 
 #include "VISU_Convertor.hxx"
 #include "VISU_ConvertorUtils.hxx"
 
-#include <qfileinfo.h>
-#include <qfile.h>
-#include <qdir.h>
+#include <QFileInfo>
+#include <QFile>
+#include <QDir>
 
 #include <boost/thread/recursive_mutex.hpp>
 #include <boost/thread/thread.hpp>
@@ -48,6 +48,8 @@ static int MYTIMEDEBUG = 0;
 static int MYTIMEDEBUG = 0;
 #endif
 
+using namespace std;
+
 namespace VISU
 {
   //----------------------------------------------------------------------------
@@ -107,9 +109,10 @@ namespace VISU
   {
     TLock aLock(myMutex);
     SUIT_Session* aSession = SUIT_Session::session();
-    QPtrList<SUIT_Application> anApplications = aSession->applications();
-    QPtrListIterator<SUIT_Application> anIter (anApplications);
-    while (SUIT_Application* aSApp = anIter.current()) {
+    QList<SUIT_Application*> anApplications = aSession->applications();
+    QListIterator<SUIT_Application*> anIter (anApplications);
+    while (anIter.hasNext()) {
+      SUIT_Application* aSApp = anIter.next();
       if(SalomeApp_Application* anApp = dynamic_cast<SalomeApp_Application*>(aSApp)){
        if (SalomeApp_Study* aStudy = dynamic_cast<SalomeApp_Study*>(anApp->activeStudy())) {
          if (_PTR(Study) aCStudy = aStudy->studyDS()) {
@@ -122,7 +125,6 @@ namespace VISU
          }
        }
       }
-      ++anIter;
     }
   }
 
@@ -140,7 +142,7 @@ namespace VISU
     QString aResult;
     if (anIter == aMap.end()) {
       aMap[theName] = 0;
-      aResult = theName;
+      aResult = theName.c_str();
     } else {
       aResult = GenerateName(theName,++aMap[theName]);
     }
@@ -190,8 +192,8 @@ namespace VISU
       aName = QString("%1, -").arg(theName.c_str());
     else
       aName = QString("%1, %2").arg(theName.c_str()).arg(theUnits.c_str());
-    aName = aName.simplifyWhiteSpace();
-    return aName.latin1();
+    aName = aName.simplified();
+    return aName;
   }
 
 
@@ -263,7 +265,7 @@ namespace VISU
                         NO_IOR,
                         aMeshName,
                         NO_PERFSITENT_REF,
-                        aComment.latin1(),
+                        aComment.toLatin1().data(),
                         true);
     
       aComment = QString("myComment=FAMILIES;myMeshName=%1").arg(aMeshName.c_str());
@@ -274,7 +276,7 @@ namespace VISU
                         NO_IOR,
                         "Families",
                         NO_PERFSITENT_REF,
-                        aComment.latin1(),
+                        aComment.toLatin1().data(),
                         true);
 
       if(theIsBuildGroups){
@@ -348,7 +350,7 @@ namespace VISU
                           NO_IOR,
                           anEntityName.c_str(),
                           NO_PERFSITENT_REF,
-                          aComment.latin1(), 
+                          aComment.toLatin1().data(), 
                           true);
       }
     }
@@ -410,7 +412,7 @@ namespace VISU
                             NO_IOR,
                             aFamilyName,
                             NO_PERFSITENT_REF,
-                            aComment.latin1(),
+                            aComment.toLatin1().data(),
                             true);
        }
       }
@@ -425,7 +427,7 @@ namespace VISU
                         NO_IOR,
                         "Groups",
                         NO_PERFSITENT_REF,
-                        aComment.latin1(),
+                        aComment.toLatin1().data(),
                         false);
 
        TGroupMap::const_iterator aGroupMapIter = aGroupMap.begin();
@@ -440,7 +442,7 @@ namespace VISU
                             NO_IOR,
                             aGroupName,
                             NO_PERFSITENT_REF,
-                            aComment.latin1(),
+                            aComment.toLatin1().data(),
                             true);
          const TFamilySet& aFamilySet = aGroup->myFamilySet;
          TFamilySet::const_iterator aFamilyIter = aFamilySet.begin();
@@ -511,7 +513,7 @@ namespace VISU
          {
            aComment = "";
            aComment.append("myComment=FIELDS;");
-           aComment.append("myMeshName=");aComment.append(aMeshName);
+           aComment.append("myMeshName=");aComment.append(aMeshName.c_str());
 
            CreateAttributes(theStudy,
                             aMesh->myFieldsEntry,
@@ -519,7 +521,7 @@ namespace VISU
                             NO_IOR,
                             "Fields",
                             NO_PERFSITENT_REF,
-                            aComment.latin1(),
+                            aComment.toLatin1().data(),
                             false);
 
            anIsFieldsEntryUpdated = true;
@@ -540,9 +542,9 @@ namespace VISU
                                             aMesh->myFieldsEntry,
                                             NO_ICON,
                                             NO_IOR,
-                                            aFieldNameWithUnit.latin1(),
+                                            aFieldNameWithUnit.toLatin1().data(),
                                             NO_PERFSITENT_REF,
-                                            aComment.latin1(),
+                                            aComment.toLatin1().data(),
                                             true);
 
          CreateReference(theStudy,
@@ -570,7 +572,7 @@ namespace VISU
                                                    NO_IOR,
                                                    aTimeStampId,
                                                    NO_PERFSITENT_REF,
-                                                   aComment.latin1(),
+                                                   aComment.toLatin1().data(),
                                                    true);
          }
        }
@@ -634,11 +636,11 @@ namespace VISU
   RemoveFile(const std::string& theFileName,
             bool theRemoveEmptyDir)
   {
-    QFileInfo aFileInfo(theFileName);
-    QFile(aFileInfo.absFilePath()).remove();
+    QFileInfo aFileInfo(theFileName.c_str());
+    QFile(aFileInfo.absoluteFilePath()).remove();
     
     if(theRemoveEmptyDir)
-      QDir().rmdir(aFileInfo.dirPath(TRUE));
+      QDir().rmdir(aFileInfo.absolutePath());
 
     return aFileInfo.exists();
   }
@@ -649,18 +651,18 @@ namespace VISU
   CopyFile(const std::string& theSourceFileName,
           const std::string& theTargetFileName)
   {
-    QFileInfo aSourceFileInfo(theSourceFileName);
-    QFileInfo aTargetFileInfo(theTargetFileName);
-    if(aSourceFileInfo.absFilePath() == aTargetFileInfo.absFilePath())
+    QFileInfo aSourceFileInfo(theSourceFileName.c_str());
+    QFileInfo aTargetFileInfo(theTargetFileName.c_str());
+    if(aSourceFileInfo.absoluteFilePath() == aTargetFileInfo.absoluteFilePath())
       return true;
 
     QString aCommand;
     aCommand.sprintf("%s %s %s",
                     COPY_COMMAND,
-                    aSourceFileInfo.filePath().latin1(),
-                    aTargetFileInfo.filePath().latin1());
+                    aSourceFileInfo.filePath().toLatin1().data(),
+                    aTargetFileInfo.filePath().toLatin1().data());
 
-    return system(aCommand.latin1()) == 0;
+    return system(aCommand.toLatin1().data()) == 0;
   }
 
 
index 357dfd498b4e5d97c9be6d358078b0175f0c29bf..639e22a0e203765ed6ce195363e4c04d734882f1 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_ResultUtils.hh
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef __VISU_RESULT_UTILS_H__
 #define __VISU_RESULT_UTILS_H__
 
 #include "VISU_Result_i.hh"
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 
 #include <set>
 
index 7cc7f6394c2678607b09a738732b9a2e1443980a..a70b0027925058113c055e005e00998538b9f188 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_Result_i.cc
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_MultiResult_i.hh"
 #include "VISU_ResultUtils.hh"
 #include "VISU_Prs3d_i.hh"
 #include "HDFascii.hxx"
 
 #include "SUIT_Session.h"
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 #include "SalomeApp_Study.h"
 #include "SalomeApp_Application.h"
 
+#include "MED_Factory.hxx"
+
 #include <boost/thread/thread.hpp>
 #include <boost/bind.hpp>
 
 // QT Includes
-#include <qstring.h>
-#include <qfileinfo.h>
-#include <qsemaphore.h>
-#include <qthread.h>
-#include <qdir.h>
+#include <QString>
+#include <QFileInfo>
+#include <QSemaphore>
+#include <QThread>
+#include <QDir>
+#include <QList>
 
 // VTK Includes
 #include <vtkCell.h>
 #include <Bnd_Box.hxx>
 
 #ifdef _DEBUG_
-static int MYDEBUG = 0;
+static int MYDEBUG = 1;
 #else
 static int MYDEBUG = 0;
 #endif
 
+using namespace std;
 
 namespace VISU
 {
@@ -161,6 +165,7 @@ VISU::Result_i
   myIsBuildParts(false),
   myIsPartsDone(false)
 {
+  if(MYDEBUG) MESSAGE("Result_i::Result_i - this = "<<this);
   myStudy = VISU::GetStudy(myStudyDocument);
 }
 
@@ -175,7 +180,9 @@ VISU::Result_i
   myIsAllDone(false),
   myIsBuildParts(false),
   myIsPartsDone(false)
-{}
+{
+  if(MYDEBUG) MESSAGE("Result_i::Result_i - this = "<<this);
+}
 
 
 //---------------------------------------------------------------
@@ -184,7 +191,7 @@ VISU::Result_i
 {
   MESSAGE("Result_i::~Result_i() - this = "<<this);
   if (GetSourceId() == eRestoredFile) 
-    VISU::RemoveFile(myFileInfo.filePath().latin1());
+    VISU::RemoveFile(myFileInfo.filePath().toLatin1().data());
 }
 
 
@@ -408,7 +415,7 @@ VISU::Storable* VISU::Result_i::Build(SALOMEDS::SObject_ptr theSObject,
   QString aComment;
   aComment.sprintf("myComment=%s;myFileName=%s;myInitFileName=%s",
                   GetComment(),
-                  myFileInfo.filePath().latin1(),
+                  myFileInfo.filePath().toLatin1().data(),
                   GetInitFileName().c_str()); // Restoring of Python dump
   std::string aResultEntry = 
     CreateAttributes(myStudy,
@@ -417,7 +424,7 @@ VISU::Storable* VISU::Result_i::Build(SALOMEDS::SObject_ptr theSObject,
                     anIOR.in(),
                     GetName(),
                     NO_PERFSITENT_REF,
-                    aComment.latin1(),
+                    aComment.toLatin1().data(),
                     true);
   mySObject = myStudyDocument->FindObjectID(aResultEntry.c_str());
   if(!CORBA::is_nil(theSObject)){
@@ -523,25 +530,25 @@ VISU::Result_i
 {      
   try {
     myFileInfo.setFile(theFileName);
-    myFileName = myFileInfo.fileName().latin1();
+    myFileName = myFileInfo.fileName().toLatin1().data();
 
     if(!myIsBuildParts){
-      SetInitFileName(myFileInfo.filePath().latin1());
-      SetName(VISU::GenerateName(myFileInfo.fileName()).latin1(), false);
+      SetInitFileName(myFileInfo.filePath().toLatin1().data());
+      SetName(VISU::GenerateName(myFileInfo.fileName().toLatin1().data()).toLatin1().data(), false);
     }
 
     if(mySourceId == eRestoredFile){
       QString aTmpDir(SALOMEDS_Tool::GetTmpDir().c_str());
-      std::string aFileName = VISU::MakeFileName(myFileInfo.fileName().latin1(), this);
+      std::string aFileName = VISU::MakeFileName(myFileInfo.fileName().toLatin1().data(), this);
       QString aPathToCopy(aTmpDir + aFileName.c_str());
-      if(!VISU::CopyFile(myFileInfo.absFilePath().latin1(), aPathToCopy.latin1()))
+      if(!VISU::CopyFile(myFileInfo.absoluteFilePath().toLatin1().data(), aPathToCopy.toLatin1().data()))
        return NULL;
 
       myFileInfo.setFile(aPathToCopy);
-      myFileName = myFileInfo.fileName().latin1();
+      myFileName = myFileInfo.fileName().toLatin1().data();
     }
 
-    myInput.reset(CreateConvertor(myFileInfo.absFilePath().latin1()));
+    myInput.reset(CreateConvertor(myFileInfo.absoluteFilePath().toLatin1().data()));
 
     if(myInput){
       if(myIsBuildImmediately)
@@ -572,10 +579,10 @@ VISU::Result_i
 
     string aCompDataType = GetComponentDataType(theMedSObject);
     myFileInfo.setFile(aCompDataType.c_str());
-    myFileName = VISU::GenerateName("aResult").latin1();
+    myFileName = VISU::GenerateName("aResult").toLatin1().data();
 
     SetInitFileName(aCompDataType);
-    SetName(VISU::GenerateName(myFileInfo.fileName()).latin1(), false);
+    SetName(VISU::GenerateName(myFileInfo.fileName().toLatin1().data()).toLatin1().data(), false);
 
     return Build(theMedSObject);
   }catch(std::exception& exc){
@@ -603,9 +610,9 @@ VISU::Result_i
     string aCompDataType = "MED";
     myFileInfo.setFile(aCompDataType.c_str());
 
-    myFileName = VISU::GenerateName("aResult").latin1();
+    myFileName = VISU::GenerateName("aResult").toLatin1().data();
     SetInitFileName(aCompDataType);
-    SetName(VISU::GenerateName(myFileInfo.fileName()).latin1(), false);
+    SetName(VISU::GenerateName(myFileInfo.fileName().toLatin1().data()).toLatin1().data(), false);
 
     CORBA::String_var anIOR = myStudyDocument->ConvertObjectToIOR(theField);
     SALOMEDS::SObject_var aFieldSObject = myStudyDocument->FindObjectIOR(anIOR);
@@ -642,10 +649,10 @@ VISU::Result_i
       aPrefix = SALOMEDS_Tool::GetNameFromPath(anURL.in());
     }
 
-    std::string aFileName = aPrefix + "_" + GetFileName();
+    std::string aFileName = aPrefix + "_" + GetFileName().c_str();
     BEGMSG(MYDEBUG, "aFileName = '"<<aFileName<<"'\n");
 
-    std::string aFile = GetFileInfo().filePath().latin1();
+    std::string aFile = GetFileInfo().filePath().toLatin1().data();
     BEGMSG(MYDEBUG, "aFile = '"<<aFile<<"'\n");
 
     if(theIsMultiFile || theIsASCII){
@@ -698,16 +705,16 @@ VISU::Result_i
   SALOMEDS::Study_var aStudy = theObject->GetStudy();
   CORBA::String_var anURL = aStudy->URL();
   std::string aPrefix = SALOMEDS_Tool::GetNameFromPath(anURL.in());
-  std::string aFileName = aPrefix + GetFileInfo().fileName().latin1();
+  std::string aFileName = aPrefix + GetFileInfo().fileName().toLatin1().data();
 
   static QString aCommand;
   std::string aFilePath =  theTmpDir + aFileName;
-  aCommand.sprintf(" %s %s", GetFileInfo().filePath().latin1(), aFilePath.c_str());
+  aCommand.sprintf(" %s %s", GetFileInfo().filePath().toLatin1().data(), aFilePath.c_str());
   aCommand = QDir::convertSeparators( aCommand );
   aCommand.prepend( COPY_COMMAND );
 
-  if(system(aCommand.latin1()) != 0) {
-    if(MYDEBUG) MESSAGE("VISU_Gen_i::Copy - Cann't execute the command :"<<aCommand);
+  if(system(aCommand.toLatin1().data()) != 0) {
+    if(MYDEBUG) MESSAGE("VISU_Gen_i::Copy - Cann't execute the command :"<<aCommand.toLatin1().data());
     return false;
   }
 
@@ -745,8 +752,8 @@ VISU::Result_i
   myIsBuildImmediately = true;
 
   try {
-    myFileName = VISU::Storable::FindValue(theMap, "myName").latin1();
-    SetInitFileName(VISU::Storable::FindValue(theMap, "myInitFileName").latin1());
+    myFileName = VISU::Storable::FindValue(theMap, "myName").toLatin1().data();
+    SetInitFileName(VISU::Storable::FindValue(theMap, "myInitFileName").toLatin1().data());
     
     SALOMEDS::SObject_var aRefSObj, aTargetRefSObj;
     if (theSObject->FindSubObject(1, aRefSObj) && aRefSObj->ReferencedObject(aTargetRefSObj)) {
@@ -791,40 +798,39 @@ VISU::Result_i
        myFileInfo.setFile(aFileName.c_str());
       }
       if(MYDEBUG)
-       MESSAGE("Result_i::Restore - aFileName = " << myFileInfo.filePath() << "; " << myFileInfo.isFile());
+       MESSAGE("Result_i::Restore - aFileName = " << myFileInfo.filePath().toLatin1().data() << "; " << myFileInfo.isFile());
       
-      const char* aPathLatin = myFileInfo.filePath().latin1();
-      if (HDFascii::isASCII(aPathLatin)) {
-       MESSAGE("ConvertFromASCIIToHDF(" << aPathLatin << ")");
-       char* aResultPath = HDFascii::ConvertFromASCIIToHDF(aPathLatin);
+      if (HDFascii::isASCII(myFileInfo.filePath().toLatin1().data())) {
+       MESSAGE("ConvertFromASCIIToHDF(" << myFileInfo.filePath().toLatin1().data() << ")");
+       char* aResultPath = HDFascii::ConvertFromASCIIToHDF(myFileInfo.filePath().toLatin1().data());
        MESSAGE("ConvertFromASCIIToHDF() DONE : " << aResultPath);
        char* aHDFFileName = new char[strlen(aResultPath) + 19];
        sprintf(aHDFFileName, "%shdf_from_ascii.hdf", aResultPath);
        
        if (theIsMultiFile) { // set this file as new - temporary
          static QString aCommand;
-         aCommand.sprintf(" %s %s%s",aHDFFileName, aResultPath, myFileInfo.baseName().latin1());
+         aCommand.sprintf(" %s %s%s",aHDFFileName, aResultPath, myFileInfo.baseName().toLatin1().data());
          aCommand = QDir::convertSeparators( aCommand );
          aCommand.prepend( MOVE_COMMAND );
          
-         if (system(aCommand.latin1()) == -1) {
-           if(MYDEBUG) MESSAGE("VISU::Result_i::Restore - Can't execute the command :" << aCommand);
+         if (system(aCommand.toLatin1().data()) == -1) {
+           if(MYDEBUG) MESSAGE("VISU::Result_i::Restore - Can't execute the command :" << aCommand.toLatin1().data());
            return NULL;
          } else {
-           if(MYDEBUG) MESSAGE("VISU::Result_i::Restore - " << aCommand);
+           if(MYDEBUG) MESSAGE("VISU::Result_i::Restore - " << aCommand.toLatin1().data());
          }
-         myFileInfo.setFile(QString(aResultPath) + QString(myFileInfo.baseName().latin1()));
+         myFileInfo.setFile(QString(aResultPath) + myFileInfo.baseName());
        } else { // change current temporary file to the new: with hdf-format
          static QString aCommand;
-         aCommand.sprintf(" %s %s\0",aHDFFileName, myFileInfo.filePath().latin1());
+         aCommand.sprintf(" %s %s\0",aHDFFileName, myFileInfo.filePath().toLatin1().data());
          aCommand = QDir::convertSeparators( aCommand );
          aCommand.prepend( MOVE_COMMAND );
          
-         if (system(aCommand.latin1()) == -1) {
-           if(MYDEBUG) MESSAGE("VISU::Result_i::Restore - Can't execute the command :" << aCommand);
+         if (system(aCommand.toLatin1().data()) == -1) {
+           if(MYDEBUG) MESSAGE("VISU::Result_i::Restore - Can't execute the command :" << aCommand.toLatin1().data());
            return NULL;
          } else {
-           if(MYDEBUG) MESSAGE("VISU::Result_i::Restore - " << aCommand);
+           if(MYDEBUG) MESSAGE("VISU::Result_i::Restore - " << aCommand.toLatin1().data());
          }
          SALOMEDS::ListOfFileNames_var anEmptyList = new SALOMEDS::ListOfFileNames;
          SALOMEDS_Tool::RemoveTemporaryFiles(aResultPath, anEmptyList.in(), true);
@@ -838,7 +844,7 @@ VISU::Result_i
        mySourceId = eSavedFile;
       }
       if(MYDEBUG) MESSAGE("VISU::Result_i::Restore - mySourceId = " << mySourceId);
-      myInput.reset(CreateConvertor(myFileInfo.filePath().latin1()));
+      myInput.reset(CreateConvertor(myFileInfo.filePath().toLatin1().data()));
 
       myInput->BuildEntities();
       if(myIsBuildFields){
@@ -857,13 +863,13 @@ VISU::Result_i
       QString aComment;
       aComment.sprintf("myComment=%s;myFileName=%s;myInitFileName=%s",
                       GetComment(), 
-                      myFileInfo.filePath().latin1(),
+                      myFileInfo.filePath().toLatin1().data(),
                       GetInitFileName().c_str()); // Restoring of Python dump
       SALOMEDS::GenericAttribute_var anAttr;
       if (!theSObject->FindAttribute(anAttr, "AttributeString"))
        throw std::runtime_error("Build - There is no AttributeString for the SObject !!!");
       SALOMEDS::AttributeString_var aCmnt = SALOMEDS::AttributeString::_narrow(anAttr);
-      aCmnt->SetValue(aComment.latin1());
+      aCmnt->SetValue(aComment.toLatin1().data());
     }
     bool anIsBuildAll = VISU::GetResourceMgr()->booleanValue("VISU", "full_med_loading", false);
     if(anIsBuildAll)
@@ -999,7 +1005,7 @@ VISU::Result_i
 
   {
     anEntities->length(aMeshOnEntityMap.size());
-    VISU::TMeshOnEntityMap::const_iterator anIter = aMeshOnEntityMap.end();
+    VISU::TMeshOnEntityMap::const_iterator anIter = aMeshOnEntityMap.begin();
     for(size_t anId = 0; anIter != aMeshOnEntityMap.end(); anIter++, anId++){
       const VISU::TEntity& anEntity = anIter->first;
       anEntities[anId] = VISU::Entity(anEntity);
@@ -1043,7 +1049,7 @@ VISU::Result_i
     
     {
       aResult->length(aFamilyMap.size());
-      VISU::TFamilyMap::const_iterator anIter = aFamilyMap.end();
+      VISU::TFamilyMap::const_iterator anIter = aFamilyMap.begin();
       for(size_t anId = 0; anIter != aFamilyMap.end(); anIter++, anId++){
        const std::string& aName = anIter->first;
        aResult[anId] = aName.c_str();
@@ -1076,7 +1082,7 @@ VISU::Result_i
 
   {
     aResult->length(aGroupMap.size());
-    VISU::TGroupMap::const_iterator anIter = aGroupMap.end();
+    VISU::TGroupMap::const_iterator anIter = aGroupMap.begin();
     for(size_t anId = 0; anIter != aGroupMap.end(); anIter++, anId++){
       const std::string& aName = anIter->first;
       aResult[anId] = aName.c_str();
@@ -1120,7 +1126,7 @@ VISU::Result_i
     
     {
       aResult->length(aFieldMap.size());
-      VISU::TFieldMap::const_iterator anIter = aFieldMap.end();
+      VISU::TFieldMap::const_iterator anIter = aFieldMap.begin();
       for(size_t anId = 0; anIter != aFieldMap.end(); anIter++, anId++){
        const std::string& aName = anIter->first;
        aResult[anId] = aName.c_str();
@@ -1177,7 +1183,7 @@ VISU::Result_i
 
        {
          aResult->length(aValField.size());
-         VISU::TValField::const_iterator anIter = aValField.end();
+         VISU::TValField::const_iterator anIter = aValField.begin();
          for(size_t anId = 0; anIter != aValField.end(); anIter++, anId++){
            const vtkIdType& aTimeStampNumber = anIter->first;
            aResult[anId] = aTimeStampNumber;
@@ -1326,6 +1332,25 @@ VISU::Result_i
   Storable::DataToStream(theStr,"myIsBuildGroups", myIsGroupsDone);
 }
 
+//---------------------------------------------------------------
+
+bool
+VISU::Result_i
+::ExportMED(const char* theTargetFileName)
+{
+  static QString aCommand;
+  const char* aTempFileName = myFileInfo.absoluteFilePath().toLatin1();
+  aCommand.sprintf(" %s %s", aTempFileName, theTargetFileName);
+  aCommand = QDir::convertSeparators( aCommand );
+  aCommand.prepend( COPY_COMMAND );
+  
+  if(system(aCommand.toLatin1().data()) != 0) {
+    if(MYDEBUG) MESSAGE("VISU_Gen_i::Copy - Cann't execute the command :"<<aCommand.toLatin1().data());
+    return false;
+  }
+  return true;
+}
+
 
 //---------------------------------------------------------------
 std::string
@@ -1349,7 +1374,7 @@ std::string
 VISU::Result_i
 ::GetFileName() const
 {
-  if(GetSourceId() == eFile)
+  if(GetSourceId() == eRestoredFile)
     return VISU::MakeFileName(myFileName, this);
 
   return myFileName;
@@ -1472,7 +1497,7 @@ VISU::Result_i
       return components;
     }
 
-    if ( !theMesh->IsStructured() || theMesh->myType ) {
+    if ( !theMesh->IsStructured() || theMesh->myIsPolarType ) {
       // define axis directions and min cell size in each direction
       const int nbAxes = 3;
       int iAx;
@@ -1481,8 +1506,9 @@ VISU::Result_i
       bool axesComputed = false;
       for ( vtkIdType iCell = 0; iCell < aMesh->GetNumberOfCells(); ++iCell ) {
        vtkCell* cell = aMesh->GetCell( iCell );
-       int nbPnt = cell->GetNumberOfPoints();
-       if ( nbPnt != 8 )
+       
+       if (cell->GetCellType() != VTK_HEXAHEDRON && 
+           cell->GetCellType() != VTK_QUADRATIC_HEXAHEDRON )
          continue;
        vtkPoints * points = cell->GetPoints();
        vtkFloatingPointType coords[ 4 ][3];
@@ -1587,11 +1613,9 @@ VISU::Result_i
       }
     }
     else {
-      //ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
-      TIdTypeVector aIndexes = theMesh->GetStructure();
-
+      vtkIdType aMeshDim = theMesh->myDim;
       gInfo = & myMeshName2GridInfoMap[ theMeshName ];
-      switch(aIndexes.size()){
+      switch ( aMeshDim ) {
       case 3: {
        gp_Dir aDir(0.0,0.0,1.0);
        gInfo->myAxis[ 2 ] = aDir;
@@ -1605,66 +1629,55 @@ VISU::Result_i
        gInfo->myAxis[ 0 ] = aDir;
       }}
       
-      int nbPoints = aMesh->GetNumberOfPoints();
-      vtkFloatingPointType* coords[ 2 ];
-      if ( nbPoints > 1 ) {
-       coords[0] = aMesh->GetPoints()->GetPoint(0);
-       coords[1] = aMesh->GetPoints()->GetPoint(nbPoints-1);
-      }
-      
+      TStructuredId aStructuredId = theMesh->GetStructure();
       vector<vtkFloatingPointType> PointsCoords[3];
-      TIdTypeVector aCoordIJK;
-      switch ( aIndexes.size() ) {
+      vtkPoints* aPoints = aMesh->GetPoints();
+      switch ( aMeshDim ) {
       case 3: {
-       vtkIdType nbZ = aIndexes[2];
-       aCoordIJK.clear();
-       aCoordIJK.resize(aIndexes.size(),1);
-       for(int i=0;i<nbZ;i++){
-         aCoordIJK[2]=i+1;
+       TStructuredId aCoordIJK;
+       vtkIdType nbZ = aStructuredId[2];
+       for ( int i = 0; i < nbZ; i++ ) {
+         aCoordIJK[2] = i + 1;
          vtkIdType aObjID = anIDMapper->GetObjectIDByIndexes(aCoordIJK);
          vtkIdType aVTKID = anIDMapper->GetNodeVTKID(aObjID);
-         vtkFloatingPointType* aPCoord = aMesh->GetPoints()->GetPoint(aVTKID);
+         vtkFloatingPointType* aPCoord = aPoints->GetPoint(aVTKID);
          PointsCoords[2].push_back(aPCoord[2]);
        }
       }
       case 2: {
-       vtkIdType nbJ = aIndexes[1];
-       aCoordIJK.clear();
-       aCoordIJK.resize(aIndexes.size(),1);
-       for(int i=0;i<nbJ;i++){
-         aCoordIJK[1]=i+1;
+       TStructuredId aCoordIJK;
+       vtkIdType nbJ = aStructuredId[1];
+       for ( int i = 0; i < nbJ; i++ ) {
+         aCoordIJK[1] = i + 1;
          vtkIdType aObjID = anIDMapper->GetObjectIDByIndexes(aCoordIJK);
          vtkIdType aVTKID = anIDMapper->GetNodeVTKID(aObjID);
-         vtkFloatingPointType* aPCoord = aMesh->GetPoints()->GetPoint(aVTKID);
+         vtkFloatingPointType* aPCoord = aPoints->GetPoint(aVTKID);
          PointsCoords[1].push_back(aPCoord[1]);
        }
       }
       case 1: {
-       vtkIdType nbI = aIndexes[0];
-       aCoordIJK.clear();
-       aCoordIJK.resize(aIndexes.size(),1);
-       for(int i=0;i<nbI;i++){
-         aCoordIJK[0]=i+1;
+       TStructuredId aCoordIJK;
+       vtkIdType nbI = aStructuredId[0];
+       for ( int i = 0; i < nbI; i++ ) {
+         aCoordIJK[0] = i + 1;
          vtkIdType aObjID = anIDMapper->GetObjectIDByIndexes(aCoordIJK);
          vtkIdType aVTKID = anIDMapper->GetNodeVTKID(aObjID);
-         vtkFloatingPointType* aPCoord = aMesh->GetPoints()->GetPoint(aVTKID);
+         vtkFloatingPointType* aPCoord = aPoints->GetPoint(aVTKID);
          PointsCoords[0].push_back(aPCoord[0]);
        }
       }}
-      for(int i=0;i<aIndexes.size();i++){
+      for ( int i = 0; i < aMeshDim; i++ ) {
        vector< vtkFloatingPointType >& myComp = gInfo->myComponets[ i ];
        int aSize = PointsCoords[i].size();
-       if(aSize>0){
+       if ( aSize > 0 ) {
          vtkFloatingPointType aLen = PointsCoords[i][aSize-1] - PointsCoords[i][0];
          myComp.resize(aSize);
          myComp[0] = 0;
-         for(int k=1;k<aSize;k++){
+         for ( int k = 1; k < aSize; k++ ) {
            myComp[k]=myComp[k-1] + (PointsCoords[i][k]-PointsCoords[i][k-1])/aLen;
          }
        }
       }
-      
-      //ENK: 23.11.2006
     }
   }
 
@@ -1676,3 +1689,23 @@ VISU::Result_i
 
   return components;
 }
+
+SALOME_MED::MedFileInfo* VISU::Result_i::GetMEDFileInfo()
+{
+  SALOME_MED::MedFileInfo_var res = new SALOME_MED::MedFileInfo();
+
+  QString fpath = myFileInfo.absoluteFilePath();
+  res->fileName = fpath.toLatin1().constData();
+  res->fileSize = myFileInfo.size();
+  int major, minor, release;
+  if( !MED::getMEDVersion( fpath.toLatin1().constData(), major, minor, release ) )
+  {
+    major = -1;
+    minor = -1;
+    release = -1;
+  }
+  res->major = major;
+  res->minor = minor;
+  res->release = release;
+  return res._retn();
+}
index 40eff416ff9e7d4ce1714fb7e8f9c6e18821d9bc..8871cfccfaccace36d45a09fe954967d8f6694a0 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_Result_i.hh
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef __VISU_RESULT_I_H__
 #define __VISU_RESULT_I_H__
 
@@ -31,7 +31,7 @@
 #include "VISU_BoostSignals.h"
 #include "SALOME_GenericObj_i.hh"
 
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 #include "VTKViewer.h"
 
 #include <boost/shared_ptr.hpp>
@@ -100,6 +100,10 @@ namespace VISU
     Build(CORBA::Boolean theIsBuildAll,
          CORBA::Boolean theIsAtOnce);
 
+    virtual
+    CORBA::Boolean
+    ExportMED(const char* theFileName);
+
     virtual
     CORBA::Boolean
     IsDone();
@@ -196,6 +200,10 @@ namespace VISU
     ConnectObserver(TResultObserver* theObserver,
                    boost::signalslib::connection& theConnection);
 
+    virtual
+    SALOME_MED::MedFileInfo*
+    GetMEDFileInfo();
+    
     typedef boost::signal0<void> TUpdateObserverSignal;
 
     typedef VISU_Convertor TInput;
diff --git a/src/VISU_I/VISU_ScalarMapOnDeformedShape_i.cc b/src/VISU_I/VISU_ScalarMapOnDeformedShape_i.cc
deleted file mode 100644 (file)
index ac6a832..0000000
+++ /dev/null
@@ -1,404 +0,0 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
-//
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
-//  File   : VISU_ScalarMapOnDeformedShape_i.cc
-//  Author : Eugeny Nikolaev
-//  Module : VISU
-
-#include "VISU_ScalarMapOnDeformedShape_i.hh"
-#include "VISU_Prs3dUtils.hh"
-#include "VISU_Result_i.hh"
-
-#include "VISU_ScalarMapAct.h"
-#include "VISU_ScalarMapOnDeformedShapePL.hxx"
-#include "VISU_Convertor.hxx"
-
-#include "SUIT_ResourceMgr.h"
-#include "SALOME_Event.hxx"
-
-#include <vtkUnstructuredGrid.h>
-#include <vtkProperty.h>
-#include <vtkMapper.h>
-
-#ifdef _DEBUG_
-static int MYDEBUG = 0;
-#else
-static int MYDEBUG = 0;
-#endif
-
-static int INCMEMORY = 4+12;
-
-
-//---------------------------------------------------------------
-size_t
-VISU::ScalarMapOnDeformedShape_i
-::IsPossible(Result_i* theResult, 
-            const std::string& theMeshName, 
-            VISU::Entity theEntity,
-            const std::string& theFieldName, 
-            CORBA::Long theTimeStampNumber,
-            bool theIsMemoryCheck)
-{
-  size_t aResult = 0;
-  try{
-    aResult = TSuperClass::IsPossible(theResult,
-                                     theMeshName,
-                                     theEntity,
-                                     theFieldName,
-                                     theTimeStampNumber,
-                                     false);
-    if(theIsMemoryCheck && aResult){
-      VISU::Result_i::PInput anInput = theResult->GetInput(theMeshName,
-                                                          theEntity,
-                                                          theFieldName,
-                                                          theTimeStampNumber);
-      VISU::PField aField = anInput->GetField(theMeshName,
-                                             (VISU::TEntity)theEntity,
-                                             theFieldName);
-      if(aField->myNbComp <= 1)
-       return 0;
-
-      bool anIsEstimated = true;
-      size_t aSize = anInput->GetTimeStampOnMeshSize(theMeshName,
-                                                    (VISU::TEntity)theEntity,
-                                                    theFieldName,
-                                                    theTimeStampNumber,
-                                                    anIsEstimated);
-      if(anIsEstimated)
-       aSize *= INCMEMORY;
-      aResult = VISU_PipeLine::CheckAvailableMemory(aSize);
-      if(MYDEBUG) 
-       MESSAGE("ScalarMapOnDeformedShape_i::IsPossible - CheckAvailableMemory = "<<float(aSize)<<"; aResult = "<<aResult);
-    }
-  }catch(std::exception& exc){
-    INFOS("Follow exception was occured :\n"<<exc.what());
-  }catch(...){
-    INFOS("Unknown exception was occured!");
-  }
-  return aResult;
-}
-
-//---------------------------------------------------------------
-int VISU::ScalarMapOnDeformedShape_i::myNbPresent = 0;
-
-//---------------------------------------------------------------
-QString
-VISU::ScalarMapOnDeformedShape_i
-::GenerateName() 
-{
-  return VISU::GenerateName("ScalarDef.Shape",myNbPresent++);
-}
-
-//---------------------------------------------------------------
-const string VISU::ScalarMapOnDeformedShape_i::myComment = "SCALARMAPONDEFORMEDSHAPE";
-
-//---------------------------------------------------------------
-const char* 
-VISU::ScalarMapOnDeformedShape_i
-::GetComment() const
-{ 
-  return myComment.c_str();
-}
-
-//----------------------------------------------------------------------------
-const char*
-VISU::ScalarMapOnDeformedShape_i
-::GetIconName()
-{
-  if (!IsGroupsUsed())
-    return "ICON_TREE_SCALAR_MAP_ON_DEFORMED_SHAPE";
-  else
-    return "ICON_TREE_SCALAR_MAP_ON_DEFORMED_SHAPE_GROUPS";
-}
-
-//---------------------------------------------------------------
-VISU::ScalarMapOnDeformedShape_i
-::ScalarMapOnDeformedShape_i(EPublishInStudyMode thePublishInStudyMode) :
-  ColoredPrs3d_i(thePublishInStudyMode),
-  ScalarMap_i(thePublishInStudyMode),
-  myScalarMapOnDeformedShapePL(NULL),
-  myScalarTimeStampNumber(1)
-{}
-
-
-//---------------------------------------------------------------
-VISU::Storable* 
-VISU::ScalarMapOnDeformedShape_i
-::Create(const std::string& theMeshName, 
-        VISU::Entity theEntity,
-        const std::string& theFieldName, 
-        CORBA::Long theTimeStampNumber)
-{
-  TSuperClass::Create(theMeshName,
-                            theEntity,
-                            theFieldName,
-                            theTimeStampNumber);
-  SetScalarField(theEntity,
-                theFieldName.c_str(),
-                theTimeStampNumber);
-  return this;
-}
-
-
-//---------------------------------------------------------------
-VISU::Storable*
-VISU::ScalarMapOnDeformedShape_i
-::Restore(SALOMEDS::SObject_ptr theSObject,
-         const Storable::TRestoringMap& theMap)
-{
-  if(!TSuperClass::Restore(theSObject, theMap))
-    return NULL;
-
-  QString aMeshName = VISU::Storable::FindValue(theMap,"myScalarMeshName");
-  VISU::Entity anEntity = VISU::Entity(VISU::Storable::FindValue(theMap,"myScalarEntity").toInt());
-
-  QString aFieldName = VISU::Storable::FindValue(theMap,"myScalarFieldName");
-  int aTimeStampNumber = VISU::Storable::FindValue(theMap,"myScalarIteration").toInt();
-
-  SetScalarField(anEntity,
-                aFieldName,
-                aTimeStampNumber);
-
-  SetScale(VISU::Storable::FindValue(theMap,"myFactor").toDouble());
-  
-  return this;
-}
-
-
-//---------------------------------------------------------------
-void
-VISU::ScalarMapOnDeformedShape_i
-::ToStream(std::ostringstream& theStr)
-{
-  TSuperClass::ToStream(theStr);
-  
-  Storable::DataToStream( theStr, "myScalarEntity",    int(myScalarEntity));
-  Storable::DataToStream( theStr, "myScalarFieldName", myScalarFieldName.c_str());
-  Storable::DataToStream( theStr, "myScalarIteration", int(myScalarTimeStampNumber));
-
-  Storable::DataToStream( theStr, "myFactor", GetScale() );
-}
-
-
-//---------------------------------------------------------------
-VISU::ScalarMapOnDeformedShape_i
-::~ScalarMapOnDeformedShape_i()
-{
-  if(MYDEBUG) MESSAGE("ScalarMapOnDeformedShape_i::~ScalarMapOnDeformedShape_i()");
-}
-
-
-//---------------------------------------------------------------
-void
-VISU::ScalarMapOnDeformedShape_i
-::SameAs(const Prs3d_i* theOrigin)
-{
-  TSuperClass::SameAs(theOrigin);
-  
-  if(const ScalarMapOnDeformedShape_i* aPrs3d = dynamic_cast<const ScalarMapOnDeformedShape_i*>(theOrigin)){
-    ScalarMapOnDeformedShape_i* anOrigin = const_cast<ScalarMapOnDeformedShape_i*>(aPrs3d);
-    CORBA::String_var aFieldName = anOrigin->GetScalarFieldName();
-    
-    SetScalarField(anOrigin->GetScalarEntity(),
-                  aFieldName,
-                  anOrigin->GetScalarTimeStampNumber());
-    Update();
-  }
-}
-
-
-//---------------------------------------------------------------
-void
-VISU::ScalarMapOnDeformedShape_i
-::SetScale(CORBA::Double theScale) 
-{ 
-  VISU::TSetModified aModified(this);
-
-  ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_ScalarMapOnDeformedShapePL, vtkFloatingPointType>
-                  (GetSpecificPL(), &VISU_ScalarMapOnDeformedShapePL::SetScale, theScale));
-}
-
-
-//---------------------------------------------------------------
-CORBA::Double
-VISU::ScalarMapOnDeformedShape_i
-::GetScale()
-{
-  return myScalarMapOnDeformedShapePL->GetScale();
-}
-
-
-//---------------------------------------------------------------
-void
-VISU::ScalarMapOnDeformedShape_i
-::CreatePipeLine(VISU_PipeLine* thePipeLine)
-{
-  if(!thePipeLine){
-    myScalarMapOnDeformedShapePL = VISU_ScalarMapOnDeformedShapePL::New();
-  }else
-    myScalarMapOnDeformedShapePL = dynamic_cast<VISU_ScalarMapOnDeformedShapePL*>(thePipeLine);
-
-  myScalarMapOnDeformedShapePL->GetMapper()->SetScalarVisibility(1);
-
-  TSuperClass::CreatePipeLine(myScalarMapOnDeformedShapePL);
-}
-
-
-//---------------------------------------------------------------
-bool
-VISU::ScalarMapOnDeformedShape_i
-::CheckIsPossible() 
-{
-  return IsPossible(GetCResult(),GetCMeshName(),GetEntity(),GetCFieldName(),GetTimeStampNumber(),true);
-}
-
-
-//---------------------------------------------------------------
-VISU_Actor* 
-VISU::ScalarMapOnDeformedShape_i
-::CreateActor() 
-{
-  VISU_Actor* anActor = TSuperClass::CreateActor(true);
-  SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
-  int  aDispMode = aResourceMgr->integerValue("VISU", "scalar_def_represent", 2);
-  bool toShrink  = aResourceMgr->booleanValue("VISU", "scalar_def_shrink", false);
-  anActor->SetRepresentation(aDispMode);
-  if (toShrink) 
-    anActor->SetShrink();
-  anActor->SetVTKMapping(false);
-  return anActor;
-}
-
-
-//---------------------------------------------------------------
-void
-VISU::ScalarMapOnDeformedShape_i
-::UpdateActor(VISU_Actor* theActor) 
-{
-  if(VISU_ScalarMapAct* anActor = dynamic_cast<VISU_ScalarMapAct*>(theActor)){
-    anActor->SetBarVisibility(true);
-    GetPipeLine()->GetMapper()->SetScalarVisibility(1);
-  }
-  TSuperClass::UpdateActor(theActor);
-}
-
-
-//---------------------------------------------------------------
-void
-VISU::ScalarMapOnDeformedShape_i
-::SetField(VISU::PField theField)
-{
-  TSuperClass::SetField(theField);
-  
-  if(!myScalarField)
-    myScalarField = theField;
-}
-
-
-//---------------------------------------------------------------
-void
-VISU::ScalarMapOnDeformedShape_i
-::SetScalarField(VISU::Entity theEntity,
-                const char* theFieldName,
-                CORBA::Long theTimeStampNumber)
-{
-  bool anIsModified = false;
-
-  if(!anIsModified)
-    anIsModified |= myScalarEntity != theEntity;
-
-  if(!anIsModified)
-    anIsModified |= myScalarFieldName != theFieldName;
-
-  if(!anIsModified)
-    anIsModified |= myScalarTimeStampNumber != theTimeStampNumber;
-  
-  if(!anIsModified)
-    return;
-
-  VISU::TSetModified aModified(this);
-
-  VISU::TEntity aEntity = VISU::TEntity(theEntity);
-  VISU::Result_i::PInput anInput = GetCResult()->GetInput(GetCMeshName(),
-                                                         theEntity,
-                                                         theFieldName,
-                                                         theTimeStampNumber);
-  myScalarField = anInput->GetField(GetCMeshName(), aEntity, theFieldName);
-
-  VISU::PUnstructuredGridIDMapper anIDMapper = 
-    anInput->GetTimeStampOnMesh(GetCMeshName(),
-                               aEntity,
-                               theFieldName,
-                               theTimeStampNumber);
-
-  vtkUnstructuredGrid* anOutput = anIDMapper->GetUnstructuredGridOutput();
-  if(myScalarMapOnDeformedShapePL && anOutput)
-    ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_ScalarMapOnDeformedShapePL, vtkDataSet*>
-                    (GetSpecificPL(), &VISU_ScalarMapOnDeformedShapePL::SetScalars, anOutput));
-  
-  myScalarEntity = theEntity;
-  myScalarFieldName = theFieldName;
-  myScalarTimeStampNumber = theTimeStampNumber;
-
-  SetTitle(theFieldName);
-  SetScalarMode(GetScalarMode());
-  if(!IsRangeFixed() && IsPipeLineExists())
-    SetSourceRange();
-
-  myParamsTime.Modified();
-}
-
-
-//---------------------------------------------------------------
-VISU::Entity 
-VISU::ScalarMapOnDeformedShape_i
-::GetScalarEntity()
-{
-  return myScalarEntity;
-}
-
-
-//---------------------------------------------------------------
-char* 
-VISU::ScalarMapOnDeformedShape_i
-::GetScalarFieldName()
-{
-  return CORBA::string_dup(myScalarFieldName.c_str());
-}
-
-
-//---------------------------------------------------------------
-CORBA::Long 
-VISU::ScalarMapOnDeformedShape_i
-::GetScalarTimeStampNumber()
-{
-  return myScalarTimeStampNumber;
-}
-
-
-//---------------------------------------------------------------
-VISU::PField
-VISU::ScalarMapOnDeformedShape_i
-::GetScalarField()
-{
-  return myScalarField;
-}
diff --git a/src/VISU_I/VISU_ScalarMapOnDeformedShape_i.hh b/src/VISU_I/VISU_ScalarMapOnDeformedShape_i.hh
deleted file mode 100644 (file)
index 83f2e64..0000000
+++ /dev/null
@@ -1,179 +0,0 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
-//
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
-// File:    VISU_ScalarMapOnDeformedShape_i.hh
-// Author:  Eugeny Nikolaev
-// Module : VISU
-
-#ifndef VISU_ScalarMapOnDeformedShape_i_HeaderFile
-#define VISU_ScalarMapOnDeformedShape_i_HeaderFile
-
-#include "VISU_ScalarMap_i.hh"
-
-class VISU_ScalarMapOnDeformedShapePL;
-
-namespace VISU
-{
-  //----------------------------------------------------------------------------  
-  //! Class of Scalar Map on Deformed Shape presentation.
-  class VISU_I_EXPORT ScalarMapOnDeformedShape_i : public virtual POA_VISU::ScalarMapOnDeformedShape,
-                                                  public virtual ScalarMap_i
-  {
-    static int myNbPresent;
-    ScalarMapOnDeformedShape_i(const ScalarMapOnDeformedShape_i&);
-    
-  public:
-    //----------------------------------------------------------------------------     
-    typedef ScalarMap_i TSuperClass;
-    typedef VISU::ScalarMapOnDeformedShape TInterface;
-        
-    explicit
-    ScalarMapOnDeformedShape_i(EPublishInStudyMode thePublishInStudyModep);
-    
-    virtual
-    ~ScalarMapOnDeformedShape_i();
-
-    virtual
-    VISU::VISUType
-    GetType()
-    { 
-      return VISU::TSCALARMAPONDEFORMEDSHAPE;
-    }
-    
-    virtual 
-    void
-    SetScale(CORBA::Double theScale);
-
-    virtual
-    CORBA::Double 
-    GetScale();
-
-    virtual 
-    void
-    SameAs(const Prs3d_i* theOrigin);
-
-    VISU_ScalarMapOnDeformedShapePL* 
-    GetSpecificPL()
-    { 
-      return myScalarMapOnDeformedShapePL;
-    }
-   
-  protected:
-    //! Redefines VISU_ColoredPrs3d_i::SetField
-    virtual
-    void
-    SetField(VISU::PField theField);
-
-    //! Redefines VISU_ColoredPrs3d_i::CreatePipeLine
-    virtual
-    void
-    CreatePipeLine(VISU_PipeLine* thePipeLine);
-
-    //! Redefines VISU_ColoredPrs3d_i::CheckIsPossible
-    virtual 
-    bool 
-    CheckIsPossible();
-
-  public:
-    //! Redefines VISU_ColoredPrs3d_i::IsPossible
-    static
-    size_t
-    IsPossible(Result_i* theResult, 
-              const std::string& theMeshName, 
-              VISU::Entity theEntity,
-              const std::string& theFieldName, 
-              CORBA::Long theTimeStampNumber,
-              bool theIsMemoryCheck);
-
-    //! Redefines VISU_ColoredPrs3d_i::IsPossible
-    virtual
-    Storable* 
-    Create(const std::string& theMeshName, 
-          VISU::Entity theEntity,
-          const std::string& theFieldName, 
-          CORBA::Long theTimeStampNumber);
-
-    //! Redefines VISU_ColoredPrs3d_i::ToStream
-    virtual
-    void
-    ToStream(std::ostringstream& theStr);
-
-    //! Redefines VISU_ColoredPrs3d_i::Restore
-    virtual
-    Storable* 
-    Restore(SALOMEDS::SObject_ptr theSObject,
-           const Storable::TRestoringMap& theMap);
-    
-    static const std::string myComment;
-
-    virtual
-    const char* 
-    GetComment() const;
-
-    virtual
-    QString 
-    GenerateName();
-
-    virtual
-    const char* 
-    GetIconName();
-    
-    virtual
-    VISU_Actor* 
-    CreateActor();
-
-    virtual
-    void
-    UpdateActor(VISU_Actor* theActor) ;
-
-    virtual 
-    void
-    SetScalarField(VISU::Entity theEntity,
-                  const char* theFieldName,
-                  CORBA::Long theTimeStampNumber);
-
-    virtual
-    VISU::Entity
-    GetScalarEntity();
-
-    virtual
-    char* 
-    GetScalarFieldName();
-
-    virtual
-    CORBA::Long
-    GetScalarTimeStampNumber();
-
-    virtual 
-    VISU::PField
-    GetScalarField();
-
-  private:
-    VISU_ScalarMapOnDeformedShapePL *myScalarMapOnDeformedShapePL;
-
-    PField myScalarField;
-    VISU::Entity myScalarEntity;
-    std::string myScalarFieldName;
-    CORBA::Long myScalarTimeStampNumber;
-  };
-}
-#endif
index 38b32823efe4b9833f9dc74be9957a9cd51fb3ac..2ad8a3be8f130f6d6e2ec4fd56b66fee75c460e2 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_PrsObject_i.cxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_ScalarMap_i.hh"
 #include "VISU_Prs3dUtils.hh"
 
@@ -38,7 +38,7 @@
 #include "SUIT_ResourceMgr.h"
 
 #include "SUIT_Session.h"
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 #include "SalomeApp_Study.h"
 #include "SalomeApp_Application.h"
 
@@ -53,6 +53,7 @@ static int MYDEBUG = 0;
 
 static int INCMEMORY = 4;
 
+using namespace std;
 
 //----------------------------------------------------------------------------
 size_t
@@ -150,9 +151,10 @@ VISU::ScalarMap_i
 
   // Update Object Browser
   SUIT_Session* aSession = SUIT_Session::session();
-  QPtrList<SUIT_Application> anApplications = aSession->applications();
-  QPtrListIterator<SUIT_Application> anIter(anApplications);
-  while(SUIT_Application* aSApp = anIter.current()){
+  QList<SUIT_Application*> anApplications = aSession->applications();
+  QList<SUIT_Application*>::Iterator anIter = anApplications.begin();
+  while( anIter != anApplications.end() ){
+    SUIT_Application* aSApp = *anIter;
     if(SalomeApp_Application* anApp = dynamic_cast<SalomeApp_Application*>(aSApp)){
       if(SalomeApp_Study* aStudy = dynamic_cast<SalomeApp_Study*>(anApp->activeStudy())){
        if(_PTR(Study) aCStudy = aStudy->studyDS()){
@@ -163,14 +165,15 @@ VISU::ScalarMap_i
        }
       }
     }
-    ++anIter;
+    anIter++;
   }
 }
 
 //----------------------------------------------------------------------------
 VISU::ScalarMap_i::
 ScalarMap_i(EPublishInStudyMode thePublishInStudyMode) :
-  ColoredPrs3d_i(thePublishInStudyMode)
+  ColoredPrs3d_i(thePublishInStudyMode),
+  myShowBar(true)
 {}
 
 //----------------------------------------------------------------------------
@@ -190,7 +193,7 @@ VISU::ScalarMap_i
     ScalarMap_i* anOrigin = const_cast<ScalarMap_i*>(aPrs3d);
  
     SetScaling(anOrigin->GetScaling());
-    
+    SetBarVisible(anOrigin->IsBarVisible());
     Update();
   }
 }
@@ -216,6 +219,7 @@ VISU::ScalarMap_i
   else
     SetScaling(VISU::LINEAR);
 
+  myShowBar = true;
   return this;
 }
 
@@ -238,6 +242,9 @@ VISU::ScalarMap_i
 
   SetScaling(VISU::Scaling(VISU::Storable::FindValue(theMap,"myScaling").toInt()));
 
+  QString aVal = VISU::Storable::FindValue(theMap,"myShowBar", "1");
+  SetBarVisible((aVal.toInt() == 1)? true : false);
+
   // Check if the icon needs to be updated, update if necessary
   SALOMEDS::Study_var aStudy = theSObject->GetStudy();
   SALOMEDS::StudyBuilder_var aStudyBuilder = aStudy->NewBuilder();
@@ -260,6 +267,7 @@ VISU::ScalarMap_i
   TSuperClass::ToStream(theStr);
 
   Storable::DataToStream( theStr, "myScaling",        GetScaling() );
+  Storable::DataToStream( theStr, "myShowBar",        (IsBarVisible()? 1:0) );
 }
 
 
@@ -361,6 +369,14 @@ VISU::ScalarMap_i
   return IsPossible(GetCResult(),GetCMeshName(),GetEntity(),GetCFieldName(),GetTimeStampNumber(),true);
 }
 
+void VISU::ScalarMap_i::SetBarVisible(CORBA::Boolean theVisible) 
+{ 
+  if (myShowBar == theVisible)
+    return;
+  VISU::TSetModified aModified(this);
+  myShowBar = theVisible; 
+  myParamsTime.Modified();
+}
 
 //----------------------------------------------------------------------------
 void
@@ -377,14 +393,6 @@ VISU::ScalarMap_i
   TSuperClass::CreatePipeLine(myScalarMapPL);
 }
 
-//----------------------------------------------------------------------------
-void
-VISU::ScalarMap_i
-::SetMapScale(double theMapScale)
-{
-  GetSpecificPL()->SetMapScale(theMapScale);
-}
-
 //----------------------------------------------------------------------------
 VISU_Actor* 
 VISU::ScalarMap_i
@@ -393,7 +401,7 @@ VISU::ScalarMap_i
   VISU_ScalarMapAct* anActor = VISU_ScalarMapAct::New();
   try{
     TSuperClass::CreateActor(anActor);
-    anActor->SetBarVisibility(true);
+    anActor->SetBarVisibility(myShowBar); 
     SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
     int  aDispMode = aResourceMgr->integerValue("VISU", "scalar_map_represent", 2);
     bool toShrink  = aResourceMgr->booleanValue("VISU", "scalar_map_shrink", false);
@@ -401,6 +409,14 @@ VISU::ScalarMap_i
     anActor->SetRepresentation(aDispMode);
     if (toShrink && !toSupressShrinking) anActor->SetShrink();
     anActor->SetShading(toUseShading);
+
+    anActor->SetFeatureEdgesAngle( aResourceMgr->doubleValue("VISU", "feature_edges_angle", 0.0) );
+    anActor->SetFeatureEdgesFlags( aResourceMgr->booleanValue("VISU", "show_feature_edges", false),
+                                  aResourceMgr->booleanValue("VISU", "show_boundary_edges", false),
+                                  aResourceMgr->booleanValue("VISU", "show_manifold_edges", false),
+                                  aResourceMgr->booleanValue("VISU", "show_non_manifold_edges", false) );
+    anActor->SetFeatureEdgesColoring( aResourceMgr->booleanValue("VISU", "feature_edges_coloring", false) );
+
     UpdateActor(anActor);
   }catch(...){
     anActor->Delete();
@@ -420,19 +436,31 @@ VISU::ScalarMap_i
 //----------------------------------------------------------------------------
 void
 VISU::ScalarMap_i
-::UpdateActor(VISU_Actor* theActor) 
+::UpdateActor(VISU_ActorBase* theActor) 
 {
   if(VISU_ScalarMapAct* anActor = dynamic_cast<VISU_ScalarMapAct*>(theActor)){
+    VISU_LookupTable * aLookupTable = GetSpecificPL()->GetBarTable();
+
+    if ( IsScalarFilterUsed() ) {
+      aLookupTable->ForceBuild();
+      static unsigned char MARK_COLOR[] = { 255, 255, 255 };
+      aLookupTable->MarkValueByColor( GetScalarFilterMin(), MARK_COLOR );
+      aLookupTable->MarkValueByColor( GetScalarFilterMax(), MARK_COLOR );
+    }
+
     VISU_ScalarBarActor *aScalarBar = anActor->GetScalarBar();
-    aScalarBar->SetLookupTable(GetSpecificPL()->GetBarTable());
+    aScalarBar->SetLookupTable( aLookupTable );
+
+    aScalarBar->SetDistribution( GetSpecificPL()->GetDistribution() );
+    aScalarBar->SetDistributionVisibility( GetIsDistributionVisible() );
+
     aScalarBar->SetTitle(GetScalarBarTitle().c_str());
     aScalarBar->SetOrientation(GetBarOrientation());
     aScalarBar->GetPositionCoordinate()->SetCoordinateSystemToNormalizedViewport();
     aScalarBar->GetPositionCoordinate()->SetValue(GetPosX(),GetPosY());
     aScalarBar->SetWidth(GetWidth());
     aScalarBar->SetHeight(GetHeight());
-    aScalarBar->SetRatios(GetTitleWidth(), GetTitleHeight(),
-                         GetLabelWidth(), GetLabelHeight(),
+    aScalarBar->SetRatios(GetTitleSize(), GetLabelSize(), 
                          GetBarWidth(), GetBarHeight());
     aScalarBar->SetNumberOfLabels(GetLabels());
     aScalarBar->SetLabelFormat(GetLabelsFormat());
@@ -442,7 +470,7 @@ VISU::ScalarMap_i
     vtkTextProperty* aTitleProp = aScalarBar->GetTitleTextProperty();
     aTitleProp->SetFontFamily(GetTitFontType());
 
-    GetTitleColor(&anRGB[0],&anRGB[1],&anRGB[2]);
+    GetTitleColor(anRGB[0],anRGB[1],anRGB[2]);
     aTitleProp->SetColor(anRGB[0],anRGB[1],anRGB[2]);
 
     IsBoldTitle()? aTitleProp->BoldOn() : aTitleProp->BoldOff();
@@ -452,14 +480,116 @@ VISU::ScalarMap_i
     vtkTextProperty* aLabelProp = aScalarBar->GetLabelTextProperty();
     aLabelProp->SetFontFamily(GetLblFontType());
 
-    GetLabelColor(&anRGB[0],&anRGB[1],&anRGB[2]);
+    GetLabelColor(anRGB[0],anRGB[1],anRGB[2]);
     aLabelProp->SetColor(anRGB[0],anRGB[1],anRGB[2]);
 
     IsBoldLabel()? aLabelProp->BoldOn() : aLabelProp->BoldOff();
     IsItalicLabel()? aLabelProp->ItalicOn() : aLabelProp->ItalicOff();
     IsShadowLabel()? aLabelProp->ShadowOn() : aLabelProp->ShadowOff();
 
+    anActor->SetBarVisibility(myShowBar); 
+
     aScalarBar->Modified();
+    
+    // Update values labels
+
+    vtkTextProperty* aProp = anActor->GetsValLabelsProps();
+    if ( aProp )
+    {
+      aProp->SetFontFamily( GetValLblFontType() );
+      aProp->SetFontSize( GetValLblFontSize() );
+      aProp->SetBold( IsBoldValLbl() );
+      aProp->SetItalic( IsItalicValLbl() );
+      aProp->SetShadow( IsShadowValLbl() );
+
+      vtkFloatingPointType anRGB[ 3 ];
+      GetValLblFontColor( anRGB[ 0 ], anRGB[ 1 ], anRGB[ 2 ] );
+      aProp->SetColor( anRGB[ 0 ], anRGB[ 1 ], anRGB[ 2 ] );
+    }
   }
   TSuperClass::UpdateActor(theActor);
 }
+
+//----------------------------------------------------------------------------
+struct TGetComponentMin: public SALOME_Event
+{
+  VISU::ColoredPrs3d_i* myColoredPrs3d;
+  vtkIdType myCompID;
+  
+  typedef CORBA::Double TResult;
+  TResult myResult;
+  
+  TGetComponentMin( VISU::ColoredPrs3d_i* theColoredPrs3d,
+                   vtkIdType theCompID ):
+    myColoredPrs3d( theColoredPrs3d ),
+    myCompID( theCompID )
+  {}
+    
+  virtual
+  void
+  Execute()
+  {
+    VISU::PMinMaxController aMinMaxController = myColoredPrs3d->GetMinMaxController();
+    if ( aMinMaxController ) {
+      myResult = aMinMaxController->GetComponentMin( myCompID );
+    } else {
+      VISU::TMinMax aTMinMax;
+      if(myColoredPrs3d->GetScalarField()->myIsELNO)
+       aTMinMax = myColoredPrs3d->GetScalarField()->GetMinMax( myCompID );
+      else
+       aTMinMax = myColoredPrs3d->GetScalarField()->GetAverageMinMax( myCompID );
+      myResult = aTMinMax.first;
+    }
+  }
+};
+
+
+//----------------------------------------------------------------------------
+vtkFloatingPointType 
+VISU::ScalarMap_i
+::GetComponentMin(vtkIdType theCompID)
+{
+  return ProcessEvent( new TGetComponentMin( this, theCompID ) );
+}
+
+//----------------------------------------------------------------------------
+struct TGetComponentMax: public SALOME_Event
+{
+  VISU::ColoredPrs3d_i* myColoredPrs3d;
+  vtkIdType myCompID;
+
+  typedef CORBA::Double TResult;
+  TResult myResult;
+  
+  TGetComponentMax( VISU::ColoredPrs3d_i* theColoredPrs3d,
+                   vtkIdType theCompID ):
+    myColoredPrs3d( theColoredPrs3d ),
+    myCompID( theCompID )
+  {}
+    
+  virtual
+  void
+  Execute()
+  {
+    VISU::PMinMaxController aMinMaxController = myColoredPrs3d->GetMinMaxController();
+    if ( aMinMaxController ) {
+      myResult = aMinMaxController->GetComponentMax( myCompID );
+    } else {
+      VISU::TMinMax aTMinMax;
+      if(myColoredPrs3d->GetScalarField()->myIsELNO)
+       aTMinMax = myColoredPrs3d->GetScalarField()->GetMinMax( myCompID );
+      else
+       aTMinMax = myColoredPrs3d->GetScalarField()->GetAverageMinMax( myCompID );
+      myResult = aTMinMax.second;
+    }
+  }
+};
+
+
+//----------------------------------------------------------------------------
+vtkFloatingPointType 
+VISU::ScalarMap_i
+::GetComponentMax(vtkIdType theCompID)
+{
+  return ProcessEvent( new TGetComponentMax( this, theCompID ) );
+}
index 5eff7e7606cbc51bdfc3aa432535bbdf8b6e6036..0b640af6bcfa83c3ef4388cc3bf8492a8e27593b 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_PrsObject_i.hxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_ScalarMap_i_HeaderFile
 #define VISU_ScalarMap_i_HeaderFile
 
@@ -98,6 +98,10 @@ namespace VISU
     { 
       return myScalarMapPL; 
     }
+
+    virtual CORBA::Boolean IsBarVisible() { return myShowBar; }
+
+    virtual void SetBarVisible(CORBA::Boolean theVisible);
     
   protected:
     //! Redefines VISU_ColoredPrs3d_i::DoSetInput
@@ -163,10 +167,6 @@ namespace VISU
     Restore(SALOMEDS::SObject_ptr theSObject,
            const Storable::TRestoringMap& theMap);
 
-    virtual
-    void
-    SetMapScale(double theMapScale = 1.0);
-
     virtual 
     void
     SameAs(const Prs3d_i* theOrigin);
@@ -181,10 +181,19 @@ namespace VISU
 
     virtual
     void
-    UpdateActor(VISU_Actor* theActor);
+    UpdateActor(VISU_ActorBase* theActor);
+
+    virtual
+    vtkFloatingPointType
+    GetComponentMin(vtkIdType theCompID);
+
+    virtual
+    vtkFloatingPointType
+    GetComponentMax(vtkIdType theCompID);
 
   private:
     VISU_ScalarMapPL* myScalarMapPL;
+    bool myShowBar;
   };
 }
 
index f62b758f61c1ffc0268c4b154ded71247ab5a47c..de15f7729916608e53938e06b298c8b8fc899e96 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_PrsObject_i.cxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_StreamLines_i.hh"
 #include "VISU_Prs3dUtils.hh"
 #include "VISU_Result_i.hh"
@@ -33,7 +33,7 @@
 #include "VISU_Convertor.hxx"
 
 #include "SUIT_ResourceMgr.h"
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 
 #include <vtkDataSetMapper.h>
 #include <vtkAppendFilter.h>
@@ -45,6 +45,7 @@ static int MYDEBUG = 0;
 static int MYDEBUG = 0;
 #endif
 
+using namespace std;
 
 //---------------------------------------------------------------
 size_t
@@ -120,7 +121,7 @@ VISU::StreamLines_i
 ::StreamLines_i(EPublishInStudyMode thePublishInStudyMode) :
   ColoredPrs3d_i(thePublishInStudyMode),
   ScalarMap_i(thePublishInStudyMode),
-  DeformedShape_i(thePublishInStudyMode),
+  MonoColorPrs_i(thePublishInStudyMode),
   myStreamLinesPL(NULL),
   myAppendFilter(vtkAppendFilter::New())
 {}
@@ -172,7 +173,7 @@ VISU::StreamLines_i
            VISU::Prs3d::_nil(),
            aPercents,
            VISU::StreamLines::Direction(aDirection));
-  mySourceEntry = VISU::Storable::FindValue(theMap,"mySourceEntry").latin1();
+  mySourceEntry = (const char*)VISU::Storable::FindValue(theMap,"mySourceEntry").toLatin1();
 
   return this;
 }
index f0cee7572d828fe0108b5d10afdf90aa9acbe51f..e82452520890b14f6da53e6eeeeb3c69804fbad2 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_PrsObject_i.hxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_StreamLines_i_HeaderFile
 #define VISU_StreamLines_i_HeaderFile
 
-#include "VISU_DeformedShape_i.hh"
+//#include "VISU_DeformedShape_i.hh"
+#include "VISU_MonoColorPrs_i.hh"
 
 class VISU_StreamLinesPL;
 class vtkAppendFilter;
@@ -36,14 +37,15 @@ namespace VISU
 {
   //----------------------------------------------------------------------------
   class VISU_I_EXPORT StreamLines_i : public virtual POA_VISU::StreamLines,
-                                     public virtual DeformedShape_i
+                                     public virtual MonoColorPrs_i
+    //public virtual DeformedShape_i
   {
     static int myNbPresent;
     StreamLines_i(const StreamLines_i&);
 
   public:
     //----------------------------------------------------------------------------
-    typedef DeformedShape_i TSuperClass;
+    typedef MonoColorPrs_i TSuperClass;
     typedef VISU::StreamLines TInterface;
 
     explicit
index ec88462de2951b7c41d326fbf0e03c99e4e8ec9e..2516a24d1e946e72e8b0f43ec47112937b8b9e24 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_Table_i.cc
 //  Author : Vadim SANDLER
 //  Module : VISU
-
+//
 #include "VISU_Table_i.hh"
 
 #include "VISU_CutLines_i.hh"
 #include "VISU_Result_i.hh"
 #include "VISU_ViewManager_i.hh"
 
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 #include "SPlot2d_Curve.h"
 
-#include <memory>
-#include <fstream>
-#include <strstream>
+#include "VISU_TableReader.hxx"
+#include "VISU_ConvertorUtils.hxx"
 
-#include <qfileinfo.h>
-#include <qstring.h>
-#include <qregexp.h>
-#include <qfile.h>
+#include "utilities.h"
 
 using namespace std;
 
@@ -74,6 +70,7 @@ const char* VISU::Table_i::GetComment() const
 VISU::Table_i::Table_i( SALOMEDS::Study_ptr theStudy, const char* theObjectEntry )
      : PrsObject_i(theStudy)
 {
+  MESSAGE("Table_i::Table_i - "<<this);
   mySObj = theStudy->FindObjectID(theObjectEntry);
   myOrientation = VISU::Table::HORIZONTAL;
 }
@@ -82,7 +79,7 @@ VISU::Table_i::Table_i( SALOMEDS::Study_ptr theStudy, const char* theObjectEntry
 */
 VISU::Table_i::~Table_i()
 {
-  MESSAGE("Table_i::~Table_i");
+  MESSAGE("Table_i::~Table_i - "<<this);
 }
 
 //----------------------------------------------------------------------------
@@ -181,7 +178,7 @@ CORBA::Long VISU::Table_i::GetNbColumns()
 VISU::Storable* VISU::Table_i::Create()
 {
   // generate name ...
-  SetName(GetTableTitle().latin1(), false);
+  SetName(GetTableTitle().toLatin1().data(), false);
 
   // mpv (PAL 5357): if name attribute already exist at this label, use it as name of table
   if ( GetName() == "" )
@@ -198,7 +195,7 @@ VISU::Storable* VISU::Table_i::Create()
     }
 
   if ( GetName() == "" )
-    SetName(GenerateName().latin1(), false);
+    SetName(GenerateName().toLatin1().data(), false);
   // ... and build the object
   return Build( false );
 }
@@ -240,7 +237,7 @@ VISU::Storable* VISU::Table_i::Build( int theRestoring )
            bool anIsExist;
            QString aMethodName = VISU::Storable::FindValue(aMap,"myComment",&anIsExist);
            if(anIsExist){
-             if(strcmp(aMethodName.latin1(),"ImportTables") == 0){
+             if( aMethodName == "ImportTables" ){
                aComment.sprintf("myComment=%s;mySourceId=TableFile",GetComment());
              }
            }
@@ -253,7 +250,7 @@ VISU::Storable* VISU::Table_i::Build( int theRestoring )
                                          GetID(),
                                          GetName(),
                                          "",
-                                         aComment.latin1(),
+                                         aComment.toLatin1().data(),
                                          pCutLines );
        // create SObject referenced to real table object
        mySObj = SALOMEDS::SObject::_duplicate(GetStudyDocument()->FindObjectID( anEntry.c_str() ));
@@ -275,8 +272,8 @@ VISU::Storable* VISU::Table_i::Build( int theRestoring )
 VISU::Storable* VISU::Table_i::Restore( const Storable::TRestoringMap& theMap, SALOMEDS::SObject_ptr SO)
 {
   if(MYDEBUG) MESSAGE(GetComment());
-  SetName(VISU::Storable::FindValue(theMap,"myName").latin1(), false);
-  myTitle = VISU::Storable::FindValue(theMap,"myTitle").latin1();
+  SetName(VISU::Storable::FindValue(theMap,"myName").toLatin1().data(), false);
+  myTitle = VISU::Storable::FindValue(theMap,"myTitle").toLatin1().data();
   myOrientation = ( VISU::Table::Orientation )( VISU::Storable::FindValue(theMap,"myOrientation").toInt() );
   mySObj = SALOMEDS::SObject::_duplicate(SO);
   return Build( true );
@@ -372,7 +369,7 @@ const string VISU::Curve_i::myComment  = "CURVE";
 */
 QString VISU::Curve_i::GenerateName()
 {
-  return VISU::GenerateName( "Curve", ++myNbPresent );
+  return VISU::GenerateName( "Curve", ++myNbPresent ).toLatin1().data();
 }
 /*!
   Gets comment string
@@ -490,7 +487,7 @@ VISU::Storable* VISU::Curve_i::Create()
   // generate name ...
   SetName(GetVerTitle(), false);
   if ( GetName() == "" )
-    SetName(GenerateName(), false);
+    SetName(GenerateName().toLatin1().data(), false);
   // ... and build the object
   return Build( false );
 }
@@ -515,10 +512,18 @@ VISU::Storable* VISU::Curve_i::Build(int theRestoring )
                                          GetID(),
                                          GetName(),
                                          "",
-                                         aComment.latin1(),
+                                         aComment.toLatin1().data(),
                                          true );
        // create SObject referenced to real table object
        mySObj = SALOMEDS::SObject::_duplicate(GetStudyDocument()->FindObjectID(anEntry.c_str()));
+
+       // Set icon
+       SALOMEDS::StudyBuilder_var aStudyBuilder = GetStudyDocument()->NewBuilder();
+       SALOMEDS::GenericAttribute_var anAttr;
+       SALOMEDS::AttributePixMap_var  aPixmap;
+       anAttr  = aStudyBuilder->FindOrCreateAttribute( mySObj, "AttributePixMap" );
+       aPixmap = SALOMEDS::AttributePixMap::_narrow( anAttr );
+       aPixmap ->SetPixMap("ICON_TREE_CURVE");
       }
       return this;
     }
@@ -788,8 +793,8 @@ SPlot2d_Curve* VISU::Curve_i::CreatePresentation()
   //for ( int i =0 ; i < nbPoints; i++ ) {
   //  cout << i<<"\t"<<xList[i] << "\t"<< yList[i] << endl;
   //}
-  crv->setLine( (Plot2d_Curve::LineType)GetLine(), GetLineWidth() );
-  crv->setMarker( (Plot2d_Curve::MarkerType)GetMarker() );
+  crv->setLine( (Plot2d::LineType)GetLine(), GetLineWidth() );
+  crv->setMarker( (Plot2d::MarkerType)GetMarker() );
   SALOMEDS::Color color = GetColor();
   crv->setColor( QColor( (int)(color.R*255.), (int)(color.G*255.), (int)(color.B*255.) ) );
   crv->setAutoAssign( IsAuto() );
@@ -806,7 +811,7 @@ VISU::Storable* VISU::Curve_i::Restore( const Storable::TRestoringMap& theMap, S
 {
   if(MYDEBUG) MESSAGE(GetComment());
   mySObj = SALOMEDS::SObject::_duplicate(theSO);
-  SetName(VISU::Storable::FindValue(theMap,"myName").latin1(), false);
+  SetName(VISU::Storable::FindValue(theMap,"myName").toLatin1().data(), false);
   myHRow = VISU::Storable::FindValue(theMap,"myHRow").toInt();
   myVRow = VISU::Storable::FindValue(theMap,"myVRow").toInt();
   bool ok = false;
@@ -898,7 +903,7 @@ const string VISU::Container_i::myComment  = "CONTAINER";
 */
 QString VISU::Container_i::GenerateName()
 {
-  return VISU::GenerateName( "Plot2DView", ++myNbPresent );
+  return VISU::GenerateName( "Plot2DView", ++myNbPresent ).toLatin1().data();
 }
 /*!
   Gets comment string
@@ -935,9 +940,9 @@ void VISU::Container_i::AddCurve( Curve_ptr theCurve )
   PortableServer::POA_ptr aPOA = GetPOA();
   Curve_i* pCurve = dynamic_cast<Curve_i*>( aPOA->reference_to_servant( theCurve ) );
   if( pCurve ) {
-    QString entry = pCurve->GetEntry();
-    SALOMEDS::SObject_var SO = GetStudyDocument()->FindObjectID( entry.latin1() );
-    if ( !SO->_is_nil() && myCurves.find( entry ) == myCurves.end() ) {
+    QString entry( pCurve->GetEntry().c_str() );
+    SALOMEDS::SObject_var SO = GetStudyDocument()->FindObjectID( entry.toLatin1().data() );
+    if ( !SO->_is_nil() && myCurves.indexOf( entry ) == -1 ) {
       myCurves.append( entry );
       SALOMEDS::StudyBuilder_var Builder = GetStudyDocument()->NewBuilder();
       SALOMEDS::SObject_var newSO = Builder->NewObject( mySO );
@@ -958,10 +963,10 @@ void VISU::Container_i::RemoveCurve( Curve_ptr theCurve )
   PortableServer::POA_ptr aPOA = GetPOA();
   Curve_i* pCurve = dynamic_cast<Curve_i*>( aPOA->reference_to_servant( theCurve ) );
   if( pCurve ) {
-    QString entry = pCurve->GetEntry();
-    if ( myCurves.find( entry ) != myCurves.end() ) {
+    QString entry( pCurve->GetEntry().c_str() );
+    if ( myCurves.indexOf( entry ) != -1 ) {
       // found !!!
-      myCurves.remove( entry );
+      myCurves.removeAll( entry );
       SALOMEDS::StudyBuilder_var Builder = GetStudyDocument()->NewBuilder();
       SALOMEDS::ChildIterator_var CI = GetStudyDocument()->NewChildIterator( mySO );
       for ( ; CI->More(); CI->Next() ) {
@@ -999,7 +1004,7 @@ void VISU::Container_i::Clear()
   }
   SALOMEDS::StudyBuilder_var Builder = GetStudyDocument()->NewBuilder();
   for ( int i = 0; i < toDelete.count(); i++ ) {
-    SALOMEDS::SObject_var SO = GetStudyDocument()->FindObjectID( toDelete[i].latin1() );
+    SALOMEDS::SObject_var SO = GetStudyDocument()->FindObjectID( toDelete[i].toLatin1().data() );
     Builder->RemoveObject( SO );
   }
   myCurves.clear();
@@ -1010,7 +1015,7 @@ void VISU::Container_i::Clear()
 VISU::Storable* VISU::Container_i::Create()
 {
   // generate name ...
-  SetName(GenerateName(), false);
+  SetName(GenerateName().toLatin1().data(), false);
   // ... and build the object
   return Build( false );
 }
@@ -1031,9 +1036,17 @@ VISU::Storable* VISU::Container_i::Build( int theRestoring )
                                       GetID(),
                                       GetName(),
                                       "",
-                                      aComment.latin1(),
+                                      aComment.toLatin1().data(),
                                       true );
     mySObj = SALOMEDS::SObject::_duplicate(GetStudyDocument()->FindObjectID(anEntry.c_str()));
+
+    // Set icon
+    SALOMEDS::StudyBuilder_var aStudyBuilder = GetStudyDocument()->NewBuilder();
+    SALOMEDS::GenericAttribute_var anAttr;
+    SALOMEDS::AttributePixMap_var  aPixmap;
+    anAttr  = aStudyBuilder->FindOrCreateAttribute( mySObj, "AttributePixMap" );
+    aPixmap = SALOMEDS::AttributePixMap::_narrow( anAttr );
+    aPixmap ->SetPixMap("ICON_TREE_CONTAINER");
   }
   return this;
 }
@@ -1051,7 +1064,7 @@ void VISU::Container_i::Update()
     QStringList toDelete;
     int i;
     for ( i = 0; i < myCurves.count(); i++ ) {
-      SALOMEDS::SObject_var SO = GetStudyDocument()->FindObjectID( myCurves[i].latin1() );
+      SALOMEDS::SObject_var SO = GetStudyDocument()->FindObjectID( myCurves[i].toLatin1().data() );
       if ( !SO->_is_nil() && Builder->FindAttribute( SO, anAttr, "AttributeIOR" ) ) {
        // if real Curve Object still exists
        SALOMEDS::ChildIterator_var CI = GetStudyDocument()->NewChildIterator( mySO );
@@ -1075,7 +1088,7 @@ void VISU::Container_i::Update()
       }
     }
     for ( i = 0; i < toDelete.count(); i++ ) {
-      myCurves.remove( toDelete[i] );
+      myCurves.removeAll( toDelete[i] );
     }
     toDelete.clear();
     SALOMEDS::ChildIterator_var CI = GetStudyDocument()->NewChildIterator( mySO );
@@ -1083,7 +1096,7 @@ void VISU::Container_i::Update()
       SALOMEDS::SObject_var childSO = CI->Value();
       SALOMEDS::SObject_var refSO;
       if ( childSO->ReferencedObject( refSO ) && ( refSO->_is_nil() || !Builder->FindAttribute( refSO, anAttr, "AttributeIOR" ) ||
-                                                  myCurves.find( refSO->GetID() ) == myCurves.end() ) ) {
+                                                  myCurves.indexOf( refSO->GetID() ) == -1 ) ) {
        toDelete.append( childSO->GetID() );
       }
     }
@@ -1107,7 +1120,7 @@ VISU::Curve_i* VISU::Container_i::GetCurve( CORBA::Long theIndex )
   if ( theIndex > 0 && theIndex <= myCurves.count()  ) {
     SALOMEDS::StudyBuilder_var Builder = GetStudyDocument()->NewBuilder();
     SALOMEDS::GenericAttribute_var anAttr;
-    SALOMEDS::SObject_var SO = GetStudyDocument()->FindObjectID( myCurves[  theIndex-1 ].latin1() );
+    SALOMEDS::SObject_var SO = GetStudyDocument()->FindObjectID(myCurves[ theIndex-1 ].toLatin1().data() );
     CORBA::Object_var anObject = VISU::SObjectToObject( SO );
     if( !CORBA::is_nil( anObject ) ) {
       // if real Curve Object exists
@@ -1125,9 +1138,9 @@ VISU::Storable* VISU::Container_i::Restore( const Storable::TRestoringMap& theMa
 {
   if(MYDEBUG) MESSAGE(GetComment());
   mySObj = SALOMEDS::SObject::_duplicate(SO);
-  SetName(VISU::Storable::FindValue( theMap, "myName" ).latin1(), false);
+  SetName(VISU::Storable::FindValue( theMap, "myName" ).toLatin1().data(), false);
   QString val = VISU::Storable::FindValue( theMap, "myCurves" );
-  myCurves = QStringList::split( QString( "*" ), val, false );
+  myCurves = val.split( "*", QString::SkipEmptyParts );
   return Build( true );
 }
 /*!
@@ -1178,207 +1191,14 @@ SALOMEDS::SObject_var VISU::Container_i::GetSObject()
   return mySObj;
 }
 
-//-------------------------------------------------------------
-//             Implementation of reading from file
-//-------------------------------------------------------------
-typedef string TValue;
-typedef vector<TValue> TValues;
-
-struct TRow{
-  string myTitle;
-  string myUnit;
-  TValues myValues;
-};
-
-typedef vector<TRow> TRows;
-
-struct TTable2D {
-  string myTitle;
-  vector<string> myColumnUnits;
-  vector<string> myColumnTitles;
-  TRows myRows;
-  int Check(){
-    if(myRows.empty()) return 0;
-    int iEnd = myRows[0].myValues.size();
-    if(iEnd == 0) return 0;
-    if(myColumnTitles.size() != iEnd) myColumnTitles.resize(iEnd);
-    if(myColumnUnits.size() != iEnd) myColumnUnits.resize(iEnd);
-    int jEnd = myRows.size();
-    for(int j = 0; j < jEnd; j++)
-      if(myRows[j].myValues.size() != iEnd)
-       return 0;
-    return 1;
-  }
-  void getColumns(TTable2D& theTable2D) const {
-    TRows& aRows = theTable2D.myRows;
-    aRows.clear();
-    if(myRows.empty()) return;
-    int jEnd = myRows.size();
-    //Define Titles & Units
-    theTable2D.myColumnTitles.resize(jEnd);
-    theTable2D.myColumnUnits.resize(jEnd);
-    for(int j = 0; j < jEnd; j++){
-      theTable2D.myColumnTitles[j] = myRows[j].myTitle;
-      theTable2D.myColumnUnits[j] = myRows[j].myUnit;
-    }
-    //Define Rows
-    int iEnd = myRows[0].myValues.size();
-    for(int i = 0; i < iEnd; i++){
-      TRow aNewRow;
-      aNewRow.myTitle = myColumnTitles[i];
-      aNewRow.myUnit = myColumnUnits[i];
-      aNewRow.myValues.resize(jEnd);
-      for(int j = 0; j < jEnd; j++){
-       aNewRow.myValues[j] = myRows[j].myValues[i];
-      }
-      aRows.push_back(aNewRow);
-    }
-  }
-};
-
-typedef vector<TTable2D> TTableCont;
-
-int getLine(ifstream& theStmIn, QString& theString){
-  char tmp;
-  ostrstream aStrOut;
-  while(theStmIn.get(tmp)){
-    aStrOut<<tmp;
-    if(tmp == '\n') break;
-  }
-  aStrOut<<ends;
-  theString = aStrOut.str();
-  return !theStmIn.eof();
-}
-
-void ImportTables(const char* theFileName, TTableCont& theTableCont){
-  ifstream aStmIn;
-  QFileInfo aFileInfo( theFileName );
-  if( !aFileInfo.isFile() || !aFileInfo.isReadable() || !aFileInfo.size() )
-    return;
-  aStmIn.open( theFileName );
-  QString aTmp;
-  do {
-    // find beginning of table (tables are separated by empty lines)
-    while( getLine( aStmIn, aTmp ) && aTmp.stripWhiteSpace() == "");
-    TTable2D aTable2D;
-    if(MYDEBUG) cout << "New table is found" << endl;
-    while( !aStmIn.eof() && aTmp.stripWhiteSpace() != "" ){
-      QString data = aTmp.stripWhiteSpace();
-      QString cmt = "";
-      QString keyword = "";
-      // split string to data and comment (comment starts from '#' symbol)
-      int index = aTmp.find( "#" );
-      if ( index >= 0 ) {
-       data = aTmp.left( index ).stripWhiteSpace();
-       cmt = aTmp.mid( index+1 ).stripWhiteSpace();
-      }
-      // if comment is not empty, try to get keyword from it (separated by ':' symbol)
-      if ( !cmt.isEmpty() ) {
-       int index1 = cmt.find( ":" );
-       if ( index1 >= 0 ) {
-         QString tmpstr = cmt.left( index1 ).stripWhiteSpace();
-         if ( tmpstr == QString( "TITLE" ) ||
-              tmpstr == QString( "COLUMN_TITLES" ) ||
-              tmpstr == QString( "COLUMN_UNITS" ) ||
-              tmpstr == QString( "COMMENT" ) ) {
-           keyword = tmpstr;
-           cmt = cmt.mid( index1+1 ).stripWhiteSpace();
-         }
-       }
-      }
-      // if data is empty, process only comment
-      if ( data.isEmpty() ) {
-       // if keyword is found, try to process it
-       // elsewise it is a simple comment, just ignore it
-       if ( !keyword.isEmpty() ) {
-         if ( keyword == QString( "TITLE" ) ) {
-           QString title = cmt;
-           if ( aTable2D.myTitle != "" )
-             title = QString( aTable2D.myTitle.c_str() ) + QString( " " ) + title;
-           if(MYDEBUG) cout << "...Table TITLE is: " << title.latin1() << endl;
-           aTable2D.myTitle = title.latin1();
-         }
-         else if ( keyword == QString( "COLUMN_TITLES" ) ) {
-           // comment may contain column headers
-           QStringList aStrList = QStringList::split( "|", cmt );
-           if(MYDEBUG) cout << "...Column TITLES are: ";
-           for ( int i = 0; i < aStrList.count(); i++ ) {
-             QString tmpstr = aStrList[ i ].stripWhiteSpace();
-             if(MYDEBUG) cout << tmpstr.latin1() << " ";
-             aTable2D.myColumnTitles.push_back( tmpstr.latin1() );
-           }
-           if(MYDEBUG) cout << endl;
-         }
-         else if ( keyword == QString( "COLUMN_UNITS" ) ) {
-           // comment may contain column units
-           QStringList aStrList = QStringList::split( " ", cmt );
-           if(MYDEBUG) cout << "...Column UNITS are: ";
-           for ( int i = 0; i < aStrList.count(); i++ ) {
-             QString tmpstr = aStrList[ i ].stripWhiteSpace();
-             if(MYDEBUG) cout << tmpstr.latin1() << " ";
-             aTable2D.myColumnUnits.push_back( tmpstr.latin1() );
-           }
-           if(MYDEBUG) cout << endl;
-         }
-         else if ( keyword == QString( "COMMENT" ) ) {
-           // keyword 'COMMENT' processing can be here
-           // currently it is ignored
-           if(MYDEBUG) cout << "...COMMENT: " << cmt.latin1() << endl;
-         }
-       }
-       else {
-         if(MYDEBUG) cout << "...comment: " << cmt.latin1() << endl;
-         // simple comment processing can be here
-         // currently it is ignored
-       }
-      }
-      // if data is not empty, try to process it
-      else {
-       TRow aRow;
-       if(MYDEBUG) cout << "...New row is found: " << endl;
-       if ( !cmt.isEmpty() ) {
-         aRow.myTitle = cmt.latin1();
-         if(MYDEBUG) cout << "......ROW TITLE is: " << cmt.latin1() << endl;
-       }
-       QString datar1 = data.replace(QRegExp("\t"), " ");
-       QStringList aValList = QStringList::split( " ", datar1 );
-       for ( int i = 0; i < aValList.count(); i++ ) {
-         if ( aValList[i].stripWhiteSpace() != "" ) {
-           TValue aVal = aValList[i].stripWhiteSpace().latin1();
-           aRow.myValues.push_back( aVal );
-         }
-       }
-       if( aRow.myValues.size() > 0 )
-         aTable2D.myRows.push_back( aRow );
-       // ************** OLD CODE ******************
-       /*
-       TValue aVal;
-       istrstream aStream( data );
-       aStream.precision( STRPRECISION );
-       while( aStream >> aVal ) {
-         aRow.myValues.push_back( aVal );
-       }
-       if( aRow.myValues.size() > 0 )
-         aTable2D.myRows.push_back( aRow );
-       */
-       // ************** OLD CODE ******************
-      }
-      getLine( aStmIn, aTmp );
-    }
-    if( aTable2D.Check() ) {
-      if(MYDEBUG) cout << "aTable2D is checked OK " << aTable2D.myTitle << endl;
-      theTableCont.push_back( aTable2D );
-    }
-  }
-  while( !aStmIn.eof() );
-  aStmIn.close();
-  if(MYDEBUG) cout << "After close" << endl;
-}
+SALOMEDS::SObject_var
+VISU::ImportTables(const char* theFileName, SALOMEDS::Study_ptr theStudy)
+{
+  TTableContainer aContainer;
+  ImportTables( theFileName, aContainer );
+  if ( aContainer.empty() ) 
+    return SALOMEDS::SObject::_nil();
 
-SALOMEDS::SObject_var VISU::ImportTables(const char* theFileName, SALOMEDS::Study_ptr theStudy){
-  TTableCont aTableCont;
-  ImportTables(theFileName,aTableCont);
-  if(aTableCont.empty()) return SALOMEDS::SObject::_nil();
   SALOMEDS::StudyBuilder_var aStudyBuilder = theStudy->NewBuilder();
   SALOMEDS::SComponent_var theSComponent = VISU::FindOrCreateVisuComponent(theStudy);
   SALOMEDS::SObject_var aFileObject = aStudyBuilder->NewObject(theSComponent);
@@ -1386,26 +1206,28 @@ SALOMEDS::SObject_var VISU::ImportTables(const char* theFileName, SALOMEDS::Stud
     aStudyBuilder->FindOrCreateAttribute(aFileObject, "AttributeName");
   SALOMEDS::AttributeName_var aName = SALOMEDS::AttributeName::_narrow(anAttr);
   QFileInfo aFileInfo(theFileName);
-  aName->SetValue(aFileInfo.fileName().latin1());
+  aName->SetValue( aFileInfo.fileName().toLatin1().data());
   anAttr = aStudyBuilder->FindOrCreateAttribute(aFileObject, "AttributeString");
   SALOMEDS::AttributeString_var aComment = SALOMEDS::AttributeString::_narrow(anAttr);
   QString aString;
   aString.sprintf("myComment=ImportTables;myFileName=%s",
-                 aFileInfo.absFilePath().latin1());
-  aComment->SetValue(aString.latin1());
-  for(int i = 0, iEnd = aTableCont.size(); i < iEnd; i++){
-    const TTable2D& aTable2D = aTableCont[i];
+                 aFileInfo.absoluteFilePath().toLatin1().data());
+  aComment->SetValue(aString.toLatin1().data());
+  for(int i = 0, iEnd = aContainer.size(); i < iEnd; i++){
+    PTableIDMapper aTableIDMapper = aContainer[i];
+    const TTable2D& aTable2D = *aTableIDMapper;
     SALOMEDS::SObject_var aRealObject = aStudyBuilder->NewObject(aFileObject);
     anAttr = aStudyBuilder->FindOrCreateAttribute(aRealObject, "AttributeName");
     aName = SALOMEDS::AttributeName::_narrow(anAttr);
-    if(MYDEBUG) cout<<"aTable2D.myTitle = "<<aTable2D.myTitle<<endl;
-    if(aTable2D.myTitle != "")
+    if(MYDEBUG) MESSAGE("aTable2D.myTitle = "<<aTable2D.myTitle);
+    if ( aTable2D.myTitle != "" ) {
       aName->SetValue(aTable2D.myTitle.c_str());
-    else{
+    } else {
       QString aNewName;
       aNewName.sprintf("Table:%d",i);
-      aName->SetValue(aNewName.latin1());
+      aName->SetValue(aNewName.toLatin1().data());
     }
+
     anAttr = aStudyBuilder->FindOrCreateAttribute(aRealObject, "AttributeTableOfReal");
     SALOMEDS::AttributeTableOfReal_var aTableOfReal = SALOMEDS::AttributeTableOfReal::_narrow(anAttr);
     aTableOfReal->SetTitle(aTable2D.myTitle.c_str());
@@ -1414,13 +1236,13 @@ SALOMEDS::SObject_var VISU::ImportTables(const char* theFileName, SALOMEDS::Stud
     int kEnd = aNewTable2D.myRows[0].myValues.size();
     aTableOfReal->SetNbColumns(kEnd);
     for(int j = 0, jEnd = aNewTable2D.myRows.size(); j < jEnd; j++){
-      if(MYDEBUG) cout<<"j = "<<j<<"; kEnd = "<<kEnd<<endl;
+      if(MYDEBUG) MESSAGE("j = "<<j<<"; kEnd = "<<kEnd);
 
       for(int k = 0; k < kEnd; k++){
        QString aVal = aNewTable2D.myRows[j].myValues[k].c_str();
        bool anIsOk = false;
        double aValue = aVal.toDouble(&anIsOk);
-       if(anIsOk && !aVal.contains("NAN",false) && !aVal.contains("INF",false))
+       if(anIsOk && !aVal.contains("NAN",Qt::CaseInsensitive) && !aVal.contains("INF",Qt::CaseInsensitive))
          aTableOfReal->PutValue(aValue,j+1,k+1);
       }
 
@@ -1436,50 +1258,59 @@ SALOMEDS::SObject_var VISU::ImportTables(const char* theFileName, SALOMEDS::Stud
 template<class TTableAttr> bool ExportTableToFile(const TTableAttr& aTabAttr,
                                                  const char* theFileName)
 {
-  if (!CORBA::is_nil(aTabAttr)) {
-    QFile aFile(theFileName);
-    aFile.open(IO_WriteOnly);
+  if (CORBA::is_nil(aTabAttr))
+    return false;
 
-    /* extract the tabe info and write it into file */
+  QFile aFile(theFileName);
+  aFile.open(QIODevice::WriteOnly);
 
-    QString aTitle(aTabAttr->GetTitle()); /*Table title*/
-    int aRowsNb = aTabAttr->GetNbRows();
-    int aColNb  = aTabAttr->GetNbColumns();
+  /* extract the table info and write it into file */
 
-    SALOMEDS::StringSeq_var aRowTitles = aTabAttr->GetRowTitles();
-    QString anAbscissTitle(aRowTitles[0]); /*Absciss row title (X coord)*/
-    anAbscissTitle.stripWhiteSpace();
+  QString aTitle(aTabAttr->GetTitle()); /*Table title*/
+  int aRowsNb = aTabAttr->GetNbRows();
+  int aColNb  = aTabAttr->GetNbColumns();
 
-    SALOMEDS::StringSeq_var aRowUnits = aTabAttr->GetRowUnits();
-    QString anAbscissUnit(aRowUnits[0]);
-    anAbscissUnit.stripWhiteSpace();
+  SALOMEDS::StringSeq_var aRowTitles = aTabAttr->GetRowTitles();
+  SALOMEDS::StringSeq_var aRowUnits = aTabAttr->GetRowUnits();
+  SALOMEDS::StringSeq_var aColumnTitles = aTabAttr->GetColumnTitles();
 
-    SALOMEDS::StringSeq_var aColumnTitles = aTabAttr->GetColumnTitles();
+  /* The given table is rare (some cells is empty) or not? */
+  bool isRareTable = false;
+  for (int i = 1; i <= aRowsNb; i++)
+    for (int j = 1; j <= aColNb && !isRareTable; j++)
+      isRareTable = !aTabAttr->HasValue(i,j);
+
+  QString aLine;
+  if (isRareTable) {
+    /* Separate the given table to 2D tables and write these ones to the file */
+    QString anAbscissTitle(aRowTitles[0]); /*Absciss row title (X coord)*/
+    anAbscissTitle.trimmed();
+    QString anAbscissUnit(aRowUnits[0]);
+    anAbscissUnit.trimmed();
     if (aRowsNb > 2 && aTitle.length() )  aTitle = aTitle + " - ";
 
-    QString aLine;
     for (int i = 2; i <= aRowsNb; i++ )
       {
        /* TITLE */
        QString anOrdinate(aRowTitles[i-1]), aTail;
-       anOrdinate.stripWhiteSpace();
+       anOrdinate.trimmed();
 
        aLine = "#TITLE: " + aTitle +
          ((anOrdinate.length())?  anOrdinate :
                                  (aRowsNb>2)? aTail.sprintf("%d",i-1) : aTail.sprintf("") ) + "\n";
-       aFile.writeBlock(aLine, aLine.length() );
+       aFile.write(aLine.toLatin1() );
 
        /* COLUMN_TITLES */
        if ( anAbscissTitle.length() || anOrdinate.length() ) {
          aLine = "#COLUMN_TITLES: " + anAbscissTitle + " | " + anOrdinate + "\n";
-         aFile.writeBlock(aLine, aLine.length() );
+         aFile.write(aLine.toLatin1() );
        }
 
        /* COLUMN_UNITS */
        aLine = anAbscissUnit + " " +aRowUnits[i-1];
-       if (!aLine.stripWhiteSpace().isEmpty()) {
+       if (!aLine.trimmed().isEmpty()) {
          aLine = "#COLUMN_UNITS: " + aLine  + "\n";
-         aFile.writeBlock(aLine, aLine.length() );
+         aFile.write(aLine.toLatin1() );
        }
 
        /* CURVE COORDINATES */
@@ -1489,20 +1320,66 @@ template<class TTableAttr> bool ExportTableToFile(const TTableAttr& aTabAttr,
              aLine = aLine.sprintf("%.16g %.16g",
                                    (double)(aTabAttr->GetValue(1,j)),
                                    (double)(aTabAttr->GetValue(i,j)));  /* aTabAttr->GetValue(1,j) - X coord */
-             if ( !aLine.stripWhiteSpace().isEmpty() ) {
+             if ( !aLine.trimmed().isEmpty() ) {
                QString aColTitle(aColumnTitles[j-1]);
-               if ( !aColTitle.stripWhiteSpace().isEmpty() )
+               if ( !aColTitle.trimmed().isEmpty() )
                  aLine = aLine + "  #TITLE: " + aColTitle ;
-               aFile.writeBlock(aLine + "\n", aLine.length() + 1);
+               aFile.write(QString(aLine + "\n").toLatin1() );
              }
            }
          }
-       aFile.writeBlock("\n", 1);
+       aFile.write("\n", 1);
       }
-    aFile.close();
-    return true;
-  }
-  return false;
+  }//end of if (isRareTable)
+  else {
+    /* Write the table in the file without separating */
+    /* TITLE */
+    aLine = "#TITLE: " + aTitle + "\n";
+    aFile.write(aLine.toLatin1());
+
+    /* COLUMN_TITLES  and COLUMN_UNITS */
+    QString aTitlesSep = "";
+    QString aUnitsSep  = "";
+    QString aTitlesStr = "#COLUMN_TITLES: ";
+    QString aUnitsStr  = "#COLUMN_UNITS: ";
+    for (int i = 1; i <= aRowsNb; i++)
+      {
+       if (!QString(aRowTitles[i-1]).trimmed().isEmpty()) {
+         aTitlesStr += (aTitlesSep + aRowTitles[i-1]);
+         if (aTitlesSep.isEmpty()) aTitlesSep = " | ";
+       }
+       if (!QString(aRowUnits[i-1]).trimmed().isEmpty()) {
+         aUnitsStr += (aUnitsSep + aRowUnits[i-1]);
+         if (aUnitsSep.isEmpty()) aUnitsSep = " ";
+       }
+      }
+    aTitlesStr += "\n";
+    aUnitsStr  += "\n";
+    aFile.write(aTitlesStr.toLatin1());
+    aFile.write(aUnitsStr.toLatin1());
+
+    /* CURVE COORDINATES */
+    QString aSep, aValue, aColTitle;
+    for (int j = 1; j <= aColNb; j++)
+      {
+       aLine = ""; aSep  = "";
+       for (int i = 1; i <= aRowsNb; i++)
+         {
+           aLine += (aSep + aValue.sprintf("%.16g", (double)(aTabAttr->GetValue(i,j))));
+           if (aSep.isEmpty()) aSep = " ";
+         }
+       if (!aLine.trimmed().isEmpty()) {
+         aColTitle = aColumnTitles[j-1];
+         if (!aColTitle.trimmed().isEmpty())
+           aLine = aLine + "  #TITLE: " + aColTitle;
+         aLine += "\n";
+         aFile.write(aLine.toLatin1());
+       }
+      }
+  } //end of else
+
+  aFile.close();
+  return true;
 }
 
 bool VISU::ExportTableToFile(SALOMEDS::SObject_ptr theTable, const char* theFileName)
index dcdecc6b5adad2066081a06ba0ab622cff7a540f..4303f6b6ceb3e72712c7efcd46f9b26d3e43c5ea 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_Table_i.hh
 //  Author : Vadim SANDLER
 //  Module : VISU
-
+//
 #ifndef VISU_Table_i_HeaderFile
 #define VISU_Table_i_HeaderFile
 
 #include "VISU_PrsObject_i.hh"
 
-#include <qstringlist.h>
+#include <QStringList>
 
 class SPlot2d_Curve;
 
index 6d82f2673c4217b68ee895c4d684602446183029..3437df86b508ce7af261c8016e571065917d891b 100644 (file)
@@ -1,32 +1,34 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
 //  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VISU_TimeAnimation.cxx
 //  Author : Vitaly SMETANNIKOV
 //  Module : VISU
-
+//
 #include "VISU_TimeAnimation.h"
 
 #ifdef WNT
 #include <windows.h>
 #include <vfw.h>
-#include <qmessagebox.h>
+#include <QMessageBox>
 #endif
 
 #include "VISUConfig.hh"
@@ -36,7 +38,7 @@
 #include "VISU_Mesh_i.hh"
 #include "VISU_IsoSurfaces_i.hh"
 #include "VISU_DeformedShape_i.hh"
-#include "VISU_ScalarMapOnDeformedShape_i.hh"
+#include "VISU_DeformedShapeAndScalarMap_i.hh"
 #include "VISU_CutPlanes_i.hh"
 #include "VISU_Plot3D_i.hh"
 #include "VISU_CutLines_i.hh"
 
 #include "SVTK_ViewWindow.h"
 
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 
 #include "SUIT_ResourceMgr.h"
 #include "SUIT_Application.h"
 #include "SUIT_Session.h"
 #include "SUIT_Study.h"
+#include "SUIT_MessageBox.h"
 
 #include "SALOMEDSClient_AttributeString.hxx"
 #include "SALOMEDSClient_AttributeName.hxx"
 
 #include "Utils_ExceptHandlers.hxx"
 
-#include <qpixmap.h>
-#include <qimage.h>
-#include <qstrlist.h>
-#include <qdir.h>
+#include <QPixmap>
+#include <QImage>
+#include <QImageWriter>
+#include <QStringList>
+#include <QDir>
 
 #if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100
 #define NO_CAS_CATCH
@@ -80,6 +84,7 @@
 #include <Standard_ErrorHandler.hxx>
 #endif
 
+using namespace std;
 
 //------------------------------------------------------------------------
 namespace VISU 
@@ -184,8 +189,7 @@ VISU_TimeAnimation::VISU_TimeAnimation (_PTR(Study) theStudy,
   if (!CORBA::is_nil(theView3D)) {
     VISU::View3D_i* pView = dynamic_cast<VISU::View3D_i*>(GetServant(theView3D).in());
     SUIT_ViewWindow* aVW = pView->GetViewWindow();
-    myView = dynamic_cast<SVTK_ViewWindow*>(aVW);
-    connect( myView, SIGNAL( destroyed() ), this, SLOT( onViewDeleted() ) );
+    setViewer( dynamic_cast<SVTK_ViewWindow*>(aVW) );
   }
 
   myAnimationMode = VISU::Animation::PARALLEL;
@@ -207,21 +211,15 @@ VISU_TimeAnimation::VISU_TimeAnimation (_PTR(Study) theStudy,
 //------------------------------------------------------------------------
 VISU_TimeAnimation::~VISU_TimeAnimation()
 {
-  if (!myView) {
-    MESSAGE("Viewer is not defined for animation");
-    return;
-  }
-
-  if (QThread::running() && !QThread::finished()) {
-    //myExecutionState->SetActive(false);
+  if (QThread::isRunning() && !QThread::isFinished()) {
     stopAnimation();
     QThread::wait(500);
-    if (QThread::running() && !QThread::finished()) {
+    if (QThread::isRunning() && !QThread::isFinished()) {
       QThread::terminate();
     }
   }
 
-  for (int i = 0; i < getNbFields(); i++) {
+  for (int i = 0; i < getNbFields() && myView; i++) {
     clearData(myFieldsLst[i]);
   }
   clearFieldData();
@@ -250,6 +248,12 @@ VISU_TimeAnimation::~VISU_TimeAnimation()
 }
 
 
+//------------------------------------------------------------------------
+void VISU_TimeAnimation::_connectView()
+{
+  connect( myView, SIGNAL( destroyed() ), this, SLOT( onViewDeleted() ) );
+}
+
 //------------------------------------------------------------------------
 bool VISU_TimeAnimation::addField (_PTR(SObject) theField)
 {
@@ -260,6 +264,15 @@ bool VISU_TimeAnimation::addField (_PTR(SObject) theField)
   aNewData.myNbFrames = 0;
   aNewData.myPrsType = VISU::TSCALARMAP;
   aNewData.myOffset[0] = aNewData.myOffset[1] = aNewData.myOffset[2] = 0;
+
+  // initialize myResult in aNewData
+  _PTR(SObject) aSObj = theField->GetFather();
+  aSObj = aSObj->GetFather();
+  aSObj = aSObj->GetFather();
+  CORBA::Object_var anObject = VISU::ClientSObjectToObject(aSObj);
+  if (CORBA::is_nil(anObject)) return false;
+  aNewData.myResult = dynamic_cast<VISU::Result_i*>(VISU::GetServant(anObject).in());
+
   VISU::Storable::TRestoringMap aMap = VISU::Storable::GetStorableMap(aNewData.myField);
   if(VISU::Storable::FindValue(aMap,"myComment") != "FIELD")
     return false;
@@ -364,7 +377,7 @@ namespace
                        bool theIsRangeDefined,
                        CORBA::Double theTimeMin,
                        CORBA::Double theTimeMax,
-                       QValueList<long> theSequence)
+                       QList<long> theSequence)
   {
     _PTR(ChildIterator) anIter = theStudy->NewChildIterator(theData.myField);
     anIter->Next(); // First is reference on support
@@ -395,7 +408,7 @@ namespace
          break;
       }
       else if (isSequenceDefined) {
-       aSequenceId = theSequence.findIndex( aSequenceIndex );
+       aSequenceId = theSequence.indexOf( aSequenceIndex );
        if( aSequenceId == -1 )
          continue;
       }
@@ -409,9 +422,9 @@ namespace
       bool anIsCreated = false;
       TPrs3d* aPresent = new TPrs3d(VISU::ColoredPrs3d_i::EDoNotPublish);
       aPresent->SetCResult(theResult);
-      aPresent->SetMeshName(aMeshName.latin1());
+      aPresent->SetMeshName(aMeshName.toLatin1().data());
       aPresent->SetEntity(anEntity);
-      aPresent->SetFieldName(aFieldName.latin1());
+      aPresent->SetFieldName(aFieldName.toLatin1().data());
       aPresent->SetTimeStampNumber(aTimeStampId);
       try{       
 #ifdef NO_CAS_CATCH
@@ -453,7 +466,7 @@ namespace
   }
 }
 
-double getMinFieldsValue( QValueList<FieldData>& theFieldsLst )
+double getMinFieldsValue( QList<FieldData>& theFieldsLst )
 {
   // for successive animation mode only
   double aRes;
@@ -471,7 +484,7 @@ double getMinFieldsValue( QValueList<FieldData>& theFieldsLst )
   return aRes;
 }
 
-double getMaxFieldsValue( QValueList<FieldData>& theFieldsLst )
+double getMaxFieldsValue( QList<FieldData>& theFieldsLst )
 {
   // for successive animation mode only
   double aRes;
@@ -489,7 +502,12 @@ double getMaxFieldsValue( QValueList<FieldData>& theFieldsLst )
   return aRes;
 }
 
-void VISU_TimeAnimation::generatePresentations(CORBA::Long theFieldNum) {
+void VISU_TimeAnimation::generatePresentations(CORBA::Long theFieldNum)
+{
+  int nbf = myFieldsLst.size();
+  if( theFieldNum<0 || theFieldNum>nbf-1 )
+    return;
+
   FieldData& aData = myFieldsLst[theFieldNum];
 
   // Delete previous presentations
@@ -503,7 +521,7 @@ void VISU_TimeAnimation::generatePresentations(CORBA::Long theFieldNum) {
   aData.myPrs.resize(aData.myNbTimes,NULL);
   aData.myTiming.resize(aData.myNbTimes);
 
-  QValueList<long> aSequence;
+  QList<long> aSequence;
   if( isSequenceDefined() )
   {
     bool ok = getIndicesFromSequence( mySequence, aSequence );
@@ -595,13 +613,14 @@ void VISU_TimeAnimation::generatePresentations(CORBA::Long theFieldNum) {
                                         aSequence);
     break;
   case VISU::TSCALARMAPONDEFORMEDSHAPE: // Scalar map on deformed shape
-    GeneratePresentations<ScalarMapOnDeformedShape_i>(myStudy,
-                                                     aData,
-                                                     aResult,
-                                                     isRangeDefined(),
-                                                     myTimeMinVal,
-                                                     myTimeMaxVal,
-                                                     aSequence);
+  case VISU::TDEFORMEDSHAPEANDSCALARMAP:
+    GeneratePresentations<DeformedShapeAndScalarMap_i>(myStudy,
+                                                      aData,
+                                                      aResult,
+                                                      isRangeDefined(),
+                                                      myTimeMinVal,
+                                                      myTimeMaxVal,
+                                                      aSequence);
     break;
   default:
     MESSAGE("Not implemented for this presentation type: " << aData.myPrsType);
@@ -617,7 +636,7 @@ void VISU_TimeAnimation::generatePresentations(CORBA::Long theFieldNum) {
       myFieldsAbsFrames.push_back(aData.myNbFrames);
 
     if (theFieldNum == getNbFields() - 1) {
-      if ( aData.myPrsType != VISU::TGAUSSPOINTS) {
+      if ( aData.myPrsType != VISU::TGAUSSPOINTS && aData.myPrsType != TDEFORMEDSHAPEANDSCALARMAP && aData.myPrsType != TSCALARMAPONDEFORMEDSHAPE) {
 
        // Initialize the MinMax controller
        VISU::PCompositeMinMaxController aMinMaxController(new VISU::TCompositeMinMaxController());
@@ -729,6 +748,10 @@ void VISU_TimeAnimation::clearView()
 
 //------------------------------------------------------------------------
 void VISU_TimeAnimation::_visibilityOff(int num_field, int num_frame) {
+  if (!myView) {
+    MESSAGE("Viewer is not defined for animation");
+    return;
+  }
   if ( num_field < 0 || num_frame < 0 ) return;
   FieldData& aData = myFieldsLst[num_field];
   if ( aData.myActors.empty() ) return;
@@ -784,12 +807,6 @@ void VISU_TimeAnimation::startAnimation()
                    (this,&VISU_TimeAnimation::_startAnimation));
 }
 
-//------------------------------------------------------------------------
-CORBA::Boolean VISU_TimeAnimation::isRunning()
-{
-  return myExecutionState->IsActive();
-}
-
 //------------------------------------------------------------------------
 void VISU_TimeAnimation::_nextFrame() {
   if (!myView) {
@@ -1090,6 +1107,21 @@ VISU::ColoredPrs3d_ptr VISU_TimeAnimation::getPresentation(CORBA::Long theField,
   return myFieldsLst[theField].myPrs[theFrame]->_this();
 }
 
+//------------------------------------------------------------------------
+void VISU_TimeAnimation::setPresentationType(CORBA::Long theFieldNum, VISU::VISUType theType) {
+  if ( theFieldNum < 0 || theFieldNum >= myFieldsLst.size() )
+    return;
+
+  myFieldsLst[theFieldNum].myPrsType = theType;
+}
+
+//------------------------------------------------------------------------
+VISU::VISUType VISU_TimeAnimation::getPresentationType(CORBA::Long theFieldNum) {
+  if ( theFieldNum < 0 || theFieldNum >= myFieldsLst.size() )
+    return VISU::TNONE;
+  
+  return myFieldsLst[theFieldNum].myPrsType;
+}
 
 //------------------------------------------------------------------------
 CORBA::Long VISU_TimeAnimation::getNbFrames() {
@@ -1146,7 +1178,7 @@ std::pair<int,long> VISU_TimeAnimation::getRelativeFrameNumber(long theFrame)
 }
 
 //------------------------------------------------------------------------
-void VISU_TimeAnimation::parallelAnimation( bool& theIsDumping, QValueList<int>& theIndexList )
+void VISU_TimeAnimation::parallelAnimation( bool& theIsDumping, QList<int>& theIndexList )
 {
   double k = 1;
   double aOneVal = 1;
@@ -1172,11 +1204,13 @@ void VISU_TimeAnimation::parallelAnimation( bool& theIsDumping, QValueList<int>&
          if (aData.myActors[aData.myNbFrames-1] != 0)
            visibilityOff(i, aData.myNbFrames-1);
         }
-        if (aData.myActors[myFrame] != 0) {
+        if (aData.myActors[myFrame] != 0 && myView) {
           ProcessVoidEvent(new TVoidMemFunEvent<VISU_Actor>(aData.myActors[myFrame],
                                                             &VISU_Actor::VisibilityOn));
         }
       }
+      if (!myView)
+       return;
       bool repainArg = false;
       ProcessVoidEvent(new TVoidMemFun1ArgEvent<SVTK_ViewWindow,bool>(myView,
                                                                       &SVTK_ViewWindow::Repaint,
@@ -1237,7 +1271,7 @@ void VISU_TimeAnimation::parallelAnimation( bool& theIsDumping, QValueList<int>&
 }
 
 //------------------------------------------------------------------------
-void VISU_TimeAnimation::successiveAnimation( bool& theIsDumping, QValueList<int>& theIndexList )
+void VISU_TimeAnimation::successiveAnimation( bool& theIsDumping, QList<int>& theIndexList )
 {
   if (myFrame >= getNbFrames() - 1)
   {
@@ -1284,11 +1318,13 @@ void VISU_TimeAnimation::successiveAnimation( bool& theIsDumping, QValueList<int
             if (aData.myActors[aData.myNbFrames-1] != 0)
               visibilityOff(aFieldId, aData.myNbFrames-1);
           }
-          if (aData.myActors[aFrame] != 0) {
+          if (aData.myActors[aFrame] != 0 && myView) {
             ProcessVoidEvent(new TVoidMemFunEvent<VISU_Actor>(aData.myActors[aFrame],
                                                               &VISU_Actor::VisibilityOn));
           }
 
+         if (!myView)
+           return;
           bool repainArg = false;
           ProcessVoidEvent(new TVoidMemFun1ArgEvent<SVTK_ViewWindow,bool>(myView,
                                                                           &SVTK_ViewWindow::Repaint,
@@ -1348,30 +1384,36 @@ void VISU_TimeAnimation::successiveAnimation( bool& theIsDumping, QValueList<int
 //------------------------------------------------------------------------
 void VISU_TimeAnimation::saveImages( int theFieldId, 
                                     double& theOneVal, int& theNbFiles, 
-                                    QValueList<int>& theIndexList )
+                                    QList<int>& theIndexList )
 {
   if (myDumpFormat.compare("AVI") != 0) {
     QString aFile(myDumpPath);
 
+    int aFrameNb = myFrame; // parallel animation mode
+    if ( myAnimationMode == VISU::Animation::SUCCESSIVE ) // successive animation mode
+      aFrameNb = getRelativeFrameNumber(myFrame).second;
+
+    int aMaxNb = myFieldsLst[theFieldId].myTiming.size();
+    int nbDigits = QString("%1").arg(aMaxNb).length();
+    QString aFormat = QString("%.%1d_").arg(nbDigits);
+
     QString aName;
-    if ( myAnimationMode == VISU::Animation::PARALLEL ) // parallel animation mode
-      aName = QString("%1").arg(myFieldsLst[theFieldId].myTiming[myFrame]);
-    else // successive animation mode
-      aName = QString("%1").arg(myFieldsLst[theFieldId].myTiming[getRelativeFrameNumber(myFrame).second]);
+    aName.sprintf(aFormat.toLatin1().data(), aFrameNb);
+    aName += QString("%1").arg(myFieldsLst[theFieldId].myTiming[aFrameNb]);
 
     int aPos = -1;
-    while ((aPos = aName.find(".")) > -1 )
+    while ((aPos = aName.indexOf(".")) > -1 )
       aName.replace(aPos, 1, "_");
     aFile += aName;
     aFile += ".";
-    aFile += myDumpFormat.lower();
+    aFile += myDumpFormat.toLower();
     ProcessVoidEvent(new TVoidMemFunEvent<SVTK_ViewWindow>
                     (myView,&SVTK_ViewWindow::RefreshDumpImage)); // IPAL13602
     ProcessEvent(new TMemFun2ArgEvent<SUIT_ViewWindow,bool,const QString&,const QString&>
                 (myView,&SUIT_ViewWindow::dumpViewToFormat,aFile,myDumpFormat));
   } else {
     QFileInfo aFileInfo(myDumpPath);
-    QString aDirPath = aFileInfo.dirPath(true);
+    QString aDirPath = aFileInfo.absolutePath();
     QString aBaseName = aFileInfo.fileName();
     
     switch (myFrame) {
@@ -1393,7 +1435,7 @@ void VISU_TimeAnimation::saveImages( int theFieldId,
     
     QString aFile = aDirPath + QDir::separator() + aBaseName;
     aFile += "_";
-    aFile += QString("%1").arg(myFileIndex).rightJustify(8, '0');
+    aFile += QString("%1").arg(myFileIndex).rightJustified(8, '0');
     aFile += ".jpeg";
     
     /* check image size is divisable 16
@@ -1424,7 +1466,7 @@ void VISU_TimeAnimation::run()
 
   bool isDumping = !myDumpPath.isEmpty();
   myFileIndex = 0;
-  QValueList<int> anIndexList;
+  QList<int> anIndexList;
 
   if ( myAnimationMode == VISU::Animation::PARALLEL ) // parallel animation mode
     parallelAnimation( isDumping, anIndexList );
@@ -1436,7 +1478,7 @@ void VISU_TimeAnimation::run()
     double aFPS = 17.3 * mySpeed;
 
     QFileInfo aFileInfo(myDumpPath);
-    QString aDirPath = aFileInfo.dirPath(true);
+    QString aDirPath = aFileInfo.absolutePath();
     QString aBaseName = aFileInfo.fileName();
 
     // add missing files
@@ -1446,13 +1488,13 @@ void VISU_TimeAnimation::run()
       int aStartIndex = anIndexList[0], anEndIndex;
       for (int i = 1; i < anIndexList.count(); i++) {
        anEndIndex = anIndexList[i];
-       QString aCurFile = aFFile.arg(QString::number(aStartIndex).rightJustify(8, '0'));
+       QString aCurFile = aFFile.arg(QString::number(aStartIndex).rightJustified(8, '0'));
        QStringList aCommands;
        for (int j = aStartIndex+1; j < anEndIndex; j++) {
-         QString aFile = aFFile.arg(QString::number(j).rightJustify(8, '0'));
+         QString aFile = aFFile.arg(QString::number(j).rightJustified(8, '0'));
          aCommands.append(QString("ln -s %1 %2").arg(aCurFile).arg(aFile));
        }
-       system(aCommands.join(" ; \\\n").latin1());
+       system(aCommands.join(" ; \\\n").toLatin1().data());
        aStartIndex = anEndIndex;
       }
     }
@@ -1470,7 +1512,7 @@ void VISU_TimeAnimation::run()
     aCmd += QString(" -j %1").arg(aPattern);
     aCmd += " | yuv2lav";
     aCmd += QString(" -o %1").arg(myDumpPath);
-    system(aCmd.latin1());
+    system(aCmd.toLatin1().data());
 
     // remove temporary jpeg files
     aCmd = "( ";
@@ -1479,7 +1521,7 @@ void VISU_TimeAnimation::run()
     aCmd += QString(" | egrep '%1_[0-9]*.jpeg'").arg(aBaseName);
     aCmd += " | xargs rm";
     aCmd += " )";
-    system(aCmd.latin1());
+    system(aCmd.toLatin1().data());
   }
 
   if (myExecutionState->IsActive())
@@ -1505,7 +1547,7 @@ double VISU_TimeAnimation::getTimeValue (_PTR(SObject) theTimeStamp)
   if (theTimeStamp->FindAttribute(anAttr, "AttributeName")) {
     _PTR(AttributeName) aName (anAttr);
     QString aNameString (aName->Value().c_str());
-    int time_len = aNameString.find(',');
+    int time_len = aNameString.indexOf(',');
     if (time_len > -1)
       return aNameString.left(time_len).toDouble();
     else
@@ -1529,7 +1571,7 @@ void VISU_TimeAnimation::setAnimationSequence(const char* theSequence)
 //------------------------------------------------------------------------
 char* VISU_TimeAnimation::getAnimationSequence()
 {
-  return (char*)mySequence.latin1();
+  return strdup( mySequence.toLatin1().data() );
 }
 
 //------------------------------------------------------------------------
@@ -1539,13 +1581,13 @@ CORBA::Boolean VISU_TimeAnimation::isSequenceDefined()
 }
 
 //------------------------------------------------------------------------
-bool VISU_TimeAnimation::getIndicesFromSequence( QString theSequence, QValueList<long>& theIndices )
+bool VISU_TimeAnimation::getIndicesFromSequence( QString theSequence, QList<long>& theIndices )
 {
   bool isCorrect = true;
 
   theIndices.clear();
 
-  QStringList aList = QStringList::split( ",", theSequence );
+  QStringList aList = theSequence.split( ",", QString::SkipEmptyParts );
   QStringList::iterator it = aList.begin();
   QStringList::iterator itEnd = aList.end();
   for( ; it != itEnd; ++it )
@@ -1598,27 +1640,27 @@ bool VISU_TimeAnimation::getIndicesFromSequence( QString theSequence, QValueList
 std::string VISU_TimeAnimation::setDumpFormat(const char* theFormat)
 {
   myDumpFormat = theFormat;
-  QStrList aDumpFormats = QImageIO::outputFormats();
+  QList<QByteArray> aDumpFormats = QImageWriter::supportedImageFormats();
   if (myDumpFormat.isEmpty() || 
-      (aDumpFormats.find(theFormat) < 0 && myDumpFormat.compare("AVI") != 0)) {
-    if (aDumpFormats.find("JPEG"))
+      (aDumpFormats.indexOf(theFormat) < 0 && myDumpFormat.compare("AVI") != 0)) {
+    if (aDumpFormats.indexOf("JPEG"))
       myDumpFormat = "JPEG";
     else
       myDumpFormat = aDumpFormats.at(0);
   }
-  return myDumpFormat.latin1();
+  return myDumpFormat.toLatin1().data();
 }
 
 //------------------------------------------------------------------------
 bool VISU_TimeAnimation::checkAVIMaker() const
 {
-  QStrList aDumpFormats = QImageIO::outputFormats();
-  if (aDumpFormats.find("JPEG") < 0) return false;
+  QList<QByteArray> aDumpFormats = QImageWriter::supportedImageFormats();
+  if (aDumpFormats.indexOf("JPEG") < 0) return false;
 
   QString aCmd("which ");
   aCmd += myAVIMaker;
   aCmd += " >& /dev/null";
-  int iErr = system(aCmd.latin1());
+  int iErr = system(aCmd.toLatin1().data());
   return (iErr == 0);
 }
 
@@ -1662,7 +1704,8 @@ std::string GetPresentationComment (VISU::VISUType thePrsType)
     aPrsCmt = VISU::GaussPoints_i::myComment;
     break;
   case VISU::TSCALARMAPONDEFORMEDSHAPE:
-    aPrsCmt = VISU::ScalarMapOnDeformedShape_i::myComment;
+  case VISU::TDEFORMEDSHAPEANDSCALARMAP:
+    aPrsCmt = VISU::DeformedShapeAndScalarMap_i::myComment;
     break;
   default:
     aPrsCmt = "Unknown presentation";
@@ -1674,8 +1717,13 @@ std::string GetPresentationComment (VISU::VISUType thePrsType)
 //------------------------------------------------------------------------
 SALOMEDS::SObject_ptr VISU_TimeAnimation::publishInStudy()
 {
-  if (myStudy->GetProperties()->IsLocked())
+  if (myStudy->GetProperties()->IsLocked()) {
+    SUIT_MessageBox::warning(0,
+                            QObject::tr("WRN_VISU_WARNING"),
+                            QObject::tr("WRN_STUDY_LOCKED"),
+                            QObject::tr("BUT_OK"));
     return SALOMEDS::SObject::_nil();
+  }
 
   _PTR(StudyBuilder) aStudyBuilder = myStudy->NewBuilder();
   aStudyBuilder->NewCommand();  // There is a transaction
@@ -1686,16 +1734,16 @@ SALOMEDS::SObject_ptr VISU_TimeAnimation::publishInStudy()
   aComment.sprintf("myComment=ANIMATION;myTimeMinVal=%g;myTimeMaxVal=%g;mySequence=%s;myMode=%d",
                    myTimeMinVal,
                   myTimeMaxVal,
-                  mySequence.latin1(),
+                  mySequence.toLatin1().data(),
                   myAnimationMode);
 
   string anEntry = VISU::CreateAttributes(myStudy,
                                          aSComponentEntry.c_str(),
                                          VISU::NO_ICON,
                                          VISU::NO_IOR,
-                                          GenerateName(),
+                                          GenerateName().toLatin1().data(),
                                          VISU::NO_PERFSITENT_REF,
-                                         aComment,
+                                         aComment.toLatin1().data(),
                                          true);
   myAnimEntry = anEntry.c_str();
   _PTR(SObject) aAnimSObject = myStudy->FindObjectID(anEntry.c_str());
@@ -1736,7 +1784,7 @@ void VISU_TimeAnimation::saveAnimation()
   if (myStudy->GetProperties()->IsLocked()) return;
   if (myAnimEntry.isEmpty()) return;
 
-  _PTR(SObject) aAnimSObject = myStudy->FindObjectID(myAnimEntry.latin1());
+  _PTR(SObject) aAnimSObject = myStudy->FindObjectID(myAnimEntry.toLatin1().data());
   if (!aAnimSObject) return;
 
   _PTR(StudyBuilder) aStudyBuilder = myStudy->NewBuilder();
@@ -1748,13 +1796,13 @@ void VISU_TimeAnimation::saveAnimation()
   aComment.sprintf("myComment=ANIMATION;myTimeMinVal=%g;myTimeMaxVal=%g;mySequence=%s;myMode=%d",
                    myTimeMinVal,
                   myTimeMaxVal,
-                  mySequence.latin1(),
+                  mySequence.toLatin1().data(),
                   myAnimationMode);
 
   _PTR(GenericAttribute) anAttr;
   anAttr = aStudyBuilder->FindOrCreateAttribute(aAnimSObject, "AttributeString");
   _PTR(AttributeString) aCmnt (anAttr);
-  aCmnt->SetValue(aComment.latin1());
+  aCmnt->SetValue(aComment.toLatin1().data());
 
   _PTR(ChildIterator) anIter = myStudy->NewChildIterator(aAnimSObject);
   int i = 0, nbf = getNbFields();
@@ -1826,9 +1874,15 @@ void VISU_TimeAnimation::restoreFromStudy(_PTR(SObject) theField)
   for (anIter->Init(); anIter->More(); anIter->Next()) {
     _PTR(SObject) aRefObj = anIter->Value();
     _PTR(SObject) aFieldObj;
+
     if (!aRefObj->ReferencedObject(aFieldObj) ) 
       continue;
 
+    int nbAttr = aFieldObj->GetAllAttributes().size();
+    //std::string name1 = aFieldObj->GetName();
+    if(nbAttr<1)
+      continue;
+
     addField(aFieldObj);
     if ( isRangeDefined() || isSequenceDefined() ) 
       myFieldsAbsFrames.pop_back();
@@ -1866,8 +1920,8 @@ void VISU_TimeAnimation::restoreFromStudy(_PTR(SObject) theField)
       aData.myPrsType = VISU::TSTREAMLINES;
     else if (strName == VISU::GaussPoints_i::myComment.c_str())
       aData.myPrsType = VISU::TGAUSSPOINTS;
-    else if (strName == VISU::ScalarMapOnDeformedShape_i::myComment.c_str())
-      aData.myPrsType = VISU::TSCALARMAPONDEFORMEDSHAPE;
+    else if (strName == VISU::DeformedShapeAndScalarMap_i::myComment.c_str())
+      aData.myPrsType = VISU::TDEFORMEDSHAPEANDSCALARMAP;
     else
       continue;
     generatePresentations(getNbFields()-1);
@@ -1887,7 +1941,19 @@ void VISU_TimeAnimation::restoreFromStudy(_PTR(SObject) theField)
        if (VISU::ScalarMap_i* aPrs = dynamic_cast<VISU::ScalarMap_i*>(aData.myPrs[i]))
          anIsFixedRange = aPrs->IsRangeFixed();
       }
-      aData.myPrs[i]->SameAs(aData.myPrs[0]);
+      if (aData.myPrsType == VISU::TDEFORMEDSHAPEANDSCALARMAP) {
+       if (VISU::DeformedShapeAndScalarMap_i* aDeformedPrs =
+           dynamic_cast<VISU::DeformedShapeAndScalarMap_i*>(aData.myPrs[i])) {
+         //Set correct time stamp number
+         int aTimeStampNum = aDeformedPrs->GetScalarTimeStampNumber();
+         aDeformedPrs->SameAs(aData.myPrs[0]);
+         aDeformedPrs->SetScalarField(aDeformedPrs->GetScalarEntity(),
+                                      aDeformedPrs->GetScalarFieldName(),
+                                      aTimeStampNum);
+       }
+      }
+      else
+       aData.myPrs[i]->SameAs(aData.myPrs[0]);
     }
   }
   string aStr = aAnimSObject->GetID();
@@ -1897,6 +1963,7 @@ void VISU_TimeAnimation::restoreFromStudy(_PTR(SObject) theField)
 void VISU_TimeAnimation::onViewDeleted()
 {
   myView = 0;
+  stopAnimation();
 }
 
 void VISU_TimeAnimation::ApplyProperties(CORBA::Long theFieldNum, VISU::ColoredPrs3d_ptr thePrs)
@@ -1967,10 +2034,10 @@ struct TNewAnimationEvent: public SALOME_Event
   Execute()
   {
     SUIT_Session* aSession = SUIT_Session::session();
-    QPtrList<SUIT_Application> anApplications = aSession->applications();
-    QPtrListIterator<SUIT_Application> anIter (anApplications);
-    while (SUIT_Application* anApp = anIter.current()) {
-      ++anIter;
+    QList<SUIT_Application*> anApplications = aSession->applications();
+    QList<SUIT_Application*>::Iterator anIter = anApplications.begin();
+    while ( anIter !=  anApplications.end() ) {
+      SUIT_Application* anApp = *anIter;
       if (SUIT_Study* aSStudy = anApp->activeStudy()) {
         if (SalomeApp_Study* aStudy = dynamic_cast<SalomeApp_Study*>(aSStudy)) {
           if (_PTR(Study) aCStudy = aStudy->studyDS()) {
@@ -1981,6 +2048,7 @@ struct TNewAnimationEvent: public SALOME_Event
           }
         }
       }
+      anIter++;
     }
   }
 };
index 85a0b415297a24279b38883b089661ee4faa52b5..ee4c0601ad0b4e35e57b9e17a00d45eb0aa52e7a 100644 (file)
@@ -1,43 +1,48 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
 //  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VISU_TimeAnimation.h
 //  Author : Vitaly SMETANNIKOV
 //  Module : VISU
-
+//
 #ifndef VISU_TIMEANIMATION_H
 #define VISU_TIMEANIMATION_H
 
 #include "VISUConfig.hh"
 
+#include "VISU_Result_i.hh"
+#include "SALOME_GenericObjPointer.hh"
+
 #include <vector>
 
-#include <qobject.h>
-#include <qvaluelist.h>
-#include <qthread.h>
+#include <QObject>
+#include <QList>
+#include <QThread>
 
 class SVTK_ViewWindow;
 class VISU_Actor;
 
 namespace VISU
 {
-  class Result_i;
+  //class Result_i;
   class ColoredPrs3d_i;
   class ExecutionState;
 }
@@ -52,15 +57,18 @@ struct FieldData
   std::vector<VISU_Actor*> myActors;         // Actors
   std::vector<double> myTiming;              // time values
   CORBA::Float myOffset[3];
+  typedef SALOME::GenericObjPtr<VISU::Result_i> TResultPtr;
+  TResultPtr myResult;
 };
 
 
-class VISU_I_EXPORT VISU_TimeAnimation: public QObject, public QThread
+class VISU_I_EXPORT VISU_TimeAnimation: public QThread
 {
   Q_OBJECT;
 
  protected:
   CORBA::Boolean _generateFrames();
+  void _connectView();
   void _visibilityOff(int num_field, int num_frame);
   void _clearView();
   void _clearData(FieldData& theData);
@@ -74,9 +82,9 @@ class VISU_I_EXPORT VISU_TimeAnimation: public QObject, public QThread
   void _emitFrameChanged(long theNewFrame, double theTime);
   void _emitStopped();
 
-  void parallelAnimation( bool& theIsDumping, QValueList<int>& theIndexList );
-  void successiveAnimation( bool& theIsDumping, QValueList<int>& theIndexList );
-  void saveImages( int theFieldId, double& theOneVal, int& theNbFiles, QValueList<int>& theIndexList );
+  void parallelAnimation( bool& theIsDumping, QList<int>& theIndexList );
+  void successiveAnimation( bool& theIsDumping, QList<int>& theIndexList );
+  void saveImages( int theFieldId, double& theOneVal, int& theNbFiles, QList<int>& theIndexList );
 
  public:
   //static VISU::Result_i* createPresent (SALOMEDS::SObject_var theField);
@@ -98,7 +106,7 @@ class VISU_I_EXPORT VISU_TimeAnimation: public QObject, public QThread
 
   CORBA::Boolean generateFrames();
   void generatePresentations(CORBA::Long theFieldNum);
-  void setViewer(SVTK_ViewWindow* theView) { myView = theView; }
+  void setViewer(SVTK_ViewWindow* theView) { myView = theView; _connectView(); }
   SVTK_ViewWindow* getViewer() { return myView; }
   void clearView();
   void clearData(FieldData& theData);
@@ -115,7 +123,6 @@ class VISU_I_EXPORT VISU_TimeAnimation: public QObject, public QThread
 
   CORBA::Long getNbFields() { return myFieldsLst.size(); }
   CORBA::Long getNbFrames();
-  CORBA::Boolean isRunning();
   CORBA::Long getCurrentFrame() { return myFrame; }
 
   long getAbsoluteFrameNumber(std::pair<int,long> theFieldTimeStamp);
@@ -123,10 +130,8 @@ class VISU_I_EXPORT VISU_TimeAnimation: public QObject, public QThread
 
   VISU::ColoredPrs3d_ptr getPresentation(CORBA::Long theField, CORBA::Long theFrame);
 
-  void setPresentationType(CORBA::Long theFieldNum, VISU::VISUType theType)
-    { myFieldsLst[theFieldNum].myPrsType = theType; }
-  VISU::VISUType getPresentationType(CORBA::Long theFieldNum)
-    { return myFieldsLst[theFieldNum].myPrsType; }
+  void setPresentationType(CORBA::Long theFieldNum, VISU::VISUType theType);
+  VISU::VISUType getPresentationType(CORBA::Long theFieldNum);
 
   void setSpeed(CORBA::Long theSpeed);
   CORBA::Long getSpeed() { return mySpeed; }
@@ -144,7 +149,7 @@ class VISU_I_EXPORT VISU_TimeAnimation: public QObject, public QThread
   char* getAnimationSequence();
   CORBA::Boolean isSequenceDefined();
 
-  bool getIndicesFromSequence( QString theSequence, QValueList<long>& theIndices );
+  bool getIndicesFromSequence( QString theSequence, QList<long>& theIndices );
 
   void dumpTo(const char* thePath) { myDumpPath = thePath; }
   std::string setDumpFormat(const char* theFormat);
@@ -193,7 +198,7 @@ class VISU_I_EXPORT VISU_TimeAnimation: public QObject, public QThread
  private:
   QString myLastError;
 
-  QValueList<FieldData> myFieldsLst;
+  QList<FieldData> myFieldsLst;
   VISU::ExecutionState* myExecutionState;
   long myFrame;
   std::vector<long> myFieldsAbsFrames;
index 9aca708427cec6a28306828f37fe428cd31f20fc..d2d4cfd345029695e0608d035fafcddcf080325e 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_Vectors_i.cc
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_Vectors_i.hh"
 #include "VISU_Prs3dUtils.hh"
 #include "VISU_Result_i.hh"
@@ -34,7 +34,7 @@
 #include "VISU_Convertor.hxx"
 
 #include "SUIT_ResourceMgr.h"
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 
 #include <vtkProperty.h>
 
@@ -46,6 +46,7 @@ static int MYDEBUG = 0;
 
 static int INCMEMORY = 4+12;
 
+using namespace std;
 
 //---------------------------------------------------------------
 size_t 
@@ -129,6 +130,7 @@ VISU::Vectors_i
 ::Vectors_i(EPublishInStudyMode thePublishInStudyMode) :
   ColoredPrs3d_i(thePublishInStudyMode),
   ScalarMap_i(thePublishInStudyMode),
+  MonoColorPrs_i(thePublishInStudyMode),
   DeformedShape_i(thePublishInStudyMode),
   myLineWidth(1.0),
   myVectorsPL(NULL)
@@ -323,7 +325,7 @@ VISU::Vectors_i
 //---------------------------------------------------------------
 void 
 VISU::Vectors_i
-::UpdateActor(VISU_Actor* theActor) 
+::UpdateActor(VISU_ActorBase* theActor) 
 {
   if(VISU_VectorsAct* anActor = dynamic_cast<VISU_VectorsAct*>(theActor)){
     TSuperClass::UpdateActor(anActor);
index ef4b9d927b02b9679152e8486d45102725f05ac7..0e55168e2b283d66090a68a7e6c680944de718a6 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_PrsObject_i.hxx
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_Vectors_i_HeaderFile
 #define VISU_Vectors_i_HeaderFile
 
@@ -164,7 +164,7 @@ namespace VISU
     //! Redefines VISU_ColoredPrs3d_i::UpdateActor
     virtual
     void
-    UpdateActor(VISU_Actor* theActor) ;
+    UpdateActor(VISU_ActorBase* theActor) ;
   };
 }
 
index 439bb3a47c5d615ad984fb1ce4466170a62d7bb4..1878c1074255f505b36e00bf1f6496ed1c869035 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_ViewManager_i.cc
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_ViewManager_i.hh"
 #include "VISU_View_i.hh"
 #include "VISU_Prs3d_i.hh"
 #include "VISU_Table_i.hh"
 
 #include "VISU_Actor.h"
+#include "VISU_ActorFactory.h"
 
 #include "SUIT_Tools.h"
 #include "SUIT_Session.h"
@@ -47,7 +48,7 @@
 #include "SalomeApp_Application.h"
 #include "LightApp_SelectionMgr.h"
 
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 #include "SALOME_ListIO.hxx"
 #include "SALOME_ListIteratorOfListIO.hxx"
 
@@ -58,7 +59,7 @@
 #include <vtkRenderer.h>
 #include <vtkRenderWindow.h>
 
-#include <qapplication.h>
+#include <QApplication>
 
 using namespace std;
 
@@ -87,10 +88,10 @@ namespace VISU {
     {
       MESSAGE("Find application for study with id = : " << myStudyId);
       SUIT_Session* aSession = SUIT_Session::session();
-      QPtrList<SUIT_Application> anApplications = aSession->applications();
-      QPtrListIterator<SUIT_Application> anIter (anApplications);
-      while (SUIT_Application* anApp = anIter.current()) {
-       ++anIter;
+      QList<SUIT_Application*> anApplications = aSession->applications();
+      QList<SUIT_Application*>::Iterator anIter = anApplications.begin();
+      while ( anIter != anApplications.end() ) {
+       SUIT_Application* anApp = *anIter;
        if (SUIT_Study* aSStudy = anApp->activeStudy()) {
          if (SalomeApp_Study* aStudy = dynamic_cast<SalomeApp_Study*>(aSStudy)) {
             if (_PTR(Study) aCStudy = aStudy->studyDS()) {
@@ -102,6 +103,7 @@ namespace VISU {
            }
          }
        }
+       anIter++;
       }
       if (!myResult) {
         //MESSAGE("Error: application is not found for study : " << myStudyName);
@@ -331,7 +333,7 @@ namespace VISU {
     if(MYDEBUG) MESSAGE("UpdatePlot2d - theDisplaying = " << theDisplaying);
     if (!theView)
       return;
-    QList<Plot2d_Curve> clist;
+    QList<Plot2d_Curve*> clist;
     theView->getCurves(clist);
     if (theDisplaying == eEraseAll) {
       for (int i = 0; i < clist.count(); i++) {
@@ -343,7 +345,7 @@ namespace VISU {
        for (int i = 0; i < clist.count(); i++) {
          SPlot2d_Curve* aSPlot2dC = dynamic_cast<SPlot2d_Curve*>(clist.at(i));
          if (aSPlot2dC->hasIO() &&
-             theCurve->GetEntry() != aSPlot2dC->getIO()->getEntry()) {
+             !strcmp(theCurve->GetEntry().c_str(), aSPlot2dC->getIO()->getEntry())) {
            if(MYDEBUG) MESSAGE("UpdatePlot2d - erasing : curve - " << aSPlot2dC);
            theView->eraseCurve(aSPlot2dC);
          }
@@ -355,7 +357,7 @@ namespace VISU {
        for (int i = 0; i < clist.count(); i++) {
          SPlot2d_Curve* aSPlot2dC = dynamic_cast<SPlot2d_Curve*>(clist.at(i));
          if (aSPlot2dC->hasIO() &&
-             theCurve->GetEntry() != aSPlot2dC->getIO()->getEntry()) {
+             !strcmp(theCurve->GetEntry().c_str(), aSPlot2dC->getIO()->getEntry())) {
            if(MYDEBUG) MESSAGE("UpdatePlot2d - displaying : curve - " << aSPlot2dC);
            aSPlot2dC->setHorTitle( theCurve->GetHorTitle().c_str() );
            aSPlot2dC->setVerTitle( theCurve->GetVerTitle().c_str() );
@@ -369,9 +371,9 @@ namespace VISU {
              aSPlot2dC->setData( xList, yList, nbPoints, zList );
            }
            if (!theCurve->IsAuto()) {
-             aSPlot2dC->setLine((Plot2d_Curve::LineType)theCurve->GetLine(),
+             aSPlot2dC->setLine((Plot2d::LineType)theCurve->GetLine(),
                                 theCurve->GetLineWidth());
-             aSPlot2dC->setMarker((Plot2d_Curve::MarkerType)theCurve->GetMarker());
+             aSPlot2dC->setMarker((Plot2d::MarkerType)theCurve->GetMarker());
              SALOMEDS::Color color = theCurve->GetColor();
              aSPlot2dC->setColor(QColor((int)(color.R*255.),
                                         (int)(color.G*255.),
@@ -404,7 +406,7 @@ namespace VISU {
        for (int i = 0; i < clist.count(); i++) {
          SPlot2d_Curve* aSPlot2dC = dynamic_cast<SPlot2d_Curve*>(clist.at(i));
          if (aSPlot2dC->hasIO() &&
-             theCurve->GetEntry() != aSPlot2dC->getIO()->getEntry()) {
+             !strcmp(theCurve->GetEntry().c_str(), aSPlot2dC->getIO()->getEntry())) {
            if(MYDEBUG) MESSAGE("UpdatePlot2d - displaying only : curve - " << aSPlot2dC);
            aSPlot2dC->setHorTitle( theCurve->GetHorTitle().c_str() );
            aSPlot2dC->setVerTitle( theCurve->GetVerTitle().c_str() );
@@ -418,8 +420,8 @@ namespace VISU {
              aSPlot2dC->setData( xList, yList, nbPoints, zList );
            }
            if ( !theCurve->IsAuto() ) {
-             aSPlot2dC->setLine((Plot2d_Curve::LineType)theCurve->GetLine(), theCurve->GetLineWidth());
-             aSPlot2dC->setMarker((Plot2d_Curve::MarkerType)theCurve->GetMarker());
+             aSPlot2dC->setLine((Plot2d::LineType)theCurve->GetLine(), theCurve->GetLineWidth());
+             aSPlot2dC->setMarker((Plot2d::MarkerType)theCurve->GetMarker());
              SALOMEDS::Color color = theCurve->GetColor();
              aSPlot2dC->setColor(QColor((int)(color.R*255.), (int)(color.G*255.), (int)(color.B*255.)));
            }
@@ -480,6 +482,35 @@ namespace VISU {
   }
 
 
+  //----------------------------------------------------------------------------
+  struct TIsSameActor
+  {
+    VISU::TActorFactory* myActor;
+
+    TIsSameActor(VISU::TActorFactory* theActor):
+      myActor(theActor)
+    {}
+    
+    bool
+    operator()(VISU_ActorBase* theActor) 
+    {
+      return theActor->GetFactory() == myActor;
+    }
+  };
+
+  //----------------------------------------------------------------------------
+  VISU_ActorBase* 
+  FindActorBase(SVTK_ViewWindow* theViewWindow, VISU::TActorFactory* theActor)
+  {
+    if(!theActor)
+      return NULL;
+
+    vtkRenderer* aRenderer = theViewWindow->getRenderer();
+    vtkActorCollection* anActors = aRenderer->GetActors();
+    return SVTK::Find<VISU_ActorBase>(anActors, VISU::TIsSameActor(theActor));
+  }
+
+
   //----------------------------------------------------------------------------
   struct TDeleteActorsEvent: public SALOME_Event
   {
@@ -501,10 +532,10 @@ namespace VISU {
       CORBA::String_var studyName = myStudyDocument->Name();
       std::string aStudyName = studyName.in();
       SUIT_Session* aSession = SUIT_Session::session();
-      QPtrList<SUIT_Application> anApplications = aSession->applications();
-      QPtrListIterator<SUIT_Application> anIter (anApplications);
-      while (SUIT_Application* aSUITApp = anIter.current()) {
-        ++anIter;
+      QList<SUIT_Application*> anApplications = aSession->applications();
+      QList<SUIT_Application*>::Iterator anIter = anApplications.begin();
+      while ( anIter != anApplications.end() ) {
+       SUIT_Application* aSUITApp = *anIter;
        if (SUIT_Study* aSStudy = aSUITApp->activeStudy()) {
           if (SalomeApp_Study* aStudy = dynamic_cast<SalomeApp_Study*>(aSStudy)) {
             if (_PTR(Study) aCStudy = aStudy->studyDS()) {
@@ -515,6 +546,7 @@ namespace VISU {
            }
          }
         }
+       anIter++;
       }
       if (!anApp)
         return;
@@ -541,20 +573,20 @@ namespace VISU {
       // 3. Remove Actors
       ViewManagerList aViewManagerList;
       anApp->viewManagers(SVTK_Viewer::Type(), aViewManagerList);
-      QPtrListIterator<SUIT_ViewManager> anVMIter (aViewManagerList);
-      for (; anVMIter.current(); ++anVMIter) {
-        SUIT_ViewManager* aViewManager = anVMIter.current();
-       QPtrVector<SUIT_ViewWindow> aViews = aViewManager->getViews();
+      QList<SUIT_ViewManager*>::Iterator anVMIter = aViewManagerList.begin();
+      for (; anVMIter != aViewManagerList.end(); anVMIter++ ) {
+        SUIT_ViewManager* aViewManager = *anVMIter;
+       QVector<SUIT_ViewWindow*> aViews = aViewManager->getViews();
        for (int i = 0, iEnd = aViews.size(); i < iEnd; i++) {
          if (SUIT_ViewWindow* aViewWindow = aViews.at(i)) {
            if (Plot2d_ViewWindow* vw = dynamic_cast<Plot2d_ViewWindow*>(aViewWindow)) {
               Plot2d_ViewFrame* vf = vw->getViewFrame();
-             QList<Plot2d_Curve> clist;
+             QList<Plot2d_Curve*> clist;
              vf->getCurves(clist);
              for (int i = 0; i < clist.count(); i++) {
                 if (SPlot2d_Curve* cu = dynamic_cast<SPlot2d_Curve*>(clist.at(i))) {
                  if (cu->hasIO() &&
-                     myPrs->GetEntry() == cu->getIO()->getEntry()) {
+                     strcmp(myPrs->GetEntry().c_str(), cu->getIO()->getEntry())) {
                    vf->eraseCurve(cu);
                  }
                }
@@ -655,10 +687,10 @@ namespace VISU {
     CORBA::String_var studyName = myStudyDocument->Name();
     std::string aStudyName = studyName.in();
     SUIT_Session* aSession = SUIT_Session::session();
-    QPtrList<SUIT_Application> anApplications = aSession->applications();
-    QPtrListIterator<SUIT_Application> anIter (anApplications);
-    while (SUIT_Application* aSUITApp = anIter.current()) {
-      ++anIter;
+    QList<SUIT_Application*> anApplications = aSession->applications();
+    QList<SUIT_Application*>::Iterator anIter = anApplications.begin();
+    while (anIter != anApplications.end()) {
+      SUIT_Application* aSUITApp = *anIter;
       if (SUIT_Study* aSStudy = aSUITApp->activeStudy()) {
         if (SalomeApp_Study* aStudy = dynamic_cast<SalomeApp_Study*>(aSStudy)) {
           if (_PTR(Study) aCStudy = aStudy->studyDS()) {
@@ -669,6 +701,7 @@ namespace VISU {
          }
        }
       }
+      anIter++;
     }
     if (!anApp)
       return;
@@ -695,10 +728,10 @@ namespace VISU {
     // 3. Remove Actors
     ViewManagerList aViewManagerList;
     anApp->viewManagers(SVTK_Viewer::Type(), aViewManagerList);
-    QPtrListIterator<SUIT_ViewManager> anVMIter (aViewManagerList);
-    for (; anVMIter.current(); ++anVMIter) {
-      SUIT_ViewManager* aViewManager = anVMIter.current();
-      QPtrVector<SUIT_ViewWindow> aViews = aViewManager->getViews();
+    QList<SUIT_ViewManager*>::Iterator anVMIter = aViewManagerList.begin();
+    for (; anVMIter != aViewManagerList.end(); anVMIter++ ) {
+      SUIT_ViewManager* aViewManager = *anVMIter;
+      QVector<SUIT_ViewWindow*> aViews = aViewManager->getViews();
       for (int i = 0, iEnd = aViews.size(); i < iEnd; i++) {
        if (SUIT_ViewWindow* aViewWindow = aViews.at(i)) {
          if (SVTK_ViewWindow* vw = dynamic_cast<SVTK_ViewWindow*>(aViewWindow)) {
index 607e750ee9ab876db08102cc8ddd6ceb068addae..25237ca8b161d23acd49d60cfe7079a19abc985e 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_ViewManager_i.hh
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_ViewManager_i_HeaderFile
 #define VISU_ViewManager_i_HeaderFile
 
@@ -32,6 +32,7 @@
 class SalomeApp_Application;
 
 class VISU_Actor;
+class VISU_ActorBase;
 
 class SUIT_ViewWindow;
 
@@ -45,6 +46,7 @@ class vtkCamera;
 namespace VISU {
   class Prs3d_i;
   class Curve_i;
+  class TActorFactory;
 
   class VISU_I_EXPORT ViewManager_i : public virtual POA_VISU::ViewManager,
                         public virtual Base_i
@@ -74,6 +76,7 @@ namespace VISU {
   void UpdatePlot2d (Plot2d_ViewFrame *theView, int theDisplaying, Curve_i* theCurve);
 
   VISU_I_EXPORT VISU_Actor* FindActor(SVTK_ViewWindow* theViewWindow, VISU::Prs3d_i* thePrs3d);
+  VISU_I_EXPORT VISU_ActorBase* FindActorBase(SVTK_ViewWindow* theViewWindow, VISU::TActorFactory* theActor);
 
   void DeleteActors (VISU::Prs3d_i* thePrs);
   void DeleteActors (VISU::Curve_i* thePrs);
index c25f276cce809eb36801d4754f736738ea40b2b1..945e3ff502e9d4b036068654e958ae781bb40f17 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_View_i.cc
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_View_i.hh"
 
 #include "VISU_Gen_i.hh"
 #include "VISU_Prs3d_i.hh"
 #include "VISU_Table_i.hh"
+#include "VISU_PointMap3d_i.hh"
 #include "VISU_ScalarMap_i.hh"
 #include "VISU_ViewManager_i.hh"
 
 
 #include "VISU_Actor.h"
 #include "VISU_ScalarMapAct.h"
+#include "VISU_PointMap3dActor.h"
+#include "VISU_DeformedGridPL.hxx"
 
-#include "SALOME_Event.hxx"
+#include "SALOME_Event.h"
 
 #include "SUIT_ViewWindow.h"
 #include "SUIT_ViewManager.h"
 #include "SalomeApp_Study.h"
 
 #include <QtxWorkstack.h>
+#include <QtxWorkspace.h>
 
-#include <qworkspace.h>
-#include <qimage.h>
+#include <QWorkspace>
+#include <QImage>
 
 #include <vtkCamera.h>
 #include <vtkRenderer.h>
+#include <vtkActor.h>
 
 using namespace std;
 
@@ -147,20 +152,21 @@ namespace VISU {
       {
        switch(myViewRepresentation){
        case VISU::View::OBJECTBROWSER:
-         myApplication->setWindowShown(SalomeApp_Application::WT_ObjectBrowser,myState);
+         myApplication->getWindow( SalomeApp_Application::WT_ObjectBrowser )->setVisible( myState );
          break;
        case VISU::View::PYTHON:
-         myApplication->setWindowShown(SalomeApp_Application::WT_PyConsole,myState);
+         myApplication->getWindow( SalomeApp_Application::WT_PyConsole )->setVisible( myState );
          break;
        case VISU::View::MESSAGES:
-         myApplication->setWindowShown(SalomeApp_Application::WT_LogWindow,myState);
+         myApplication->getWindow( SalomeApp_Application::WT_LogWindow )->setVisible( myState );
          break;
-       case VISU::View::VIEWER:{
+       case VISU::View::VIEWER:
+       {
          ViewManagerList mgrs = myApplication->viewManagers();
          ViewManagerList::const_iterator anIt = mgrs.begin(), aLast = mgrs.end();
          for( ; anIt!=aLast; anIt++ )
          {
-           const QPtrVector<SUIT_ViewWindow>& views = (*anIt)->getViews();
+           const QVector<SUIT_ViewWindow*>& views = (*anIt)->getViews();
            for( int i=0; i<views.count(); i++ )
              views[i]->setShown( myState );
          }
@@ -191,22 +197,22 @@ namespace VISU {
     {
       switch(myViewRepresentation){
       case VISU::View::OBJECTBROWSER:
-       myResult = myApplication->isWindowVisible(SalomeApp_Application::WT_ObjectBrowser);
+       myResult = myApplication->dockWindow( SalomeApp_Application::WT_ObjectBrowser )->isVisible();
        break;
       case VISU::View::PYTHON:
-       myResult = myApplication->isWindowVisible(SalomeApp_Application::WT_PyConsole);
+       myResult = myApplication->dockWindow( SalomeApp_Application::WT_PyConsole )->isVisible();
        break;
       case VISU::View::MESSAGES:
-       myResult = myApplication->isWindowVisible(SalomeApp_Application::WT_LogWindow);
+       myResult = myApplication->dockWindow( SalomeApp_Application::WT_LogWindow )->isVisible();
        break;
       case VISU::View::VIEWER:{
        ViewManagerList aViewManagerList = myApplication->viewManagers();
        ViewManagerList::const_iterator anIt = aViewManagerList.begin();
        for( ; anIt != aViewManagerList.end(); anIt++ )
        {
-         const QPtrVector<SUIT_ViewWindow>& views = (*anIt)->getViews();
+         const QVector<SUIT_ViewWindow*>& views = (*anIt)->getViews();
          for( int i=0; i<views.count(); i++ ) {
-           myResult = views[i]->isShown();
+           myResult = views[i]->isVisible();
            return;
          }
        }
@@ -262,7 +268,7 @@ namespace VISU {
     SUIT_ViewWindow* aVW = GetViewWindow();
     if (aVW)
       ProcessVoidEvent(new TSplitEvent(myApplication, aVW,
-                                      Qt::Horizontal, QtxWorkstack::SPLIT_MOVE));
+                                      Qt::Horizontal, QtxWorkstack::SplitMove));
   }
 
   void
@@ -272,7 +278,7 @@ namespace VISU {
     SUIT_ViewWindow* aVW = GetViewWindow();
     if (aVW)
       ProcessVoidEvent(new TSplitEvent(myApplication, aVW,
-                                      Qt::Horizontal, QtxWorkstack::SPLIT_STAY));
+                                      Qt::Horizontal, QtxWorkstack::SplitStay));
   }
 
   void
@@ -282,7 +288,7 @@ namespace VISU {
     SUIT_ViewWindow* aVW = GetViewWindow();
     if (aVW)
       ProcessVoidEvent(new TSplitEvent(myApplication, aVW,
-                                      Qt::Vertical, QtxWorkstack::SPLIT_MOVE));
+                                      Qt::Vertical, QtxWorkstack::SplitMove));
   }
 
   void
@@ -292,7 +298,7 @@ namespace VISU {
     SUIT_ViewWindow* aVW = GetViewWindow();
     if (aVW)
       ProcessVoidEvent(new TSplitEvent(myApplication, aVW,
-                                      Qt::Vertical, QtxWorkstack::SPLIT_STAY));
+                                      Qt::Vertical, QtxWorkstack::SplitStay));
   }
 
   void
@@ -557,7 +563,7 @@ namespace VISU {
     void
     Execute()
     {
-      if (QWidget* aParent = myVW->parentWidget(true)) {
+      if (QWidget* aParent = myVW->parentWidget()) {
        QRect aQRect = aParent->frameGeometry();
        (aQRect.*myAction)(mySize);
        aParent->setGeometry(aQRect);
@@ -601,7 +607,7 @@ namespace VISU {
     void
     Execute()
     {
-      if(QWidget* aParent = myVW->parentWidget(true)){
+      if(QWidget* aParent = myVW->parentWidget()){
        QRect aQRect = aParent->frameGeometry();
        myResult = (aQRect.*myAction)();
       }
@@ -642,12 +648,12 @@ namespace VISU {
   class TAlignEvent: public TWorkspaceEvent
   {
   protected:
-    Qt::AlignmentFlags myAligment;
+    Qt::AlignmentFlag myAligment;
 
   public:
     TAlignEvent(QWidget* theViewWindow,
                QWidget* theWorkspace,
-               Qt::AlignmentFlags theAligment):
+               Qt::AlignmentFlag theAligment):
       TWorkspaceEvent(theViewWindow,theWorkspace),
       myAligment(theAligment)
     {}
@@ -656,7 +662,7 @@ namespace VISU {
     void
     Execute()
     {
-      if(QWidget* aParent = myVW->parentWidget(true))
+      if(QWidget* aParent = myVW->parentWidget())
        SUIT_Tools::alignWidget(aParent,myWorkspace,myAligment);
     }
   };
@@ -737,7 +743,7 @@ namespace VISU {
       void
       Execute()
       {
-       if(QWidget* aParent = myVW->parentWidget(true))
+       if(QWidget* aParent = myVW->parentWidget())
          aParent->move(int(myX*myWorkspace->width()),int(myY*myWorkspace->height()));
       }
     };
@@ -764,7 +770,7 @@ namespace VISU {
       void
       Execute()
       {
-       if(QWidget* aParent = myVW->parentWidget(true))
+       if(QWidget* aParent = myVW->parentWidget())
          aParent->setGeometry(aParent->x(),
                               aParent->y(),
                               int(myX*myWorkspace->width()),
@@ -783,12 +789,12 @@ namespace VISU {
   {
     struct TEvent: public SALOME_Event
     {
-      QWidget* myWidget;
+      SVTK_ViewWindow* myVW;
       SALOMEDS::Color myColor;
     public:
-      TEvent(QWidget* theWidget,
+      TEvent(SVTK_ViewWindow* theViewWindow,
             const SALOMEDS::Color& theColor):
-       myWidget(theWidget),
+       myVW(theViewWindow),
        myColor(theColor)
       {}
       virtual void Execute(){
@@ -796,11 +802,12 @@ namespace VISU {
        aColor[0] = int(255.0*myColor.R);
        aColor[1] = int(255.0*myColor.G);
        aColor[2] = int(255.0*myColor.B);
-       myWidget->setBackgroundColor(QColor(aColor[0],aColor[1],aColor[2]));
+       QColor aNewColor (aColor[0],aColor[1],aColor[2]);
+       myVW->setBackgroundColor(aNewColor);
       }
     };
-
-    SUIT_ViewWindow* aVW = GetViewWindow();
+       
+    SVTK_ViewWindow* aVW = dynamic_cast<SVTK_ViewWindow*>(GetViewWindow());
     if (aVW)
       ProcessVoidEvent(new TEvent(aVW, theColor));
   }
@@ -808,22 +815,23 @@ namespace VISU {
 
   struct TBackgroundEvent: public SALOME_Event
   {
-    QWidget* myWidget;
+    SVTK_ViewWindow* myVW;
     typedef SALOMEDS::Color TResult;
     TResult myResult;
 
-    TBackgroundEvent(QWidget* theWidget):
-      myWidget(theWidget)
+    TBackgroundEvent(SVTK_ViewWindow* theViewWindow):
+      myVW(theViewWindow)
     {}
 
     virtual
     void
     Execute()
     {
-      const QColor& aColor = myWidget->backgroundColor();
-      myResult.R = aColor.red()/255.0;
-      myResult.G = aColor.green()/255.0;
-      myResult.B = aColor.blue()/255.0;
+      vtkFloatingPointType backint[3];
+      GetRenderer(myVW)->GetBackground(backint);
+      myResult.R = backint[0];
+      myResult.G = backint[1];
+      myResult.B = backint[2];
     }
   };
 
@@ -831,7 +839,7 @@ namespace VISU {
   View_i::
   GetBackground()
   {
-    SUIT_ViewWindow* aVW = GetViewWindow();
+    SVTK_ViewWindow* aVW = dynamic_cast<SVTK_ViewWindow*>(GetViewWindow());
     if (aVW)
       return ProcessEvent(new TBackgroundEvent(aVW));
 
@@ -920,11 +928,11 @@ namespace VISU {
        if (!img.isNull()) {
           QString fileName (myFileName);
           if (!fileName.isEmpty()) {
-            QString fmt = SUIT_Tools::extension(fileName).upper();
+            QString fmt = SUIT_Tools::extension(fileName).toUpper();
            if (fmt.isEmpty()) fmt = QString("BMP"); // default format
            if (fmt == "JPG" ) fmt = "JPEG";
            //QApplication::setOverrideCursor(Qt::waitCursor);
-           img.save(fileName, fmt.latin1());
+           img.save(fileName, fmt.toLatin1().data());
            myResult = true;
            //QApplication::restoreOverrideCursor();
           }
@@ -954,8 +962,8 @@ namespace VISU {
   SUIT_ViewWindow* View_i::GetViewWindow()
   {
     if (myViewWindow) {
-      QPtrVector<SUIT_ViewWindow> aViews = myViewManager->getViews();
-      int aPos = aViews.find(myViewWindow);
+      QVector<SUIT_ViewWindow*> aViews = myViewManager->getViews();
+      int aPos = aViews.indexOf(myViewWindow);
       if (aPos < 0)
        myViewWindow = NULL;
     }
@@ -1064,13 +1072,13 @@ namespace VISU {
     SUIT_ViewWindow* aVW = GetViewWindow();
     if (aVW)
       ProcessVoidEvent(new TVoidMemFun1ArgEvent<SUIT_ViewWindow,const QString&,QString>
-                      (aVW, &SUIT_ViewWindow::setCaption, QString(theTitle)));
+                      (aVW, &SUIT_ViewWindow::setWindowTitle, QString(theTitle)));
   }
   char* XYPlot_i::GetTitle()
   {
     SUIT_ViewWindow* aVW = GetViewWindow();
     if (aVW)
-      return CORBA::string_dup(aVW->caption().latin1());
+      return CORBA::string_dup( aVW->windowTitle().toLatin1().data());
     return CORBA::string_dup("");
   }
 
@@ -1084,7 +1092,7 @@ namespace VISU {
   char* XYPlot_i::GetSubTitle()
   {
     if (GetViewWindow())
-      return CORBA::string_dup(myView->getTitle());
+      return CORBA::string_dup(myView->getTitle().toLatin1().data());
     return CORBA::string_dup("");
   }
 
@@ -1274,7 +1282,7 @@ namespace VISU {
   char* XYPlot_i::GetXTitle()
   {
     if (GetViewWindow())
-      return CORBA::string_dup(myView->getTitle(Plot2d_ViewFrame::XTitle));
+      return CORBA::string_dup(myView->getTitle(Plot2d_ViewFrame::XTitle).toLatin1().data());
     return CORBA::string_dup("");
   }
 
@@ -1286,7 +1294,7 @@ namespace VISU {
   char* XYPlot_i::GetYTitle()
   {
     if (GetViewWindow())
-      return CORBA::string_dup(myView->getTitle(Plot2d_ViewFrame::YTitle));
+      return CORBA::string_dup(myView->getTitle(Plot2d_ViewFrame::YTitle).toLatin1().data());
     return CORBA::string_dup("");
   }
 
@@ -1513,13 +1521,13 @@ namespace VISU {
   void TableView_i::SetTitle (const char* theTitle)
   {
     ProcessVoidEvent(new TVoidMemFun1ArgEvent<VisuGUI_TableDlg,const QString&,QString>
-                     (myView, &VisuGUI_TableDlg::setCaption, QString(theTitle)));
+                     (myView, &VisuGUI_TableDlg::setWindowTitle, QString(theTitle)));
   }
 
   char* TableView_i::GetTitle()
   {
     //jfa: may be need to be enclosed in SALOME_Event?
-    return CORBA::string_dup(myView->caption().latin1());
+    return CORBA::string_dup(myView->windowTitle().toLatin1().data());
   }
 
   void TableView_i::Close()
@@ -1625,7 +1633,7 @@ namespace VISU {
        vtkActorCollection* anActors = aRenderer->GetActors();
        anActors->InitTraversal();
        while (vtkActor *anAct = anActors->GetNextActor()) {
-         if (VISU_Actor* anActor = dynamic_cast<VISU_Actor*>(anAct)) {
+         if (VISU_ActorBase* anActor = dynamic_cast<VISU_ActorBase*>(anAct)) {
            if (anActor->GetVisibility()) 
              anActor->UpdateFromFactory();
          }
@@ -1729,7 +1737,7 @@ namespace VISU {
       string anEntry = anObj->GetID();
       if (MYDEBUG) MESSAGE("View3D_i::RestoreViewPoint - anEntry = " << anEntry);
       Storable::TRestoringMap aMap = Storable::GetStorableMap(anObj);
-      if (Storable::FindValue(aMap, "myComment") == View3D_i::myComment) {
+      if (Storable::FindValue(aMap, "myComment") == View3D_i::myComment.c_str()) {
        Restore(theViewManager->getActiveView(), aMap);
        return true;
       }
@@ -1876,14 +1884,14 @@ namespace VISU {
     SUIT_ViewWindow* aVW = GetViewWindow();
     if (aVW)
       ProcessVoidEvent(new TVoidMemFun1ArgEvent<SUIT_ViewWindow,const QString&,QString>
-                      (aVW,&SUIT_ViewWindow::setCaption,QString(theTitle)));
+                      (aVW,&SUIT_ViewWindow::setWindowTitle,QString(theTitle)));
   }
 
   char* View3D_i::GetTitle()
   {
     SUIT_ViewWindow* aVW = GetViewWindow();
     if (aVW)
-      return CORBA::string_dup(aVW->caption().latin1());
+      return CORBA::string_dup(aVW->windowTitle().toLatin1().data());
     return CORBA::string_dup("");
   }
 
@@ -1926,6 +1934,27 @@ namespace VISU {
     }
   };
 
+  class TDisplayTableEvent: public SALOME_Event
+  {
+    SUIT_ViewWindow* myVW;
+    PointMap3d_i* myTable;
+    int myDisplaying;
+  public:
+    TDisplayTableEvent( SUIT_ViewWindow* theView,
+                       PointMap3d_i* theTable,
+                       int theDisplaying ) :
+      myVW (theView),
+      myTable (theTable),
+      myDisplaying (theDisplaying)
+    {}
+    virtual void Execute() {
+      SVTK_ViewWindow* aViewWindow = dynamic_cast<SVTK_ViewWindow*>(myVW);
+      VISU_PointMap3dActor* anActor = myTable->CreateActor();
+      myTable->UpdateActor( anActor );
+      aViewWindow->AddActor( anActor );
+    }
+  };
+
   void View3D_i::EraseAll()
   {
     if(MYDEBUG) MESSAGE("View3D_i::EraseAll");
@@ -1957,9 +1986,14 @@ namespace VISU {
     if(MYDEBUG) MESSAGE("View3D_i::Display");
     SUIT_ViewWindow* aVW = GetViewWindow();
     CORBA::Object_ptr anObj = thePrsObj;
-    Prs3d_i* aPrs =  dynamic_cast<Prs3d_i*>(VISU::GetServant(anObj).in());
+    Prs3d_i* aPrs = dynamic_cast<Prs3d_i*>(VISU::GetServant(anObj).in());
     if (aVW && aPrs)
       ProcessVoidEvent(new TUpdateViewerEvent(aVW,aPrs,eDisplay));
+    else if (aVW && !aPrs) {
+      PointMap3d_i* aTable = dynamic_cast<PointMap3d_i*>(VISU::GetServant(anObj).in());
+      if (aTable)
+       ProcessVoidEvent(new TDisplayTableEvent(aVW, aTable, eDisplay));
+    }
   }
 
   void View3D_i::DisplayOnly (PrsObject_ptr thePrsObj)
@@ -1970,6 +2004,11 @@ namespace VISU {
     Prs3d_i* aPrs =  dynamic_cast<Prs3d_i*>(VISU::GetServant(anObj).in());
     if (aVW && aPrs)
       ProcessVoidEvent(new TUpdateViewerEvent(aVW,aPrs,eDisplayOnly));
+    else if (aVW && !aPrs) {
+      PointMap3d_i* aTable = dynamic_cast<PointMap3d_i*>(VISU::GetServant(anObj).in());
+      if (aTable)
+       ProcessVoidEvent(new TDisplayTableEvent(aVW, aTable, eDisplayOnly));
+    }
   }
 
   void View3D_i::FitAll()
@@ -2343,7 +2382,8 @@ namespace VISU {
          VISU::VISUType aType = myPrs->GetType();
          if (aType != VISU::TSCALARMAP &&
              aType != VISU::TDEFORMEDSHAPE &&
-             aType != VISU::TSCALARMAPONDEFORMEDSHAPE) {
+             aType != VISU::TSCALARMAPONDEFORMEDSHAPE &&
+             aType != VISU::TDEFORMEDSHAPEANDSCALARMAP) {
            myResult = "Insideframe representation is not available for this type of presentations.";
            return;
          }
index c388740b97160ecc9c86c5b3aea591e1bb323d5c..f1e8ca334ca860707875d5bc05dbb8e4faa7881f 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_View_i.hh
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef VISU_View_i_HeaderFile
 #define VISU_View_i_HeaderFile
 
 #include "VISUConfig.hh"
+#include "SALOME_GenericObj_i.hh"
 
 class QWidget;
 
@@ -46,7 +47,8 @@ namespace VISU
   class Curve_i;
 
   class VISU_I_EXPORT View_i : public virtual POA_VISU::View,
-                 public virtual Storable
+                              public virtual SALOME::GenericObj_i,
+                              public virtual Storable
   {
   public:
     View_i (SalomeApp_Application *theApplication,
@@ -125,7 +127,7 @@ namespace VISU
 
   //===========================================================================
   class VISU_I_EXPORT XYPlot_i : public virtual POA_VISU::XYPlot,
-                   public virtual View_i
+                                public virtual View_i
   {
   public:
     typedef VISU::XYPlot TInterface;
@@ -216,7 +218,7 @@ namespace VISU
 
   //===========================================================================
   class VISU_I_EXPORT View3D_i : public virtual POA_VISU::View3D,
-                   public virtual View_i
+                                public virtual View_i
   {
   public:
     typedef VISU::View3D TInterface;
index d237a8dd7b4b9e112fd20895799c8342f527ef52..659e7889a007f9401442e94d415b6286d9e8454a 100644 (file)
@@ -1,43 +1,47 @@
-#  VISU VISU_SWIG : binding of C++ implementation and Python
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 #
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
-#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
 #
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+#  VISU VISU_SWIG : binding of C++ implementation and Python
 #  File   : Makefile.am
 #  Author : Paul RASCLE, EDF
 #  Module : VISU
-
+#
 include $(top_srcdir)/adm_local/unix/make_common_starter.am
 
-lib_LTLIBRARIES= libVISU_Swigcmodule.la
-dist_libVISU_Swigcmodule_la_SOURCES= VISU_Gen_s.cc
-nodist_libVISU_Swigcmodule_la_SOURCES= libVISU_Swig_wrap.cxx
+SWIG_FLAGS = @SWIG_FLAGS@ -I$(srcdir)
+SWIG_DEF   = libVISU_Swig.i
 
-SWIG_DEF = libVISU_Swig.i
-SWIG_FLAGS= @SWIG_FLAGS@ -I$(srcdir)
+salomeinclude_HEADERS = $(SWIG_DEF) VISU_Gen_s.hh
+
+# Libraries targets
+lib_LTLIBRARIES                 = _libVISU_Swig.la
+dist__libVISU_Swig_la_SOURCES   = $(SWIG_DEF) VISU_Gen_s.hh VISU_Gen_s.cc
+nodist__libVISU_Swig_la_SOURCES = libVISU_Swig_wrap.cxx
 
 libVISU_Swig.py: libVISU_Swig_wrap.cxx
+
 libVISU_Swig_wrap.cxx: $(SWIG_DEF)
        $(SWIG) $(SWIG_FLAGS) -o $@ $<
 
-libVISU_Swigcmodule_la_CPPFLAGS= \
+_libVISU_Swig_la_CPPFLAGS = \
        -ftemplate-depth-32 \
        $(PYTHON_INCLUDES) \
        $(HDF5_INCLUDES) \
@@ -49,20 +53,20 @@ libVISU_Swigcmodule_la_CPPFLAGS= \
        $(BOOST_CPPFLAGS) \
        -I$(srcdir)/../CONVERTOR -I$(srcdir)/../PIPELINE
 
-libVISU_Swigcmodule_la_LDFLAGS= $(PYTHON_LIBS) ../CONVERTOR/libVisuConvertor.la ../PIPELINE/libVisuPipeLine.la
+_libVISU_Swig_la_LDFLAGS = -module
+_libVISU_Swig_la_LIBADD  = $(PYTHON_LIBS) ../CONVERTOR/libVisuConvertor.la ../PIPELINE/libVisuPipeLine.la
 
-dist_salomescript_DATA= libVISU_Swig.py batchmode_visu.py batchmode_visu_table.py batchmode_visu_view3d.py \
+dist_salomescript_DATA = batchmode_visu.py batchmode_visu_table.py batchmode_visu_view3d.py \
        visu_med.py visu_view3d.py visu.py visu_gui.py visu_prs_example.py \
        visu_table.py visu_big_table.py visu_view.py visu_delete.py \
        visu_swig_test.py visu_split_views.py \
        visu_succcessive_animation.py visu_apply_properties.py visu_apply_properties_successive.py \
+       batchmode_visu_view.py visu_cache.py visu_pointmap3d.py \
        VISU_Example_01.py VISU_Example_02.py VISU_Example_03.py VISU_Example_04.py \
        VISU_Example_05.py VISU_Example_06.py VISU_Example_07.py
-dist_sharedpkgpython_DATA= VISU_shared_modules.py
 
-CLEANFILES= libVISU_Swig.py libVISU_Swig_wrap.cxx
+nodist_salomescript_DATA = libVISU_Swig.py 
 
-install-exec-hook: $(libdir)/_libVISU_Swig.so
+dist_sharedpkgpython_DATA = VISU_shared_modules.py
 
-$(libdir)/_libVISU_Swig.so:
-       ( cd $(libdir); ln -sf libVISU_Swigcmodule.so _libVISU_Swig.so; )
+CLEANFILES = libVISU_Swig.py libVISU_Swig_wrap.cxx
index 159ebdf4ccf6041fde62b92b99e960e284491bc7..7837a08f705e3e347be45589d5aa085a2629acf0 100644 (file)
@@ -1,4 +1,6 @@
-#  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 #  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 #
 #  This library is free software; you can redistribute it and/or
 #  License along with this library; if not, write to the Free Software
 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 # T 2.23, 28: Displaying fields (scalar and vectorial) on nodes, change presentation options.
 # Uses MED files ResOK_0000.med and Fields_group3D.med
-# 
 # This script is equivalent to non-regression test script 003/A1
-
+#
 import salome
 import visu_gui
 import SALOMEDS
@@ -100,7 +101,7 @@ cutplanes.SetOrientation(VISU.CutPlanes.YZ, 0, 0)
 myView.DisplayOnly(cutplanes)
 
 print "Creating Scalar Map On Deformed Shape.......",
-scalarmapondefshape = myVisu.ScalarMapOnDeformedShapeOnField(myResult,myMeshName,myNodeEntity,'vitesse',1);
+scalarmapondefshape = myVisu.DeformedShapeAndScalarMapOnField(myResult,myMeshName,myNodeEntity,'vitesse',1);
 if scalarmapondefshape is None : print "Error"
 else : print "OK"
 scalarmapondefshape.SetScalarField(myCellEntity,'pression',2);
@@ -158,7 +159,7 @@ cutplanes1.SetOrientation(VISU.CutPlanes.YZ, 0, 0)
 myView1.DisplayOnly(cutplanes1)
 
 print "Creating Scalar Map On Deformed Shape.......",
-scalarmapondefshape1 = myVisu.ScalarMapOnDeformedShapeOnField(myResult1,myMeshName1,myCellEntity,'vectoriel field',1);
+scalarmapondefshape1 = myVisu.DeformedShapeAndScalarMapOnField(myResult1,myMeshName1,myCellEntity,'vectoriel field',1);
 if scalarmapondefshape1 is None : print "Error"
 else : print "OK"
 myView1.DisplayOnly(scalarmapondefshape1)
index cfe0ab77ce3a4c4e47fae3881b7cafde622d6c0f..2d2a41a3bfa872c7ee6c41e2b83f7ee8e9db62d9 100644 (file)
@@ -1,4 +1,6 @@
-#  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 #  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 #
 #  This library is free software; you can redistribute it and/or
 #  License along with this library; if not, write to the Free Software
 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 # T 2.24: Save/retrieve view parameters.
 # Uses MED file fra.med from ${DATA_DIR}/MedFiles directory.
-# 
 # This script is equivalent to non-regression test script 003/A3
-
+#
 import salome
 import visu_gui
 import SALOMEDS
index 0883b7a3150f66e08e72b7503d1e7db8041b962d..9e338999d441546cbff1f1b0ce33c4a90b015413 100644 (file)
@@ -1,4 +1,6 @@
-#  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 #  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 #
 #  This library is free software; you can redistribute it and/or
 #  License along with this library; if not, write to the Free Software
 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 # Animation of "vitesse" field, stored in file TimeStamps.med
-# 
 # This script is equivalent to non-regression test script 003/A5
-
+#
 import salome
 import visu_gui
 import SALOMEDS
index 088f7335e5d60abebd81b078020e6e0fc18fd873..0cb950f9f1b2dfd94220b54440a5e89f9a577860 100644 (file)
@@ -1,4 +1,6 @@
-#  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 #  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 #
 #  This library is free software; you can redistribute it and/or
 #  License along with this library; if not, write to the Free Software
 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 # Show some results presentations in different 3D and 2D viewers
 # with different options (view parameters and display modes).
 # Uses MED files fra.med and TimeStamps.med from ${DATA_DIR}/MedFiles directory.
-# 
 # Pay attention to a viewer title to know its purpose.
-# 
 # This script is equivalent to script VISU_SWIG/visu_view3d.py
-
+#
 import os
 import time
 import math
index 26046ed90c5b3a1bb7902aeb171428383132874c..bd6e5e596d1ec764cb63f2459c936d121986af11 100644 (file)
@@ -1,4 +1,6 @@
-#  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 #  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 #
 #  This library is free software; you can redistribute it and/or
 #  License along with this library; if not, write to the Free Software
 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 # Create a table and show it in Plot2d viewer
-# 
 # This script is equivalent to script VISU_SWIG/visu_big_table.py
-
+#
 import salome
 import math
 import SALOMEDS
index 044000f6905e583979e3e5badfaaaec7201975f4..ca29dc4fa3d1f8154d9dcbefa68348f8d4cd9d37 100644 (file)
@@ -1,4 +1,6 @@
-#  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 #  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 #
 #  This library is free software; you can redistribute it and/or
 #  License along with this library; if not, write to the Free Software
 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 # Import a table from file and show it in Plot2d viewer
-
+#
 import salome
 import math
 import SALOMEDS
index c676ddf52874271222db35960ae837665f3b324c..c576f35abac26b8924b86335bbcd7c1c866df09d 100644 (file)
@@ -1,4 +1,6 @@
-#  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 #  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 #
 #  This library is free software; you can redistribute it and/or
 #  License along with this library; if not, write to the Free Software
 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 # Manage view parameters of presentations:
 # Representation Mode, Shrink, Shading, Opacity, Line Width
-
+#
 import salome
 
 import VISU
@@ -144,7 +146,7 @@ scmap = myVisu.CutPlanesOnField(myResult,myMeshName,VISU.NODE,myFieldName,1);
 ChangeRepresentation(scmap, VISU.SHADED, 1, 1, 0.5, 3)
 
 print "Creating Scalar Map On Deformed Shape.......",
-scmap = myVisu.ScalarMapOnDeformedShapeOnField(myResult,myMeshName,VISU.NODE,myFieldName,1);
+scmap = myVisu.DeformedShapeAndScalarMapOnField(myResult,myMeshName,VISU.NODE,myFieldName,1);
 ChangeRepresentation(scmap, VISU.SHADED, 1, 1, 0.5, 3)
 
 print "Creating Deformed Shape.......",
index 22d96130db12c92ff26cbd8ff10216770e6c19ec..74b9f9ea2b27f2424cb1596e770c502817b9da5d 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_Gen_s.cc
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #include "VISU_Gen_s.hh"
 
 #include "VISU_Convertor.hxx"
index 01c167077ceeb26f2035870601f1286b937b1be2..0b3c78380482b59bdce5224262e2be42ee9044d8 100644 (file)
@@ -1,29 +1,29 @@
-//  VISU OBJECT : interactive object for VISU entities implementation
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU OBJECT : interactive object for VISU entities implementation
 //  File   : VISU_Gen_s.hh
 //  Author : Alexey PETROV
 //  Module : VISU
-
+//
 #ifndef __VISU_VISU_Gen_s_H__
 #define __VISU_VISU_Gen_s_H__
 
index e7d7f4548290c82f0dfa8b78f7dbc519cb863a22..43fe8f5ee1674642959135de66f332e9cbe1c817 100644 (file)
@@ -1,4 +1,6 @@
-#  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 #  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 #
 #  This library is free software; you can redistribute it and/or
@@ -15,7 +17,7 @@
 #  License along with this library; if not, write to the Free Software
 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 """
 
diff --git a/src/VISU_SWIG/batch_test_events.py b/src/VISU_SWIG/batch_test_events.py
deleted file mode 100644 (file)
index 804aaee..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-#  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-#
-#  This library is free software; you can redistribute it and/or
-#  modify it under the terms of the GNU Lesser General Public
-#  License as published by the Free Software Foundation; either
-#  version 2.1 of the License.
-#
-#  This library is distributed in the hope that it will be useful,
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-#  Lesser General Public License for more details.
-#
-#  You should have received a copy of the GNU Lesser General Public
-#  License along with this library; if not, write to the Free Software
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-###############################################################
-#
-# File        : batch_test_events.py
-# Description : Test postEvent() functionality for VISU module
-#
-###############################################################
-
-import batchmode_visu
-
-for i in range ( 10 ):
-    batchmode_visu.myVisu.CreateTestView()
-    for j in range ( 10 ):
-        batchmode_visu.myVisu.ShowTestObject();
-
index 62223534af84eed390d69436468e64c3b365085a..f74b353644a70129d538d1c03df670acb1be435f 100644 (file)
@@ -1,27 +1,28 @@
-#  VISU VISU_SWIG : binding of C++ implementation and Python
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
 #
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
 #  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+#  VISU VISU_SWIG : binding of C++ implementation and Python
 #  File   : batchmode_visu.py
 #  Module : VISU
-
+#
 from batchmode_salome import *
 import visu
 
index b1d23d916d269146cd876ffac5762f6f98fd61bf..ceef7c0e6004cea58736115b37de65f4719c0a22 100644 (file)
@@ -1,29 +1,30 @@
-#  VISU VISU_SWIG : binding of C++ implementation and Python
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
 #  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+#  VISU VISU_SWIG : binding of C++ implementation and Python
 #  File   : visu_big_table.py
 #  Author : Vadim SANDLER
 #  Module : VISU
 #  $Header$
-
+#
 from batchmode_salome import *
 import batchmode_visu
 import SALOMEDS
index 3c0f4249f761783176741ebdcf7234c519fb0a43..1bfb52cd0c6ba311642f065c3049c5806eb8340c 100644 (file)
@@ -1,28 +1,29 @@
-#  VISU VISU_SWIG : binding of C++ implementation and Python
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
 #  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+#  VISU VISU_SWIG : binding of C++ implementation and Python
 #  File   : test_table.py
 #  Author : Alexey Petrov
 #  Module : VISU
-
+#
 from VISU import *
 from batchmode_visu_table import *
 
index 927feab8f3fc0e4af64cfb40a149ecd7a52b322b..3bab3fb3c1ac64d98a09d45ba38b6f2dea956dd2 100644 (file)
@@ -1,27 +1,28 @@
-#  VISU VISU_SWIG : binding of C++ implementation and Python
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
 #  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+#  VISU VISU_SWIG : binding of C++ implementation and Python
 #  File   : batchmode_visu_view3d.py
 #  Module : VISU
-
+#
 import os
 import time
 import math
index 21bf54759d5b669c368b650b38903d2d81961475..9925172b5bb3de0577198b40d1f41297d9ab8b87 100644 (file)
@@ -1,31 +1,30 @@
-//  VISU VISU_SWIG : binding of C++ implementation and Python
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISU_SWIG : binding of C++ implementation and Python
 //  File   : libVISU_Swig.i
 //  Author : Paul RASCLE, EDF
 //  Module : VISU
 //  $Header$
-
+//
 %module libVISU_Swig
 %{
 #include "VISU_Gen_s.hh"
diff --git a/src/VISU_SWIG/test_events.py b/src/VISU_SWIG/test_events.py
deleted file mode 100755 (executable)
index 385466f..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-#  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-#
-#  This library is free software; you can redistribute it and/or
-#  modify it under the terms of the GNU Lesser General Public
-#  License as published by the Free Software Foundation; either
-#  version 2.1 of the License.
-#
-#  This library is distributed in the hope that it will be useful,
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-#  Lesser General Public License for more details.
-#
-#  You should have received a copy of the GNU Lesser General Public
-#  License along with this library; if not, write to the Free Software
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-#
-###############################################################
-#
-# File        : test_events.py
-# Description : Test postEvent() functionality for VISU module
-#               This script can be run from GUI Python console only!
-###############################################################
-
-from visu_gui import *
-
-for i in range ( 10 ):
-    myVisu.CreateTestView()
-    for j in range ( 10 ):
-        myVisu.ShowTestObject();
-
index abc7e83197cc036442c82040d16e0a29d3f5c32d..42fead876d7d175b70d262894fe809df17af8e7a 100644 (file)
@@ -1,27 +1,28 @@
-#  VISU VISU_SWIG : binding of C++ implementation and Python
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
 #  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+#  VISU VISU_SWIG : binding of C++ implementation and Python
 #  File   : visu.py
 #  Module : VISU
-
+#
 import os
 import re
 from time import sleep
@@ -628,15 +629,15 @@ def CreatePrsForResult(theVisu, theResult, theView, thePrsTypeList, thePictureDi
                                         else :
                                             aVISUObjList.append(aPrsObj)
 
-                                if HasValue(thePrsTypeList,VISU.TSCALARMAPONDEFORMEDSHAPE) :
-                                    print "          Creating ScalarMapOnDeformedShapeOnField",
-                                    aPrsObj = theVisu.ScalarMapOnDeformedShapeOnField(theResult,aMeshName,anEntity,aFieldName,aTimeStampId)
+                                if HasValue(thePrsTypeList,VISU.TSCALARMAPONDEFORMEDSHAPE) or HasValue(thePrsTypeList,VISU.TDEFORMEDSHAPEANDSCALARMAP) :
+                                    print "          Creating DeformedShapeAndScalarMapOnField",
+                                    aPrsObj = theVisu.DeformedShapeAndScalarMapOnField(theResult,aMeshName,anEntity,aFieldName,aTimeStampId)
                                     if aPrsObj is None : print "Error"
                                     else :
                                         print ",OK"
                                         theView.DisplayOnly(aPrsObj)
                                         theView.FitAll()
-                                        aPictureName = thePictureDir + aMeshNamePic + "_" + anEntityId + "_" + aFieldName + "_" + str(aTimeStampId) + "_TSCALARMAPONDEFORMEDSHAPE." + thePictureExt
+                                        aPictureName = thePictureDir + aMeshNamePic + "_" + anEntityId + "_" + aFieldName + "_" + str(aTimeStampId) + "_TDEFORMEDSHAPEANDSCALARMAP." + thePictureExt
                                         aPictureName = re.sub("\s+","_", aPictureName)
                                         theView.SavePicture(aPictureName)
                                         if theIsAutoDelete :
index cdf8b6f6d20db98e4a9f282426b703105a9d65c4..60995f0e42e7bc401e6f3e70f52807d900abb59e 100644 (file)
@@ -1,27 +1,28 @@
-#  VISU VISU_SWIG : binding of C++ implementation and Python
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
 #  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+#  VISU VISU_SWIG : binding of C++ implementation and Python
 #  File   : visu_apply_properties.py
 #  Module : VISU
-
+#
 import os
 import time
 import math
index 2868e2b068946fefd5c6c9b0bd4727567860561b..d70fce98aeef01debdf9a35ffc7e7c6fbf88e9f4 100644 (file)
@@ -1,27 +1,28 @@
-#  VISU VISU_SWIG : binding of C++ implementation and Python
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
 #  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+#  VISU VISU_SWIG : binding of C++ implementation and Python
 #  File   : visu_apply_properties_consecutive.py
 #  Module : VISU
-
+#
 import os
 import time
 import math
index 401c5ffe347f994d5214d250bd61f2d5fb0c9dcd..33e6146a348fe4d14eb9f6d4311cc81e36f05ad8 100644 (file)
@@ -1,29 +1,30 @@
-#  VISU VISU_SWIG : binding of C++ implementation and Python
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
 #  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+#  VISU VISU_SWIG : binding of C++ implementation and Python
 #  File   : visu_big_table.py
 #  Author : Vadim SANDLER
 #  Module : VISU
 #  $Header$
-
+#
 import salome
 import math
 import SALOMEDS
index bdd01bde5bc203a74da671c7165c3ab964c23562..432a14fa75a3c07406f3c68e3db7e2362d5baeed 100644 (file)
@@ -1,3 +1,24 @@
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
 import os
 import time
 import VISU
@@ -56,6 +77,7 @@ PRS3D_TYPE_LIST.append(VISU.TDEFORMEDSHAPE)
 PRS3D_TYPE_LIST.append(VISU.TVECTORS)
 PRS3D_TYPE_LIST.append(VISU.TSTREAMLINES)
 PRS3D_TYPE_LIST.append(VISU.TSCALARMAPONDEFORMEDSHAPE)
+PRS3D_TYPE_LIST.append(VISU.TDEFORMEDSHAPEANDSCALARMAP)
 
 
 #---------------------------------------------------------------
@@ -83,4 +105,4 @@ anInput.myEntity = VISU.CELL;
 anInput.myFieldName = "pression";
 WalkTroughTimeStamps(VISU.TGAUSSPOINTS, anInput, aViewManager)
 
-#execfile('/data/apo/a.py')
\ No newline at end of file
+#execfile('/data/apo/a.py')
index 88514870060181aec3e1472b2c1025b8316bb49d..598e9e8b158e6ceb964304701260f5c40ad878eb 100644 (file)
@@ -1,4 +1,6 @@
-#  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 #  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 #
 #  This library is free software; you can redistribute it and/or
@@ -15,7 +17,7 @@
 #  License along with this library; if not, write to the Free Software
 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 import VISU
 import SALOMEDS
index b5798331448e4dcf6a770552638f9523a85738f2..d170a26a7186aeda7bf69de1b76473e5e0cfa592 100644 (file)
@@ -1,27 +1,28 @@
-#  VISU VISU_SWIG : binding of C++ implementation and Python
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
 #  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+#  VISU VISU_SWIG : binding of C++ implementation and Python
 #  File   : visu_gui.py
 #  Module : VISU
-
+#
 import sys
 import os
 
index 2a7c7f9dee19afab916be7ceec1df792a967fd67..703067d0d6ac80bb2f048f984457f49232ca9179 100644 (file)
@@ -1,27 +1,28 @@
-#  VISU VISU_SWIG : binding of C++ implementation and Python
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
 #  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+#  VISU VISU_SWIG : binding of C++ implementation and Python
 #  File   : visu_med.py
 #  Module : VISU
-
+#
 import os
 import salome
 import SALOMEDS
diff --git a/src/VISU_SWIG/visu_pointmap3d.py b/src/VISU_SWIG/visu_pointmap3d.py
new file mode 100755 (executable)
index 0000000..0736c27
--- /dev/null
@@ -0,0 +1,78 @@
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+#
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
+import os
+import VISU
+from visu_gui import *
+
+aTableFile = os.getenv('DATA_DIR') + '/Tables/table_test.xls'
+
+aTableSObject = myVisu.ImportTables(aTableFile)
+
+aTable = None
+if aTableSObject:
+  anIsFound, aSObject = aTableSObject.FindSubObject(1)
+  if anIsFound:
+    aTable = aSObject.GetObject()
+
+aViewManager = myVisu.GetViewManager();
+aView = aViewManager.Create3DView()
+if aView is None : print "Creating View Error"
+print aTable
+
+##########Get Values################
+aScaleFactor = aTable.GetScaleFactor();
+anIsContourPrs = aTable.GetIsContourPrs();
+aNbOfContours = aTable.GetNbOfContours();
+aScaling = aTable.GetScaling();
+aMin = aTable.GetMin();
+aMax = aTable.GetMax();
+aSourceMin = aTable.GetSourceMin();
+aSourceMax = aTable.GetSourceMax();
+aPosX = aTable.GetPosX();
+aPosY = aTable.GetPosY();
+aHeight = aTable.GetHeight();
+aWidth = aTable.GetWidth();
+aNbColors = aTable.GetNbColors();
+aLabels = aTable.GetLabels();
+aBarOrientation = aTable.GetBarOrientation();
+
+
+print "Get Values:"
+print "aScaleFactor = ", aScaleFactor
+print "anIsContourPrs = ", anIsContourPrs
+print "aNbOfContours = ", aNbOfContours
+print "aScaling = ", aScaling
+print "===== SCALAR BAR ======="
+print "aMin = ", aMin
+print "aMax = ", aMax
+print "aSourceMin = ", aSourceMin
+print "aSourceMax = ", aSourceMax
+print "aPosX = ", aPosX
+print "aPosY = ", aPosY
+print "aHeight = ", aHeight
+print "aWidth = ", aWidth
+print "aNbColors = ", aNbColors
+print "aLabels = ", aLabels
+print "aBarOrientation = ", aBarOrientation
+
+aView.DisplayOnly( aTable )
+aView.FitAll()
\ No newline at end of file
index 72ab668dde314a5eaa7dcfd2a98ea96bda48ff4a..8c70f2b7079643e311f85cfa00e08563a21978cb 100644 (file)
@@ -1,27 +1,28 @@
-#  VISU VISU_SWIG : binding of C++ implementation and Python
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
 #  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+#  VISU VISU_SWIG : binding of C++ implementation and Python
 #  File   : visu_prs_exam.py
 #  Module : VISU
-
+#
 import sys
 import os
 import salome
index 887f885bd5343f382d5982eec29901fb4b3df150..42de24e40793ee821bb80c8c3cd5f4b7dd080d1a 100644 (file)
@@ -1,4 +1,6 @@
-#  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 #  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 #
 #  This library is free software; you can redistribute it and/or
@@ -15,9 +17,8 @@
 #  License along with this library; if not, write to the Free Software
 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
-
 import VISU
 import SALOMEDS
 from visu_gui import *
index 0603274f91d8f2ab7590c5fb55ec3895b66f6425..2e9ae29e903a671c9d169aee1cb94b3bba5835e6 100644 (file)
@@ -1,27 +1,28 @@
-#  VISU VISU_SWIG : binding of C++ implementation and Python
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
 #  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+#  VISU VISU_SWIG : binding of C++ implementation and Python
 #  File   : visu_view3d.py
 #  Module : VISU
-
+#
 import os
 import time
 import math
index 2eb4a9dbb7f3b20ce988262544d0d395446cfe89..0d602dbe1564a9b0344b499dbd8d00155ab544dd 100644 (file)
@@ -1,4 +1,6 @@
-#  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 #  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 #
 #  This library is free software; you can redistribute it and/or
@@ -15,7 +17,7 @@
 #  License along with this library; if not, write to the Free Software
 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 from libVISU_Swig import *
 medFile = os.getenv('DATA_DIR') + '/MedFiles/fra.med'
index ab2c8724dc5e4665af5d033aba5cbf3107d69801..c803d850bd406faaa49e6bc72814c0b76974856c 100644 (file)
@@ -1,29 +1,30 @@
-#  VISU VISU_SWIG : binding of C++ implementation and Python
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
 #  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+#  VISU VISU_SWIG : binding of C++ implementation and Python
 #  File   : visu_table.py
 #  Author : Vadim SANDLER
 #  Module : VISU
 #  $Header$
-
+#
 import salome
 import math
 import SALOMEDS
index bc099d12e9d2b1126e4c9f0d87354ece87bb3e62..01288a58d10ff3327a5dfd51f50007370cfb082c 100644 (file)
@@ -1,28 +1,29 @@
-#  VISU VISU_SWIG : binding of C++ implementation and Python
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
 #  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+#  VISU VISU_SWIG : binding of C++ implementation and Python
 #  File   : visu_view.py
 #  Author : Alexey Petrov
 #  Module : VISU
-
+#
 import SALOMEDS
 import VISU
 
index adc461e8b71d04090cd6a20ca5791dcc9e233907..fa68e6f8a9b58b32628bd84dbe976f76dd57b6e3 100644 (file)
@@ -1,27 +1,28 @@
-#  VISU VISU_SWIG : binding of C++ implementation and Python
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+#  This library is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU Lesser General Public
+#  License as published by the Free Software Foundation; either
+#  version 2.1 of the License.
+#
+#  This library is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+#  Lesser General Public License for more details.
+#
+#  You should have received a copy of the GNU Lesser General Public
+#  License along with this library; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-#  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-#  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-# 
-#  This library is free software; you can redistribute it and/or 
-#  modify it under the terms of the GNU Lesser General Public 
-#  License as published by the Free Software Foundation; either 
-#  version 2.1 of the License. 
-# 
-#  This library is distributed in the hope that it will be useful, 
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-#  Lesser General Public License for more details. 
-# 
-#  You should have received a copy of the GNU Lesser General Public 
-#  License along with this library; if not, write to the Free Software 
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-# 
 #  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+#  VISU VISU_SWIG : binding of C++ implementation and Python
 #  File   : visu_view3d.py
 #  Module : VISU
-
+#
 import os
 import time
 import math
index da1bf6c079889013b13222927abf602e75e43eb0..ace532c0ae846c3c50815721f3cc8293365dfde8 100755 (executable)
@@ -1,4 +1,6 @@
-#  Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+#  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+#
+#  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 #  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 #
 #  This library is free software; you can redistribute it and/or
 #  License along with this library; if not, write to the Free Software
 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 #  File   : Makefile.in
 #  Author : Alexander Solovyov(OCN)
 #  Module : VVTK
 # $Header: 
-
+#
 include $(top_srcdir)/adm_local/unix/make_common_starter.am
 
 lib_LTLIBRARIES= libVVTK.la
@@ -29,46 +31,17 @@ lib_LTLIBRARIES= libVVTK.la
 # header files
 salomeinclude_HEADERS= \
        VVTK.h \
-       VVTK_ViewManager.h \
-       VVTK_ViewModel.h \
-       VVTK_InteractorStyle.h \
-       VVTK_PickingDlg.h \
-       VVTK_SegmentationCursorDlg.h \
        VVTK_PrimitiveBox.h \
-       VVTK_SizeBox.h \
-       VVTK_ViewWindow.h \
-       VVTK_MainWindow.h \
-       VVTK_ImageWriter.h \
-       VVTK_ImageWriterMgr.h \
-       VVTK_RecorderDlg.h \
-       VVTK_Recorder.h
+       VVTK_SizeBox.h
 
 dist_libVVTK_la_SOURCES= \
-       VVTK_ViewManager.cxx \
-       VVTK_ViewModel.cxx \
-       VVTK_InteractorStyle.cxx \
-       VVTK_PickingDlg.cxx \
-       VVTK_SegmentationCursorDlg.cxx \
        VVTK_PrimitiveBox.cxx \
-       VVTK_SizeBox.cxx \
-       VVTK_ViewWindow.cxx \
-       VVTK_Renderer.cxx \
-       VVTK_MainWindow.cxx \
-       VVTK_ImageWriter.cxx \
-       VVTK_ImageWriterMgr.cxx \
-       VVTK_RecorderDlg.cxx \
-       VVTK_Recorder.cxx
+       VVTK_SizeBox.cxx
 
 MOC_FILES= \
-       VVTK_ViewWindow_moc.cxx \
-       VVTK_ViewModel_moc.cxx \
-       VVTK_ViewManager_moc.cxx \
-       VVTK_PickingDlg_moc.cxx \
-       VVTK_SegmentationCursorDlg_moc.cxx \
-       VVTK_RecorderDlg_moc.cxx \
        VVTK_PrimitiveBox_moc.cxx \
-       VVTK_SizeBox_moc.cxx \
-       VVTK_MainWindow_moc.cxx
+       VVTK_SizeBox_moc.cxx
+
 nodist_libVVTK_la_SOURCES=$(MOC_FILES)
 
 libVVTK_la_CPPFLAGS= \
@@ -82,10 +55,11 @@ libVVTK_la_CPPFLAGS= \
        -I$(srcdir)/../OBJECT -I$(srcdir)/../PIPELINE -I$(srcdir)/../CONVERTOR
 
 libVVTK_la_LDFLAGS= \
+       ../OBJECT/libVisuObject.la \
+       ../PIPELINE/libVisuPipeLine.la \
+       ../CONVERTOR/libVisuConvertor.la \
+       $(KERNEL_LDFLAGS) -lOpUtil \
+       $(GUI_LDFLAGS) -lsuit -lCAM -lSalomeObject -lSVTK \
        $(QT_MT_LIBS) \
        $(OCC_LIBS) \
-       $(VTK_LIBS) \
-       $(KERNEL_LDFLAGS) \
-       $(GUI_LDFLAGS)
-
-libVVTK_la_LIBADD= -lsuit -lCAM -lSalomeObject -lSVTK -lOpUtil
+       $(VTK_LIBS)
index 5954601c8c6165c58dafbb5e53de485d51e14b9b..5d65798f9b04c04b23009f7f8e03f59ea865ab02 100755 (executable)
@@ -1,21 +1,23 @@
-// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// This library is distributed in the hope that it will be useful
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 #ifdef WNT
 #ifdef VISU_VVTK_EXPORTS
index a411c0e291eb359af40b4a83cc7e7528521ab67b..463eba43de9d905f4eca997fe7c55c9a4b662c6f 100755 (executable)
@@ -1,34 +1,35 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   :
 //  Author :
 //  Module :
 //  $Header$
-
+//
 #include "VVTK_ImageWriter.h"
 
-#include <qsemaphore.h>
+#include <QSemaphore>
+
+#include "utilities.h"
 
 #include <vtkImageData.h>
 #include <vtkImageClip.h>
@@ -61,7 +62,7 @@ VVTK_ImageWriter
 VVTK_ImageWriter
 ::~VVTK_ImageWriter()
 {
-  if(MYDEBUG) cout<<"VVTK_ImageWriter::~VVTK_ImageWriter - this = "<<this<<endl;
+  if(MYDEBUG) MESSAGE("VVTK_ImageWriter::~VVTK_ImageWriter - this = "<<this);
 }
 
 
@@ -104,10 +105,10 @@ VVTK_ImageWriter
   aWriter->Delete();
   myImageData->Delete();
 
-  if(MYDEBUG) cout<<"VVTK_ImageWriter::run "<<
+  if(MYDEBUG) MESSAGE("VVTK_ImageWriter::run "<<
                "- this = "<<this<<
-               "; total = "<<mySemaphore->total()<<
-               "; available = "<<mySemaphore->available()<<endl;
-  *mySemaphore -= 1;
+               //"; total = "<<mySemaphore->total()<<
+               "; available = "<<mySemaphore->available() );
+  mySemaphore->release();
 }
 
index 61e7579ad845a94b889e925a7865b4c6077d37ab..2d73551a81179c5b4d4509c2d11686a9c3279b3a 100755 (executable)
@@ -1,36 +1,34 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   :
 //  Author :
 //  Module :
 //  $Header$
-
-
+//
 #ifndef _VVTK_ImageWriter_Header_File_
 #define _VVTK_ImageWriter_Header_File_
 
-#include <qthread.h>
+#include <QThread>
 #include <string>
 
 class vtkImageData;
index 027e1c39539478e119ae0d8fc264657b215806ba..c2c099190b08d2aae4d7e64a1b74b011d5c322fd 100755 (executable)
@@ -1,40 +1,40 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   :
 //  Author :
 //  Module :
 //  $Header$
-
+//
 #include "VVTK_ImageWriterMgr.h"
 #include "VVTK_ImageWriter.h"
 
 #include <vtkImageData.h>
 
-#include <qsemaphore.h>
+#include <QSemaphore>
 
-#include <limits>
+#include "utilities.h"
 
+#include <limits>
 
 #ifdef _DEBUG_
 static int MYDEBUG = 0;
@@ -48,10 +48,10 @@ VVTK_ImageWriterMgr
 {
   int aMax = std::numeric_limits<int>::max() / 2;
   mySemaphore = new QSemaphore(aMax);
-  *mySemaphore += aMax;
-  if(MYDEBUG) cout<<"VVTK_ImageWriterMgr::VVTK_ImageWriterMgr "<<
-               "- total = "<<mySemaphore->total()<<
-               "; available = "<<mySemaphore->available()<<endl;
+  mySemaphore->acquire( aMax );
+  if(MYDEBUG) MESSAGE("VVTK_ImageWriterMgr::VVTK_ImageWriterMgr "<<
+               //"- total = "<<mySemaphore->total()<<
+               "; available = "<<mySemaphore->available() );
 }
 
 
@@ -90,11 +90,11 @@ void
 VVTK_ImageWriterMgr
 ::Stop()
 {
-  if(MYDEBUG) cout<<"VVTK_ImageWriterMgr::Stop "<<
-               "- total = "<<mySemaphore->total()<<
-               "; available = "<<mySemaphore->available()<<endl;
-  if(MYDEBUG) cout<<"VVTK_ImageWriterMgr::Stop - *mySemaphore += "<<myThreads.size()<<endl;
-  *mySemaphore += myThreads.size();
+  if(MYDEBUG) MESSAGE("VVTK_ImageWriterMgr::Stop "<<
+               //"- total = "<<mySemaphore->total()<<
+               "; available = "<<mySemaphore->available() );
+  if(MYDEBUG) MESSAGE("VVTK_ImageWriterMgr::Stop - *mySemaphore += "<<myThreads.size() );
+  mySemaphore->acquire( myThreads.size() );
 
   for(size_t anId = 0, anEnd = myThreads.size(); anId < anEnd; anId++){
     VVTK_ImageWriter* anImageWriter = myThreads[anId];
index 033806e3ea12e156776ae5798a1ecbe6a20666f9..f0d07812060eeb2b60e3bee6699c5a2faafeaa44 100755 (executable)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   :
 //  Author :
 //  Module :
 //  $Header$
-
+//
 #ifndef _VVTK_ImageWriterMgr_Header_File_
 #define _VVTK_ImageWriterMgr_Header_File_
 
index 95943f037f17af82163d9175fd7b839e1a5becd0..9ada28830a794c13ccca3a1bc3a2804d4f8148ac 100644 (file)
@@ -1,32 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   : VVTK_InteractorStyle.cxx
 //  Author : Christophe ATTANASIO
 //  Module : SALOME
 //  $Header$
-
-
+//
 #include "VVTK_InteractorStyle.h"
 #include "VISU_GaussPtsSettings.h"
 #include "SVTK_Selector.h"
index 046ffa9c01db593c42f22e184e8aa07f64872320..c8bd7ff0ed4a89096d2575ef7df742db6965d651 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   : VVTK_InteractorStyle.h
 //  Author : Christophe ATTANASIO
 //  Module : SALOME
 //  $Header$
-
+//
 #ifndef __VVTK_InteractorStyle_h
 #define __VVTK_InteractorStyle_h
 
index 80a3345c36be3422da7ef61f0ac2abe594cd9cc4..65e9729ec578e41ad7d7e9294cac65e1b188a086 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME OBJECT : implementation of interactive object visualization for OCC and VTK viewers
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  SALOME OBJECT : implementation of interactive object visualization for OCC and VTK viewers
 //  File   : 
 //  Author : 
 //  Module : 
 //  $Header$
-
+//
 #include "VVTK_MainWindow.h"
 #include "VVTK_InteractorStyle.h"
 #include "VVTK_Recorder.h"
 #include "SUIT_Tools.h"
 #include "SUIT_ViewWindow.h"
 #include "SUIT_ResourceMgr.h"
-#include "SUIT_ToolButton.h"
 #include "SUIT_Accel.h"
 #include "SUIT_MessageBox.h"
 #include "QtxAction.h"
+#include "QtxMultiAction.h"
+#include "QtxActionToolMgr.h"
 
-#include <qimage.h>
-#include <qtoolbar.h>
-#include <qsplitter.h>
-#include <qfiledialog.h>
-#include <qapplication.h>
+#include <QImage>
+#include <QToolBar>
+#include <QSplitter>
+#include <QFileDialog>
+#include <QApplication>
 
 //----------------------------------------------------------------------------
-VVTK_MainWindow
-::VVTK_MainWindow(QWidget* theParent, 
-                 const char* theName,
-                 SUIT_ResourceMgr* theResourceMgr,
-                 SUIT_ViewWindow* theViewWindow):
+VVTK_MainWindow::VVTK_MainWindow(QWidget* theParent, 
+                                const char* theName,
+                                SUIT_ResourceMgr* theResourceMgr,
+                                SUIT_ViewWindow* theViewWindow):
   SVTK_MainWindow(theParent,theName,theResourceMgr,theViewWindow),
-  myInteractorStyle(VVTK_InteractorStyle::New()),
   myControllerIncrement(VVTK_ControllerIncrement::New()),
   myControllerOnKeyDown(VVTK_ControllerOnKeyDown::New())
 {
-  myInteractorStyle->SetControllerIncrement(myControllerIncrement.GetPointer());
-  myControllerIncrement->Delete();
+  myToolMgr = new QtxActionToolMgr( this );
 
-  myInteractorStyle->SetControllerOnKeyDown(myControllerOnKeyDown.GetPointer());
+  myControllerIncrement->Delete();
   myControllerOnKeyDown->Delete();
 
-  myInteractorStyle->Delete();
-
-  moveDockWindow(myToolBar,Qt::DockLeft);
-  myActionsMap[NonIsometric]->removeFrom(myToolBar);
-
   // Recording
-  myRecordingToolBar = new QToolBar(this);
-  myRecordingToolBar->setCloseMode(QDockWindow::Undocked);
-  myRecordingToolBar->setLabel(tr("LBL_TOOLBAR_RECORD_LABEL"));
-  moveDockWindow(myRecordingToolBar,Qt::DockLeft);
+  myRecordingToolBar = new QToolBar(tr("LBL_TOOLBAR_RECORD_LABEL"), this);
+  addToolBar(Qt::LeftToolBarArea, myRecordingToolBar );
+  myViewWindow->toolMgr()->remove( NonIsometric, myToolBar );
+  
 
   myStartAction = new QtxAction(tr("MNU_VVTK_RECORDING_START"), 
                                theResourceMgr->loadPixmap( "VISU", tr( "ICON_VVTK_RECORDING_START" ) ),
                                tr( "MNU_VVTK_RECORDING_START" ), 0, this);
   myStartAction->setStatusTip(tr("DSC_VVTK_RECORDING_START"));
-  myStartAction->addTo( myRecordingToolBar );
-  connect( myStartAction, SIGNAL( activated() ), this, SLOT( OnStartRecording() ) );
+  //myStartAction->addTo( myRecordingToolBar );
+  myRecordingToolBar->addAction( myStartAction  );
+  connect( myStartAction, SIGNAL( triggered ( bool ) ), this, SLOT( OnStartRecording() ) );
 
   myPlayAction = new QtxAction(tr("MNU_VVTK_RECORDING_PLAY"), 
                               theResourceMgr->loadPixmap( "VISU", tr( "ICON_VVTK_RECORDING_PLAY" ) ),
                               tr( "MNU_VVTK_RECORDING_PLAY" ), 0, this);
   myPlayAction->setStatusTip(tr("DSC_VVTK_RECORDING_PLAY"));
   myPlayAction->setEnabled( false );
-  myPlayAction->addTo( myRecordingToolBar );
-  connect( myPlayAction, SIGNAL( activated() ), this, SLOT( OnPlayRecording() ) );
+  //myPlayAction->addTo( myRecordingToolBar );
+  myRecordingToolBar->addAction( myPlayAction  );
+  connect( myPlayAction, SIGNAL( triggered ( bool ) ), this, SLOT( OnPlayRecording() ) );
 
   myPauseAction = new QtxAction(tr("MNU_VVTK_RECORDING_PAUSE"), 
                                theResourceMgr->loadPixmap( "VISU", tr( "ICON_VVTK_RECORDING_PAUSE" ) ),
                                tr( "MNU_VVTK_RECORDING_PAUSE" ), 0, this);
   myPauseAction->setStatusTip(tr("DSC_VVTK_RECORDING_PAUSE"));
   myPauseAction->setEnabled( false );
-  myPauseAction->addTo( myRecordingToolBar );
-  connect( myPauseAction, SIGNAL( activated() ), this, SLOT( OnPauseRecording() ) );
+  //myPauseAction->addTo( myRecordingToolBar );
+  myRecordingToolBar->addAction( myPauseAction  );
+  connect( myPauseAction, SIGNAL( triggered ( bool ) ), this, SLOT( OnPauseRecording() ) );
 
   myStopAction = new QtxAction(tr("MNU_VVTK_RECORDING_STOP"), 
                               theResourceMgr->loadPixmap( "VISU", tr( "ICON_VVTK_RECORDING_STOP" ) ),
                               tr( "MNU_VVTK_RECORDING_STOP" ), 0, this);
   myStopAction->setStatusTip(tr("DSC_VVTK_RECORDING_STOP"));
   myStopAction->setEnabled( false );
-  myStopAction->addTo( myRecordingToolBar );
-  connect( myStopAction, SIGNAL( activated() ), this, SLOT( OnStopRecording() ) );
+  //myStopAction->addTo( myRecordingToolBar );
+  myRecordingToolBar->addAction( myStopAction  );
+  connect( myStopAction, SIGNAL( triggered ( bool ) ), this, SLOT( OnStopRecording() ) );
   
   myRecorder = VVTK_Recorder::New();
   //myRecorder->CheckExistAVIMaker();
@@ -122,9 +118,14 @@ VVTK_MainWindow
 }
 
 //----------------------------------------------------------------------------
-void
-VVTK_MainWindow
-::Initialize(SVTK_RenderWindowInteractor* theInteractor)
+
+QtxActionToolMgr* VVTK_MainWindow::toolMgr() const
+{
+  return myToolMgr;
+}
+
+//----------------------------------------------------------------------------
+void VVTK_MainWindow::Initialize(SVTK_RenderWindowInteractor* theInteractor)
 { 
   vtkInteractorStyle* aStyle = theInteractor->GetInteractorStyle();
   if(SVTK_InteractorStyle *anInteractorStyle = dynamic_cast<SVTK_InteractorStyle*>(aStyle)){
@@ -138,13 +139,14 @@ VVTK_MainWindow
   myRecorder->SetUseSkippedFrames(true);
   myRecorder->SetRenderWindow(theInteractor->getRenderWindow());
 
-  disconnect( myActionsMap[ DumpId ], SIGNAL( activated() ),
+  disconnect( SVTK_MainWindow::action( DumpId ), SIGNAL( activated() ),
              myViewWindow, SLOT( onDumpView() ) );
 
-  connect( myActionsMap[ DumpId ], SIGNAL( activated() ),
+  connect( SVTK_MainWindow::action( DumpId ), SIGNAL( activated() ),
           this, SLOT( onDumpView() ) );
 
   SVTK_MainWindow::Initialize(theInteractor);
+  addToolBar( Qt::LeftToolBarArea, getToolBar() );
 }
 
 VVTK_MainWindow::~VVTK_MainWindow()
@@ -167,34 +169,23 @@ void VVTK_MainWindow::onDumpView()
   if( fileName.isEmpty() )
     return;
 
-  QString fmt = SUIT_Tools::extension( fileName ).upper();
+  QString fmt = SUIT_Tools::extension( fileName ).toUpper();
   if( fmt.isEmpty() )
     fmt = QString( "BMP" ); // default format
   else if( fmt == "JPG" )
     fmt = "JPEG";
 
-  QApplication::setOverrideCursor( Qt::waitCursor );
-  img.save( fileName, fmt.latin1() );
+  QApplication::setOverrideCursor( Qt::WaitCursor );
+  img.save( fileName, fmt.toLatin1() );
   QApplication::restoreOverrideCursor();
 }
 
-//----------------------------------------------------------------------------
-void
-VVTK_MainWindow
-::OnInteractorStyleSwitch(bool theIsGaussStyleOn)
-{
-  if ( theIsGaussStyleOn )
-    this->PushInteractorStyle(myInteractorStyle.GetPointer());
-  else
-    this->PopInteractorStyle();
-}
-
 //----------------------------------------------------------------------------
 void VVTK_MainWindow::OnStartRecording()
 {
   myRecorder->CheckExistAVIMaker();
   if (myRecorder->ErrorStatus()) {
-    SUIT_MessageBox::warn1(this, tr("ERROR"), tr("MSG_NO_AVI_MAKER"), tr("&OK"));
+    SUIT_MessageBox::warning(this, tr("ERROR"), tr("MSG_NO_AVI_MAKER") );
   }
   else {
     VVTK_RecorderDlg* aRecorderDlg = new VVTK_RecorderDlg( this, myRecorder );
@@ -245,9 +236,7 @@ void VVTK_MainWindow::OnStopRecording()
 }
 
 //----------------------------------------------------------------------------
-void 
-VVTK_MainWindow
-::action( const int accelAction  )
+void VVTK_MainWindow::action( const int accelAction  )
 {
   if ( accelAction == SUIT_Accel::ZoomFit )
     onFitAll();
@@ -258,52 +247,31 @@ VVTK_MainWindow
 }
 
 //----------------------------------------------------------------------------
-VVTK_MainWindow1
-::VVTK_MainWindow1(QSplitter* theParent, 
-                 const char* theName,
-                 SUIT_ResourceMgr* theResourceMgr,
-                 SUIT_ViewWindow* theViewWindow):
+VVTK_MainWindow1::VVTK_MainWindow1(QSplitter* theParent, 
+                                  const char* theName,
+                                  SUIT_ResourceMgr* theResourceMgr,
+                                  SUIT_ViewWindow* theViewWindow):
   VVTK_MainWindow(theParent,theName,theResourceMgr,theViewWindow),
-  myStyleSwitchAction(NULL),
   mySplitter(theParent),
   myPickingDlg(NULL)
 {
-  myPtsToolBar = new QToolBar(this);
-  myPtsToolBar->setCloseMode(QDockWindow::Undocked);
-  myPtsToolBar->setLabel(tr("LBL_TOOLBAR_GAUSS_LABEL"));
-  moveDockWindow(myPtsToolBar,Qt::DockLeft);
+  myPtsToolBar = new QToolBar( tr("LBL_TOOLBAR_GAUSS_LABEL"), this );
+  addToolBar( Qt::LeftToolBarArea, myPtsToolBar );
 
   QPixmap aPixmap;
   QtxAction* anAction;
 
-  aPixmap = theResourceMgr->loadPixmap( "VISU", tr( "ICON_VVTK_INTERACTOR_STYLE_SWITCH" ) );
-  anAction = new QtxAction(tr("MNU_VVTK_INTERACTOR_STYLE_SWITCH"), 
-                          aPixmap,
-                          tr( "MNU_VVTK_INTERACTOR_STYLE_SWITCH" ), 
-                          0, 
-                          this, 
-                          "VVTK/SVTK StyleSwitch", 
-                          true);
-  anAction->setToggleAction(true);
-  anAction->setStatusTip(tr("DSC_VVTK_INTERACTOR_STYLE_SWITCH"));
-
-  anAction->addTo( myPtsToolBar );
-  myStyleSwitchAction = anAction;
-
-  if( theResourceMgr->integerValue( "VISU", "mouse_behaviour", true ) == 1 )
-    myStyleSwitchAction->toggle();
-
   aPixmap = theResourceMgr->loadPixmap("VISU",tr("ICON_VVTK_SELECTION_MODE_SWITCH"));
   myPickingAction = new QtxAction(tr("MNU_VVTK_SELECTION_MODE_SWITCH"), 
                                  aPixmap,
                                  tr( "MNU_VVTK_SELECTION_MODE_SWITCH" ), 
                                  0, 
                                  this, 
-                                 "VVTK/SVTK SelectionSwitch", 
+                                 //"VVTK/SVTK SelectionSwitch", 
                                  true);
-  myPickingAction->setToggleAction(true);
+  myPickingAction->setCheckable(true);
   myPickingAction->setStatusTip(tr("DSC_VVTK_SELECTION_MODE_SWITCH"));
-  myPickingAction->addTo( myPtsToolBar );
+  myPtsToolBar->addAction( myPickingAction );
   connect(myPickingAction, SIGNAL(toggled(bool)), this, SLOT(OnSelectionModeSwitch(bool)));
 
   myPickingDlg = new VVTK_PickingDlg( myPickingAction, this, "PickingDlg" );
@@ -315,12 +283,12 @@ VVTK_MainWindow1
                                            tr( "MNU_VVTK_PLANE_SEGMENTATION_SWITCH" ), 
                                            0, 
                                            this, 
-                                           "VVTK/SVTK PlaneSegmentationSwitch", 
+                                           //"VVTK/SVTK PlaneSegmentationSwitch", 
                                            true);
-  myPlaneSegmentationAction->setToggleAction(true);
+  myPlaneSegmentationAction->setCheckable(true);
   myPlaneSegmentationAction->setStatusTip(tr("DSC_VVTK_PLANE_SEGMENTATION_SWITCH"));
   //myPlaneSegmentationAction->addTo( myPtsToolBar );
-  connect( myPlaneSegmentationAction, SIGNAL( activated() ), this, SLOT( OnSegmentationSwitch() ) );
+  connect( myPlaneSegmentationAction, SIGNAL( triggered() ), this, SLOT( OnSegmentationSwitch() ) );
 
   aPixmap = theResourceMgr->loadPixmap("VISU",tr("ICON_VVTK_SPHERE_SEGMENTATION_SWITCH"));
   mySphereSegmentationAction = new QtxAction(tr("MNU_VVTK_SPHERE_SEGMENTATION_SWITCH"), 
@@ -328,9 +296,9 @@ VVTK_MainWindow1
                                             tr( "MNU_VVTK_SPHERE_SEGMENTATION_SWITCH" ), 
                                             0, 
                                             this, 
-                                            "VVTK/SVTK SphereSegmentationSwitch", 
+                                            //"VVTK/SVTK SphereSegmentationSwitch", 
                                             true);
-  mySphereSegmentationAction->setToggleAction(true);
+  mySphereSegmentationAction->setCheckable(true);
   mySphereSegmentationAction->setStatusTip(tr("DSC_VVTK_SPHERE_SEGMENTATION_SWITCH"));
   //mySphereSegmentationAction->addTo( myPtsToolBar );
   connect( mySphereSegmentationAction, SIGNAL( activated() ), this, SLOT( OnSegmentationSwitch() ) );
@@ -340,23 +308,19 @@ VVTK_MainWindow1
   mySegmentationCursorDlg->SetSphereAction( mySphereSegmentationAction );
   connect( mySegmentationCursorDlg, SIGNAL( scgClose() ), this, SLOT( OnSegmentationSwitch() ) );
 
-  SUIT_ToolButton* aSegmentationButton = new SUIT_ToolButton( myPtsToolBar );
-  aSegmentationButton->AddAction( myPlaneSegmentationAction );
-  aSegmentationButton->AddAction( mySphereSegmentationAction );
+  //SUIT_ToolButton* aSegmentationButton = new SUIT_ToolButton( myPtsToolBar );
+  QtxMultiAction* aSegmentationAction = new QtxMultiAction( this );
+  aSegmentationAction->insertAction( myPlaneSegmentationAction );
+  aSegmentationAction->insertAction( mySphereSegmentationAction );
+  myPtsToolBar->addAction( aSegmentationAction );
 }
 
-void
-VVTK_MainWindow1
-::Initialize(SVTK_RenderWindowInteractor* theInteractor,
-            VVTK_Renderer1* theRenderer)
+void VVTK_MainWindow1::Initialize(SVTK_RenderWindowInteractor* theInteractor,
+                                 VVTK_Renderer1* theRenderer)
 {
   myRenderer = theRenderer;
   VVTK_MainWindow::Initialize(theInteractor);
 
-  if( myStyleSwitchAction->isOn() )
-    PushInteractorStyle(myInteractorStyle.GetPointer());
-  connect(myStyleSwitchAction, SIGNAL(toggled(bool)), this, SLOT(OnInteractorStyleSwitch(bool)));
-
   mySegmentationCursorDlg->SetWidgetCtrl( theRenderer->GetWidgetCtrl() );
   mySegmentationCursorDlg->SetInteractor( theInteractor );
 
@@ -364,31 +328,25 @@ VVTK_MainWindow1
   myPickingDlg->SetInteractor( theInteractor );
 }
 
-VVTK_MainWindow1
-::~VVTK_MainWindow1()
+VVTK_MainWindow1::~VVTK_MainWindow1()
 {}
 
 //----------------------------------------------------------------------------
-VVTK_MainWindow2*
-VVTK_MainWindow1
-::CreateMainWindow2(QWidget* theParent, 
-                   const char* theName,
-                   SUIT_ResourceMgr* theResourceMgr,
-                   SUIT_ViewWindow* theViewWindow)
+VVTK_MainWindow2* VVTK_MainWindow1::CreateMainWindow2(QWidget* theParent, 
+                                                     const char* theName,
+                                                     SUIT_ResourceMgr* theResourceMgr,
+                                                     SUIT_ViewWindow* theViewWindow)
 {
   myMainWindow2 = new VVTK_MainWindow2(theParent,
                                       theName,
                                       theResourceMgr,
-                                      theViewWindow,
-                                      myStyleSwitchAction);
+                                      theViewWindow);
   return myMainWindow2;
 }
 
 
 //----------------------------------------------------------------------------
-void
-VVTK_MainWindow1
-::OnSelectionModeSwitch(bool theIsSelectionOn)
+void VVTK_MainWindow1::OnSelectionModeSwitch(bool theIsSelectionOn)
 {
   if ( theIsSelectionOn && !isVisible() )
     return;
@@ -408,70 +366,54 @@ VVTK_MainWindow1
     myPickingDlg->hide();
 }
 
-void
-VVTK_MainWindow1
-::OnSelectionChanged()
+void VVTK_MainWindow1::OnSelectionChanged()
 {
   Selection_Mode aSelectionMode = SelectionMode();
-  if(myPickingAction->isOn() && aSelectionMode != GaussPointSelection)
-    myPickingAction->setOn(false);
-  else if(!myPickingAction->isOn() && aSelectionMode == GaussPointSelection)
-    myPickingAction->setOn(true);
+  if(myPickingAction->isChecked() && aSelectionMode != GaussPointSelection)
+    myPickingAction->setChecked(false);
+  else if(!myPickingAction->isChecked() && aSelectionMode == GaussPointSelection)
+    myPickingAction->setChecked(true);
 }
 
 
 //----------------------------------------------------------------------------
-VISU_WidgetCtrl* 
-VVTK_MainWindow1
-::GetWidgetCtrl()
+VISU_WidgetCtrl* VVTK_MainWindow1::GetWidgetCtrl()
 {
   return myRenderer->GetWidgetCtrl();
 }
 
-VISU_InsideCursorSettings* 
-VVTK_MainWindow1
-::GetInsideCursorSettings()
+VISU_InsideCursorSettings* VVTK_MainWindow1::GetInsideCursorSettings()
 {
   return mySegmentationCursorDlg->GetInsideCursorSettings();
 }
 
-VISU_OutsideCursorSettings* 
-VVTK_MainWindow1
-::GetOutsideCursorSettings()
+VISU_OutsideCursorSettings* VVTK_MainWindow1::GetOutsideCursorSettings()
 {
   return mySegmentationCursorDlg->GetOutsideCursorSettings();
 }
 
-VISU_PickingSettings* 
-VVTK_MainWindow1
-::GetPickingSettings()
+VISU_PickingSettings* VVTK_MainWindow1::GetPickingSettings()
 {
   return myPickingDlg->GetPickingSettings();
 }
 
 //----------------------------------------------------------------------------
-void
-VVTK_MainWindow1
-::SetPlanesSegementation(bool theIsOn)
+void VVTK_MainWindow1::SetPlanesSegementation(bool theIsOn)
 {
-  myPlaneSegmentationAction->setOn( theIsOn );
+  myPlaneSegmentationAction->setChecked( theIsOn );
   OnSegmentationSwitch(myPlaneSegmentationAction);
 }
 
-void
-VVTK_MainWindow1
-::SetSphereSegementation(bool theIsOn)
+void VVTK_MainWindow1::SetSphereSegementation(bool theIsOn)
 {
-  mySphereSegmentationAction->setOn( theIsOn );
+  mySphereSegmentationAction->setChecked( theIsOn );
   OnSegmentationSwitch(mySphereSegmentationAction);
 }
 
-void
-VVTK_MainWindow1
-::OnSegmentationSwitch(QtxAction* theAction)
+void VVTK_MainWindow1::OnSegmentationSwitch(QtxAction* theAction)
 {
-  bool anIsSegmentationOn = myPlaneSegmentationAction->isOn() ||
-    mySphereSegmentationAction->isOn();
+  bool anIsSegmentationOn = myPlaneSegmentationAction->isChecked() ||
+    mySphereSegmentationAction->isChecked();
 
   if( !theAction )
     return;
@@ -485,9 +427,9 @@ VVTK_MainWindow1
   aWidgetCtrl->SetEnabled(anIsSegmentationOn);
 
   if( theAction == myPlaneSegmentationAction && anIsSegmentationOn )
-    mySphereSegmentationAction->setOn( false );
+    mySphereSegmentationAction->setChecked( false );
   else if( theAction == mySphereSegmentationAction && anIsSegmentationOn )
-    myPlaneSegmentationAction->setOn( false );
+    myPlaneSegmentationAction->setChecked( false );
 
   if( anIsSegmentationOn )
   {
@@ -505,9 +447,7 @@ VVTK_MainWindow1
   }
 }
 
-void
-VVTK_MainWindow1
-::OnSegmentationSwitch()
+void VVTK_MainWindow1::OnSegmentationSwitch()
 {
   QtxAction* anAction = ( QtxAction* )sender();
   OnSegmentationSwitch(anAction);
@@ -515,30 +455,20 @@ VVTK_MainWindow1
 
 
 //----------------------------------------------------------------------------
-VVTK_MainWindow2
-::VVTK_MainWindow2(QWidget* theParent, 
-                  const char* theName,
-                  SUIT_ResourceMgr* theResourceMgr,
-                  SUIT_ViewWindow* theViewWindow,
-                  QtxAction* theStyleSwitchAction):
-  VVTK_MainWindow(theParent,theName,theResourceMgr,theViewWindow),
-  myStyleSwitchAction(theStyleSwitchAction)
+VVTK_MainWindow2::VVTK_MainWindow2(QWidget* theParent, 
+                                  const char* theName,
+                                  SUIT_ResourceMgr* theResourceMgr,
+                                  SUIT_ViewWindow* theViewWindow):
+  VVTK_MainWindow(theParent,theName,theResourceMgr,theViewWindow)
 {}
 
-VVTK_MainWindow2
-::~VVTK_MainWindow2()
+VVTK_MainWindow2::~VVTK_MainWindow2()
 {}
 
 
 //----------------------------------------------------------------------------
-void
-VVTK_MainWindow2
-::Initialize(SVTK_RenderWindowInteractor* theInteractor)
+void VVTK_MainWindow2::Initialize(SVTK_RenderWindowInteractor* theInteractor)
 {
   VVTK_MainWindow::Initialize(theInteractor);
-
-  if( myStyleSwitchAction->isOn() )
-    PushInteractorStyle(myInteractorStyle.GetPointer());
-  connect(myStyleSwitchAction, SIGNAL(toggled(bool)), this, SLOT(OnInteractorStyleSwitch(bool)));
 }
 
index dc440807467778a6007e7e8dd82348c66079b5ec..d3e34e8399dbfe1adf69513841890f55c9b3d05c 100644 (file)
@@ -1,21 +1,23 @@
-// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// This library is distributed in the hope that it will be useful
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 #ifndef VVTK_MAINWINDOW_H
 #define VVTK_MAINWINDOW_H
@@ -57,47 +59,28 @@ public:
                  SUIT_ViewWindow* theViewWindow);
 
   //! Reimplement SVTK_MainWindow::Initialize
-  virtual
-  void
-  Initialize(SVTK_RenderWindowInteractor* theInteractor);
+  virtual void Initialize(SVTK_RenderWindowInteractor* theInteractor);
 
   //! Destroy instance of the class
-  virtual
-  ~VVTK_MainWindow();
+  virtual ~VVTK_MainWindow();
 
  public slots:
 
-  virtual
-  void
-  onDumpView();
-
-   //! To change active interactor style at run-time
-  virtual
-  void
-  OnInteractorStyleSwitch(bool theIsGaussStyleOn); 
+  virtual void onDumpView();
 
-  virtual 
-  void
-  action( const int );
+  virtual void action( const int );
 
-  virtual
-  void
-  OnStartRecording();
+  virtual void OnStartRecording();
 
-  virtual
-  void
-  OnPlayRecording();
+  virtual void OnPlayRecording();
 
-  virtual
-  void
-  OnPauseRecording();
+  virtual void OnPauseRecording();
 
-  virtual
-  void
-  OnStopRecording();
+  virtual void OnStopRecording();
 
  protected:
-  vtkSmartPointer<VVTK_InteractorStyle> myInteractorStyle;
+  virtual QtxActionToolMgr* toolMgr() const;
+
   vtkSmartPointer<VVTK_ControllerIncrement> myControllerIncrement;
   vtkSmartPointer<VVTK_ControllerOnKeyDown> myControllerOnKeyDown; 
 
@@ -108,6 +91,7 @@ public:
   QtxAction* myStopAction;
 
   VVTK_Recorder *myRecorder;
+  QtxActionToolMgr* myToolMgr;
 };
 
 
@@ -125,69 +109,53 @@ public:
                   SUIT_ViewWindow* theViewWindow);
 
   //! Reimplement VVTK_MainWindow::Initialize
-  virtual
-  void
-  Initialize(SVTK_RenderWindowInteractor* theInteractor,
-            VVTK_Renderer1* theRenderer);
+  virtual void Initialize(SVTK_RenderWindowInteractor* theInteractor,
+                         VVTK_Renderer1* theRenderer);
 
   //! Destroy instance of the class
-  virtual
-  ~VVTK_MainWindow1();
+  virtual ~VVTK_MainWindow1();
 
   //! Create instance of the segmented VVTK_MainWindow
   /*!
     The two views (VVTK_MainWindow1 and VVTK_MainWindow2) should change its behaviour in the same time.
     So, it is necessary to synhronize them through sharing some common pointers.
   */
-  VVTK_MainWindow2*
-  CreateMainWindow2(QWidget* theParent, 
-                   const char* theName,
-                   SUIT_ResourceMgr* theResourceMgr,
-                   SUIT_ViewWindow* theViewWindow);
+  VVTK_MainWindow2* CreateMainWindow2(QWidget* theParent, 
+                                     const char* theName,
+                                     SUIT_ResourceMgr* theResourceMgr,
+                                     SUIT_ViewWindow* theViewWindow);
 
   VISU_WidgetCtrl*  GetWidgetCtrl();
 
-  void
-  SetPlanesSegementation(bool theIsOn);
+  void SetPlanesSegementation(bool theIsOn);
 
-  void
-  SetSphereSegementation(bool theIsOn);
+  void SetSphereSegementation(bool theIsOn);
 
-  VISU_InsideCursorSettings*
-  GetInsideCursorSettings();
+  VISU_InsideCursorSettings* GetInsideCursorSettings();
 
   //! Get contained VISU_OutsideCursorSettings
-  VISU_OutsideCursorSettings*
-  GetOutsideCursorSettings();
+  VISU_OutsideCursorSettings* GetOutsideCursorSettings();
 
   //! Get contained VISU_PickingSettings
-  VISU_PickingSettings* 
-  GetPickingSettings();
+  VISU_PickingSettings* GetPickingSettings();
 
  public slots:
   //! To activate/ deactivate the segementation cursor at run-time
-  void
-  OnSegmentationSwitch();//bool theIsSegmentationOn); 
+  void OnSegmentationSwitch();//bool theIsSegmentationOn); 
 
-  void
-  OnSegmentationSwitch(QtxAction* theAction);//bool theIsSegmentationOn); 
+  void OnSegmentationSwitch(QtxAction* theAction);//bool theIsSegmentationOn); 
 
    //! To change active selection mode at run-time
-  virtual
-  void
-  OnSelectionModeSwitch(bool theIsSelectionOn); 
+  virtual void OnSelectionModeSwitch(bool theIsSelectionOn); 
 
    //! To adjust to the current selection mode
-  virtual
-  void
-  OnSelectionChanged(); 
+  virtual void OnSelectionChanged(); 
 
  protected:
   VVTK_Renderer1* myRenderer; //!< Keeps extended version of SVTK_Renderer
 
   VVTK_MainWindow2* myMainWindow2; //!< Refer to segmented view
 
-  QtxAction* myStyleSwitchAction; //!< Action for switch interactor style
   QToolBar* myPtsToolBar; //!< Additional tool bar
 
   //! To implement show/hide segmented view on acttivate/ deactivate segementation cursor
@@ -215,21 +183,13 @@ class VVTK_EXPORT VVTK_MainWindow2: public VVTK_MainWindow
   VVTK_MainWindow2(QWidget* theParent, 
                   const char* theName,
                   SUIT_ResourceMgr* theResourceMgr,
-                  SUIT_ViewWindow* theViewWindow,
-                  QtxAction* theStyleSwitchAction);
+                  SUIT_ViewWindow* theViewWindow);
 public:
   //! Destroy instance of the class
-  virtual
-  ~VVTK_MainWindow2();
+  virtual ~VVTK_MainWindow2();
 
   //! Reimplement SVTK_MainWindow::Initialize
-  virtual
-  void
-  Initialize(SVTK_RenderWindowInteractor* theInteractor);
-
- protected:
-  // Refer to the VVTK_MainWindow1::myStyleSwitchAction instance
-  QtxAction* myStyleSwitchAction; 
+  virtual void Initialize(SVTK_RenderWindowInteractor* theInteractor);
 
 };
 
index 817c6e9ee94d93ae49b319b2d1dac88fa241ac16..d9188157bea6b1ae8ef0a58cb22b98d7a04c9061 100644 (file)
@@ -1,36 +1,40 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
 //  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VVTK_PickingDlg.cxx
 //  Author : Oleg Uvarov
 //  Module : VISU
-
+//
 #include "VVTK_PickingDlg.h"
 
 #include "VISU_GaussPtsAct.h"
-#include "VISU_GaussPtsSettings.h"
+#include "VISU_PickingSettings.h"
 #include "VISU_GaussPointsPL.hxx"
 
 #include "SUIT_MessageBox.h"
 #include "SUIT_ResourceMgr.h"
 #include "SUIT_Session.h"
 
+#include "CAM_Module.h"
+
 #include "SVTK_Selector.h"
 #include "SVTK_MainWindow.h"
 #include "SVTK_RenderWindowInteractor.h"
 
 #include "utilities.h"
 
-#include <qcheckbox.h>
-#include <qcolordialog.h>
-#include <qcombobox.h>
-#include <qgroupbox.h>
-#include <qlabel.h>
-#include <qlayout.h>
-#include <qpushbutton.h>
-#include <qvbox.h>
-#include <qvalidator.h>
+#include <QCheckBox>
+#include <QColorDialog>
+#include <QComboBox>
+#include <QGroupBox>
+#include <QLabel>
+#include <QLayout>
+#include <QPushButton>
+#include <QVBoxLayout>
+#include <QKeyEvent>
+#include <QIntValidator>
 
 #include "QtxAction.h"
-#include "QtxDblSpinBox.h"
+#include "QtxDoubleSpinBox.h"
 #include "QtxIntSpinBox.h"
+#include "QtxColorButton.h"
 
 #include "LightApp_Application.h"
 
@@ -207,8 +213,8 @@ namespace
 }
 
 
-VVTK_ValidatedLineEdit::VVTK_ValidatedLineEdit( QWidget * parent, const char * name ):
-  QLineEdit( parent, name )
+VVTK_ValidatedLineEdit::VVTK_ValidatedLineEdit( QWidget* parent ):
+  QLineEdit( parent )
 {
   connect( this, SIGNAL( textChanged( const QString& ) ), this, SLOT( MarkValidated( const QString& ) ) );
 }
@@ -220,13 +226,16 @@ void VVTK_ValidatedLineEdit::MarkValidated( const QString& theText )
   
   int aPos;
   QString aText( theText );
+  QPalette pal = palette();
   switch ( validator()->validate( aText, aPos ) ) {
   case QValidator::Invalid:
   case QValidator::Intermediate:
-    setPaletteForegroundColor( QColor( 255, 0, 0 ) );
+    pal.setColor( foregroundRole(), QColor( 255, 0, 0 ));
+    setPalette( pal );
     break;
   case QValidator::Acceptable:
-    setPaletteForegroundColor( QColor( 0, 0, 0 ) );
+    pal.setColor( foregroundRole(), QColor( 0, 0, 0 ));
+    setPalette( pal );
     break;
   }
 }
@@ -247,44 +256,47 @@ VVTK_PickingDlg::VVTK_PickingDlg(QtxAction* theAction,
   myEventCallbackCommand->SetClientData(this); 
   myEventCallbackCommand->SetCallback(VVTK_PickingDlg::ProcessEvents);
 
-  setCaption( tr( "PICKING_DLG_TITLE" ) );
+  setWindowTitle( tr( "PICKING_DLG_TITLE" ) );
   setSizeGripEnabled(TRUE);
 
   QVBoxLayout* TopLayout = new QVBoxLayout( this );
   TopLayout->setSpacing(6);
   TopLayout->setMargin(11);
 
-  QVBox* aBox = new QVBox( this );
-  aBox->setMargin(0);
-  aBox->setSpacing(6);
+  QWidget* aBox = new QWidget( this );
+  QVBoxLayout* BoxLayout = new QVBoxLayout( aBox );
+  BoxLayout->setMargin(0);
+  BoxLayout->setSpacing(6);
 
   // Cursor
-  QGroupBox* CursorGroup = new QGroupBox( tr( "CURSOR_TITLE" ), aBox, "CursorGroup" );
-  CursorGroup->setColumnLayout(0, Qt::Vertical );
-  CursorGroup->layout()->setSpacing( 0 );
-  CursorGroup->layout()->setMargin( 0 );
+  QGroupBox* CursorGroup = new QGroupBox( tr( "CURSOR_TITLE" ), aBox );
+  //CursorGroup->setColumnLayout(0, Qt::Vertical );
+  //CursorGroup->layout()->setSpacing( 0 );
+  //CursorGroup->layout()->setMargin( 0 );
 
-  QGridLayout* CursorGroupLayout = new QGridLayout (CursorGroup->layout());
+  QGridLayout* CursorGroupLayout = new QGridLayout (CursorGroup);
   CursorGroupLayout->setAlignment(Qt::AlignTop | Qt::AlignCenter);
   CursorGroupLayout->setSpacing(6);
   CursorGroupLayout->setMargin(11);
 
   QLabel* CursorSizeLabel = new QLabel( tr( "CURSOR_SIZE" ), CursorGroup );
-  myCursorSizeSpinBox = new QtxDblSpinBox( 0, 1, 0.1, CursorGroup );
+  myCursorSizeSpinBox = new QtxDoubleSpinBox( 0, 1, 0.1, CursorGroup );
   myCursorSizeSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
 
   QLabel* PyramidHeightLabel = new QLabel( tr( "PYRAMID_HEIGHT" ), CursorGroup );
   double aHeightMin=1.e-7;
   double aHeightMax=10.;
   double aHeightStep=0.1;
-  myPyramidHeightSpinBox = new QtxDblSpinBox(aHeightMin, aHeightMax, aHeightStep, CursorGroup );
+  myPyramidHeightSpinBox = new QtxDoubleSpinBox(aHeightMin, aHeightMax, aHeightStep, CursorGroup );
   myPyramidHeightSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   
   QLabel* SelectionColorLabel = new QLabel( tr( "SELECTION_COLOR" ), CursorGroup );
-  mySelectionColorButton = new QPushButton( CursorGroup );
-  mySelectionColorButton->setPaletteBackgroundColor( Qt::blue );
-  mySelectionColorButton->setPaletteForegroundColor( Qt::blue );
-  connect( mySelectionColorButton, SIGNAL( clicked() ), this, SLOT( onColorButtonPressed() ) );
+  mySelectionColorButton = new QtxColorButton( CursorGroup );
+  mySelectionColorButton->setColor( Qt::blue );
+  //QPalette aPalette( mySelectionColorButton->palette() );
+  //aPalette.setColor( mySelectionColorButton->backgroundRole(), Qt::blue );
+  //mySelectionColorButton->setPalette( aPalette );
+  //connect( mySelectionColorButton, SIGNAL( clicked() ), this, SLOT( onColorButtonPressed() ) );
 
   CursorGroupLayout->addWidget( CursorSizeLabel, 0, 0 );
   CursorGroupLayout->addWidget( myCursorSizeSpinBox, 0, 1 );
@@ -293,31 +305,35 @@ VVTK_PickingDlg::VVTK_PickingDlg(QtxAction* theAction,
   CursorGroupLayout->addWidget( SelectionColorLabel, 2, 0 );
   CursorGroupLayout->addWidget( mySelectionColorButton, 2, 1 );
 
+  BoxLayout->addWidget( CursorGroup );
+
   // Tolerance
-  QGroupBox* ToleranceGroup = new QGroupBox( tr( "TOLERANCE_TITLE" ), aBox, "ToleranceGroup" );
-  ToleranceGroup->setColumnLayout(0, Qt::Vertical );
-  ToleranceGroup->layout()->setSpacing( 0 );
-  ToleranceGroup->layout()->setMargin( 0 );
+  QGroupBox* ToleranceGroup = new QGroupBox( tr( "TOLERANCE_TITLE" ), aBox );
+  //ToleranceGroup->setColumnLayout(0, Qt::Vertical );
+  //ToleranceGroup->layout()->setSpacing( 0 );
+  //ToleranceGroup->layout()->setMargin( 0 );
 
-  QGridLayout* ToleranceGroupLayout = new QGridLayout (ToleranceGroup->layout());
+  QGridLayout* ToleranceGroupLayout = new QGridLayout (ToleranceGroup);
   ToleranceGroupLayout->setAlignment(Qt::AlignTop | Qt::AlignCenter);
   ToleranceGroupLayout->setSpacing(6);
   ToleranceGroupLayout->setMargin(11);
 
   QLabel* PointToleranceLabel = new QLabel( tr( "POINT_TOLERANCE" ), ToleranceGroup );
-  myPointToleranceSpinBox = new QtxDblSpinBox( 0.001, 10.0, 0.01, ToleranceGroup );
+  myPointToleranceSpinBox = new QtxDoubleSpinBox( 0.001, 10.0, 0.01, ToleranceGroup );
   myPointToleranceSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
 
   ToleranceGroupLayout->addWidget( PointToleranceLabel, 0, 0 );
   ToleranceGroupLayout->addWidget( myPointToleranceSpinBox, 0, 1 );
 
+  BoxLayout->addWidget( ToleranceGroup );
+
   // Information window
-  QGroupBox* InfoWindowGroup = new QGroupBox( tr( "INFO_WINDOW_TITLE" ), aBox, "InfoWindowGroup" );
-  InfoWindowGroup->setColumnLayout(0, Qt::Vertical );
-  InfoWindowGroup->layout()->setSpacing( 0 );
-  InfoWindowGroup->layout()->setMargin( 0 );
+  QGroupBox* InfoWindowGroup = new QGroupBox( tr( "INFO_WINDOW_TITLE" ), aBox );
+  //InfoWindowGroup->setColumnLayout(0, Qt::Vertical );
+  //InfoWindowGroup->layout()->setSpacing( 0 );
+  //InfoWindowGroup->layout()->setMargin( 0 );
 
-  QGridLayout* InfoWindowGroupLayout = new QGridLayout (InfoWindowGroup->layout());
+  QGridLayout* InfoWindowGroupLayout = new QGridLayout (InfoWindowGroup);
   InfoWindowGroupLayout->setAlignment(Qt::AlignTop | Qt::AlignCenter);
   InfoWindowGroupLayout->setSpacing(6);
   InfoWindowGroupLayout->setMargin(11);
@@ -333,27 +349,29 @@ VVTK_PickingDlg::VVTK_PickingDlg(QtxAction* theAction,
   myPositionComboBox = new QComboBox( InfoWindowGroup );
   myPositionComboBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
 
-  myPositionComboBox->insertItem( tr( "BELOW_POINT" ) );
-  myPositionComboBox->insertItem( tr( "TOP_LEFT_CORNER" ) );
+  myPositionComboBox->addItem( tr( "BELOW_POINT" ) );
+  myPositionComboBox->addItem( tr( "TOP_LEFT_CORNER" ) );
 
   InfoWindowGroupLayout->addWidget( TransparencyLabel, 0, 0 );
   InfoWindowGroupLayout->addWidget( myTransparencySpinBox, 0, 1 );
   InfoWindowGroupLayout->addWidget( PositionLabel, 1, 0 );
   InfoWindowGroupLayout->addWidget( myPositionComboBox, 1, 1 );
 
+  BoxLayout->addWidget( InfoWindowGroup );
+
   // Movement of the camera
-  QGroupBox* CameraGroup = new QGroupBox( tr( "CAMERA_TITLE" ), aBox, "CameraGroup" );
-  CameraGroup->setColumnLayout(0, Qt::Vertical );
-  CameraGroup->layout()->setSpacing( 0 );
-  CameraGroup->layout()->setMargin( 0 );
+  QGroupBox* CameraGroup = new QGroupBox( tr( "CAMERA_TITLE" ), aBox );
+  //CameraGroup->setColumnLayout(0, Qt::Vertical );
+  //CameraGroup->layout()->setSpacing( 0 );
+  //CameraGroup->layout()->setMargin( 0 );
 
-  QGridLayout* CameraGroupLayout = new QGridLayout (CameraGroup->layout());
+  QGridLayout* CameraGroupLayout = new QGridLayout (CameraGroup);
   CameraGroupLayout->setAlignment(Qt::AlignTop | Qt::AlignCenter);
   CameraGroupLayout->setSpacing(6);
   CameraGroupLayout->setMargin(11);
 
   QLabel* ZoomFactorLabel = new QLabel( tr( "ZOOM_FACTOR" ), CameraGroup );
-  myZoomFactorSpinBox = new QtxDblSpinBox( 0.1, 10.0, 0.1, CameraGroup );
+  myZoomFactorSpinBox = new QtxDoubleSpinBox( 0.1, 10.0, 0.1, CameraGroup );
   myZoomFactorSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
 
   QLabel* StepNumberLabel = new QLabel( tr( "STEP_NUMBER" ), CameraGroup );
@@ -365,53 +383,58 @@ VVTK_PickingDlg::VVTK_PickingDlg(QtxAction* theAction,
   CameraGroupLayout->addWidget( StepNumberLabel, 1, 0 );
   CameraGroupLayout->addWidget( myStepNumberSpinBox, 1, 1 );
 
+  BoxLayout->addWidget( CameraGroup );
+
   // Display parent mesh element
-  QGroupBox* PositionGroup = new QGroupBox( tr( "DATA_POSITION" ), aBox, "Position" );
-  PositionGroup->setColumnLayout(0, Qt::Vertical );
-  PositionGroup->layout()->setSpacing( 0 );
-  PositionGroup->layout()->setMargin( 0 );
+  QGroupBox* PositionGroup = new QGroupBox( tr( "DATA_POSITION" ), aBox );
+  //PositionGroup->setColumnLayout(0, Qt::Vertical );
+  //PositionGroup->layout()->setSpacing( 0 );
+  //PositionGroup->layout()->setMargin( 0 );
 
-  QGridLayout* PositionGroupLayout = new QGridLayout (PositionGroup->layout());
+  QGridLayout* PositionGroupLayout = new QGridLayout (PositionGroup);
   PositionGroupLayout->setAlignment(Qt::AlignTop | Qt::AlignLeft);
   PositionGroupLayout->setSpacing(6);
   PositionGroupLayout->setMargin(11);
 
   QLabel* ParentElementLabel = new QLabel( tr( "PARENT_ELEMENT" ), PositionGroup );
-  PositionGroupLayout->addMultiCellWidget( ParentElementLabel, 0, 0, 0, 2 );
 
   myParentElementLineEdit = new VVTK_ValidatedLineEdit( PositionGroup );
-  PositionGroupLayout->addMultiCellWidget( myParentElementLineEdit, 0, 0, 3, 3 );
 
   QLabel* LocalPointLabel = new QLabel( tr( "LOCAL_POINT" ), PositionGroup );
-  PositionGroupLayout->addMultiCellWidget( LocalPointLabel, 1, 1, 0, 2 );
 
   myLocalPointLineEdit = new VVTK_ValidatedLineEdit( PositionGroup );
-  PositionGroupLayout->addMultiCellWidget( myLocalPointLineEdit, 1, 1, 3, 3 );
 
   myDisplayParentMeshCheckBox = new QCheckBox( tr( "DISPLAY_PARENT_MESH" ), PositionGroup );
-  PositionGroupLayout->addMultiCellWidget( myDisplayParentMeshCheckBox, 2, 2, 0, 3 );
+
+  PositionGroupLayout->addWidget( ParentElementLabel,          0, 0, 1, 3 );
+  PositionGroupLayout->addWidget( myParentElementLineEdit,     0, 3 );
+  PositionGroupLayout->addWidget( LocalPointLabel,             1, 0, 1, 3 );
+  PositionGroupLayout->addWidget( myLocalPointLineEdit,        1, 3 );
+  PositionGroupLayout->addWidget( myDisplayParentMeshCheckBox, 2, 0, 1, 4 );
+
+  BoxLayout->addWidget( PositionGroup );
 
   // Common buttons ===========================================================
-  QGroupBox* GroupButtons = new QGroupBox( this, "GroupButtons" );
-  GroupButtons->setColumnLayout(0, Qt::Vertical );
-  GroupButtons->layout()->setSpacing( 0 );
-  GroupButtons->layout()->setMargin( 0 );
-  QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons->layout() );
+  QGroupBox* GroupButtons = new QGroupBox( this );
+  //GroupButtons->setColumnLayout(0, Qt::Vertical );
+  //GroupButtons->layout()->setSpacing( 0 );
+  //GroupButtons->layout()->setMargin( 0 );
+  QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons );
   GroupButtonsLayout->setAlignment( Qt::AlignTop );
   GroupButtonsLayout->setSpacing( 6 );
   GroupButtonsLayout->setMargin( 11 );
 
-  QPushButton* buttonApply = new QPushButton( tr( "&Apply" ), GroupButtons, "buttonApply" );
+  QPushButton* buttonApply = new QPushButton( tr( "&Apply" ), GroupButtons );
   buttonApply->setAutoDefault( TRUE );
   buttonApply->setDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonApply, 0, 0 );
   GroupButtonsLayout->addItem( new QSpacerItem( 5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 1 );
 
-  QPushButton* buttonClose = new QPushButton( tr( "&Close" ) , GroupButtons, "buttonClose" );
+  QPushButton* buttonClose = new QPushButton( tr( "&Close" ) , GroupButtons );
   buttonClose->setAutoDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonClose, 0, 2 );
 
-  QPushButton* buttonHelp = new QPushButton( tr( "&Help" ) , GroupButtons, "buttonHelp" );
+  QPushButton* buttonHelp = new QPushButton( tr( "&Help" ) , GroupButtons );
   buttonHelp->setAutoDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonHelp, 0, 3 );
 
@@ -423,7 +446,7 @@ VVTK_PickingDlg::VVTK_PickingDlg(QtxAction* theAction,
   connect( buttonHelp,  SIGNAL( clicked() ), this, SLOT( onClickHelp() ) );
 
   connect( myParentElementLineEdit, SIGNAL( textChanged( const QString& ) ), this, SLOT( onSelectionValidate() ) );
-  connect( myLocalPointLineEdit, SIGNAL( textChanged( const QString& ) ), this, SLOT( onSelectionValidate() ) );
+  connect( myLocalPointLineEdit,    SIGNAL( textChanged( const QString& ) ), this, SLOT( onSelectionValidate() ) );
 
 }
 
@@ -433,12 +456,12 @@ VVTK_PickingDlg::~VVTK_PickingDlg()
 
 void VVTK_PickingDlg::AddActor( VISU_GaussPtsAct* theActor )
 {
-  theActor->SetPickingSettings( myPickingSettings.GetPointer() );
+  //theActor->SetPickingSettings( myPickingSettings.GetPointer() );
 }
 
 void VVTK_PickingDlg::RemoveActor( VISU_GaussPtsAct* theActor )
 {
-  theActor->SetPickingSettings( NULL );
+  //theActor->SetPickingSettings( NULL );
 }
 
 void VVTK_PickingDlg::Update()
@@ -453,22 +476,30 @@ void VVTK_PickingDlg::Update()
   int aStepNumber = 10;
   bool aDisplayParentMesh = false;
 
-  if( !myPickingSettings->GetInitial() )
+  //if( !myPickingSettings->GetInitial() )
   {
     myCursorSizeSpinBox->setValue( myPickingSettings->GetCursorSize() );
     myPyramidHeightSpinBox->setValue( myPickingSettings->GetPyramidHeight() );
     myPointToleranceSpinBox->setValue( myPickingSettings->GetPointTolerance() );
     myTransparencySpinBox->setValue( int(myPickingSettings->GetInfoWindowTransparency() * 100.0) );
-    myPositionComboBox->setCurrentItem( myPickingSettings->GetInfoWindowPosition() );
+    myPositionComboBox->setCurrentIndex( myPickingSettings->GetInfoWindowPosition() );
     myZoomFactorSpinBox->setValue( myPickingSettings->GetZoomFactor() );
     myStepNumberSpinBox->setValue( myPickingSettings->GetStepNumber() );
     myDisplayParentMeshCheckBox->setChecked( myPickingSettings->GetDisplayParentMesh() );
 
     vtkFloatingPointType* aColor = myPickingSettings->GetColor();
-    mySelectionColorButton->setPaletteBackgroundColor( QColor( ( int )( aColor[0] * 255.0 ),
-                                                              ( int )( aColor[1] * 255.0 ),
-                                                              ( int )( aColor[2] * 255.0 ) ) );
-
+   
+    //QPalette aPalette( mySelectionColorButton->palette() );
+    /*aPalette.setColor( mySelectionColorButton->backgroundRole(),
+                      QColor( ( int )( aColor[0] * 255.0 ),
+                              ( int )( aColor[1] * 255.0 ),
+                              ( int )( aColor[2] * 255.0 ) ) );
+                               mySelectionColorButton->setPalette( aPalette );*/
+    mySelectionColorButton->setColor(
+                 QColor( ( int )( aColor[0] * 255.0 ),
+                ( int )( aColor[1] * 255.0 ),
+                 ( int )( aColor[2] * 255.0 ) ) );
+    
     return;
   }
 
@@ -484,13 +515,15 @@ void VVTK_PickingDlg::Update()
   myPointToleranceSpinBox->setValue( aPointTolerance );
 
   aColor = aResourceMgr->colorValue( "VISU", "picking_selection_color", aColor );
-  mySelectionColorButton->setPaletteBackgroundColor( aColor );
+  //QPalette aPalette( mySelectionColorButton->palette() );
+  //aPalette.setColor( mySelectionColorButton->backgroundRole(), aColor );
+  mySelectionColorButton->setColor( aColor );
 
   anInfoWindowTransparency = aResourceMgr->integerValue( "VISU", "picking_transparency", anInfoWindowTransparency );
   myTransparencySpinBox->setValue( anInfoWindowTransparency );
 
   anInfoWindowPosition = aResourceMgr->integerValue( "VISU", "picking_position", anInfoWindowPosition );
-  myPositionComboBox->setCurrentItem( anInfoWindowPosition );
+  myPositionComboBox->setCurrentIndex( anInfoWindowPosition );
 
   aZoomFactor = aResourceMgr->doubleValue( "VISU", "picking_zoom_factor", aZoomFactor );
   myZoomFactorSpinBox->setValue( aZoomFactor );
@@ -590,18 +623,19 @@ void VVTK_PickingDlg::KeyPressed()
 
 void VVTK_PickingDlg::onClickApply()
 {
-  myPickingSettings->SetInitial( false );
+  //myPickingSettings->SetInitial( false );
 
   myPickingSettings->SetCursorSize( myCursorSizeSpinBox->value() );
   myPickingSettings->SetPyramidHeight( myPyramidHeightSpinBox->value() );
   myPickingSettings->SetPointTolerance( myPointToleranceSpinBox->value() );
   myPickingSettings->SetInfoWindowTransparency( myTransparencySpinBox->value() / 100.0 );
-  myPickingSettings->SetInfoWindowPosition( myPositionComboBox->currentItem() );
+  myPickingSettings->SetInfoWindowPosition( myPositionComboBox->currentIndex() );
   myPickingSettings->SetZoomFactor( myZoomFactorSpinBox->value() );
   myPickingSettings->SetStepNumber( myStepNumberSpinBox->value() );
   myPickingSettings->SetDisplayParentMesh( myDisplayParentMeshCheckBox->isChecked() );
 
-  QColor aButtonColor = mySelectionColorButton->paletteBackgroundColor();
+  //QPalette aPalette( mySelectionColorButton->palette() );
+  QColor aButtonColor = mySelectionColorButton->color();//aPalette.color(mySelectionColorButton->backgroundRole() );
   vtkFloatingPointType aColor[3];
   aColor[0] = aButtonColor.red() / 255.0;
   aColor[1] = aButtonColor.green() / 255.0;
@@ -646,19 +680,27 @@ void VVTK_PickingDlg::onClickHelp()
 #else
                platform = "application";
 #endif
-    SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"),
-                          QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
-                          arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
-                          QObject::tr("BUT_OK"));
+       SUIT_MessageBox::warning( 0,
+                                 QObject::tr("WRN_WARNING"),
+                                 QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                                   arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
+                                 QObject::tr("BUT_OK"));
   }
 }
 
-void VVTK_PickingDlg::onColorButtonPressed()
+/*void VVTK_PickingDlg::onColorButtonPressed()
 {
-  QColor aColor = QColorDialog::getColor( mySelectionColorButton->paletteBackgroundColor(), this );
+  QPalette aPalette( mySelectionColorButton->palette() );
+  QColor aColor = QColorDialog::
+    getColor( aPalette.color(mySelectionColorButton->backgroundRole() ), this );
+
   if( aColor.isValid() )
-    mySelectionColorButton->setPaletteBackgroundColor( aColor );
-}
+  {
+      aPalette.setColor( mySelectionColorButton->backgroundRole(),
+                    aColor );
+      mySelectionColorButton->setPalette( aPalette );
+  }
+}*/
 
 void VVTK_PickingDlg::keyPressEvent( QKeyEvent* e )
 {
@@ -666,7 +708,7 @@ void VVTK_PickingDlg::keyPressEvent( QKeyEvent* e )
   if ( e->isAccepted() )
     return;
 
-  if ( e->key() == Key_F1 )
+  if ( e->key() == Qt::Key_F1 )
     {
       e->accept();
       onClickHelp();
index c14a7d8c6f17e34c39e866ea887541795bcaa80c..b01dc9ba2e0d5a2cd40ac35e5682c020c482694d 100644 (file)
@@ -1,26 +1,28 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
 //  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VVTK_PickingDlg.h
 //  Author : Oleg Uvarov
 //  Module : VISU
-
+//
 #ifndef VVTK_PICKINGDLG_H
 #define VVTK_PICKINGDLG_H
 
 
 #include <vtkObject.h>
 #include <vtkSmartPointer.h>
-#include <qlineedit.h>
+
+#include <QLineEdit>
 
 class vtkActorCollection;
 class vtkCallbackCommand;
 class vtkImageData;
 
 class QLabel;
-class QLineEdit;
 class QComboBox;
 class QCheckBox;
 class QPushButton;
 
 class QtxAction;
-class QtxDblSpinBox;
+class QtxDoubleSpinBox;
 class QtxIntSpinBox;
+class QtxColorButton;
 
 class VISU_GaussPtsAct;
 class VISU_PickingSettings;
@@ -84,7 +87,7 @@ protected slots:
   void             onClickClose();
   void             onClickHelp();
 
-  void             onColorButtonPressed();
+  //void             onColorButtonPressed();
   void             onSelectionValidate();
 
 private:
@@ -97,37 +100,41 @@ private:
   void             keyPressEvent( QKeyEvent* e );
 
 private:
-  QtxDblSpinBox*   myCursorSizeSpinBox;
-  QtxDblSpinBox*   myPyramidHeightSpinBox;
-  QPushButton*     mySelectionColorButton;
-  QtxDblSpinBox*   myPointToleranceSpinBox;
-  QtxIntSpinBox*   myTransparencySpinBox;
-  QComboBox*       myPositionComboBox;
-  QtxDblSpinBox*   myZoomFactorSpinBox;
-  QtxIntSpinBox*   myStepNumberSpinBox;
-  QCheckBox*       myDisplayParentMeshCheckBox;
-
-  QtxAction*       myAction;
-  vtkSmartPointer<VISU_PickingSettings> myPickingSettings;
-
-  VVTK_ValidatedLineEdit*      myParentElementLineEdit;
-  VVTK_ValidatedLineEdit*      myLocalPointLineEdit;
-
-  SVTK_RenderWindowInteractor* myInteractor;
-
-  float            myPriority;
-  vtkSmartPointer<vtkCallbackCommand> myEventCallbackCommand;
+  QtxDoubleSpinBox* myCursorSizeSpinBox;
+  QtxDoubleSpinBox* myPyramidHeightSpinBox;
+  QtxColorButton*   mySelectionColorButton;
+  QtxDoubleSpinBox* myPointToleranceSpinBox;
+  QtxIntSpinBox*    myTransparencySpinBox;
+  QComboBox*        myPositionComboBox;
+  QtxDoubleSpinBox* myZoomFactorSpinBox;
+  QtxIntSpinBox*    myStepNumberSpinBox;
+  QCheckBox*        myDisplayParentMeshCheckBox;
+
+  QtxAction*        myAction;
+  vtkSmartPointer<VISU_PickingSettings> 
+                    myPickingSettings;
+
+  VVTK_ValidatedLineEdit*      
+                    myParentElementLineEdit;
+  VVTK_ValidatedLineEdit*     
+                    myLocalPointLineEdit;
+
+  SVTK_RenderWindowInteractor* 
+                    myInteractor;
+
+  float             myPriority;
+  vtkSmartPointer<vtkCallbackCommand> 
+                    myEventCallbackCommand;
 };
 
 class VVTK_ValidatedLineEdit : public QLineEdit
 {
   Q_OBJECT;
 public:
-  VVTK_ValidatedLineEdit( QWidget * parent, const char * name = 0 );
+  VVTK_ValidatedLineEdit( QWidget* parent );
   
 public slots:
-  void
-  MarkValidated( const QString& theText );
+  void MarkValidated( const QString& theText );
 };
 
 #endif
index 908d825b9c04f7ba22ad4631f44b85d6f23f4cb2..21245b4fb66ad9b653270060f0dc637ade0a4dc3 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VVTK_PrimitiveBox.cxx
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #include "VVTK_PrimitiveBox.h"
 
 #include "VISU_OpenGLPointSpriteMapper.hxx"
 #include "SUIT_ResourceMgr.h"
 #include "SUIT_Session.h"
 
-#include "QtxDblSpinBox.h"
+#include "QtxDoubleSpinBox.h"
 #include "QtxIntSpinBox.h"
 
-#include <qlayout.h>
-#include <qlabel.h>
-#include <qlineedit.h>
-#include <qbuttongroup.h>
-#include <qradiobutton.h>
-#include <qpushbutton.h>
-#include <qfiledialog.h>
+#include <QLayout>
+#include <QLabel>
+#include <QLineEdit>
+#include <QButtonGroup>
+#include <QRadioButton>
+#include <QPushButton>
+#include <QFileDialog>
 
 #include <iostream>
 
@@ -53,11 +52,11 @@ VVTK_PrimitiveBox::VVTK_PrimitiveBox( QWidget* parent ) :
   SUIT_ResourceMgr* aResourceMgr = SUIT_Session::session()->resourceMgr();
 
   setTitle( tr( "PRIMITIVE_TITLE" ) );
-  setColumnLayout(0, Qt::Vertical );
-  layout()->setSpacing( 0 );
-  layout()->setMargin( 0 );
+  //setColumnLayout(0, Qt::Vertical );
+  //layout()->setSpacing( 0 );
+  //layout()->setMargin( 0 );
 
-  QGridLayout* aLayout = new QGridLayout( layout() );
+  QGridLayout* aLayout = new QGridLayout( this );
   aLayout->setAlignment(Qt::AlignTop | Qt::AlignCenter);
   aLayout->setSpacing(6);
   aLayout->setMargin(11);
@@ -69,32 +68,41 @@ VVTK_PrimitiveBox::VVTK_PrimitiveBox( QWidget* parent ) :
   myAlphaTexture = aRootDir + "sprite_alpha.bmp";
 
   // Primitive Type
-  QButtonGroup* aPrimitiveTypeGroup = new QButtonGroup( 3, Qt::Horizontal, this, "PrimitiveTypeGroup" );
+  QGroupBox* aPrimitiveTypeGroup = new QGroupBox( this );
   aPrimitiveTypeGroup->setMinimumWidth( 450 );
-  aPrimitiveTypeGroup->setRadioButtonExclusive( true );
-  aPrimitiveTypeGroup->setFrameStyle( QFrame::NoFrame );
-  aPrimitiveTypeGroup->layout()->setMargin( 0 );
+  QHBoxLayout* aPrimLayout = new QHBoxLayout( aPrimitiveTypeGroup );
+  aPrimLayout->setMargin( 0 );
+
+  //QButtonGroup* aPrimitiveTypeGroup = new QButtonGroup( 3, Qt::Horizontal, this, "PrimitiveTypeGroup" );
+  //aPrimitiveTypeGroup->setMinimumWidth( 450 );
+  //aPrimitiveTypeGroup->setRadioButtonExclusive( true );
+  //aPrimitiveTypeGroup->setFrameStyle( QFrame::NoFrame );
+  //aPrimitiveTypeGroup->layout()->setMargin( 0 );
 
   myPointSpriteButton = new QRadioButton( tr( "POINT_SPRITE" ), aPrimitiveTypeGroup );
   myOpenGLPointButton = new QRadioButton( tr( "OPENGL_POINT" ), aPrimitiveTypeGroup );
   myGeomSphereButton = new QRadioButton( tr( "GEOMETRICAL_SPHERE" ), aPrimitiveTypeGroup );
 
-  aLayout->addMultiCellWidget( aPrimitiveTypeGroup, 0, 0, 0, 2 );
+  aPrimLayout->addWidget( myPointSpriteButton );
+  aPrimLayout->addWidget( myOpenGLPointButton );
+  aPrimLayout->addWidget( myGeomSphereButton );
+
+  aLayout->addWidget( aPrimitiveTypeGroup, 0, 0, 1, 2 );
 
   // Clamp ( Point Sprite & OpenGL Point )
   myClampLabel = new QLabel( tr( "CLAMP" ), this );
-  myClampSpinBox = new QtxDblSpinBox( 1.0, 512.0, 1.0, this );
+  myClampSpinBox = new QtxDoubleSpinBox( 1.0, 512.0, 1.0, this );
   myClampSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
 
   aLayout->addWidget( myClampLabel, 1, 0 );
-  aLayout->addMultiCellWidget( myClampSpinBox, 1, 1, 1, 2 );
+  aLayout->addWidget( myClampSpinBox, 1, 1, 1, 2 );
 
   // Main Texture ( Point Sprite )
   myMainTextureLabel = new QLabel( tr( "MAIN_TEXTURE" ), this );
   myMainTextureLineEdit = new QLineEdit( this );
   myMainTextureButton = new QPushButton( this );
   myMainTextureButton->setAutoDefault( false );
-  myMainTextureButton->setPixmap( aResourceMgr->loadPixmap( "VISU", tr( "ICON_LOAD_TEXTURE" ) ) );
+  myMainTextureButton->setIcon( aResourceMgr->loadPixmap( "VISU", tr( "ICON_LOAD_TEXTURE" ) ) );
   connect( myMainTextureButton, SIGNAL( clicked() ), this, SLOT( onBrowseMainTexture() ) );
 
   aLayout->addWidget( myMainTextureLabel, 2, 0 );
@@ -106,7 +114,7 @@ VVTK_PrimitiveBox::VVTK_PrimitiveBox( QWidget* parent ) :
   myAlphaTextureLineEdit = new QLineEdit( this );
   myAlphaTextureButton = new QPushButton( this );
   myAlphaTextureButton->setAutoDefault( false );
-  myAlphaTextureButton->setPixmap( aResourceMgr->loadPixmap( "VISU", tr( "ICON_LOAD_TEXTURE" ) ) );
+  myAlphaTextureButton->setIcon( aResourceMgr->loadPixmap( "VISU", tr( "ICON_LOAD_TEXTURE" ) ) );
   connect( myAlphaTextureButton, SIGNAL( clicked() ), this, SLOT( onBrowseAlphaTexture() ) );
 
   aLayout->addWidget( myAlphaTextureLabel, 3, 0 );
@@ -115,11 +123,11 @@ VVTK_PrimitiveBox::VVTK_PrimitiveBox( QWidget* parent ) :
 
   // Alpha Threshold ( Point Sprite )
   myAlphaThresholdLabel = new QLabel( tr( "ALPHA_THRESHOLD" ), this );
-  myAlphaThresholdSpinBox = new QtxDblSpinBox( 0.0, 1.0, 0.1, this );
+  myAlphaThresholdSpinBox = new QtxDoubleSpinBox( 0.0, 1.0, 0.1, this );
   myAlphaThresholdSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
 
   aLayout->addWidget( myAlphaThresholdLabel, 4, 0 );
-  aLayout->addMultiCellWidget( myAlphaThresholdSpinBox, 4, 4, 1, 2 );
+  aLayout->addWidget( myAlphaThresholdSpinBox, 4, 1, 1, 2 );
 
   // Resolution ( Geometrical Sphere )
   myResolutionLabel = new QLabel( tr( "RESOLUTION" ), this );
@@ -127,8 +135,8 @@ VVTK_PrimitiveBox::VVTK_PrimitiveBox( QWidget* parent ) :
   myResolutionSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   connect( myResolutionSpinBox, SIGNAL( valueChanged( int ) ), this, SLOT( onResolutionChanged( int ) ) );
 
-  aLayout->addWidget( myResolutionLabel, 1, 0 );
-  aLayout->addMultiCellWidget( myResolutionSpinBox, 1, 1, 1, 2 );
+  aLayout->addWidget( myResolutionLabel, 5, 0 );
+  aLayout->addWidget( myResolutionSpinBox, 5, 1, 1, 2 );
 
   // Number of faces ( Geometrical Sphere )
   myFaceNumberLabel = new QLabel( tr( "FACE_NUMBER" ), this );
@@ -137,16 +145,16 @@ VVTK_PrimitiveBox::VVTK_PrimitiveBox( QWidget* parent ) :
   myFaceNumberLineEdit->setEnabled( false );
   //myFaceNumberLineEdit->setReadOnly( true );
 
-  aLayout->addWidget( myFaceNumberLabel, 2, 0 );
-  aLayout->addMultiCellWidget( myFaceNumberLineEdit, 2, 2, 1, 2 );
+  aLayout->addWidget( myFaceNumberLabel, 6, 0 );
+  aLayout->addWidget( myFaceNumberLineEdit, 6, 1, 1, 2 );
 
   // Notification ( Geometrical Sphere )
   myFaceLimitLabel = new QLabel( tr( "FACE_LIMIT" ), this );
   myFaceLimitSpinBox = new QtxIntSpinBox( 10, 1000000, 10, this );
   myFaceLimitSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
 
-  aLayout->addWidget( myFaceLimitLabel, 3, 0 );
-  aLayout->addMultiCellWidget( myFaceLimitSpinBox, 3, 3, 1, 2 );
+  aLayout->addWidget( myFaceLimitLabel, 7, 0 );
+  aLayout->addWidget( myFaceLimitSpinBox, 7, 1, 1, 2 );
 
   connect( myPointSpriteButton, SIGNAL( clicked() ), this, SLOT( onTogglePointSprite() ) );
   connect( myOpenGLPointButton, SIGNAL( clicked() ), this, SLOT( onToggleOpenGLPoint() ) );
@@ -276,7 +284,7 @@ void VVTK_PrimitiveBox::setClamp( float theClamp )
 
 void VVTK_PrimitiveBox::setClampMaximum( float theClampMaximum )
 {
-  myClampSpinBox->setMaxValue( theClampMaximum );
+  myClampSpinBox->setMaximum( theClampMaximum );
 }
 
 void VVTK_PrimitiveBox::setMainTexture( const QString& theMainTexture )
@@ -336,7 +344,10 @@ void VVTK_PrimitiveBox::setFaceLimit( int theFaceLimit )
 void VVTK_PrimitiveBox::onBrowseMainTexture()
 {
   QString aRootDir = QString( getenv( "VISU_ROOT_DIR") ) + "/share/salome/resources/visu/";
-  QString aFileName = QFileDialog::getOpenFileName( aRootDir, "Bitmap (*.bmp *.jpg *.png)", this );
+  QString aFileName = QFileDialog::getOpenFileName( this,
+                                                   0,
+                                                   aRootDir,
+                                                   "Bitmap (*.bmp *.jpg *.png)" );
 
   if( aFileName.isNull() )
     return;
@@ -348,7 +359,10 @@ void VVTK_PrimitiveBox::onBrowseMainTexture()
 void VVTK_PrimitiveBox::onBrowseAlphaTexture()
 {
   QString aRootDir = QString( getenv( "VISU_ROOT_DIR") ) + "/share/salome/resources/visu/";
-  QString aFileName = QFileDialog::getOpenFileName( aRootDir, "Bitmap (*.bmp *.jpg *.png)", this );
+  QString aFileName = QFileDialog::getOpenFileName( this,
+                                                   0,
+                                                   aRootDir,
+                                                   "Bitmap (*.bmp *.jpg *.png)" );
 
   if( aFileName.isNull() )
     return;
index 722d17f2420c796b748e2a32ac3b1685a32c1c04..c0ea8c4d1e8529c204c6d578db991e5fcc8d28e4 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VVTK_PrimitiveBox.h
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #ifndef VVTK_PRIMITIVEBOX_H
 #define VVTK_PRIMITIVEBOX_H
 
 #include "VVTK.h"
 
-#include <qgroupbox.h>
+#include <QGroupBox>
 
 class QLabel;
 class QLineEdit;
 class QPushButton;
 class QRadioButton;
 
-class QtxDblSpinBox;
+class QtxDoubleSpinBox;
 class QtxIntSpinBox;
 
 class VVTK_EXPORT VVTK_PrimitiveBox : public QGroupBox
@@ -95,7 +94,7 @@ private:
   QString                  myAlphaTexture;
 
   QLabel*                  myClampLabel;
-  QtxDblSpinBox*           myClampSpinBox;
+  QtxDoubleSpinBox*        myClampSpinBox;
 
   QLabel*                  myMainTextureLabel;
   QLineEdit*               myMainTextureLineEdit;
@@ -106,7 +105,7 @@ private:
   QPushButton*             myAlphaTextureButton;
 
   QLabel*                  myAlphaThresholdLabel;
-  QtxDblSpinBox*           myAlphaThresholdSpinBox;
+  QtxDoubleSpinBox*        myAlphaThresholdSpinBox;
 
   QLabel*                  myResolutionLabel;
   QtxIntSpinBox*           myResolutionSpinBox;
index f42b72520e9d1be599a6c7ab73b3a3e60fbc3d2d..049fc56c5d2dac823e306a5224a574037c820e44 100755 (executable)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   :
 //  Author :
 //  Module :
 //  $Header$
-
+//
 #include "VVTK_Recorder.h"
 
 #include "VVTK_ImageWriter.h"
@@ -48,8 +47,9 @@
 #include <unistd.h>
 #endif
 
-#include <qapplication.h>
-#include <qfileinfo.h>
+#include <QApplication>
+#include <QFileInfo>
+#include <QDir>
 
 #include "utilities.h"
 
@@ -289,7 +289,7 @@ void
 VVTK_Recorder
 ::Stop()
 {
-  QApplication::setOverrideCursor( Qt::waitCursor );
+  QApplication::setOverrideCursor( Qt::WaitCursor );
 
   if(myState == VVTK_Recorder_Record){ 
     if(!myPaused)
@@ -319,7 +319,7 @@ VVTK_Recorder
   myPaused = myPaused ? 0 : 1;
   if(myPaused && !myFrameIndexes.empty()){
     myFrameIndexes.back() *= -1;
-    if(MYDEBUG) cout<<"VVTK_Recorder::Pause - myFrameIndexes.back() = "<<myFrameIndexes.back()<<endl;
+    if(MYDEBUG) MESSAGE("VVTK_Recorder::Pause - myFrameIndexes.back() = "<<myFrameIndexes.back());
   }
 }
 
@@ -356,8 +356,8 @@ VVTK_Recorder
       myFrameIndexes.back() = abs(myFrameIndexes.back());
       double aPauseTime = fabs((double)(aFrameIndex - myFrameIndex - 1)) / myNbFPS;
       if(MYDEBUG) 
-       cout<<"VVTK_Recorder::DoRecord - aFrameIndex = "<<aFrameIndex<<
-         "; aPauseTime = "<<aPauseTime<<endl;
+       MESSAGE("VVTK_Recorder::DoRecord - aFrameIndex = "<<aFrameIndex<<
+         "; aPauseTime = "<<aPauseTime);
       myTimeStart += aPauseTime;
     }
 
@@ -369,7 +369,7 @@ VVTK_Recorder
   }
 
   myFrameIndexes.push_back(myFrameIndex);
-  if(MYDEBUG) cout<<"VVTK_Recorder::DoRecord - myFrameIndex = "<<myFrameIndex<<endl;
+  if(MYDEBUG) MESSAGE("VVTK_Recorder::DoRecord - myFrameIndex = "<<myFrameIndex);
 
   myRenderWindow->RemoveObserver(myCommand);
   myFilter->Modified();
@@ -445,7 +445,7 @@ VVTK_Recorder
     }
     std::string aString(aStream.str());
     system(aString.c_str());
-    if(MYDEBUG) cout<<"VVTK_Recorder::AddSkippedFrames - "<<aString<<endl;
+    if(MYDEBUG) MESSAGE("VVTK_Recorder::AddSkippedFrames - "<<aString);
   }
 }
 
@@ -470,10 +470,10 @@ VVTK_Recorder
   std::string aString(aStream.str());
   myErrorStatus = system(aString.c_str());
 
-  if(MYDEBUG) cout<<"VVTK_Recorder::MakeFileAVI - "<<aString<<endl;
+  if(MYDEBUG) MESSAGE("VVTK_Recorder::MakeFileAVI - "<<aString);
 
   QFileInfo aFileInfo(myName.c_str());
-  QString aDirPath = aFileInfo.dirPath(TRUE);
+  QString aDirPath = aFileInfo.absoluteDir().path();
   QString aBaseName = aFileInfo.fileName();
   QString aCommand = 
     QString("(cd ") + aDirPath + 
@@ -485,6 +485,6 @@ VVTK_Recorder
   aCommand = 
     QString("rm ") + aDirPath + "/" + aBaseName + "*.jpeg";
 
-  if(MYDEBUG) cout<<"VVTK_Recorder::MakeFileAVI - "<<aCommand.latin1()<<endl;
-  system(aCommand.latin1());
+  if(MYDEBUG) MESSAGE("VVTK_Recorder::MakeFileAVI - "<<aCommand.toLatin1().data() );
+  system((const char*)aCommand.toLatin1());
 }
index 4ec3adbc232c973ee43196459f89bbd5acfde9bf..080a125d5fca7eb95b1c5252a029cd3af2c3d7be 100755 (executable)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   : 
 //  Author : 
 //  Module : SALOME
 //  $Header$
-
+//
 #ifndef _VVTK_Recorder_Header_File_
 #define _VVTK_Recorder_Header_File_
 
index 3d287ec4619962a75d050aad72d8e98f6e334371..447a562d1c04a3f20a85b0ed516bdc6b53fd961d 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VVTK_RecorderDlg.cxx
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #include "VVTK_RecorderDlg.h"
 #include "VVTK_Recorder.h"
 
 #include "SUIT_ResourceMgr.h"
 #include "SUIT_Session.h"
 
-#include "QtxDblSpinBox.h"
+#include "QtxDoubleSpinBox.h"
 #include "QtxIntSpinBox.h"
 
 #include "LightApp_Application.h"
 
-#include <qcheckbox.h>
-#include <qcombobox.h>
-#include <qgroupbox.h>
-#include <qlabel.h>
-#include <qlayout.h>
-#include <qlineedit.h>
-#include <qpushbutton.h>
+#include "CAM_Module.h"
+
+#include <QCheckBox>
+#include <QComboBox>
+#include <QGroupBox>
+#include <QKeyEvent>
+#include <QLabel>
+#include <QLayout>
+#include <QLineEdit>
+#include <QPushButton>
 
 /*!
  * Constructor
  */
 VVTK_RecorderDlg::VVTK_RecorderDlg( QWidget* theParent, VVTK_Recorder* theRecorder ):
-  QDialog( theParent, "VVTK_RecorderDlg", false ),
+  QDialog( theParent ),
   myRecorder( theRecorder )
 {
-  setCaption( tr( "DLG_RECORDER_TITLE" ) );
+  setWindowTitle( tr( "DLG_RECORDER_TITLE" ) );
 
   SUIT_ResourceMgr* aResourceMgr = SUIT_Session::session()->resourceMgr();
 
   QVBoxLayout* aTopLayout = new QVBoxLayout( this );
   aTopLayout->setSpacing( 6 );
   aTopLayout->setMargin( 6 );
-  aTopLayout->setAutoAdd( true );
+  //aTopLayout->setAutoAdd( true );
 
   // Settings
   QGroupBox* mySettingsBox = new QGroupBox( tr( "SETTINGS" ), this );
-  mySettingsBox->setColumnLayout( 0, Qt::Vertical );
-  mySettingsBox->layout()->setSpacing( 0 );
-  mySettingsBox->layout()->setMargin( 0 );
+  //mySettingsBox->setColumnLayout( 0, Qt::Vertical );
+  //mySettingsBox->layout()->setSpacing( 0 );
+  //mySettingsBox->layout()->setMargin( 0 );
 
-  QGridLayout* aSettingsLayout = new QGridLayout( mySettingsBox->layout() );
+  QGridLayout* aSettingsLayout = new QGridLayout( mySettingsBox );
   aSettingsLayout->setSpacing( 6 );
   aSettingsLayout->setMargin( 11 );
 
@@ -76,20 +78,15 @@ VVTK_RecorderDlg::VVTK_RecorderDlg( QWidget* theParent, VVTK_Recorder* theRecord
   myFileNameLineEdit = new QLineEdit( mySettingsBox );
   myFileNameLineEdit->setMinimumWidth( 250 );
   myFileNameLineEdit->setReadOnly( true );
-  /*
-  QPushButton* aFileNameButton = new QPushButton( mySettingsBox );
-  aFileNameButton->setAutoDefault( false );
-  aFileNameButton->setPixmap( aResourceMgr->loadPixmap( "VISU", tr( "ICON_LOAD_TEXTURE" ) ) );
-  connect( aFileNameButton, SIGNAL( clicked() ), this, SLOT( onBrowseFile() ) );
-  */
+
   QLabel* aRecordingModeLabel = new QLabel( tr( "RECORDING_MODE" ), mySettingsBox );
   myRecordingModeComboBox = new QComboBox( mySettingsBox );
-  myRecordingModeComboBox->insertItem( tr( "SKIPPED_FRAMES" ) );
-  myRecordingModeComboBox->insertItem( tr( "ALL_DISLPAYED_FRAMES" ) );
-  myRecordingModeComboBox->setCurrentItem( aResourceMgr->integerValue( "VISU", "recorder_mode", 1 ) );
+  myRecordingModeComboBox->addItem( tr( "SKIPPED_FRAMES" ) );
+  myRecordingModeComboBox->addItem( tr( "ALL_DISLPAYED_FRAMES" ) );
+  myRecordingModeComboBox->setCurrentIndex( aResourceMgr->integerValue( "VISU", "recorder_mode", 1 ) );
 
   QLabel* aFPSLabel = new QLabel( tr( "FPS" ), mySettingsBox );
-  myFPSSpinBox = new QtxDblSpinBox( 0.1, 100.0, 1.0, mySettingsBox );
+  myFPSSpinBox = new QtxDoubleSpinBox( 0.1, 100.0, 1.0, mySettingsBox );
   myFPSSpinBox->setValue( aResourceMgr->doubleValue( "VISU", "recorder_fps", 10.0 ) );
 
   QLabel* aQualityLabel = new QLabel( tr( "QUALITY" ), mySettingsBox );
@@ -100,7 +97,7 @@ VVTK_RecorderDlg::VVTK_RecorderDlg( QWidget* theParent, VVTK_Recorder* theRecord
   myProgressiveCheckBox->setChecked( aResourceMgr->booleanValue( "VISU", "recorder_progressive", false ) );
 
   aSettingsLayout->addWidget( aFileNameLabel, 0, 0 );
-  aSettingsLayout->addMultiCellWidget( myFileNameLineEdit, 1, 1, 0, 1 );
+  aSettingsLayout->addWidget( myFileNameLineEdit, 1, 0, 1, 2 );
   //aSettingsLayout->addWidget( aFileNameButton, 1, 2 );
   aSettingsLayout->addWidget( aRecordingModeLabel, 2, 0 );
   aSettingsLayout->addWidget( myRecordingModeComboBox, 2, 1 );
@@ -110,12 +107,14 @@ VVTK_RecorderDlg::VVTK_RecorderDlg( QWidget* theParent, VVTK_Recorder* theRecord
   aSettingsLayout->addWidget( myQualitySpinBox, 4, 1 );
   aSettingsLayout->addWidget( myProgressiveCheckBox, 5, 0 );
 
+  aTopLayout->addWidget( mySettingsBox );
+
   // Start / Close
   QGroupBox* CommonGroup = new QGroupBox( this );
-  CommonGroup->setColumnLayout(0, Qt::Vertical );
-  CommonGroup->layout()->setSpacing( 0 );
-  CommonGroup->layout()->setMargin( 0 );
-  QGridLayout* CommonGroupLayout = new QGridLayout( CommonGroup->layout() );
+  //CommonGroup->setColumnLayout(0, Qt::Vertical );
+  //CommonGroup->layout()->setSpacing( 0 );
+  //CommonGroup->layout()->setMargin( 0 );
+  QGridLayout* CommonGroupLayout = new QGridLayout( CommonGroup );
   CommonGroupLayout->setAlignment( Qt::AlignTop );
   CommonGroupLayout->setSpacing( 6 );
   CommonGroupLayout->setMargin( 11 );
@@ -134,6 +133,8 @@ VVTK_RecorderDlg::VVTK_RecorderDlg( QWidget* theParent, VVTK_Recorder* theRecord
   aHelpButton->setAutoDefault( true );
   CommonGroupLayout->addWidget( aHelpButton, 0, 3 );
 
+  aTopLayout->addWidget( CommonGroup );
+
   connect( aStartButton, SIGNAL( clicked() ), this, SLOT( onStart() ) );
   connect( aCloseButton, SIGNAL( clicked() ), this, SLOT( onClose() ) );
   connect( aHelpButton,  SIGNAL( clicked() ), this, SLOT( onHelp() ) );
@@ -143,20 +144,14 @@ VVTK_RecorderDlg::~VVTK_RecorderDlg()
 {
 }
 
-void VVTK_RecorderDlg::show()
-{
-  if( onBrowseFile() )
-    QWidget::show();
-}
-
 void VVTK_RecorderDlg::onStart()
 {
   if( myFileName.isNull() )
     return;
 
-  myRecorder->SetName( myFileName.latin1() );
+  myRecorder->SetName( (const char*)myFileName.toLatin1() );
 
-  myRecorder->SetUseSkippedFrames( myRecordingModeComboBox->currentItem() == 0 );
+  myRecorder->SetUseSkippedFrames( myRecordingModeComboBox->currentIndex() == 0 );
   myRecorder->SetNbFPS( myFPSSpinBox->value() );
   myRecorder->SetQuality( myQualitySpinBox->value() );
   myRecorder->SetProgressiveMode( myProgressiveCheckBox->isChecked() );
@@ -183,10 +178,9 @@ void VVTK_RecorderDlg::onHelp()
 #else
                platform = "application";
 #endif
-    SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"),
-                          QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
-                          arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
-                          QObject::tr("BUT_OK"));
+    SUIT_MessageBox::warning(0, QObject::tr("WRN_WARNING"),
+                            QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                            arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName) );
   }
 }
 
@@ -210,13 +204,23 @@ bool VVTK_RecorderDlg::onBrowseFile()
   return true;
 }
 
+int VVTK_RecorderDlg::exec()
+{
+  if( !onBrowseFile() )
+  {
+    reject();
+    return 0;
+  }
+  return QDialog::exec();
+}
+
 void VVTK_RecorderDlg::keyPressEvent( QKeyEvent* e )
 {
   QDialog::keyPressEvent( e );
   if ( e->isAccepted() )
     return;
 
-  if ( e->key() == Key_F1 )
+  if ( e->key() == Qt::Key_F1 )
     {
       e->accept();
       onHelp();
index 23b5a1df53834b590da90871b6cf1069ecdafa68..f6b8bac41f4c56c9310d6f75f6fe432488296abe 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VVTK_RecorderDlg.h
 //  Author : Oleg UVAROV
 //  Module : VISU
 //  $Header$
-
+//
 #ifndef VVTK_RECORDERDLG_H
 #define VVTK_RECORDERDLG_H
 
-#include <qdatetime.h>
-#include <qdialog.h>
+#include <QDateTime>
+#include <QDialog>
 
 class QCheckBox;
 class QComboBox;
@@ -40,7 +39,7 @@ class QLineEdit;
 class QPushButton;
 class QTimer;
 
-class QtxDblSpinBox;
+class QtxDoubleSpinBox;
 class QtxIntSpinBox;
 
 class VVTK_Recorder;
@@ -54,12 +53,12 @@ public:
   VVTK_RecorderDlg( QWidget*, VVTK_Recorder* );
   ~VVTK_RecorderDlg();
 
-  virtual void     show();
+  int              exec();
 
   QString          fileName() const { return myFileName; }
 
 private:
-  void             keyPressEvent( QKeyEvent* e );
+  virtual void     keyPressEvent( QKeyEvent* );
 
 protected slots:
   void             onStart();
@@ -74,10 +73,10 @@ private:
 
   QLineEdit*       myFileNameLineEdit;
 
-  QComboBox*       myRecordingModeComboBox;
-  QtxDblSpinBox*   myFPSSpinBox;
-  QtxIntSpinBox*   myQualitySpinBox;
-  QCheckBox*       myProgressiveCheckBox;
+  QComboBox*        myRecordingModeComboBox;
+  QtxDoubleSpinBox* myFPSSpinBox;
+  QtxIntSpinBox*    myQualitySpinBox;
+  QCheckBox*        myProgressiveCheckBox;
 
 };
 
index 8b56aede642ec584fe51d9d2a33c85076d9ad651..b650717267053edadcb6e02ac56ce98e049e62e7 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   :
 //  Author :
 //  Module :
 //  $Header$
-
+//
 #include "VVTK_Renderer.h"
 
 #include "VISU_GaussPtsAct.h"
@@ -194,7 +193,7 @@ VVTK_Renderer
     anActor->SetHighlightProperty(myGaussHighlightProperty.GetPointer());
 
     anActor->SetInsideCursorSettings(myInsideCursorSettings);
-    anActor->SetPickingSettings(myPickingSettings);
+    //anActor->SetPickingSettings(myPickingSettings);
   }
 }
 
@@ -210,7 +209,7 @@ VVTK_Renderer
     anActor->SetHighlightProperty(NULL);
 
     anActor->SetInsideCursorSettings(NULL);
-    anActor->SetPickingSettings(NULL);
+    //anActor->SetPickingSettings(NULL);
   }
 }
 
index 45c7e949e02e890557fea927ff286d82ffcaafe0..0bb4f8184d9a9d5fa70e689af7f689969f74ed4c 100644 (file)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   : 
 //  Author : 
 //  Module : SALOME
 //  $Header$
-
+//
 #ifndef VVTK_Renderer_h
 #define VVTK_Renderer_h
 
index 5730854a3bf1c9ce3a5f8bd83304e05c34a4e2f3..02172f1eaa46f6423c5d5deceb46877e46af1e5f 100644 (file)
@@ -1,26 +1,28 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
 //  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VVTK_SegmentationCursorDlg.cxx
 //  Author : Oleg Uvarov
 //  Module : VISU
-
+//
 #include "VVTK_SegmentationCursorDlg.h"
 #include "VVTK_PrimitiveBox.h"
 #include "VVTK_SizeBox.h"
 #include "VISU_GaussPointsPL.hxx"
 #include "VISU_OpenGLPointSpriteMapper.hxx"
 
-#include "LightApp_Application.h"
-#include "SUIT_MessageBox.h"
-#include "SUIT_ResourceMgr.h"
-#include "SUIT_Session.h"
+#include <LightApp_Application.h>
+#include <SUIT_MessageBox.h>
+#include <SUIT_ResourceMgr.h>
+#include <SUIT_Session.h>
 
-#include "SVTK_RenderWindowInteractor.h"
+#include <SVTK_RenderWindowInteractor.h>
 
 #include <vtkActorCollection.h>
 #include <vtkCallbackCommand.h>
 
 #include "utilities.h"
 
-#include <qbuttongroup.h>
-#include <qcolordialog.h>
-#include <qfiledialog.h>
-#include <qgroupbox.h>
-#include <qlabel.h>
-#include <qlayout.h>
-#include <qlineedit.h>
-#include <qpushbutton.h>
-#include <qradiobutton.h>
-#include <qtabwidget.h>
-#include <qvbox.h>
-
-#include "QtxAction.h"
-#include "QtxDblSpinBox.h"
-#include "QtxIntSpinBox.h"
+#include <QButtonGroup>
+#include <QColorDialog>
+#include <QFileDialog>
+#include <QGroupBox>
+#include <QKeyEvent>
+#include <QLabel>
+#include <QLayout>
+#include <QLineEdit>
+#include <QPushButton>
+#include <QRadioButton>
+#include <QTabWidget>
+
+#include <QtxAction.h>
+#include <QtxDoubleSpinBox.h>
+#include <QtxIntSpinBox.h>
+#include <CAM_Module.h>
 
 //----------------------------------------------------------------
 VVTK_SegmentationCursorDlg::VVTK_SegmentationCursorDlg( QWidget* parent, const char* name )
-  :QDialog( parent, name, false, WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu ),
+  :QDialog( parent,
+           Qt::WindowTitleHint | Qt::WindowSystemMenuHint ),
    myEventCallbackCommand( vtkCallbackCommand::New() ),
    myInsideCursorSettings( VISU_InsideCursorSettings::New() ),
    myOutsideCursorSettings( VISU_OutsideCursorSettings::New() ),
@@ -78,6 +82,8 @@ VVTK_SegmentationCursorDlg::VVTK_SegmentationCursorDlg( QWidget* parent, const c
    myWidgetCtrl(NULL),
    myInteractor(NULL)
 {
+  setAccessibleName( name );
+
   myPriority = 0.0;
   myEventCallbackCommand->Delete();
   myEventCallbackCommand->SetClientData(this); 
@@ -87,7 +93,7 @@ VVTK_SegmentationCursorDlg::VVTK_SegmentationCursorDlg( QWidget* parent, const c
                                      myEventCallbackCommand.GetPointer(), 
                                      myPriority);
 
-  setCaption( tr( "SEGMENTATION_CURSOR_DLG_TITLE" ) );
+  setWindowTitle( tr( "SEGMENTATION_CURSOR_DLG_TITLE" ) );
   setSizeGripEnabled(TRUE);
 
   QVBoxLayout* TopLayout = new QVBoxLayout( this );
@@ -97,36 +103,37 @@ VVTK_SegmentationCursorDlg::VVTK_SegmentationCursorDlg( QWidget* parent, const c
   myTabBox = new QTabWidget( this );
 
   // Segmentation cursor pane
-  mySegmentationCursorBox = new QVBox( this );
-  mySegmentationCursorBox->setMargin(11);
-  mySegmentationCursorBox->setSpacing(6);
-  mySegmentationCursorBox->layout()->setAlignment(Qt::AlignTop);
+  mySegmentationCursorBox = new QWidget( this );
+  QVBoxLayout* SCBoxLayout = new QVBoxLayout( mySegmentationCursorBox );
+  SCBoxLayout->setMargin(11);
+  SCBoxLayout->setSpacing(6);
+  SCBoxLayout->setAlignment(Qt::AlignTop);
 
   // Origin
-  myOriginGroup = new QGroupBox( tr( "ORIGIN_TITLE" ), mySegmentationCursorBox, "OriginGroup" );
-  myOriginGroup->setColumnLayout( 0, Qt::Vertical );
-  myOriginGroup->layout()->setSpacing( 0 );
-  myOriginGroup->layout()->setMargin( 0 );
+  myOriginGroup = new QGroupBox( tr( "ORIGIN_TITLE" ), mySegmentationCursorBox );
+  //myOriginGroup->setColumnLayout( 0, Qt::Vertical );
+  //myOriginGroup->layout()->setSpacing( 0 );
+  //myOriginGroup->layout()->setMargin( 0 );
 
-  QGridLayout* OriginGroupLayout = new QGridLayout( myOriginGroup->layout() );
+  QGridLayout* OriginGroupLayout = new QGridLayout( myOriginGroup );
   OriginGroupLayout->setAlignment(Qt::AlignTop | Qt::AlignCenter);
   OriginGroupLayout->setSpacing(6);
   OriginGroupLayout->setMargin(11);
 
   QLabel* XOriginLabel = new QLabel( tr( "ORIGIN_X" ), myOriginGroup );
-  myXOriginSpinBox = new QtxDblSpinBox( -1000.0, 1000.0, 0.1, myOriginGroup );
+  myXOriginSpinBox = new QtxDoubleSpinBox( -1000.0, 1000.0, 0.1, myOriginGroup );
   myXOriginSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   myXOriginSpinBox->setMinimumWidth( 100 );
   myXOriginSpinBox->setValue( 0.0 );
 
   QLabel* YOriginLabel = new QLabel( tr( "ORIGIN_Y" ), myOriginGroup );
-  myYOriginSpinBox = new QtxDblSpinBox( -1000.0, 1000.0, 0.1, myOriginGroup );
+  myYOriginSpinBox = new QtxDoubleSpinBox( -1000.0, 1000.0, 0.1, myOriginGroup );
   myYOriginSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   myYOriginSpinBox->setMinimumWidth( 100 );
   myYOriginSpinBox->setValue( 0.0 );
 
   QLabel* ZOriginLabel = new QLabel( tr( "ORIGIN_Z" ), myOriginGroup );
-  myZOriginSpinBox = new QtxDblSpinBox( -1000.0, 1000.0, 0.1, myOriginGroup );
+  myZOriginSpinBox = new QtxDoubleSpinBox( -1000.0, 1000.0, 0.1, myOriginGroup );
   //myZOriginSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   myZOriginSpinBox->setMinimumWidth( 100 );
   myZOriginSpinBox->setValue( 1.0 );
@@ -138,31 +145,33 @@ VVTK_SegmentationCursorDlg::VVTK_SegmentationCursorDlg( QWidget* parent, const c
   OriginGroupLayout->addWidget(   ZOriginLabel,   0, 4 );
   OriginGroupLayout->addWidget( myZOriginSpinBox, 0, 5 );
 
+  SCBoxLayout->addWidget( myOriginGroup );
+
   // Direction ( Plane Segmentation )
-  myDirectionGroup = new QGroupBox( tr( "DIRECTION_TITLE" ), mySegmentationCursorBox, "DirectionGroup" );
-  myDirectionGroup->setColumnLayout( 0, Qt::Vertical );
-  myDirectionGroup->layout()->setSpacing( 0 );
-  myDirectionGroup->layout()->setMargin( 0 );
+  myDirectionGroup = new QGroupBox( tr( "DIRECTION_TITLE" ), mySegmentationCursorBox );
+  //myDirectionGroup->setColumnLayout( 0, Qt::Vertical );
+  //myDirectionGroup->layout()->setSpacing( 0 );
+  //myDirectionGroup->layout()->setMargin( 0 );
 
-  QGridLayout* DirectionGroupLayout = new QGridLayout( myDirectionGroup->layout() );
+  QGridLayout* DirectionGroupLayout = new QGridLayout( myDirectionGroup );
   DirectionGroupLayout->setAlignment(Qt::AlignTop | Qt::AlignCenter);
   DirectionGroupLayout->setSpacing(6);
   DirectionGroupLayout->setMargin(11);
 
   QLabel* DXDirectionLabel = new QLabel( tr( "DIRECTION_DX" ), myDirectionGroup );
-  myDXDirectionSpinBox = new QtxDblSpinBox( -1.0, 1.0, 0.1, myDirectionGroup );
+  myDXDirectionSpinBox = new QtxDoubleSpinBox( -1.0, 1.0, 0.1, myDirectionGroup );
   myDXDirectionSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   myDXDirectionSpinBox->setMinimumWidth( 100 );
   myDXDirectionSpinBox->setValue( 0.0 );
 
   QLabel* DYDirectionLabel = new QLabel( tr( "DIRECTION_DY" ), myDirectionGroup );
-  myDYDirectionSpinBox = new QtxDblSpinBox( -1.0, 1.0, 0.1, myDirectionGroup );
+  myDYDirectionSpinBox = new QtxDoubleSpinBox( -1.0, 1.0, 0.1, myDirectionGroup );
   myDYDirectionSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   myDYDirectionSpinBox->setMinimumWidth( 100 );
   myDYDirectionSpinBox->setValue( 0.0 );
 
   QLabel* DZDirectionLabel = new QLabel( tr( "DIRECTION_DZ" ), myDirectionGroup );
-  myDZDirectionSpinBox = new QtxDblSpinBox( -1.0, 1.0, 0.1, myDirectionGroup );
+  myDZDirectionSpinBox = new QtxDoubleSpinBox( -1.0, 1.0, 0.1, myDirectionGroup );
   myDZDirectionSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   myDZDirectionSpinBox->setMinimumWidth( 100 );
   myDZDirectionSpinBox->setValue( 1.0 );
@@ -174,19 +183,21 @@ VVTK_SegmentationCursorDlg::VVTK_SegmentationCursorDlg( QWidget* parent, const c
   DirectionGroupLayout->addWidget(   DZDirectionLabel,   0, 4 );
   DirectionGroupLayout->addWidget( myDZDirectionSpinBox, 0, 5 );
 
+  SCBoxLayout->addWidget( myDirectionGroup );
+
   // Depth ( Plane Segmentation )
-  myDepthGroup = new QGroupBox( tr( "DEPTH_TITLE" ), mySegmentationCursorBox, "DepthGroup" );
-  myDepthGroup->setColumnLayout( 0, Qt::Vertical );
-  myDepthGroup->layout()->setSpacing( 0 );
-  myDepthGroup->layout()->setMargin( 0 );
+  myDepthGroup = new QGroupBox( tr( "DEPTH_TITLE" ), mySegmentationCursorBox );
+  //myDepthGroup->setColumnLayout( 0, Qt::Vertical );
+  //myDepthGroup->layout()->setSpacing( 0 );
+  //myDepthGroup->layout()->setMargin( 0 );
 
-  QGridLayout* DepthGroupLayout = new QGridLayout( myDepthGroup->layout() );
+  QGridLayout* DepthGroupLayout = new QGridLayout( myDepthGroup );
   DepthGroupLayout->setAlignment(Qt::AlignTop | Qt::AlignCenter);
   DepthGroupLayout->setSpacing(6);
   DepthGroupLayout->setMargin(11);
 
   QLabel* DepthLabel = new QLabel( tr( "DEPTH" ), myDepthGroup );
-  myDepthSpinBox = new QtxDblSpinBox( 0.0, VTK_LARGE_FLOAT, 0.1, myDepthGroup );
+  myDepthSpinBox = new QtxDoubleSpinBox( 0.0, VTK_LARGE_FLOAT, 0.1, myDepthGroup );
   myDepthSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   myDepthSpinBox->setMinimumWidth( 100 );
   myDepthSpinBox->setValue( 1.0 );
@@ -194,25 +205,27 @@ VVTK_SegmentationCursorDlg::VVTK_SegmentationCursorDlg( QWidget* parent, const c
   DepthGroupLayout->addWidget(   DepthLabel,   0, 0 );
   DepthGroupLayout->addWidget( myDepthSpinBox, 0, 1 );
 
+  SCBoxLayout->addWidget( myDepthGroup );
+
   // Radius ( Sphere Segmentation )
-  myRadiusGroup = new QGroupBox( tr( "RADIUS_TITLE" ), mySegmentationCursorBox, "RadiusGroup" );
-  myRadiusGroup->setColumnLayout( 0, Qt::Vertical );
-  myRadiusGroup->layout()->setSpacing( 0 );
-  myRadiusGroup->layout()->setMargin( 0 );
+  myRadiusGroup = new QGroupBox( tr( "RADIUS_TITLE" ), mySegmentationCursorBox );
+  //myRadiusGroup->setColumnLayout( 0, Qt::Vertical );
+  //myRadiusGroup->layout()->setSpacing( 0 );
+  //myRadiusGroup->layout()->setMargin( 0 );
 
-  QGridLayout* RadiusGroupLayout = new QGridLayout( myRadiusGroup->layout() );
+  QGridLayout* RadiusGroupLayout = new QGridLayout( myRadiusGroup );
   RadiusGroupLayout->setAlignment(Qt::AlignTop | Qt::AlignCenter);
   RadiusGroupLayout->setSpacing(6);
   RadiusGroupLayout->setMargin(11);
 
   QLabel* RadiusLabel = new QLabel( tr( "RADIUS" ),myRadiusGroup  );
-  myRadiusSpinBox = new QtxDblSpinBox( 0.0, 1000.0, 1.0,myRadiusGroup  );
+  myRadiusSpinBox = new QtxDoubleSpinBox( 0.0, 1000.0, 1.0,myRadiusGroup  );
   myRadiusSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   myRadiusSpinBox->setMinimumWidth( 100 );
   myRadiusSpinBox->setValue( 100.0 );
 
   QLabel* RatioLabel = new QLabel( tr( "RATIO" ), myRadiusGroup );
-  myRatioSpinBox = new QtxDblSpinBox( 0.1, 10.0, 0.1,myRadiusGroup  );
+  myRatioSpinBox = new QtxDoubleSpinBox( 0.1, 10.0, 0.1,myRadiusGroup  );
   myRatioSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
   myRatioSpinBox->setMinimumWidth( 100 );
   myRatioSpinBox->setValue( 2.0 );
@@ -222,22 +235,23 @@ VVTK_SegmentationCursorDlg::VVTK_SegmentationCursorDlg( QWidget* parent, const c
   RadiusGroupLayout->addWidget( RatioLabel,      0, 2 );
   RadiusGroupLayout->addWidget( myRatioSpinBox,  0, 3 );
 
+  SCBoxLayout->addWidget( myRadiusGroup );
 
   myTabBox->addTab( mySegmentationCursorBox, tr( "SEGMENTATION_CURSOR_TAB" ) );
 
-
   // Gauss points pane
-  myGaussPointsBox = new QVBox( this );
-  myGaussPointsBox->setMargin(11);
-  myGaussPointsBox->setSpacing(6);
+  myGaussPointsBox = new QWidget( this );
+  QVBoxLayout* GPBoxLayout = new QVBoxLayout( myGaussPointsBox );
+  GPBoxLayout->setMargin(11);
+  GPBoxLayout->setSpacing(6);
 
   // Inside Gauss points
   QGroupBox* anInsideGroup = new QGroupBox( tr( "INSIDE_GAUSS_POINTS" ), myGaussPointsBox );
-  anInsideGroup->setColumnLayout( 0, Qt::Vertical );
-  anInsideGroup->layout()->setSpacing( 0 );
-  anInsideGroup->layout()->setMargin( 0 );
+  //anInsideGroup->setColumnLayout( 0, Qt::Vertical );
+  //anInsideGroup->layout()->setSpacing( 0 );
+  //anInsideGroup->layout()->setMargin( 0 );
 
-  QGridLayout* anInsideGroupLayout = new QGridLayout( anInsideGroup->layout() );
+  QGridLayout* anInsideGroupLayout = new QGridLayout( anInsideGroup );
   anInsideGroupLayout->setAlignment(Qt::AlignTop | Qt::AlignCenter);
   anInsideGroupLayout->setSpacing(6);
   anInsideGroupLayout->setMargin(11);
@@ -252,13 +266,15 @@ VVTK_SegmentationCursorDlg::VVTK_SegmentationCursorDlg( QWidget* parent, const c
   anInsideGroupLayout->addWidget( myInsidePrimitiveBox, 0, 0 );
   anInsideGroupLayout->addWidget( myInsideSizeBox, 1, 0 );
 
+  GPBoxLayout->addWidget( anInsideGroup );
+
   // Outside Gauss points
   QGroupBox* anOutsideGroup = new QGroupBox( tr( "OUTSIDE_GAUSS_POINTS" ), myGaussPointsBox );
-  anOutsideGroup->setColumnLayout( 0, Qt::Vertical );
-  anOutsideGroup->layout()->setSpacing( 0 );
-  anOutsideGroup->layout()->setMargin( 0 );
+  //anOutsideGroup->setColumnLayout( 0, Qt::Vertical );
+  //anOutsideGroup->layout()->setSpacing( 0 );
+  //anOutsideGroup->layout()->setMargin( 0 );
 
-  QGridLayout* anOutsideGroupLayout = new QGridLayout( anOutsideGroup->layout() );
+  QGridLayout* anOutsideGroupLayout = new QGridLayout( anOutsideGroup );
   anOutsideGroupLayout->setAlignment(Qt::AlignTop | Qt::AlignCenter);
   anOutsideGroupLayout->setSpacing(6);
   anOutsideGroupLayout->setMargin(11);
@@ -273,14 +289,15 @@ VVTK_SegmentationCursorDlg::VVTK_SegmentationCursorDlg( QWidget* parent, const c
   anOutsideGroupLayout->addWidget( myOutsidePrimitiveBox, 0, 0 );
   anOutsideGroupLayout->addWidget( myOutsideSizeBox, 1, 0 );
 
+  GPBoxLayout->addWidget( anOutsideGroup );
 
   // Magnification
-  QGroupBox* MagnificationGroup = new QGroupBox ( tr( "MAGNIFICATION_TITLE" ), myGaussPointsBox, "MagnificationGroup" );
-  MagnificationGroup->setColumnLayout(0, Qt::Vertical );
-  MagnificationGroup->layout()->setSpacing( 0 );
-  MagnificationGroup->layout()->setMargin( 0 );
+  QGroupBox* MagnificationGroup = new QGroupBox ( tr( "MAGNIFICATION_TITLE" ), myGaussPointsBox );
+  //MagnificationGroup->setColumnLayout(0, Qt::Vertical );
+  //MagnificationGroup->layout()->setSpacing( 0 );
+  //MagnificationGroup->layout()->setMargin( 0 );
 
-  QGridLayout* MagnificationGroupLayout = new QGridLayout (MagnificationGroup->layout());
+  QGridLayout* MagnificationGroupLayout = new QGridLayout ( MagnificationGroup );
   MagnificationGroupLayout->setAlignment(Qt::AlignTop | Qt::AlignCenter);
   MagnificationGroupLayout->setSpacing(6);
   MagnificationGroupLayout->setMargin(11);
@@ -294,7 +311,7 @@ VVTK_SegmentationCursorDlg::VVTK_SegmentationCursorDlg( QWidget* parent, const c
 
   // Increment
   myIncrementLabel = new QLabel( tr( "INCREMENT" ), MagnificationGroup );
-  myIncrementSpinBox = new QtxDblSpinBox( 0.01, 10, 0.1, MagnificationGroup );
+  myIncrementSpinBox = new QtxDoubleSpinBox( 0.01, 10, 0.1, MagnificationGroup );
   myIncrementSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
 
   MagnificationGroupLayout->addWidget( myIncrementLabel, 0, 2 );
@@ -302,30 +319,33 @@ VVTK_SegmentationCursorDlg::VVTK_SegmentationCursorDlg( QWidget* parent, const c
 
 
   myTabBox->addTab( myGaussPointsBox, tr( "GAUSS_POINTS_TAB" ) );
-  myTabBox->showPage( myGaussPointsBox );
+  //myTabBox->showPage( myGaussPointsBox );
+  myTabBox->setCurrentWidget( myGaussPointsBox );
+
+  GPBoxLayout->addWidget( MagnificationGroup );
 
 
   // Common buttons ===========================================================
-  QGroupBox* GroupButtons = new QGroupBox( this, "GroupButtons" );
-  GroupButtons->setColumnLayout(0, Qt::Vertical );
-  GroupButtons->layout()->setSpacing( 0 );
-  GroupButtons->layout()->setMargin( 0 );
-  QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons->layout() );
+  QGroupBox* GroupButtons = new QGroupBox( this );
+  //GroupButtons->setColumnLayout(0, Qt::Vertical );
+  //GroupButtons->layout()->setSpacing( 0 );
+  //GroupButtons->layout()->setMargin( 0 );
+  QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons );
   GroupButtonsLayout->setAlignment( Qt::AlignTop );
   GroupButtonsLayout->setSpacing( 6 );
   GroupButtonsLayout->setMargin( 11 );
 
-  QPushButton* buttonApply = new QPushButton( tr( "&Apply" ), GroupButtons, "buttonApply" );
+  QPushButton* buttonApply = new QPushButton( tr( "&Apply" ), GroupButtons );
   buttonApply->setAutoDefault( TRUE );
   buttonApply->setDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonApply, 0, 0 );
   GroupButtonsLayout->addItem( new QSpacerItem( 5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 1 );
 
-  QPushButton* buttonClose = new QPushButton( tr( "&Close" ) , GroupButtons, "buttonClose" );
+  QPushButton* buttonClose = new QPushButton( tr( "&Close" ) , GroupButtons );
   buttonClose->setAutoDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonClose, 0, 2 );
 
-  QPushButton* buttonHelp = new QPushButton( tr( "&Help" ) , GroupButtons, "buttonHelp" );
+  QPushButton* buttonHelp = new QPushButton( tr( "&Help" ) , GroupButtons );
   buttonHelp->setAutoDefault( TRUE );
   GroupButtonsLayout->addWidget( buttonHelp, 0, 3 );
 
@@ -618,13 +638,13 @@ VVTK_SegmentationCursorDlg
     myOutsideAlphaTexture = theAlphaTexture;
   }
 
-  return VISU::GetTexture( theMainTexture.latin1(), 
-                          theAlphaTexture.latin1());
+  return VISU::GetTexture( (const char*)theMainTexture.toLatin1(), 
+                          (const char*)theAlphaTexture.toLatin1());
 }
 
 void VVTK_SegmentationCursorDlg::onClickApply()
 {
-  if( myTabBox->currentPage() == mySegmentationCursorBox )
+  if( myTabBox->currentWidget() == mySegmentationCursorBox )
     ApplySegmentationCursor();
   else
   {
@@ -632,7 +652,7 @@ void VVTK_SegmentationCursorDlg::onClickApply()
     aWarning.append( "presentation might be too important to ensure an acceptable frame rate.\n\n" );
     aWarning.append( "Can you please confirm that you want to continue anyway?" );
     bool toApply = CheckNumberOfFaces() ||
-      SUIT_MessageBox::warn2( this, tr( "Warning" ), aWarning,
+      SUIT_MessageBox::warning( this, tr( "Warning" ), aWarning,
                              tr( "&OK" ), tr( "&Cancel" ), 0, 1, 1 ) == 0;
 
     if( toApply )
@@ -747,8 +767,8 @@ void VVTK_SegmentationCursorDlg::ApplyOutsideGaussPoints()
 
 void VVTK_SegmentationCursorDlg::onClickClose()
 {
-  myPlaneAction->setOn( false );
-  mySphereAction->setOn( false );
+  myPlaneAction->setChecked( false );
+  mySphereAction->setChecked( false );
 
   emit scgClose();
 
@@ -768,17 +788,17 @@ void VVTK_SegmentationCursorDlg::onClickHelp()
 #else
                platform = "application";
 #endif
-    SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"),
-                          QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
-                          arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
-                          QObject::tr("BUT_OK"));
+    SUIT_MessageBox::warning( 0, QObject::tr("WRN_WARNING"),
+                             QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE").
+                             arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(aHelpFileName),
+                             QObject::tr("BUT_OK"));
   }
 }
 
 void VVTK_SegmentationCursorDlg::done( int r )
 {
-  myPlaneAction->setOn( false );
-  mySphereAction->setOn( false );
+  myPlaneAction->setChecked( false );
+  mySphereAction->setChecked( false );
 
   emit scgClose();
 
@@ -787,7 +807,7 @@ void VVTK_SegmentationCursorDlg::done( int r )
 
 void VVTK_SegmentationCursorDlg::onParentShow()
 {
-  if(myPlaneAction->isOn() || mySphereAction->isOn())
+  if(myPlaneAction->isChecked() || mySphereAction->isChecked())
     show();
   else
     hide();
@@ -829,7 +849,7 @@ void VVTK_SegmentationCursorDlg::keyPressEvent( QKeyEvent* e )
   if ( e->isAccepted() )
     return;
 
-  if ( e->key() == Key_F1 )
+  if ( e->key() == Qt::Key_F1 )
     {
       e->accept();
       onClickHelp();
index e6990ffe1594f377f001d7bcd09b65ed6004702e..c2f2f50454c3f47e353fad2c908c19e23b39e17d 100644 (file)
@@ -1,26 +1,28 @@
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
 //  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : VVTK_SegmentationCursorDlg.h
 //  Author : Oleg Uvarov
 //  Module : VISU
-
+//
 #ifndef VVTK_SEGMENTATIONCURSORDLG_H
 #define VVTK_SEGMENTATIONCURSORDLG_H
 
@@ -28,7 +30,7 @@
 
 #include "VISU_GaussPtsDeviceActor.h"
 
-#include <qdialog.h>
+#include <QDialog>
 
 #include <vtkObject.h>
 #include <vtkSmartPointer.h>
@@ -43,10 +45,11 @@ class QPushButton;
 class QRadioButton;
 class QTabWidget;
 class QGroupBox;
-class QVBox;
+class QWidget;
+//class QVBox;
 
 class QtxAction;
-class QtxDblSpinBox;
+class QtxDoubleSpinBox;
 class QtxIntSpinBox;
 
 class VISU_GaussPtsAct1;
@@ -137,60 +140,60 @@ signals:
 private:
   SVTK_RenderWindowInteractor* myInteractor;
 
-  QTabWidget*      myTabBox;
+  QTabWidget*       myTabBox;
 
   // Segmentation cursor
-  QVBox*           mySegmentationCursorBox;
+  QWidget*          mySegmentationCursorBox;
 
-  QGroupBox*       myOriginGroup;
-  QtxDblSpinBox*   myXOriginSpinBox;
-  QtxDblSpinBox*   myYOriginSpinBox;
-  QtxDblSpinBox*   myZOriginSpinBox;
+  QGroupBox*        myOriginGroup;
+  QtxDoubleSpinBox* myXOriginSpinBox;
+  QtxDoubleSpinBox* myYOriginSpinBox;
+  QtxDoubleSpinBox* myZOriginSpinBox;
 
-  QGroupBox*       myDirectionGroup;
-  QtxDblSpinBox*   myDXDirectionSpinBox;
-  QtxDblSpinBox*   myDYDirectionSpinBox;
-  QtxDblSpinBox*   myDZDirectionSpinBox;
+  QGroupBox*        myDirectionGroup;
+  QtxDoubleSpinBox* myDXDirectionSpinBox;
+  QtxDoubleSpinBox* myDYDirectionSpinBox;
+  QtxDoubleSpinBox* myDZDirectionSpinBox;
 
-  QGroupBox*       myDepthGroup;
-  QtxDblSpinBox*   myDepthSpinBox;
+  QGroupBox*        myDepthGroup;
+  QtxDoubleSpinBox* myDepthSpinBox;
 
-  QGroupBox*       myRadiusGroup;
-  QtxDblSpinBox*   myRadiusSpinBox;
-  QtxDblSpinBox*   myRatioSpinBox;
+  QGroupBox*        myRadiusGroup;
+  QtxDoubleSpinBox* myRadiusSpinBox;
+  QtxDoubleSpinBox* myRatioSpinBox;
 
-  bool             myIsPlaneSegmentation;
+  bool              myIsPlaneSegmentation;
 
-  float            myPriority;
+  float             myPriority;
   vtkSmartPointer<vtkCallbackCommand> myEventCallbackCommand;
 
-  VISU_WidgetCtrl* myWidgetCtrl;
-  QtxAction*       myPlaneAction;
-  QtxAction*       mySphereAction;
+  VISU_WidgetCtrl*  myWidgetCtrl;
+  QtxAction*        myPlaneAction;
+  QtxAction*        mySphereAction;
 
   // Gauss Points
-  QVBox*           myGaussPointsBox;
+  QWidget*          myGaussPointsBox;
 
   VVTK_PrimitiveBox* myInsidePrimitiveBox;
-  VVTK_SizeBox*    myInsideSizeBox;
+  VVTK_SizeBox*     myInsideSizeBox;
 
-  QString          myInsideMainTexture;
-  QString          myInsideAlphaTexture;
+  QString           myInsideMainTexture;
+  QString           myInsideAlphaTexture;
 
   vtkSmartPointer<VISU_InsideCursorSettings> myInsideCursorSettings;
 
   VVTK_PrimitiveBox* myOutsidePrimitiveBox;
-  VVTK_SizeBox*    myOutsideSizeBox;
+  VVTK_SizeBox*     myOutsideSizeBox;
 
-  QString          myOutsideMainTexture;
-  QString          myOutsideAlphaTexture;
+  QString           myOutsideMainTexture;
+  QString           myOutsideAlphaTexture;
 
   vtkSmartPointer<VISU_OutsideCursorSettings> myOutsideCursorSettings;
 
-  QLabel*          myMagnificationLabel;
-  QtxIntSpinBox*   myMagnificationSpinBox;
-  QLabel*          myIncrementLabel;
-  QtxDblSpinBox*   myIncrementSpinBox;
+  QLabel*           myMagnificationLabel;
+  QtxIntSpinBox*    myMagnificationSpinBox;
+  QLabel*           myIncrementLabel;
+  QtxDoubleSpinBox* myIncrementSpinBox;
 };
 
 #endif
index 18d1d020c7f701b25fd21a67eb356a8db1030352..7d040131396351c969e42fa9f3c0e52b35978fc4 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VVTK_SizeBox.cxx
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #include "VVTK_SizeBox.h"
 
 #include "SUIT_ResourceMgr.h"
 #include "SUIT_Session.h"
 
-#include "QtxDblSpinBox.h"
-#include "QtxIntSpinBox.h"
+#include <QtxDoubleSpinBox.h>
+#include <QtxIntSpinBox.h>
+#include <QtxColorButton.h>
 
-#include <qlayout.h>
-#include <qlabel.h>
-#include <qlineedit.h>
-#include <qcheckbox.h>
-#include <qgroupbox.h>
-#include <qbuttongroup.h>
-#include <qradiobutton.h>
-#include <qpushbutton.h>
-#include <qcolordialog.h>
+#include <QLayout>
+#include <QLabel>
+#include <QLineEdit>
+#include <QCheckBox>
+#include <QGroupBox>
+#include <QButtonGroup>
+#include <QRadioButton>
+#include <QPushButton>
+#include <QColorDialog>
 
 using namespace std;
 
 VVTK_SizeBox::VVTK_SizeBox( QWidget* parent ) :
-  QVBox( parent )
+  QWidget( parent )
 {
-  layout()->setSpacing( 0 );
-  layout()->setMargin( 0 );
+  QVBoxLayout* aMainLayout = new QVBoxLayout( this );
+  aMainLayout->setSpacing( 0 );
+  aMainLayout->setMargin( 0 );
 
   // Size
-  QGroupBox* SizeGroup = new QGroupBox ( tr( "SIZE_TITLE" ), this, "SizeGroup" );
-  SizeGroup->setColumnLayout(0, Qt::Vertical );
-  SizeGroup->layout()->setSpacing( 0 );
-  SizeGroup->layout()->setMargin( 0 );
+  QGroupBox* SizeGroup = new QGroupBox ( tr( "SIZE_TITLE" ), this );
+  //SizeGroup->setColumnLayout(0, Qt::Vertical );
+  //SizeGroup->layout()->setSpacing( 0 );
+  //SizeGroup->layout()->setMargin( 0 );
 
-  QGridLayout* SizeGroupLayout = new QGridLayout (SizeGroup->layout());
+  QGridLayout* SizeGroupLayout = new QGridLayout (SizeGroup);
   SizeGroupLayout->setAlignment(Qt::AlignTop | Qt::AlignCenter);
   SizeGroupLayout->setSpacing(6);
   SizeGroupLayout->setMargin(11);
@@ -104,20 +105,21 @@ VVTK_SizeBox::VVTK_SizeBox( QWidget* parent ) :
 
   // Increment
   myIncrementLabel = new QLabel( tr( "INCREMENT" ), SizeGroup );
-  myIncrementSpinBox = new QtxDblSpinBox( 0.01, 10, 0.1, SizeGroup );
+  myIncrementSpinBox = new QtxDoubleSpinBox( 0.01, 10, 0.1, SizeGroup );
   myIncrementSpinBox->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
 
   SizeGroupLayout->addWidget( myIncrementLabel, 2, 2 );
   SizeGroupLayout->addWidget( myIncrementSpinBox, 2, 3 );
 
+  aMainLayout->addWidget( SizeGroup );
 
   // Color
-  myColorGroup = new QGroupBox ( tr( "COLOR_TITLE" ), this, "ColorGroup" );
-  myColorGroup->setColumnLayout(0, Qt::Vertical );
-  myColorGroup->layout()->setSpacing( 0 );
-  myColorGroup->layout()->setMargin( 0 );
+  myColorGroup = new QGroupBox ( tr( "COLOR_TITLE" ), this );
+  //myColorGroup->setColumnLayout(0, Qt::Vertical );
+  //myColorGroup->layout()->setSpacing( 0 );
+  //myColorGroup->layout()->setMargin( 0 );
 
-  QGridLayout* ColorGroupLayout = new QGridLayout (myColorGroup->layout());
+  QGridLayout* ColorGroupLayout = new QGridLayout ( myColorGroup );
   ColorGroupLayout->setAlignment(Qt::AlignTop | Qt::AlignLeft);
   ColorGroupLayout->setSpacing(6);
   ColorGroupLayout->setMargin(11);
@@ -125,14 +127,16 @@ VVTK_SizeBox::VVTK_SizeBox( QWidget* parent ) :
   myUniformCheckBox = new QCheckBox( tr( "UNIFORM_COLOR" ), myColorGroup );
 
   myColorLabel = new QLabel( tr( "COLOR" ), myColorGroup );
-  myColorButton = new QPushButton( myColorGroup );
+  myColorButton = new QtxColorButton( myColorGroup );
 
   ColorGroupLayout->addWidget( myUniformCheckBox, 0, 0 );
   ColorGroupLayout->addWidget( myColorLabel, 0, 1 );
   ColorGroupLayout->addWidget( myColorButton, 0, 2 );
 
+  aMainLayout->addWidget( myColorGroup );
+
   connect( myUniformCheckBox, SIGNAL( toggled( bool ) ), myColorButton, SLOT( setEnabled( bool ) ) );
-  connect( myColorButton, SIGNAL( clicked() ), this, SLOT( onColorButtonPressed() ) );
+  //connect( myColorButton, SIGNAL( clicked() ), this, SLOT( onColorButtonPressed() ) );
 
   setType( VVTK_SizeBox::Results );
 }
@@ -332,17 +336,39 @@ void VVTK_SizeBox::setUniform( bool theUniform )
 
 QColor VVTK_SizeBox::getColor() const
 {
-  return myColorButton->paletteBackgroundColor();
+  return myColorButton->color();//palette().color( myColorButton->backgroundRole() );
+  //return myColorButton->paletteBackgroundColor();
 }
 
 void VVTK_SizeBox::setColor( const QColor& theColor )
 {
-  myColorButton->setPaletteBackgroundColor( theColor );
+  if ( theColor.isValid() )
+  {
+    //QPalette aPalette( myColorButton->palette() );
+    //aPalette.setColor( myColorButton->backgroundRole(), theColor );
+    myColorButton->setColor( theColor );
+  }
+  //myColorButton->setPaletteBackgroundColor( theColor );
+}
+
+void VVTK_SizeBox::enableSizeControls( bool enabled )
+{
+  myMagnificationSpinBox->setEnabled( enabled );
+  myMaxSizeSpinBox->setEnabled( enabled );
+  myMinSizeSpinBox->setEnabled( enabled );
+  myIncrementSpinBox->setEnabled( enabled );
+  myGeomSizeSpinBox->setEnabled( enabled );
 }
 
-void VVTK_SizeBox::onColorButtonPressed()
+/*void VVTK_SizeBox::onColorButtonPressed()
 {
-  QColor aColor = QColorDialog::getColor( myColorButton->paletteBackgroundColor(), this );
+  QPalette aPalette( myColorButton->palette() );
+  QColor aColor = QColorDialog::
+    getColor( aPalette.color(myColorButton->backgroundRole() ), this );
+
   if( aColor.isValid() )
-    myColorButton->setPaletteBackgroundColor( aColor );
-}
+  {
+      aPalette.setColor( myColorButton->backgroundRole(), aColor );
+      myColorButton->setPalette( aPalette );
+  }
+}*/
index 06e3971cb033d1b29c56b2d07fd1aab9ba07be5d..296ff51d20002a8380420b5c58c906b0ef7f9ecd 100644 (file)
@@ -1,6 +1,6 @@
-//  VISU VISUGUI : GUI of VISU component
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
 //  This library is free software; you can redistribute it and/or
 //  License along with this library; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
-//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  VISU VISUGUI : GUI of VISU component
 //  File   : VVTK_SizeBox.h
 //  Author : Oleg UVAROV
 //  Module : VISU
-
+//
 #ifndef VVTK_SIZEBOX_H
 #define VVTK_SIZEBOX_H
 
 #include "VVTK.h"
 
-#include <qvbox.h>
+#include <QWidget>
 
 class QLabel;
 class QLineEdit;
@@ -38,10 +37,11 @@ class QPushButton;
 class QCheckBox;
 class QGroupBox;
 
-class QtxDblSpinBox;
+class QtxDoubleSpinBox;
 class QtxIntSpinBox;
+class QtxColorButton;
 
-class VVTK_EXPORT VVTK_SizeBox : public QVBox
+class VVTK_EXPORT VVTK_SizeBox : public QWidget
 {
   Q_OBJECT
 
@@ -80,13 +80,15 @@ public:
   QColor                   getColor() const;
   void                     setColor( const QColor& );
 
+  void                     enableSizeControls( bool enabled );
+
 protected slots:
   void                     onToggleResults();
   void                     onToggleGeometry();
   void                     onToggleInside();
   void                     onToggleOutside();
 
-  void                     onColorButtonPressed();
+  //void                     onColorButtonPressed();
 
 private:
   int                      myType;
@@ -107,13 +109,13 @@ private:
   QtxIntSpinBox*           myMagnificationSpinBox;
 
   QLabel*                  myIncrementLabel;
-  QtxDblSpinBox*           myIncrementSpinBox;
+  QtxDoubleSpinBox*        myIncrementSpinBox;
 
   QCheckBox*               myUniformCheckBox;  
 
   QGroupBox*               myColorGroup;
   QLabel*                  myColorLabel;
-  QPushButton*             myColorButton;
+  QtxColorButton*          myColorButton;
 };
 
 
index a1eb30f7f804f325c8fae25618254fa65dab30b5..fedcca71d0ad88b839ec986086a830653baa9b23 100644 (file)
@@ -1,25 +1,29 @@
-// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// This library is distributed in the hope that it will be useful
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 #include "VVTK_ViewManager.h"
 #include "VVTK_ViewModel.h"
 
+#include <SUIT_ViewWindow.h>
+
 int VVTK_ViewManager::_VVTKViewMgr_Id = 0;
 
 //***************************************************************
@@ -40,6 +44,6 @@ VVTK_ViewManager::~VVTK_ViewManager()
 //***************************************************************
 void VVTK_ViewManager::setViewName(SUIT_ViewWindow* theView)
 {
-  int aPos = myViews.find(theView);
-  theView->setCaption( tr( "VTK_VIEW_TITLE" ).arg( myId ).arg( aPos + 1 ) );
+  int aPos = myViews.indexOf(theView);
+  theView->setWindowTitle( tr( "VTK_VIEW_TITLE" ).arg( myId ).arg( aPos + 1 ) );
 }
index e5d06348f06efb63adc31598e2d14de2602a4f4d..5bc84e43a763ae33c36a6ef9df174a03970d9827 100644 (file)
@@ -1,21 +1,23 @@
-// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// This library is distributed in the hope that it will be useful
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 #ifndef VVTK_VIEWMANAGER_H
 #define VVTK_VIEWMANAGER_H
index b1b3ec4e82cd8d9160f535d620cba7d624660d5c..3a625a1995c63179466d0e14b7ca990c6b6435ca 100644 (file)
@@ -1,65 +1,67 @@
-// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// This library is distributed in the hope that it will be useful
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 #include "VVTK_ViewModel.h"
-
+#include "VISU_ActorFactory.h"
 #include "VVTK_ViewWindow.h"
 
 #include "VTKViewer_Algorithm.h"
 #include "SVTK_Functor.h"
-#include "VISU_Actor.h"
+#include "VISU_ActorBase.h"
 #include "SVTK_View.h"
 #include "SVTK_Prs.h"
 
+#include <SUIT_ViewManager.h>
+
 #include <vtkActorCollection.h>
 #include <vtkRenderer.h>
 
 //---------------------------------------------------------------
-VVTK_Viewer
-::VVTK_Viewer()
+VVTK_Viewer::VVTK_Viewer()
 {
 }
 
 //---------------------------------------------------------------
-VVTK_Viewer
-::~VVTK_Viewer() 
+VVTK_Viewer::~VVTK_Viewer() 
 {
 }
 
 //---------------------------------------------------------------
-SUIT_ViewWindow*
-VVTK_Viewer
-::createView( SUIT_Desktop* theDesktop )
+SUIT_ViewWindow* VVTK_Viewer::createView( SUIT_Desktop* theDesktop )
 {
   TViewWindow* aViewWindow = new TViewWindow (theDesktop);
   aViewWindow->Initialize(this);
 
   aViewWindow->setBackgroundColor( backgroundColor() );
   aViewWindow->SetTrihedronSize( trihedronSize() );
+  aViewWindow->SetProjectionMode( projectionMode() );
+  aViewWindow->SetInteractionStyle( interactionStyle() );
+  aViewWindow->SetIncrementalSpeed( incrementalSpeed(), incrementalSpeedMode() );
+  aViewWindow->SetSpacemouseButtons( spacemouseBtn(1), spacemouseBtn(2), spacemouseBtn(3) );
 
   return aViewWindow;
 }
 
 //---------------------------------------------------------------
-void
-VVTK_Viewer
-::Display(const SALOME_VTKPrs* thePrs)
+void VVTK_Viewer::Display(const SALOME_VTKPrs* thePrs)
 {
   // try do downcast object
   if(const SVTK_Prs* aPrs = dynamic_cast<const SVTK_Prs*>(thePrs)){
@@ -67,10 +69,10 @@ VVTK_Viewer
       return;
     if(vtkActorCollection* aCollection = aPrs->GetObjects()){
       aCollection->InitTraversal();
-      while(VISU_Actor* anActor = dynamic_cast<VISU_Actor*>(aCollection->GetNextActor())){
+      while(VISU_ActorBase* anActor = dynamic_cast<VISU_ActorBase*>(aCollection->GetNextActor())){
        if(!anActor->GetFactory()->GetActiveState())
          continue;
-       QPtrVector<SUIT_ViewWindow> aViews = myViewManager->getViews();
+       QVector<SUIT_ViewWindow*> aViews = myViewManager->getViews();
        for(int i = 0, iEnd = aViews.size(); i < iEnd; i++){
          if(SVTK_ViewWindow* aViewWindow = dynamic_cast<SVTK_ViewWindow*>(aViews.at(i))){
            if(SVTK_View* aView = aViewWindow->getView()){
@@ -104,11 +106,9 @@ namespace VVTK
 }
 
 //---------------------------------------------------------------
-bool
-VVTK_Viewer
-::isVisible( const Handle(SALOME_InteractiveObject)& theIO )
+bool VVTK_Viewer::isVisible( const Handle(SALOME_InteractiveObject)& theIO )
 {
-  QPtrVector<SUIT_ViewWindow> aViews = myViewManager->getViews();
+  QVector<SUIT_ViewWindow*> aViews = myViewManager->getViews();
   for(int i = 0, iEnd = aViews.size(); i < iEnd; i++)
     if(SVTK_ViewWindow* aViewWindow = dynamic_cast<SVTK_ViewWindow*>(aViews.at(i))){
       bool aResult;
index 35fefc2b43277b33863bdc668008ad8a7390b90b..7cfb87c38f311d67095273cdaec3c0b9b38e9f9b 100644 (file)
@@ -1,26 +1,28 @@
-// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// This library is distributed in the hope that it will be useful
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 #ifndef VVTK_VIEWMODEL_H
 #define VVTK_VIEWMODEL_H
 
-#include <qcolor.h>
+#include <QColor>
 
 #include "VVTK.h"
 #include "SVTK_ViewModel.h"
index a7512e886c9ca1872e79e69f084524fc9ef05364..100bf7673b9cf001327cabf88332ac42d7dbdfa2 100755 (executable)
@@ -1,31 +1,30 @@
-//  SALOME VTKViewer : build VTK viewer into Salome desktop
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-//  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
+//  SALOME VTKViewer : build VTK viewer into Salome desktop
 //  File   : 
 //  Author : 
 //  Module : SALOME
 //  $Header$
-
+//
 #include "VVTK_ViewWindow.h"
 #include "VVTK_ViewModel.h"
 #include "VVTK_MainWindow.h"
 #include "SVTK_RenderWindowInteractor.h"
 #include "SVTK_GenericRenderWindowInteractor.h"
 
-#include <qsplitter.h>
-#include <qlayout.h>
-#include <qimage.h>
+#include <vtkRenderWindow.h>
+
+#include <QLayout>
+#include <QList>
+#include <QSplitter>
+#include <QToolBar>
 
 //----------------------------------------------------------------------------
 VVTK_ViewWindow
@@ -57,13 +59,9 @@ VVTK_ViewWindow
 void VVTK_ViewWindow::Initialize(SVTK_ViewModelBase* theModel)
 {
   if(SUIT_ResourceMgr* aResourceMgr = SUIT_Session::session()->resourceMgr()){
-    QWidget* aWidget = new QWidget(this);
-    setCentralWidget(aWidget);
-    
-    QBoxLayout* aLayout = new QVBoxLayout(aWidget);
-    aLayout->setAutoAdd(true);
-    QSplitter* aSplitter = new QSplitter(Qt::Vertical,aWidget);
-    //aSplitter->setChildrenCollapsible(true);
+
+    QSplitter* s = new QSplitter( Qt::Vertical, this );
+    setCentralWidget( s );
 
     VISU_WidgetCtrl* aWidgetCtrl = NULL;
     VISU_InsideCursorSettings* anInsideCursorSettings = NULL;
@@ -71,7 +69,7 @@ void VVTK_ViewWindow::Initialize(SVTK_ViewModelBase* theModel)
     VISU_PickingSettings* aPickingSettings = NULL;
     SVTK_Selector* aSelector = SVTK_Selector::New();
     {
-      myMainWindow1 = new VVTK_MainWindow1(aSplitter,
+      myMainWindow1 = new VVTK_MainWindow1(s,
                                           "VVTK_MainWindow",
                                           aResourceMgr,
                                           this);
@@ -110,9 +108,12 @@ void VVTK_ViewWindow::Initialize(SVTK_ViewModelBase* theModel)
 
       myView1 = new SVTK_View(myMainWindow1);
       SVTK_ViewWindow::Initialize(myView1,theModel);
+
+      anIteractor->getRenderWindow()->Render();
+      myMainWindow1->onResetView();
     }
     {
-      myMainWindow2 = myMainWindow1->CreateMainWindow2(aSplitter,
+      myMainWindow2 = myMainWindow1->CreateMainWindow2(s,
                                                       "VVTK_SegmantationWindow",
                                                       aResourceMgr,
                                                       this);
@@ -145,14 +146,17 @@ void VVTK_ViewWindow::Initialize(SVTK_ViewModelBase* theModel)
       
       myView2 = new SVTK_View(myMainWindow2);
       SVTK_ViewWindow::Initialize(myView2,theModel);
+
+      anIteractor->getRenderWindow()->Render();
+      myMainWindow2->onResetView();
     }
     aSelector->Delete();
 
     int h = height() / 2;
-    QValueList<int> aSizes;
+    QList<int> aSizes;
     aSizes.append( h );
     aSizes.append( h );
-    aSplitter->setSizes( aSizes );
+    s->setSizes( aSizes );
     myMainWindow2->hide();
 
     myMainWindow = myMainWindow1;
@@ -281,7 +285,7 @@ VVTK_ViewWindow
 {
   if( myMainWindow1->GetInteractor()->hasFocus() )
     {
-      if ( myMainWindow1->getToolBar()->hasMouse() || myDumpImage.isNull() )
+      if ( myMainWindow1->getToolBar()->testAttribute(Qt::WA_UnderMouse) || myDumpImage.isNull() )
        return myMainWindow1->dumpView();
       else
        return myDumpImage;
@@ -289,7 +293,7 @@ VVTK_ViewWindow
   
   if( myMainWindow2->GetInteractor()->hasFocus() )
     {
-      if ( myMainWindow1->getToolBar()->hasMouse() || myDumpImage.isNull() )
+      if ( myMainWindow1->getToolBar()->testAttribute(Qt::WA_UnderMouse) || myDumpImage.isNull() )
        return myMainWindow2->dumpView();
       else
        return myDumpImage;
index 7e2dbf05960d6ad0964f6bb5d1ccbbaa9224c22d..eb267c6854a0793ee15c3859bcd8eab9bc060acb 100755 (executable)
@@ -1,21 +1,23 @@
-// Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 //
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 //
-// This library is distributed in the hope that it will be useful
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
 //
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 #ifndef VVTK_VIEWWINDOW_H
 #define VVTK_VIEWWINDOW_H
@@ -27,7 +29,7 @@
 #include "VVTK.h"
 #include "SVTK_ViewWindow.h"
 
-#include <qimage.h>
+#include <QImage>
 
 #include <string>